@datatechsolutions/ui 2.11.89 → 2.11.90

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.
Files changed (101) hide show
  1. package/dist/astrlabe/index.js +106 -106
  2. package/dist/astrlabe/index.mjs +3 -3
  3. package/dist/astrlabe/workflow-canvas.js +3 -3
  4. package/dist/astrlabe/workflow-canvas.mjs +2 -2
  5. package/dist/{chunk-K26RY4EQ.js → chunk-5EBDOY4M.js} +26 -26
  6. package/dist/{chunk-K26RY4EQ.js.map → chunk-5EBDOY4M.js.map} +1 -1
  7. package/dist/{chunk-TLDVFFAK.mjs → chunk-5NOWS6T3.mjs} +3 -3
  8. package/dist/{chunk-TLDVFFAK.mjs.map → chunk-5NOWS6T3.mjs.map} +1 -1
  9. package/dist/{chunk-X2KCCQPL.js → chunk-64DLD6FB.js} +55 -55
  10. package/dist/{chunk-X2KCCQPL.js.map → chunk-64DLD6FB.js.map} +1 -1
  11. package/dist/{chunk-NAQ32ZPG.mjs → chunk-76XIV6VV.mjs} +6 -6
  12. package/dist/{chunk-NAQ32ZPG.mjs.map → chunk-76XIV6VV.mjs.map} +1 -1
  13. package/dist/{chunk-URDQSUW6.js → chunk-7GDDBF6E.js} +39 -39
  14. package/dist/{chunk-URDQSUW6.js.map → chunk-7GDDBF6E.js.map} +1 -1
  15. package/dist/{chunk-3YVQXDKJ.js → chunk-APXM5GFL.js} +4 -4
  16. package/dist/{chunk-3YVQXDKJ.js.map → chunk-APXM5GFL.js.map} +1 -1
  17. package/dist/{chunk-TZ62G5WM.js → chunk-B3DI2QUM.js} +84 -66
  18. package/dist/chunk-B3DI2QUM.js.map +1 -0
  19. package/dist/{chunk-G7DZU3NM.mjs → chunk-CM5C4M4F.mjs} +3 -3
  20. package/dist/{chunk-G7DZU3NM.mjs.map → chunk-CM5C4M4F.mjs.map} +1 -1
  21. package/dist/{chunk-MXFEU7A6.js → chunk-DIKLHCEM.js} +4 -4
  22. package/dist/{chunk-MXFEU7A6.js.map → chunk-DIKLHCEM.js.map} +1 -1
  23. package/dist/{chunk-ZHHRWC27.js → chunk-FDK3PUTV.js} +135 -148
  24. package/dist/chunk-FDK3PUTV.js.map +1 -0
  25. package/dist/{chunk-XOZMUCMF.mjs → chunk-FS6SU7RE.mjs} +3 -3
  26. package/dist/{chunk-XOZMUCMF.mjs.map → chunk-FS6SU7RE.mjs.map} +1 -1
  27. package/dist/{chunk-UUHV5KHF.js → chunk-FXLGNKP4.js} +33 -33
  28. package/dist/{chunk-UUHV5KHF.js.map → chunk-FXLGNKP4.js.map} +1 -1
  29. package/dist/{chunk-TOEMSC4P.mjs → chunk-IL5RSF2U.mjs} +6 -6
  30. package/dist/{chunk-TOEMSC4P.mjs.map → chunk-IL5RSF2U.mjs.map} +1 -1
  31. package/dist/{chunk-GEUGFYLO.mjs → chunk-K6FX26BG.mjs} +3 -3
  32. package/dist/{chunk-GEUGFYLO.mjs.map → chunk-K6FX26BG.mjs.map} +1 -1
  33. package/dist/{chunk-2URBM4LA.js → chunk-M7PKDVKA.js} +6 -6
  34. package/dist/{chunk-2URBM4LA.js.map → chunk-M7PKDVKA.js.map} +1 -1
  35. package/dist/{chunk-SUHNSUMH.mjs → chunk-MJOYUX2C.mjs} +4 -4
  36. package/dist/{chunk-SUHNSUMH.mjs.map → chunk-MJOYUX2C.mjs.map} +1 -1
  37. package/dist/{chunk-HK6J6HQP.mjs → chunk-MR3BLQAU.mjs} +11 -24
  38. package/dist/chunk-MR3BLQAU.mjs.map +1 -0
  39. package/dist/{chunk-SAYVWIMJ.js → chunk-MWZQF2D5.js} +4 -4
  40. package/dist/{chunk-SAYVWIMJ.js.map → chunk-MWZQF2D5.js.map} +1 -1
  41. package/dist/{chunk-RV555OEO.mjs → chunk-ODEUUB2T.mjs} +4 -4
  42. package/dist/{chunk-RV555OEO.mjs.map → chunk-ODEUUB2T.mjs.map} +1 -1
  43. package/dist/{chunk-UVEPTYZC.js → chunk-QHTA2ISY.js} +12 -12
  44. package/dist/{chunk-UVEPTYZC.js.map → chunk-QHTA2ISY.js.map} +1 -1
  45. package/dist/{chunk-JUTOBBBI.mjs → chunk-QYH6WLKE.mjs} +4 -4
  46. package/dist/{chunk-JUTOBBBI.mjs.map → chunk-QYH6WLKE.mjs.map} +1 -1
  47. package/dist/{chunk-LBALE4JX.js → chunk-R5D6LLDF.js} +67 -67
  48. package/dist/{chunk-LBALE4JX.js.map → chunk-R5D6LLDF.js.map} +1 -1
  49. package/dist/{chunk-5HXDJBVX.mjs → chunk-RTQOGG4T.mjs} +4 -4
  50. package/dist/{chunk-5HXDJBVX.mjs.map → chunk-RTQOGG4T.mjs.map} +1 -1
  51. package/dist/{chunk-ZJQ5RLGK.mjs → chunk-S3JHPXOX.mjs} +539 -307
  52. package/dist/chunk-S3JHPXOX.mjs.map +1 -0
  53. package/dist/{chunk-D4TESEYK.mjs → chunk-T3S6KZN3.mjs} +24 -7
  54. package/dist/chunk-T3S6KZN3.mjs.map +1 -0
  55. package/dist/{chunk-NBCOVUQP.mjs → chunk-TLTYLDX4.mjs} +3 -3
  56. package/dist/{chunk-NBCOVUQP.mjs.map → chunk-TLTYLDX4.mjs.map} +1 -1
  57. package/dist/{chunk-Q2MG7S2E.js → chunk-ULWVYDDG.js} +15 -15
  58. package/dist/{chunk-Q2MG7S2E.js.map → chunk-ULWVYDDG.js.map} +1 -1
  59. package/dist/{chunk-4667D2ZT.mjs → chunk-UZ3FGGUP.mjs} +3 -3
  60. package/dist/{chunk-4667D2ZT.mjs.map → chunk-UZ3FGGUP.mjs.map} +1 -1
  61. package/dist/{chunk-SV4SMITM.js → chunk-WAOCUWO3.js} +36 -36
  62. package/dist/{chunk-SV4SMITM.js.map → chunk-WAOCUWO3.js.map} +1 -1
  63. package/dist/{chunk-ZARCUQA6.js → chunk-WETG7OO3.js} +53 -53
  64. package/dist/{chunk-ZARCUQA6.js.map → chunk-WETG7OO3.js.map} +1 -1
  65. package/dist/{chunk-KNXAOJAK.js → chunk-ZBX2QSNH.js} +532 -300
  66. package/dist/chunk-ZBX2QSNH.js.map +1 -0
  67. package/dist/{chunk-F4TOOARV.mjs → chunk-ZV5ZRT6E.mjs} +3 -3
  68. package/dist/{chunk-F4TOOARV.mjs.map → chunk-ZV5ZRT6E.mjs.map} +1 -1
  69. package/dist/index.d.mts +154 -0
  70. package/dist/index.d.ts +154 -0
  71. package/dist/index.js +744 -744
  72. package/dist/index.mjs +1 -1
  73. package/dist/platform/admin/index.js +10 -10
  74. package/dist/platform/admin/index.mjs +4 -4
  75. package/dist/platform/agents-workspace.js +6 -6
  76. package/dist/platform/agents-workspace.mjs +5 -5
  77. package/dist/platform/app-shell.js +3 -3
  78. package/dist/platform/app-shell.mjs +2 -2
  79. package/dist/platform/auth/index.js +27 -27
  80. package/dist/platform/auth/index.mjs +4 -4
  81. package/dist/platform/billing/index.js +3 -3
  82. package/dist/platform/billing/index.mjs +2 -2
  83. package/dist/platform/impersonation/index.js +3 -3
  84. package/dist/platform/impersonation/index.mjs +2 -2
  85. package/dist/platform/index.d.mts +1 -1
  86. package/dist/platform/index.d.ts +1 -1
  87. package/dist/platform/index.js +91 -91
  88. package/dist/platform/index.mjs +18 -18
  89. package/dist/platform/pages/index.js +195 -195
  90. package/dist/platform/pages/index.mjs +7 -7
  91. package/dist/platform/settings/index.js +7 -7
  92. package/dist/platform/settings/index.mjs +6 -6
  93. package/dist/platform/workflow-canvas-shell.js +4 -4
  94. package/dist/platform/workflow-canvas-shell.mjs +3 -3
  95. package/package.json +1 -1
  96. package/dist/chunk-D4TESEYK.mjs.map +0 -1
  97. package/dist/chunk-HK6J6HQP.mjs.map +0 -1
  98. package/dist/chunk-KNXAOJAK.js.map +0 -1
  99. package/dist/chunk-TZ62G5WM.js.map +0 -1
  100. package/dist/chunk-ZHHRWC27.js.map +0 -1
  101. package/dist/chunk-ZJQ5RLGK.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkKNXAOJAK_js = require('./chunk-KNXAOJAK.js');
