4.6.1 production (#498)
@@ -27,7 +27,6 @@ export enum FlowNodeOutputTypeEnum {
|
|||||||
|
|
||||||
export enum FlowNodeTypeEnum {
|
export enum FlowNodeTypeEnum {
|
||||||
empty = 'empty',
|
empty = 'empty',
|
||||||
variable = 'variable',
|
|
||||||
userGuide = 'userGuide',
|
userGuide = 'userGuide',
|
||||||
questionInput = 'questionInput',
|
questionInput = 'questionInput',
|
||||||
historyNode = 'historyNode',
|
historyNode = 'historyNode',
|
||||||
@@ -40,7 +39,10 @@ export enum FlowNodeTypeEnum {
|
|||||||
runApp = 'app',
|
runApp = 'app',
|
||||||
pluginModule = 'pluginModule',
|
pluginModule = 'pluginModule',
|
||||||
pluginInput = 'pluginInput',
|
pluginInput = 'pluginInput',
|
||||||
pluginOutput = 'pluginOutput'
|
pluginOutput = 'pluginOutput',
|
||||||
|
|
||||||
|
// abandon
|
||||||
|
variable = 'variable'
|
||||||
}
|
}
|
||||||
|
|
||||||
export enum FlowNodeSpecialInputKeyEnum {
|
export enum FlowNodeSpecialInputKeyEnum {
|
||||||
|
@@ -338,7 +338,7 @@ ${images.map((img) => JSON.stringify({ src: img.src })).join('\n')}
|
|||||||
}}
|
}}
|
||||||
onPaste={(e) => {
|
onPaste={(e) => {
|
||||||
const clipboardData = e.clipboardData;
|
const clipboardData = e.clipboardData;
|
||||||
if (clipboardData) {
|
if (clipboardData && showFileSelector) {
|
||||||
const items = clipboardData.items;
|
const items = clipboardData.items;
|
||||||
const files = Array.from(items)
|
const files = Array.from(items)
|
||||||
.map((item) => (item.kind === 'file' ? item.getAsFile() : undefined))
|
.map((item) => (item.kind === 'file' ? item.getAsFile() : undefined))
|
||||||
|
@@ -110,7 +110,7 @@ const QuoteModal = ({
|
|||||||
href={`/dataset/detail?datasetId=${item.datasetId}¤tTab=dataCard&collectionId=${item.collectionId}`}
|
href={`/dataset/detail?datasetId=${item.datasetId}¤tTab=dataCard&collectionId=${item.collectionId}`}
|
||||||
>
|
>
|
||||||
{t('core.dataset.Go Dataset')}
|
{t('core.dataset.Go Dataset')}
|
||||||
<MyIcon name={'rightArrowLight'} w={'10px'} />
|
<MyIcon name={'common/rightArrowLight'} w={'10px'} />
|
||||||
</Link>
|
</Link>
|
||||||
)}
|
)}
|
||||||
</Flex>
|
</Flex>
|
||||||
|
@@ -774,7 +774,7 @@ const ChatBox = (
|
|||||||
{showMarkIcon && item.adminFeedback && (
|
{showMarkIcon && item.adminFeedback && (
|
||||||
<Box>
|
<Box>
|
||||||
<Flex alignItems={'center'} py={2}>
|
<Flex alignItems={'center'} py={2}>
|
||||||
<MyIcon name={'markLight'} w={'14px'} color={'myGray.900'} />
|
<MyIcon name={'core/app/markLight'} w={'14px'} color={'myGray.900'} />
|
||||||
<Box ml={2} color={'myGray.500'}>
|
<Box ml={2} color={'myGray.500'}>
|
||||||
{t('chat.Admin Mark Content')}
|
{t('chat.Admin Mark Content')}
|
||||||
</Box>
|
</Box>
|
||||||
@@ -1093,7 +1093,7 @@ function ChatController({
|
|||||||
<MyTooltip label={t('chat.retry')}>
|
<MyTooltip label={t('chat.retry')}>
|
||||||
<MyIcon
|
<MyIcon
|
||||||
{...controlIconStyle}
|
{...controlIconStyle}
|
||||||
name={'retryLight'}
|
name={'common/retryLight'}
|
||||||
_hover={{ color: 'green.500' }}
|
_hover={{ color: 'green.500' }}
|
||||||
onClick={onRetry}
|
onClick={onRetry}
|
||||||
/>
|
/>
|
||||||
@@ -1113,7 +1113,7 @@ function ChatController({
|
|||||||
hasAudio &&
|
hasAudio &&
|
||||||
(audioLoading ? (
|
(audioLoading ? (
|
||||||
<MyTooltip label={'加载中...'}>
|
<MyTooltip label={'加载中...'}>
|
||||||
<MyIcon {...controlIconStyle} name={'loading'} />
|
<MyIcon {...controlIconStyle} name={'common/loading'} />
|
||||||
</MyTooltip>
|
</MyTooltip>
|
||||||
) : audioPlaying ? (
|
) : audioPlaying ? (
|
||||||
<Flex alignItems={'center'} mr={2}>
|
<Flex alignItems={'center'} mr={2}>
|
||||||
@@ -1160,7 +1160,7 @@ function ChatController({
|
|||||||
<MyTooltip label={t('chat.Mark')}>
|
<MyTooltip label={t('chat.Mark')}>
|
||||||
<MyIcon
|
<MyIcon
|
||||||
{...controlIconStyle}
|
{...controlIconStyle}
|
||||||
name={'markLight'}
|
name={'core/app/markLight'}
|
||||||
_hover={{ color: '#67c13b' }}
|
_hover={{ color: '#67c13b' }}
|
||||||
onClick={onMark}
|
onClick={onMark}
|
||||||
/>
|
/>
|
||||||
@@ -1174,7 +1174,7 @@ function ChatController({
|
|||||||
color={'white'}
|
color={'white'}
|
||||||
bg={'#FC9663'}
|
bg={'#FC9663'}
|
||||||
fontWeight={'bold'}
|
fontWeight={'bold'}
|
||||||
name={'badLight'}
|
name={'core/chat/feedback/badLight'}
|
||||||
onClick={onReadFeedback}
|
onClick={onReadFeedback}
|
||||||
/>
|
/>
|
||||||
</MyTooltip>
|
</MyTooltip>
|
||||||
@@ -1196,7 +1196,7 @@ function ChatController({
|
|||||||
_hover: { color: '#FB7C3C' },
|
_hover: { color: '#FB7C3C' },
|
||||||
onClick: onFeedback
|
onClick: onFeedback
|
||||||
})}
|
})}
|
||||||
name={'badLight'}
|
name={'core/chat/feedback/badLight'}
|
||||||
/>
|
/>
|
||||||
</MyTooltip>
|
</MyTooltip>
|
||||||
)}
|
)}
|
||||||
|
Before Width: | Height: | Size: 870 B After Width: | Height: | Size: 870 B |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1691412437336"
|
||||||
|
class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2312"
|
||||||
|
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<path
|
||||||
|
d="M512 14.8973037a497.1026963 497.1026963 0 1 0 497.1026963 497.1026963A497.1026963 497.1026963 0 0 0 512 14.8973037z m165.70089876 581.8863224l-207.12612345 124.27567408L346.29910124 796.45320912V255.16360691l125.38034629 75.39390894 207.12612347 124.27567407 118.47614261 70.97521873z"
|
||||||
|
p-id="2313"></path>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 650 B |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 897 B After Width: | Height: | Size: 897 B |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 677 B After Width: | Height: | Size: 677 B |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 605 B After Width: | Height: | Size: 605 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 596 B After Width: | Height: | Size: 596 B |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
@@ -65,27 +65,26 @@ const iconPaths = {
|
|||||||
customTitle: () => import('./icons/light/customTitle.svg'),
|
customTitle: () => import('./icons/light/customTitle.svg'),
|
||||||
billRecordLight: () => import('./icons/light/billRecord.svg'),
|
billRecordLight: () => import('./icons/light/billRecord.svg'),
|
||||||
informLight: () => import('./icons/light/inform.svg'),
|
informLight: () => import('./icons/light/inform.svg'),
|
||||||
payRecordLight: () => import('./icons/light/payRecord.svg'),
|
'support/pay/payRecordLight': () => import('./icons/support/pay/payRecordLight.svg'),
|
||||||
loginoutLight: () => import('./icons/light/loginout.svg'),
|
'support/account/loginoutLight': () => import('./icons/support/account/loginoutLight.svg'),
|
||||||
chatModelTag: () => import('./icons/light/chatModelTag.svg'),
|
'core/chat/chatModelTag': () => import('./icons/core/chat/chatModelTag.svg'),
|
||||||
language_en: () => import('./icons/language/en.svg'),
|
'common/language/en': () => import('./icons/common/language/en.svg'),
|
||||||
language_zh: () => import('./icons/language/zh.svg'),
|
'common/language/zh': () => import('./icons/common/language/zh.svg'),
|
||||||
outlink_share: () => import('./icons/outlink/share.svg'),
|
'support/outlink/shareLight': () => import('./icons/support/outlink/shareLight.svg'),
|
||||||
outlink_iframe: () => import('./icons/outlink/iframe.svg'),
|
'support/outlink/iframeLight': () => import('./icons/support/outlink/iframeLight.svg'),
|
||||||
addCircle: () => import('./icons/circle/add.svg'),
|
'common/addCircleLight': () => import('./icons/common/addCircleLight.svg'),
|
||||||
playFill: () => import('./icons/fill/play.svg'),
|
'common/playFill': () => import('./icons/common/playFill.svg'),
|
||||||
courseLight: () => import('./icons/light/course.svg'),
|
'common/courseLight': () => import('./icons/common/courseLight.svg'),
|
||||||
promotionLight: () => import('./icons/light/promotion.svg'),
|
'support/account/promotionLight': () => import('./icons/support/account/promotionLight.svg'),
|
||||||
logsLight: () => import('./icons/light/logs.svg'),
|
'core/app/logsLight': () => import('./icons/core/app/logsLight.svg'),
|
||||||
badLight: () => import('./icons/light/bad.svg'),
|
'core/chat/feedback/badLight': () => import('./icons/core/chat/feedback/badLight.svg'),
|
||||||
markLight: () => import('./icons/light/mark.svg'),
|
'core/app/markLight': () => import('./icons/core/app/markLight.svg'),
|
||||||
retryLight: () => import('./icons/light/retry.svg'),
|
'common/retryLight': () => import('./icons/common/retryLight.svg'),
|
||||||
rightArrowLight: () => import('./icons/light/rightArrow.svg'),
|
'common/rightArrowLight': () => import('./icons/common/rightArrowLight.svg'),
|
||||||
searchLight: () => import('./icons/light/search.svg'),
|
'common/searchLight': () => import('./icons/common/searchLight.svg'),
|
||||||
plusFill: () => import('./icons/fill/plus.svg'),
|
'common/file/move': () => import('./icons/common/file/move.svg'),
|
||||||
moveLight: () => import('./icons/light/move.svg'),
|
'core/app/questionGuide': () => import('./icons/core/app/questionGuide.svg'),
|
||||||
questionGuide: () => import('./icons/app/questionGuide.svg'),
|
'common/loading': () => import('./icons/common/loading.svg'),
|
||||||
loading: () => import('./icons/light/loading.svg'),
|
|
||||||
'core/app/aiLight': () => import('./icons/core/app/aiLight.svg'),
|
'core/app/aiLight': () => import('./icons/core/app/aiLight.svg'),
|
||||||
'core/app/aiFill': () => import('./icons/core/app/aiFill.svg'),
|
'core/app/aiFill': () => import('./icons/core/app/aiFill.svg'),
|
||||||
'common/text/t': () => import('./icons/common/text/t.svg'),
|
'common/text/t': () => import('./icons/common/text/t.svg'),
|
||||||
|
@@ -184,7 +184,7 @@ const Navbar = ({ unread }: { unread: number }) => {
|
|||||||
window.open(`${feConfigs.docUrl}/docs/intro`);
|
window.open(`${feConfigs.docUrl}/docs/intro`);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<MyIcon name={'courseLight'} width={'26px'} height={'26px'} />
|
<MyIcon name={'common/courseLight'} width={'26px'} height={'26px'} />
|
||||||
</Box>
|
</Box>
|
||||||
</MyTooltip>
|
</MyTooltip>
|
||||||
)}
|
)}
|
||||||
|
@@ -51,7 +51,7 @@ const ParentPaths = (props: {
|
|||||||
{item.parentName}
|
{item.parentName}
|
||||||
</Box>
|
</Box>
|
||||||
{i !== concatPaths.length - 1 && (
|
{i !== concatPaths.length - 1 && (
|
||||||
<MyIcon name={'rightArrowLight'} color={'myGray.500'} w={'14px'} />
|
<MyIcon name={'common/rightArrowLight'} color={'myGray.500'} w={'14px'} />
|
||||||
)}
|
)}
|
||||||
</Flex>
|
</Flex>
|
||||||
))}
|
))}
|
||||||
|
@@ -123,7 +123,7 @@ const ModuleTemplateList = ({
|
|||||||
<Box fontSize={'sm'} transform={'translateY(-1px)'}>
|
<Box fontSize={'sm'} transform={'translateY(-1px)'}>
|
||||||
{t('plugin.To Edit Plugin')}
|
{t('plugin.To Edit Plugin')}
|
||||||
</Box>
|
</Box>
|
||||||
<MyIcon name={'rightArrowLight'} w={'12px'} />
|
<MyIcon name={'common/rightArrowLight'} w={'12px'} />
|
||||||
</Flex>
|
</Flex>
|
||||||
)}
|
)}
|
||||||
</Flex>
|
</Flex>
|
||||||
|
@@ -3,16 +3,16 @@ import React, { useCallback, useMemo, useState } from 'react';
|
|||||||
import { NodeProps } from 'reactflow';
|
import { NodeProps } from 'reactflow';
|
||||||
import { Box, Button, Table, Thead, Tbody, Tr, Th, Td, TableContainer } from '@chakra-ui/react';
|
import { Box, Button, Table, Thead, Tbody, Tr, Th, Td, TableContainer } from '@chakra-ui/react';
|
||||||
import { AddIcon } from '@chakra-ui/icons';
|
import { AddIcon } from '@chakra-ui/icons';
|
||||||
import NodeCard from '../modules/NodeCard';
|
import NodeCard from '../../modules/NodeCard';
|
||||||
import { FlowModuleItemType } from '@fastgpt/global/core/module/type.d';
|
import { FlowModuleItemType } from '@fastgpt/global/core/module/type.d';
|
||||||
import Container from '../modules/Container';
|
import Container from '../../modules/Container';
|
||||||
import { SystemInputEnum, VariableInputEnum } from '@/constants/app';
|
import { SystemInputEnum, VariableInputEnum } from '@/constants/app';
|
||||||
import type { VariableItemType } from '@/types/app';
|
import type { VariableItemType } from '@/types/app';
|
||||||
import MyIcon from '@/components/Icon';
|
import MyIcon from '@/components/Icon';
|
||||||
import { customAlphabet } from 'nanoid';
|
import { customAlphabet } from 'nanoid';
|
||||||
const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 6);
|
const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 6);
|
||||||
import VariableEditModal, { addVariable } from '../../../VariableEditModal';
|
import VariableEditModal, { addVariable } from '../../../../VariableEditModal';
|
||||||
import { onChangeNode } from '../../FlowProvider';
|
import { onChangeNode } from '../../../FlowProvider';
|
||||||
|
|
||||||
export const defaultVariable: VariableItemType = {
|
export const defaultVariable: VariableItemType = {
|
||||||
id: nanoid(),
|
id: nanoid(),
|
@@ -17,7 +17,7 @@ import type { ModuleItemType } from '@fastgpt/global/core/module/type.d';
|
|||||||
const NodeSimple = dynamic(() => import('./components/nodes/NodeSimple'));
|
const NodeSimple = dynamic(() => import('./components/nodes/NodeSimple'));
|
||||||
const nodeTypes = {
|
const nodeTypes = {
|
||||||
[FlowNodeTypeEnum.userGuide]: dynamic(() => import('./components/nodes/NodeUserGuide')),
|
[FlowNodeTypeEnum.userGuide]: dynamic(() => import('./components/nodes/NodeUserGuide')),
|
||||||
[FlowNodeTypeEnum.variable]: dynamic(() => import('./components/nodes/NodeVariable')),
|
[FlowNodeTypeEnum.variable]: dynamic(() => import('./components/nodes/abandon/NodeVariable')),
|
||||||
[FlowNodeTypeEnum.questionInput]: dynamic(() => import('./components/nodes/NodeQuestionInput')),
|
[FlowNodeTypeEnum.questionInput]: dynamic(() => import('./components/nodes/NodeQuestionInput')),
|
||||||
[FlowNodeTypeEnum.historyNode]: NodeSimple,
|
[FlowNodeTypeEnum.historyNode]: NodeSimple,
|
||||||
[FlowNodeTypeEnum.chatNode]: NodeSimple,
|
[FlowNodeTypeEnum.chatNode]: NodeSimple,
|
||||||
|
@@ -154,7 +154,7 @@ const TeamManageModal = ({ onClose }: { onClose: () => void }) => {
|
|||||||
border={'none'}
|
border={'none'}
|
||||||
icon={
|
icon={
|
||||||
<MyIcon
|
<MyIcon
|
||||||
name={'addCircle'}
|
name={'common/addCircleLight'}
|
||||||
w={['16px', '18px']}
|
w={['16px', '18px']}
|
||||||
color={'myBlue.600'}
|
color={'myBlue.600'}
|
||||||
cursor={'pointer'}
|
cursor={'pointer'}
|
||||||
@@ -282,7 +282,13 @@ const TeamManageModal = ({ onClose }: { onClose: () => void }) => {
|
|||||||
size="sm"
|
size="sm"
|
||||||
borderRadius={'md'}
|
borderRadius={'md'}
|
||||||
ml={3}
|
ml={3}
|
||||||
leftIcon={<MyIcon name={'loginoutLight'} w={'14px'} color={'myBlue.600'} />}
|
leftIcon={
|
||||||
|
<MyIcon
|
||||||
|
name={'support/account/loginoutLight'}
|
||||||
|
w={'14px'}
|
||||||
|
color={'myBlue.600'}
|
||||||
|
/>
|
||||||
|
}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
openLeaveConfirm(() => onLeaveTeam(userInfo?.team?.teamId))();
|
openLeaveConfirm(() => onLeaveTeam(userInfo?.team?.teamId))();
|
||||||
}}
|
}}
|
||||||
|
@@ -264,7 +264,7 @@ const UserInfo = () => {
|
|||||||
window.open(`${feConfigs.docUrl}/docs/intro`);
|
window.open(`${feConfigs.docUrl}/docs/intro`);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<MyIcon name={'courseLight'} w={'18px'} />
|
<MyIcon name={'common/courseLight'} w={'18px'} />
|
||||||
<Box ml={2} flex={1}>
|
<Box ml={2} flex={1}>
|
||||||
{t('system.Help Document')}
|
{t('system.Help Document')}
|
||||||
</Box>
|
</Box>
|
||||||
|
@@ -53,7 +53,7 @@ const Account = ({ currentTab }: { currentTab: `${TabEnum}` }) => {
|
|||||||
...(feConfigs?.show_promotion
|
...(feConfigs?.show_promotion
|
||||||
? [
|
? [
|
||||||
{
|
{
|
||||||
icon: 'promotionLight',
|
icon: 'support/account/promotionLight',
|
||||||
label: t('user.Promotion Record'),
|
label: t('user.Promotion Record'),
|
||||||
id: TabEnum.promotion
|
id: TabEnum.promotion
|
||||||
}
|
}
|
||||||
@@ -62,7 +62,7 @@ const Account = ({ currentTab }: { currentTab: `${TabEnum}` }) => {
|
|||||||
...(feConfigs?.show_pay && userInfo?.team.canWrite
|
...(feConfigs?.show_pay && userInfo?.team.canWrite
|
||||||
? [
|
? [
|
||||||
{
|
{
|
||||||
icon: 'payRecordLight',
|
icon: 'support/pay/payRecordLight',
|
||||||
label: t('user.Recharge Record'),
|
label: t('user.Recharge Record'),
|
||||||
id: TabEnum.pay
|
id: TabEnum.pay
|
||||||
}
|
}
|
||||||
@@ -88,7 +88,7 @@ const Account = ({ currentTab }: { currentTab: `${TabEnum}` }) => {
|
|||||||
: []),
|
: []),
|
||||||
|
|
||||||
{
|
{
|
||||||
icon: 'loginoutLight',
|
icon: 'support/account/loginoutLight',
|
||||||
label: t('user.Sign Out'),
|
label: t('user.Sign Out'),
|
||||||
id: TabEnum.loginout
|
id: TabEnum.loginout
|
||||||
}
|
}
|
||||||
|
@@ -125,7 +125,12 @@ const Logs = ({ appId }: { appId: string }) => {
|
|||||||
borderRadius={'lg'}
|
borderRadius={'lg'}
|
||||||
fontWeight={'bold'}
|
fontWeight={'bold'}
|
||||||
>
|
>
|
||||||
<MyIcon mr={1} name={'badLight'} color={'#C96330'} w={'14px'} />
|
<MyIcon
|
||||||
|
mr={1}
|
||||||
|
name={'core/chat/feedback/badLight'}
|
||||||
|
color={'#C96330'}
|
||||||
|
w={'14px'}
|
||||||
|
/>
|
||||||
{item.feedbackCount}
|
{item.feedbackCount}
|
||||||
</Flex>
|
</Flex>
|
||||||
</Box>
|
</Box>
|
||||||
@@ -254,7 +259,7 @@ function DetailLogsModal({
|
|||||||
</Tag>
|
</Tag>
|
||||||
{!!chat?.app?.chatModels && (
|
{!!chat?.app?.chatModels && (
|
||||||
<Tag ml={2} colorSchema={'green'}>
|
<Tag ml={2} colorSchema={'green'}>
|
||||||
<MyIcon name={'chatModelTag'} w={'14px'} />
|
<MyIcon name={'core/chat/chatModelTag'} w={'14px'} />
|
||||||
<Box ml={1}>{chat.app.chatModels.join(',')}</Box>
|
<Box ml={1}>{chat.app.chatModels.join(',')}</Box>
|
||||||
</Tag>
|
</Tag>
|
||||||
)}
|
)}
|
||||||
|
@@ -24,7 +24,7 @@ const OutLink = ({ appId }: { appId: string }) => {
|
|||||||
iconSize={'20px'}
|
iconSize={'20px'}
|
||||||
list={[
|
list={[
|
||||||
{
|
{
|
||||||
icon: 'outlink_share',
|
icon: 'support/outlink/shareLight',
|
||||||
title: '免登录窗口',
|
title: '免登录窗口',
|
||||||
desc: '分享链接给其他用户,无需登录即可直接进行使用',
|
desc: '分享链接给其他用户,无需登录即可直接进行使用',
|
||||||
value: OutLinkTypeEnum.share
|
value: OutLinkTypeEnum.share
|
||||||
@@ -36,7 +36,7 @@ const OutLink = ({ appId }: { appId: string }) => {
|
|||||||
value: OutLinkTypeEnum.apikey
|
value: OutLinkTypeEnum.apikey
|
||||||
}
|
}
|
||||||
// {
|
// {
|
||||||
// icon: 'outlink_iframe',
|
// icon: 'support/outlink/iframeLight',
|
||||||
// title: '网页嵌入',
|
// title: '网页嵌入',
|
||||||
// desc: '嵌入到已有网页中,右下角会生成对话按键',
|
// desc: '嵌入到已有网页中,右下角会生成对话按键',
|
||||||
// value: OutLinkTypeEnum.iframe
|
// value: OutLinkTypeEnum.iframe
|
||||||
|
@@ -9,7 +9,7 @@ const QGSwitch = (props: SwitchProps) => {
|
|||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
return (
|
return (
|
||||||
<Flex alignItems={'center'}>
|
<Flex alignItems={'center'}>
|
||||||
<MyIcon name={'questionGuide'} mr={2} w={'16px'} />
|
<MyIcon name={'core/app/questionGuide'} mr={2} w={'16px'} />
|
||||||
<Box>{t('core.app.Next Step Guide')}</Box>
|
<Box>{t('core.app.Next Step Guide')}</Box>
|
||||||
<MyTooltip label={t('core.app.Question Guide Tip')} forceShow>
|
<MyTooltip label={t('core.app.Question Guide Tip')} forceShow>
|
||||||
<QuestionOutlineIcon display={['none', 'inline']} ml={1} />
|
<QuestionOutlineIcon display={['none', 'inline']} ml={1} />
|
||||||
|
@@ -56,7 +56,7 @@ const AppDetail = ({ currentTab }: { currentTab: `${TabEnum}` }) => {
|
|||||||
? []
|
? []
|
||||||
: [{ label: '高级编排', id: TabEnum.adEdit, icon: 'settingLight' }]),
|
: [{ label: '高级编排', id: TabEnum.adEdit, icon: 'settingLight' }]),
|
||||||
{ label: '外部使用', id: TabEnum.outLink, icon: 'shareLight' },
|
{ label: '外部使用', id: TabEnum.outLink, icon: 'shareLight' },
|
||||||
{ label: '对话日志', id: TabEnum.logs, icon: 'logsLight' },
|
{ label: '对话日志', id: TabEnum.logs, icon: 'core/app/logsLight' },
|
||||||
{ label: '立即对话', id: TabEnum.startChat, icon: 'chat' }
|
{ label: '立即对话', id: TabEnum.startChat, icon: 'chat' }
|
||||||
],
|
],
|
||||||
[]
|
[]
|
||||||
|
@@ -55,7 +55,7 @@ const ChatHeader = ({
|
|||||||
</Tag>
|
</Tag>
|
||||||
{!!chatModels && chatModels.length > 0 && (
|
{!!chatModels && chatModels.length > 0 && (
|
||||||
<Tag ml={2} colorSchema={'green'}>
|
<Tag ml={2} colorSchema={'green'}>
|
||||||
<MyIcon name={'chatModelTag'} w={'14px'} />
|
<MyIcon name={'core/chat/chatModelTag'} w={'14px'} />
|
||||||
<Box ml={1}>{chatModels.join(',')}</Box>
|
<Box ml={1}>{chatModels.join(',')}</Box>
|
||||||
</Tag>
|
</Tag>
|
||||||
)}
|
)}
|
||||||
|
@@ -65,7 +65,7 @@ const Hero = () => {
|
|||||||
loading={'lazy'}
|
loading={'lazy'}
|
||||||
/>
|
/>
|
||||||
<MyIcon
|
<MyIcon
|
||||||
name={'playFill'}
|
name={'common/playFill'}
|
||||||
position={'absolute'}
|
position={'absolute'}
|
||||||
w={['30px', '40px']}
|
w={['30px', '40px']}
|
||||||
cursor={'pointer'}
|
cursor={'pointer'}
|
||||||
|
@@ -247,7 +247,12 @@ const CollectionCard = () => {
|
|||||||
<Flex alignItems={'center'} mr={2}>
|
<Flex alignItems={'center'} mr={2}>
|
||||||
<MyInput
|
<MyInput
|
||||||
leftIcon={
|
leftIcon={
|
||||||
<MyIcon name="searchLight" position={'absolute'} w={'14px'} color={'myGray.500'} />
|
<MyIcon
|
||||||
|
name="common/searchLight"
|
||||||
|
position={'absolute'}
|
||||||
|
w={'14px'}
|
||||||
|
color={'myGray.500'}
|
||||||
|
/>
|
||||||
}
|
}
|
||||||
w={['100%', '250px']}
|
w={['100%', '250px']}
|
||||||
size={['sm', 'md']}
|
size={['sm', 'md']}
|
||||||
@@ -472,7 +477,7 @@ const CollectionCard = () => {
|
|||||||
{
|
{
|
||||||
child: (
|
child: (
|
||||||
<Flex alignItems={'center'}>
|
<Flex alignItems={'center'}>
|
||||||
<MyIcon name={'moveLight'} w={'14px'} mr={2} />
|
<MyIcon name={'common/file/move'} w={'14px'} mr={2} />
|
||||||
{t('Move')}
|
{t('Move')}
|
||||||
</Flex>
|
</Flex>
|
||||||
),
|
),
|
||||||
|
@@ -147,7 +147,12 @@ const DataCard = () => {
|
|||||||
<Box flex={1} mr={1} />
|
<Box flex={1} mr={1} />
|
||||||
<MyInput
|
<MyInput
|
||||||
leftIcon={
|
leftIcon={
|
||||||
<MyIcon name="searchLight" position={'absolute'} w={'14px'} color={'myGray.500'} />
|
<MyIcon
|
||||||
|
name="common/searchLight"
|
||||||
|
position={'absolute'}
|
||||||
|
w={'14px'}
|
||||||
|
color={'myGray.500'}
|
||||||
|
/>
|
||||||
}
|
}
|
||||||
w={['200px', '300px']}
|
w={['200px', '300px']}
|
||||||
placeholder="根据匹配知识,预期答案和来源进行搜索"
|
placeholder="根据匹配知识,预期答案和来源进行搜索"
|
||||||
|
@@ -91,7 +91,7 @@ const InputDataModal = ({
|
|||||||
...(defaultValue.id
|
...(defaultValue.id
|
||||||
? [{ label: t('dataset.data.edit.Delete'), id: TabEnum.delete, icon: 'delete' }]
|
? [{ label: t('dataset.data.edit.Delete'), id: TabEnum.delete, icon: 'delete' }]
|
||||||
: []),
|
: []),
|
||||||
{ label: t('dataset.data.edit.Course'), id: TabEnum.doc, icon: 'courseLight' }
|
{ label: t('dataset.data.edit.Course'), id: TabEnum.doc, icon: 'common/courseLight' }
|
||||||
];
|
];
|
||||||
|
|
||||||
const { ConfirmModal, openConfirm } = useConfirm({
|
const { ConfirmModal, openConfirm } = useConfirm({
|
||||||
@@ -352,7 +352,7 @@ const InputDataModal = ({
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
<MyIcon name={'addCircle'} w={'16px'} />
|
<MyIcon name={'common/addCircleLight'} w={'16px'} />
|
||||||
<Box>{t('dataset.data.Add Index')}</Box>
|
<Box>{t('dataset.data.Add Index')}</Box>
|
||||||
</Flex>
|
</Flex>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
@@ -85,7 +85,7 @@ const MoveModal = ({
|
|||||||
{item.parentName}
|
{item.parentName}
|
||||||
</Box>
|
</Box>
|
||||||
{i !== paths.length - 1 && (
|
{i !== paths.length - 1 && (
|
||||||
<MyIcon name={'rightArrowLight'} color={'myGray.500'} w={['18px', '24px']} />
|
<MyIcon name={'common/rightArrowLight'} color={'myGray.500'} w={'14px'} />
|
||||||
)}
|
)}
|
||||||
</Flex>
|
</Flex>
|
||||||
))}
|
))}
|
||||||
|
@@ -347,7 +347,7 @@ const Kb = () => {
|
|||||||
{
|
{
|
||||||
child: (
|
child: (
|
||||||
<Flex alignItems={'center'}>
|
<Flex alignItems={'center'}>
|
||||||
<MyIcon name={'moveLight'} w={'14px'} mr={2} />
|
<MyIcon name={'common/file/move'} w={'14px'} mr={2} />
|
||||||
{t('Move')}
|
{t('Move')}
|
||||||
</Flex>
|
</Flex>
|
||||||
),
|
),
|
||||||
|
@@ -42,7 +42,7 @@ const Tools = () => {
|
|||||||
...(feConfigs?.docUrl
|
...(feConfigs?.docUrl
|
||||||
? [
|
? [
|
||||||
{
|
{
|
||||||
icon: 'courseLight',
|
icon: 'common/courseLight',
|
||||||
label: '使用文档',
|
label: '使用文档',
|
||||||
link: `${feConfigs.docUrl}/docs/intro`
|
link: `${feConfigs.docUrl}/docs/intro`
|
||||||
}
|
}
|
||||||
|
@@ -8,11 +8,11 @@ export enum LangEnum {
|
|||||||
export const langMap = {
|
export const langMap = {
|
||||||
[LangEnum.en]: {
|
[LangEnum.en]: {
|
||||||
label: 'English',
|
label: 'English',
|
||||||
icon: 'language_en'
|
icon: 'common/language/en'
|
||||||
},
|
},
|
||||||
[LangEnum.zh]: {
|
[LangEnum.zh]: {
|
||||||
label: '简体中文',
|
label: '简体中文',
|
||||||
icon: 'language_zh'
|
icon: 'common/language/zh'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|