Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox

# Conflicts:
#	api/controllers/console/app/app.py
#	web/eslint-suppressions.json
#	web/eslint.config.mjs
This commit is contained in:
yyh
2026-02-06 14:40:44 +08:00
177 changed files with 886 additions and 686 deletions

View File

@ -281,7 +281,7 @@ function FeaturedToolUninstalledItem({
<div className="ml-auto flex h-full items-center gap-1 pl-1">
<span className={`system-xs-regular text-text-tertiary ${actionOpen ? 'hidden' : 'group-hover:hidden'}`}>{installCountLabel}</span>
<div
className={`system-xs-medium flex h-full items-center gap-1 text-components-button-secondary-accent-text [&_.action-btn]:h-6 [&_.action-btn]:min-h-0 [&_.action-btn]:w-6 [&_.action-btn]:rounded-lg [&_.action-btn]:p-0 ${actionOpen ? 'flex' : 'hidden group-hover:flex'}`}
className={`system-xs-medium flex h-full items-center gap-1 text-components-button-secondary-accent-text [&_.action-btn]:h-6 [&_.action-btn]:min-h-0 [&_.action-btn]:w-6 [&_.action-btn]:rounded-lg [&_.action-btn]:p-0 ${actionOpen ? '' : 'hidden group-hover:flex'}`}
onMouseEnter={() => setIsActionHovered(true)}
onMouseLeave={() => {
if (!actionOpen)

View File

@ -276,7 +276,7 @@ function FeaturedTriggerUninstalledItem({
<div className="ml-auto flex h-full items-center gap-1 pl-1">
<span className={`system-xs-regular text-text-tertiary ${actionOpen ? 'hidden' : 'group-hover:hidden'}`}>{installCountLabel}</span>
<div
className={`system-xs-medium flex h-full items-center gap-1 text-components-button-secondary-accent-text [&_.action-btn]:h-6 [&_.action-btn]:min-h-0 [&_.action-btn]:w-6 [&_.action-btn]:rounded-lg [&_.action-btn]:p-0 ${actionOpen ? 'flex' : 'hidden group-hover:flex'}`}
className={`system-xs-medium flex h-full items-center gap-1 text-components-button-secondary-accent-text [&_.action-btn]:h-6 [&_.action-btn]:min-h-0 [&_.action-btn]:w-6 [&_.action-btn]:rounded-lg [&_.action-btn]:p-0 ${actionOpen ? '' : 'hidden group-hover:flex'}`}
onMouseEnter={() => setIsActionHovered(true)}
onMouseLeave={() => {
if (!actionOpen)

View File

@ -42,7 +42,7 @@ const Item: FC<Props> = ({
/>
<div className="ml-2 flex w-0 grow">
<div className="w-0 grow">
<div className="system-sm-medium h-4 truncate leading-4 text-text-primary ">{getLocalizedText(payload.label)}</div>
<div className="system-sm-medium h-4 truncate leading-4 text-text-primary">{getLocalizedText(payload.label)}</div>
<div className="system-xs-regular h-5 truncate leading-5 text-text-tertiary">{getLocalizedText(payload.brief)}</div>
<div className="system-xs-regular flex space-x-1 text-text-tertiary">
<div>{payload.org}</div>

View File

@ -47,7 +47,7 @@ const ViewTypeSelect: FC<Props> = ({
}
onClick={handleChange(ViewType.tree)}
>
<RiNodeTree className="h-4 w-4 " />
<RiNodeTree className="h-4 w-4" />
</div>
</div>
)

View File

@ -106,7 +106,7 @@ const HeaderInRestoring = ({
<div>
<RestoringTitle />
</div>
<div className=" flex items-center justify-end gap-x-2">
<div className="flex items-center justify-end gap-x-2">
<Button
onClick={handleRestore}
disabled={!currentVersion || currentVersion.version === WorkflowVersion.Draft}

View File

@ -35,7 +35,7 @@ const PanelWrap: FC<Props> = ({
onHide()
}}
>
<RiCloseLine className="h-4 w-4 text-text-tertiary " />
<RiCloseLine className="h-4 w-4 text-text-tertiary" />
</div>
</div>
{children}

View File

@ -118,7 +118,7 @@ const Editor: FC<Props> = ({
{/* to patch Editor not support dynamic change editable status */}
{readOnly && <div className="absolute inset-0 z-10"></div>}
{isFocus && (
<div className={cn('absolute z-10', insertVarTipToLeft ? 'left-[-12px] top-1.5' : ' right-1 top-[-9px]')}>
<div className={cn('absolute z-10', insertVarTipToLeft ? 'left-[-12px] top-1.5' : 'right-1 top-[-9px]')}>
<Tooltip
popupContent={`${t('common.insertVarTip', { ns: 'workflow' })}`}
>

View File

@ -209,7 +209,7 @@ export const NodeSourceHandle = memo(({
>
<div className="absolute -top-1 left-1/2 hidden -translate-x-1/2 -translate-y-full rounded-lg border-[0.5px] border-components-panel-border bg-components-tooltip-bg p-1.5 shadow-lg group-hover/handle:block">
<div className="system-xs-regular text-text-tertiary">
<div className=" whitespace-nowrap">
<div className="whitespace-nowrap">
<span className="system-xs-medium text-text-secondary">{t('common.parallelTip.click.title', { ns: 'workflow' })}</span>
{t('common.parallelTip.click.desc', { ns: 'workflow' })}
</div>

View File

@ -261,7 +261,7 @@ const Editor: FC<Props> = ({
<div className={cn('pb-2', isExpand && 'flex grow flex-col')}>
{!(isSupportJinja && editionType === EditionType.jinja2)
? (
<div className={cn(isExpand ? 'grow' : 'max-h-[536px]', 'relative min-h-[56px] overflow-y-auto px-3', editorContainerClassName)}>
<div className={cn(isExpand ? 'grow' : 'max-h-[536px]', 'relative min-h-[56px] overflow-y-auto px-3', editorContainerClassName)}>
<PromptEditor
key={controlPromptEditorRerenderKey}
placeholder={placeholder}
@ -332,7 +332,7 @@ const Editor: FC<Props> = ({
</div>
)
: (
<div className={cn(isExpand ? 'grow' : 'max-h-[536px]', 'relative min-h-[56px] overflow-y-auto px-3', editorContainerClassName)}>
<div className={cn(isExpand ? 'grow' : 'max-h-[536px]', 'relative min-h-[56px] overflow-y-auto px-3', editorContainerClassName)}>
<CodeEditor
availableVars={nodesOutputVars || []}
varList={varList}

View File

@ -69,12 +69,12 @@ const TypeSelector: FC<Props> = ({
className={cn(showOption && 'bg-state-base-hover', 'flex h-5 cursor-pointer items-center rounded-md pl-1 pr-0.5 text-xs font-semibold text-text-secondary hover:bg-state-base-hover')}
>
<div className={cn('text-sm font-semibold', uppercase && 'uppercase', noValue && 'text-text-tertiary', triggerClassName)}>{!noValue ? item?.label : placeholder}</div>
{!readonly && <DropDownIcon className="h-3 w-3 " />}
{!readonly && <DropDownIcon className="h-3 w-3" />}
</div>
)}
{(showOption && !readonly) && (
<div className={cn('absolute top-[24px] z-10 w-[120px] select-none rounded-lg border border-components-panel-border bg-components-panel-bg p-1 shadow-lg', popupClassName)}>
<div className={cn('absolute top-[24px] z-10 w-[120px] select-none rounded-lg border border-components-panel-border bg-components-panel-bg p-1 shadow-lg', popupClassName)}>
{list.map(item => (
<div
key={item.value}

View File

@ -43,7 +43,7 @@ const VarFullPathPanel: FC<Props> = ({
})()
return (
<div className="w-[280px] rounded-xl border-[0.5px] border-components-panel-border bg-components-panel-bg-blur pb-0 shadow-lg backdrop-blur-[5px]">
<div className="flex space-x-1 border-b-[0.5px] border-divider-subtle p-3 pb-2 ">
<div className="flex space-x-1 border-b-[0.5px] border-divider-subtle p-3 pb-2">
<BlockIcon size="xs" type={nodeType} />
<div className="system-xs-medium w-0 grow truncate text-text-secondary">{nodeName}</div>
</div>

View File

@ -603,7 +603,7 @@ const VarReferencePicker: FC<Props> = ({
)}
{!hasValue && valueTypePlaceHolder && (
<Badge
className=" absolute right-1 top-[50%] translate-y-[-50%] capitalize"
className="absolute right-1 top-[50%] translate-y-[-50%] capitalize"
text={valueTypePlaceHolder}
uppercase={false}
/>

View File

@ -212,7 +212,7 @@ const Item: FC<ItemProps> = ({
<div
ref={setItemRef}
className={cn(
(isObj || isStructureOutput) ? ' pr-1' : 'pr-[18px]',
(isObj || isStructureOutput) ? 'pr-1' : 'pr-[18px]',
(isHovering || isHighlighted) && ((isObj || isStructureOutput) ? 'bg-components-panel-on-panel-item-bg-hover' : 'bg-state-base-hover'),
'relative flex h-6 w-full cursor-pointer items-center rounded-md pl-3',
className,
@ -565,10 +565,10 @@ const VarReferenceVars: FC<Props> = ({
)
})}
{item.isFlat && !filteredVars[i + 1]?.isFlat && !!filteredVars.find(item => !item.isFlat) && (
<div className="relative mt-[14px] flex items-center space-x-1">
<div className="relative mt-[14px] flex items-center space-x-1">
<div className="h-0 w-3 shrink-0 border border-divider-subtle"></div>
<div className="system-2xs-semibold-uppercase text-text-tertiary">{t('debug.lastOutput', { ns: 'workflow' })}</div>
<div className="h-0 shrink-0 grow border border-divider-subtle"></div>
<div className="h-0 shrink-0 grow border border-divider-subtle"></div>
</div>
)}
</div>

View File

@ -427,7 +427,7 @@ const BasePanel: FC<BasePanelProps> = ({
if (logParams.showSpecialResultPanel) {
return (
<div className={cn(
'relative mr-1 h-full',
'relative mr-1 h-full',
)}
>
<div
@ -467,7 +467,7 @@ const BasePanel: FC<BasePanelProps> = ({
return (
<div className={cn(
'relative mr-1 h-full',
'relative mr-1 h-full',
)}
>
<div

View File

@ -356,7 +356,7 @@ const BaseNode: FC<BaseNodeProps> = ({
</div>
)}
>
<div className="system-2xs-medium-uppercase ml-1 flex items-center justify-center rounded-[5px] border-[1px] border-text-warning px-[5px] py-[3px] text-text-warning ">
<div className="system-2xs-medium-uppercase ml-1 flex items-center justify-center rounded-[5px] border-[1px] border-text-warning px-[5px] py-[3px] text-text-warning">
{t('nodes.iteration.parallelModeUpper', { ns: 'workflow' })}
</div>
</Tooltip>

View File

@ -48,7 +48,7 @@ const ApiInput: FC<Props> = ({
})
return (
<div className="flex items-start space-x-1">
<div className="flex items-start space-x-1">
<Selector
value={method}
onChange={onMethodChange}

View File

@ -64,7 +64,7 @@ const Panel: FC<NodePanelProps<HttpNodeType>> = ({
<div className="flex">
<div
onClick={showAuthorization}
className={cn(!readOnly && 'cursor-pointer hover:bg-state-base-hover', 'flex h-6 items-center space-x-1 rounded-md px-2 ')}
className={cn(!readOnly && 'cursor-pointer hover:bg-state-base-hover', 'flex h-6 items-center space-x-1 rounded-md px-2')}
>
{!readOnly && <Settings01 className="h-3 w-3 text-text-tertiary" />}
<div className="text-xs font-medium text-text-tertiary">
@ -74,7 +74,7 @@ const Panel: FC<NodePanelProps<HttpNodeType>> = ({
</div>
<div
onClick={showCurlPanel}
className={cn(!readOnly && 'cursor-pointer hover:bg-state-base-hover', 'flex h-6 items-center space-x-1 rounded-md px-2 ')}
className={cn(!readOnly && 'cursor-pointer hover:bg-state-base-hover', 'flex h-6 items-center space-x-1 rounded-md px-2')}
>
{!readOnly && <FileArrow01 className="h-3 w-3 text-text-tertiary" />}
<div className="text-xs font-medium text-text-tertiary">

View File

@ -71,7 +71,7 @@ const ConditionValue = ({
return (
<div className="rounded-md bg-workflow-block-parma-bg">
<div className="flex h-6 items-center px-1 ">
<div className="flex h-6 items-center px-1">
<VariableLabelInNode
className="w-0 grow"
variables={variableSelector}

View File

@ -147,7 +147,7 @@ const ConditionNumberInput = ({
}
{
numberVarType === NumberVarType.constant && (
<div className=" relative">
<div className="relative">
<input
className={cn('block w-full appearance-none bg-transparent px-2 text-[13px] text-components-input-text-filled outline-none placeholder:text-components-input-text-placeholder', unit && 'pr-6')}
type="number"

View File

@ -99,7 +99,7 @@ const ConditionWrap: FC<Props> = ({
className={cn(
'group relative rounded-[10px] bg-components-panel-bg',
willDeleteCaseId === item.case_id && 'bg-state-destructive-hover',
!isSubVariable && 'min-h-[40px] px-3 py-1 ',
!isSubVariable && 'min-h-[40px] px-3 py-1',
isSubVariable && 'px-1 py-2',
)}
>
@ -161,7 +161,7 @@ const ConditionWrap: FC<Props> = ({
'flex items-center justify-between pr-[30px]',
!item.conditions.length && !isSubVariable && 'mt-1',
!item.conditions.length && isSubVariable && 'mt-2',
!isSubVariable && ' pl-[60px]',
!isSubVariable && 'pl-[60px]',
)}
>
{isSubVariable

View File

@ -106,7 +106,7 @@ const Panel: FC<NodePanelProps<IterationNodeType>> = ({
onChange={changeParallelNums}
max={MAX_PARALLEL_LIMIT}
min={MIN_ITERATION_PARALLEL_NUM}
className=" mt-4 flex-1 shrink-0"
className="mt-4 flex-1 shrink-0"
/>
</div>

View File

@ -81,7 +81,7 @@ const DatasetItem: FC<Props> = ({
<div className="system-sm-medium w-0 grow truncate text-text-secondary">{payload.name}</div>
</div>
{!readonly && (
<div className="ml-2 hidden shrink-0 items-center space-x-1 group-hover/dataset-item:flex">
<div className="ml-2 hidden shrink-0 items-center space-x-1 group-hover/dataset-item:flex">
{
editable && (
<ActionButton

View File

@ -140,7 +140,7 @@ const RetrievalConfig: FC<Props> = ({
</Button>
</PortalToFollowElemTrigger>
<PortalToFollowElemContent style={{ zIndex: 1001 }}>
<div className="w-[404px] rounded-2xl border border-components-panel-border bg-components-panel-bg px-4 pb-4 pt-3 shadow-xl">
<div className="w-[404px] rounded-2xl border border-components-panel-border bg-components-panel-bg px-4 pb-4 pt-3 shadow-xl">
<ConfigRetrievalContent
datasetConfigs={datasetConfigs}
onChange={handleChange}

View File

@ -33,7 +33,7 @@ const ExtractInput: FC<Props> = ({
})
return (
<div className="flex items-start space-x-1">
<div className="flex items-start space-x-1">
<Input
instanceId="http-extract-number"
className={cn(isFocus ? 'border-components-input-border-active bg-components-input-bg-active shadow-xs' : 'border-components-input-border-hover bg-components-input-bg-normal', 'w-0 grow rounded-lg border px-3 py-[6px]')}

View File

@ -64,7 +64,7 @@ const SubVariablePicker: FC<Props> = ({
</div>
)
: (
<div className="system-sm-regular flex pl-1 text-components-input-text-placeholder group-hover/sub-variable-picker:text-text-tertiary">
<div className="system-sm-regular flex pl-1 text-components-input-text-placeholder group-hover/sub-variable-picker:text-text-tertiary">
<Variable02 className="mr-1 h-4 w-4 shrink-0" />
<span>{t('placeholder.select', { ns: 'common' })}</span>
</div>

View File

@ -73,7 +73,7 @@ const ConditionValue = ({
return (
<div className="rounded-md bg-workflow-block-parma-bg">
<div className="flex h-6 items-center px-1 ">
<div className="flex h-6 items-center px-1">
<VariableLabelInNode
className="w-0 grow"
variables={variableSelector}

View File

@ -147,7 +147,7 @@ const ConditionNumberInput = ({
}
{
numberVarType === NumberVarType.constant && (
<div className=" relative">
<div className="relative">
<input
className={cn('block w-full appearance-none bg-transparent px-2 text-[13px] text-components-input-text-filled outline-none placeholder:text-components-input-text-placeholder', unit && 'pr-6')}
type="number"

View File

@ -76,7 +76,7 @@ const ConditionWrap: FC<Props> = ({
<div
className={cn(
'group relative rounded-[10px] bg-components-panel-bg',
!isSubVariable && 'min-h-[40px] px-3 py-1 ',
!isSubVariable && 'min-h-[40px] px-3 py-1',
isSubVariable && 'px-1 py-2',
)}
>

View File

@ -21,7 +21,7 @@ const Node: FC<NodeProps<StartNodeType>> = ({
<div className="mb-1 px-3 py-1">
<div className="space-y-0.5">
{variables.map(variable => (
<div key={variable.variable} className="flex h-6 items-center justify-between space-x-1 rounded-md bg-workflow-block-parma-bg px-1">
<div key={variable.variable} className="flex h-6 items-center justify-between space-x-1 rounded-md bg-workflow-block-parma-bg px-1">
<div className="flex w-0 grow items-center space-x-1">
<Variable02 className="h-3.5 w-3.5 shrink-0 text-text-accent" />
<span className="system-xs-regular w-0 grow truncate text-text-secondary">{variable.variable}</span>

View File

@ -36,7 +36,7 @@ const CopyFeedbackNew = ({ content }: Props) => {
}
>
<div
className="group/copy flex w-full items-center gap-0.5 "
className="group/copy flex w-full items-center gap-0.5"
onClick={onClickCopy}
>
<div

View File

@ -153,7 +153,7 @@ const Node: FC<NodeProps<ToolNodeType>> = ({
{hasConfigs && (
<div className="space-y-0.5" aria-disabled={shouldDim}>
{toolConfigs.map((key, index) => (
<div key={index} className="flex h-6 items-center justify-between space-x-1 rounded-md bg-workflow-block-parma-bg px-1 text-xs font-normal text-text-secondary">
<div key={index} className="flex h-6 items-center justify-between space-x-1 rounded-md bg-workflow-block-parma-bg px-1 text-xs font-normal text-text-secondary">
<div title={key} className="max-w-[100px] shrink-0 truncate text-xs font-medium uppercase text-text-tertiary">
{key}
</div>

View File

@ -148,7 +148,7 @@ const VarGroupItem: FC<Props> = ({
)
: t(`${i18nPrefix}.title`, { ns: 'workflow' })!}
operations={(
<div className="flex h-6 items-center space-x-2">
<div className="flex h-6 items-center space-x-2">
{payload.variables.length > 0 && (
<div className="system-2xs-medium-uppercase flex h-[18px] items-center rounded-[5px] border border-divider-deep px-1 text-text-tertiary">{payload.output_type}</div>
)}

View File

@ -96,7 +96,7 @@ const ObjectValueItem: FC<Props> = ({
{/* Key */}
<div className="w-[120px] border-r border-gray-200">
<input
className="system-xs-regular placeholder:system-xs-regular block h-7 w-full appearance-none px-2 text-text-secondary caret-primary-600 outline-none placeholder:text-components-input-text-placeholder hover:bg-state-base-hover focus:bg-components-input-bg-active"
className="system-xs-regular placeholder:system-xs-regular block h-7 w-full appearance-none px-2 text-text-secondary caret-primary-600 outline-none placeholder:text-components-input-text-placeholder hover:bg-state-base-hover focus:bg-components-input-bg-active"
placeholder={t('chatVariable.modal.objectKey', { ns: 'workflow' }) || ''}
value={list[index].key}
onChange={handleKeyChange(index)}
@ -115,7 +115,7 @@ const ObjectValueItem: FC<Props> = ({
{/* Value */}
<div className="relative w-[230px]">
<input
className="system-xs-regular placeholder:system-xs-regular block h-7 w-full appearance-none px-2 text-text-secondary caret-primary-600 outline-none placeholder:text-components-input-text-placeholder hover:bg-state-base-hover focus:bg-components-input-bg-active"
className="system-xs-regular placeholder:system-xs-regular block h-7 w-full appearance-none px-2 text-text-secondary caret-primary-600 outline-none placeholder:text-components-input-text-placeholder hover:bg-state-base-hover focus:bg-components-input-bg-active"
placeholder={t('chatVariable.modal.objectValue', { ns: 'workflow' }) || ''}
value={list[index].value}
onChange={handleValueChange(index)}

View File

@ -20,7 +20,7 @@ const MenuItem: FC<MenuItemProps> = ({
return (
<div
className={cn(
'flex cursor-pointer items-center justify-between rounded-lg px-2 py-1.5 ',
'flex cursor-pointer items-center justify-between rounded-lg px-2 py-1.5',
isDestructive ? 'hover:bg-state-destructive-hover' : 'hover:bg-state-base-hover',
)}
onClick={() => {

View File

@ -22,7 +22,7 @@ const DeleteConfirmModal: FC<DeleteConfirmModalProps> = ({
return (
<Modal className="p-0" isShow={isOpen} onClose={onClose}>
<div className="flex flex-col gap-y-2 p-6 pb-4 ">
<div className="flex flex-col gap-y-2 p-6 pb-4">
<div className="title-2xl-semi-bold text-text-primary">
{`${t('operation.delete', { ns: 'common' })} ${versionInfo.marked_name || t('versionHistory.defaultName', { ns: 'workflow' })}`}
</div>

View File

@ -53,7 +53,7 @@ const Filter: FC<FilterProps> = ({
isFiltering ? 'bg-state-accent-active-alt' : 'hover:bg-state-base-hover',
)}
>
<RiFilter3Line className={cn('h-4 w-4', isFiltering ? 'text-text-accent' : ' text-text-tertiary')} />
<RiFilter3Line className={cn('h-4 w-4', isFiltering ? 'text-text-accent' : 'text-text-tertiary')} />
</div>
</PortalToFollowElemTrigger>
<PortalToFollowElemContent className="z-[12]">

View File

@ -18,7 +18,7 @@ const Item: FC<ItemProps> = ({
return (
<div className="relative flex gap-x-1 p-2">
{!isLast && <div className="absolute left-4 top-6 h-[calc(100%-0.75rem)] w-0.5 bg-divider-subtle" />}
<div className=" flex h-5 w-[18px] shrink-0 items-center justify-center">
<div className="flex h-5 w-[18px] shrink-0 items-center justify-center">
<div className="h-2 w-2 rounded-lg border-[2px] border-text-quaternary" />
</div>
<div className="flex grow flex-col gap-y-0.5">

View File

@ -22,7 +22,7 @@ const RestoreConfirmModal: FC<RestoreConfirmModalProps> = ({
return (
<Modal className="p-0" isShow={isOpen} onClose={onClose}>
<div className="flex flex-col gap-y-2 p-6 pb-4 ">
<div className="flex flex-col gap-y-2 p-6 pb-4">
<div className="title-2xl-semi-bold text-text-primary">
{`${t('common.restore', { ns: 'workflow' })} ${versionInfo.marked_name || t('versionHistory.defaultName', { ns: 'workflow' })}`}
</div>

View File

@ -83,7 +83,7 @@ const VersionHistoryItem: React.FC<VersionHistoryItemProps> = ({
}}
>
{!isLast && <div className="absolute left-4 top-6 h-[calc(100%-0.75rem)] w-0.5 bg-divider-subtle" />}
<div className=" flex h-5 w-[18px] shrink-0 items-center justify-center">
<div className="flex h-5 w-[18px] shrink-0 items-center justify-center">
<div className={cn(
'h-2 w-2 rounded-lg border-[2px]',
isSelected ? 'border-text-accent' : 'border-text-quaternary',

View File

@ -40,7 +40,7 @@ const LoopResultPanel: FC<Props> = ({
const main = (
<>
<div className={cn(!noWrap && 'shrink-0 ', 'px-4 pt-3')}>
<div className={cn(!noWrap && 'shrink-0', 'px-4 pt-3')}>
<div className="flex h-8 shrink-0 items-center justify-between">
<div className="system-xl-semibold truncate text-text-primary">
{t(`${i18nPrefix}.testRunLoop`, { ns: 'workflow' }) }

View File

@ -72,7 +72,7 @@ const ResultText: FC<ResultTextProps> = ({
}
{!!allFiles?.length && allFiles.map(item => (
<div key={item.varName} className="system-xs-regular flex flex-col gap-1 px-4 py-2">
<div className="py-1 text-text-tertiary ">{item.varName}</div>
<div className="py-1 text-text-tertiary">{item.varName}</div>
<FileList
files={item.list}
showDeleteAction={false}

View File

@ -8,7 +8,6 @@ const FilePreviewContext = React.createContext<FilePreviewContextValue>({ enable
export const FilePreviewContextProvider = FilePreviewContext.Provider
// eslint-disable-next-line react-refresh/only-export-components
export const useFilePreviewContext = () => {
return React.useContext(FilePreviewContext)
}

View File

@ -744,7 +744,7 @@ const ToolGroupBlockComponent = ({
<RiEqualizer2Line className="size-3.5" />
<span className="system-xs-medium">{t('operation.settings', { ns: 'common' })}</span>
</button>
<div className="mx-1 h-3 w-px bg-divider-regular "></div>
<div className="mx-1 h-3 w-px bg-divider-regular"></div>
</div>
)
: null}

View File

@ -100,7 +100,7 @@ const BaseCard = ({
</div>
)}
>
<div className="system-2xs-medium-uppercase ml-1 flex items-center justify-center rounded-[5px] border-[1px] border-text-warning px-[5px] py-[3px] text-text-warning ">
<div className="system-2xs-medium-uppercase ml-1 flex items-center justify-center rounded-[5px] border-[1px] border-text-warning px-[5px] py-[3px] text-text-warning">
{t('nodes.iteration.parallelModeUpper', { ns: 'workflow' })}
</div>
</Tooltip>