4
+ var chunkZBX2QSNH_js = require('./chunk-ZBX2QSNH.js');
5
5
  var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
6
6
  var chunkP4YYEM4B_js = require('./chunk-P4YYEM4B.js');
7
7
  var chunkC7BI5LQ6_js = require('./chunk-C7BI5LQ6.js');
@@ -445,6 +445,13 @@ var LOGIC_ICON_MAP = {
445
445
  dashboard_output: outline.ChartBarIcon,
446
446
  group: outline.RectangleGroupIcon
447
447
  };
448
+ var EXPERIMENTAL_NODE_TYPES = /* @__PURE__ */ new Set([
449
+ "document_extractor",
450
+ "knowledge_base"
451
+ ]);
452
+ function isExperimentalNodeType(nodeType) {
453
+ return !!nodeType && EXPERIMENTAL_NODE_TYPES.has(nodeType);
454
+ }
448
455
  var NODE_SELECTED_CLASS = "node-card-selected";
449
456
  var NODE_HOVER_CLASS = "node-card-hover";
450
457
  var NODE_BORDER_COLORS = {
@@ -1678,7 +1685,7 @@ function DatasourceNodeConfigForm({
1678
1685
  }
1679
1686
  const logo = getDatasourceLogo(selectedDatasourceId, selectedDatasource?.dialect);
1680
1687
  return /* @__PURE__ */ jsxRuntime.jsx(
1681
- chunkKNXAOJAK_js.GlassModal,
1688
+ chunkZBX2QSNH_js.GlassModal,
1682
1689
  {
1683
1690
  open,
1684
1691
  onClose: onCancel,
@@ -1693,8 +1700,8 @@ function DatasourceNodeConfigForm({
1693
1700
  onSectionChange: setActiveSectionId
1694
1701
  },
1695
1702
  footer: readOnly ? void 0 : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 px-6 py-3", children: [
1696
- /* @__PURE__ */ jsxRuntime.jsx(chunkKNXAOJAK_js.Button, { outline: true, onClick: onCancel, children: t("cancel") }),
1697
- /* @__PURE__ */ jsxRuntime.jsx(chunkKNXAOJAK_js.Button, { color: "cyan", onClick: handleSave, disabled: !canSave, children: t("save") })
1703
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZBX2QSNH_js.Button, { outline: true, onClick: onCancel, children: t("cancel") }),
1704
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZBX2QSNH_js.Button, { color: "cyan", onClick: handleSave, disabled: !canSave, children: t("save") })
1698
1705
  ] }),
