mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-23 05:12:39 +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,7 +1,7 @@
|
||||
import { DragHandleIcon } from '@chakra-ui/icons';
|
||||
import { Box, BoxProps } from '@chakra-ui/react';
|
||||
import { Box, type BoxProps } from '@chakra-ui/react';
|
||||
import React from 'react';
|
||||
import { DraggableProvided } from 'react-beautiful-dnd';
|
||||
import { type DraggableProvided } from 'react-beautiful-dnd';
|
||||
|
||||
const DragIcon = ({ provided, ...props }: { provided: DraggableProvided } & BoxProps) => {
|
||||
return (
|
||||
|
@@ -1,13 +1,13 @@
|
||||
import { Box, Tbody } from '@chakra-ui/react';
|
||||
import React, { ReactElement, ReactNode, useState } from 'react';
|
||||
import React, { type ReactElement, type ReactNode, useState } from 'react';
|
||||
import {
|
||||
DragDropContext,
|
||||
Droppable,
|
||||
DraggableChildrenFn,
|
||||
DragStart,
|
||||
DropResult,
|
||||
DroppableProvided,
|
||||
DroppableStateSnapshot
|
||||
type DraggableChildrenFn,
|
||||
type DragStart,
|
||||
type DropResult,
|
||||
type DroppableProvided,
|
||||
type DroppableStateSnapshot
|
||||
} from 'react-beautiful-dnd';
|
||||
export * from 'react-beautiful-dnd';
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Flex, Box, FlexProps } from '@chakra-ui/react';
|
||||
import { Flex, Box, type FlexProps } from '@chakra-ui/react';
|
||||
import MyIcon from '../Icon';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Flex, FlexProps } from '@chakra-ui/react';
|
||||
import { Flex, type FlexProps } from '@chakra-ui/react';
|
||||
import MyIcon from './index';
|
||||
import MyTooltip from '../MyTooltip';
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import MyIcon from './index';
|
||||
import { IconProps } from '@chakra-ui/react';
|
||||
import { type IconProps } from '@chakra-ui/react';
|
||||
|
||||
const DeleteIcon = (props: IconProps) => {
|
||||
return (
|
||||
|
@@ -1,3 +1,3 @@
|
||||
import { iconPaths } from './constants';
|
||||
import type { iconPaths } from './constants';
|
||||
|
||||
export type IconNameType = keyof typeof iconPaths;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { ForwardedRef, forwardRef } from 'react';
|
||||
import { Image, ImageProps } from '@chakra-ui/react';
|
||||
import React, { type ForwardedRef, forwardRef } from 'react';
|
||||
import { Image, type ImageProps } from '@chakra-ui/react';
|
||||
import { getWebReqUrl } from '../../../common/system/utils';
|
||||
const MyImage = (props: ImageProps, ref?: ForwardedRef<any>) => {
|
||||
return <Image {...props} src={getWebReqUrl(props.src)} alt={props.alt || ''} />;
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import { PhotoProvider, PhotoView } from 'react-photo-view';
|
||||
import 'react-photo-view/dist/react-photo-view.css';
|
||||
import { ImageProps } from '@chakra-ui/react';
|
||||
import { type ImageProps } from '@chakra-ui/react';
|
||||
import { useSystem } from '../../../hooks/useSystem';
|
||||
import Loading from '../MyLoading';
|
||||
import MyImage from './MyImage';
|
||||
|
@@ -15,11 +15,11 @@ import { OnChangePlugin } from '@lexical/react/LexicalOnChangePlugin';
|
||||
import LexicalErrorBoundary from '@lexical/react/LexicalErrorBoundary';
|
||||
import { Box, Flex } from '@chakra-ui/react';
|
||||
import styles from './index.module.scss';
|
||||
import { EditorState, LexicalEditor } from 'lexical';
|
||||
import type { EditorState, LexicalEditor } from 'lexical';
|
||||
import { getNanoid } from '@fastgpt/global/common/string/tools';
|
||||
import {
|
||||
EditorVariableLabelPickerType,
|
||||
EditorVariablePickerType
|
||||
type EditorVariableLabelPickerType,
|
||||
type EditorVariablePickerType
|
||||
} from '../../Textarea/PromptEditor/type';
|
||||
import { VariableNode } from '../../Textarea/PromptEditor/plugins/VariablePlugin/node';
|
||||
import { textToEditorState } from '../../Textarea/PromptEditor/utils';
|
||||
|
@@ -1,10 +1,10 @@
|
||||
import React from 'react';
|
||||
import { EditorState, type LexicalEditor } from 'lexical';
|
||||
import type { EditorState, LexicalEditor } from 'lexical';
|
||||
import { useCallback } from 'react';
|
||||
import { editorStateToText } from '../../Textarea/PromptEditor/utils';
|
||||
import {
|
||||
EditorVariableLabelPickerType,
|
||||
EditorVariablePickerType
|
||||
type EditorVariableLabelPickerType,
|
||||
type EditorVariablePickerType
|
||||
} from '../../Textarea/PromptEditor/type';
|
||||
import Editor from './Editor';
|
||||
|
||||
|
@@ -4,11 +4,11 @@ import {
|
||||
NumberInputField,
|
||||
NumberInputStepper,
|
||||
NumberDecrementStepper,
|
||||
NumberInputProps
|
||||
type NumberInputProps
|
||||
} from '@chakra-ui/react';
|
||||
import React from 'react';
|
||||
import MyIcon from '../../Icon';
|
||||
import { UseFormRegister } from 'react-hook-form';
|
||||
import { type UseFormRegister } from 'react-hook-form';
|
||||
|
||||
type Props = Omit<NumberInputProps, 'onChange' | 'onBlur'> & {
|
||||
onChange?: (e?: number) => any;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { useState } from 'react';
|
||||
import { Input, InputProps, InputGroup, InputLeftElement } from '@chakra-ui/react';
|
||||
import { Input, type InputProps, InputGroup, InputLeftElement } from '@chakra-ui/react';
|
||||
import MyIcon from '../../Icon';
|
||||
|
||||
const SearchInput = (props: InputProps) => {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Box, HStack, Icon, StackProps } from '@chakra-ui/react';
|
||||
import { Box, HStack, Icon, type StackProps } from '@chakra-ui/react';
|
||||
|
||||
const LightTip = ({
|
||||
text,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Box, BoxProps } from '@chakra-ui/react';
|
||||
import { Box, type BoxProps } from '@chakra-ui/react';
|
||||
|
||||
const FormLabel = ({
|
||||
children,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { forwardRef } from 'react';
|
||||
import { Box, BoxProps, SpinnerProps } from '@chakra-ui/react';
|
||||
import { Box, type BoxProps, type SpinnerProps } from '@chakra-ui/react';
|
||||
import Loading from '../MyLoading';
|
||||
|
||||
type Props = BoxProps & {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Flex, Box, CloseButton, FlexProps } from '@chakra-ui/react';
|
||||
import { Flex, Box, CloseButton, type FlexProps } from '@chakra-ui/react';
|
||||
import { useLoading } from '../../../hooks/useLoading';
|
||||
import Avatar from '../Avatar';
|
||||
|
||||
|
@@ -7,7 +7,7 @@ import {
|
||||
DrawerOverlay,
|
||||
DrawerContent,
|
||||
DrawerCloseButton,
|
||||
DrawerContentProps,
|
||||
type DrawerContentProps,
|
||||
Flex,
|
||||
Image,
|
||||
Box
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Spinner, Flex, Box, SpinnerProps } from '@chakra-ui/react';
|
||||
import { Spinner, Flex, Box, type SpinnerProps } from '@chakra-ui/react';
|
||||
|
||||
const Loading = ({
|
||||
fixed = true,
|
||||
|
@@ -6,11 +6,11 @@ import {
|
||||
Box,
|
||||
useOutsideClick,
|
||||
MenuButton,
|
||||
MenuItemProps,
|
||||
PlacementWithLogical,
|
||||
AvatarProps,
|
||||
BoxProps,
|
||||
DividerProps
|
||||
type MenuItemProps,
|
||||
type PlacementWithLogical,
|
||||
type AvatarProps,
|
||||
type BoxProps,
|
||||
type DividerProps
|
||||
} from '@chakra-ui/react';
|
||||
import MyDivider from '../MyDivider';
|
||||
import type { IconNameType } from '../Icon/type';
|
||||
|
@@ -5,9 +5,9 @@ import {
|
||||
ModalContent,
|
||||
ModalHeader,
|
||||
ModalCloseButton,
|
||||
ModalContentProps,
|
||||
type ModalContentProps,
|
||||
Box,
|
||||
ImageProps
|
||||
type ImageProps
|
||||
} from '@chakra-ui/react';
|
||||
import MyBox from '../MyBox';
|
||||
import { useSystem } from '../../../hooks/useSystem';
|
||||
|
@@ -7,7 +7,7 @@ import {
|
||||
PopoverTrigger,
|
||||
PopoverContent,
|
||||
useDisclosure,
|
||||
PlacementWithLogical,
|
||||
type PlacementWithLogical,
|
||||
HStack,
|
||||
Box,
|
||||
Button,
|
||||
|
@@ -4,9 +4,9 @@ import {
|
||||
PopoverTrigger,
|
||||
PopoverContent,
|
||||
useDisclosure,
|
||||
PlacementWithLogical,
|
||||
type PlacementWithLogical,
|
||||
PopoverArrow,
|
||||
PopoverContentProps
|
||||
type PopoverContentProps
|
||||
} from '@chakra-ui/react';
|
||||
|
||||
interface Props extends PopoverContentProps {
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import React, { useCallback, useRef } from 'react';
|
||||
import MultipleRowSelect from './MultipleRowSelect';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import { MultipleSelectProps } from './type';
|
||||
import { type MultipleSelectProps } from './type';
|
||||
import { cronParser2Fields } from '@fastgpt/global/common/string/time';
|
||||
|
||||
type CronType = 'month' | 'week' | 'day' | 'interval';
|
||||
|
@@ -11,7 +11,7 @@ import {
|
||||
MenuButton,
|
||||
MenuList
|
||||
} from '@chakra-ui/react';
|
||||
import { ListItemType, MultipleArraySelectProps, MultipleSelectProps } from './type';
|
||||
import { type ListItemType, type MultipleArraySelectProps, type MultipleSelectProps } from './type';
|
||||
import EmptyTip from '../EmptyTip';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import MyIcon from '../../common/Icon';
|
||||
|
@@ -1,13 +1,13 @@
|
||||
import {
|
||||
Box,
|
||||
Button,
|
||||
ButtonProps,
|
||||
type ButtonProps,
|
||||
Checkbox,
|
||||
Flex,
|
||||
Menu,
|
||||
MenuButton,
|
||||
MenuItem,
|
||||
MenuItemProps,
|
||||
type MenuItemProps,
|
||||
MenuList,
|
||||
useDisclosure
|
||||
} from '@chakra-ui/react';
|
||||
@@ -16,7 +16,7 @@ import MyTag from '../Tag/index';
|
||||
import MyIcon from '../Icon';
|
||||
import MyAvatar from '../Avatar';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import { useScrollPagination } from '../../../hooks/useScrollPagination';
|
||||
import type { useScrollPagination } from '../../../hooks/useScrollPagination';
|
||||
import MyDivider from '../MyDivider';
|
||||
|
||||
export type SelectProps<T = any> = {
|
||||
|
@@ -4,7 +4,7 @@ import React, {
|
||||
useMemo,
|
||||
useEffect,
|
||||
useImperativeHandle,
|
||||
ForwardedRef,
|
||||
type ForwardedRef,
|
||||
useState
|
||||
} from 'react';
|
||||
import {
|
||||
@@ -23,7 +23,7 @@ import type { ButtonProps, MenuItemProps } from '@chakra-ui/react';
|
||||
import MyIcon from '../Icon';
|
||||
import { useRequest2 } from '../../../hooks/useRequest';
|
||||
import MyDivider from '../MyDivider';
|
||||
import { useScrollPagination } from '../../../hooks/useScrollPagination';
|
||||
import type { useScrollPagination } from '../../../hooks/useScrollPagination';
|
||||
import Avatar from '../Avatar';
|
||||
|
||||
/** 选择组件 Props 类型
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { ButtonProps } from '@chakra-ui/react';
|
||||
import type { ButtonProps } from '@chakra-ui/react';
|
||||
|
||||
type ListItemType = {
|
||||
alias?: string;
|
||||
|
@@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import MyTooltip from '.';
|
||||
import { IconProps } from '@chakra-ui/icons';
|
||||
import { type IconProps } from '@chakra-ui/icons';
|
||||
import MyIcon from '../Icon';
|
||||
|
||||
type Props = IconProps & {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { Tooltip, TooltipProps } from '@chakra-ui/react';
|
||||
import { Tooltip, type TooltipProps } from '@chakra-ui/react';
|
||||
|
||||
interface Props extends TooltipProps {}
|
||||
|
||||
|
@@ -2,7 +2,7 @@ import { useCopyData } from '../../../hooks/useCopyData';
|
||||
import React from 'react';
|
||||
import MyTooltip from '../MyTooltip';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
import { Box, BoxProps } from '@chakra-ui/react';
|
||||
import { Box, type BoxProps } from '@chakra-ui/react';
|
||||
|
||||
const CopyBox = ({
|
||||
value,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { forwardRef } from 'react';
|
||||
import { Flex, Box, BoxProps } from '@chakra-ui/react';
|
||||
import { Flex, Box, type BoxProps } from '@chakra-ui/react';
|
||||
import MyIcon from '../Icon';
|
||||
|
||||
type Props<T = string> = Omit<BoxProps, 'onChange'> & {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { useMemo } from 'react';
|
||||
import { Box, BoxProps, Flex, type FlexProps } from '@chakra-ui/react';
|
||||
import { Box, type BoxProps, Flex, type FlexProps } from '@chakra-ui/react';
|
||||
|
||||
type ColorSchemaType = 'white' | 'blue' | 'green' | 'red' | 'yellow' | 'gray' | 'purple' | 'adora';
|
||||
|
||||
|
@@ -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,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import { Box, HStack, type StackProps } from '@chakra-ui/react';
|
||||
import { SourceMemberType } from '@fastgpt/global/support/user/type';
|
||||
import { type SourceMemberType } from '@fastgpt/global/support/user/type';
|
||||
import React from 'react';
|
||||
import Avatar from '../Avatar';
|
||||
import { useTranslation } from 'next-i18next';
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import React, { useMemo, useRef } from 'react';
|
||||
import MyMenu, { MenuItemType } from '../../common/MyMenu';
|
||||
import MyMenu, { type MenuItemType } from '../../common/MyMenu';
|
||||
import {
|
||||
FlowNodeInputMap,
|
||||
FlowNodeInputTypeEnum
|
||||
|
Reference in New Issue
Block a user