@datatechsolutions/ui 3.12.1 → 3.13.1
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/graph-node.js +6 -6
- package/dist/astrlabe/graph-node.mjs +2 -2
- package/dist/astrlabe/index.js +114 -114
- package/dist/astrlabe/index.mjs +6 -6
- package/dist/astrlabe/workflow-canvas.js +6 -6
- package/dist/astrlabe/workflow-canvas.mjs +5 -5
- package/dist/{chunk-BPMYNE7S.mjs → chunk-3VCSMSJB.mjs} +6 -6
- package/dist/{chunk-BPMYNE7S.mjs.map → chunk-3VCSMSJB.mjs.map} +1 -1
- package/dist/{chunk-OM5NNUD2.mjs → chunk-4MNKVDTJ.mjs} +9 -8
- package/dist/chunk-4MNKVDTJ.mjs.map +1 -0
- package/dist/{chunk-PIIY2Z2O.mjs → chunk-4QCO4CBC.mjs} +4 -4
- package/dist/{chunk-PIIY2Z2O.mjs.map → chunk-4QCO4CBC.mjs.map} +1 -1
- package/dist/{chunk-4D23CQZM.mjs → chunk-4VEQJAXJ.mjs} +6 -6
- package/dist/{chunk-4D23CQZM.mjs.map → chunk-4VEQJAXJ.mjs.map} +1 -1
- package/dist/{chunk-FKRIQYRG.js → chunk-4Z5NZINA.js} +431 -481
- package/dist/chunk-4Z5NZINA.js.map +1 -0
- package/dist/{chunk-Z75CEP4V.js → chunk-54T5F65C.js} +29 -29
- package/dist/{chunk-Z75CEP4V.js.map → chunk-54T5F65C.js.map} +1 -1
- package/dist/{chunk-V3UZCOZI.js → chunk-7IAWXG43.js} +35 -35
- package/dist/{chunk-V3UZCOZI.js.map → chunk-7IAWXG43.js.map} +1 -1
- package/dist/{chunk-PLEWG2L7.js → chunk-AC54BNSK.js} +15 -15
- package/dist/{chunk-PLEWG2L7.js.map → chunk-AC54BNSK.js.map} +1 -1
- package/dist/{chunk-ID55ABBB.js → chunk-B3TA74C4.js} +100 -100
- package/dist/chunk-B3TA74C4.js.map +1 -0
- package/dist/{chunk-5OZTI7TR.js → chunk-CKY2QIRR.js} +6 -6
- package/dist/{chunk-5OZTI7TR.js.map → chunk-CKY2QIRR.js.map} +1 -1
- package/dist/{chunk-EZQ2D47U.js → chunk-CVEI4RQP.js} +4 -4
- package/dist/{chunk-EZQ2D47U.js.map → chunk-CVEI4RQP.js.map} +1 -1
- package/dist/{chunk-NK4H3JWN.mjs → chunk-DJHNSBIR.mjs} +63 -100
- package/dist/chunk-DJHNSBIR.mjs.map +1 -0
- package/dist/{chunk-P4RVGMZL.js → chunk-DTFU3ZTD.js} +5 -33
- package/dist/chunk-DTFU3ZTD.js.map +1 -0
- package/dist/{chunk-BHOT22QL.js → chunk-EBARYRSA.js} +2 -2
- package/dist/{chunk-BHOT22QL.js.map → chunk-EBARYRSA.js.map} +1 -1
- package/dist/{chunk-QGLGQXJE.js → chunk-FV42SSLP.js} +10 -10
- package/dist/chunk-FV42SSLP.js.map +1 -0
- package/dist/{chunk-RT264BD4.mjs → chunk-M4KRQXOT.mjs} +4 -4
- package/dist/{chunk-RT264BD4.mjs.map → chunk-M4KRQXOT.mjs.map} +1 -1
- package/dist/{chunk-WR55H7DH.mjs → chunk-O4RZCDP2.mjs} +2 -2
- package/dist/{chunk-WR55H7DH.mjs.map → chunk-O4RZCDP2.mjs.map} +1 -1
- package/dist/{chunk-VYU2FYDE.js → chunk-PM7A5I3X.js} +146 -183
- package/dist/chunk-PM7A5I3X.js.map +1 -0
- package/dist/{chunk-TDNBO3V7.js → chunk-Q7QPHZOV.js} +74 -74
- package/dist/{chunk-TDNBO3V7.js.map → chunk-Q7QPHZOV.js.map} +1 -1
- package/dist/{chunk-OW5LSEHU.mjs → chunk-QEACOJXX.mjs} +74 -74
- package/dist/chunk-QEACOJXX.mjs.map +1 -0
- package/dist/{chunk-N5GQIT7A.mjs → chunk-RMPXGEFL.mjs} +11 -10
- package/dist/chunk-RMPXGEFL.mjs.map +1 -0
- package/dist/{chunk-QSCWV47U.js → chunk-RPNMDGRA.js} +50 -50
- package/dist/chunk-RPNMDGRA.js.map +1 -0
- package/dist/{chunk-5TLKFOEL.mjs → chunk-RSCRIDMW.mjs} +275 -313
- package/dist/chunk-RSCRIDMW.mjs.map +1 -0
- package/dist/{chunk-XGAPZT4J.js → chunk-RUZPOHJW.js} +48 -47
- package/dist/chunk-RUZPOHJW.js.map +1 -0
- package/dist/{chunk-ULKZGM2T.js → chunk-RWZ2PLMQ.js} +177 -177
- package/dist/chunk-RWZ2PLMQ.js.map +1 -0
- package/dist/{chunk-UVFWKDRO.mjs → chunk-SCGICCQM.mjs} +15 -15
- package/dist/chunk-SCGICCQM.mjs.map +1 -0
- package/dist/{chunk-EDI46QA7.mjs → chunk-TRNDFSM6.mjs} +274 -324
- package/dist/chunk-TRNDFSM6.mjs.map +1 -0
- package/dist/{chunk-LRNVB7MO.js → chunk-ULSG4JLR.js} +6 -6
- package/dist/{chunk-LRNVB7MO.js.map → chunk-ULSG4JLR.js.map} +1 -1
- package/dist/{chunk-MFF37C24.js → chunk-UPWJRCAD.js} +445 -483
- package/dist/chunk-UPWJRCAD.js.map +1 -0
- package/dist/{chunk-RBH723MG.mjs → chunk-UUTTS3VV.mjs} +45 -45
- package/dist/chunk-UUTTS3VV.mjs.map +1 -0
- package/dist/{chunk-MYHBXIO2.js → chunk-VCL5LDS5.js} +42 -41
- package/dist/chunk-VCL5LDS5.js.map +1 -0
- package/dist/{chunk-PLTLRL2V.mjs → chunk-VPRAESA7.mjs} +3 -3
- package/dist/{chunk-PLTLRL2V.mjs.map → chunk-VPRAESA7.mjs.map} +1 -1
- package/dist/{chunk-HTODLUKG.js → chunk-VWZ53TE2.js} +12 -12
- package/dist/{chunk-HTODLUKG.js.map → chunk-VWZ53TE2.js.map} +1 -1
- package/dist/{chunk-3VYD7QL2.mjs → chunk-WX44DAQD.mjs} +9 -9
- package/dist/chunk-WX44DAQD.mjs.map +1 -0
- package/dist/{chunk-DJ33CSGJ.mjs → chunk-XYMHIZ3K.mjs} +5 -33
- package/dist/chunk-XYMHIZ3K.mjs.map +1 -0
- package/dist/{chunk-YXN2K77G.js → chunk-Y5VN4SPH.js} +26 -3
- package/dist/chunk-Y5VN4SPH.js.map +1 -0
- package/dist/{chunk-NQGLSM46.mjs → chunk-Y65X2NHF.mjs} +4 -4
- package/dist/{chunk-NQGLSM46.mjs.map → chunk-Y65X2NHF.mjs.map} +1 -1
- package/dist/{chunk-YYNGXKUE.mjs → chunk-YHD6SJIN.mjs} +15 -15
- package/dist/{chunk-YYNGXKUE.mjs.map → chunk-YHD6SJIN.mjs.map} +1 -1
- package/dist/{chunk-7VJ7CMMT.mjs → chunk-ZEFNBGYI.mjs} +26 -3
- package/dist/chunk-ZEFNBGYI.mjs.map +1 -0
- package/dist/{chunk-WLNY3GVM.mjs → chunk-ZPV7X4ZE.mjs} +7 -7
- package/dist/{chunk-WLNY3GVM.mjs.map → chunk-ZPV7X4ZE.mjs.map} +1 -1
- package/dist/index.js +709 -709
- package/dist/index.mjs +3 -3
- package/dist/lib/i18n-context.d.mts +12 -4
- package/dist/lib/i18n-context.d.ts +12 -4
- package/dist/lib/i18n-context.js +6 -6
- package/dist/lib/i18n-context.mjs +1 -1
- package/dist/platform/admin/index.js +12 -12
- package/dist/platform/admin/index.mjs +6 -6
- package/dist/platform/agents-workspace.js +9 -9
- package/dist/platform/agents-workspace.mjs +8 -8
- package/dist/platform/app-shell.js +5 -5
- package/dist/platform/app-shell.mjs +4 -4
- package/dist/platform/auth/index.js +29 -29
- package/dist/platform/auth/index.mjs +6 -6
- package/dist/platform/billing/index.js +7 -7
- package/dist/platform/billing/index.mjs +5 -5
- package/dist/platform/impersonation/index.js +5 -5
- package/dist/platform/impersonation/index.mjs +4 -4
- package/dist/platform/index.d.mts +1 -1
- package/dist/platform/index.d.ts +1 -1
- package/dist/platform/index.js +112 -112
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/index.mjs +30 -30
- package/dist/platform/index.mjs.map +1 -1
- package/dist/platform/pages/index.d.mts +12 -2
- package/dist/platform/pages/index.d.ts +12 -2
- package/dist/platform/pages/index.js +451 -450
- package/dist/platform/pages/index.js.map +1 -1
- package/dist/platform/pages/index.mjs +51 -50
- package/dist/platform/pages/index.mjs.map +1 -1
- package/dist/platform/settings/index.js +9 -9
- package/dist/platform/settings/index.mjs +8 -8
- package/dist/platform/workflow-canvas-shell.js +7 -7
- package/dist/platform/workflow-canvas-shell.mjs +6 -6
- package/package.json +2 -1
- package/dist/chunk-3VYD7QL2.mjs.map +0 -1
- package/dist/chunk-5TLKFOEL.mjs.map +0 -1
- package/dist/chunk-7VJ7CMMT.mjs.map +0 -1
- package/dist/chunk-DJ33CSGJ.mjs.map +0 -1
- package/dist/chunk-EDI46QA7.mjs.map +0 -1
- package/dist/chunk-FKRIQYRG.js.map +0 -1
- package/dist/chunk-ID55ABBB.js.map +0 -1
- package/dist/chunk-MFF37C24.js.map +0 -1
- package/dist/chunk-MYHBXIO2.js.map +0 -1
- package/dist/chunk-N5GQIT7A.mjs.map +0 -1
- package/dist/chunk-NK4H3JWN.mjs.map +0 -1
- package/dist/chunk-OM5NNUD2.mjs.map +0 -1
- package/dist/chunk-OW5LSEHU.mjs.map +0 -1
- package/dist/chunk-P4RVGMZL.js.map +0 -1
- package/dist/chunk-QGLGQXJE.js.map +0 -1
- package/dist/chunk-QSCWV47U.js.map +0 -1
- package/dist/chunk-RBH723MG.mjs.map +0 -1
- package/dist/chunk-ULKZGM2T.js.map +0 -1
- package/dist/chunk-UVFWKDRO.mjs.map +0 -1
- package/dist/chunk-VYU2FYDE.js.map +0 -1
- package/dist/chunk-XGAPZT4J.js.map +0 -1
- package/dist/chunk-YXN2K77G.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { ToggleSwitch, StatusBadge, GlassModal, ContextMenu, FormInput, FormTextarea, FormSelect } from './chunk-
|
|
3
|
-
import { useTranslations, I18nProvider, createI18nFromMessages } from './chunk-
|
|
4
|
-
import { GraphNodeHeader, GraphNodeMeta, GraphNodeIconBubble, GraphNodeBadge } from './chunk-
|
|
5
|
-
import { Badge, Button, IconButton } from './chunk-
|
|
2
|
+
import { ToggleSwitch, StatusBadge, GlassModal, ContextMenu, FormInput, FormTextarea, FormSelect } from './chunk-QEACOJXX.mjs';
|
|
3
|
+
import { useTranslations, I18nProvider, createI18nFromMessages } from './chunk-ZEFNBGYI.mjs';
|
|
4
|
+
import { GraphNodeHeader, GraphNodeMeta, GraphNodeIconBubble, GraphNodeBadge } from './chunk-VPRAESA7.mjs';
|
|
5
|
+
import { Badge, Button, IconButton } from './chunk-O4RZCDP2.mjs';
|
|
6
6
|
import { getAgentTier, createDefaultLogicNodeConfig, applyDagreLayout } from './chunk-G7JQ4OCE.mjs';
|
|
7
7
|
import { memo, useState, useRef, useCallback, useEffect, lazy, createContext, useMemo, useContext } from 'react';
|
|
8
8
|
import { Position, NodeResizer, MarkerType, useReactFlow, getBezierPath, BaseEdge, EdgeLabelRenderer, Handle, ReactFlowProvider, useNodesState, useEdgesState, addEdge, BackgroundVariant } from '@xyflow/react';
|
|
@@ -894,10 +894,10 @@ var DraggableCommandBar = memo(function DraggableCommandBar2({
|
|
|
894
894
|
document.addEventListener("keydown", handleKeyDown);
|
|
895
895
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
896
896
|
}, [showShortcuts, onCloseShortcuts]);
|
|
897
|
-
const buttonClassName = "rounded-lg p-1.5 text-
|
|
897
|
+
const buttonClassName = "rounded-lg p-1.5 text-slate-600 transition-colors hover:bg-white/40 active:bg-white/60 dark:text-slate-400 dark:hover:bg-white/10 dark:active:bg-white/15";
|
|
898
898
|
const activeButtonClassName = "rounded-lg p-1.5 transition-colors hover:bg-white/40 dark:hover:bg-white/10 text-indigo-600 dark:text-indigo-400";
|
|
899
|
-
const inactiveButtonClassName = "rounded-lg p-1.5 transition-colors hover:bg-white/40 dark:hover:bg-white/10 text-
|
|
900
|
-
const dividerClassName = "mx-0.5 h-4 w-px bg-
|
|
899
|
+
const inactiveButtonClassName = "rounded-lg p-1.5 transition-colors hover:bg-white/40 dark:hover:bg-white/10 text-slate-400 dark:text-slate-500";
|
|
900
|
+
const dividerClassName = "mx-0.5 h-4 w-px bg-slate-400/30 dark:bg-white/10";
|
|
901
901
|
return /* @__PURE__ */ jsx(
|
|
902
902
|
"div",
|
|
903
903
|
{
|
|
@@ -917,7 +917,7 @@ var DraggableCommandBar = memo(function DraggableCommandBar2({
|
|
|
917
917
|
{
|
|
918
918
|
className: `${GLASS_CLASS} flex items-center gap-0.5 rounded-2xl px-2 py-1.5`,
|
|
919
919
|
children: [
|
|
920
|
-
/* @__PURE__ */ jsx("div", { className: "mr-0.5 flex cursor-grab items-center px-0.5 active:cursor-grabbing", children: /* @__PURE__ */ jsx(Bars2Icon, { className: "h-3.5 w-3.5 text-
|
|
920
|
+
/* @__PURE__ */ jsx("div", { className: "mr-0.5 flex cursor-grab items-center px-0.5 active:cursor-grabbing", children: /* @__PURE__ */ jsx(Bars2Icon, { className: "h-3.5 w-3.5 text-slate-400/70 dark:text-slate-500/70" }) }),
|
|
921
921
|
/* @__PURE__ */ jsx(
|
|
922
922
|
"button",
|
|
923
923
|
{
|
|
@@ -1044,7 +1044,7 @@ var DraggableCommandBar = memo(function DraggableCommandBar2({
|
|
|
1044
1044
|
onClick: (event) => event.stopPropagation(),
|
|
1045
1045
|
onPointerDown: (event) => event.stopPropagation(),
|
|
1046
1046
|
children: [
|
|
1047
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] font-semibold uppercase tracking-wider text-
|
|
1047
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] font-semibold uppercase tracking-wider text-slate-500 dark:text-slate-400", children: tWorkflow("shortcuts") }),
|
|
1048
1048
|
/* @__PURE__ */ jsx("div", { className: "space-y-1.5", children: [
|
|
1049
1049
|
{ keys: "V", label: tWorkflow("pointerMode") },
|
|
1050
1050
|
{ keys: "H", label: tWorkflow("handMode") },
|
|
@@ -1066,11 +1066,11 @@ var DraggableCommandBar = memo(function DraggableCommandBar2({
|
|
|
1066
1066
|
{ keys: "G", label: tWorkflow("toggleDots") },
|
|
1067
1067
|
{ keys: "M", label: tWorkflow("toggleMinimap") }
|
|
1068
1068
|
].map((shortcut) => /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
1069
|
-
/* @__PURE__ */ jsx("span", { className: "text-[11px] text-
|
|
1069
|
+
/* @__PURE__ */ jsx("span", { className: "text-[11px] text-slate-600 dark:text-slate-300", children: shortcut.label }),
|
|
1070
1070
|
/* @__PURE__ */ jsx("span", { className: "flex items-center gap-0.5", children: shortcut.keys.split(" ").map((key) => /* @__PURE__ */ jsx(
|
|
1071
1071
|
"kbd",
|
|
1072
1072
|
{
|
|
1073
|
-
className: "inline-flex min-w-[20px] items-center justify-center rounded-md bg-white/60 px-1.5 py-0.5 text-[10px] font-medium text-
|
|
1073
|
+
className: "inline-flex min-w-[20px] items-center justify-center rounded-md bg-white/60 px-1.5 py-0.5 text-[10px] font-medium text-slate-500 shadow-sm ring-1 ring-inset ring-slate-300/40 dark:bg-white/10 dark:text-slate-400 dark:ring-white/10",
|
|
1074
1074
|
children: key
|
|
1075
1075
|
},
|
|
1076
1076
|
key
|
|
@@ -1198,24 +1198,24 @@ function getDatasourceLogo(datasourceId, dialect) {
|
|
|
1198
1198
|
}
|
|
1199
1199
|
return null;
|
|
1200
1200
|
}
|
|
1201
|
-
var
|
|
1202
|
-
string: "
|
|
1203
|
-
varchar: "
|
|
1204
|
-
text: "
|
|
1205
|
-
integer: "
|
|
1206
|
-
int: "
|
|
1207
|
-
bigint: "
|
|
1208
|
-
number: "
|
|
1209
|
-
decimal: "
|
|
1210
|
-
float: "
|
|
1211
|
-
boolean: "
|
|
1212
|
-
date: "
|
|
1213
|
-
timestamp: "
|
|
1214
|
-
datetime: "
|
|
1215
|
-
json: "
|
|
1216
|
-
jsonb: "
|
|
1217
|
-
uuid: "
|
|
1218
|
-
array: "
|
|
1201
|
+
var TYPE_BADGE_COLORS = {
|
|
1202
|
+
string: "zinc",
|
|
1203
|
+
varchar: "zinc",
|
|
1204
|
+
text: "zinc",
|
|
1205
|
+
integer: "blue",
|
|
1206
|
+
int: "blue",
|
|
1207
|
+
bigint: "blue",
|
|
1208
|
+
number: "blue",
|
|
1209
|
+
decimal: "indigo",
|
|
1210
|
+
float: "indigo",
|
|
1211
|
+
boolean: "emerald",
|
|
1212
|
+
date: "amber",
|
|
1213
|
+
timestamp: "amber",
|
|
1214
|
+
datetime: "amber",
|
|
1215
|
+
json: "violet",
|
|
1216
|
+
jsonb: "violet",
|
|
1217
|
+
uuid: "teal",
|
|
1218
|
+
array: "pink"
|
|
1219
1219
|
};
|
|
1220
1220
|
var SIDEBAR_SECTIONS = [
|
|
1221
1221
|
{ id: "connection", label: "Connection", icon: CircleStackIcon },
|
|
@@ -1371,7 +1371,7 @@ function DatasourceNodeConfigForm({
|
|
|
1371
1371
|
switch (activeSectionId) {
|
|
1372
1372
|
case "connection":
|
|
1373
1373
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1374
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1374
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: t("datasourceHelp") }),
|
|
1375
1375
|
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-2", children: datasources.map((datasource) => {
|
|
1376
1376
|
const isSelected = datasource.id === selectedDatasourceId;
|
|
1377
1377
|
const logo2 = getDatasourceLogo(datasource.id, datasource.dialect);
|
|
@@ -1386,12 +1386,12 @@ function DatasourceNodeConfigForm({
|
|
|
1386
1386
|
}
|
|
1387
1387
|
},
|
|
1388
1388
|
disabled: readOnly && datasource.id !== selectedDatasourceId,
|
|
1389
|
-
className: `flex items-center gap-3 rounded-xl
|
|
1389
|
+
className: `flex items-center gap-3 rounded-xl px-3 py-2.5 text-left transition-all focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 ${isSelected ? "border border-cyan-500/50 bg-cyan-500/5 ring-1 ring-cyan-500/20 dark:border-cyan-400/40 dark:bg-cyan-400/5" : "liquid-surface hover:shadow-sm"}`,
|
|
1390
1390
|
children: [
|
|
1391
|
-
/* @__PURE__ */ jsx("div", { className: "flex h-9 w-9 shrink-0 items-center justify-center", children: logo2 ? /* @__PURE__ */ jsx("img", { src: logo2, alt: datasource.dialect, className: "h-7 w-7" }) : /* @__PURE__ */ jsx(ServerStackIcon, { className: "h-6 w-6 text-
|
|
1391
|
+
/* @__PURE__ */ jsx("div", { className: "flex h-9 w-9 shrink-0 items-center justify-center", children: logo2 ? /* @__PURE__ */ jsx("img", { src: logo2, alt: datasource.dialect, className: "h-7 w-7" }) : /* @__PURE__ */ jsx(ServerStackIcon, { className: "h-6 w-6 text-slate-400" }) }),
|
|
1392
1392
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
1393
|
-
/* @__PURE__ */ jsx("p", { className: "truncate text-xs font-semibold text-
|
|
1394
|
-
/* @__PURE__ */ jsx("p", { className: "text-[10px] text-
|
|
1393
|
+
/* @__PURE__ */ jsx("p", { className: "truncate text-xs font-semibold text-slate-900 dark:text-white", children: datasource.name }),
|
|
1394
|
+
/* @__PURE__ */ jsx("p", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: datasource.dialect })
|
|
1395
1395
|
] }),
|
|
1396
1396
|
isSelected && /* @__PURE__ */ jsx(CheckIcon, { className: "h-4 w-4 shrink-0 text-cyan-500 dark:text-cyan-400" })
|
|
1397
1397
|
]
|
|
@@ -1402,10 +1402,10 @@ function DatasourceNodeConfigForm({
|
|
|
1402
1402
|
] });
|
|
1403
1403
|
case "table":
|
|
1404
1404
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1405
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1406
|
-
!selectedDatasourceId ? /* @__PURE__ */ jsx("p", { className: "py-8 text-center text-xs text-
|
|
1407
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 border-b border-
|
|
1408
|
-
/* @__PURE__ */ jsx(MagnifyingGlassIcon, { className: "h-3.5 w-3.5 text-
|
|
1405
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: t("tableHelp") }),
|
|
1406
|
+
!selectedDatasourceId ? /* @__PURE__ */ jsx("p", { className: "py-8 text-center text-xs text-slate-400", children: t("selectDatasource") }) : /* @__PURE__ */ jsxs("div", { className: "liquid-surface rounded-xl border border-white/30 dark:border-white/10", children: [
|
|
1407
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 border-b border-slate-200/50 px-3 py-2 dark:border-white/5", children: [
|
|
1408
|
+
/* @__PURE__ */ jsx(MagnifyingGlassIcon, { className: "h-3.5 w-3.5 text-slate-400" }),
|
|
1409
1409
|
/* @__PURE__ */ jsx(
|
|
1410
1410
|
"input",
|
|
1411
1411
|
{
|
|
@@ -1413,13 +1413,13 @@ function DatasourceNodeConfigForm({
|
|
|
1413
1413
|
value: tableSearch,
|
|
1414
1414
|
onChange: (event) => setTableSearch(event.target.value),
|
|
1415
1415
|
placeholder: t("selectTable"),
|
|
1416
|
-
className: "flex-1 bg-transparent text-xs text-
|
|
1416
|
+
className: "flex-1 bg-transparent text-xs text-slate-900 outline-none placeholder:text-slate-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-white dark:placeholder:text-slate-500"
|
|
1417
1417
|
}
|
|
1418
1418
|
),
|
|
1419
|
-
availableTables.length > 0 && /* @__PURE__ */ jsx("span", { className: "text-[10px] text-
|
|
1419
|
+
availableTables.length > 0 && /* @__PURE__ */ jsx("span", { className: "text-[10px] text-slate-400", children: availableTables.length })
|
|
1420
1420
|
] }),
|
|
1421
1421
|
/* @__PURE__ */ jsxs("div", { className: "max-h-64 overflow-y-auto p-1", children: [
|
|
1422
|
-
filteredTables.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-3 py-6 text-center text-[10px] text-
|
|
1422
|
+
filteredTables.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-3 py-6 text-center text-[10px] text-slate-400", children: t("noColumnsAvailable") }),
|
|
1423
1423
|
filteredTables.map((table) => {
|
|
1424
1424
|
const isSelected = table === selectedTable;
|
|
1425
1425
|
return /* @__PURE__ */ jsxs(
|
|
@@ -1432,9 +1432,9 @@ function DatasourceNodeConfigForm({
|
|
|
1432
1432
|
setActiveSectionId("columns");
|
|
1433
1433
|
}
|
|
1434
1434
|
},
|
|
1435
|
-
className: `flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left text-xs transition-colors ${isSelected ? "bg-cyan-500/10 font-semibold text-cyan-700 dark:text-cyan-300" : "text-
|
|
1435
|
+
className: `flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left text-xs transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 ${isSelected ? "bg-cyan-500/10 font-semibold text-cyan-700 dark:text-cyan-300" : "text-slate-700 hover:bg-slate-100/60 dark:text-slate-300 dark:hover:bg-white/5"}`,
|
|
1436
1436
|
children: [
|
|
1437
|
-
/* @__PURE__ */ jsx(TableCellsIcon, { className: "h-3.5 w-3.5 shrink-0 text-
|
|
1437
|
+
/* @__PURE__ */ jsx(TableCellsIcon, { className: "h-3.5 w-3.5 shrink-0 text-slate-400" }),
|
|
1438
1438
|
/* @__PURE__ */ jsx("span", { className: "truncate", children: table }),
|
|
1439
1439
|
isSelected && /* @__PURE__ */ jsx(CheckIcon, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-cyan-500" })
|
|
1440
1440
|
]
|
|
@@ -1448,7 +1448,7 @@ function DatasourceNodeConfigForm({
|
|
|
1448
1448
|
case "columns":
|
|
1449
1449
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1450
1450
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
1451
|
-
/* @__PURE__ */ jsxs("p", { className: "text-xs text-
|
|
1451
|
+
/* @__PURE__ */ jsxs("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: [
|
|
1452
1452
|
selectedColumns.length,
|
|
1453
1453
|
"/",
|
|
1454
1454
|
availableColumns.length,
|
|
@@ -1460,14 +1460,14 @@ function DatasourceNodeConfigForm({
|
|
|
1460
1460
|
type: "button",
|
|
1461
1461
|
onClick: () => setSelectedColumns(allSelected ? [] : [...allColumnNames]),
|
|
1462
1462
|
disabled: availableColumns.length === 0,
|
|
1463
|
-
className: "text-[10px] font-semibold text-cyan-600 hover:text-cyan-700 disabled:opacity-40 dark:text-cyan-400",
|
|
1463
|
+
className: "text-[10px] font-semibold text-cyan-600 hover:text-cyan-700 disabled:opacity-40 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-cyan-400",
|
|
1464
1464
|
children: allSelected ? t("deselectAll") : t("selectAll")
|
|
1465
1465
|
}
|
|
1466
1466
|
)
|
|
1467
1467
|
] }),
|
|
1468
|
-
!selectedTable ? /* @__PURE__ */ jsx("p", { className: "py-8 text-center text-xs text-
|
|
1469
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 border-b border-
|
|
1470
|
-
/* @__PURE__ */ jsx(MagnifyingGlassIcon, { className: "h-3.5 w-3.5 text-
|
|
1468
|
+
!selectedTable ? /* @__PURE__ */ jsx("p", { className: "py-8 text-center text-xs text-slate-400", children: t("selectTable") }) : /* @__PURE__ */ jsxs("div", { className: "liquid-surface rounded-xl border border-white/30 dark:border-white/10", children: [
|
|
1469
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 border-b border-slate-200/50 px-3 py-2 dark:border-white/5", children: [
|
|
1470
|
+
/* @__PURE__ */ jsx(MagnifyingGlassIcon, { className: "h-3.5 w-3.5 text-slate-400" }),
|
|
1471
1471
|
/* @__PURE__ */ jsx(
|
|
1472
1472
|
"input",
|
|
1473
1473
|
{
|
|
@@ -1475,15 +1475,15 @@ function DatasourceNodeConfigForm({
|
|
|
1475
1475
|
value: columnSearch,
|
|
1476
1476
|
onChange: (event) => setColumnSearch(event.target.value),
|
|
1477
1477
|
placeholder: "Search columns...",
|
|
1478
|
-
className: "flex-1 bg-transparent text-xs text-
|
|
1478
|
+
className: "flex-1 bg-transparent text-xs text-slate-900 outline-none placeholder:text-slate-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-white dark:placeholder:text-slate-500"
|
|
1479
1479
|
}
|
|
1480
1480
|
)
|
|
1481
1481
|
] }),
|
|
1482
1482
|
/* @__PURE__ */ jsxs("div", { className: "max-h-64 overflow-y-auto p-1", children: [
|
|
1483
|
-
filteredColumns.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-3 py-6 text-center text-[10px] text-
|
|
1483
|
+
filteredColumns.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-3 py-6 text-center text-[10px] text-slate-400", children: t("noColumnsAvailable") }),
|
|
1484
1484
|
filteredColumns.map((column) => {
|
|
1485
1485
|
const isSelected = selectedColumns.includes(column.name);
|
|
1486
|
-
const
|
|
1486
|
+
const typeBadgeColor = TYPE_BADGE_COLORS[column.type.toLowerCase()] ?? TYPE_BADGE_COLORS.string;
|
|
1487
1487
|
return /* @__PURE__ */ jsxs(
|
|
1488
1488
|
"button",
|
|
1489
1489
|
{
|
|
@@ -1491,14 +1491,14 @@ function DatasourceNodeConfigForm({
|
|
|
1491
1491
|
onClick: () => {
|
|
1492
1492
|
if (!readOnly) handleToggleColumn(column.name);
|
|
1493
1493
|
},
|
|
1494
|
-
className: `flex w-full items-center gap-2 rounded-lg px-3 py-1.5 text-left transition-colors ${isSelected ? "bg-cyan-500/8 dark:bg-cyan-400/5" : "hover:bg-
|
|
1494
|
+
className: `flex w-full items-center gap-2 rounded-lg px-3 py-1.5 text-left transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 ${isSelected ? "bg-cyan-500/8 dark:bg-cyan-400/5" : "hover:bg-slate-100/60 dark:hover:bg-white/5"}`,
|
|
1495
1495
|
children: [
|
|
1496
|
-
/* @__PURE__ */ jsx("div", { className: `flex h-4 w-4 shrink-0 items-center justify-center rounded border transition-colors ${isSelected ? "border-cyan-500 bg-cyan-500 dark:border-cyan-400 dark:bg-cyan-400" : "border-
|
|
1497
|
-
/* @__PURE__ */ jsxs("span", { className: "flex-1 truncate text-xs text-
|
|
1496
|
+
/* @__PURE__ */ jsx("div", { className: `flex h-4 w-4 shrink-0 items-center justify-center rounded border transition-colors ${isSelected ? "border-cyan-500 bg-cyan-500 dark:border-cyan-400 dark:bg-cyan-400" : "border-slate-300 dark:border-slate-600"}`, children: isSelected && /* @__PURE__ */ jsx(CheckIcon, { className: "h-2.5 w-2.5 text-white" }) }),
|
|
1497
|
+
/* @__PURE__ */ jsxs("span", { className: "flex-1 truncate text-xs text-slate-900 dark:text-white", children: [
|
|
1498
1498
|
column.name,
|
|
1499
|
-
column.nullable && /* @__PURE__ */ jsx("span", { className: "ml-1 text-[9px] text-
|
|
1499
|
+
column.nullable && /* @__PURE__ */ jsx("span", { className: "ml-1 text-[9px] text-slate-400", children: "?" })
|
|
1500
1500
|
] }),
|
|
1501
|
-
/* @__PURE__ */ jsx(
|
|
1501
|
+
/* @__PURE__ */ jsx(Badge, { color: typeBadgeColor, size: "xs", children: column.type })
|
|
1502
1502
|
]
|
|
1503
1503
|
},
|
|
1504
1504
|
column.name
|
|
@@ -1510,13 +1510,13 @@ function DatasourceNodeConfigForm({
|
|
|
1510
1510
|
case "filters":
|
|
1511
1511
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1512
1512
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
1513
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1513
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: t("filtersHelp") }),
|
|
1514
1514
|
!readOnly && /* @__PURE__ */ jsxs(
|
|
1515
1515
|
"button",
|
|
1516
1516
|
{
|
|
1517
1517
|
type: "button",
|
|
1518
1518
|
onClick: handleAddFilter,
|
|
1519
|
-
className: "flex items-center gap-1 text-[10px] font-semibold text-cyan-600 hover:text-cyan-700 dark:text-cyan-400",
|
|
1519
|
+
className: "flex items-center gap-1 text-[10px] font-semibold text-cyan-600 hover:text-cyan-700 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-cyan-400",
|
|
1520
1520
|
children: [
|
|
1521
1521
|
/* @__PURE__ */ jsx(PlusIcon$1, { className: "h-3 w-3" }),
|
|
1522
1522
|
t("addFilter")
|
|
@@ -1525,14 +1525,14 @@ function DatasourceNodeConfigForm({
|
|
|
1525
1525
|
)
|
|
1526
1526
|
] }),
|
|
1527
1527
|
filterEntries.length === 0 ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center gap-2 py-8", children: [
|
|
1528
|
-
/* @__PURE__ */ jsx(FunnelIcon, { className: "h-8 w-8 text-
|
|
1529
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1528
|
+
/* @__PURE__ */ jsx(FunnelIcon, { className: "h-8 w-8 text-slate-300 dark:text-slate-600" }),
|
|
1529
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-slate-400", children: "No filters configured" }),
|
|
1530
1530
|
/* @__PURE__ */ jsxs(
|
|
1531
1531
|
"button",
|
|
1532
1532
|
{
|
|
1533
1533
|
type: "button",
|
|
1534
1534
|
onClick: handleAddFilter,
|
|
1535
|
-
className: "flex items-center gap-1 rounded-lg bg-cyan-500/10 px-3 py-1.5 text-[10px] font-semibold text-cyan-600 hover:bg-cyan-500/15 dark:text-cyan-400",
|
|
1535
|
+
className: "flex items-center gap-1 rounded-lg bg-cyan-500/10 px-3 py-1.5 text-[10px] font-semibold text-cyan-600 hover:bg-cyan-500/15 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-cyan-400",
|
|
1536
1536
|
children: [
|
|
1537
1537
|
/* @__PURE__ */ jsx(PlusIcon$1, { className: "h-3 w-3" }),
|
|
1538
1538
|
t("addFilter")
|
|
@@ -1542,14 +1542,15 @@ function DatasourceNodeConfigForm({
|
|
|
1542
1542
|
] }) : /* @__PURE__ */ jsx("div", { className: "space-y-2", children: filterEntries.map((row, index) => {
|
|
1543
1543
|
const currentOp = row.op ?? "eq";
|
|
1544
1544
|
const valueDisplay = Array.isArray(row.value) ? row.value.map(String).join(", ") : row.value == null ? "" : String(row.value);
|
|
1545
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 rounded-xl
|
|
1545
|
+
return /* @__PURE__ */ jsxs("div", { className: "liquid-surface flex items-center gap-2 rounded-xl px-3 py-2", children: [
|
|
1546
1546
|
/* @__PURE__ */ jsxs(
|
|
1547
1547
|
"select",
|
|
1548
1548
|
{
|
|
1549
1549
|
value: row.column,
|
|
1550
1550
|
onChange: (event) => handleUpdateFilterColumn(index, event.target.value),
|
|
1551
1551
|
disabled: readOnly,
|
|
1552
|
-
|
|
1552
|
+
"aria-label": t("columnName"),
|
|
1553
|
+
className: "w-[28%] rounded bg-transparent text-xs text-slate-900 outline-none focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 disabled:opacity-60 dark:text-white",
|
|
1553
1554
|
children: [
|
|
1554
1555
|
/* @__PURE__ */ jsx("option", { value: "", children: t("columnName") }),
|
|
1555
1556
|
availableColumns.map((column) => /* @__PURE__ */ jsx("option", { value: column.name, children: column.name }, column.name))
|
|
@@ -1562,7 +1563,8 @@ function DatasourceNodeConfigForm({
|
|
|
1562
1563
|
value: currentOp,
|
|
1563
1564
|
onChange: (event) => handleUpdateFilterOp(index, event.target.value),
|
|
1564
1565
|
disabled: readOnly,
|
|
1565
|
-
|
|
1566
|
+
"aria-label": t("filterOperator", { _: "Filter operator" }),
|
|
1567
|
+
className: "w-[18%] rounded bg-white/40 px-1 text-center text-[10px] font-semibold uppercase text-slate-700 outline-none backdrop-blur-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 disabled:opacity-60 dark:bg-white/[0.04] dark:text-slate-200",
|
|
1566
1568
|
title: t("filterOperator", { _: "Filter operator" }),
|
|
1567
1569
|
children: [
|
|
1568
1570
|
/* @__PURE__ */ jsx("option", { value: "eq", children: "= (eq)" }),
|
|
@@ -1584,7 +1586,7 @@ function DatasourceNodeConfigForm({
|
|
|
1584
1586
|
onChange: (event) => handleUpdateFilterValue(index, event.target.value),
|
|
1585
1587
|
placeholder: currentOp === "in" ? "comma-separated, e.g. SP, RJ, MG" : t("variableReference"),
|
|
1586
1588
|
readOnly,
|
|
1587
|
-
className: "flex-1 bg-transparent text-xs text-
|
|
1589
|
+
className: "flex-1 bg-transparent text-xs text-slate-900 outline-none placeholder:text-slate-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-white dark:placeholder:text-slate-500"
|
|
1588
1590
|
}
|
|
1589
1591
|
),
|
|
1590
1592
|
!readOnly && /* @__PURE__ */ jsx(
|
|
@@ -1592,7 +1594,7 @@ function DatasourceNodeConfigForm({
|
|
|
1592
1594
|
{
|
|
1593
1595
|
type: "button",
|
|
1594
1596
|
onClick: () => handleRemoveFilter(index),
|
|
1595
|
-
className: "shrink-0 rounded-md p-1 text-
|
|
1597
|
+
className: "shrink-0 rounded-md p-1 text-slate-400 transition-colors hover:bg-red-50 hover:text-red-500 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:hover:bg-red-900/20",
|
|
1596
1598
|
children: /* @__PURE__ */ jsx(XMarkIcon$1, { className: "h-3 w-3" })
|
|
1597
1599
|
}
|
|
1598
1600
|
)
|
|
@@ -1602,10 +1604,10 @@ function DatasourceNodeConfigForm({
|
|
|
1602
1604
|
case "output":
|
|
1603
1605
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-5", children: [
|
|
1604
1606
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1605
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1.5 block text-xs font-medium text-
|
|
1606
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] text-
|
|
1607
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 rounded-xl
|
|
1608
|
-
/* @__PURE__ */ jsx(VariableIcon, { className: "h-4 w-4 text-
|
|
1607
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1.5 block text-xs font-medium text-slate-700 dark:text-slate-300", children: t("outputVariableLabel") }),
|
|
1608
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] text-slate-500 dark:text-slate-400", children: t("outputVariableHelp") }),
|
|
1609
|
+
/* @__PURE__ */ jsxs("div", { className: "liquid-surface flex items-center gap-2 rounded-xl px-3 py-2.5", children: [
|
|
1610
|
+
/* @__PURE__ */ jsx(VariableIcon, { className: "h-4 w-4 text-slate-400" }),
|
|
1609
1611
|
/* @__PURE__ */ jsx(
|
|
1610
1612
|
"input",
|
|
1611
1613
|
{
|
|
@@ -1614,14 +1616,14 @@ function DatasourceNodeConfigForm({
|
|
|
1614
1616
|
onChange: (event) => setOutputVariable(event.target.value),
|
|
1615
1617
|
placeholder: "datasourceResult",
|
|
1616
1618
|
readOnly,
|
|
1617
|
-
className: "flex-1 bg-transparent text-sm text-
|
|
1619
|
+
className: "flex-1 bg-transparent text-sm text-slate-900 outline-none placeholder:text-slate-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-white dark:placeholder:text-slate-500"
|
|
1618
1620
|
}
|
|
1619
1621
|
)
|
|
1620
1622
|
] })
|
|
1621
1623
|
] }),
|
|
1622
1624
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1623
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1.5 block text-xs font-medium text-
|
|
1624
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] text-
|
|
1625
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1.5 block text-xs font-medium text-slate-700 dark:text-slate-300", children: t("limitLabel") }),
|
|
1626
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-[10px] text-slate-500 dark:text-slate-400", children: t("limitHelp") }),
|
|
1625
1627
|
/* @__PURE__ */ jsx(
|
|
1626
1628
|
"input",
|
|
1627
1629
|
{
|
|
@@ -1631,15 +1633,15 @@ function DatasourceNodeConfigForm({
|
|
|
1631
1633
|
min: 1,
|
|
1632
1634
|
max: 1e4,
|
|
1633
1635
|
readOnly,
|
|
1634
|
-
className: "w-32 rounded-xl
|
|
1636
|
+
className: "liquid-surface w-32 rounded-xl px-3 py-2.5 text-sm text-slate-900 outline-none focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 dark:text-white"
|
|
1635
1637
|
}
|
|
1636
1638
|
)
|
|
1637
1639
|
] }),
|
|
1638
1640
|
selectedDatasource && selectedTable && /* @__PURE__ */ jsxs("div", { className: "rounded-xl border border-cyan-500/20 bg-cyan-500/5 p-3 dark:border-cyan-400/15 dark:bg-cyan-400/5", children: [
|
|
1639
1641
|
/* @__PURE__ */ jsx("p", { className: "text-[10px] font-semibold uppercase tracking-wider text-cyan-600 dark:text-cyan-400 mb-2", children: "Summary" }),
|
|
1640
|
-
/* @__PURE__ */ jsxs("div", { className: "space-y-1 text-xs text-
|
|
1642
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-1 text-xs text-slate-600 dark:text-slate-300", children: [
|
|
1641
1643
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1642
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1644
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Source:" }),
|
|
1643
1645
|
" ",
|
|
1644
1646
|
selectedDatasource.name,
|
|
1645
1647
|
" (",
|
|
@@ -1647,29 +1649,29 @@ function DatasourceNodeConfigForm({
|
|
|
1647
1649
|
")"
|
|
1648
1650
|
] }),
|
|
1649
1651
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1650
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1652
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Table:" }),
|
|
1651
1653
|
" ",
|
|
1652
1654
|
selectedTable
|
|
1653
1655
|
] }),
|
|
1654
1656
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1655
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1657
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Columns:" }),
|
|
1656
1658
|
" ",
|
|
1657
1659
|
selectedColumns.length,
|
|
1658
1660
|
" of ",
|
|
1659
1661
|
availableColumns.length
|
|
1660
1662
|
] }),
|
|
1661
1663
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1662
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1664
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Filters:" }),
|
|
1663
1665
|
" ",
|
|
1664
1666
|
filterEntries.length
|
|
1665
1667
|
] }),
|
|
1666
1668
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1667
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1669
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Limit:" }),
|
|
1668
1670
|
" ",
|
|
1669
1671
|
limit
|
|
1670
1672
|
] }),
|
|
1671
1673
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
1672
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1674
|
+
/* @__PURE__ */ jsx("span", { className: "text-slate-400", children: "Output:" }),
|
|
1673
1675
|
" ",
|
|
1674
1676
|
outputVariable || "\u2014"
|
|
1675
1677
|
] })
|
|
@@ -2064,8 +2066,8 @@ var AgentFlowNode = memo(function AgentFlowNode2({ id, data, selected }) {
|
|
|
2064
2066
|
const agentLabel = data.label;
|
|
2065
2067
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2066
2068
|
/* @__PURE__ */ jsx(NodeRunningIndicator, { nodeId: id }),
|
|
2067
|
-
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-
|
|
2068
|
-
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Top, id: "top-in", colorClass: "!bg-
|
|
2069
|
+
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-slate-400 dark:!bg-slate-500" }),
|
|
2070
|
+
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Top, id: "top-in", colorClass: "!bg-slate-400 dark:!bg-slate-500" }),
|
|
2069
2071
|
/* @__PURE__ */ jsx(NodeCard, { variant: "error", nodeType: "agent", width: "w-[320px]", children: /* @__PURE__ */ jsx(
|
|
2070
2072
|
NodeCardHeader,
|
|
2071
2073
|
{
|
|
@@ -2083,17 +2085,17 @@ var AgentFlowNode = memo(function AgentFlowNode2({ id, data, selected }) {
|
|
|
2083
2085
|
const frameworkMeta = getFrameworkMeta(data.agent.framework);
|
|
2084
2086
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2085
2087
|
/* @__PURE__ */ jsx(NodeRunningIndicator, { nodeId: id }),
|
|
2086
|
-
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-
|
|
2087
|
-
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Top, id: "top-in", colorClass: "!bg-
|
|
2088
|
+
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-slate-400 dark:!bg-slate-500" }),
|
|
2089
|
+
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Top, id: "top-in", colorClass: "!bg-slate-400 dark:!bg-slate-500" }),
|
|
2088
2090
|
/* @__PURE__ */ jsx("button", { type: "button", onClick: () => data.onSelect(agentId), className: "w-full text-left", children: /* @__PURE__ */ jsxs(NodeCard, { compact: isCompact, selected, nodeType: "agent", width: "w-[320px]", children: [
|
|
2089
2091
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2090
2092
|
/* @__PURE__ */ jsxs("div", { className: "relative flex-shrink-0", children: [
|
|
2091
|
-
data.agent.avatar ? /* @__PURE__ */ jsx("img", { src: data.agent.avatar, alt: data.agent.name, className: "h-11 w-11 rounded-full bg-white shadow-sm ring-1 ring-
|
|
2092
|
-
/* @__PURE__ */ jsx("div", { className: "absolute -bottom-0.5 -right-0.5 flex h-4 w-4 items-center justify-center rounded-full bg-indigo-500 ring-2 ring-white dark:ring-
|
|
2093
|
+
data.agent.avatar ? /* @__PURE__ */ jsx("img", { src: data.agent.avatar, alt: data.agent.name, className: "h-11 w-11 rounded-full bg-white shadow-sm ring-1 ring-slate-200/50 dark:bg-slate-800 dark:ring-white/10" }) : /* @__PURE__ */ jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-full bg-gradient-to-br from-indigo-500/25 to-purple-500/25 ring-1 ring-indigo-500/30", children: /* @__PURE__ */ jsx(CpuChipIcon, { className: "h-6 w-6 text-indigo-500 dark:text-indigo-300" }) }),
|
|
2094
|
+
/* @__PURE__ */ jsx("div", { className: "absolute -bottom-0.5 -right-0.5 flex h-4 w-4 items-center justify-center rounded-full bg-indigo-500 ring-2 ring-white dark:ring-slate-900", children: /* @__PURE__ */ jsx(CpuChipIcon, { className: "h-2.5 w-2.5 text-white" }) })
|
|
2093
2095
|
] }),
|
|
2094
2096
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2095
|
-
/* @__PURE__ */ jsx("h3", { className: "truncate text-sm font-semibold text-
|
|
2096
|
-
!isCompact && /* @__PURE__ */ jsx("p", { className: "truncate text-xs text-
|
|
2097
|
+
/* @__PURE__ */ jsx("h3", { className: "truncate text-sm font-semibold text-slate-900 dark:text-white", children: data.agent.name }),
|
|
2098
|
+
!isCompact && /* @__PURE__ */ jsx("p", { className: "truncate text-xs text-slate-500 dark:text-slate-400", children: data.agent.role })
|
|
2097
2099
|
] })
|
|
2098
2100
|
] }),
|
|
2099
2101
|
/* @__PURE__ */ jsx(NodeCardMeta, { compact: isCompact, children: /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-1.5", children: [
|
|
@@ -2114,7 +2116,7 @@ var AgentFlowNode = memo(function AgentFlowNode2({ id, data, selected }) {
|
|
|
2114
2116
|
] }),
|
|
2115
2117
|
data.agentTools && data.agentTools.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2116
2118
|
/* @__PURE__ */ jsx("div", { className: "w-full" }),
|
|
2117
|
-
/* @__PURE__ */ jsxs("div", { className: "flex w-full items-center gap-1 border-t border-
|
|
2119
|
+
/* @__PURE__ */ jsxs("div", { className: "flex w-full items-center gap-1 border-t border-slate-200/20 pt-1 dark:border-white/5", children: [
|
|
2118
2120
|
/* @__PURE__ */ jsx(CommandLineIcon, { className: "h-3 w-3 shrink-0 text-amber-500 dark:text-amber-400" }),
|
|
2119
2121
|
data.agentTools.slice(0, 3).map((tool) => /* @__PURE__ */ jsx(
|
|
2120
2122
|
Badge,
|
|
@@ -2126,7 +2128,7 @@ var AgentFlowNode = memo(function AgentFlowNode2({ id, data, selected }) {
|
|
|
2126
2128
|
},
|
|
2127
2129
|
tool.id
|
|
2128
2130
|
)),
|
|
2129
|
-
data.agentTools.length > 3 && /* @__PURE__ */ jsxs("span", { className: "text-[9px] text-
|
|
2131
|
+
data.agentTools.length > 3 && /* @__PURE__ */ jsxs("span", { className: "text-[9px] text-slate-400 dark:text-slate-500", children: [
|
|
2130
2132
|
"+",
|
|
2131
2133
|
data.agentTools.length - 3
|
|
2132
2134
|
] })
|
|
@@ -2297,7 +2299,7 @@ var ToolFlowNode = memo(function ToolFlowNode2({ id, data, selected }) {
|
|
|
2297
2299
|
const categoryPill = CATEGORY_PILL_COLORS[categoryKey] ?? CATEGORY_PILL_COLORS.external;
|
|
2298
2300
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2299
2301
|
/* @__PURE__ */ jsx(NodeRunningIndicator, { nodeId: id }),
|
|
2300
|
-
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-
|
|
2302
|
+
/* @__PURE__ */ jsx(WorkflowHandle, { type: "target", position: Position.Left, id: "left-in", colorClass: "!bg-slate-400 dark:!bg-slate-500" }),
|
|
2301
2303
|
/* @__PURE__ */ jsx(
|
|
2302
2304
|
"button",
|
|
2303
2305
|
{
|
|
@@ -2309,8 +2311,8 @@ var ToolFlowNode = memo(function ToolFlowNode2({ id, data, selected }) {
|
|
|
2309
2311
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2310
2312
|
/* @__PURE__ */ jsx("div", { className: `flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br ${gradient} shadow-lg`, children: /* @__PURE__ */ jsx(IconComponent, { className: "h-5 w-5 text-white" }) }),
|
|
2311
2313
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2312
|
-
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-
|
|
2313
|
-
!isCompact && /* @__PURE__ */ jsx("p", { className: "mt-0.5 line-clamp-1 text-xs text-
|
|
2314
|
+
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-slate-900 dark:text-white", children: tool.name }),
|
|
2315
|
+
!isCompact && /* @__PURE__ */ jsx("p", { className: "mt-0.5 line-clamp-1 text-xs text-slate-500 dark:text-slate-400", children: String(tool.description ?? "") })
|
|
2314
2316
|
] })
|
|
2315
2317
|
] }),
|
|
2316
2318
|
onToggle && /* @__PURE__ */ jsx(
|
|
@@ -2338,7 +2340,7 @@ var ToolFlowNode = memo(function ToolFlowNode2({ id, data, selected }) {
|
|
|
2338
2340
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2339
2341
|
/* @__PURE__ */ jsx(Badge, { color: "teal", size: "xs", children: t("nodeType") }),
|
|
2340
2342
|
/* @__PURE__ */ jsx(Badge, { color: "zinc", size: "xs", className: categoryPill, children: tool.category }),
|
|
2341
|
-
/* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2343
|
+
/* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2342
2344
|
String(tool.timeoutMs ?? ""),
|
|
2343
2345
|
"ms"
|
|
2344
2346
|
] })
|
|
@@ -2388,18 +2390,18 @@ var RuleFlowNode = memo(function RuleFlowNode2({ id, data, selected }) {
|
|
|
2388
2390
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2389
2391
|
/* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-violet-400 to-purple-500 shadow-lg", children: /* @__PURE__ */ jsx(ScaleIcon, { className: "h-5 w-5 text-white" }) }),
|
|
2390
2392
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2391
|
-
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-
|
|
2392
|
-
/* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-
|
|
2393
|
+
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-slate-900 dark:text-white", children: ruleLabel || t("ruleEngine") }),
|
|
2394
|
+
/* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-slate-500 dark:text-slate-400", children: t("ruleEngineDescription") })
|
|
2393
2395
|
] })
|
|
2394
2396
|
] }),
|
|
2395
2397
|
!isCompact && /* @__PURE__ */ jsxs("div", { className: "mt-2 flex items-center justify-between", children: [
|
|
2396
2398
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2397
2399
|
/* @__PURE__ */ jsx(Badge, { color: "violet", size: "xs", children: t("ruleEngine") }),
|
|
2398
|
-
contextVariableCount > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2400
|
+
contextVariableCount > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2399
2401
|
contextVariableCount,
|
|
2400
2402
|
" vars"
|
|
2401
2403
|
] }),
|
|
2402
|
-
ruleConfig.outputVariable && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2404
|
+
ruleConfig.outputVariable && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2403
2405
|
"\u2192 ",
|
|
2404
2406
|
ruleConfig.outputVariable
|
|
2405
2407
|
] })
|
|
@@ -2432,7 +2434,7 @@ var RuleFlowNode = memo(function RuleFlowNode2({ id, data, selected }) {
|
|
|
2432
2434
|
/* @__PURE__ */ jsx(NodeCard, { variant: "error", nodeType: "rule", children: /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2433
2435
|
/* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-amber-400 to-orange-500 shadow-lg", children: /* @__PURE__ */ jsx(ExclamationTriangleIcon, { className: "h-5 w-5 text-white" }) }),
|
|
2434
2436
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2435
|
-
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-
|
|
2437
|
+
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-slate-900 dark:text-white", children: ruleLabel || t("nodeType") }),
|
|
2436
2438
|
/* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-amber-600 dark:text-amber-400", children: t("ruleNotFound") })
|
|
2437
2439
|
] })
|
|
2438
2440
|
] }) }),
|
|
@@ -2461,8 +2463,8 @@ var RuleFlowNode = memo(function RuleFlowNode2({ id, data, selected }) {
|
|
|
2461
2463
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2462
2464
|
/* @__PURE__ */ jsx("div", { className: `flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br ${gradient} shadow-lg`, children: /* @__PURE__ */ jsx(AdjustmentsHorizontalIcon, { className: "h-5 w-5 text-white" }) }),
|
|
2463
2465
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2464
|
-
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-
|
|
2465
|
-
/* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs font-medium text-
|
|
2466
|
+
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-slate-900 dark:text-white", children: rule.name }),
|
|
2467
|
+
/* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs font-medium text-slate-600 dark:text-slate-300", children: adjustmentDisplay })
|
|
2466
2468
|
] })
|
|
2467
2469
|
] }),
|
|
2468
2470
|
onToggle && /* @__PURE__ */ jsx(
|
|
@@ -2490,11 +2492,11 @@ var RuleFlowNode = memo(function RuleFlowNode2({ id, data, selected }) {
|
|
|
2490
2492
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2491
2493
|
/* @__PURE__ */ jsx(Badge, { color: "violet", size: "xs", children: t("nodeType") }),
|
|
2492
2494
|
/* @__PURE__ */ jsx(Badge, { color: "zinc", size: "xs", className: typePill, children: adjustmentType }),
|
|
2493
|
-
/* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2495
|
+
/* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2494
2496
|
"P",
|
|
2495
2497
|
String(rule.priority ?? "")
|
|
2496
2498
|
] }),
|
|
2497
|
-
Array.isArray(rule.condition?.categories) && rule.condition.categories.length > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2499
|
+
Array.isArray(rule.condition?.categories) && rule.condition.categories.length > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2498
2500
|
rule.condition.categories.length,
|
|
2499
2501
|
" categories"
|
|
2500
2502
|
] })
|
|
@@ -2561,8 +2563,8 @@ var EntityFlowNode = memo(function EntityFlowNode2({ id, data, selected }) {
|
|
|
2561
2563
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2562
2564
|
/* @__PURE__ */ jsx("div", { className: `flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br ${gradient} shadow-lg`, children: /* @__PURE__ */ jsx(EntityIcon, { className: "h-5 w-5 text-white" }) }),
|
|
2563
2565
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2564
|
-
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-
|
|
2565
|
-
!isCompact && /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-
|
|
2566
|
+
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-slate-900 dark:text-white", children: label }),
|
|
2567
|
+
!isCompact && /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-slate-500 dark:text-slate-400", children: data.entity?.label ?? config.entityMasterId })
|
|
2566
2568
|
] })
|
|
2567
2569
|
] }),
|
|
2568
2570
|
/* @__PURE__ */ jsxs(NodeCardMeta, { compact: isCompact, children: [
|
|
@@ -2573,8 +2575,8 @@ var EntityFlowNode = memo(function EntityFlowNode2({ id, data, selected }) {
|
|
|
2573
2575
|
" ",
|
|
2574
2576
|
t("entityFields")
|
|
2575
2577
|
] }),
|
|
2576
|
-
config.limit > 0 && /* @__PURE__ */ jsx("span", { className: "text-[10px] text-
|
|
2577
|
-
filterCount > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-
|
|
2578
|
+
config.limit > 0 && /* @__PURE__ */ jsx("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: t("entityLimit", { count: config.limit }) }),
|
|
2579
|
+
filterCount > 0 && /* @__PURE__ */ jsxs("span", { className: "text-[10px] text-slate-400 dark:text-slate-500", children: [
|
|
2578
2580
|
filterCount,
|
|
2579
2581
|
" ",
|
|
2580
2582
|
t("entityFilters")
|
|
@@ -3665,7 +3667,6 @@ var GroupFlowNode = memo(function GroupFlowNode2({ id, data, selected }) {
|
|
|
3665
3667
|
"div",
|
|
3666
3668
|
{
|
|
3667
3669
|
className: `group relative h-full w-full overflow-hidden rounded-xl border liquid-surface ${getNodeStateClass(selected, void 0, colorScheme.border)} transition-all`,
|
|
3668
|
-
style: { minWidth: config.width, minHeight: config.height },
|
|
3669
3670
|
children: [
|
|
3670
3671
|
/* @__PURE__ */ jsxs(
|
|
3671
3672
|
"div",
|
|
@@ -3782,7 +3783,7 @@ var SpeechTranscriberFlowNode = memo(function SpeechTranscriberFlowNode2({ id, d
|
|
|
3782
3783
|
/* @__PURE__ */ jsx(NodeCardBadge, { tone: "speech_transcriber", children: "Whisper" }),
|
|
3783
3784
|
/* @__PURE__ */ jsx(NodeCardBadge, { tone: "speech_transcriber", soft: true, children: model }),
|
|
3784
3785
|
/* @__PURE__ */ jsx(NodeCardBadge, { tone: "speech_transcriber", soft: true, children: language }),
|
|
3785
|
-
audioRefPreview && /* @__PURE__ */ jsx("span", { className: "truncate text-[10px] text-
|
|
3786
|
+
audioRefPreview && /* @__PURE__ */ jsx("span", { className: "truncate text-[10px] text-slate-400 dark:text-slate-500", children: audioRefPreview })
|
|
3786
3787
|
] }),
|
|
3787
3788
|
/* @__PURE__ */ jsx(NodeCardDeleteAction, { nodeId: id, onDelete })
|
|
3788
3789
|
] })
|
|
@@ -3839,7 +3840,7 @@ function ConfigFormActions({
|
|
|
3839
3840
|
onSave,
|
|
3840
3841
|
saveDisabled = false
|
|
3841
3842
|
}) {
|
|
3842
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 border-t border-
|
|
3843
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 border-t border-slate-200 pt-4 dark:border-slate-700", children: [
|
|
3843
3844
|
/* @__PURE__ */ jsx(Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
|
|
3844
3845
|
/* @__PURE__ */ jsx(Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
|
|
3845
3846
|
] });
|
|
@@ -3918,7 +3919,7 @@ function VariableListEditor({
|
|
|
3918
3919
|
}
|
|
3919
3920
|
}, [handleAdd]);
|
|
3920
3921
|
return /* @__PURE__ */ jsxs("div", { children: [
|
|
3921
|
-
label && /* @__PURE__ */ jsx("label", { className: "mb-2 block text-xs font-medium text-
|
|
3922
|
+
label && /* @__PURE__ */ jsx("label", { className: "mb-2 block text-xs font-medium text-slate-500 dark:text-slate-400", children: label }),
|
|
3922
3923
|
variables.length > 0 && /* @__PURE__ */ jsx("div", { className: "mb-2 space-y-1", children: variables.map((variable, index) => /* @__PURE__ */ jsxs(
|
|
3923
3924
|
"div",
|
|
3924
3925
|
{
|
|
@@ -3931,17 +3932,19 @@ function VariableListEditor({
|
|
|
3931
3932
|
type: "text",
|
|
3932
3933
|
value: variable,
|
|
3933
3934
|
onChange: (event) => handleEdit(index, event.target.value),
|
|
3934
|
-
className: `flex-1 rounded-md border-0 bg-transparent px-1 py-0.5 text-sm font-medium text-
|
|
3935
|
+
className: `flex-1 rounded-md border-0 bg-transparent px-1 py-0.5 text-sm font-medium text-slate-900 outline-none ${colors.input} focus:ring-1 dark:text-white`
|
|
3935
3936
|
}
|
|
3936
|
-
) : /* @__PURE__ */ jsx("span", { className: "flex-1 text-sm font-medium text-
|
|
3937
|
+
) : /* @__PURE__ */ jsx("span", { className: "flex-1 text-sm font-medium text-slate-900 dark:text-white", children: variable }),
|
|
3937
3938
|
/* @__PURE__ */ jsx(
|
|
3938
|
-
|
|
3939
|
+
IconButton,
|
|
3939
3940
|
{
|
|
3940
|
-
|
|
3941
|
+
label: `Remove ${variable}`,
|
|
3942
|
+
variant: "ghost",
|
|
3943
|
+
size: "sm",
|
|
3944
|
+
destructive: true,
|
|
3941
3945
|
onClick: () => handleRemove(index),
|
|
3942
|
-
|
|
3943
|
-
"
|
|
3944
|
-
children: /* @__PURE__ */ jsx(XMarkIcon$1, { className: "h-3.5 w-3.5" })
|
|
3946
|
+
icon: /* @__PURE__ */ jsx(XMarkIcon$1, { className: "h-3.5 w-3.5" }),
|
|
3947
|
+
className: "shrink-0 opacity-0 transition-opacity group-hover:opacity-100"
|
|
3945
3948
|
}
|
|
3946
3949
|
)
|
|
3947
3950
|
]
|
|
@@ -3958,7 +3961,7 @@ function VariableListEditor({
|
|
|
3958
3961
|
onChange: (event) => setNewVariable(event.target.value),
|
|
3959
3962
|
onKeyDown: handleKeyDown,
|
|
3960
3963
|
placeholder,
|
|
3961
|
-
className: "flex-1 rounded-lg border border-
|
|
3964
|
+
className: "flex-1 rounded-lg border border-slate-200/50 bg-white/40 backdrop-blur-sm px-3 py-1.5 text-sm text-slate-700 outline-none transition-colors placeholder:text-slate-400 focus:border-slate-300 focus:ring-1 focus:ring-slate-300/30 dark:border-white/10 dark:bg-white/[0.04] dark:text-slate-300 dark:placeholder:text-slate-600"
|
|
3962
3965
|
}
|
|
3963
3966
|
),
|
|
3964
3967
|
/* @__PURE__ */ jsxs(
|
|
@@ -3975,7 +3978,7 @@ function VariableListEditor({
|
|
|
3975
3978
|
}
|
|
3976
3979
|
)
|
|
3977
3980
|
] }),
|
|
3978
|
-
variables.length === 0 && !canAdd && /* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
3981
|
+
variables.length === 0 && !canAdd && /* @__PURE__ */ jsx("p", { className: "text-xs text-slate-400 dark:text-slate-500", children: "No variables defined" })
|
|
3979
3982
|
] });
|
|
3980
3983
|
}
|
|
3981
3984
|
function StartNodeConfigForm({ config, onSave, onCancel }) {
|
|
@@ -3986,7 +3989,7 @@ function StartNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
3986
3989
|
};
|
|
3987
3990
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
3988
3991
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
3989
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-
|
|
3992
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-slate-500 dark:text-slate-400", children: t("inputVariablesHelp") }),
|
|
3990
3993
|
/* @__PURE__ */ jsx(
|
|
3991
3994
|
VariableListEditor,
|
|
3992
3995
|
{
|
|
@@ -4018,7 +4021,7 @@ function EndNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4018
4021
|
};
|
|
4019
4022
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
4020
4023
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4021
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-
|
|
4024
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-slate-500 dark:text-slate-400", children: t("outputVariablesHelp") }),
|
|
4022
4025
|
/* @__PURE__ */ jsx(
|
|
4023
4026
|
VariableListEditor,
|
|
4024
4027
|
{
|
|
@@ -4086,7 +4089,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4086
4089
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
4087
4090
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4088
4091
|
/* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
|
|
4089
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
4092
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("conditionsLabel") }),
|
|
4090
4093
|
/* @__PURE__ */ jsx(
|
|
4091
4094
|
Button,
|
|
4092
4095
|
{
|
|
@@ -4096,7 +4099,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4096
4099
|
}
|
|
4097
4100
|
)
|
|
4098
4101
|
] }),
|
|
4099
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: conditions.map((condition, index) => /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2 rounded-lg
|
|
4102
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: conditions.map((condition, index) => /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2 rounded-lg bg-white/40 backdrop-blur-sm p-3 dark:bg-white/[0.04]", children: [
|
|
4100
4103
|
/* @__PURE__ */ jsxs("div", { className: "grid flex-1 grid-cols-3 gap-2", children: [
|
|
4101
4104
|
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
|
|
4102
4105
|
FormInput,
|
|
@@ -4145,7 +4148,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4145
4148
|
] }, index)) })
|
|
4146
4149
|
] }),
|
|
4147
4150
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4148
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
4151
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("logicalOperatorLabel") }),
|
|
4149
4152
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-2", children: [
|
|
4150
4153
|
/* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 cursor-pointer", children: [
|
|
4151
4154
|
/* @__PURE__ */ jsx(
|
|
@@ -4159,7 +4162,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4159
4162
|
className: "text-indigo-600 focus:ring-indigo-400"
|
|
4160
4163
|
}
|
|
4161
4164
|
),
|
|
4162
|
-
/* @__PURE__ */ jsx("span", { className: "text-sm text-
|
|
4165
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm text-slate-700 dark:text-slate-300", children: "AND" })
|
|
4163
4166
|
] }),
|
|
4164
4167
|
/* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 cursor-pointer", children: [
|
|
4165
4168
|
/* @__PURE__ */ jsx(
|
|
@@ -4173,7 +4176,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4173
4176
|
className: "text-indigo-600 focus:ring-indigo-400"
|
|
4174
4177
|
}
|
|
4175
4178
|
),
|
|
4176
|
-
/* @__PURE__ */ jsx("span", { className: "text-sm text-
|
|
4179
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm text-slate-700 dark:text-slate-300", children: "OR" })
|
|
4177
4180
|
] })
|
|
4178
4181
|
] })
|
|
4179
4182
|
] }),
|
|
@@ -4263,17 +4266,17 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4263
4266
|
}
|
|
4264
4267
|
onSave(next);
|
|
4265
4268
|
};
|
|
4266
|
-
const labelClass = "mb-1 block text-xs font-medium text-
|
|
4267
|
-
const inputClass = "w-full rounded-lg border border-
|
|
4269
|
+
const labelClass = "mb-1 block text-xs font-medium text-slate-700 dark:text-slate-300";
|
|
4270
|
+
const inputClass = "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500";
|
|
4268
4271
|
const textareaClass = `${inputClass} font-mono text-xs`;
|
|
4269
4272
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
4270
|
-
/* @__PURE__ */ jsxs("div", { className: "flex gap-2 rounded-lg bg-
|
|
4273
|
+
/* @__PURE__ */ jsxs("div", { className: "flex gap-2 rounded-lg bg-white/40 dark:bg-white/[0.04] backdrop-blur-sm p-1 text-sm", children: [
|
|
4271
4274
|
/* @__PURE__ */ jsx(
|
|
4272
4275
|
"button",
|
|
4273
4276
|
{
|
|
4274
4277
|
type: "button",
|
|
4275
4278
|
onClick: () => setMode("operation"),
|
|
4276
|
-
className: `flex-1 rounded-md px-3 py-1.5 font-medium transition ${mode === "operation" ? "bg-white text-indigo-600 shadow-sm dark:bg-
|
|
4279
|
+
className: `flex-1 rounded-md px-3 py-1.5 font-medium transition ${mode === "operation" ? "bg-white text-indigo-600 shadow-sm dark:bg-slate-900 dark:text-indigo-400" : "text-slate-600 dark:text-slate-400"}`,
|
|
4277
4280
|
children: t("modeOperation", { _: "Operation" })
|
|
4278
4281
|
}
|
|
4279
4282
|
),
|
|
@@ -4282,7 +4285,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4282
4285
|
{
|
|
4283
4286
|
type: "button",
|
|
4284
4287
|
onClick: () => setMode("scripted"),
|
|
4285
|
-
className: `flex-1 rounded-md px-3 py-1.5 font-medium transition ${mode === "scripted" ? "bg-white text-indigo-600 shadow-sm dark:bg-
|
|
4288
|
+
className: `flex-1 rounded-md px-3 py-1.5 font-medium transition ${mode === "scripted" ? "bg-white text-indigo-600 shadow-sm dark:bg-slate-900 dark:text-indigo-400" : "text-slate-600 dark:text-slate-400"}`,
|
|
4286
4289
|
children: t("modeScripted", { _: "Scripted" })
|
|
4287
4290
|
}
|
|
4288
4291
|
)
|
|
@@ -4326,7 +4329,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4326
4329
|
children: OPERATION_OPTIONS.map((o) => /* @__PURE__ */ jsx("option", { value: o.value, children: o.label }, o.value))
|
|
4327
4330
|
}
|
|
4328
4331
|
),
|
|
4329
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-
|
|
4332
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: selectedOpHelp })
|
|
4330
4333
|
] }),
|
|
4331
4334
|
operation !== "return" && /* @__PURE__ */ jsxs("div", { children: [
|
|
4332
4335
|
/* @__PURE__ */ jsx("label", { className: labelClass, children: "from" }),
|
|
@@ -4340,7 +4343,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4340
4343
|
className: inputClass
|
|
4341
4344
|
}
|
|
4342
4345
|
),
|
|
4343
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-
|
|
4346
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: "Dotted reference into the variable pool. Leave blank to read the sole incoming edge." })
|
|
4344
4347
|
] }),
|
|
4345
4348
|
(operation === "return" || operation === "merge") && /* @__PURE__ */ jsxs("div", { children: [
|
|
4346
4349
|
/* @__PURE__ */ jsxs("label", { className: labelClass, children: [
|
|
@@ -4370,7 +4373,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4370
4373
|
className: inputClass
|
|
4371
4374
|
}
|
|
4372
4375
|
),
|
|
4373
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-
|
|
4376
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: "Comma-separated keys to project." })
|
|
4374
4377
|
] }),
|
|
4375
4378
|
operation === "regex_extract" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
4376
4379
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
@@ -4399,7 +4402,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4399
4402
|
className: inputClass
|
|
4400
4403
|
}
|
|
4401
4404
|
),
|
|
4402
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-
|
|
4405
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: "i, m, s, x, U, R (g is implicit)." })
|
|
4403
4406
|
] }),
|
|
4404
4407
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4405
4408
|
/* @__PURE__ */ jsx("label", { className: labelClass, children: "group" }),
|
|
@@ -4413,18 +4416,18 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4413
4416
|
className: inputClass
|
|
4414
4417
|
}
|
|
4415
4418
|
),
|
|
4416
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-
|
|
4419
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: "0 = whole match, 1 = first capture group (default)." })
|
|
4417
4420
|
] })
|
|
4418
4421
|
] })
|
|
4419
4422
|
] }),
|
|
4420
|
-
operation === "xml_titles" && /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-sm text-
|
|
4423
|
+
operation === "xml_titles" && /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-sm text-slate-700 dark:text-slate-300", children: [
|
|
4421
4424
|
/* @__PURE__ */ jsx(
|
|
4422
4425
|
"input",
|
|
4423
4426
|
{
|
|
4424
4427
|
type: "checkbox",
|
|
4425
4428
|
checked: keepChannel,
|
|
4426
4429
|
onChange: (event) => setKeepChannel(event.target.checked),
|
|
4427
|
-
className: "h-4 w-4 rounded border-
|
|
4430
|
+
className: "h-4 w-4 rounded border-slate-300 text-indigo-600 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600"
|
|
4428
4431
|
}
|
|
4429
4432
|
),
|
|
4430
4433
|
"Keep channel/feed title (default: drop the first `<title>`)."
|
|
@@ -4441,7 +4444,7 @@ function CodeNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4441
4444
|
className: inputClass
|
|
4442
4445
|
}
|
|
4443
4446
|
),
|
|
4444
|
-
/* @__PURE__ */ jsxs("p", { className: "mt-1 text-[11px] text-
|
|
4447
|
+
/* @__PURE__ */ jsxs("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: [
|
|
4445
4448
|
"Defaults to `",
|
|
4446
4449
|
operation === "regex_extract" ? "matches" : "titles",
|
|
4447
4450
|
"` if left blank."
|
|
@@ -4524,7 +4527,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4524
4527
|
),
|
|
4525
4528
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4526
4529
|
/* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
|
|
4527
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
4530
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("headersLabel") }),
|
|
4528
4531
|
/* @__PURE__ */ jsx(
|
|
4529
4532
|
Button,
|
|
4530
4533
|
{
|
|
@@ -4927,7 +4930,7 @@ function QuestionClassifierNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4927
4930
|
};
|
|
4928
4931
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
4929
4932
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4930
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
4933
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("modelIdLabel") }),
|
|
4931
4934
|
/* @__PURE__ */ jsx(
|
|
4932
4935
|
"input",
|
|
4933
4936
|
{
|
|
@@ -4935,12 +4938,12 @@ function QuestionClassifierNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4935
4938
|
value: modelId,
|
|
4936
4939
|
onChange: (event) => setModelId(event.target.value),
|
|
4937
4940
|
placeholder: t("modelIdPlaceholder"),
|
|
4938
|
-
className: "w-full rounded-lg border border-
|
|
4941
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
4939
4942
|
}
|
|
4940
4943
|
)
|
|
4941
4944
|
] }),
|
|
4942
4945
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4943
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
4946
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("instructionsLabel") }),
|
|
4944
4947
|
/* @__PURE__ */ jsx(
|
|
4945
4948
|
"textarea",
|
|
4946
4949
|
{
|
|
@@ -4948,34 +4951,27 @@ function QuestionClassifierNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4948
4951
|
onChange: (event) => setInstructions(event.target.value),
|
|
4949
4952
|
placeholder: t("instructionsPlaceholder"),
|
|
4950
4953
|
rows: 4,
|
|
4951
|
-
className: "w-full rounded-lg border border-
|
|
4954
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
4952
4955
|
}
|
|
4953
4956
|
)
|
|
4954
4957
|
] }),
|
|
4955
4958
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4956
4959
|
/* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
|
|
4957
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
4958
|
-
/* @__PURE__ */ jsx(
|
|
4959
|
-
"button",
|
|
4960
|
-
{
|
|
4961
|
-
type: "button",
|
|
4962
|
-
onClick: handleAddCategory,
|
|
4963
|
-
className: "text-sm text-indigo-600 hover:text-indigo-700 dark:text-indigo-400",
|
|
4964
|
-
children: t("addCategory")
|
|
4965
|
-
}
|
|
4966
|
-
)
|
|
4960
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("categoriesLabel") }),
|
|
4961
|
+
/* @__PURE__ */ jsx(Button, { type: "button", plain: true, size: "sm", onClick: handleAddCategory, children: t("addCategory") })
|
|
4967
4962
|
] }),
|
|
4968
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: categories.map((category, index) => /* @__PURE__ */ jsxs("div", { className: "rounded-lg
|
|
4963
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: categories.map((category, index) => /* @__PURE__ */ jsxs("div", { className: "rounded-lg bg-white/40 backdrop-blur-sm p-3 dark:bg-white/[0.04]", children: [
|
|
4969
4964
|
/* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
|
|
4970
|
-
/* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-
|
|
4965
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-slate-500 dark:text-slate-400", children: t("categoryIndex", { index: index + 1 }) }),
|
|
4971
4966
|
categories.length > 2 && /* @__PURE__ */ jsx(
|
|
4972
|
-
|
|
4967
|
+
IconButton,
|
|
4973
4968
|
{
|
|
4974
|
-
|
|
4969
|
+
label: t("removeCategory"),
|
|
4970
|
+
variant: "ghost",
|
|
4971
|
+
size: "sm",
|
|
4972
|
+
destructive: true,
|
|
4975
4973
|
onClick: () => handleRemoveCategory(index),
|
|
4976
|
-
className: "
|
|
4977
|
-
"aria-label": t("removeCategory"),
|
|
4978
|
-
children: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
4974
|
+
icon: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
4979
4975
|
}
|
|
4980
4976
|
)
|
|
4981
4977
|
] }),
|
|
@@ -4987,7 +4983,7 @@ function QuestionClassifierNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4987
4983
|
value: category.name,
|
|
4988
4984
|
onChange: (event) => handleCategoryChange(index, "name", event.target.value),
|
|
4989
4985
|
placeholder: t("categoryNamePlaceholder"),
|
|
4990
|
-
className: "w-full rounded-lg border border-
|
|
4986
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
4991
4987
|
}
|
|
4992
4988
|
),
|
|
4993
4989
|
/* @__PURE__ */ jsx(
|
|
@@ -4997,32 +4993,21 @@ function QuestionClassifierNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
4997
4993
|
value: category.description,
|
|
4998
4994
|
onChange: (event) => handleCategoryChange(index, "description", event.target.value),
|
|
4999
4995
|
placeholder: t("categoryDescriptionPlaceholder"),
|
|
5000
|
-
className: "w-full rounded-lg border border-
|
|
4996
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5001
4997
|
}
|
|
5002
4998
|
)
|
|
5003
4999
|
] })
|
|
5004
5000
|
] }, category.id)) })
|
|
5005
5001
|
] }),
|
|
5006
|
-
/* @__PURE__ */
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
),
|
|
5016
|
-
/* @__PURE__ */ jsx(
|
|
5017
|
-
"button",
|
|
5018
|
-
{
|
|
5019
|
-
type: "button",
|
|
5020
|
-
onClick: handleSave,
|
|
5021
|
-
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",
|
|
5022
|
-
children: t("save")
|
|
5023
|
-
}
|
|
5024
|
-
)
|
|
5025
|
-
] })
|
|
5002
|
+
/* @__PURE__ */ jsx(
|
|
5003
|
+
ConfigFormActions,
|
|
5004
|
+
{
|
|
5005
|
+
cancelLabel: t("cancel"),
|
|
5006
|
+
saveLabel: t("save"),
|
|
5007
|
+
onCancel,
|
|
5008
|
+
onSave: handleSave
|
|
5009
|
+
}
|
|
5010
|
+
)
|
|
5026
5011
|
] });
|
|
5027
5012
|
}
|
|
5028
5013
|
var PARAMETER_TYPES = ["string", "number", "boolean", "array"];
|
|
@@ -5057,7 +5042,7 @@ function ParameterExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5057
5042
|
};
|
|
5058
5043
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
5059
5044
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5060
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5045
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("modelIdLabel") }),
|
|
5061
5046
|
/* @__PURE__ */ jsx(
|
|
5062
5047
|
"input",
|
|
5063
5048
|
{
|
|
@@ -5065,37 +5050,30 @@ function ParameterExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5065
5050
|
value: modelId,
|
|
5066
5051
|
onChange: (event) => setModelId(event.target.value),
|
|
5067
5052
|
placeholder: t("modelIdPlaceholder"),
|
|
5068
|
-
className: "w-full rounded-lg border border-
|
|
5053
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5069
5054
|
}
|
|
5070
5055
|
)
|
|
5071
5056
|
] }),
|
|
5072
5057
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5073
5058
|
/* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
|
|
5074
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
5075
|
-
/* @__PURE__ */ jsx(
|
|
5076
|
-
"button",
|
|
5077
|
-
{
|
|
5078
|
-
type: "button",
|
|
5079
|
-
onClick: handleAddParameter,
|
|
5080
|
-
className: "text-sm text-indigo-600 hover:text-indigo-700 dark:text-indigo-400",
|
|
5081
|
-
children: t("addParameter")
|
|
5082
|
-
}
|
|
5083
|
-
)
|
|
5059
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("parametersLabel") }),
|
|
5060
|
+
/* @__PURE__ */ jsx(Button, { type: "button", plain: true, size: "sm", onClick: handleAddParameter, children: t("addParameter") })
|
|
5084
5061
|
] }),
|
|
5085
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: parameters.map((parameter, index) => /* @__PURE__ */ jsxs("div", { className: "rounded-lg
|
|
5062
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: parameters.map((parameter, index) => /* @__PURE__ */ jsxs("div", { className: "rounded-lg liquid-surface p-3", children: [
|
|
5086
5063
|
/* @__PURE__ */ jsx("div", { className: "mb-2 flex items-center justify-end", children: /* @__PURE__ */ jsx(
|
|
5087
|
-
|
|
5064
|
+
IconButton,
|
|
5088
5065
|
{
|
|
5089
|
-
|
|
5066
|
+
label: t("removeParameter"),
|
|
5067
|
+
variant: "ghost",
|
|
5068
|
+
size: "sm",
|
|
5069
|
+
destructive: true,
|
|
5090
5070
|
onClick: () => handleRemoveParameter(index),
|
|
5091
|
-
className: "
|
|
5092
|
-
"aria-label": t("removeParameter"),
|
|
5093
|
-
children: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
5071
|
+
icon: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
5094
5072
|
}
|
|
5095
5073
|
) }),
|
|
5096
5074
|
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-2", children: [
|
|
5097
5075
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5098
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-
|
|
5076
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-slate-500 dark:text-slate-400", children: t("parameterNameLabel") }),
|
|
5099
5077
|
/* @__PURE__ */ jsx(
|
|
5100
5078
|
"input",
|
|
5101
5079
|
{
|
|
@@ -5103,25 +5081,25 @@ function ParameterExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5103
5081
|
value: parameter.name,
|
|
5104
5082
|
onChange: (event) => handleParameterChange(index, "name", event.target.value),
|
|
5105
5083
|
placeholder: t("parameterNamePlaceholder"),
|
|
5106
|
-
className: "w-full rounded-lg border border-
|
|
5084
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5107
5085
|
}
|
|
5108
5086
|
)
|
|
5109
5087
|
] }),
|
|
5110
5088
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5111
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-
|
|
5089
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-slate-500 dark:text-slate-400", children: t("parameterTypeLabel") }),
|
|
5112
5090
|
/* @__PURE__ */ jsx(
|
|
5113
5091
|
"select",
|
|
5114
5092
|
{
|
|
5115
5093
|
value: parameter.type,
|
|
5116
5094
|
onChange: (event) => handleParameterChange(index, "type", event.target.value),
|
|
5117
|
-
className: "w-full rounded-lg border border-
|
|
5095
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500",
|
|
5118
5096
|
children: PARAMETER_TYPES.map((parameterType) => /* @__PURE__ */ jsx("option", { value: parameterType, children: parameterType }, parameterType))
|
|
5119
5097
|
}
|
|
5120
5098
|
)
|
|
5121
5099
|
] })
|
|
5122
5100
|
] }),
|
|
5123
5101
|
/* @__PURE__ */ jsxs("div", { className: "mt-2", children: [
|
|
5124
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-
|
|
5102
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-slate-500 dark:text-slate-400", children: t("parameterDescriptionLabel") }),
|
|
5125
5103
|
/* @__PURE__ */ jsx(
|
|
5126
5104
|
"input",
|
|
5127
5105
|
{
|
|
@@ -5129,7 +5107,7 @@ function ParameterExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5129
5107
|
value: parameter.description,
|
|
5130
5108
|
onChange: (event) => handleParameterChange(index, "description", event.target.value),
|
|
5131
5109
|
placeholder: t("parameterDescriptionPlaceholder"),
|
|
5132
|
-
className: "w-full rounded-lg border border-
|
|
5110
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5133
5111
|
}
|
|
5134
5112
|
)
|
|
5135
5113
|
] }),
|
|
@@ -5140,33 +5118,22 @@ function ParameterExtractorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5140
5118
|
type: "checkbox",
|
|
5141
5119
|
checked: parameter.required,
|
|
5142
5120
|
onChange: (event) => handleParameterChange(index, "required", event.target.checked),
|
|
5143
|
-
className: "rounded border-
|
|
5121
|
+
className: "rounded border-slate-300 text-indigo-600 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600"
|
|
5144
5122
|
}
|
|
5145
5123
|
),
|
|
5146
|
-
/* @__PURE__ */ jsx("span", { className: "text-sm text-
|
|
5124
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm text-slate-700 dark:text-slate-300", children: t("parameterRequiredLabel") })
|
|
5147
5125
|
] }) })
|
|
5148
5126
|
] }, index)) })
|
|
5149
5127
|
] }),
|
|
5150
|
-
/* @__PURE__ */
|
|
5151
|
-
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5156
|
-
|
|
5157
|
-
|
|
5158
|
-
|
|
5159
|
-
),
|
|
5160
|
-
/* @__PURE__ */ jsx(
|
|
5161
|
-
"button",
|
|
5162
|
-
{
|
|
5163
|
-
type: "button",
|
|
5164
|
-
onClick: handleSave,
|
|
5165
|
-
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",
|
|
5166
|
-
children: t("save")
|
|
5167
|
-
}
|
|
5168
|
-
)
|
|
5169
|
-
] })
|
|
5128
|
+
/* @__PURE__ */ jsx(
|
|
5129
|
+
ConfigFormActions,
|
|
5130
|
+
{
|
|
5131
|
+
cancelLabel: t("cancel"),
|
|
5132
|
+
saveLabel: t("save"),
|
|
5133
|
+
onCancel,
|
|
5134
|
+
onSave: handleSave
|
|
5135
|
+
}
|
|
5136
|
+
)
|
|
5170
5137
|
] });
|
|
5171
5138
|
}
|
|
5172
5139
|
function VariableAssignerNodeConfigForm({ config, onSave, onCancel }) {
|
|
@@ -5197,21 +5164,13 @@ function VariableAssignerNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5197
5164
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
5198
5165
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5199
5166
|
/* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
|
|
5200
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
5201
|
-
/* @__PURE__ */ jsx(
|
|
5202
|
-
"button",
|
|
5203
|
-
{
|
|
5204
|
-
type: "button",
|
|
5205
|
-
onClick: handleAddAssignment,
|
|
5206
|
-
className: "text-sm text-indigo-600 hover:text-indigo-700 dark:text-indigo-400",
|
|
5207
|
-
children: t("addAssignment")
|
|
5208
|
-
}
|
|
5209
|
-
)
|
|
5167
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("assignmentsLabel") }),
|
|
5168
|
+
/* @__PURE__ */ jsx(Button, { type: "button", plain: true, size: "sm", onClick: handleAddAssignment, children: t("addAssignment") })
|
|
5210
5169
|
] }),
|
|
5211
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: assignments.map((assignment, index) => /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2 rounded-lg
|
|
5170
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-3", children: assignments.map((assignment, index) => /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2 rounded-lg bg-white/40 backdrop-blur-sm p-3 dark:bg-white/[0.04]", children: [
|
|
5212
5171
|
/* @__PURE__ */ jsxs("div", { className: "grid flex-1 grid-cols-2 gap-2", children: [
|
|
5213
5172
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5214
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-
|
|
5173
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-slate-500 dark:text-slate-400", children: t("targetLabel") }),
|
|
5215
5174
|
/* @__PURE__ */ jsx(
|
|
5216
5175
|
"input",
|
|
5217
5176
|
{
|
|
@@ -5219,12 +5178,12 @@ function VariableAssignerNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5219
5178
|
value: assignment.target,
|
|
5220
5179
|
onChange: (event) => handleAssignmentChange(index, "target", event.target.value),
|
|
5221
5180
|
placeholder: t("targetPlaceholder"),
|
|
5222
|
-
className: "w-full rounded-lg border border-
|
|
5181
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5223
5182
|
}
|
|
5224
5183
|
)
|
|
5225
5184
|
] }),
|
|
5226
5185
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5227
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-
|
|
5186
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs text-slate-500 dark:text-slate-400", children: t("sourceLabel") }),
|
|
5228
5187
|
/* @__PURE__ */ jsx(
|
|
5229
5188
|
"input",
|
|
5230
5189
|
{
|
|
@@ -5232,43 +5191,34 @@ function VariableAssignerNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5232
5191
|
value: assignment.source,
|
|
5233
5192
|
onChange: (event) => handleAssignmentChange(index, "source", event.target.value),
|
|
5234
5193
|
placeholder: t("sourcePlaceholder"),
|
|
5235
|
-
className: "w-full rounded-lg border border-
|
|
5194
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5236
5195
|
}
|
|
5237
5196
|
)
|
|
5238
5197
|
] })
|
|
5239
5198
|
] }),
|
|
5240
5199
|
/* @__PURE__ */ jsx(
|
|
5241
|
-
|
|
5200
|
+
IconButton,
|
|
5242
5201
|
{
|
|
5243
|
-
|
|
5202
|
+
label: t("removeAssignment"),
|
|
5203
|
+
variant: "ghost",
|
|
5204
|
+
size: "sm",
|
|
5205
|
+
destructive: true,
|
|
5206
|
+
className: "mt-5",
|
|
5244
5207
|
onClick: () => handleRemoveAssignment(index),
|
|
5245
|
-
|
|
5246
|
-
"aria-label": t("removeAssignment"),
|
|
5247
|
-
children: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
5208
|
+
icon: /* @__PURE__ */ jsx(TrashIcon, { className: "h-4 w-4" })
|
|
5248
5209
|
}
|
|
5249
5210
|
)
|
|
5250
5211
|
] }, index)) })
|
|
5251
5212
|
] }),
|
|
5252
|
-
/* @__PURE__ */
|
|
5253
|
-
|
|
5254
|
-
|
|
5255
|
-
|
|
5256
|
-
|
|
5257
|
-
|
|
5258
|
-
|
|
5259
|
-
|
|
5260
|
-
|
|
5261
|
-
),
|
|
5262
|
-
/* @__PURE__ */ jsx(
|
|
5263
|
-
"button",
|
|
5264
|
-
{
|
|
5265
|
-
type: "button",
|
|
5266
|
-
onClick: handleSave,
|
|
5267
|
-
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",
|
|
5268
|
-
children: t("save")
|
|
5269
|
-
}
|
|
5270
|
-
)
|
|
5271
|
-
] })
|
|
5213
|
+
/* @__PURE__ */ jsx(
|
|
5214
|
+
ConfigFormActions,
|
|
5215
|
+
{
|
|
5216
|
+
cancelLabel: t("cancel"),
|
|
5217
|
+
saveLabel: t("save"),
|
|
5218
|
+
onCancel,
|
|
5219
|
+
onSave: handleSave
|
|
5220
|
+
}
|
|
5221
|
+
)
|
|
5272
5222
|
] });
|
|
5273
5223
|
}
|
|
5274
5224
|
var AGGREGATION_MODES = ["array", "object", "concatenate"];
|
|
@@ -5402,19 +5352,19 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5402
5352
|
};
|
|
5403
5353
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
5404
5354
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5405
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5355
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("operationLabel") }),
|
|
5406
5356
|
/* @__PURE__ */ jsx(
|
|
5407
5357
|
"select",
|
|
5408
5358
|
{
|
|
5409
5359
|
value: operation,
|
|
5410
5360
|
onChange: (event) => setOperation(event.target.value),
|
|
5411
|
-
className: "w-full rounded-lg border border-
|
|
5361
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500",
|
|
5412
5362
|
children: OPERATION_OPTIONS2.map((operationOption) => /* @__PURE__ */ jsx("option", { value: operationOption, children: t(`operation_${operationOption}`) }, operationOption))
|
|
5413
5363
|
}
|
|
5414
5364
|
)
|
|
5415
5365
|
] }),
|
|
5416
5366
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5417
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5367
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("inputVariableLabel") }),
|
|
5418
5368
|
/* @__PURE__ */ jsx(
|
|
5419
5369
|
"input",
|
|
5420
5370
|
{
|
|
@@ -5422,12 +5372,12 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5422
5372
|
value: inputVariable,
|
|
5423
5373
|
onChange: (event) => setInputVariable(event.target.value),
|
|
5424
5374
|
placeholder: t("inputVariablePlaceholder"),
|
|
5425
|
-
className: "w-full rounded-lg border border-
|
|
5375
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5426
5376
|
}
|
|
5427
5377
|
)
|
|
5428
5378
|
] }),
|
|
5429
5379
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5430
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5380
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("outputVariableLabel") }),
|
|
5431
5381
|
/* @__PURE__ */ jsx(
|
|
5432
5382
|
"input",
|
|
5433
5383
|
{
|
|
@@ -5435,12 +5385,12 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5435
5385
|
value: outputVariable,
|
|
5436
5386
|
onChange: (event) => setOutputVariable(event.target.value),
|
|
5437
5387
|
placeholder: t("outputVariablePlaceholder"),
|
|
5438
|
-
className: "w-full rounded-lg border border-
|
|
5388
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5439
5389
|
}
|
|
5440
5390
|
)
|
|
5441
5391
|
] }),
|
|
5442
5392
|
showConditionField && /* @__PURE__ */ jsxs("div", { children: [
|
|
5443
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5393
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("conditionLabel") }),
|
|
5444
5394
|
/* @__PURE__ */ jsx(
|
|
5445
5395
|
"input",
|
|
5446
5396
|
{
|
|
@@ -5448,13 +5398,13 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5448
5398
|
value: condition,
|
|
5449
5399
|
onChange: (event) => setCondition(event.target.value),
|
|
5450
5400
|
placeholder: t("conditionPlaceholder"),
|
|
5451
|
-
className: "w-full rounded-lg border border-
|
|
5401
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5452
5402
|
}
|
|
5453
5403
|
)
|
|
5454
5404
|
] }),
|
|
5455
5405
|
showSortFields && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
5456
5406
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5457
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5407
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("sortKeyLabel") }),
|
|
5458
5408
|
/* @__PURE__ */ jsx(
|
|
5459
5409
|
"input",
|
|
5460
5410
|
{
|
|
@@ -5462,25 +5412,25 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5462
5412
|
value: sortKey,
|
|
5463
5413
|
onChange: (event) => setSortKey(event.target.value),
|
|
5464
5414
|
placeholder: t("sortKeyPlaceholder"),
|
|
5465
|
-
className: "w-full rounded-lg border border-
|
|
5415
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5466
5416
|
}
|
|
5467
5417
|
)
|
|
5468
5418
|
] }),
|
|
5469
5419
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5470
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5420
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("sortOrderLabel") }),
|
|
5471
5421
|
/* @__PURE__ */ jsx(
|
|
5472
5422
|
"select",
|
|
5473
5423
|
{
|
|
5474
5424
|
value: sortOrder,
|
|
5475
5425
|
onChange: (event) => setSortOrder(event.target.value),
|
|
5476
|
-
className: "w-full rounded-lg border border-
|
|
5426
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500",
|
|
5477
5427
|
children: SORT_ORDER_OPTIONS.map((order) => /* @__PURE__ */ jsx("option", { value: order, children: t(`sortOrder_${order}`) }, order))
|
|
5478
5428
|
}
|
|
5479
5429
|
)
|
|
5480
5430
|
] })
|
|
5481
5431
|
] }),
|
|
5482
5432
|
showLimitField && /* @__PURE__ */ jsxs("div", { children: [
|
|
5483
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5433
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("limitCountLabel") }),
|
|
5484
5434
|
/* @__PURE__ */ jsx(
|
|
5485
5435
|
"input",
|
|
5486
5436
|
{
|
|
@@ -5488,17 +5438,17 @@ function ListOperatorNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5488
5438
|
value: limitCount,
|
|
5489
5439
|
onChange: (event) => setLimitCount(Number(event.target.value)),
|
|
5490
5440
|
min: 1,
|
|
5491
|
-
className: "w-full rounded-lg border border-
|
|
5441
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5492
5442
|
}
|
|
5493
5443
|
)
|
|
5494
5444
|
] }),
|
|
5495
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 pt-4
|
|
5445
|
+
/* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 pt-4 liquid-divider border-t", children: [
|
|
5496
5446
|
/* @__PURE__ */ jsx(
|
|
5497
5447
|
"button",
|
|
5498
5448
|
{
|
|
5499
5449
|
type: "button",
|
|
5500
5450
|
onClick: onCancel,
|
|
5501
|
-
className: "rounded-lg border border-
|
|
5451
|
+
className: "rounded-lg border border-slate-300 px-4 py-2 text-sm font-medium text-slate-700 hover:bg-white/40 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-white/[0.04]",
|
|
5502
5452
|
children: t("cancel")
|
|
5503
5453
|
}
|
|
5504
5454
|
),
|
|
@@ -5639,7 +5589,7 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5639
5589
|
const filterEntries = Object.entries(filterVariables);
|
|
5640
5590
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-5", children: [
|
|
5641
5591
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5642
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5592
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("entityTypeLabel") }),
|
|
5643
5593
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
5644
5594
|
/* @__PURE__ */ jsx("div", { className: `flex h-6 w-6 items-center justify-center rounded-md bg-gradient-to-br ${gradient}`, children: /* @__PURE__ */ jsx("span", { className: "text-[10px] text-white font-bold", children: (entityDefinition?.label ?? config.entityMasterId ?? "?").charAt(0).toUpperCase() }) }),
|
|
5645
5595
|
/* @__PURE__ */ jsx("span", { className: `inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium ${badgeColor}`, children: entityDefinition?.label ?? config.entityMasterId ?? t("entityTypeLabel") })
|
|
@@ -5647,8 +5597,8 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5647
5597
|
!entityDefinition && /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs text-amber-600 dark:text-amber-400", children: t("entityNotConfigured") })
|
|
5648
5598
|
] }),
|
|
5649
5599
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5650
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5651
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-
|
|
5600
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("outputVariableLabel") }),
|
|
5601
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-slate-500 dark:text-slate-400", children: t("outputVariableHelp") }),
|
|
5652
5602
|
/* @__PURE__ */ jsx(
|
|
5653
5603
|
"input",
|
|
5654
5604
|
{
|
|
@@ -5656,13 +5606,13 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5656
5606
|
value: outputVariable,
|
|
5657
5607
|
onChange: (event) => setOutputVariable(event.target.value),
|
|
5658
5608
|
placeholder: `${(entityDefinition?.label ?? "entity").replace(/\s+/g, "")}Data`,
|
|
5659
|
-
className: "w-full rounded-lg border border-
|
|
5609
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5660
5610
|
}
|
|
5661
5611
|
)
|
|
5662
5612
|
] }),
|
|
5663
5613
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5664
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-
|
|
5665
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-
|
|
5614
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-sm font-medium text-slate-700 dark:text-slate-300", children: t("limitLabel") }),
|
|
5615
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-slate-500 dark:text-slate-400", children: t("limitHelp") }),
|
|
5666
5616
|
/* @__PURE__ */ jsx(
|
|
5667
5617
|
"input",
|
|
5668
5618
|
{
|
|
@@ -5671,13 +5621,13 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5671
5621
|
onChange: (event) => setLimit(Math.max(1, Number.parseInt(event.target.value, 10) || 1)),
|
|
5672
5622
|
min: 1,
|
|
5673
5623
|
max: 1e3,
|
|
5674
|
-
className: "w-32 rounded-lg border border-
|
|
5624
|
+
className: "w-32 rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white"
|
|
5675
5625
|
}
|
|
5676
5626
|
)
|
|
5677
5627
|
] }),
|
|
5678
5628
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5679
5629
|
/* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
|
|
5680
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
5630
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("fieldsLabel") }),
|
|
5681
5631
|
/* @__PURE__ */ jsx(
|
|
5682
5632
|
"button",
|
|
5683
5633
|
{
|
|
@@ -5689,15 +5639,15 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5689
5639
|
)
|
|
5690
5640
|
] }),
|
|
5691
5641
|
selectedFields.length === 0 && /* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-amber-600 dark:text-amber-400", children: t("noFieldsSelected") }),
|
|
5692
|
-
/* @__PURE__ */ jsxs("div", { className: "max-h-48 space-y-1 overflow-y-auto rounded-lg border border-
|
|
5693
|
-
availableFields.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-2 py-2 text-xs text-
|
|
5642
|
+
/* @__PURE__ */ jsxs("div", { className: "max-h-48 space-y-1 overflow-y-auto rounded-lg border border-slate-200 p-2 dark:border-slate-700", children: [
|
|
5643
|
+
availableFields.length === 0 && /* @__PURE__ */ jsx("p", { className: "px-2 py-2 text-xs text-slate-500 dark:text-slate-400", children: t("noFieldsSelected") }),
|
|
5694
5644
|
availableFields.map((field) => {
|
|
5695
5645
|
const isSelected = selectedFields.includes(field.name);
|
|
5696
5646
|
const typeBadgeColor = FIELD_TYPE_BADGE_COLORS[field.type] ?? FIELD_TYPE_BADGE_COLORS.string;
|
|
5697
5647
|
return /* @__PURE__ */ jsxs(
|
|
5698
5648
|
"label",
|
|
5699
5649
|
{
|
|
5700
|
-
className: `flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 transition-colors ${isSelected ? "bg-indigo-50 dark:bg-indigo-500/10" : "hover:bg-
|
|
5650
|
+
className: `flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 transition-colors ${isSelected ? "bg-indigo-50 dark:bg-indigo-500/10" : "hover:bg-white/40 dark:hover:bg-white/[0.04]"}`,
|
|
5701
5651
|
children: [
|
|
5702
5652
|
/* @__PURE__ */ jsx(
|
|
5703
5653
|
"input",
|
|
@@ -5705,10 +5655,10 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5705
5655
|
type: "checkbox",
|
|
5706
5656
|
checked: isSelected,
|
|
5707
5657
|
onChange: () => handleToggleField(field.name),
|
|
5708
|
-
className: "h-3.5 w-3.5 rounded border-
|
|
5658
|
+
className: "h-3.5 w-3.5 rounded border-slate-300 text-indigo-600 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600"
|
|
5709
5659
|
}
|
|
5710
5660
|
),
|
|
5711
|
-
/* @__PURE__ */ jsx("span", { className: "flex-1 text-xs font-medium text-
|
|
5661
|
+
/* @__PURE__ */ jsx("span", { className: "flex-1 text-xs font-medium text-slate-900 dark:text-white", children: field.name }),
|
|
5712
5662
|
/* @__PURE__ */ jsx("span", { className: `rounded-full px-1.5 py-0.5 text-[9px] font-medium ${typeBadgeColor}`, children: field.type })
|
|
5713
5663
|
]
|
|
5714
5664
|
},
|
|
@@ -5719,7 +5669,7 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5719
5669
|
] }),
|
|
5720
5670
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5721
5671
|
/* @__PURE__ */ jsxs("div", { className: "mb-1 flex items-center justify-between", children: [
|
|
5722
|
-
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-
|
|
5672
|
+
/* @__PURE__ */ jsx("label", { className: "text-sm font-medium text-slate-700 dark:text-slate-300", children: t("filtersLabel") }),
|
|
5723
5673
|
/* @__PURE__ */ jsxs(
|
|
5724
5674
|
"button",
|
|
5725
5675
|
{
|
|
@@ -5733,7 +5683,7 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5733
5683
|
}
|
|
5734
5684
|
)
|
|
5735
5685
|
] }),
|
|
5736
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-
|
|
5686
|
+
/* @__PURE__ */ jsx("p", { className: "mb-2 text-xs text-slate-500 dark:text-slate-400", children: t("filtersHelp") }),
|
|
5737
5687
|
filterEntries.length > 0 && /* @__PURE__ */ jsx("div", { className: "space-y-2", children: filterEntries.map(([variableName, fieldName], index) => /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
5738
5688
|
/* @__PURE__ */ jsx(
|
|
5739
5689
|
"input",
|
|
@@ -5742,16 +5692,16 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5742
5692
|
value: variableName,
|
|
5743
5693
|
onChange: (event) => handleUpdateFilterVariable(variableName, event.target.value),
|
|
5744
5694
|
placeholder: t("variableName"),
|
|
5745
|
-
className: "flex-1 rounded-lg border border-
|
|
5695
|
+
className: "flex-1 rounded-lg border border-slate-300 bg-white px-2 py-1.5 text-xs text-slate-900 placeholder-slate-400 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white dark:placeholder-slate-500"
|
|
5746
5696
|
}
|
|
5747
5697
|
),
|
|
5748
|
-
/* @__PURE__ */ jsx("span", { className: "text-xs text-
|
|
5698
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs text-slate-400", children: "\u2192" }),
|
|
5749
5699
|
/* @__PURE__ */ jsxs(
|
|
5750
5700
|
"select",
|
|
5751
5701
|
{
|
|
5752
5702
|
value: fieldName,
|
|
5753
5703
|
onChange: (event) => handleUpdateFilterField(variableName, event.target.value),
|
|
5754
|
-
className: "flex-1 rounded-lg border border-
|
|
5704
|
+
className: "flex-1 rounded-lg border border-slate-300 bg-white px-2 py-1.5 text-xs text-slate-900 outline-none focus:border-indigo-400 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white",
|
|
5755
5705
|
children: [
|
|
5756
5706
|
/* @__PURE__ */ jsx("option", { value: "", children: t("fieldName") }),
|
|
5757
5707
|
availableFields.map((field) => /* @__PURE__ */ jsx("option", { value: field.name, children: field.name }, field.name))
|
|
@@ -5769,13 +5719,13 @@ function EntityNodeConfigForm({ config, entities = [], onSave, onCancel }) {
|
|
|
5769
5719
|
)
|
|
5770
5720
|
] }, index)) })
|
|
5771
5721
|
] }),
|
|
5772
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2
|
|
5722
|
+
/* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 liquid-divider border-t pt-4", children: [
|
|
5773
5723
|
/* @__PURE__ */ jsx(
|
|
5774
5724
|
"button",
|
|
5775
5725
|
{
|
|
5776
5726
|
type: "button",
|
|
5777
5727
|
onClick: onCancel,
|
|
5778
|
-
className: "rounded-lg border border-
|
|
5728
|
+
className: "rounded-lg border border-slate-300 px-4 py-2 text-sm font-medium text-slate-700 hover:bg-white/40 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-white/[0.04]",
|
|
5779
5729
|
children: t("cancel")
|
|
5780
5730
|
}
|
|
5781
5731
|
),
|
|
@@ -5836,7 +5786,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
5836
5786
|
}
|
|
5837
5787
|
),
|
|
5838
5788
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5839
|
-
/* @__PURE__ */ jsx("label", { className: "mb-2 block text-sm font-medium text-
|
|
5789
|
+
/* @__PURE__ */ jsx("label", { className: "mb-2 block text-sm font-medium text-slate-700 dark:text-slate-300", children: translations("colorField") }),
|
|
5840
5790
|
/* @__PURE__ */ jsx("div", { className: "flex items-center gap-3", children: GROUP_COLOR_OPTIONS.map((option) => /* @__PURE__ */ jsx(
|
|
5841
5791
|
"button",
|
|
5842
5792
|
{
|
|
@@ -5871,13 +5821,13 @@ function RuleNodeConfigForm({ config, onSave, onCancel, availableRules }) {
|
|
|
5871
5821
|
};
|
|
5872
5822
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
5873
5823
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
5874
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-
|
|
5824
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-slate-700 dark:text-slate-300", children: t("ruleIdLabel", { _: "Rule" }) }),
|
|
5875
5825
|
availableRules && availableRules.length > 0 ? /* @__PURE__ */ jsxs(
|
|
5876
5826
|
"select",
|
|
5877
5827
|
{
|
|
5878
5828
|
value: ruleId,
|
|
5879
5829
|
onChange: (event) => setRuleId(event.target.value),
|
|
5880
|
-
className: "w-full rounded-lg border border-
|
|
5830
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm text-slate-900 outline-none focus:border-indigo-400 focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600 dark:bg-slate-800 dark:text-white",
|
|
5881
5831
|
children: [
|
|
5882
5832
|
/* @__PURE__ */ jsx("option", { value: "", children: t("rulePickPrompt", { _: "Choose a rule\u2026" }) }),
|
|
5883
5833
|
availableRules.map((rule) => /* @__PURE__ */ jsx("option", { value: rule.ruleId, children: rule.name ? `${rule.name} (${rule.ruleId})` : rule.ruleId }, rule.ruleId))
|
|
@@ -5892,7 +5842,7 @@ function RuleNodeConfigForm({ config, onSave, onCancel, availableRules }) {
|
|
|
5892
5842
|
placeholder: "e.g. peak_hours"
|
|
5893
5843
|
}
|
|
5894
5844
|
),
|
|
5895
|
-
/* @__PURE__ */ jsxs("p", { className: "mt-1 text-[11px] text-
|
|
5845
|
+
/* @__PURE__ */ jsxs("p", { className: "mt-1 text-[11px] text-slate-500 dark:text-slate-400", children: [
|
|
5896
5846
|
"References an ",
|
|
5897
5847
|
/* @__PURE__ */ jsx("code", { children: "astrlabe.agent_rules.rule_id" }),
|
|
5898
5848
|
" row in this organization."
|
|
@@ -5909,14 +5859,14 @@ function RuleNodeConfigForm({ config, onSave, onCancel, availableRules }) {
|
|
|
5909
5859
|
min: 0
|
|
5910
5860
|
}
|
|
5911
5861
|
),
|
|
5912
|
-
/* @__PURE__ */ jsxs("label", { className: "flex items-end gap-2 pb-2 text-sm text-
|
|
5862
|
+
/* @__PURE__ */ jsxs("label", { className: "flex items-end gap-2 pb-2 text-sm text-slate-700 dark:text-slate-300", children: [
|
|
5913
5863
|
/* @__PURE__ */ jsx(
|
|
5914
5864
|
"input",
|
|
5915
5865
|
{
|
|
5916
5866
|
type: "checkbox",
|
|
5917
5867
|
checked: enabled,
|
|
5918
5868
|
onChange: (event) => setEnabled(event.target.checked),
|
|
5919
|
-
className: "h-4 w-4 rounded border-
|
|
5869
|
+
className: "h-4 w-4 rounded border-slate-300 text-indigo-600 focus:ring-indigo-500/70 focus:ring-offset-1 dark:border-slate-600"
|
|
5920
5870
|
}
|
|
5921
5871
|
),
|
|
5922
5872
|
t("enabledLabel", { _: "Enabled" })
|
|
@@ -6252,14 +6202,14 @@ function DashboardOutputNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
6252
6202
|
}
|
|
6253
6203
|
};
|
|
6254
6204
|
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
6255
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
6205
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: t("description") }),
|
|
6256
6206
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-2", children: [
|
|
6257
6207
|
/* @__PURE__ */ jsx(
|
|
6258
6208
|
"button",
|
|
6259
6209
|
{
|
|
6260
6210
|
type: "button",
|
|
6261
6211
|
onClick: () => setMode("reference"),
|
|
6262
|
-
className: `flex-1 rounded-lg border px-3 py-2 text-xs font-medium transition-colors ${mode === "reference" ? "border-fuchsia-500 bg-fuchsia-500/10 text-fuchsia-700 dark:text-fuchsia-300" : "border-
|
|
6212
|
+
className: `flex-1 rounded-lg border px-3 py-2 text-xs font-medium transition-colors ${mode === "reference" ? "border-fuchsia-500 bg-fuchsia-500/10 text-fuchsia-700 dark:text-fuchsia-300" : "border-slate-200 bg-white text-slate-600 hover:border-fuchsia-300 dark:border-white/10 dark:bg-white/5 dark:text-slate-300"}`,
|
|
6263
6213
|
children: t("modeReference")
|
|
6264
6214
|
}
|
|
6265
6215
|
),
|
|
@@ -6268,13 +6218,13 @@ function DashboardOutputNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
6268
6218
|
{
|
|
6269
6219
|
type: "button",
|
|
6270
6220
|
onClick: () => setMode("inline"),
|
|
6271
|
-
className: `flex-1 rounded-lg border px-3 py-2 text-xs font-medium transition-colors ${mode === "inline" ? "border-fuchsia-500 bg-fuchsia-500/10 text-fuchsia-700 dark:text-fuchsia-300" : "border-
|
|
6221
|
+
className: `flex-1 rounded-lg border px-3 py-2 text-xs font-medium transition-colors ${mode === "inline" ? "border-fuchsia-500 bg-fuchsia-500/10 text-fuchsia-700 dark:text-fuchsia-300" : "border-slate-200 bg-white text-slate-600 hover:border-fuchsia-300 dark:border-white/10 dark:bg-white/5 dark:text-slate-300"}`,
|
|
6272
6222
|
children: t("modeInline")
|
|
6273
6223
|
}
|
|
6274
6224
|
)
|
|
6275
6225
|
] }),
|
|
6276
6226
|
mode === "reference" ? /* @__PURE__ */ jsxs("div", { children: [
|
|
6277
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-
|
|
6227
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-slate-700 dark:text-slate-300", children: t("referenceLabel") }),
|
|
6278
6228
|
/* @__PURE__ */ jsx(
|
|
6279
6229
|
"input",
|
|
6280
6230
|
{
|
|
@@ -6282,12 +6232,12 @@ function DashboardOutputNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
6282
6232
|
value: dashboardFrom,
|
|
6283
6233
|
onChange: (event) => setDashboardFrom(event.target.value),
|
|
6284
6234
|
placeholder: t("referencePlaceholder"),
|
|
6285
|
-
className: "w-full rounded-lg border border-
|
|
6235
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm font-mono text-slate-900 placeholder:text-slate-400 focus:border-fuchsia-500 focus:outline-none focus:ring-1 focus:ring-fuchsia-500 dark:border-white/10 dark:bg-white/5 dark:text-white"
|
|
6286
6236
|
}
|
|
6287
6237
|
),
|
|
6288
|
-
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[10px] text-
|
|
6238
|
+
/* @__PURE__ */ jsx("p", { className: "mt-1 text-[10px] text-slate-500 dark:text-slate-400", children: t("referenceHelp") })
|
|
6289
6239
|
] }) : /* @__PURE__ */ jsxs("div", { children: [
|
|
6290
|
-
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-
|
|
6240
|
+
/* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-slate-700 dark:text-slate-300", children: t("inlineLabel") }),
|
|
6291
6241
|
/* @__PURE__ */ jsx(
|
|
6292
6242
|
"textarea",
|
|
6293
6243
|
{
|
|
@@ -6295,14 +6245,14 @@ function DashboardOutputNodeConfigForm({ config, onSave, onCancel }) {
|
|
|
6295
6245
|
onChange: (event) => setInlineJson(event.target.value),
|
|
6296
6246
|
placeholder: '{\\n "kpis": [],\\n "charts": [],\\n "tables": []\\n}',
|
|
6297
6247
|
rows: 12,
|
|
6298
|
-
className: "w-full rounded-lg border border-
|
|
6248
|
+
className: "w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-xs font-mono text-slate-900 placeholder:text-slate-400 focus:border-fuchsia-500 focus:outline-none focus:ring-1 focus:ring-fuchsia-500 dark:border-white/10 dark:bg-white/5 dark:text-white"
|
|
6299
6249
|
}
|
|
6300
6250
|
),
|
|
6301
6251
|
parseError ? /* @__PURE__ */ jsxs("p", { className: "mt-1 text-[10px] font-medium text-red-600 dark:text-red-400", children: [
|
|
6302
6252
|
t("parseError"),
|
|
6303
6253
|
": ",
|
|
6304
6254
|
parseError
|
|
6305
|
-
] }) : /* @__PURE__ */ jsx("p", { className: "mt-1 text-[10px] text-
|
|
6255
|
+
] }) : /* @__PURE__ */ jsx("p", { className: "mt-1 text-[10px] text-slate-500 dark:text-slate-400", children: t("inlineHelp") })
|
|
6306
6256
|
] }),
|
|
6307
6257
|
/* @__PURE__ */ jsx(
|
|
6308
6258
|
ConfigFormActions,
|
|
@@ -8583,5 +8533,5 @@ function Workspace({
|
|
|
8583
8533
|
}
|
|
8584
8534
|
|
|
8585
8535
|
export { AgentFlowNode, AgentToolFlowNode, AnswerFlowNode, AnthropicIcon, CATEGORY_COLORS, CATEGORY_PILL_COLORS, CodeFlowNode, CrewAIIcon, DocumentExtractorFlowNode, EXPERIMENTAL_NODE_TYPES, EndFlowNode, EntityFlowNode, FRAMEWORK_META, GoogleADKIcon, GroupFlowNode, HttpRequestFlowNode, ICON_MAP, IfElseFlowNode, IterationFlowNode, IterationStartFlowNode, KnowledgeBaseFlowNode, LOGIC_ICON_MAP, LOGIC_NODE_BADGE_COLORS, LOGIC_NODE_GRADIENTS, LOGIC_NODE_HANDLE_COLORS, LangChainIcon, ListOperatorFlowNode, LogicNodeModal, MINIMAP_NODE_COLORS, NODE_EXECUTION_ACCENT_COLORS, NodeCard, NodeCardBadge, NodeCardDeleteAction, NodeCardHeader, NodeCardMeta, NodeContextMenu, NodeIconBubble, NodeInteractiveCard, NodeRunningIndicator, NoteFlowNode, OpenAIIcon, PanelContextMenu, ParameterExtractorFlowNode, QuestionClassifierFlowNode, RuleFlowNode, SelectionContextMenu, StartFlowNode, StrandsIcon, TemplateTransformFlowNode, ToolFlowNode, VariableAggregatorFlowNode, VariableAssignerFlowNode, WorkflowBuilderProvider, WorkflowCanvas, WorkflowHandle, Workspace, getCompatibleModels, getDefaultFrameworkForModel, getEntityBadgeColor, getEntityGradient, getEntityHandleColor, getEntityIcon, getEntityMinimapColor, getFrameworkMeta, getNodeExecutionAccent, getNodeExecutionAccentRgb, isFrameworkCompatibleWithProviders, isModelCompatibleWithFramework, useModalStore, useWorkflowBuilderClient, useWorkflowBuilderClientOptional, useWorkflowStore };
|
|
8586
|
-
//# sourceMappingURL=chunk-
|
|
8587
|
-
//# sourceMappingURL=chunk-
|
|
8536
|
+
//# sourceMappingURL=chunk-TRNDFSM6.mjs.map
|
|
8537
|
+
//# sourceMappingURL=chunk-TRNDFSM6.mjs.map
|