mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-27 08:25:07 +00:00
feat: update ESLint config with @typescript-eslint/consistent-type-imports (#4746)
* update: Add type * fix: update import statement for NextApiRequest type * fix: update imports to use type for LexicalEditor and EditorState * Refactor imports to use 'import type' for type-only imports across multiple files - Updated imports in various components and API files to use 'import type' for better clarity and to optimize TypeScript's type checking. - Ensured consistent usage of type imports in files related to chat, dataset, workflow, and user management. - Improved code readability and maintainability by distinguishing between value and type imports. * refactor: remove old ESLint configuration and add new rules - Deleted the old ESLint configuration file from the app project. - Added a new ESLint configuration file with updated rules and settings. - Changed imports to use type-only imports in various files for better clarity and performance. - Updated TypeScript configuration to remove unnecessary options. - Added an ESLint ignore file to exclude build and dependency directories from linting. * fix: update imports to use 'import type' for type-only imports in schema files
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import React, { useCallback, useRef, useState, useEffect } from 'react';
|
||||
import Editor, { Monaco, loader } from '@monaco-editor/react';
|
||||
import { Box, BoxProps } from '@chakra-ui/react';
|
||||
import Editor, { type Monaco, loader } from '@monaco-editor/react';
|
||||
import { Box, type BoxProps } from '@chakra-ui/react';
|
||||
import MyIcon from '../../Icon';
|
||||
import { getWebReqUrl } from '../../../../common/system/utils';
|
||||
import usePythonCompletion from './usePythonCompletion';
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { Monaco } from '@monaco-editor/react';
|
||||
import { type Monaco } from '@monaco-editor/react';
|
||||
import { useCallback } from 'react';
|
||||
let monacoInstance: Monaco | null = null;
|
||||
const usePythonCompletion = () => {
|
||||
|
@@ -1,6 +1,6 @@
|
||||
import React, { useEffect, useCallback, useRef, useState } from 'react';
|
||||
import Editor, { Monaco, loader, useMonaco } from '@monaco-editor/react';
|
||||
import { Box, BoxProps } from '@chakra-ui/react';
|
||||
import Editor, { type Monaco, loader, useMonaco } from '@monaco-editor/react';
|
||||
import { Box, type BoxProps } from '@chakra-ui/react';
|
||||
import MyIcon from '../../Icon';
|
||||
import { useToast } from '../../../../hooks/useToast';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
|
@@ -18,10 +18,10 @@ import { Box } from '@chakra-ui/react';
|
||||
import styles from './index.module.scss';
|
||||
import VariablePlugin from './plugins/VariablePlugin';
|
||||
import { VariableNode } from './plugins/VariablePlugin/node';
|
||||
import { EditorState, LexicalEditor } from 'lexical';
|
||||
import type { EditorState, LexicalEditor } from 'lexical';
|
||||
import OnBlurPlugin from './plugins/OnBlurPlugin';
|
||||
import MyIcon from '../../Icon';
|
||||
import { EditorVariableLabelPickerType, EditorVariablePickerType } from './type.d';
|
||||
import { type EditorVariableLabelPickerType, type EditorVariablePickerType } from './type.d';
|
||||
import { getNanoid } from '@fastgpt/global/common/string/tools';
|
||||
import FocusPlugin from './plugins/FocusPlugin';
|
||||
import { textToEditorState } from './utils';
|
||||
|
@@ -4,8 +4,8 @@ import { editorStateToText } from './utils';
|
||||
import Editor from './Editor';
|
||||
import MyModal from '../../MyModal';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import { EditorState, type LexicalEditor } from 'lexical';
|
||||
import { EditorVariableLabelPickerType, EditorVariablePickerType } from './type.d';
|
||||
import type { EditorState, LexicalEditor } from 'lexical';
|
||||
import { type EditorVariableLabelPickerType, type EditorVariablePickerType } from './type.d';
|
||||
import { useCallback } from 'react';
|
||||
|
||||
const PromptEditor = ({
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import { Box, Flex } from '@chakra-ui/react';
|
||||
import { EditorVariablePickerType } from '../../type';
|
||||
import { type EditorVariablePickerType } from '../../type';
|
||||
import MyIcon from '../../../../Icon';
|
||||
import React, { useCallback, useEffect } from 'react';
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
import { trimTextContentFromAnchor } from '@lexical/selection';
|
||||
import { $restoreEditorState } from '@lexical/utils';
|
||||
import { $getSelection, $isRangeSelection, EditorState, RootNode } from 'lexical';
|
||||
import { $getSelection, $isRangeSelection, type EditorState, RootNode } from 'lexical';
|
||||
import { useEffect } from 'react';
|
||||
|
||||
export function MaxLengthPlugin({ maxLength }: { maxLength: number }): null {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import { useEffect } from 'react';
|
||||
import { BLUR_COMMAND, COMMAND_PRIORITY_EDITOR, LexicalEditor } from 'lexical';
|
||||
import { BLUR_COMMAND, COMMAND_PRIORITY_EDITOR, type LexicalEditor } from 'lexical';
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
|
||||
export default function OnBlurPlugin({ onBlur }: { onBlur?: (editor: LexicalEditor) => void }) {
|
||||
|
@@ -1,13 +1,14 @@
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
import { LexicalTypeaheadMenuPlugin } from '@lexical/react/LexicalTypeaheadMenuPlugin';
|
||||
import { $createTextNode, $getSelection, $isRangeSelection, TextNode } from 'lexical';
|
||||
import type { TextNode } from 'lexical';
|
||||
import { $createTextNode, $getSelection, $isRangeSelection } from 'lexical';
|
||||
import * as React from 'react';
|
||||
import { useCallback, useState, useEffect, useRef } from 'react';
|
||||
import * as ReactDOM from 'react-dom';
|
||||
import { Box, Flex } from '@chakra-ui/react';
|
||||
import { useBasicTypeaheadTriggerMatch } from '../../utils';
|
||||
import { EditorVariableLabelPickerType } from '../../type';
|
||||
import { WorkflowIOValueTypeEnum } from '@fastgpt/global/core/workflow/constants';
|
||||
import { type EditorVariableLabelPickerType } from '../../type';
|
||||
import type { WorkflowIOValueTypeEnum } from '@fastgpt/global/core/workflow/constants';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import Avatar from '../../../../Avatar';
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
import { EditorVariableLabelPickerType } from '../../type';
|
||||
import { type EditorVariableLabelPickerType } from '../../type';
|
||||
import { useCallback, useEffect } from 'react';
|
||||
import { $createVariableLabelNode, VariableLabelNode } from './node';
|
||||
import { TextNode } from 'lexical';
|
||||
import type { TextNode } from 'lexical';
|
||||
import { getHashtagRegexString } from './utils';
|
||||
import { mergeRegister } from '@lexical/utils';
|
||||
import { registerLexicalTextEntity } from '../../utils';
|
||||
|
@@ -1,14 +1,14 @@
|
||||
import {
|
||||
DecoratorNode,
|
||||
DOMConversionMap,
|
||||
DOMExportOutput,
|
||||
EditorConfig,
|
||||
LexicalEditor,
|
||||
LexicalNode,
|
||||
NodeKey,
|
||||
SerializedLexicalNode,
|
||||
Spread,
|
||||
TextFormatType
|
||||
type DOMConversionMap,
|
||||
type DOMExportOutput,
|
||||
type EditorConfig,
|
||||
type LexicalEditor,
|
||||
type LexicalNode,
|
||||
type NodeKey,
|
||||
type SerializedLexicalNode,
|
||||
type Spread,
|
||||
type TextFormatType
|
||||
} from 'lexical';
|
||||
import VariableLabel from './components/VariableLabel';
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
import { LexicalTypeaheadMenuPlugin } from '@lexical/react/LexicalTypeaheadMenuPlugin';
|
||||
import { $createTextNode, $getSelection, $isRangeSelection, TextNode } from 'lexical';
|
||||
import type { TextNode } from 'lexical';
|
||||
import { $createTextNode, $getSelection, $isRangeSelection } from 'lexical';
|
||||
import * as React from 'react';
|
||||
import { useCallback, useState } from 'react';
|
||||
import * as ReactDOM from 'react-dom';
|
||||
@@ -8,7 +9,7 @@ import { useTranslation } from 'next-i18next';
|
||||
import MyIcon from '../../../../Icon';
|
||||
import { Box, Flex } from '@chakra-ui/react';
|
||||
import { useBasicTypeaheadTriggerMatch } from '../../utils';
|
||||
import { EditorVariablePickerType } from '../../type.d';
|
||||
import { type EditorVariablePickerType } from '../../type.d';
|
||||
|
||||
export default function VariablePickerPlugin({
|
||||
variables
|
||||
|
@@ -1,11 +1,11 @@
|
||||
import { TextNode } from 'lexical';
|
||||
import type { TextNode } from 'lexical';
|
||||
import { mergeRegister } from '@lexical/utils';
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
||||
import { useCallback, useEffect, useMemo } from 'react';
|
||||
|
||||
import { getHashtagRegexString } from './utils';
|
||||
import { registerLexicalTextEntity } from '../../utils';
|
||||
import { EditorVariablePickerType } from '../../type';
|
||||
import { type EditorVariablePickerType } from '../../type';
|
||||
import { $createVariableNode, VariableNode } from './node';
|
||||
|
||||
const REGEX = new RegExp(getHashtagRegexString(), 'i');
|
||||
|
@@ -1,14 +1,14 @@
|
||||
import {
|
||||
DecoratorNode,
|
||||
DOMConversionMap,
|
||||
DOMExportOutput,
|
||||
EditorConfig,
|
||||
LexicalEditor,
|
||||
LexicalNode,
|
||||
NodeKey,
|
||||
SerializedLexicalNode,
|
||||
Spread,
|
||||
TextFormatType
|
||||
type DOMConversionMap,
|
||||
type DOMExportOutput,
|
||||
type EditorConfig,
|
||||
type LexicalEditor,
|
||||
type LexicalNode,
|
||||
type NodeKey,
|
||||
type SerializedLexicalNode,
|
||||
type Spread,
|
||||
type TextFormatType
|
||||
} from 'lexical';
|
||||
import Variable from './components/Variable';
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { WorkflowIOValueTypeEnum } from '@fastgpt/global/core/workflow/constants';
|
||||
import type { WorkflowIOValueTypeEnum } from '@fastgpt/global/core/workflow/constants';
|
||||
|
||||
export type EditorVariablePickerType = {
|
||||
key: string;
|
||||
|
@@ -10,8 +10,8 @@ import type { DecoratorNode, Klass, LexicalEditor, LexicalNode } from 'lexical';
|
||||
import type { EntityMatch } from '@lexical/text';
|
||||
import { $createTextNode, $getRoot, $isTextNode, TextNode } from 'lexical';
|
||||
import { useCallback } from 'react';
|
||||
import { VariableLabelNode } from './plugins/VariableLabelPlugin/node';
|
||||
import { VariableNode } from './plugins/VariablePlugin/node';
|
||||
import type { VariableLabelNode } from './plugins/VariableLabelPlugin/node';
|
||||
import type { VariableNode } from './plugins/VariablePlugin/node';
|
||||
|
||||
export function registerLexicalTextEntity<T extends TextNode | VariableLabelNode | VariableNode>(
|
||||
editor: LexicalEditor,
|
||||
|
Reference in New Issue
Block a user