chore: knip fix (#34481)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
Stephen Zhou
2026-04-02 23:03:42 +08:00
committed by GitHub
parent 985b41c40b
commit 36e840cd87
403 changed files with 475 additions and 3679 deletions

View File

@@ -89,6 +89,12 @@ if $web_modified; then
echo "No staged TypeScript changes detected, skipping type-check:tsgo"
fi
echo "Running knip"
if ! pnpm run knip; then
echo "Knip check failed. Please run 'pnpm run knip' to fix the errors."
exit 1
fi
echo "Running unit tests check"
modified_files=$(git diff --cached --name-only -- utils | grep -v '\.spec\.ts$' || true)

View File

@@ -35,7 +35,7 @@ const TagManagementModal = dynamic(() => import('@/app/components/base/tag-manag
ssr: false,
})
export type IAppDetailLayoutProps = {
type IAppDetailLayoutProps = {
children: React.ReactNode
appId: string
}

View File

@@ -25,7 +25,7 @@ import { useAppWorkflow } from '@/service/use-workflow'
import { AppModeEnum } from '@/types/app'
import { asyncRunSafe } from '@/utils'
export type ICardViewProps = {
type ICardViewProps = {
appId: string
isInPanel?: boolean
className?: string

View File

@@ -27,7 +27,7 @@ const TIME_PERIOD_MAPPING: { value: number, name: TimePeriodName }[] = [
const queryDateFormat = 'YYYY-MM-DD HH:mm'
export type IChartViewProps = {
type IChartViewProps = {
appId: string
headerRight: React.ReactNode
}

View File

@@ -1,9 +0,0 @@
.logTable td {
padding: 7px 8px;
box-sizing: border-box;
max-width: 200px;
}
.pagination li {
list-style: none;
}

View File

@@ -26,7 +26,7 @@ import { usePathname } from '@/next/navigation'
import { useDatasetDetail, useDatasetRelatedApps } from '@/service/knowledge/use-dataset'
import { cn } from '@/utils/classnames'
export type IAppDetailLayoutProps = {
type IAppDetailLayoutProps = {
children: React.ReactNode
datasetId: string
}

View File

@@ -13,10 +13,6 @@ import { useProviderContext } from '@/context/provider-context'
import { useRouter } from '@/next/navigation'
import { useLogout, useUserProfile } from '@/service/use-common'
export type IAppSelector = {
isMobile: boolean
}
export default function AppSelector() {
const router = useRouter()
const { t } = useTranslation()

View File

@@ -5,7 +5,7 @@ import AppInfoModals from './app-info-modals'
import AppInfoTrigger from './app-info-trigger'
import { useAppInfoActions } from './use-app-info-actions'
export type IAppInfoProps = {
type IAppInfoProps = {
expand: boolean
onlyShowDetail?: boolean
openState?: boolean

View File

@@ -7,7 +7,7 @@ import {
import Tooltip from '@/app/components/base/tooltip'
import AppIcon from '../base/app-icon'
export type IAppBasicProps = {
type IAppBasicProps = {
iconType?: 'app' | 'api' | 'dataset' | 'webapp' | 'notion'
icon?: string
icon_background?: string | null

View File

@@ -17,7 +17,7 @@ import DatasetSidebarDropdown from './dataset-sidebar-dropdown'
import NavLink from './nav-link'
import ToggleButton from './toggle-button'
export type IAppDetailNavProps = {
type IAppDetailNavProps = {
iconType?: 'app' | 'dataset'
navigation: Array<{
name: string

View File

@@ -39,7 +39,5 @@ export enum AnnotationEnableStatus {
}
export enum JobStatus {
waiting = 'waiting',
processing = 'processing',
completed = 'completed',
}

View File

@@ -2,7 +2,7 @@ import type { HTMLProps, PropsWithChildren } from 'react'
import { RiArrowRightUpLine } from '@remixicon/react'
import { cn } from '@/utils/classnames'
export type SuggestedActionProps = PropsWithChildren<HTMLProps<HTMLAnchorElement> & {
type SuggestedActionProps = PropsWithChildren<HTMLProps<HTMLAnchorElement> & {
icon?: React.ReactNode
link?: string
disabled?: boolean

View File

@@ -3,7 +3,7 @@ import type { FC, ReactNode } from 'react'
import * as React from 'react'
import { cn } from '@/utils/classnames'
export type IFeaturePanelProps = {
type IFeaturePanelProps = {
className?: string
headerIcon?: ReactNode
title: ReactNode

View File

@@ -2,7 +2,7 @@
import type { FC } from 'react'
import * as React from 'react'
export type IGroupNameProps = {
type IGroupNameProps = {
name: string
}

View File

@@ -9,7 +9,7 @@ import * as React from 'react'
import { useTranslation } from 'react-i18next'
import { cn } from '@/utils/classnames'
export type IOperationBtnProps = {
type IOperationBtnProps = {
className?: string
type: 'add' | 'edit'
actionName?: string

View File

@@ -4,7 +4,7 @@ import * as React from 'react'
import s from './style.module.css'
export type IVarHighlightProps = {
type IVarHighlightProps = {
name: string
className?: string
}

View File

@@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
import WarningMask from '.'
export type IFormattingChangedProps = {
type IFormattingChangedProps = {
onConfirm: () => void
}

View File

@@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
import WarningMask from '.'
export type IFormattingChangedProps = {
type IFormattingChangedProps = {
onConfirm: () => void
onCancel: () => void
}

View File

@@ -3,7 +3,7 @@ import type { FC } from 'react'
import * as React from 'react'
import { useTranslation } from 'react-i18next'
export type IHasNotSetAPIProps = {
type IHasNotSetAPIProps = {
onSetting: () => void
}

View File

@@ -4,7 +4,7 @@ import * as React from 'react'
import s from './style.module.css'
export type IWarningMaskProps = {
type IWarningMaskProps = {
title: string
description: string
footer: React.ReactNode

View File

@@ -6,7 +6,7 @@ import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
import VarHighlight from '../../base/var-highlight'
export type IConfirmAddVarProps = {
type IConfirmAddVarProps = {
varNameArr: string[]
onConfirm: () => void
onCancel: () => void

View File

@@ -33,7 +33,7 @@ import { getNewVar, getVars } from '@/utils/var'
import ConfirmAddVar from './confirm-add-var'
import PromptEditorHeightResizeWrap from './prompt-editor-height-resize-wrap'
export type ISimplePromptInput = {
type ISimplePromptInput = {
mode: AppModeEnum
promptTemplate: string
promptVariables: PromptVariable[]

View File

@@ -1,10 +1,3 @@
export const jsonObjectWrap = {
type: 'object',
properties: {},
required: [],
additionalProperties: true,
}
export const jsonConfigPlaceHolder = JSON.stringify(
{
type: 'object',

View File

@@ -52,7 +52,7 @@ const normalizeSelectDefaultValue = (inputVar: InputVar) => {
return inputVar
}
export type IConfigModalProps = {
type IConfigModalProps = {
isCreate?: boolean
payload?: InputVar
isShow: boolean

View File

@@ -8,7 +8,7 @@ import { ReactSortable } from 'react-sortablejs'
import { cn } from '@/utils/classnames'
export type Options = string[]
export type IConfigSelectProps = {
type IConfigSelectProps = {
options: Options
onChange: (options: Options) => void
}

View File

@@ -4,7 +4,7 @@ import * as React from 'react'
import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
export type IModalFootProps = {
type IModalFootProps = {
onConfirm: () => void
onCancel: () => void
}

View File

@@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next'
import InputVarTypeIcon from '@/app/components/workflow/nodes/_base/components/input-var-type-icon'
import { cn } from '@/utils/classnames'
export type ISelectTypeItemProps = {
type ISelectTypeItemProps = {
type: InputVarType
selected: boolean
onClick: () => void

View File

@@ -1,152 +0,0 @@
'use client'
import type { FC } from 'react'
import type { ExternalDataTool } from '@/models/common'
import copy from 'copy-to-clipboard'
import { noop } from 'es-toolkit/function'
import * as React from 'react'
import { useTranslation } from 'react-i18next'
import { useContext } from 'use-context-selector'
import s from '@/app/components/app/configuration/config-prompt/style.module.css'
import {
Copy,
CopyCheck,
} from '@/app/components/base/icons/src/vender/line/files'
import PromptEditor from '@/app/components/base/prompt-editor'
import { toast } from '@/app/components/base/ui/toast'
import ConfigContext from '@/context/debug-configuration'
import { useModalContext } from '@/context/modal-context'
import { cn } from '@/utils/classnames'
type Props = {
className?: string
type: 'first-prompt' | 'next-iteration'
value: string
onChange: (value: string) => void
}
const Editor: FC<Props> = ({
className,
type,
value,
onChange,
}) => {
const { t } = useTranslation()
const [isCopied, setIsCopied] = React.useState(false)
const {
modelConfig,
hasSetBlockStatus,
dataSets,
showSelectDataSet,
externalDataToolsConfig,
setExternalDataToolsConfig,
} = useContext(ConfigContext)
const promptVariables = modelConfig.configs.prompt_variables
const { setShowExternalDataToolModal } = useModalContext()
const isFirstPrompt = type === 'first-prompt'
const editorHeight = isFirstPrompt ? 'h-[336px]' : 'h-[52px]'
const handleOpenExternalDataToolModal = () => {
setShowExternalDataToolModal({
payload: {},
onSaveCallback: (newExternalDataTool?: ExternalDataTool) => {
if (!newExternalDataTool)
return
setExternalDataToolsConfig([...externalDataToolsConfig, newExternalDataTool])
},
onValidateBeforeSaveCallback: (newExternalDataTool: ExternalDataTool) => {
for (let i = 0; i < promptVariables.length; i++) {
if (promptVariables[i].key === newExternalDataTool.variable) {
toast.error(t('varKeyError.keyAlreadyExists', { ns: 'appDebug', key: promptVariables[i].key }))
return false
}
}
for (let i = 0; i < externalDataToolsConfig.length; i++) {
if (externalDataToolsConfig[i].variable === newExternalDataTool.variable) {
toast.error(t('varKeyError.keyAlreadyExists', { ns: 'appDebug', key: externalDataToolsConfig[i].variable }))
return false
}
}
return true
},
})
}
return (
<div className={cn(className, s.gradientBorder, 'relative')}>
<div className="rounded-xl bg-white">
<div className={cn(s.boxHeader, 'flex h-11 items-center justify-between rounded-tl-xl rounded-tr-xl bg-white pb-1 pl-4 pr-3 pt-2 hover:shadow-xs')}>
<div className="text-sm font-semibold uppercase text-indigo-800">{t(`agent.${isFirstPrompt ? 'firstPrompt' : 'nextIteration'}`, { ns: 'appDebug' })}</div>
<div className={cn(s.optionWrap, 'items-center space-x-1')}>
{!isCopied
? (
<Copy
className="h-6 w-6 cursor-pointer p-1 text-gray-500"
onClick={() => {
copy(value)
setIsCopied(true)
}}
/>
)
: (
<CopyCheck className="h-6 w-6 p-1 text-gray-500" />
)}
</div>
</div>
<div className={cn(editorHeight, 'min-h-[102px] overflow-y-auto px-4 text-sm text-gray-700')}>
<PromptEditor
className={editorHeight}
value={value}
contextBlock={{
show: true,
selectable: !hasSetBlockStatus.context,
datasets: dataSets.map(item => ({
id: item.id,
name: item.name,
type: item.data_source_type,
})),
onAddContext: showSelectDataSet,
}}
variableBlock={{
show: true,
variables: modelConfig.configs.prompt_variables.filter(item => item.key && item.key.trim() && item.name && item.name.trim()).map(item => ({
name: item.name,
value: item.key,
})),
}}
externalToolBlock={{
show: true,
externalTools: externalDataToolsConfig.map(item => ({
name: item.label!,
variableName: item.variable!,
icon: item.icon,
icon_background: item.icon_background,
})),
onAddExternalTool: handleOpenExternalDataToolModal,
}}
historyBlock={{
show: false,
selectable: false,
history: {
user: '',
assistant: '',
},
onEditRole: noop,
}}
queryBlock={{
show: false,
selectable: false,
}}
onChange={onChange}
onBlur={noop}
/>
</div>
<div className="flex pb-2 pl-4">
<div className="h-[18px] rounded-md bg-gray-100 px-1 text-xs leading-[18px] text-gray-500">{value.length}</div>
</div>
</div>
</div>
)
}
export default React.memo(Editor)

View File

@@ -7,7 +7,7 @@ import * as React from 'react'
import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
export type IAutomaticBtnProps = {
type IAutomaticBtnProps = {
onClick: () => void
}
const AutomaticBtn: FC<IAutomaticBtnProps> = ({

View File

@@ -43,7 +43,7 @@ import useGenData from './use-gen-data'
const i18nPrefix = 'generate'
export type IGetAutomaticResProps = {
type IGetAutomaticResProps = {
mode: AppModeEnum
isShow: boolean
onClose: () => void

View File

@@ -31,7 +31,7 @@ import { GeneratorType } from '../automatic/types'
import useGenData from '../automatic/use-gen-data'
const i18nPrefix = 'generate'
export type IGetCodeGeneratorResProps = {
type IGetCodeGeneratorResProps = {
flowId: string
nodeId: string
currentCode?: string

View File

@@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
import s from './style.module.css'
export type IContrlBtnGroupProps = {
type IContrlBtnGroupProps = {
onSave: () => void
onReset: () => void
}

View File

@@ -17,7 +17,7 @@ import Link from '@/next/link'
import { useInfiniteDatasets } from '@/service/knowledge/use-dataset'
import { cn } from '@/utils/classnames'
export type ISelectDataSetProps = {
type ISelectDataSetProps = {
isShow: boolean
onClose: () => void
selectedIds: string[]

View File

@@ -18,5 +18,3 @@ export const DebugWithMultipleModelContext = createContext<DebugWithMultipleMode
})
export const useDebugWithMultipleModelContext = () => useContext(DebugWithMultipleModelContext)
export default DebugWithMultipleModelContext

View File

@@ -1,14 +0,0 @@
.advancedPromptMode {
position: relative;
}
.advancedPromptMode::before {
content: '';
position: absolute;
bottom: 0;
left: -1px;
width: 100%;
height: 3px;
background-color: rgba(68, 76, 231, 0.18);
transform: skewX(-30deg);
}

View File

@@ -1,204 +0,0 @@
import type { ExternalDataTool } from '@/models/common'
import {
RiAddLine,
RiArrowDownSLine,
RiDeleteBinLine,
} from '@remixicon/react'
import copy from 'copy-to-clipboard'
import { useState } from 'react'
import { useTranslation } from 'react-i18next'
import { useContext } from 'use-context-selector'
import AppIcon from '@/app/components/base/app-icon'
import {
Settings01,
} from '@/app/components/base/icons/src/vender/line/general'
import { Tool03 } from '@/app/components/base/icons/src/vender/solid/general'
import Switch from '@/app/components/base/switch'
import { toast } from '@/app/components/base/ui/toast'
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from '@/app/components/base/ui/tooltip'
import ConfigContext from '@/context/debug-configuration'
import { useModalContext } from '@/context/modal-context'
const Tools = () => {
const { t } = useTranslation()
const { setShowExternalDataToolModal } = useModalContext()
const {
externalDataToolsConfig,
setExternalDataToolsConfig,
modelConfig,
} = useContext(ConfigContext)
const [expanded, setExpanded] = useState(true)
const [copied, setCopied] = useState(false)
const handleSaveExternalDataToolModal = (externalDataTool: ExternalDataTool, index: number) => {
if (index > -1) {
setExternalDataToolsConfig([
...externalDataToolsConfig.slice(0, index),
externalDataTool,
...externalDataToolsConfig.slice(index + 1),
])
}
else {
setExternalDataToolsConfig([...externalDataToolsConfig, externalDataTool])
}
}
const handleValidateBeforeSaveExternalDataToolModal = (newExternalDataTool: ExternalDataTool, index: number) => {
const promptVariables = modelConfig?.configs?.prompt_variables || []
for (let i = 0; i < promptVariables.length; i++) {
if (promptVariables[i].key === newExternalDataTool.variable) {
toast.error(t('varKeyError.keyAlreadyExists', { ns: 'appDebug', key: promptVariables[i].key }))
return false
}
}
let existedExternalDataTools = []
if (index > -1) {
existedExternalDataTools = [
...externalDataToolsConfig.slice(0, index),
...externalDataToolsConfig.slice(index + 1),
]
}
else {
existedExternalDataTools = [...externalDataToolsConfig]
}
for (let i = 0; i < existedExternalDataTools.length; i++) {
if (existedExternalDataTools[i].variable === newExternalDataTool.variable) {
toast.error(t('varKeyError.keyAlreadyExists', { ns: 'appDebug', key: existedExternalDataTools[i].variable }))
return false
}
}
return true
}
const handleOpenExternalDataToolModal = (payload: ExternalDataTool, index: number) => {
setShowExternalDataToolModal({
payload,
onSaveCallback: (externalDataTool?: ExternalDataTool) => {
if (!externalDataTool)
return
handleSaveExternalDataToolModal(externalDataTool, index)
},
onValidateBeforeSaveCallback: (newExternalDataTool: ExternalDataTool) => handleValidateBeforeSaveExternalDataToolModal(newExternalDataTool, index),
})
}
return (
<div className="mt-3 rounded-xl bg-gray-50 px-3">
<div className="flex h-12 items-center">
<div className="flex grow items-center">
<div
className={`
group mr-1 flex h-6 w-6 items-center justify-center rounded-md
${externalDataToolsConfig.length && 'hover:bg-white hover:shadow-xs'}
`}
onClick={() => setExpanded(v => !v)}
>
{
externalDataToolsConfig.length
? <Tool03 className="h-4 w-4 text-[#444CE7] group-hover:hidden" />
: <Tool03 className="h-4 w-4 text-[#444CE7]" />
}
{
!!externalDataToolsConfig.length && (
<RiArrowDownSLine className={`hidden h-4 w-4 cursor-pointer text-primary-600 group-hover:block ${expanded ? 'rotate-180' : 'rotate-0'}`} />
)
}
</div>
<div className="mr-1 text-sm font-semibold text-gray-800">
{t('feature.tools.title', { ns: 'appDebug' })}
</div>
<Tooltip>
<TooltipTrigger render={<span className="i-ri-question-line ml-1 h-4 w-4 shrink-0 text-text-quaternary" />} />
<TooltipContent>
<div className="max-w-[160px]">
{t('feature.tools.tips', { ns: 'appDebug' })}
</div>
</TooltipContent>
</Tooltip>
</div>
{
!expanded && !!externalDataToolsConfig.length && (
<>
<div className="mr-3 text-xs text-gray-500">{t('feature.tools.toolsInUse', { ns: 'appDebug', count: externalDataToolsConfig.length })}</div>
<div className="mr-1 h-3.5 w-px bg-gray-200" />
</>
)
}
<div
className="flex h-7 cursor-pointer items-center px-3 text-xs font-medium text-gray-700"
onClick={() => handleOpenExternalDataToolModal({}, -1)}
>
<RiAddLine className="mr-[5px] h-3.5 w-3.5" />
{t('operation.add', { ns: 'common' })}
</div>
</div>
{
expanded && !!externalDataToolsConfig.length && (
<div className="pb-3">
{
externalDataToolsConfig.map((item, index: number) => (
<div
key={`${index}-${item.type}-${item.label}-${item.variable}`}
className="group mb-1 flex items-center rounded-lg border-[0.5px] border-gray-200 bg-white px-2.5 py-2 shadow-xs last-of-type:mb-0"
>
<div className="flex grow items-center">
<AppIcon
size="large"
className="mr-2 h-6! w-6! rounded-md border-[0.5px] border-black/5"
icon={item.icon}
background={item.icon_background}
/>
<div className="mr-2 text-[13px] font-medium text-gray-800">{item.label}</div>
<Tooltip>
<TooltipTrigger
render={(
<div
className="text-xs text-gray-500"
onClick={() => {
copy(item.variable || '')
setCopied(true)
}}
>
{item.variable}
</div>
)}
/>
<TooltipContent>
{copied ? t('copied', { ns: 'appApi' }) : `${item.variable}, ${t('copy', { ns: 'appApi' })}`}
</TooltipContent>
</Tooltip>
</div>
<div
className="mr-1 hidden h-6 w-6 cursor-pointer items-center justify-center rounded-md hover:bg-black/5 group-hover:flex"
onClick={() => handleOpenExternalDataToolModal(item, index)}
>
<Settings01 className="h-4 w-4 text-gray-500" />
</div>
<div
className="group/action hidden h-6 w-6 cursor-pointer items-center justify-center rounded-md hover:bg-[#FEE4E2] group-hover:flex"
onClick={() => setExternalDataToolsConfig([...externalDataToolsConfig.slice(0, index), ...externalDataToolsConfig.slice(index + 1)])}
>
<RiDeleteBinLine className="h-4 w-4 text-gray-500 group-hover/action:text-[#D92D20]" />
</div>
<div className="ml-2 mr-3 hidden h-3.5 w-px bg-gray-200 group-hover:block" />
<Switch
size="lg"
value={item.enabled ?? false}
onChange={(enabled: boolean) => handleSaveExternalDataToolModal({ ...item, enabled }, index)}
/>
</div>
))
}
</div>
)
}
</div>
)
}
export default Tools

View File

@@ -12,7 +12,7 @@ import { useGlobalPublicStore } from '@/context/global-public-context'
import { cn } from '@/utils/classnames'
import { AppTypeIcon, AppTypeLabel } from '../../type-selector'
export type AppCardProps = {
type AppCardProps = {
app: App
canCreate: boolean
onCreate: () => void

View File

@@ -13,7 +13,7 @@ import { toast } from '@/app/components/base/ui/toast'
import { cn } from '@/utils/classnames'
import { formatFileSize } from '@/utils/format'
export type Props = {
type Props = {
file: File | undefined
updateFile: (file?: File) => void
className?: string

View File

@@ -17,7 +17,7 @@ import EmptyElement from './empty-element'
import Filter, { TIME_PERIOD_MAPPING } from './filter'
import List from './list'
export type ILogsProps = {
type ILogsProps = {
appDetail: App
}

View File

@@ -72,17 +72,17 @@ const defaultModalContext: ModalContextState = {
setShowTriggerEventsLimitModal: noop,
}
export type MockOverrides = {
type MockOverrides = {
providerContext?: Partial<typeof defaultProviderContext>
modalContext?: Partial<typeof defaultModalContext>
}
export type APIKeyInfoPanelRenderOptions = {
type APIKeyInfoPanelRenderOptions = {
mockOverrides?: MockOverrides
} & Omit<RenderOptions, 'wrapper'>
// Setup function to configure mocks
export function setupMocks(overrides: MockOverrides = {}) {
function setupMocks(overrides: MockOverrides = {}) {
mockUseProviderContext.mockReturnValue({
...defaultProviderContext,
...overrides.providerContext,
@@ -95,7 +95,7 @@ export function setupMocks(overrides: MockOverrides = {}) {
}
// Custom render function
export function renderAPIKeyInfoPanel(options: APIKeyInfoPanelRenderOptions = {}) {
function renderAPIKeyInfoPanel(options: APIKeyInfoPanelRenderOptions = {}) {
const { mockOverrides, ...renderOptions } = options
setupMocks(mockOverrides)
@@ -210,4 +210,4 @@ export function clearAllMocks() {
}
// Export mock functions for external access
export { defaultModalContext, mockUseModalContext, mockUseProviderContext }
export { defaultModalContext, mockUseModalContext }

View File

@@ -102,12 +102,12 @@ export type PeriodParamsWithTimeRange = {
query?: TimeRange
}
export type IBizChartProps = {
type IBizChartProps = {
period: PeriodParams
id: string
}
export type IChartProps = {
type IChartProps = {
className?: string
basicInfo: { title: string, explanation: string, timePeriod: string }
valueKey?: string
@@ -508,5 +508,3 @@ export const AvgUserInteractions: FC<IBizChartProps> = ({ id, period }) => {
/>
)
}
export default Chart

View File

@@ -29,7 +29,7 @@ import Link from '@/next/link'
import { AppModeEnum } from '@/types/app'
import { cn } from '@/utils/classnames'
export type ISettingsModalProps = {
type ISettingsModalProps = {
isChat: boolean
appInfo: AppDetailResponse & Partial<AppSSO>
isShow: boolean

View File

@@ -22,7 +22,7 @@ import {
import { useAllTriggerPlugins } from '@/service/use-triggers'
import { canFindTool } from '@/utils'
export type ITriggerCardProps = {
type ITriggerCardProps = {
appInfo: AppDetailResponse & Partial<AppSSO>
onToggleResult?: (err: Error | null, message?: I18nKeysByPrefix<'common', 'actionMsg.'>) => void
}

View File

@@ -38,7 +38,7 @@ import ResultTab from './result-tab'
const MAX_DEPTH = 3
export type IGenerationItemProps = {
type IGenerationItemProps = {
isWorkflow?: boolean
workflowProcessData?: WorkflowProcess
className?: string
@@ -67,12 +67,6 @@ export type IGenerationItemProps = {
inSidePanel?: boolean
}
export const copyIcon = (
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.3335 2.33341C9.87598 2.33341 10.1472 2.33341 10.3698 2.39304C10.9737 2.55486 11.4454 3.02657 11.6072 3.63048C11.6668 3.85302 11.6668 4.12426 11.6668 4.66675V10.0334C11.6668 11.0135 11.6668 11.5036 11.4761 11.8779C11.3083 12.2072 11.0406 12.4749 10.7113 12.6427C10.337 12.8334 9.84692 12.8334 8.86683 12.8334H5.1335C4.1534 12.8334 3.66336 12.8334 3.28901 12.6427C2.95973 12.4749 2.69201 12.2072 2.52423 11.8779C2.3335 11.5036 2.3335 11.0135 2.3335 10.0334V4.66675C2.3335 4.12426 2.3335 3.85302 2.39313 3.63048C2.55494 3.02657 3.02665 2.55486 3.63056 2.39304C3.8531 2.33341 4.12435 2.33341 4.66683 2.33341M5.60016 3.50008H8.40016C8.72686 3.50008 8.89021 3.50008 9.01499 3.4365C9.12475 3.38058 9.21399 3.29134 9.26992 3.18158C9.3335 3.05679 9.3335 2.89345 9.3335 2.56675V2.10008C9.3335 1.77338 9.3335 1.61004 9.26992 1.48525C9.21399 1.37549 9.12475 1.28625 9.01499 1.23033C8.89021 1.16675 8.72686 1.16675 8.40016 1.16675H5.60016C5.27347 1.16675 5.11012 1.16675 4.98534 1.23033C4.87557 1.28625 4.78634 1.37549 4.73041 1.48525C4.66683 1.61004 4.66683 1.77338 4.66683 2.10008V2.56675C4.66683 2.89345 4.66683 3.05679 4.73041 3.18158C4.78634 3.29134 4.87557 3.38058 4.98534 3.4365C5.11012 3.50008 5.27347 3.50008 5.60016 3.50008Z" stroke="#344054" strokeWidth="1.25" strokeLinecap="round" strokeLinejoin="round" />
</svg>
)
const GenerationItem: FC<IGenerationItemProps> = ({
isWorkflow,
workflowProcessData,

View File

@@ -8,7 +8,7 @@ import * as React from 'react'
import { useTranslation } from 'react-i18next'
import Button from '@/app/components/base/button'
export type INoDataProps = {
type INoDataProps = {
onStartCreateContent: () => void
}

View File

@@ -11,7 +11,7 @@ import {
import { AppModeEnum } from '@/types/app'
import { cn } from '@/utils/classnames'
export type AppSelectorProps = {
type AppSelectorProps = {
value: Array<AppModeEnum>
onChange: (value: AppSelectorProps['value']) => void
}

View File

@@ -62,7 +62,7 @@ const AccessControl = dynamic(() => import('@/app/components/app/app-access-cont
ssr: false,
})
export type AppCardProps = {
type AppCardProps = {
app: App
onRefresh?: () => void
}

View File

@@ -25,7 +25,7 @@ const CreateFromDSLModal = dynamic(() => import('@/app/components/app/create-fro
ssr: false,
})
export type CreateAppCardProps = {
type CreateAppCardProps = {
className?: string
isLoading?: boolean
onSuccess?: () => void

View File

@@ -15,7 +15,7 @@ import { cn } from '@/utils/classnames'
import ResultPanel from './result'
import TracingPanel from './tracing'
export type AgentLogDetailProps = {
type AgentLogDetailProps = {
activeTab?: 'DETAIL' | 'TRACING'
conversationID: string
log: IChatItem

View File

@@ -1,2 +1,2 @@
export { default } from './lazy-amplitude-provider'
export { resetUser, setUserId, setUserProperties, trackEvent } from './utils'
export { setUserId, setUserProperties, trackEvent } from './utils'

View File

@@ -8,7 +8,7 @@ import { cn } from '@/utils/classnames'
init({ data })
export type AnswerIconProps = {
type AnswerIconProps = {
iconType?: AppIconType | null
icon?: string | null
background?: string | null

View File

@@ -12,7 +12,7 @@ import { cn } from '@/utils/classnames'
init({ data })
export type AppIconProps = {
type AppIconProps = {
size?: 'xs' | 'tiny' | 'small' | 'medium' | 'large' | 'xl' | 'xxl'
rounded?: boolean
iconType?: AppIconType | null

View File

@@ -24,11 +24,11 @@ export type AvatarProps = {
onLoadingStatusChange?: (status: ImageLoadingStatus) => void
}
export type AvatarRootProps = React.ComponentPropsWithRef<typeof BaseAvatar.Root> & {
type AvatarRootProps = React.ComponentPropsWithRef<typeof BaseAvatar.Root> & {
size?: AvatarSize
}
export function AvatarRoot({
function AvatarRoot({
size = 'md',
className,
...props
@@ -45,9 +45,9 @@ export function AvatarRoot({
)
}
export type AvatarImageProps = React.ComponentPropsWithRef<typeof BaseAvatar.Image>
type AvatarImageProps = React.ComponentPropsWithRef<typeof BaseAvatar.Image>
export function AvatarImage({
function AvatarImage({
className,
...props
}: AvatarImageProps) {
@@ -59,11 +59,11 @@ export function AvatarImage({
)
}
export type AvatarFallbackProps = React.ComponentPropsWithRef<typeof BaseAvatar.Fallback> & {
type AvatarFallbackProps = React.ComponentPropsWithRef<typeof BaseAvatar.Fallback> & {
size?: AvatarSize
}
export function AvatarFallback({
function AvatarFallback({
size = 'md',
className,
...props

View File

@@ -29,7 +29,7 @@ export const getInputKeys = (value: string) => {
return res
}
export type IBlockInputProps = {
type IBlockInputProps = {
value: string
className?: string // wrapper class
highLightClassName?: string // class for the highlighted text default is text-blue-500

View File

@@ -97,7 +97,7 @@ const ChatWithHistory: FC<ChatWithHistoryProps> = ({
)
}
export type ChatWithHistoryWrapProps = {
type ChatWithHistoryWrapProps = {
installedAppInfo?: InstalledApp
className?: string
}

View File

@@ -7,7 +7,7 @@ import Button from '@/app/components/base/button'
import Input from '@/app/components/base/input'
import Modal from '@/app/components/base/modal'
export type IRenameModalProps = {
type IRenameModalProps = {
isShow: boolean
saveLoading: boolean
name: string

View File

@@ -26,5 +26,3 @@ export const ChatContext = createContext<ChatContextValue>({
})
export const useChatContext = () => useContext(ChatContext)
export default ChatContext

View File

@@ -4,7 +4,7 @@ import * as React from 'react'
import { cn } from '@/utils/classnames'
import s from './style.module.css'
export type ILoadingAnimProps = {
type ILoadingAnimProps = {
type: 'text' | 'avatar'
}

View File

@@ -29,8 +29,6 @@ export type SubmitAnnotationFunc = (
content: string,
) => Promise<any>
export type DisplayScene = 'web' | 'console'
export type ToolInfoInThought = {
name: string
label: string
@@ -151,15 +149,6 @@ export type MessageReplace = {
conversation_id: string
}
export type AnnotationReply = {
id: string
task_id: string
answer: string
conversation_id: string
annotation_id: string
annotation_author_name: string
}
export type InputForm = {
type: InputVarType
label: string

View File

@@ -16,7 +16,7 @@ import {
} from '../context'
import { CssTransform } from '../theme/utils'
export type IHeaderProps = {
type IHeaderProps = {
isMobile?: boolean
allowResetChat?: boolean
customerIcon?: React.ReactNode

View File

@@ -3,42 +3,16 @@ import type { FileEntity } from '@/app/components/base/file-uploader/types'
import type { WorkflowRunningStatus } from '@/app/components/workflow/types'
import type {
ModelConfig,
VisionSettings,
} from '@/types/app'
import type { HumanInputFilledFormData, HumanInputFormData, NodeTracing } from '@/types/workflow'
export type {
Inputs,
PromptVariable,
} from '@/models/debug'
export type { VisionFile } from '@/types/app'
export { TransferMethod } from '@/types/app'
export type UserInputForm = {
default: string
label: string
required: boolean
variable: string
}
export type UserInputFormTextInput = {
'text-input': UserInputForm & {
max_length: number
}
}
export type UserInputFormSelect = {
select: UserInputForm & {
options: string[]
}
}
export type UserInputFormParagraph = {
paragraph: UserInputForm
}
export type VisionConfig = VisionSettings
export type EnableType = {
enabled: boolean
}

View File

@@ -9,13 +9,13 @@ import SearchMenu from '@/assets/search-menu.svg'
import { cn } from '@/utils/classnames'
import Button from '../button'
export type CheckboxListOption = {
type CheckboxListOption = {
label: string
value: string
disabled?: boolean
}
export type CheckboxListProps = {
type CheckboxListProps = {
title?: string
label?: string
description?: string

View File

@@ -17,5 +17,3 @@ export const DaysOfWeek = () => {
</div>
)
}
export default React.memo(DaysOfWeek)

View File

@@ -126,7 +126,7 @@ export const convertTimezoneToOffsetStr = (timezone?: string) => {
export const isDayjsObject = (value: unknown): value is Dayjs => dayjs.isDayjs(value)
export type ToDayjsOptions = {
type ToDayjsOptions = {
timezone?: string
format?: string
formats?: string[]

View File

@@ -21,7 +21,7 @@ const dividerVariants = cva('', {
},
})
export type DividerProps = {
type DividerProps = {
className?: string
style?: CSSProperties
} & VariantProps<typeof dividerVariants>

View File

@@ -1,7 +1,7 @@
export { default as FileTypeIcon } from './file-type-icon'
export { default as FileUploaderInAttachmentWrapper } from './file-uploader-in-attachment'
export { default as FileItemInAttachment } from './file-uploader-in-attachment/file-item'
export { default as FileUploaderInChatInput } from './file-uploader-in-chat-input'
export { default as FileItem } from './file-uploader-in-chat-input/file-item'
export { FileListInChatInput } from './file-uploader-in-chat-input/file-list'
export { FileList } from './file-uploader-in-chat-input/file-list'

View File

@@ -30,5 +30,3 @@ export const UserSchema = z.object({
preferredContactMethod: ContactMethod,
}),
})
export type User = z.infer<typeof UserSchema>

View File

@@ -14,9 +14,11 @@ import UploadMethodField from './components/field/upload-method'
import VariableOrConstantInputField from './components/field/variable-selector'
import Actions from './components/form/actions'
export const { fieldContext, useFieldContext, formContext, useFormContext }
const { fieldContext, useFieldContext, formContext, useFormContext }
= createFormHookContexts()
export { formContext, useFieldContext, useFormContext }
export const { useAppForm, withForm } = createFormHook({
fieldComponents: {
TextField,

View File

@@ -82,8 +82,6 @@ export type FormSchema = {
}
}
export type FormValues = Record<string, any>
export type GetValuesOptions = {
needTransformWhenSecretFieldIsPristine?: boolean
needCheckValidatedValues?: boolean

View File

@@ -9,16 +9,16 @@ export enum GaType {
webapp = 'webapp',
}
export const GA_MEASUREMENT_ID_ADMIN = 'G-DM9497FN4V'
export const GA_MEASUREMENT_ID_WEBAPP = 'G-2MFWXK7WYT'
export const COOKIEYES_SCRIPT_SRC = 'https://cdn-cookieyes.com/client_data/2a645945fcae53f8e025a2b1/script.js'
const GA_MEASUREMENT_ID_ADMIN = 'G-DM9497FN4V'
const GA_MEASUREMENT_ID_WEBAPP = 'G-2MFWXK7WYT'
const COOKIEYES_SCRIPT_SRC = 'https://cdn-cookieyes.com/client_data/2a645945fcae53f8e025a2b1/script.js'
const gaIdMaps = {
[GaType.admin]: GA_MEASUREMENT_ID_ADMIN,
[GaType.webapp]: GA_MEASUREMENT_ID_WEBAPP,
}
export type IGAProps = {
type IGAProps = {
gaType: GaType
}

View File

@@ -6,7 +6,7 @@ export type IconData = {
icon: AbstractNode
}
export type IconBaseProps = {
type IconBaseProps = {
data: IconData
className?: string
onClick?: React.MouseEventHandler<SVGElement>

View File

@@ -1,9 +0,0 @@
export { default as BaichuanTextCn } from './BaichuanTextCn'
export { default as Minimax } from './Minimax'
export { default as MinimaxText } from './MinimaxText'
export { default as Tongyi } from './Tongyi'
export { default as TongyiText } from './TongyiText'
export { default as TongyiTextCn } from './TongyiTextCn'
export { default as Wxyy } from './Wxyy'
export { default as WxyyText } from './WxyyText'
export { default as WxyyTextCn } from './WxyyTextCn'

View File

@@ -1,12 +1,5 @@
export { default as ArCube1 } from './ArCube1'
export { default as Asterisk } from './Asterisk'
export { default as AwsMarketplaceDark } from './AwsMarketplaceDark'
export { default as AwsMarketplaceLight } from './AwsMarketplaceLight'
export { default as Azure } from './Azure'
export { default as Buildings } from './Buildings'
export { default as Diamond } from './Diamond'
export { default as GoogleCloud } from './GoogleCloud'
export { default as Group2 } from './Group2'
export { default as Keyframe } from './Keyframe'
export { default as Sparkles } from './Sparkles'
export { default as SparklesSoft } from './SparklesSoft'

View File

@@ -1,16 +1,9 @@
export { default as D } from './D'
export { default as DiagonalDividingLine } from './DiagonalDividingLine'
export { default as Dify } from './Dify'
export { default as Gdpr } from './Gdpr'
export { default as Github } from './Github'
export { default as Highlight } from './Highlight'
export { default as Iso } from './Iso'
export { default as Line3 } from './Line3'
export { default as Lock } from './Lock'
export { default as MessageChatSquare } from './MessageChatSquare'
export { default as MultiPathRetrieval } from './MultiPathRetrieval'
export { default as Notion } from './Notion'
export { default as NTo1Retrieval } from './NTo1Retrieval'
export { default as Soc2 } from './Soc2'
export { default as SparklesSoft } from './SparklesSoft'
export { default as SparklesSoftAccent } from './SparklesSoftAccent'

View File

@@ -1,5 +1,5 @@
export { default as ExternalKnowledgeBase } from './ExternalKnowledgeBase'
export { default as General } from './General'
export { default as Graph } from './Graph'
export { default as ParentChild } from './ParentChild'
export { default as Qa } from './Qa'

View File

@@ -1,8 +1,6 @@
export { default as File } from './File'
export { default as OptionCardEffectBlue } from './OptionCardEffectBlue'
export { default as OptionCardEffectBlueLight } from './OptionCardEffectBlueLight'
export { default as OptionCardEffectOrange } from './OptionCardEffectOrange'
export { default as OptionCardEffectPurple } from './OptionCardEffectPurple'
export { default as OptionCardEffectTeal } from './OptionCardEffectTeal'
export { default as SelectionMod } from './SelectionMod'
export { default as Watercrawl } from './Watercrawl'

View File

@@ -1,50 +1,14 @@
export { default as Anthropic } from './Anthropic'
export { default as AnthropicDark } from './AnthropicDark'
export { default as AnthropicLight } from './AnthropicLight'
export { default as AnthropicShortLight } from './AnthropicShortLight'
export { default as AnthropicText } from './AnthropicText'
export { default as Azureai } from './Azureai'
export { default as AzureaiText } from './AzureaiText'
export { default as AzureOpenaiService } from './AzureOpenaiService'
export { default as AzureOpenaiServiceText } from './AzureOpenaiServiceText'
export { default as Baichuan } from './Baichuan'
export { default as BaichuanText } from './BaichuanText'
export { default as Chatglm } from './Chatglm'
export { default as ChatglmText } from './ChatglmText'
export { default as Cohere } from './Cohere'
export { default as CohereText } from './CohereText'
export { default as Deepseek } from './Deepseek'
export { default as Gemini } from './Gemini'
export { default as Gpt3 } from './Gpt3'
export { default as Gpt4 } from './Gpt4'
export { default as Grok } from './Grok'
export { default as Huggingface } from './Huggingface'
export { default as HuggingfaceText } from './HuggingfaceText'
export { default as HuggingfaceTextHub } from './HuggingfaceTextHub'
export { default as IflytekSpark } from './IflytekSpark'
export { default as IflytekSparkText } from './IflytekSparkText'
export { default as IflytekSparkTextCn } from './IflytekSparkTextCn'
export { default as Jina } from './Jina'
export { default as JinaText } from './JinaText'
export { default as Localai } from './Localai'
export { default as LocalaiText } from './LocalaiText'
export { default as Microsoft } from './Microsoft'
export { default as OpenaiBlack } from './OpenaiBlack'
export { default as OpenaiBlue } from './OpenaiBlue'
export { default as OpenaiGreen } from './OpenaiGreen'
export { default as OpenaiSmall } from './OpenaiSmall'
export { default as OpenaiTeal } from './OpenaiTeal'
export { default as OpenaiText } from './OpenaiText'
export { default as OpenaiTransparent } from './OpenaiTransparent'
export { default as OpenaiViolet } from './OpenaiViolet'
export { default as OpenaiYellow } from './OpenaiYellow'
export { default as Openllm } from './Openllm'
export { default as OpenllmText } from './OpenllmText'
export { default as Replicate } from './Replicate'
export { default as ReplicateText } from './ReplicateText'
export { default as Tongyi } from './Tongyi'
export { default as XorbitsInference } from './XorbitsInference'
export { default as XorbitsInferenceText } from './XorbitsInferenceText'
export { default as Zhipuai } from './Zhipuai'
export { default as ZhipuaiText } from './ZhipuaiText'
export { default as ZhipuaiTextCn } from './ZhipuaiTextCn'

View File

@@ -1 +0,0 @@
export { default as Checked } from './Checked'

View File

@@ -1,5 +1,5 @@
export { default as DefaultToolIcon } from './DefaultToolIcon'
export { default as Icon3Dots } from './Icon3Dots'
export { default as Message3Fill } from './Message3Fill'
export { default as RowStruct } from './RowStruct'
export { default as Slack } from './Slack'

View File

@@ -1,7 +0,0 @@
export { default as Google } from './Google'
export { default as PartnerDark } from './PartnerDark'
export { default as PartnerLight } from './PartnerLight'
export { default as VerifiedDark } from './VerifiedDark'
export { default as VerifiedLight } from './VerifiedLight'
export { default as WebReader } from './WebReader'
export { default as Wikipedia } from './Wikipedia'

View File

@@ -1,5 +1 @@
export { default as DataSet } from './DataSet'
export { default as Loading } from './Loading'
export { default as Search } from './Search'
export { default as ThoughtList } from './ThoughtList'
export { default as WebReader } from './WebReader'

View File

@@ -3,7 +3,7 @@ export { default as ApiAggregate } from './ApiAggregate'
export { default as ArrowShape } from './ArrowShape'
export { default as Chunk } from './Chunk'
export { default as Collapse } from './Collapse'
export { default as Divider } from './Divider'
export { default as Economic } from './Economic'
export { default as FullTextSearch } from './FullTextSearch'
export { default as GeneralChunk } from './GeneralChunk'

View File

@@ -1,4 +1,2 @@
export { default as AlertTriangle } from './AlertTriangle'
export { default as ThumbsDown } from './ThumbsDown'
export { default as ThumbsUp } from './ThumbsUp'
export { default as Warning } from './Warning'

View File

@@ -3,7 +3,5 @@ export { default as ArrowUpRight } from './ArrowUpRight'
export { default as ChevronDownDouble } from './ChevronDownDouble'
export { default as ChevronRight } from './ChevronRight'
export { default as ChevronSelectorVertical } from './ChevronSelectorVertical'
export { default as IconR } from './IconR'
export { default as RefreshCcw01 } from './RefreshCcw01'
export { default as RefreshCw05 } from './RefreshCw05'
export { default as ReverseLeft } from './ReverseLeft'

View File

@@ -1,6 +1,4 @@
export { default as AiText } from './AiText'
export { default as ChatBot } from './ChatBot'
export { default as ChatBotSlim } from './ChatBotSlim'
export { default as CuteRobot } from './CuteRobot'
export { default as MessageCheckRemove } from './MessageCheckRemove'
export { default as MessageFastPlus } from './MessageFastPlus'

View File

@@ -1,14 +1,2 @@
export { default as ArtificialBrain } from './ArtificialBrain'
export { default as BarChartSquare02 } from './BarChartSquare02'
export { default as BracketsX } from './BracketsX'
export { default as CodeBrowser } from './CodeBrowser'
export { default as Container } from './Container'
export { default as Database01 } from './Database01'
export { default as Database03 } from './Database03'
export { default as FileHeart02 } from './FileHeart02'
export { default as GitBranch01 } from './GitBranch01'
export { default as PromptEngineering } from './PromptEngineering'
export { default as PuzzlePiece01 } from './PuzzlePiece01'
export { default as TerminalSquare } from './TerminalSquare'
export { default as Variable } from './Variable'
export { default as Webhooks } from './Webhooks'

View File

@@ -1,8 +1 @@
export { default as AlignLeft } from './AlignLeft'
export { default as BezierCurve03 } from './BezierCurve03'
export { default as Collapse } from './Collapse'
export { default as Colors } from './Colors'
export { default as ImageIndentLeft } from './ImageIndentLeft'
export { default as LeftIndent02 } from './LeftIndent02'
export { default as LetterSpacing01 } from './LetterSpacing01'
export { default as TypeSquare } from './TypeSquare'

View File

@@ -1,11 +1,10 @@
export { default as Copy } from './Copy'
export { default as CopyCheck } from './CopyCheck'
export { default as File02 } from './File02'
export { default as FileArrow01 } from './FileArrow01'
export { default as FileCheck02 } from './FileCheck02'
export { default as FileDownload02 } from './FileDownload02'
export { default as FilePlus01 } from './FilePlus01'
export { default as FilePlus02 } from './FilePlus02'
export { default as FileText } from './FileText'
export { default as FileUpload } from './FileUpload'
export { default as Folder } from './Folder'

View File

@@ -1,7 +1,6 @@
export { default as Balance } from './Balance'
export { default as CoinsStacked01 } from './CoinsStacked01'
export { default as CreditsCoin } from './CreditsCoin'
export { default as GoldCoin } from './GoldCoin'
export { default as ReceiptList } from './ReceiptList'
export { default as Tag01 } from './Tag01'
export { default as Tag03 } from './Tag03'

View File

@@ -1,30 +1,19 @@
export { default as AtSign } from './AtSign'
export { default as Bookmark } from './Bookmark'
export { default as Check } from './Check'
export { default as CheckDone01 } from './CheckDone01'
export { default as ChecklistSquare } from './ChecklistSquare'
export { default as CodeAssistant } from './CodeAssistant'
export { default as DotsGrid } from './DotsGrid'
export { default as Edit02 } from './Edit02'
export { default as Edit04 } from './Edit04'
export { default as Edit05 } from './Edit05'
export { default as Hash02 } from './Hash02'
export { default as InfoCircle } from './InfoCircle'
export { default as Link03 } from './Link03'
export { default as LinkExternal02 } from './LinkExternal02'
export { default as LogIn04 } from './LogIn04'
export { default as LogOut01 } from './LogOut01'
export { default as LogOut04 } from './LogOut04'
export { default as MagicEdit } from './MagicEdit'
export { default as Menu01 } from './Menu01'
export { default as Pin01 } from './Pin01'
export { default as Pin02 } from './Pin02'
export { default as Plus02 } from './Plus02'
export { default as Refresh } from './Refresh'
export { default as SearchMenu } from './SearchMenu'
export { default as Settings01 } from './Settings01'
export { default as Settings04 } from './Settings04'
export { default as Target04 } from './Target04'
export { default as Upload03 } from './Upload03'
export { default as UploadCloud01 } from './UploadCloud01'
export { default as X } from './X'

View File

@@ -1,4 +1 @@
export { default as AlignLeft01 } from './AlignLeft01'
export { default as AlignRight01 } from './AlignRight01'
export { default as Grid01 } from './Grid01'
export { default as LayoutGrid02 } from './LayoutGrid02'

View File

@@ -1,6 +1,2 @@
export { default as Microphone01 } from './Microphone01'
export { default as PlayCircle } from './PlayCircle'
export { default as SlidersH } from './SlidersH'
export { default as Speaker } from './Speaker'
export { default as Stop } from './Stop'
export { default as StopCircle } from './StopCircle'

View File

@@ -1,10 +1,8 @@
export { default as BubbleX } from './BubbleX'
export { default as Colors } from './Colors'
export { default as DragHandle } from './DragHandle'
export { default as Env } from './Env'
export { default as GlobalVariable } from './GlobalVariable'
export { default as Icon3Dots } from './Icon3Dots'
export { default as LongArrowLeft } from './LongArrowLeft'
export { default as LongArrowRight } from './LongArrowRight'
export { default as SearchMenu } from './SearchMenu'
export { default as Tools } from './Tools'

View File

@@ -1 +0,0 @@
export { default as CubeOutline } from './CubeOutline'

View File

@@ -1,4 +1,2 @@
export { default as ClockFastForward } from './ClockFastForward'
export { default as ClockPlay } from './ClockPlay'
export { default as ClockPlaySlim } from './ClockPlaySlim'
export { default as ClockRefresh } from './ClockRefresh'

View File

@@ -1,2 +0,0 @@
export { default as User01 } from './User01'
export { default as Users01 } from './Users01'

View File

@@ -1 +0,0 @@
export { default as Stars02 } from './Stars02'

View File

@@ -1,4 +1,3 @@
export { default as AnthropicText } from './AnthropicText'
export { default as Generator } from './Generator'
export { default as Group } from './Group'
export { default as HourglassShape } from './HourglassShape'

View File

@@ -1,2 +1 @@
export { default as GoldCoin } from './GoldCoin'
export { default as Scales02 } from './Scales02'

Some files were not shown because too many files have changed in this diff Show More