@datatechsolutions/ui 2.11.31 → 2.11.33

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.
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkKPHTHSHJ_js = require('./chunk-KPHTHSHJ.js');
5
- var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
4
+ var chunkLH2JDCO3_js = require('./chunk-LH2JDCO3.js');
6
5
  var chunkP4YYEM4B_js = require('./chunk-P4YYEM4B.js');
7
6
  var chunkPWBWP5FJ_js = require('./chunk-PWBWP5FJ.js');
7
+ var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
8
8
  var react = require('react');
9
9
  var react$1 = require('@xyflow/react');
10
10
  require('@xyflow/react/dist/style.css');
@@ -30,6 +30,10 @@ var useWorkflowStore = zustand.create((set, get) => ({
30
30
  showVariableInspector: false,
31
31
  showVersionHistory: false,
32
32
  showRunPanel: false,
33
+ showMinimap: true,
34
+ showDots: true,
35
+ showShortcuts: false,
36
+ cardDisplayMode: "detailed",
33
37
  isRunning: false,
34
38
  nodeResults: {},
35
39
  selectedRunId: null,
@@ -173,6 +177,21 @@ var useWorkflowStore = zustand.create((set, get) => ({
173
177
  toggleRunPanel: () => {
174
178
  set((state) => ({ showRunPanel: !state.showRunPanel }));
175
179
  },
180
+ toggleMinimap: () => {
181
+ set((state) => ({ showMinimap: !state.showMinimap }));
182
+ },
183
+ toggleDots: () => {
184
+ set((state) => ({ showDots: !state.showDots }));
185
+ },
186
+ toggleShortcuts: () => {
187
+ set((state) => ({ showShortcuts: !state.showShortcuts }));
188
+ },
189
+ closeShortcuts: () => {
190
+ set({ showShortcuts: false });
191
+ },
192
+ toggleCardDisplayMode: () => {
193
+ set((state) => ({ cardDisplayMode: state.cardDisplayMode === "detailed" ? "compact" : "detailed" }));
194
+ },
176
195
  setIsRunning: (running) => {
177
196
  set({ isRunning: running });
178
197
  },
@@ -203,6 +222,10 @@ var useWorkflowStore = zustand.create((set, get) => ({
203
222
  showVariableInspector: false,
204
223
  showVersionHistory: false,
205
224
  showRunPanel: false,
225
+ showMinimap: true,
226
+ showDots: true,
227
+ showShortcuts: false,
228
+ cardDisplayMode: "detailed",
206
229
  isRunning: false,
207
230
  nodeResults: {},
208
231
  selectedRunId: null,
@@ -795,6 +818,8 @@ var DraggableCommandBar = react.memo(function DraggableCommandBar2({
795
818
  onControlModeChange,
796
819
  showMinimap,
797
820
  onToggleMinimap,
821
+ showDots,
822
+ onToggleDots,
798
823
  cardDisplayMode,
799
824
  onToggleCardDisplayMode,
800
825
  layoutDirection,
@@ -918,6 +943,16 @@ var DraggableCommandBar = react.memo(function DraggableCommandBar2({
918
943
  children: /* @__PURE__ */ jsxRuntime.jsx(outline.MapIcon, { className: "h-4 w-4" })
919
944
  }
920
945
  ),
946
+ /* @__PURE__ */ jsxRuntime.jsx(
947
+ "button",
948
+ {
949
+ type: "button",
950
+ onClick: onToggleDots,
951
+ title: tWorkflow("toggleDots"),
952
+ className: showDots ? activeButtonClassName : inactiveButtonClassName,
953
+ children: /* @__PURE__ */ jsxRuntime.jsx(outline.EllipsisHorizontalIcon, { className: "h-4 w-4" })
954
+ }
955
+ ),
921
956
  /* @__PURE__ */ jsxRuntime.jsx(
922
957
  "button",
923
958
  {
@@ -994,7 +1029,9 @@ var DraggableCommandBar = react.memo(function DraggableCommandBar2({
994
1029
  { keys: "\u21E7 5", label: tWorkflow("shortcutZoom50") },
995
1030
  { keys: "Esc", label: tWorkflow("shortcutDeselect") },
996
1031
  { keys: "\u232B", label: tWorkflow("shortcutDelete") },
997
- { keys: "L", label: tWorkflow("layoutMode") }
1032
+ { keys: "L", label: tWorkflow("layoutMode") },
1033
+ { keys: "G", label: tWorkflow("toggleDots") },
1034
+ { keys: "M", label: tWorkflow("toggleMinimap") }
998
1035
  ].map((shortcut) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between", children: [
999
1036
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[11px] text-gray-600 dark:text-gray-300", children: shortcut.label }),
1000
1037
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center gap-0.5", children: shortcut.keys.split(" ").map((key) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -1601,11 +1638,12 @@ var AgentToolFlowNode = react.memo(function AgentToolFlowNode2({ id, data, selec
1601
1638
  event.stopPropagation();
1602
1639
  },
1603
1640
  children: /* @__PURE__ */ jsxRuntime.jsx(
1604
- chunkKPHTHSHJ_js.ToggleSwitch,
1641
+ chunkLH2JDCO3_js.ToggleSwitch,
1605
1642
  {
1606
1643
  checked: Boolean(agentTool.enabled),
1607
1644
  onChange: () => data.onToggle?.(agentTool),
1608
1645
  size: "sm",
1646
+ color: "blue",
1609
1647
  label: `${agentTool.name} enabled`
1610
1648
  }
1611
1649
  )
@@ -1708,11 +1746,12 @@ var ToolFlowNode = react.memo(function ToolFlowNode2({ id, data, selected }) {
1708
1746
  event.preventDefault();
1709
1747
  },
1710
1748
  children: /* @__PURE__ */ jsxRuntime.jsx(
1711
- chunkKPHTHSHJ_js.ToggleSwitch,
1749
+ chunkLH2JDCO3_js.ToggleSwitch,
1712
1750
  {
1713
1751
  checked: Boolean(tool.enabled),
1714
1752
  onChange: () => onToggle(tool),
1715
1753
  size: "sm",
1754
+ color: "blue",
1716
1755
  label: `${tool.name} enabled`
1717
1756
  }
1718
1757
  )
@@ -1859,11 +1898,12 @@ var RuleFlowNode = react.memo(function RuleFlowNode2({ id, data, selected }) {
1859
1898
  event.preventDefault();
1860
1899
  },
1861
1900
  children: /* @__PURE__ */ jsxRuntime.jsx(
1862
- chunkKPHTHSHJ_js.ToggleSwitch,
1901
+ chunkLH2JDCO3_js.ToggleSwitch,
1863
1902
  {
1864
1903
  checked: Boolean(rule.enabled),
1865
1904
  onChange: () => onToggle(rule),
1866
1905
  size: "sm",
1906
+ color: "violet",
1867
1907
  label: `${rule.name} enabled`
1868
1908
  }
1869
1909
  )
@@ -3150,8 +3190,8 @@ function ConfigFormActions({
3150
3190
  saveDisabled = false
3151
3191
  }) {
3152
3192
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", children: [
3153
- /* @__PURE__ */ jsxRuntime.jsx(chunkKPHTHSHJ_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
3154
- /* @__PURE__ */ jsxRuntime.jsx(chunkKPHTHSHJ_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
3193
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLH2JDCO3_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
3194
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLH2JDCO3_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
3155
3195
  ] });
3156
3196
  }
3157
3197
  var COLOR_CLASSES = {
@@ -3398,7 +3438,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
3398
3438
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-3 flex items-center justify-between", children: [
3399
3439
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("conditionsLabel") }),
3400
3440
  /* @__PURE__ */ jsxRuntime.jsx(
3401
- chunkKPHTHSHJ_js.Button,
3441
+ chunkLH2JDCO3_js.Button,
3402
3442
  {
3403
3443
  type: "button",
3404
3444
  onClick: handleAddCondition,
@@ -3409,7 +3449,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
3409
3449
  /* @__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: [
3410
3450
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid flex-1 grid-cols-3 gap-2", children: [
3411
3451
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
3412
- chunkKPHTHSHJ_js.FormInput,
3452
+ chunkLH2JDCO3_js.FormInput,
3413
3453
  {
3414
3454
  type: "text",
3415
3455
  label: t("variableLabel"),
@@ -3420,7 +3460,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
3420
3460
  }
3421
3461
  ) }),
3422
3462
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
3423
- chunkKPHTHSHJ_js.FormSelect,
3463
+ chunkLH2JDCO3_js.FormSelect,
3424
3464
  {
3425
3465
  label: t("operatorLabel"),
3426
3466
  value: condition.operator,
@@ -3430,7 +3470,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
3430
3470
  }
3431
3471
  ) }),
3432
3472
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
3433
- chunkKPHTHSHJ_js.FormInput,
3473
+ chunkLH2JDCO3_js.FormInput,
3434
3474
  {
3435
3475
  type: "text",
3436
3476
  label: t("valueLabel"),
@@ -3442,7 +3482,7 @@ function IfElseNodeConfigForm({ config, onSave, onCancel }) {
3442
3482
  ) })
3443
3483
  ] }),
3444
3484
  conditions.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
3445
- chunkKPHTHSHJ_js.IconButton,
3485
+ chunkLH2JDCO3_js.IconButton,
3446
3486
  {
3447
3487
  onClick: () => handleRemoveCondition(index),
3448
3488
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
@@ -3597,7 +3637,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3597
3637
  };
3598
3638
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3599
3639
  /* @__PURE__ */ jsxRuntime.jsx(
3600
- chunkKPHTHSHJ_js.FormSelect,
3640
+ chunkLH2JDCO3_js.FormSelect,
3601
3641
  {
3602
3642
  label: t("methodLabel"),
3603
3643
  value: method,
@@ -3606,7 +3646,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3606
3646
  }
3607
3647
  ),
3608
3648
  /* @__PURE__ */ jsxRuntime.jsx(
3609
- chunkKPHTHSHJ_js.FormInput,
3649
+ chunkLH2JDCO3_js.FormInput,
3610
3650
  {
3611
3651
  type: "text",
3612
3652
  label: t("urlLabel"),
@@ -3619,7 +3659,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3619
3659
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
3620
3660
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: t("headersLabel") }),
3621
3661
  /* @__PURE__ */ jsxRuntime.jsx(
3622
- chunkKPHTHSHJ_js.Button,
3662
+ chunkLH2JDCO3_js.Button,
3623
3663
  {
3624
3664
  type: "button",
3625
3665
  onClick: handleAddHeader,
@@ -3629,7 +3669,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3629
3669
  ] }),
3630
3670
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-2", children: headerEntries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
3631
3671
  /* @__PURE__ */ jsxRuntime.jsx(
3632
- chunkKPHTHSHJ_js.FormInput,
3672
+ chunkLH2JDCO3_js.FormInput,
3633
3673
  {
3634
3674
  type: "text",
3635
3675
  value: entry.key,
@@ -3639,7 +3679,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3639
3679
  }
3640
3680
  ),
3641
3681
  /* @__PURE__ */ jsxRuntime.jsx(
3642
- chunkKPHTHSHJ_js.FormInput,
3682
+ chunkLH2JDCO3_js.FormInput,
3643
3683
  {
3644
3684
  type: "text",
3645
3685
  value: entry.value,
@@ -3649,7 +3689,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3649
3689
  }
3650
3690
  ),
3651
3691
  /* @__PURE__ */ jsxRuntime.jsx(
3652
- chunkKPHTHSHJ_js.IconButton,
3692
+ chunkLH2JDCO3_js.IconButton,
3653
3693
  {
3654
3694
  onClick: () => handleRemoveHeader(index),
3655
3695
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.TrashIcon, { className: "h-4 w-4" }),
@@ -3661,7 +3701,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3661
3701
  ] }, index)) })
3662
3702
  ] }),
3663
3703
  method !== "GET" && /* @__PURE__ */ jsxRuntime.jsx(
3664
- chunkKPHTHSHJ_js.FormTextarea,
3704
+ chunkLH2JDCO3_js.FormTextarea,
3665
3705
  {
3666
3706
  label: t("bodyLabel"),
3667
3707
  value: body,
@@ -3672,7 +3712,7 @@ function HttpRequestNodeConfigForm({ config, onSave, onCancel }) {
3672
3712
  }
3673
3713
  ),
3674
3714
  /* @__PURE__ */ jsxRuntime.jsx(
3675
- chunkKPHTHSHJ_js.FormInput,
3715
+ chunkLH2JDCO3_js.FormInput,
3676
3716
  {
3677
3717
  type: "number",
3678
3718
  label: t("timeoutLabel"),
@@ -3703,7 +3743,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
3703
3743
  };
3704
3744
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3705
3745
  /* @__PURE__ */ jsxRuntime.jsx(
3706
- chunkKPHTHSHJ_js.FormTextarea,
3746
+ chunkLH2JDCO3_js.FormTextarea,
3707
3747
  {
3708
3748
  label: t("templateLabel"),
3709
3749
  value: template,
@@ -3714,7 +3754,7 @@ function TemplateTransformNodeConfigForm({ config, onSave, onCancel }) {
3714
3754
  }
3715
3755
  ),
3716
3756
  /* @__PURE__ */ jsxRuntime.jsx(
3717
- chunkKPHTHSHJ_js.FormInput,
3757
+ chunkLH2JDCO3_js.FormInput,
3718
3758
  {
3719
3759
  type: "text",
3720
3760
  label: t("outputVariableLabel"),
@@ -3743,7 +3783,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
3743
3783
  };
3744
3784
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3745
3785
  /* @__PURE__ */ jsxRuntime.jsx(
3746
- chunkKPHTHSHJ_js.FormInput,
3786
+ chunkLH2JDCO3_js.FormInput,
3747
3787
  {
3748
3788
  type: "text",
3749
3789
  label: t("iteratorVariableLabel"),
@@ -3753,7 +3793,7 @@ function IterationNodeConfigForm({ config, onSave, onCancel }) {
3753
3793
  }
3754
3794
  ),
3755
3795
  /* @__PURE__ */ jsxRuntime.jsx(
3756
- chunkKPHTHSHJ_js.FormInput,
3796
+ chunkLH2JDCO3_js.FormInput,
3757
3797
  {
3758
3798
  type: "number",
3759
3799
  label: t("maxIterationsLabel"),
@@ -3784,7 +3824,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
3784
3824
  };
3785
3825
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3786
3826
  /* @__PURE__ */ jsxRuntime.jsx(
3787
- chunkKPHTHSHJ_js.FormInput,
3827
+ chunkLH2JDCO3_js.FormInput,
3788
3828
  {
3789
3829
  type: "text",
3790
3830
  label: t("sourceIdLabel"),
@@ -3794,7 +3834,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
3794
3834
  }
3795
3835
  ),
3796
3836
  /* @__PURE__ */ jsxRuntime.jsx(
3797
- chunkKPHTHSHJ_js.FormInput,
3837
+ chunkLH2JDCO3_js.FormInput,
3798
3838
  {
3799
3839
  type: "number",
3800
3840
  label: t("topKLabel"),
@@ -3805,7 +3845,7 @@ function KnowledgeBaseNodeConfigForm({ config, onSave, onCancel }) {
3805
3845
  }
3806
3846
  ),
3807
3847
  /* @__PURE__ */ jsxRuntime.jsx(
3808
- chunkKPHTHSHJ_js.FormInput,
3848
+ chunkLH2JDCO3_js.FormInput,
3809
3849
  {
3810
3850
  type: "number",
3811
3851
  label: t("similarityThresholdLabel"),
@@ -3836,7 +3876,7 @@ function AnswerNodeConfigForm({ config, onSave, onCancel }) {
3836
3876
  };
3837
3877
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3838
3878
  /* @__PURE__ */ jsxRuntime.jsx(
3839
- chunkKPHTHSHJ_js.FormTextarea,
3879
+ chunkLH2JDCO3_js.FormTextarea,
3840
3880
  {
3841
3881
  label: t("outputTemplateLabel"),
3842
3882
  hint: t("outputTemplateHelp"),
@@ -4270,7 +4310,7 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
4270
4310
  }
4271
4311
  ),
4272
4312
  /* @__PURE__ */ jsxRuntime.jsx(
4273
- chunkKPHTHSHJ_js.FormInput,
4313
+ chunkLH2JDCO3_js.FormInput,
4274
4314
  {
4275
4315
  type: "text",
4276
4316
  label: t("outputVariableLabel"),
@@ -4280,7 +4320,7 @@ function VariableAggregatorNodeConfigForm({ config, onSave, onCancel }) {
4280
4320
  }
4281
4321
  ),
4282
4322
  /* @__PURE__ */ jsxRuntime.jsx(
4283
- chunkKPHTHSHJ_js.FormSelect,
4323
+ chunkLH2JDCO3_js.FormSelect,
4284
4324
  {
4285
4325
  label: t("aggregationModeLabel"),
4286
4326
  value: aggregationMode,
@@ -4313,7 +4353,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
4313
4353
  };
4314
4354
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4315
4355
  /* @__PURE__ */ jsxRuntime.jsx(
4316
- chunkKPHTHSHJ_js.FormSelect,
4356
+ chunkLH2JDCO3_js.FormSelect,
4317
4357
  {
4318
4358
  label: t("extractionModeLabel"),
4319
4359
  value: extractionMode,
@@ -4322,7 +4362,7 @@ function DocumentExtractorNodeConfigForm({ config, onSave, onCancel }) {
4322
4362
  }
4323
4363
  ),
4324
4364
  /* @__PURE__ */ jsxRuntime.jsx(
4325
- chunkKPHTHSHJ_js.FormInput,
4365
+ chunkLH2JDCO3_js.FormInput,
4326
4366
  {
4327
4367
  type: "text",
4328
4368
  label: t("outputVariableLabel"),
@@ -4499,7 +4539,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
4499
4539
  };
4500
4540
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4501
4541
  /* @__PURE__ */ jsxRuntime.jsx(
4502
- chunkKPHTHSHJ_js.FormInput,
4542
+ chunkLH2JDCO3_js.FormInput,
4503
4543
  {
4504
4544
  type: "text",
4505
4545
  label: t("iteratorVariableLabel"),
@@ -4509,7 +4549,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
4509
4549
  }
4510
4550
  ),
4511
4551
  /* @__PURE__ */ jsxRuntime.jsx(
4512
- chunkKPHTHSHJ_js.FormInput,
4552
+ chunkLH2JDCO3_js.FormInput,
4513
4553
  {
4514
4554
  type: "text",
4515
4555
  label: t("itemVariableLabel"),
@@ -4519,7 +4559,7 @@ function IterationStartNodeConfigForm({ config, onSave, onCancel }) {
4519
4559
  }
4520
4560
  ),
4521
4561
  /* @__PURE__ */ jsxRuntime.jsx(
4522
- chunkKPHTHSHJ_js.FormInput,
4562
+ chunkLH2JDCO3_js.FormInput,
4523
4563
  {
4524
4564
  type: "text",
4525
4565
  label: t("indexVariableLabel"),
@@ -5113,7 +5153,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
5113
5153
  };
5114
5154
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5115
5155
  /* @__PURE__ */ jsxRuntime.jsx(
5116
- chunkKPHTHSHJ_js.FormInput,
5156
+ chunkLH2JDCO3_js.FormInput,
5117
5157
  {
5118
5158
  type: "text",
5119
5159
  label: translations("labelField"),
@@ -5123,7 +5163,7 @@ function GroupNodeConfigForm({ config, onSave, onCancel }) {
5123
5163
  }
5124
5164
  ),
5125
5165
  /* @__PURE__ */ jsxRuntime.jsx(
5126
- chunkKPHTHSHJ_js.FormTextarea,
5166
+ chunkLH2JDCO3_js.FormTextarea,
5127
5167
  {
5128
5168
  label: translations("descriptionField"),
5129
5169
  value: description,
@@ -5281,7 +5321,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5281
5321
  };
5282
5322
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5283
5323
  /* @__PURE__ */ jsxRuntime.jsx(
5284
- chunkKPHTHSHJ_js.FormInput,
5324
+ chunkLH2JDCO3_js.FormInput,
5285
5325
  {
5286
5326
  type: "text",
5287
5327
  label: t("nameLabel"),
@@ -5291,7 +5331,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5291
5331
  }
5292
5332
  ),
5293
5333
  /* @__PURE__ */ jsxRuntime.jsx(
5294
- chunkKPHTHSHJ_js.FormSelect,
5334
+ chunkLH2JDCO3_js.FormSelect,
5295
5335
  {
5296
5336
  label: t("providerTypeLabel"),
5297
5337
  value: providerType,
@@ -5300,7 +5340,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5300
5340
  }
5301
5341
  ),
5302
5342
  showRegion && /* @__PURE__ */ jsxRuntime.jsx(
5303
- chunkKPHTHSHJ_js.FormSelect,
5343
+ chunkLH2JDCO3_js.FormSelect,
5304
5344
  {
5305
5345
  label: t("regionLabel"),
5306
5346
  value: region,
@@ -5309,7 +5349,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5309
5349
  }
5310
5350
  ),
5311
5351
  showEndpoint && /* @__PURE__ */ jsxRuntime.jsx(
5312
- chunkKPHTHSHJ_js.FormInput,
5352
+ chunkLH2JDCO3_js.FormInput,
5313
5353
  {
5314
5354
  type: "text",
5315
5355
  label: t("endpointLabel"),
@@ -5319,7 +5359,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5319
5359
  }
5320
5360
  ),
5321
5361
  showApiKey && /* @__PURE__ */ jsxRuntime.jsx(
5322
- chunkKPHTHSHJ_js.FormInput,
5362
+ chunkLH2JDCO3_js.FormInput,
5323
5363
  {
5324
5364
  type: "password",
5325
5365
  label: t("apiKeyLabel"),
@@ -5329,7 +5369,7 @@ function ModelProviderNodeConfigForm({ config, onSave, onCancel }) {
5329
5369
  }
5330
5370
  ),
5331
5371
  showCredentialRef && /* @__PURE__ */ jsxRuntime.jsx(
5332
- chunkKPHTHSHJ_js.FormInput,
5372
+ chunkLH2JDCO3_js.FormInput,
5333
5373
  {
5334
5374
  type: "text",
5335
5375
  label: t("credentialRefLabel"),
@@ -5473,7 +5513,7 @@ function LogicNodeModal({ onSave, entities = [], datasources = [], onLoadTables,
5473
5513
  }
5474
5514
  };
5475
5515
  return /* @__PURE__ */ jsxRuntime.jsx(
5476
- chunkKPHTHSHJ_js.GlassModal,
5516
+ chunkLH2JDCO3_js.GlassModal,
5477
5517
  {
5478
5518
  open,
5479
5519
  onClose: closeModal,
@@ -5533,7 +5573,7 @@ function NodeContextMenu({ position, targetId, onClose, onEdit, onDuplicate, onC
5533
5573
  }
5534
5574
  ];
5535
5575
  return /* @__PURE__ */ jsxRuntime.jsx(
5536
- chunkKPHTHSHJ_js.ContextMenu,
5576
+ chunkLH2JDCO3_js.ContextMenu,
5537
5577
  {
5538
5578
  position,
5539
5579
  onClose,
@@ -5590,7 +5630,7 @@ function PanelContextMenu({ position, onClose, onPaste, onSelectAll, onFitView,
5590
5630
  }
5591
5631
  ];
5592
5632
  return /* @__PURE__ */ jsxRuntime.jsx(
5593
- chunkKPHTHSHJ_js.ContextMenu,
5633
+ chunkLH2JDCO3_js.ContextMenu,
5594
5634
  {
5595
5635
  position,
5596
5636
  onClose,
@@ -5737,7 +5777,7 @@ function SelectionContextMenu({
5737
5777
  }
5738
5778
  ];
5739
5779
  return /* @__PURE__ */ jsxRuntime.jsx(
5740
- chunkKPHTHSHJ_js.ContextMenu,
5780
+ chunkLH2JDCO3_js.ContextMenu,
5741
5781
  {
5742
5782
  position,
5743
5783
  onClose,
@@ -5953,10 +5993,16 @@ function WorkflowCanvasInner({
5953
5993
  const canRedo = useWorkflowStore((state) => state.future.length > 0);
5954
5994
  const controlMode = useWorkflowStore((state) => state.controlMode);
5955
5995
  const setControlMode = useWorkflowStore((state) => state.setControlMode);
5956
- const [showMinimap, setShowMinimap] = react.useState(true);
5957
- const [showShortcuts, setShowShortcuts] = react.useState(false);
5958
- const [cardDisplayMode, setCardDisplayMode] = react.useState("detailed");
5996
+ const showMinimap = useWorkflowStore((s) => s.showMinimap);
5997
+ const showDots = useWorkflowStore((s) => s.showDots);
5998
+ const showShortcuts = useWorkflowStore((s) => s.showShortcuts);
5999
+ const cardDisplayMode = useWorkflowStore((s) => s.cardDisplayMode);
5959
6000
  const layoutDirection = useWorkflowStore((s) => s.layoutDirection);
6001
+ const toggleMinimap = useWorkflowStore((s) => s.toggleMinimap);
6002
+ const toggleDots = useWorkflowStore((s) => s.toggleDots);
6003
+ const toggleShortcuts = useWorkflowStore((s) => s.toggleShortcuts);
6004
+ const closeShortcuts = useWorkflowStore((s) => s.closeShortcuts);
6005
+ const toggleCardDisplayMode = useWorkflowStore((s) => s.toggleCardDisplayMode);
5960
6006
  const setLayoutDirection = useWorkflowStore((s) => s.setLayoutDirection);
5961
6007
  const [editingLogicNodeId, setEditingLogicNodeId] = react.useState(null);
5962
6008
  const handleEditLogicNode = react.useCallback((nodeId) => {
@@ -6731,6 +6777,14 @@ function WorkflowCanvasInner({
6731
6777
  setControlMode("hand");
6732
6778
  return;
6733
6779
  }
6780
+ if (event.key.toLowerCase() === "g") {
6781
+ toggleDots();
6782
+ return;
6783
+ }
6784
+ if (event.key.toLowerCase() === "m") {
6785
+ toggleMinimap();
6786
+ return;
6787
+ }
6734
6788
  if (event.shiftKey && event.key === "!") {
6735
6789
  event.preventDefault();
6736
6790
  zoomTo(1);
@@ -7296,7 +7350,7 @@ function WorkflowCanvasInner({
7296
7350
  deleteKeyCode: ["Backspace", "Delete"],
7297
7351
  connectionLineStyle: { stroke: GRAPH_ACTIVE_EDGE_COLOR, strokeWidth: 2 },
7298
7352
  children: [
7299
- /* @__PURE__ */ jsxRuntime.jsx(
7353
+ showDots && /* @__PURE__ */ jsxRuntime.jsx(
7300
7354
  Background,
7301
7355
  {
7302
7356
  variant: react$1.BackgroundVariant.Dots,
@@ -7332,14 +7386,16 @@ function WorkflowCanvasInner({
7332
7386
  controlMode,
7333
7387
  onControlModeChange: setControlMode,
7334
7388
  showMinimap,
7335
- onToggleMinimap: () => setShowMinimap((previous) => !previous),
7389
+ onToggleMinimap: toggleMinimap,
7390
+ showDots,
7391
+ onToggleDots: toggleDots,
7336
7392
  cardDisplayMode,
7337
- onToggleCardDisplayMode: () => setCardDisplayMode((previous) => previous === "detailed" ? "compact" : "detailed"),
7393
+ onToggleCardDisplayMode: toggleCardDisplayMode,
7338
7394
  layoutDirection,
7339
7395
  onLayoutDirectionChange: handleLayoutDirectionChange,
7340
7396
  showShortcuts,
7341
- onToggleShortcuts: () => setShowShortcuts((previous) => !previous),
7342
- onCloseShortcuts: () => setShowShortcuts(false),
7397
+ onToggleShortcuts: toggleShortcuts,
7398
+ onCloseShortcuts: closeShortcuts,
7343
7399
  tWorkflow
7344
7400
  }
7345
7401
  ),
@@ -7610,5 +7666,5 @@ exports.useModalStore = useModalStore;
7610
7666
  exports.useWorkflowBuilderClient = useWorkflowBuilderClient;
7611
7667
  exports.useWorkflowBuilderClientOptional = useWorkflowBuilderClientOptional;
7612
7668
  exports.useWorkflowStore = useWorkflowStore;
7613
- //# sourceMappingURL=chunk-KMDY6OLI.js.map
7614
- //# sourceMappingURL=chunk-KMDY6OLI.js.map
7669
+ //# sourceMappingURL=chunk-HSUB5MTJ.js.map
7670
+ //# sourceMappingURL=chunk-HSUB5MTJ.js.map