1699
1706
  children: renderSection()
1700
1707
  }
@@ -2201,7 +2208,7 @@ var AgentToolFlowNode = react.memo(function AgentToolFlowNode2({ id, data, selec
2201
2208
  event.stopPropagation();
2202
2209
  },
2203
2210
  children: /* @__PURE__ */ jsxRuntime.jsx(
2204
- chunkKNXAOJAK_js.ToggleSwitch,
2211
+ chunkZBX2QSNH_js.ToggleSwitch,
2205
2212
  {
2206
2213
  checked: Boolean(agentTool.enabled),
2207
2214
  onChange: () => data.onToggle?.(agentTool),
@@ -2309,7 +2316,7 @@ var ToolFlowNode = react.memo(function ToolFlowNode2({ id, data, selected }) {
2309
2316
  event.preventDefault();
2310
2317
  },
2311
2318
  children: /* @__PURE__ */ jsxRuntime.jsx(
2312
- chunkKNXAOJAK_js.ToggleSwitch,
2319
+ chunkZBX2QSNH_js.ToggleSwitch,
2313
2320
  {
2314
2321
  checked: Boolean(tool.enabled),
2315
2322
  onChange: () => onToggle(tool),
@@ -2461,7 +2468,7 @@ var RuleFlowNode = react.memo(function RuleFlowNode2({ id, data, selected }) {
2461
2468
  event.preventDefault();
2462
2469
  },
2463
2470
  children: /* @__PURE__ */ jsxRuntime.jsx(
2464
- chunkKNXAOJAK_js.ToggleSwitch,
2471
+ chunkZBX2QSNH_js.ToggleSwitch,
2465
2472
  {
2466
2473
  checked: Boolean(rule.enabled),
2467
2474
  onChange: () => onToggle(rule),
@@ -3461,7 +3468,7 @@ var DatasourceFlowNode = react.memo(function DatasourceFlowNode2({ id, data, sel
3461
3468
  event.preventDefault();
3462
3469
  },
3463
3470
  children: /* @__PURE__ */ jsxRuntime.jsx(
3464
- chunkKNXAOJAK_js.ToggleSwitch,
3471
+ chunkZBX2QSNH_js.ToggleSwitch,
3465
3472
  {
3466
3473
  checked: true,
3467
3474
  onChange: () => {
@@ -3789,8 +3796,8 @@ function ConfigFormActions({
3789
3796
  saveDisabled = false
3790
3797
  }) {
3791
3798
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", children: [
3792
- /* @__PURE__ */ jsxRuntime.jsx(chunkKNXAOJAK_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
3793
- /* @__PURE__ */ jsxRuntime.jsx(chunkKNXAOJAK_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
3799
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZBX2QSNH_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
3800
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZBX2QSNH_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
3794
3801
  ] });
3795
3802
  }
3796
3803
  var COLOR_CLASSES = {
@@ -4037,7 +4044,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
4037
4044
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
4038
4045
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("conditionsLabel") }),
4039
4046
  /* @__PURE__ */ jsxRuntime.jsx(
4040
- chunkKNXAOJAK_js.Button,
4047
+ chunkZBX2QSNH_js.Button,
4041
4048
  {
4042
4049
  type: "button",
4043
4050
  onClick: handleAddCondition,
@@ -4048,7 +4055,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
4048
4055
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: conditions.map((condition, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-2 rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50", children: [
4049
4056
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid flex-1 grid-cols-3 gap-2", children: [
4050
4057
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
4051
- chunkKNXAOJAK_js.FormInput,
4058
+ chunkZBX2QSNH_js.FormInput,
4052
4059
  {
4053
4060
  type: "text",
4054
4061
  label: t("variableLabel"),
@@ -4059,7 +4066,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
4059
4066
  }
4060
4067
  ) }),
4061
4068
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
4062
- chunkKNXAOJAK_js.FormSelect,
4069
+ chunkZBX2QSNH_js.FormSelect,
4063
4070
  {
4064
4071
  label: t("operatorLabel"),
4065
4072
  value: condition.operator,
@@ -4069,7 +4076,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
4069
4076
  }
4070
4077
  ) }),
4071
4078
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
4072
- chunkKNXAOJAK_js.FormInput,
4079
+ chunkZBX2QSNH_js.FormInput,
4073
4080
  {
4074
4081
  type: "text",
4075
4082
  label: t("valueLabel"),
@@ -4081,7 +4088,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
4081
4088
  ) })
4082
4089
  ] }),
4083
4090
  conditions.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
4084
- chunkKNXAOJAK_js.IconButton,
4091
+ chunkZBX2QSNH_js.IconButton,
4085
4092
  {
4086
4093
  onClick: () => handleRemoveCondition(index),
4087
4094
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
@@ -4453,7 +4460,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4453
4460
  };
4454
4461
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4455
4462
  /* @__PURE__ */ jsxRuntime.jsx(
4456
- chunkKNXAOJAK_js.FormSelect,
4463
+ chunkZBX2QSNH_js.FormSelect,
4457
4464
  {
4458
4465
  label: t("methodLabel"),
4459
4466
  value: method,
@@ -4462,7 +4469,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4462
4469
  }
4463
4470
  ),
4464
4471
  /* @__PURE__ */ jsxRuntime.jsx(
4465
- chunkKNXAOJAK_js.FormInput,
4472
+ chunkZBX2QSNH_js.FormInput,
4466
4473
  {
4467
4474
  type: "text",
4468
4475
  label: t("urlLabel"),
@@ -4475,7 +4482,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4475
4482
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
4476
4483
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("headersLabel") }),
4477
4484
  /* @__PURE__ */ jsxRuntime.jsx(
4478
- chunkKNXAOJAK_js.Button,
4485
+ chunkZBX2QSNH_js.Button,
4479
4486
  {
4480
4487
  type: "button",
4481
4488
  onClick: handleAddHeader,
@@ -4485,7 +4492,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4485
4492
  ] }),
4486
4493
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-2", children: headerEntries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
4487
4494
  /* @__PURE__ */ jsxRuntime.jsx(
4488
- chunkKNXAOJAK_js.FormInput,
4495
+ chunkZBX2QSNH_js.FormInput,
4489
4496
  {
4490
4497
  type: "text",
4491
4498
  value: entry.key,
@@ -4495,7 +4502,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4495
4502
  }
4496
4503
  ),
4497
4504
  /* @__PURE__ */ jsxRuntime.jsx(
4498
- chunkKNXAOJAK_js.FormInput,
4505
+ chunkZBX2QSNH_js.FormInput,
4499
4506
  {
4500
4507
  type: "text",
4501
4508
  value: entry.value,
@@ -4505,7 +4512,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4505
4512
  }
4506
4513
  ),
4507
4514
  /* @__PURE__ */ jsxRuntime.jsx(
4508
- chunkKNXAOJAK_js.IconButton,
4515
+ chunkZBX2QSNH_js.IconButton,
4509
4516
  {
4510
4517
  onClick: () => handleRemoveHeader(index),
4511
4518
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
@@ -4517,7 +4524,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4517
4524
  ] }, index)) })
4518
4525
  ] }),
