@datatechsolutions/ui 2.11.5 → 2.11.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/astrlabe/index.js +273 -174
- package/dist/astrlabe/index.js.map +1 -1
- package/dist/astrlabe/index.mjs +162 -60
- package/dist/astrlabe/index.mjs.map +1 -1
- package/dist/astrlabe/workflow-canvas.js +3 -3
- package/dist/astrlabe/workflow-canvas.mjs +2 -2
- package/dist/{chunk-F6EBSQF6.mjs → chunk-46ZM5VJJ.mjs} +5 -5
- package/dist/chunk-46ZM5VJJ.mjs.map +1 -0
- package/dist/{chunk-EVX2CFNL.js → chunk-4XID6LOC.js} +5 -5
- package/dist/chunk-4XID6LOC.js.map +1 -0
- package/dist/{chunk-45UHTVTJ.mjs → chunk-76MHUX4T.mjs} +207 -334
- package/dist/chunk-76MHUX4T.mjs.map +1 -0
- package/dist/{chunk-BONTO5LJ.js → chunk-TKLALDY4.js} +239 -367
- package/dist/chunk-TKLALDY4.js.map +1 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +710 -710
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-45UHTVTJ.mjs.map +0 -1
- package/dist/chunk-BONTO5LJ.js.map +0 -1
- package/dist/chunk-EVX2CFNL.js.map +0 -1
- package/dist/chunk-F6EBSQF6.mjs.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunk4XID6LOC_js = require('./chunk-4XID6LOC.js');
|
|
5
5
|
var chunkP4YYEM4B_js = require('./chunk-P4YYEM4B.js');
|
|
6
6
|
var chunkPWBWP5FJ_js = require('./chunk-PWBWP5FJ.js');
|
|
7
7
|
var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
|
|
@@ -2890,239 +2890,214 @@ var GroupFlowNode = react.memo(function GroupFlowNode2({ id, data, selected }) {
|
|
|
2890
2890
|
/* @__PURE__ */ jsxRuntime.jsx(WorkflowHandle, { type: "source", position: react$1.Position.Right, id: "right-out", colorClass: "!bg-slate-500" })
|
|
2891
2891
|
] });
|
|
2892
2892
|
});
|
|
2893
|
-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
|
|
2897
|
-
|
|
2898
|
-
|
|
2899
|
-
};
|
|
2900
|
-
function WorkspaceModal({
|
|
2901
|
-
open,
|
|
2902
|
-
onClose,
|
|
2903
|
-
title,
|
|
2904
|
-
subtitle,
|
|
2905
|
-
icon,
|
|
2906
|
-
gradient = "from-gray-400 to-gray-500",
|
|
2907
|
-
maxWidth = "2xl",
|
|
2908
|
-
tabs,
|
|
2909
|
-
children
|
|
2893
|
+
function ConfigFormActions({
|
|
2894
|
+
cancelLabel,
|
|
2895
|
+
saveLabel,
|
|
2896
|
+
onCancel,
|
|
2897
|
+
onSave,
|
|
2898
|
+
saveDisabled = false
|
|
2910
2899
|
}) {
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
open,
|
|
2916
|
-
onClose,
|
|
2917
|
-
title,
|
|
2918
|
-
subtitle,
|
|
2919
|
-
icon,
|
|
2920
|
-
gradient,
|
|
2921
|
-
maxWidth: resolvedSize,
|
|
2922
|
-
children: [
|
|
2923
|
-
tabs,
|
|
2924
|
-
children
|
|
2925
|
-
]
|
|
2926
|
-
}
|
|
2927
|
-
);
|
|
2900
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", children: [
|
|
2901
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk4XID6LOC_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
|
|
2902
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk4XID6LOC_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
|
|
2903
|
+
] });
|
|
2928
2904
|
}
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
|
-
|
|
2905
|
+
var COLOR_CLASSES = {
|
|
2906
|
+
green: {
|
|
2907
|
+
badge: "bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-300",
|
|
2908
|
+
input: "focus:border-green-400 focus:ring-green-400/20",
|
|
2909
|
+
row: "border-green-200/30 dark:border-green-500/15",
|
|
2910
|
+
add: "text-green-600 hover:text-green-700 dark:text-green-400 dark:hover:text-green-300",
|
|
2911
|
+
dot: "bg-green-500"
|
|
2912
|
+
},
|
|
2913
|
+
blue: {
|
|
2914
|
+
badge: "bg-blue-100 text-blue-700 dark:bg-blue-500/20 dark:text-blue-300",
|
|
2915
|
+
input: "focus:border-blue-400 focus:ring-blue-400/20",
|
|
2916
|
+
row: "border-blue-200/30 dark:border-blue-500/15",
|
|
2917
|
+
add: "text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",
|
|
2918
|
+
dot: "bg-blue-500"
|
|
2919
|
+
},
|
|
2920
|
+
purple: {
|
|
2921
|
+
badge: "bg-purple-100 text-purple-700 dark:bg-purple-500/20 dark:text-purple-300",
|
|
2922
|
+
input: "focus:border-purple-400 focus:ring-purple-400/20",
|
|
2923
|
+
row: "border-purple-200/30 dark:border-purple-500/15",
|
|
2924
|
+
add: "text-purple-600 hover:text-purple-700 dark:text-purple-400 dark:hover:text-purple-300",
|
|
2925
|
+
dot: "bg-purple-500"
|
|
2926
|
+
},
|
|
2927
|
+
red: {
|
|
2928
|
+
badge: "bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-300",
|
|
2929
|
+
input: "focus:border-red-400 focus:ring-red-400/20",
|
|
2930
|
+
row: "border-red-200/30 dark:border-red-500/15",
|
|
2931
|
+
add: "text-red-600 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300",
|
|
2932
|
+
dot: "bg-red-500"
|
|
2933
|
+
},
|
|
2934
|
+
teal: {
|
|
2935
|
+
badge: "bg-teal-100 text-teal-700 dark:bg-teal-500/20 dark:text-teal-300",
|
|
2936
|
+
input: "focus:border-teal-400 focus:ring-teal-400/20",
|
|
2937
|
+
row: "border-teal-200/30 dark:border-teal-500/15",
|
|
2938
|
+
add: "text-teal-600 hover:text-teal-700 dark:text-teal-400 dark:hover:text-teal-300",
|
|
2939
|
+
dot: "bg-teal-500"
|
|
2940
|
+
}
|
|
2941
|
+
};
|
|
2942
|
+
function VariableListEditor({
|
|
2943
|
+
variables,
|
|
2944
|
+
onChange,
|
|
2945
|
+
placeholder = "Variable name",
|
|
2946
|
+
label,
|
|
2947
|
+
addLabel = "Add",
|
|
2948
|
+
color = "green",
|
|
2949
|
+
numbered = false,
|
|
2950
|
+
editable = false,
|
|
2951
|
+
max = 0
|
|
2952
|
+
}) {
|
|
2932
2953
|
const [newVariable, setNewVariable] = react.useState("");
|
|
2933
|
-
const
|
|
2954
|
+
const inputRef = react.useRef(null);
|
|
2955
|
+
const colors = COLOR_CLASSES[color];
|
|
2956
|
+
const canAdd = max === 0 || variables.length < max;
|
|
2957
|
+
const handleAdd = react.useCallback(() => {
|
|
2934
2958
|
const trimmed = newVariable.trim();
|
|
2935
|
-
if (trimmed
|
|
2936
|
-
|
|
2937
|
-
|
|
2938
|
-
|
|
2939
|
-
};
|
|
2940
|
-
const
|
|
2941
|
-
|
|
2942
|
-
};
|
|
2943
|
-
const
|
|
2959
|
+
if (!trimmed || variables.includes(trimmed)) return;
|
|
2960
|
+
onChange([...variables, trimmed]);
|
|
2961
|
+
setNewVariable("");
|
|
2962
|
+
inputRef.current?.focus();
|
|
2963
|
+
}, [newVariable, variables, onChange]);
|
|
2964
|
+
const handleRemove = react.useCallback((index) => {
|
|
2965
|
+
onChange(variables.filter((_, i) => i !== index));
|
|
2966
|
+
}, [variables, onChange]);
|
|
2967
|
+
const handleEdit = react.useCallback((index, value) => {
|
|
2968
|
+
const updated = [...variables];
|
|
2969
|
+
updated[index] = value;
|
|
2970
|
+
onChange(updated);
|
|
2971
|
+
}, [variables, onChange]);
|
|
2972
|
+
const handleKeyDown = react.useCallback((event) => {
|
|
2944
2973
|
if (event.key === "Enter") {
|
|
2945
2974
|
event.preventDefault();
|
|
2946
|
-
|
|
2975
|
+
handleAdd();
|
|
2947
2976
|
}
|
|
2948
|
-
};
|
|
2977
|
+
}, [handleAdd]);
|
|
2978
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
2979
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-2 block text-xs font-medium text-gray-500 dark:text-gray-400", children: label }),
|
|
2980
|
+
variables.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 space-y-1", children: variables.map((variable, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2981
|
+
"div",
|
|
2982
|
+
{
|
|
2983
|
+
className: `group flex items-center gap-2 rounded-lg border px-2.5 py-1.5 transition-colors ${colors.row} hover:bg-white/5`,
|
|
2984
|
+
children: [
|
|
2985
|
+
numbered ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: `inline-flex h-5 min-w-5 items-center justify-center rounded-full text-[10px] font-bold ${colors.badge}`, children: index + 1 }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: `h-1.5 w-1.5 shrink-0 rounded-full ${colors.dot}` }),
|
|
2986
|
+
editable ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2987
|
+
"input",
|
|
2988
|
+
{
|
|
2989
|
+
type: "text",
|
|
2990
|
+
value: variable,
|
|
2991
|
+
onChange: (event) => handleEdit(index, event.target.value),
|
|
2992
|
+
className: `flex-1 rounded-md border-0 bg-transparent px-1 py-0.5 text-sm font-medium text-gray-900 outline-none ${colors.input} focus:ring-1 dark:text-white`
|
|
2993
|
+
}
|
|
2994
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 text-sm font-medium text-gray-900 dark:text-white", children: variable }),
|
|
2995
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2996
|
+
"button",
|
|
2997
|
+
{
|
|
2998
|
+
type: "button",
|
|
2999
|
+
onClick: () => handleRemove(index),
|
|
3000
|
+
className: "shrink-0 rounded p-0.5 text-gray-400 opacity-0 transition-all hover:bg-red-100 hover:text-red-500 group-hover:opacity-100 dark:hover:bg-red-500/10 dark:hover:text-red-400",
|
|
3001
|
+
"aria-label": `Remove ${variable}`,
|
|
3002
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(outline.XMarkIcon, { className: "h-3.5 w-3.5" })
|
|
3003
|
+
}
|
|
3004
|
+
)
|
|
3005
|
+
]
|
|
3006
|
+
},
|
|
3007
|
+
`${index}-${variable}`
|
|
3008
|
+
)) }),
|
|
3009
|
+
canAdd && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3010
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3011
|
+
"input",
|
|
3012
|
+
{
|
|
3013
|
+
ref: inputRef,
|
|
3014
|
+
type: "text",
|
|
3015
|
+
value: newVariable,
|
|
3016
|
+
onChange: (event) => setNewVariable(event.target.value),
|
|
3017
|
+
onKeyDown: handleKeyDown,
|
|
3018
|
+
placeholder,
|
|
3019
|
+
className: "flex-1 rounded-lg border border-gray-200/50 bg-gray-50/50 px-3 py-1.5 text-sm text-gray-700 outline-none transition-colors placeholder:text-gray-400 focus:border-gray-300 focus:ring-1 focus:ring-gray-300/30 dark:border-white/10 dark:bg-white/5 dark:text-gray-300 dark:placeholder:text-gray-600"
|
|
3020
|
+
}
|
|
3021
|
+
),
|
|
3022
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3023
|
+
"button",
|
|
3024
|
+
{
|
|
3025
|
+
type: "button",
|
|
3026
|
+
onClick: handleAdd,
|
|
3027
|
+
disabled: !newVariable.trim(),
|
|
3028
|
+
className: `flex items-center gap-1 rounded-lg px-3 py-1.5 text-xs font-semibold transition-all disabled:cursor-not-allowed disabled:opacity-40 ${colors.add} hover:bg-white/10`,
|
|
3029
|
+
children: [
|
|
3030
|
+
/* @__PURE__ */ jsxRuntime.jsx(outline.PlusIcon, { className: "h-3.5 w-3.5" }),
|
|
3031
|
+
addLabel
|
|
3032
|
+
]
|
|
3033
|
+
}
|
|
3034
|
+
)
|
|
3035
|
+
] }),
|
|
3036
|
+
variables.length === 0 && !canAdd && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-400 dark:text-gray-500", children: "No variables defined" })
|
|
3037
|
+
] });
|
|
3038
|
+
}
|
|
3039
|
+
function StartNodeConfigForm({ config, onSave, onCancel }) {
|
|
3040
|
+
const t = chunkYXN2K77G_js.useTranslations("agents.workflow.startNodeConfig");
|
|
3041
|
+
const [inputVariables, setInputVariables] = react.useState([...config.inputVariables]);
|
|
2949
3042
|
const handleSave = () => {
|
|
2950
3043
|
onSave({ ...config, inputVariables });
|
|
2951
3044
|
};
|
|
2952
3045
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
2953
3046
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
2954
|
-
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300", children: t("inputVariablesLabel") }),
|
|
2955
3047
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 text-xs text-gray-500 dark:text-gray-400", children: t("inputVariablesHelp") }),
|
|
2956
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
|
|
2957
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2958
|
-
chunkEVX2CFNL_js.Input,
|
|
2959
|
-
{
|
|
2960
|
-
value: newVariable,
|
|
2961
|
-
onChange: (event) => setNewVariable(event.target.value),
|
|
2962
|
-
onKeyDown: handleKeyDown,
|
|
2963
|
-
placeholder: t("variablePlaceholder"),
|
|
2964
|
-
className: "flex-1"
|
|
2965
|
-
}
|
|
2966
|
-
),
|
|
2967
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2968
|
-
chunkEVX2CFNL_js.Button,
|
|
2969
|
-
{
|
|
2970
|
-
type: "button",
|
|
2971
|
-
onClick: handleAddVariable,
|
|
2972
|
-
outline: true,
|
|
2973
|
-
size: "sm",
|
|
2974
|
-
children: t("addVariable")
|
|
2975
|
-
}
|
|
2976
|
-
)
|
|
2977
|
-
] }),
|
|
2978
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2 flex flex-wrap gap-2", children: inputVariables.map((variable) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2979
|
-
"span",
|
|
2980
|
-
{
|
|
2981
|
-
className: "inline-flex items-center gap-1 rounded-full bg-green-100 px-2.5 py-1 text-xs font-medium text-green-700 dark:bg-green-500/20 dark:text-green-300",
|
|
2982
|
-
children: [
|
|
2983
|
-
variable,
|
|
2984
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2985
|
-
chunkEVX2CFNL_js.IconButton,
|
|
2986
|
-
{
|
|
2987
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.XMarkIcon, { className: "h-3 w-3" }),
|
|
2988
|
-
label: `Remove ${variable}`,
|
|
2989
|
-
onClick: () => handleRemoveVariable(variable),
|
|
2990
|
-
variant: "ghost",
|
|
2991
|
-
size: "sm",
|
|
2992
|
-
className: "!p-0"
|
|
2993
|
-
}
|
|
2994
|
-
)
|
|
2995
|
-
]
|
|
2996
|
-
},
|
|
2997
|
-
variable
|
|
2998
|
-
)) })
|
|
2999
|
-
] }),
|
|
3000
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", children: [
|
|
3001
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3002
|
-
chunkEVX2CFNL_js.Button,
|
|
3003
|
-
{
|
|
3004
|
-
type: "button",
|
|
3005
|
-
onClick: onCancel,
|
|
3006
|
-
outline: true,
|
|
3007
|
-
size: "sm",
|
|
3008
|
-
children: t("cancel")
|
|
3009
|
-
}
|
|
3010
|
-
),
|
|
3011
3048
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3012
|
-
|
|
3049
|
+
VariableListEditor,
|
|
3013
3050
|
{
|
|
3014
|
-
|
|
3015
|
-
|
|
3016
|
-
|
|
3017
|
-
|
|
3018
|
-
|
|
3051
|
+
variables: inputVariables,
|
|
3052
|
+
onChange: setInputVariables,
|
|
3053
|
+
label: t("inputVariablesLabel"),
|
|
3054
|
+
placeholder: t("variablePlaceholder"),
|
|
3055
|
+
addLabel: t("addVariable"),
|
|
3056
|
+
color: "green"
|
|
3019
3057
|
}
|
|
3020
3058
|
)
|
|
3021
|
-
] })
|
|
3059
|
+
] }),
|
|
3060
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3061
|
+
ConfigFormActions,
|
|
3062
|
+
{
|
|
3063
|
+
cancelLabel: t("cancel"),
|
|
3064
|
+
saveLabel: t("save"),
|
|
3065
|
+
onCancel,
|
|
3066
|
+
onSave: handleSave
|
|
3067
|
+
}
|
|
3068
|
+
)
|
|
3022
3069
|
] });
|
|
3023
3070
|
}
|
|
3024
3071
|
function EndNodeConfigForm({ config, onSave, onCancel }) {
|
|
3025
3072
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow.endNodeConfig");
|
|
3026
3073
|
const [outputVariables, setOutputVariables] = react.useState([...config.outputVariables]);
|
|
3027
|
-
const [newVariable, setNewVariable] = react.useState("");
|
|
3028
|
-
const handleAddVariable = () => {
|
|
3029
|
-
const trimmed = newVariable.trim();
|
|
3030
|
-
if (trimmed && !outputVariables.includes(trimmed)) {
|
|
3031
|
-
setOutputVariables([...outputVariables, trimmed]);
|
|
3032
|
-
setNewVariable("");
|
|
3033
|
-
}
|
|
3034
|
-
};
|
|
3035
|
-
const handleRemoveVariable = (variable) => {
|
|
3036
|
-
setOutputVariables(outputVariables.filter((existingVariable) => existingVariable !== variable));
|
|
3037
|
-
};
|
|
3038
|
-
const handleKeyDown = (event) => {
|
|
3039
|
-
if (event.key === "Enter") {
|
|
3040
|
-
event.preventDefault();
|
|
3041
|
-
handleAddVariable();
|
|
3042
|
-
}
|
|
3043
|
-
};
|
|
3044
3074
|
const handleSave = () => {
|
|
3045
3075
|
onSave({ ...config, outputVariables });
|
|
3046
3076
|
};
|
|
3047
3077
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3048
3078
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3049
|
-
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300", children: t("outputVariablesLabel") }),
|
|
3050
3079
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 text-xs text-gray-500 dark:text-gray-400", children: t("outputVariablesHelp") }),
|
|
3051
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
|
|
3052
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3053
|
-
"input",
|
|
3054
|
-
{
|
|
3055
|
-
type: "text",
|
|
3056
|
-
value: newVariable,
|
|
3057
|
-
onChange: (event) => setNewVariable(event.target.value),
|
|
3058
|
-
onKeyDown: handleKeyDown,
|
|
3059
|
-
placeholder: t("variablePlaceholder"),
|
|
3060
|
-
className: "w-full flex-1 rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm text-gray-900 placeholder-gray-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-400/20 dark:border-gray-600 dark:bg-gray-800 dark:text-white dark:placeholder-gray-500"
|
|
3061
|
-
}
|
|
3062
|
-
),
|
|
3063
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3064
|
-
"button",
|
|
3065
|
-
{
|
|
3066
|
-
type: "button",
|
|
3067
|
-
onClick: handleAddVariable,
|
|
3068
|
-
className: "text-sm text-indigo-600 hover:text-indigo-700 dark:text-indigo-400",
|
|
3069
|
-
children: t("addVariable")
|
|
3070
|
-
}
|
|
3071
|
-
)
|
|
3072
|
-
] }),
|
|
3073
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2 flex flex-wrap gap-2", children: outputVariables.map((variable) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3074
|
-
"span",
|
|
3075
|
-
{
|
|
3076
|
-
className: "inline-flex items-center gap-1 rounded-full bg-red-100 px-2.5 py-1 text-xs font-medium text-red-700 dark:bg-red-500/20 dark:text-red-300",
|
|
3077
|
-
children: [
|
|
3078
|
-
variable,
|
|
3079
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3080
|
-
"button",
|
|
3081
|
-
{
|
|
3082
|
-
type: "button",
|
|
3083
|
-
onClick: () => handleRemoveVariable(variable),
|
|
3084
|
-
className: "text-sm text-red-500 hover:text-red-600",
|
|
3085
|
-
"aria-label": `Remove ${variable}`,
|
|
3086
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(outline.XMarkIcon, { className: "h-3 w-3" })
|
|
3087
|
-
}
|
|
3088
|
-
)
|
|
3089
|
-
]
|
|
3090
|
-
},
|
|
3091
|
-
variable
|
|
3092
|
-
)) })
|
|
3093
|
-
] }),
|
|
3094
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 pt-4 border-t border-gray-200 dark:border-gray-700", children: [
|
|
3095
3080
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3096
|
-
|
|
3081
|
+
VariableListEditor,
|
|
3097
3082
|
{
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
|
|
3104
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3105
|
-
"button",
|
|
3106
|
-
{
|
|
3107
|
-
type: "button",
|
|
3108
|
-
onClick: handleSave,
|
|
3109
|
-
className: "rounded-lg bg-indigo-600 px-4 py-2 text-sm font-medium text-white hover:bg-indigo-700 dark:bg-indigo-500 dark:hover:bg-indigo-600",
|
|
3110
|
-
children: t("save")
|
|
3083
|
+
variables: outputVariables,
|
|
3084
|
+
onChange: setOutputVariables,
|
|
3085
|
+
label: t("outputVariablesLabel"),
|
|
3086
|
+
placeholder: t("variablePlaceholder"),
|
|
3087
|
+
addLabel: t("addVariable"),
|
|
3088
|
+
color: "red"
|
|
3111
3089
|
}
|
|
3112
3090
|
)
|
|
3113
|
-
] })
|
|
3114
|
-
|
|
3115
|
-
|
|
3116
|
-
|
|
3117
|
-
|
|
3118
|
-
|
|
3119
|
-
|
|
3120
|
-
|
|
3121
|
-
|
|
3122
|
-
|
|
3123
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", children: [
|
|
3124
|
-
/* @__PURE__ */ jsxRuntime.jsx(chunkEVX2CFNL_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
|
|
3125
|
-
/* @__PURE__ */ jsxRuntime.jsx(chunkEVX2CFNL_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
|
|
3091
|
+
] }),
|
|
3092
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3093
|
+
ConfigFormActions,
|
|
3094
|
+
{
|
|
3095
|
+
cancelLabel: t("cancel"),
|
|
3096
|
+
saveLabel: t("save"),
|
|
3097
|
+
onCancel,
|
|
3098
|
+
onSave: handleSave
|
|
3099
|
+
}
|
|
3100
|
+
)
|
|
3126
3101
|
] });
|
|
3127
3102
|
}
|
|
3128
3103
|
var OPERATOR_OPTIONS = [
|
|
@@ -3171,7 +3146,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3171
3146
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
|
|
3172
3147
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("conditionsLabel") }),
|
|
3173
3148
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3174
|
-
|
|
3149
|
+
chunk4XID6LOC_js.Button,
|
|
3175
3150
|
{
|
|
3176
3151
|
type: "button",
|
|
3177
3152
|
onClick: handleAddCondition,
|
|
@@ -3182,7 +3157,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3182
3157
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: conditions.map((condition, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-2 rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50", children: [
|
|
3183
3158
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid flex-1 grid-cols-3 gap-2", children: [
|
|
3184
3159
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3185
|
-
|
|
3160
|
+
chunk4XID6LOC_js.FormInput,
|
|
3186
3161
|
{
|
|
3187
3162
|
type: "text",
|
|
3188
3163
|
label: t("variableLabel"),
|
|
@@ -3193,7 +3168,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3193
3168
|
}
|
|
3194
3169
|
) }),
|
|
3195
3170
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3196
|
-
|
|
3171
|
+
chunk4XID6LOC_js.FormSelect,
|
|
3197
3172
|
{
|
|
3198
3173
|
label: t("operatorLabel"),
|
|
3199
3174
|
value: condition.operator,
|
|
@@ -3203,7 +3178,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3203
3178
|
}
|
|
3204
3179
|
) }),
|
|
3205
3180
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3206
|
-
|
|
3181
|
+
chunk4XID6LOC_js.FormInput,
|
|
3207
3182
|
{
|
|
3208
3183
|
type: "text",
|
|
3209
3184
|
label: t("valueLabel"),
|
|
@@ -3215,7 +3190,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3215
3190
|
) })
|
|
3216
3191
|
] }),
|
|
3217
3192
|
conditions.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3218
|
-
|
|
3193
|
+
chunk4XID6LOC_js.IconButton,
|
|
3219
3194
|
{
|
|
3220
3195
|
onClick: () => handleRemoveCondition(index),
|
|
3221
3196
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
|
|
@@ -3370,7 +3345,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3370
3345
|
};
|
|
3371
3346
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3372
3347
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3373
|
-
|
|
3348
|
+
chunk4XID6LOC_js.FormSelect,
|
|
3374
3349
|
{
|
|
3375
3350
|
label: t("methodLabel"),
|
|
3376
3351
|
value: method,
|
|
@@ -3379,7 +3354,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3379
3354
|
}
|
|
3380
3355
|
),
|
|
3381
3356
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3382
|
-
|
|
3357
|
+
chunk4XID6LOC_js.FormInput,
|
|
3383
3358
|
{
|
|
3384
3359
|
type: "text",
|
|
3385
3360
|
label: t("urlLabel"),
|
|
@@ -3392,7 +3367,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3392
3367
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
|
|
3393
3368
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("headersLabel") }),
|
|
3394
3369
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3395
|
-
|
|
3370
|
+
chunk4XID6LOC_js.Button,
|
|
3396
3371
|
{
|
|
3397
3372
|
type: "button",
|
|
3398
3373
|
onClick: handleAddHeader,
|
|
@@ -3402,7 +3377,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3402
3377
|
] }),
|
|
3403
3378
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-2", children: headerEntries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3404
3379
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3405
|
-
|
|
3380
|
+
chunk4XID6LOC_js.FormInput,
|
|
3406
3381
|
{
|
|
3407
3382
|
type: "text",
|
|
3408
3383
|
value: entry.key,
|
|
@@ -3412,7 +3387,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3412
3387
|
}
|
|
3413
3388
|
),
|
|
3414
3389
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3415
|
-
|
|
3390
|
+
chunk4XID6LOC_js.FormInput,
|
|
3416
3391
|
{
|
|
3417
3392
|
type: "text",
|
|
3418
3393
|
value: entry.value,
|
|
@@ -3422,7 +3397,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3422
3397
|
}
|
|
3423
3398
|
),
|
|
3424
3399
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3425
|
-
|
|
3400
|
+
chunk4XID6LOC_js.IconButton,
|
|
3426
3401
|
{
|
|
3427
3402
|
onClick: () => handleRemoveHeader(index),
|
|
3428
3403
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
|
|
@@ -3434,7 +3409,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3434
3409
|
] }, index)) })
|
|
3435
3410
|
] }),
|
|
3436
3411
|
method !== "GET" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3437
|
-
|
|
3412
|
+
chunk4XID6LOC_js.FormTextarea,
|
|
3438
3413
|
{
|
|
3439
3414
|
label: t("bodyLabel"),
|
|
3440
3415
|
value: body,
|
|
@@ -3445,7 +3420,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3445
3420
|
}
|
|
3446
3421
|
),
|
|
3447
3422
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3448
|
-
|
|
3423
|
+
chunk4XID6LOC_js.FormInput,
|
|
3449
3424
|
{
|
|
3450
3425
|
type: "number",
|
|
3451
3426
|
label: t("timeoutLabel"),
|
|
@@ -3476,7 +3451,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3476
3451
|
};
|
|
3477
3452
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3478
3453
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3479
|
-
|
|
3454
|
+
chunk4XID6LOC_js.FormTextarea,
|
|
3480
3455
|
{
|
|
3481
3456
|
label: t("templateLabel"),
|
|
3482
3457
|
value: template,
|
|
@@ -3487,7 +3462,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3487
3462
|
}
|
|
3488
3463
|
),
|
|
3489
3464
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3490
|
-
|
|
3465
|
+
chunk4XID6LOC_js.FormInput,
|
|
3491
3466
|
{
|
|
3492
3467
|
type: "text",
|
|
3493
3468
|
label: t("outputVariableLabel"),
|
|
@@ -3516,7 +3491,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3516
3491
|
};
|
|
3517
3492
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3518
3493
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3519
|
-
|
|
3494
|
+
chunk4XID6LOC_js.FormInput,
|
|
3520
3495
|
{
|
|
3521
3496
|
type: "text",
|
|
3522
3497
|
label: t("iteratorVariableLabel"),
|
|
@@ -3526,7 +3501,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3526
3501
|
}
|
|
3527
3502
|
),
|
|
3528
3503
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3529
|
-
|
|
3504
|
+
chunk4XID6LOC_js.FormInput,
|
|
3530
3505
|
{
|
|
3531
3506
|
type: "number",
|
|
3532
3507
|
label: t("maxIterationsLabel"),
|
|
@@ -3557,7 +3532,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3557
3532
|
};
|
|
3558
3533
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3559
3534
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3560
|
-
|
|
3535
|
+
chunk4XID6LOC_js.FormInput,
|
|
3561
3536
|
{
|
|
3562
3537
|
type: "text",
|
|
3563
3538
|
label: t("sourceIdLabel"),
|
|
@@ -3567,7 +3542,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3567
3542
|
}
|
|
3568
3543
|
),
|
|
3569
3544
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3570
|
-
|
|
3545
|
+
chunk4XID6LOC_js.FormInput,
|
|
3571
3546
|
{
|
|
3572
3547
|
type: "number",
|
|
3573
3548
|
label: t("topKLabel"),
|
|
@@ -3578,7 +3553,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3578
3553
|
}
|
|
3579
3554
|
),
|
|
3580
3555
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3581
|
-
|
|
3556
|
+
chunk4XID6LOC_js.FormInput,
|
|
3582
3557
|
{
|
|
3583
3558
|
type: "number",
|
|
3584
3559
|
label: t("similarityThresholdLabel"),
|
|
@@ -3604,29 +3579,12 @@ function AnswerNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3604
3579
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow.answerNodeConfig");
|
|
3605
3580
|
const [outputTemplate, setOutputTemplate] = react.useState(config.outputTemplate);
|
|
3606
3581
|
const [outputVariables, setOutputVariables] = react.useState([...config.outputVariables]);
|
|
3607
|
-
const [newVariable, setNewVariable] = react.useState("");
|
|
3608
|
-
const handleAddVariable = () => {
|
|
3609
|
-
const trimmed = newVariable.trim();
|
|
3610
|
-
if (trimmed && !outputVariables.includes(trimmed)) {
|
|
3611
|
-
setOutputVariables([...outputVariables, trimmed]);
|
|
3612
|
-
setNewVariable("");
|
|
3613
|
-
}
|
|
3614
|
-
};
|
|
3615
|
-
const handleRemoveVariable = (variable) => {
|
|
3616
|
-
setOutputVariables(outputVariables.filter((existingVariable) => existingVariable !== variable));
|
|
3617
|
-
};
|
|
3618
|
-
const handleKeyDown = (event) => {
|
|
3619
|
-
if (event.key === "Enter") {
|
|
3620
|
-
event.preventDefault();
|
|
3621
|
-
handleAddVariable();
|
|
3622
|
-
}
|
|
3623
|
-
};
|
|
3624
3582
|
const handleSave = () => {
|
|
3625
3583
|
onSave({ ...config, outputTemplate, outputVariables });
|
|
3626
3584
|
};
|
|
3627
3585
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3628
3586
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3629
|
-
|
|
3587
|
+
chunk4XID6LOC_js.FormTextarea,
|
|
3630
3588
|
{
|
|
3631
3589
|
label: t("outputTemplateLabel"),
|
|
3632
3590
|
hint: t("outputTemplateHelp"),
|
|
@@ -3637,50 +3595,17 @@ function AnswerNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3637
3595
|
className: "font-mono text-xs"
|
|
3638
3596
|
}
|
|
3639
3597
|
),
|
|
3640
|
-
/* @__PURE__ */ jsxRuntime.
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
className: "flex-1"
|
|
3652
|
-
}
|
|
3653
|
-
),
|
|
3654
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3655
|
-
chunkEVX2CFNL_js.Button,
|
|
3656
|
-
{
|
|
3657
|
-
type: "button",
|
|
3658
|
-
onClick: handleAddVariable,
|
|
3659
|
-
children: t("addVariable")
|
|
3660
|
-
}
|
|
3661
|
-
)
|
|
3662
|
-
] }),
|
|
3663
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2 flex flex-wrap gap-2", children: outputVariables.map((variable) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3664
|
-
"span",
|
|
3665
|
-
{
|
|
3666
|
-
className: "inline-flex items-center gap-1 rounded-full bg-blue-100 px-2.5 py-1 text-xs font-medium text-blue-700 dark:bg-blue-500/20 dark:text-blue-300",
|
|
3667
|
-
children: [
|
|
3668
|
-
variable,
|
|
3669
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3670
|
-
chunkEVX2CFNL_js.IconButton,
|
|
3671
|
-
{
|
|
3672
|
-
onClick: () => handleRemoveVariable(variable),
|
|
3673
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.XMarkIcon, { className: "h-3 w-3" }),
|
|
3674
|
-
label: `Remove ${variable}`,
|
|
3675
|
-
size: "sm",
|
|
3676
|
-
color: "ios-red"
|
|
3677
|
-
}
|
|
3678
|
-
)
|
|
3679
|
-
]
|
|
3680
|
-
},
|
|
3681
|
-
variable
|
|
3682
|
-
)) })
|
|
3683
|
-
] }),
|
|
3598
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3599
|
+
VariableListEditor,
|
|
3600
|
+
{
|
|
3601
|
+
variables: outputVariables,
|
|
3602
|
+
onChange: setOutputVariables,
|
|
3603
|
+
label: t("outputVariablesLabel"),
|
|
3604
|
+
placeholder: t("variablePlaceholder"),
|
|
3605
|
+
addLabel: t("addVariable"),
|
|
3606
|
+
color: "blue"
|
|
3607
|
+
}
|
|
3608
|
+
),
|
|
3684
3609
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3685
3610
|
ConfigFormActions,
|
|
3686
3611
|
{
|
|
@@ -4075,79 +4000,25 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4075
4000
|
const [inputVariables, setInputVariables] = react.useState([...config.inputVariables]);
|
|
4076
4001
|
const [outputVariable, setOutputVariable] = react.useState(config.outputVariable);
|
|
4077
4002
|
const [aggregationMode, setAggregationMode] = react.useState(config.aggregationMode);
|
|
4078
|
-
const [newVariable, setNewVariable] = react.useState("");
|
|
4079
|
-
const handleAddVariable = () => {
|
|
4080
|
-
const trimmed = newVariable.trim();
|
|
4081
|
-
if (trimmed && !inputVariables.includes(trimmed)) {
|
|
4082
|
-
setInputVariables([...inputVariables, trimmed]);
|
|
4083
|
-
setNewVariable("");
|
|
4084
|
-
}
|
|
4085
|
-
};
|
|
4086
|
-
const handleRemoveVariable = (index) => {
|
|
4087
|
-
setInputVariables(inputVariables.filter((_, variableIndex) => variableIndex !== index));
|
|
4088
|
-
};
|
|
4089
|
-
const handleVariableChange = (index, value) => {
|
|
4090
|
-
setInputVariables(inputVariables.map((variable, variableIndex) => variableIndex === index ? value : variable));
|
|
4091
|
-
};
|
|
4092
|
-
const handleKeyDown = (event) => {
|
|
4093
|
-
if (event.key === "Enter") {
|
|
4094
|
-
event.preventDefault();
|
|
4095
|
-
handleAddVariable();
|
|
4096
|
-
}
|
|
4097
|
-
};
|
|
4098
4003
|
const handleSave = () => {
|
|
4099
4004
|
onSave({ ...config, inputVariables, outputVariable, aggregationMode });
|
|
4100
4005
|
};
|
|
4101
4006
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4102
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
4103
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300", children: t("inputVariablesLabel") }),
|
|
4104
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
|
|
4105
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4106
|
-
chunkEVX2CFNL_js.FormInput,
|
|
4107
|
-
{
|
|
4108
|
-
type: "text",
|
|
4109
|
-
value: newVariable,
|
|
4110
|
-
onValueChange: setNewVariable,
|
|
4111
|
-
onKeyDown: handleKeyDown,
|
|
4112
|
-
placeholder: t("variablePlaceholder"),
|
|
4113
|
-
className: "flex-1"
|
|
4114
|
-
}
|
|
4115
|
-
),
|
|
4116
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4117
|
-
chunkEVX2CFNL_js.Button,
|
|
4118
|
-
{
|
|
4119
|
-
type: "button",
|
|
4120
|
-
onClick: handleAddVariable,
|
|
4121
|
-
children: t("addInputVariable")
|
|
4122
|
-
}
|
|
4123
|
-
)
|
|
4124
|
-
] }),
|
|
4125
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3 space-y-2", children: inputVariables.map((variable, index) => /* @__PURE__ */ jsxRuntime.jsx(chunkEVX2CFNL_js.Card, { className: "border-purple-200/70 dark:border-purple-500/30", children: /* @__PURE__ */ jsxRuntime.jsx(chunkEVX2CFNL_js.CardContent, { className: "p-3", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
4126
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex min-w-6 items-center justify-center rounded-full bg-purple-100 px-1.5 py-0.5 text-[10px] font-semibold text-purple-700 dark:bg-purple-500/20 dark:text-purple-300", children: index + 1 }),
|
|
4127
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4128
|
-
chunkEVX2CFNL_js.FormInput,
|
|
4129
|
-
{
|
|
4130
|
-
type: "text",
|
|
4131
|
-
value: variable,
|
|
4132
|
-
onValueChange: (value) => handleVariableChange(index, value),
|
|
4133
|
-
placeholder: t("variablePlaceholder"),
|
|
4134
|
-
className: "flex-1"
|
|
4135
|
-
}
|
|
4136
|
-
),
|
|
4137
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4138
|
-
chunkEVX2CFNL_js.IconButton,
|
|
4139
|
-
{
|
|
4140
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.XMarkIcon, { className: "h-3 w-3" }),
|
|
4141
|
-
label: `Remove ${variable || index + 1}`,
|
|
4142
|
-
onClick: () => handleRemoveVariable(index),
|
|
4143
|
-
size: "sm",
|
|
4144
|
-
color: "ios-red"
|
|
4145
|
-
}
|
|
4146
|
-
)
|
|
4147
|
-
] }) }) }, `${index}-${variable}`)) })
|
|
4148
|
-
] }),
|
|
4149
4007
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4150
|
-
|
|
4008
|
+
VariableListEditor,
|
|
4009
|
+
{
|
|
4010
|
+
variables: inputVariables,
|
|
4011
|
+
onChange: setInputVariables,
|
|
4012
|
+
label: t("inputVariablesLabel"),
|
|
4013
|
+
placeholder: t("variablePlaceholder"),
|
|
4014
|
+
addLabel: t("addInputVariable"),
|
|
4015
|
+
color: "purple",
|
|
4016
|
+
numbered: true,
|
|
4017
|
+
editable: true
|
|
4018
|
+
}
|
|
4019
|
+
),
|
|
4020
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4021
|
+
chunk4XID6LOC_js.FormInput,
|
|
4151
4022
|
{
|
|
4152
4023
|
type: "text",
|
|
4153
4024
|
label: t("outputVariableLabel"),
|
|
@@ -4157,7 +4028,7 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4157
4028
|
}
|
|
4158
4029
|
),
|
|
4159
4030
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4160
|
-
|
|
4031
|
+
chunk4XID6LOC_js.FormSelect,
|
|
4161
4032
|
{
|
|
4162
4033
|
label: t("aggregationModeLabel"),
|
|
4163
4034
|
value: aggregationMode,
|
|
@@ -4190,7 +4061,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4190
4061
|
};
|
|
4191
4062
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4192
4063
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4193
|
-
|
|
4064
|
+
chunk4XID6LOC_js.FormSelect,
|
|
4194
4065
|
{
|
|
4195
4066
|
label: t("extractionModeLabel"),
|
|
4196
4067
|
value: extractionMode,
|
|
@@ -4199,7 +4070,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4199
4070
|
}
|
|
4200
4071
|
),
|
|
4201
4072
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4202
|
-
|
|
4073
|
+
chunk4XID6LOC_js.FormInput,
|
|
4203
4074
|
{
|
|
4204
4075
|
type: "text",
|
|
4205
4076
|
label: t("outputVariableLabel"),
|
|
@@ -4376,7 +4247,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4376
4247
|
};
|
|
4377
4248
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4378
4249
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4379
|
-
|
|
4250
|
+
chunk4XID6LOC_js.FormInput,
|
|
4380
4251
|
{
|
|
4381
4252
|
type: "text",
|
|
4382
4253
|
label: t("iteratorVariableLabel"),
|
|
@@ -4386,7 +4257,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4386
4257
|
}
|
|
4387
4258
|
),
|
|
4388
4259
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4389
|
-
|
|
4260
|
+
chunk4XID6LOC_js.FormInput,
|
|
4390
4261
|
{
|
|
4391
4262
|
type: "text",
|
|
4392
4263
|
label: t("itemVariableLabel"),
|
|
@@ -4396,7 +4267,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4396
4267
|
}
|
|
4397
4268
|
),
|
|
4398
4269
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4399
|
-
|
|
4270
|
+
chunk4XID6LOC_js.FormInput,
|
|
4400
4271
|
{
|
|
4401
4272
|
type: "text",
|
|
4402
4273
|
label: t("indexVariableLabel"),
|
|
@@ -4990,7 +4861,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4990
4861
|
};
|
|
4991
4862
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4992
4863
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4993
|
-
|
|
4864
|
+
chunk4XID6LOC_js.FormInput,
|
|
4994
4865
|
{
|
|
4995
4866
|
type: "text",
|
|
4996
4867
|
label: translations("labelField"),
|
|
@@ -5000,7 +4871,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5000
4871
|
}
|
|
5001
4872
|
),
|
|
5002
4873
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5003
|
-
|
|
4874
|
+
chunk4XID6LOC_js.FormTextarea,
|
|
5004
4875
|
{
|
|
5005
4876
|
label: translations("descriptionField"),
|
|
5006
4877
|
value: description,
|
|
@@ -5129,14 +5000,16 @@ function LogicNodeModal({ onSave, entities = [], datasources = [], onLoadTables,
|
|
|
5129
5000
|
}
|
|
5130
5001
|
};
|
|
5131
5002
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5132
|
-
|
|
5003
|
+
chunk4XID6LOC_js.GlassModalShell,
|
|
5133
5004
|
{
|
|
5134
5005
|
open,
|
|
5135
5006
|
onClose: closeModal,
|
|
5136
5007
|
title,
|
|
5137
5008
|
subtitle: nodeLabel,
|
|
5009
|
+
label: t("nodeConfig"),
|
|
5138
5010
|
icon: IconComponent ? /* @__PURE__ */ jsxRuntime.jsx(IconComponent, { className: "h-5 w-5 text-white" }) : void 0,
|
|
5139
5011
|
gradient,
|
|
5012
|
+
maxWidth: "2xl",
|
|
5140
5013
|
children: renderForm()
|
|
5141
5014
|
}
|
|
5142
5015
|
);
|
|
@@ -5187,7 +5060,7 @@ function NodeContextMenu({ position, targetId, onClose, onEdit, onDuplicate, onC
|
|
|
5187
5060
|
}
|
|
5188
5061
|
];
|
|
5189
5062
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5190
|
-
|
|
5063
|
+
chunk4XID6LOC_js.ContextMenu,
|
|
5191
5064
|
{
|
|
5192
5065
|
position,
|
|
5193
5066
|
onClose,
|
|
@@ -5244,7 +5117,7 @@ function PanelContextMenu({ position, onClose, onPaste, onSelectAll, onFitView,
|
|
|
5244
5117
|
}
|
|
5245
5118
|
];
|
|
5246
5119
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5247
|
-
|
|
5120
|
+
chunk4XID6LOC_js.ContextMenu,
|
|
5248
5121
|
{
|
|
5249
5122
|
position,
|
|
5250
5123
|
onClose,
|
|
@@ -5391,7 +5264,7 @@ function SelectionContextMenu({
|
|
|
5391
5264
|
}
|
|
5392
5265
|
];
|
|
5393
5266
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5394
|
-
|
|
5267
|
+
chunk4XID6LOC_js.ContextMenu,
|
|
5395
5268
|
{
|
|
5396
5269
|
position,
|
|
5397
5270
|
onClose,
|
|
@@ -7220,7 +7093,6 @@ exports.VariableAssignerFlowNode = VariableAssignerFlowNode;
|
|
|
7220
7093
|
exports.WorkflowBuilderProvider = WorkflowBuilderProvider;
|
|
7221
7094
|
exports.WorkflowCanvas = WorkflowCanvas;
|
|
7222
7095
|
exports.Workspace = Workspace;
|
|
7223
|
-
exports.WorkspaceModal = WorkspaceModal;
|
|
7224
7096
|
exports.getCompatibleModels = getCompatibleModels;
|
|
7225
7097
|
exports.getDefaultFrameworkForModel = getDefaultFrameworkForModel;
|
|
7226
7098
|
exports.getEntityBadgeColor = getEntityBadgeColor;
|
|
@@ -7234,5 +7106,5 @@ exports.useModalStore = useModalStore;
|
|
|
7234
7106
|
exports.useWorkflowBuilderClient = useWorkflowBuilderClient;
|
|
7235
7107
|
exports.useWorkflowBuilderClientOptional = useWorkflowBuilderClientOptional;
|
|
7236
7108
|
exports.useWorkflowStore = useWorkflowStore;
|
|
7237
|
-
//# sourceMappingURL=chunk-
|
|
7238
|
-
//# sourceMappingURL=chunk-
|
|
7109
|
+
//# sourceMappingURL=chunk-TKLALDY4.js.map
|
|
7110
|
+
//# sourceMappingURL=chunk-TKLALDY4.js.map
|