Files
FastGPT/projects/app/src/components/support/permission/IconText/index.tsx
Theresa 2d3117c5da 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
2025-05-06 17:33:09 +08:00

30 lines
882 B
TypeScript

import React from 'react';
import { PermissionTypeMap } from '@fastgpt/global/support/permission/constant';
import { Box, type StackProps, HStack } from '@chakra-ui/react';
import MyIcon from '@fastgpt/web/components/common/Icon';
import { useTranslation } from 'next-i18next';
const PermissionIconText = ({
w = '1rem',
fontSize = 'mini',
iconColor = 'myGray.500',
private: Private = false,
...props
}: {
private?: boolean;
iconColor?: string;
} & StackProps) => {
const { t } = useTranslation();
const per = Private ? 'private' : 'public';
return PermissionTypeMap[per] ? (
<HStack spacing={1} fontSize={fontSize} {...props}>
<MyIcon name={PermissionTypeMap[per]?.iconLight as any} w={w} color={iconColor} />
<Box lineHeight={1}>{t(PermissionTypeMap[per]?.label as any)}</Box>
</HStack>
) : null;
};
export default PermissionIconText;