mirror of
https://github.com/langgenius/dify.git
synced 2026-04-29 04:26:30 +08:00
feat: file array variable choose vars
This commit is contained in:
parent
1bcb30647f
commit
8fbdaa604c
@ -29,6 +29,7 @@ import VariableTag from '@/app/components/workflow/nodes/_base/components/variab
|
|||||||
import type {
|
import type {
|
||||||
Node,
|
Node,
|
||||||
NodeOutPutVar,
|
NodeOutPutVar,
|
||||||
|
Var,
|
||||||
} from '@/app/components/workflow/types'
|
} from '@/app/components/workflow/types'
|
||||||
import { VarType } from '@/app/components/workflow/types'
|
import { VarType } from '@/app/components/workflow/types'
|
||||||
import cn from '@/utils/classnames'
|
import cn from '@/utils/classnames'
|
||||||
@ -51,9 +52,11 @@ type ConditionItemProps = {
|
|||||||
onRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
onRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
||||||
onUpdateSubVariableCondition?: HandleUpdateSubVariableCondition
|
onUpdateSubVariableCondition?: HandleUpdateSubVariableCondition
|
||||||
onToggleSubVariableConditionLogicalOperator?: HandleToggleSubVariableConditionLogicalOperator
|
onToggleSubVariableConditionLogicalOperator?: HandleToggleSubVariableConditionLogicalOperator
|
||||||
|
nodeId: string
|
||||||
nodesOutputVars: NodeOutPutVar[]
|
nodesOutputVars: NodeOutPutVar[]
|
||||||
availableNodes: Node[]
|
availableNodes: Node[]
|
||||||
numberVariables: NodeOutPutVar[]
|
numberVariables: NodeOutPutVar[]
|
||||||
|
filterVar: (varPayload: Var) => boolean
|
||||||
}
|
}
|
||||||
const ConditionItem = ({
|
const ConditionItem = ({
|
||||||
className,
|
className,
|
||||||
@ -69,9 +72,11 @@ const ConditionItem = ({
|
|||||||
onRemoveSubVariableCondition,
|
onRemoveSubVariableCondition,
|
||||||
onUpdateSubVariableCondition,
|
onUpdateSubVariableCondition,
|
||||||
onToggleSubVariableConditionLogicalOperator,
|
onToggleSubVariableConditionLogicalOperator,
|
||||||
|
nodeId,
|
||||||
nodesOutputVars,
|
nodesOutputVars,
|
||||||
availableNodes,
|
availableNodes,
|
||||||
numberVariables,
|
numberVariables,
|
||||||
|
filterVar,
|
||||||
}: ConditionItemProps) => {
|
}: ConditionItemProps) => {
|
||||||
const { t } = useTranslation()
|
const { t } = useTranslation()
|
||||||
|
|
||||||
@ -274,6 +279,10 @@ const ConditionItem = ({
|
|||||||
handleRemoveSubVariableCondition={onRemoveSubVariableCondition}
|
handleRemoveSubVariableCondition={onRemoveSubVariableCondition}
|
||||||
handleUpdateSubVariableCondition={onUpdateSubVariableCondition}
|
handleUpdateSubVariableCondition={onUpdateSubVariableCondition}
|
||||||
handleToggleSubVariableConditionLogicalOperator={onToggleSubVariableConditionLogicalOperator}
|
handleToggleSubVariableConditionLogicalOperator={onToggleSubVariableConditionLogicalOperator}
|
||||||
|
nodeId={nodeId}
|
||||||
|
nodesOutputVars={nodesOutputVars}
|
||||||
|
availableNodes={availableNodes}
|
||||||
|
filterVar={filterVar}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import ConditionItem from './condition-item'
|
|||||||
import type {
|
import type {
|
||||||
Node,
|
Node,
|
||||||
NodeOutPutVar,
|
NodeOutPutVar,
|
||||||
|
Var,
|
||||||
} from '@/app/components/workflow/types'
|
} from '@/app/components/workflow/types'
|
||||||
import cn from '@/utils/classnames'
|
import cn from '@/utils/classnames'
|
||||||
|
|
||||||
@ -27,9 +28,11 @@ type ConditionListProps = {
|
|||||||
onRemoveCondition?: HandleRemoveCondition
|
onRemoveCondition?: HandleRemoveCondition
|
||||||
onUpdateCondition?: HandleUpdateCondition
|
onUpdateCondition?: HandleUpdateCondition
|
||||||
onToggleConditionLogicalOperator?: HandleToggleConditionLogicalOperator
|
onToggleConditionLogicalOperator?: HandleToggleConditionLogicalOperator
|
||||||
|
nodeId: string
|
||||||
nodesOutputVars: NodeOutPutVar[]
|
nodesOutputVars: NodeOutPutVar[]
|
||||||
availableNodes: Node[]
|
availableNodes: Node[]
|
||||||
numberVariables: NodeOutPutVar[]
|
numberVariables: NodeOutPutVar[]
|
||||||
|
filterVar: (varPayload: Var) => boolean
|
||||||
varsIsVarFileAttribute: Record<string, boolean>
|
varsIsVarFileAttribute: Record<string, boolean>
|
||||||
onAddSubVariableCondition?: HandleAddSubVariableCondition
|
onAddSubVariableCondition?: HandleAddSubVariableCondition
|
||||||
onRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
onRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
||||||
@ -49,10 +52,12 @@ const ConditionList = ({
|
|||||||
onRemoveSubVariableCondition,
|
onRemoveSubVariableCondition,
|
||||||
onUpdateSubVariableCondition,
|
onUpdateSubVariableCondition,
|
||||||
onToggleSubVariableConditionLogicalOperator,
|
onToggleSubVariableConditionLogicalOperator,
|
||||||
|
nodeId,
|
||||||
nodesOutputVars,
|
nodesOutputVars,
|
||||||
availableNodes,
|
availableNodes,
|
||||||
numberVariables,
|
numberVariables,
|
||||||
varsIsVarFileAttribute,
|
varsIsVarFileAttribute,
|
||||||
|
filterVar,
|
||||||
}: ConditionListProps) => {
|
}: ConditionListProps) => {
|
||||||
const { conditions, logical_operator } = caseItem
|
const { conditions, logical_operator } = caseItem
|
||||||
|
|
||||||
@ -106,8 +111,10 @@ const ConditionList = ({
|
|||||||
onRemoveSubVariableCondition={onRemoveSubVariableCondition}
|
onRemoveSubVariableCondition={onRemoveSubVariableCondition}
|
||||||
onUpdateSubVariableCondition={onUpdateSubVariableCondition}
|
onUpdateSubVariableCondition={onUpdateSubVariableCondition}
|
||||||
onToggleSubVariableConditionLogicalOperator={onToggleSubVariableConditionLogicalOperator}
|
onToggleSubVariableConditionLogicalOperator={onToggleSubVariableConditionLogicalOperator}
|
||||||
|
nodeId={nodeId}
|
||||||
nodesOutputVars={nodesOutputVars}
|
nodesOutputVars={nodesOutputVars}
|
||||||
availableNodes={availableNodes}
|
availableNodes={availableNodes}
|
||||||
|
filterVar={filterVar}
|
||||||
numberVariables={numberVariables}
|
numberVariables={numberVariables}
|
||||||
file={varsIsVarFileAttribute[condition.id] ? { key: (condition.variable_selector || []).slice(-1)[0] } : undefined}
|
file={varsIsVarFileAttribute[condition.id] ? { key: (condition.variable_selector || []).slice(-1)[0] } : undefined}
|
||||||
isSubVariableKey={isSubVariable}
|
isSubVariableKey={isSubVariable}
|
||||||
|
|||||||
@ -33,11 +33,11 @@ type Props = {
|
|||||||
handleRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
handleRemoveSubVariableCondition?: handleRemoveSubVariableCondition
|
||||||
handleUpdateSubVariableCondition?: HandleUpdateSubVariableCondition
|
handleUpdateSubVariableCondition?: HandleUpdateSubVariableCondition
|
||||||
handleToggleSubVariableConditionLogicalOperator?: HandleToggleSubVariableConditionLogicalOperator
|
handleToggleSubVariableConditionLogicalOperator?: HandleToggleSubVariableConditionLogicalOperator
|
||||||
nodeId?: string
|
nodeId: string
|
||||||
nodesOutputVars?: NodeOutPutVar[]
|
nodesOutputVars: NodeOutPutVar[]
|
||||||
availableNodes?: Node[]
|
availableNodes: Node[]
|
||||||
varsIsVarFileAttribute?: Record<string, boolean>
|
varsIsVarFileAttribute?: Record<string, boolean>
|
||||||
filterVar?: (varPayload: Var) => boolean
|
filterVar: (varPayload: Var) => boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const ConditionWrap: FC<Props> = ({
|
const ConditionWrap: FC<Props> = ({
|
||||||
@ -127,8 +127,10 @@ const ConditionWrap: FC<Props> = ({
|
|||||||
onUpdateCondition={handleUpdateCondition}
|
onUpdateCondition={handleUpdateCondition}
|
||||||
onRemoveCondition={handleRemoveCondition}
|
onRemoveCondition={handleRemoveCondition}
|
||||||
onToggleConditionLogicalOperator={handleToggleConditionLogicalOperator}
|
onToggleConditionLogicalOperator={handleToggleConditionLogicalOperator}
|
||||||
|
nodeId={id}
|
||||||
nodesOutputVars={nodesOutputVars}
|
nodesOutputVars={nodesOutputVars}
|
||||||
availableNodes={availableNodes}
|
availableNodes={availableNodes}
|
||||||
|
filterVar={filterVar}
|
||||||
numberVariables={getAvailableVars(id, '', filterNumberVar)}
|
numberVariables={getAvailableVars(id, '', filterNumberVar)}
|
||||||
varsIsVarFileAttribute={varsIsVarFileAttribute}
|
varsIsVarFileAttribute={varsIsVarFileAttribute}
|
||||||
onAddSubVariableCondition={handleAddSubVariableCondition}
|
onAddSubVariableCondition={handleAddSubVariableCondition}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user