4519
4526
  method !== "GET" && /* @__PURE__ */ jsxRuntime.jsx(
4520
- chunkKNXAOJAK_js.FormTextarea,
4527
+ chunkZBX2QSNH_js.FormTextarea,
4521
4528
  {
4522
4529
  label: t("bodyLabel"),
4523
4530
  value: body,
@@ -4528,7 +4535,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4528
4535
  }
4529
4536
  ),
4530
4537
  /* @__PURE__ */ jsxRuntime.jsx(
4531
- chunkKNXAOJAK_js.FormInput,
4538
+ chunkZBX2QSNH_js.FormInput,
4532
4539
  {
4533
4540
  type: "number",
4534
4541
  label: t("timeoutLabel"),
@@ -4540,7 +4547,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
4540
4547
  }
4541
4548
  ),
4542
4549
  /* @__PURE__ */ jsxRuntime.jsx(
4543
- chunkKNXAOJAK_js.FormSelect,
4550
+ chunkZBX2QSNH_js.FormSelect,
4544
4551
  {
4545
4552
  label: t("parseResponseLabel"),
4546
4553
  value: parseResponse,
@@ -4571,7 +4578,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
4571
4578
  };
4572
4579
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4573
4580
  /* @__PURE__ */ jsxRuntime.jsx(
4574
- chunkKNXAOJAK_js.FormTextarea,
4581
+ chunkZBX2QSNH_js.FormTextarea,
4575
4582
  {
4576
4583
  label: t("templateLabel"),
4577
4584
  value: template,
@@ -4582,7 +4589,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
4582
4589
  }
4583
4590
  ),
4584
4591
  /* @__PURE__ */ jsxRuntime.jsx(
4585
- chunkKNXAOJAK_js.FormInput,
4592
+ chunkZBX2QSNH_js.FormInput,
4586
4593
  {
4587
4594
  type: "text",
4588
4595
  label: t("outputVariableLabel"),
@@ -4611,7 +4618,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
4611
4618
  };
4612
4619
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4613
4620
  /* @__PURE__ */ jsxRuntime.jsx(
4614
- chunkKNXAOJAK_js.FormInput,
4621
+ chunkZBX2QSNH_js.FormInput,
4615
4622
  {
4616
4623
  type: "text",
4617
4624
  label: t("iteratorVariableLabel"),
@@ -4621,7 +4628,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
4621
4628
  }
4622
4629
  ),
4623
4630
  /* @__PURE__ */ jsxRuntime.jsx(
4624
- chunkKNXAOJAK_js.FormInput,
4631
+ chunkZBX2QSNH_js.FormInput,
4625
4632
  {
4626
4633
  type: "number",
4627
4634
  label: t("maxIterationsLabel"),
@@ -4652,7 +4659,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
4652
4659
  };
4653
4660
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4654
4661
  /* @__PURE__ */ jsxRuntime.jsx(
4655
- chunkKNXAOJAK_js.FormInput,
4662
+ chunkZBX2QSNH_js.FormInput,
4656
4663
  {
4657
4664
  type: "text",
4658
4665
  label: t("sourceIdLabel"),
@@ -4662,7 +4669,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
4662
4669
  }
4663
4670
  ),
4664
4671
  /* @__PURE__ */ jsxRuntime.jsx(
4665
- chunkKNXAOJAK_js.FormInput,
4672
+ chunkZBX2QSNH_js.FormInput,
4666
4673
  {
4667
4674
  type: "number",
4668
4675
  label: t("topKLabel"),
@@ -4673,7 +4680,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
4673
4680
  }
4674
4681
  ),
4675
4682
  /* @__PURE__ */ jsxRuntime.jsx(
4676
- chunkKNXAOJAK_js.FormInput,
4683
+ chunkZBX2QSNH_js.FormInput,
4677
4684
  {
4678
4685
  type: "number",
4679
4686
  label: t("similarityThresholdLabel"),
@@ -4704,7 +4711,7 @@ function AnswerNodeConfigForm({ config, onSave, onCancel }) {
4704
4711
  };
4705
4712
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4706
4713
  /* @__PURE__ */ jsxRuntime.jsx(
4707
- chunkKNXAOJAK_js.FormTextarea,
4714
+ chunkZBX2QSNH_js.FormTextarea,
4708
4715
  {
4709
4716
  label: t("outputTemplateLabel"),
4710
4717
  hint: t("outputTemplateHelp"),
@@ -5138,7 +5145,7 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
5138
5145
  }
5139
5146
  ),
5140
5147
  /* @__PURE__ */ jsxRuntime.jsx(
5141
- chunkKNXAOJAK_js.FormInput,
5148
+ chunkZBX2QSNH_js.FormInput,
5142
5149
  {
5143
5150
  type: "text",
5144
5151
  label: t("outputVariableLabel"),
@@ -5148,7 +5155,7 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
5148
5155
  }
5149
5156
  ),
5150
5157
  /* @__PURE__ */ jsxRuntime.jsx(
5151
- chunkKNXAOJAK_js.FormSelect,
5158
+ chunkZBX2QSNH_js.FormSelect,
5152
5159
  {
5153
5160
  label: t("aggregationModeLabel"),
5154
5161
  value: aggregationMode,
@@ -5181,7 +5188,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
5181
5188
  };
5182
5189
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5183
5190
  /* @__PURE__ */ jsxRuntime.jsx(
5184
- chunkKNXAOJAK_js.FormSelect,
5191
+ chunkZBX2QSNH_js.FormSelect,
5185
5192
  {
5186
5193
  label: t("extractionModeLabel"),
5187
5194
  value: extractionMode,
@@ -5190,7 +5197,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
5190
5197
  }
5191
5198
  ),
5192
5199
  /* @__PURE__ */ jsxRuntime.jsx(
5193
- chunkKNXAOJAK_js.FormInput,
5200
+ chunkZBX2QSNH_js.FormInput,
5194
5201
  {
5195
5202
  type: "text",
5196
5203
  label: t("outputVariableLabel"),
@@ -5367,7 +5374,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
5367
5374
  };
5368
5375
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5369
5376
  /* @__PURE__ */ jsxRuntime.jsx(
5370
- chunkKNXAOJAK_js.FormInput,
5377
+ chunkZBX2QSNH_js.FormInput,
5371
5378
  {
5372
5379
  type: "text",
5373
5380
  label: t("iteratorVariableLabel"),
@@ -5377,7 +5384,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
5377
5384
  }
5378
5385
  ),
5379
5386
  /* @__PURE__ */ jsxRuntime.jsx(
5380
- chunkKNXAOJAK_js.FormInput,
5387
+ chunkZBX2QSNH_js.FormInput,
5381
5388
  {
5382
5389
  type: "text",
5383
5390
  label: t("itemVariableLabel"),
@@ -5387,7 +5394,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
5387
5394
  }
5388
5395
  ),
5389
5396
  /* @__PURE__ */ jsxRuntime.jsx(
5390
- chunkKNXAOJAK_js.FormInput,
5397
+ chunkZBX2QSNH_js.FormInput,
5391
5398
  {
5392
5399
  type: "text",
5393
5400
  label: t("indexVariableLabel"),
@@ -5659,7 +5666,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
5659
5666
  };
5660
5667
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5661
5668
  /* @__PURE__ */ jsxRuntime.jsx(
5662
- chunkKNXAOJAK_js.FormInput,
5669
+ chunkZBX2QSNH_js.FormInput,
5663
5670
  {
5664
5671
  type: "text",
5665
5672
  label: translations("labelField"),
@@ -5669,7 +5676,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
5669
5676
  }
5670
5677
  ),
5671
5678
  /* @__PURE__ */ jsxRuntime.jsx(
5672
- chunkKNXAOJAK_js.FormTextarea,
5679
+ chunkZBX2QSNH_js.FormTextarea,
5673
5680
  {
5674
5681
  label: translations("descriptionField"),
5675
5682
  value: description,
@@ -5827,7 +5834,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5827
5834
  };
5828
5835
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5829
5836
  /* @__PURE__ */ jsxRuntime.jsx(
5830
- chunkKNXAOJAK_js.FormInput,
5837
+ chunkZBX2QSNH_js.FormInput,
5831
5838
  {
5832
5839
  type: "text",
5833
5840
  label: t("nameLabel"),
@@ -5837,7 +5844,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5837
5844
  }
5838
5845
  ),
5839
5846
  /* @__PURE__ */ jsxRuntime.jsx(
5840
- chunkKNXAOJAK_js.FormSelect,
5847
+ chunkZBX2QSNH_js.FormSelect,
5841
5848
  {
5842
5849
  label: t("providerTypeLabel"),
5843
5850
  value: providerType,
@@ -5846,7 +5853,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5846
5853
  }
5847
5854
  ),
5848
5855
  showRegion && /* @__PURE__ */ jsxRuntime.jsx(
5849
- chunkKNXAOJAK_js.FormSelect,
5856
+ chunkZBX2QSNH_js.FormSelect,
5850
5857
  {
5851
5858
  label: t("regionLabel"),
5852
5859
  value: region,
@@ -5855,7 +5862,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5855
5862
  }
5856
5863
  ),
5857
5864
  showEndpoint && /* @__PURE__ */ jsxRuntime.jsx(
5858
- chunkKNXAOJAK_js.FormInput,
5865
+ chunkZBX2QSNH_js.FormInput,
5859
5866
  {
5860
5867
  type: "text",
5861
5868
  label: t("endpointLabel"),
@@ -5865,7 +5872,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5865
5872
  }
5866
5873
  ),
5867
5874
  showApiKey && /* @__PURE__ */ jsxRuntime.jsx(
5868
- chunkKNXAOJAK_js.FormInput,
5875
+ chunkZBX2QSNH_js.FormInput,
5869
5876
  {
5870
5877
  type: "password",
5871
5878
  label: t("apiKeyLabel"),
@@ -5875,7 +5882,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5875
5882
  }
5876
5883
  ),
5877
5884
  showCredentialRef && /* @__PURE__ */ jsxRuntime.jsx(
5878
- chunkKNXAOJAK_js.FormInput,
5885
+ chunkZBX2QSNH_js.FormInput,
5879
5886
  {
5880
5887
  type: "text",
5881
5888
  label: t("credentialRefLabel"),
@@ -5945,7 +5952,7 @@ function RuleNodeConfigForm({ config, onSave, onCancel, availableRules }) {
5945
5952
  ]
5946
5953
  }
5947
5954
  ) : /* @__PURE__ */ jsxRuntime.jsx(
5948
- chunkKNXAOJAK_js.FormInput,
5955
+ chunkZBX2QSNH_js.FormInput,
5949
5956
  {
5950
5957
  type: "text",
5951
5958
  value: ruleId,
@@ -5961,7 +5968,7 @@ function RuleNodeConfigForm({ config, onSave, onCancel, availableRules }) {
5961
5968
  ] }),
5962
5969
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-3", children: [
5963
5970
  /* @__PURE__ */ jsxRuntime.jsx(
5964
- chunkKNXAOJAK_js.FormInput,
5971
+ chunkZBX2QSNH_js.FormInput,
5965
5972
  {
5966
5973
  type: "number",
5967
5974
  label: t("priorityLabel", { _: "Priority" }),
@@ -6033,7 +6040,7 @@ function AgentNodeConfigForm({
6033
6040
  }));
6034
6041
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
6035
6042
  agentOptions.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
6036
- chunkKNXAOJAK_js.FormSelect,
6043
+ chunkZBX2QSNH_js.FormSelect,
6037
6044
  {
6038
6045
  label: t("agentLabel", { _: "Agent" }),
6039
6046
  value: agentId,
@@ -6041,7 +6048,7 @@ function AgentNodeConfigForm({
6041
6048
  options: [{ value: "", label: t("agentPickPrompt", { _: "Choose an agent\u2026" }) }, ...agentOptions]
6042
6049
  }
6043
6050
  ) : /* @__PURE__ */ jsxRuntime.jsx(
6044
- chunkKNXAOJAK_js.FormInput,
6051
+ chunkZBX2QSNH_js.FormInput,
6045
6052
  {
6046
6053
  type: "text",
6047
6054
  label: t("agentIdLabel", { _: "Agent ID" }),
@@ -6051,7 +6058,7 @@ function AgentNodeConfigForm({
6051
6058
  }
6052
6059
  ),
6053
6060
  connOptions.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
6054
- chunkKNXAOJAK_js.FormSelect,
6061
+ chunkZBX2QSNH_js.FormSelect,
6055
6062
  {
6056
6063
  label: t("connectionLabel", { _: "Model provider connection" }),
6057
6064
  value: connectionId,
@@ -6059,7 +6066,7 @@ function AgentNodeConfigForm({
6059
6066
  options: [{ value: "", label: t("connectionPickPrompt", { _: "Inline model (no connection)" }) }, ...connOptions]
6060
6067
  }
6061
6068
  ) : /* @__PURE__ */ jsxRuntime.jsx(
6062
- chunkKNXAOJAK_js.FormInput,
6069
+ chunkZBX2QSNH_js.FormInput,
6063
6070
  {
6064
6071
  type: "text",
6065
6072
  label: t("connectionIdLabel", { _: "Connection ID" }),
@@ -6069,7 +6076,7 @@ function AgentNodeConfigForm({
6069
6076
  }
6070
6077
  ),
6071
6078
  /* @__PURE__ */ jsxRuntime.jsx(
6072
- chunkKNXAOJAK_js.FormInput,
6079
+ chunkZBX2QSNH_js.FormInput,
6073
6080
  {
6074
6081
  type: "text",
6075
6082
  label: t("modelIdLabel", { _: "Model override (optional)" }),
@@ -6079,7 +6086,7 @@ function AgentNodeConfigForm({
6079
6086
  }
6080
6087
  ),
6081
6088
  /* @__PURE__ */ jsxRuntime.jsx(
6082
- chunkKNXAOJAK_js.FormTextarea,
6089
+ chunkZBX2QSNH_js.FormTextarea,
6083
6090
  {
6084
6091
  label: t("systemPromptLabel", { _: "System prompt" }),
6085
6092
  value: systemPrompt,
@@ -6089,7 +6096,7 @@ function AgentNodeConfigForm({
6089
6096
  }
6090
6097
  ),
6091
6098
  /* @__PURE__ */ jsxRuntime.jsx(
6092
- chunkKNXAOJAK_js.FormTextarea,
6099
+ chunkZBX2QSNH_js.FormTextarea,
6093
6100
  {
6094
6101
  label: t("userPromptLabel", { _: "User prompt" }),
6095
6102
  value: userPrompt,
@@ -6100,7 +6107,7 @@ function AgentNodeConfigForm({
6100
6107
  ),
6101
6108
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-3", children: [
6102
6109
  /* @__PURE__ */ jsxRuntime.jsx(
6103
- chunkKNXAOJAK_js.FormInput,
6110
+ chunkZBX2QSNH_js.FormInput,
6104
6111
  {
6105
6112
  type: "number",
6106
6113
  label: t("maxTokensLabel", { _: "Max output tokens" }),
@@ -6112,7 +6119,7 @@ function AgentNodeConfigForm({
6112
6119
  }
6113
6120
  ),
6114
6121
  /* @__PURE__ */ jsxRuntime.jsx(
6115
- chunkKNXAOJAK_js.FormInput,
6122
+ chunkZBX2QSNH_js.FormInput,
6116
6123
  {
6117
6124
  type: "number",
6118
6125
  label: t("temperatureLabel", { _: "Temperature" }),
@@ -6226,8 +6233,9 @@ function LogicNodeModal({ onSave, entities = [], datasources = [], onLoadTables,
6226
6233
  return null;
6227
6234
  }
6228
6235
  };
6229
- return /* @__PURE__ */ jsxRuntime.jsx(
6230
- chunkKNXAOJAK_js.GlassModal,
6236
+ const isExperimental = isExperimentalNodeType(config.type);
6237
+ return /* @__PURE__ */ jsxRuntime.jsxs(
6238
+ chunkZBX2QSNH_js.GlassModal,
6231
6239
  {
6232
6240
  open,
6233
6241
  onClose: closeModal,
@@ -6237,7 +6245,16 @@ function LogicNodeModal({ onSave, entities = [], datasources = [], onLoadTables,
6237
6245
  icon: IconComponent ? /* @__PURE__ */ jsxRuntime.jsx(IconComponent, { className: "h-5 w-5 text-white" }) : void 0,
6238
6246
  gradient,
6239
6247
  maxWidth: "2xl",
6240
- children: renderForm()
6248
+ children: [
6249
+ isExperimental && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4 flex items-start gap-2 rounded-lg border border-amber-300/40 bg-amber-50/70 px-3 py-2 text-xs text-amber-900 dark:border-amber-500/30 dark:bg-amber-500/10 dark:text-amber-100", children: [
6250
+ /* @__PURE__ */ jsxRuntime.jsx(outline.BeakerIcon, { className: "mt-0.5 h-4 w-4 shrink-0 text-amber-600 dark:text-amber-300", "aria-hidden": "true" }),
6251
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
6252
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-semibold", children: t("experimentalNode") }),
6253
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-amber-800/90 dark:text-amber-100/80", children: t("experimentalNodeWarning") })
6254
+ ] })
6255
+ ] }),
6256
+ renderForm()
6257
+ ]
6241
6258
  }
6242
6259
  );
6243
6260
  }
@@ -6287,7 +6304,7 @@ function NodeContextMenu({ position, targetId, onClose, onEdit, onDuplicate, onC
6287
6304
  }
6288
6305
  ];
6289
6306
  return /* @__PURE__ */ jsxRuntime.jsx(
6290
- chunkKNXAOJAK_js.ContextMenu,
6307
+ chunkZBX2QSNH_js.ContextMenu,
6291
6308
  {
6292
6309
  position,
6293
6310
  onClose,
@@ -6344,7 +6361,7 @@ function PanelContextMenu({ position, onClose, onPaste, onSelectAll, onFitView,
6344
6361
  }
6345
6362
  ];
6346
6363
  return /* @__PURE__ */ jsxRuntime.jsx(
6347
- chunkKNXAOJAK_js.ContextMenu,
6364
+ chunkZBX2QSNH_js.ContextMenu,
6348
6365
  {
6349
6366
  position,
6350
6367
  onClose,
@@ -6491,7 +6508,7 @@ function SelectionContextMenu({
6491
6508
  }
6492
6509
  ];
6493
6510
  return /* @__PURE__ */ jsxRuntime.jsx(
6494
- chunkKNXAOJAK_js.ContextMenu,
6511
+ chunkZBX2QSNH_js.ContextMenu,
6495
6512
  {
6496
6513
  position,
6497
6514
  onClose,
@@ -8375,6 +8392,7 @@ exports.CATEGORY_PILL_COLORS = CATEGORY_PILL_COLORS;
8375
8392
  exports.CodeFlowNode = CodeFlowNode;
8376
8393
  exports.CrewAIIcon = CrewAIIcon;
8377
8394
  exports.DocumentExtractorFlowNode = DocumentExtractorFlowNode;
8395
+ exports.EXPERIMENTAL_NODE_TYPES = EXPERIMENTAL_NODE_TYPES;
8378
8396
  exports.EndFlowNode = EndFlowNode;
8379
8397
  exports.EntityFlowNode = EntityFlowNode;
8380
8398
  exports.FRAMEWORK_META = FRAMEWORK_META;
@@ -8430,5 +8448,5 @@ exports.useModalStore = useModalStore;
8430
8448
  exports.useWorkflowBuilderClient = useWorkflowBuilderClient;
8431
8449
  exports.useWorkflowBuilderClientOptional = useWorkflowBuilderClientOptional;
8432
8450
  exports.useWorkflowStore = useWorkflowStore;
8433
- //# sourceMappingURL=chunk-TZ62G5WM.js.map
8434
- //# sourceMappingURL=chunk-TZ62G5WM.js.map
8451
+ //# sourceMappingURL=chunk-B3DI2QUM.js.map
8452
+ //# sourceMappingURL=chunk-B3DI2QUM.js.map