React: Use new JSX transform (#88802)

* update eslint, tsconfig + esbuild to handle new jsx transform

* remove thing that breaks the new jsx transform

* remove react imports

* adjust grafana-icons build

* is this the correct syntax?

* try this

* well this was much easier than expected...

* change grafana-plugin-configs webpack config

* fixes

* fix lockfile

* fix 2 more violations

* use path.resolve instead of require.resolve

* remove react import

* fix react imports

* more fixes

* remove React import

* remove import React from docs

* remove another react import
This commit is contained in:
Ashley Harrison
2024-06-25 12:43:47 +01:00
committed by GitHub
parent d7c33db7db
commit 47f8717149
3058 changed files with 2420 additions and 3778 deletions
@@ -1,5 +1,5 @@
import { css } from '@emotion/css';
import React, { useRef, useEffect } from 'react';
import { useRef, useEffect } from 'react';
import { GrafanaTheme2 } from '@grafana/data';
import { Button, Icon, Modal, useStyles2 } from '@grafana/ui';
@@ -1,4 +1,4 @@
import React, { useEffect } from 'react';
import { useEffect } from 'react';
import { useAsync } from 'react-use';
import { SelectableValue } from '@grafana/data';
@@ -1,4 +1,4 @@
import React from 'react';
import * as React from 'react';
type Props = {
fallBackComponent?: React.ReactNode;
@@ -1,4 +1,4 @@
import React, { useCallback, useEffect, useState } from 'react';
import { useCallback, useEffect, useState } from 'react';
import { useAsync } from 'react-use';
import { QueryEditorProps } from '@grafana/data';
@@ -1,4 +1,4 @@
import React, { useCallback, useId, useState } from 'react';
import { useCallback, useId, useState } from 'react';
import { useCopyToClipboard } from 'react-use';
import { SelectableValue } from '@grafana/data';
@@ -1,5 +1,4 @@
import { render, waitFor } from '@testing-library/react';
import React from 'react';
import { config } from '@grafana/runtime';
@@ -1,4 +1,3 @@
import React from 'react';
import { useAsync } from 'react-use';
import { SelectableValue, toOption } from '@grafana/data';
@@ -1,5 +1,3 @@
import React from 'react';
import { DataSourceSettings } from '@grafana/data';
import { ConfigSubSection, Stack } from '@grafana/experimental';
import { config } from '@grafana/runtime';
@@ -1,5 +1,4 @@
import { css } from '@emotion/css';
import React from 'react';
import { GrafanaTheme2 } from '@grafana/data';
import { useStyles2 } from '@grafana/ui';
@@ -1,4 +1,4 @@
import React from 'react';
import { useState } from 'react';
import { Input } from '@grafana/ui/src/components/Input/Input';
@@ -10,7 +10,7 @@ type NumberInputProps = {
};
export function NumberInput({ value, defaultValue, onChange, width }: NumberInputProps) {
const [isEmpty, setIsEmpty] = React.useState(false);
const [isEmpty, setIsEmpty] = useState(false);
return (
<Input
type="number"
@@ -1,5 +1,3 @@
import React from 'react';
import {
DataSourceJsonData,
DataSourcePluginOptionsEditorProps,
@@ -1,4 +1,5 @@
import React, { useCallback, useEffect, useRef } from 'react';
import { useCallback, useEffect, useRef } from 'react';
import * as React from 'react';
import { LanguageDefinition, SQLEditor } from '@grafana/experimental';
@@ -1,5 +1,5 @@
import { css } from '@emotion/css';
import React, { useMemo, useState } from 'react';
import { useMemo, useState } from 'react';
import { reportInteraction } from '@grafana/runtime';
import { HorizontalGroup, Icon, IconButton, Tooltip, useTheme2 } from '@grafana/ui';
@@ -1,5 +1,5 @@
import { css } from '@emotion/css';
import React, { useState, useMemo, useEffect } from 'react';
import { useState, useMemo, useEffect } from 'react';
import { useAsyncFn } from 'react-use';
import useDebounce from 'react-use/lib/useDebounce';
@@ -1,5 +1,5 @@
import { css } from '@emotion/css';
import React, { useMemo, useState } from 'react';
import { useMemo, useState } from 'react';
import { useMeasure } from 'react-use';
import AutoSizer from 'react-virtualized-auto-sizer';
@@ -13,7 +13,6 @@ import {
} from '@react-awesome-query-builder/ui';
import { List } from 'immutable';
import { isString } from 'lodash';
import React from 'react';
import { dateTime, toOption } from '@grafana/data';
import { selectors } from '@grafana/e2e-selectors';
@@ -1,4 +1,4 @@
import React, { useCallback } from 'react';
import { useCallback } from 'react';
import { SelectableValue, toOption } from '@grafana/data';
import { AccessoryButton, EditorList, InputGroup } from '@grafana/experimental';
@@ -1,5 +1,6 @@
import { uniqueId } from 'lodash';
import React, { useCallback } from 'react';
import { useCallback } from 'react';
import * as React from 'react';
import { SelectableValue, toOption } from '@grafana/data';
import { EditorField, InputGroup } from '@grafana/experimental';
@@ -1,5 +1,4 @@
import { css } from '@emotion/css';
import React from 'react';
import { useCopyToClipboard } from 'react-use';
import { GrafanaTheme2 } from '@grafana/data';
@@ -1,5 +1,3 @@
import React from 'react';
import { SelectableValue } from '@grafana/data';
import { QueryWithDefaults } from '../../defaults';
@@ -1,5 +1,3 @@
import React from 'react';
import { SelectableValue } from '@grafana/data';
import { QueryWithDefaults } from '../../defaults';
@@ -1,5 +1,3 @@
import React from 'react';
import { SelectableValue, toOption } from '@grafana/data';
import { COMMON_AGGREGATE_FNS } from '../../constants';
@@ -1,4 +1,3 @@
import React from 'react';
import useAsync from 'react-use/lib/useAsync';
import { SelectableValue, TypedVariableModel } from '@grafana/data';
@@ -1,6 +1,6 @@
import { css } from '@emotion/css';
import { uniqueId } from 'lodash';
import React, { useCallback } from 'react';
import { useCallback } from 'react';
import { SelectableValue, toOption } from '@grafana/data';
import { selectors } from '@grafana/e2e-selectors';
@@ -1,4 +1,3 @@
import React from 'react';
import { useAsync } from 'react-use';
import { EditorRows, EditorRow, EditorField } from '@grafana/experimental';
@@ -1,6 +1,6 @@
import { injectGlobal } from '@emotion/css';
import { Builder, Config, ImmutableTree, Query, Utils } from '@react-awesome-query-builder/ui';
import React, { useCallback, useEffect, useMemo, useState } from 'react';
import { useCallback, useEffect, useMemo, useState } from 'react';
import { SQLExpression } from '../../types';