@datatechsolutions/ui 3.11.0 → 3.11.2

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 (109) hide show
  1. package/dist/astrlabe/index.js +109 -109
  2. package/dist/astrlabe/index.mjs +5 -5
  3. package/dist/astrlabe/workflow-canvas.js +5 -5
  4. package/dist/astrlabe/workflow-canvas.mjs +4 -4
  5. package/dist/{chunk-ZUU7G3PC.js → chunk-22XPYFHJ.js} +2 -2
  6. package/dist/chunk-22XPYFHJ.js.map +1 -0
  7. package/dist/{chunk-6TKCMQ75.js → chunk-3BFQ3SVG.js} +68 -68
  8. package/dist/{chunk-6TKCMQ75.js.map → chunk-3BFQ3SVG.js.map} +1 -1
  9. package/dist/{chunk-BO3RXG6M.js → chunk-3J4E2THD.js} +45 -45
  10. package/dist/{chunk-BO3RXG6M.js.map → chunk-3J4E2THD.js.map} +1 -1
  11. package/dist/{chunk-HUAWGBYL.mjs → chunk-4PUVECVF.mjs} +3 -3
  12. package/dist/{chunk-HUAWGBYL.mjs.map → chunk-4PUVECVF.mjs.map} +1 -1
  13. package/dist/{chunk-G52HXPSB.js → chunk-5JS3UFBF.js} +13 -13
  14. package/dist/{chunk-G52HXPSB.js.map → chunk-5JS3UFBF.js.map} +1 -1
  15. package/dist/{chunk-BCJATFZE.js → chunk-5NKGJV72.js} +25 -25
  16. package/dist/{chunk-BCJATFZE.js.map → chunk-5NKGJV72.js.map} +1 -1
  17. package/dist/{chunk-ZJMYLUZ2.mjs → chunk-5TJR3VJ6.mjs} +85 -73
  18. package/dist/chunk-5TJR3VJ6.mjs.map +1 -0
  19. package/dist/{chunk-PHBZ3TXE.js → chunk-5Y67PZWC.js} +4 -4
  20. package/dist/{chunk-PHBZ3TXE.js.map → chunk-5Y67PZWC.js.map} +1 -1
  21. package/dist/{chunk-ZGVN23J4.js → chunk-6R5Z2IQ5.js} +5 -5
  22. package/dist/{chunk-ZGVN23J4.js.map → chunk-6R5Z2IQ5.js.map} +1 -1
  23. package/dist/{chunk-7V7WEXHS.mjs → chunk-AVLOGVVA.mjs} +3 -3
  24. package/dist/{chunk-7V7WEXHS.mjs.map → chunk-AVLOGVVA.mjs.map} +1 -1
  25. package/dist/{chunk-JTD3BBVI.js → chunk-BGLYJ7GR.js} +35 -35
  26. package/dist/{chunk-JTD3BBVI.js.map → chunk-BGLYJ7GR.js.map} +1 -1
  27. package/dist/{chunk-35P352JX.mjs → chunk-D5FL3ZHC.mjs} +3 -3
  28. package/dist/{chunk-35P352JX.mjs.map → chunk-D5FL3ZHC.mjs.map} +1 -1
  29. package/dist/{chunk-Z6FZQOTW.js → chunk-GDVB7QDZ.js} +28 -28
  30. package/dist/{chunk-Z6FZQOTW.js.map → chunk-GDVB7QDZ.js.map} +1 -1
  31. package/dist/{chunk-35O2X7WY.js → chunk-HLIMHIRH.js} +9 -9
  32. package/dist/{chunk-35O2X7WY.js.map → chunk-HLIMHIRH.js.map} +1 -1
  33. package/dist/{chunk-3US2QXEF.mjs → chunk-JBXNEOFB.mjs} +3 -3
  34. package/dist/{chunk-3US2QXEF.mjs.map → chunk-JBXNEOFB.mjs.map} +1 -1
  35. package/dist/{chunk-K4AJL4BH.mjs → chunk-JXROBMRU.mjs} +3 -3
  36. package/dist/{chunk-K4AJL4BH.mjs.map → chunk-JXROBMRU.mjs.map} +1 -1
  37. package/dist/{chunk-37FWIPYO.mjs → chunk-KGC5CRS7.mjs} +3 -3
  38. package/dist/{chunk-37FWIPYO.mjs.map → chunk-KGC5CRS7.mjs.map} +1 -1
  39. package/dist/{chunk-7KPMLHPR.mjs → chunk-LBCUQ4FY.mjs} +3 -3
  40. package/dist/{chunk-7KPMLHPR.mjs.map → chunk-LBCUQ4FY.mjs.map} +1 -1
  41. package/dist/{chunk-7MPIYSRH.js → chunk-LW2LFJZ7.js} +66 -64
  42. package/dist/chunk-LW2LFJZ7.js.map +1 -0
  43. package/dist/{chunk-KTEEXEAX.mjs → chunk-M64U336M.mjs} +6 -6
  44. package/dist/{chunk-KTEEXEAX.mjs.map → chunk-M64U336M.mjs.map} +1 -1
  45. package/dist/{chunk-O2CUOJ74.js → chunk-MCHTZ63Q.js} +4 -4
  46. package/dist/{chunk-O2CUOJ74.js.map → chunk-MCHTZ63Q.js.map} +1 -1
  47. package/dist/{chunk-GTJGX7IZ.js → chunk-N5FWIT7N.js} +10 -10
  48. package/dist/{chunk-GTJGX7IZ.js.map → chunk-N5FWIT7N.js.map} +1 -1
  49. package/dist/{chunk-NM3YTQ26.mjs → chunk-N7T4X6A7.mjs} +3 -3
  50. package/dist/{chunk-NM3YTQ26.mjs.map → chunk-N7T4X6A7.mjs.map} +1 -1
  51. package/dist/{chunk-IGOMJHC6.mjs → chunk-NBW6WJQT.mjs} +2 -2
  52. package/dist/chunk-NBW6WJQT.mjs.map +1 -0
  53. package/dist/{chunk-7D52TFVL.mjs → chunk-NDGYIHJ3.mjs} +3 -3
  54. package/dist/{chunk-7D52TFVL.mjs.map → chunk-NDGYIHJ3.mjs.map} +1 -1
  55. package/dist/{chunk-NRVV4PHB.mjs → chunk-OZEOBZOW.mjs} +10 -8
  56. package/dist/chunk-OZEOBZOW.mjs.map +1 -0
  57. package/dist/{chunk-R3CGJK7D.mjs → chunk-RUWUH7DW.mjs} +3 -3
  58. package/dist/{chunk-R3CGJK7D.mjs.map → chunk-RUWUH7DW.mjs.map} +1 -1
  59. package/dist/{chunk-62BD4WLW.js → chunk-TXI3QDYE.js} +34 -34
  60. package/dist/{chunk-62BD4WLW.js.map → chunk-TXI3QDYE.js.map} +1 -1
  61. package/dist/{chunk-TCIK6WHT.mjs → chunk-TZA5T4MJ.mjs} +4 -4
  62. package/dist/{chunk-TCIK6WHT.mjs.map → chunk-TZA5T4MJ.mjs.map} +1 -1
  63. package/dist/{chunk-GKI74CPB.js → chunk-V32NUE5U.js} +55 -55
  64. package/dist/{chunk-GKI74CPB.js.map → chunk-V32NUE5U.js.map} +1 -1
  65. package/dist/{chunk-2AJ73ULK.mjs → chunk-WSXP645I.mjs} +3 -3
  66. package/dist/{chunk-2AJ73ULK.mjs.map → chunk-WSXP645I.mjs.map} +1 -1
  67. package/dist/{chunk-H475T2N7.js → chunk-Y4YIGEX6.js} +213 -201
  68. package/dist/chunk-Y4YIGEX6.js.map +1 -0
  69. package/dist/index.js +664 -664
  70. package/dist/index.mjs +3 -3
  71. package/dist/platform/admin/index.js +11 -11
  72. package/dist/platform/admin/index.mjs +5 -5
  73. package/dist/platform/agents-workspace.js +8 -8
  74. package/dist/platform/agents-workspace.mjs +7 -7
  75. package/dist/platform/app-shell.js +5 -5
  76. package/dist/platform/app-shell.mjs +4 -4
  77. package/dist/platform/auth/index.js +23 -23
  78. package/dist/platform/auth/index.mjs +5 -5
  79. package/dist/platform/billing/index.js +5 -5
  80. package/dist/platform/billing/index.mjs +4 -4
  81. package/dist/platform/impersonation/index.js +5 -5
  82. package/dist/platform/impersonation/index.mjs +4 -4
  83. package/dist/platform/index.d.mts +1 -1
  84. package/dist/platform/index.d.ts +1 -1
  85. package/dist/platform/index.js +86 -86
  86. package/dist/platform/index.mjs +19 -19
  87. package/dist/platform/pages/index.d.mts +2 -2
  88. package/dist/platform/pages/index.d.ts +2 -2
  89. package/dist/platform/pages/index.js +472 -474
  90. package/dist/platform/pages/index.js.map +1 -1
  91. package/dist/platform/pages/index.mjs +174 -176
  92. package/dist/platform/pages/index.mjs.map +1 -1
  93. package/dist/platform/settings/index.js +8 -8
  94. package/dist/platform/settings/index.mjs +7 -7
  95. package/dist/platform/workflow-api-client.d.mts +1 -1
  96. package/dist/platform/workflow-api-client.d.ts +1 -1
  97. package/dist/platform/workflow-api-client.js +62 -62
  98. package/dist/platform/workflow-api-client.mjs +1 -1
  99. package/dist/platform/workflow-canvas-shell.js +6 -6
  100. package/dist/platform/workflow-canvas-shell.mjs +5 -5
  101. package/dist/{workflow-api-client-E1QFRgeP.d.ts → workflow-api-client-CThkBj5j.d.ts} +4 -0
  102. package/dist/{workflow-api-client-D9_0Spdz.d.mts → workflow-api-client-crR8L7fy.d.mts} +4 -0
  103. package/package.json +1 -1
  104. package/dist/chunk-7MPIYSRH.js.map +0 -1
  105. package/dist/chunk-H475T2N7.js.map +0 -1
  106. package/dist/chunk-IGOMJHC6.mjs.map +0 -1
  107. package/dist/chunk-NRVV4PHB.mjs.map +0 -1
  108. package/dist/chunk-ZJMYLUZ2.mjs.map +0 -1
  109. package/dist/chunk-ZUU7G3PC.js.map +0 -1
@@ -2,16 +2,16 @@
2
2
  'use strict';
3
3
 
4
4
  var chunk3T2WGL47_js = require('../../chunk-3T2WGL47.js');
5
- var chunkZ6FZQOTW_js = require('../../chunk-Z6FZQOTW.js');
6
- var chunk62BD4WLW_js = require('../../chunk-62BD4WLW.js');
7
- var chunkH475T2N7_js = require('../../chunk-H475T2N7.js');
5
+ var chunkGDVB7QDZ_js = require('../../chunk-GDVB7QDZ.js');
6
+ var chunkTXI3QDYE_js = require('../../chunk-TXI3QDYE.js');
7
+ var chunkY4YIGEX6_js = require('../../chunk-Y4YIGEX6.js');
8
8
  require('../../chunk-55H6WZQP.js');
9
9
  require('../../chunk-DJDZIRM6.js');
10
- require('../../chunk-6TKCMQ75.js');
11
- var chunkZGVN23J4_js = require('../../chunk-ZGVN23J4.js');
12
- require('../../chunk-ZUU7G3PC.js');
13
- require('../../chunk-2OZZH2IO.js');
10
+ require('../../chunk-3BFQ3SVG.js');
11
+ var chunk6R5Z2IQ5_js = require('../../chunk-6R5Z2IQ5.js');
14
12
  require('../../chunk-YXN2K77G.js');
13
+ require('../../chunk-22XPYFHJ.js');
14
+ require('../../chunk-2OZZH2IO.js');
15
15
  require('../../chunk-EZQ2D47U.js');
16
16
  var chunkBHOT22QL_js = require('../../chunk-BHOT22QL.js');
17
17
  require('../../chunk-UZ3CMNUJ.js');
@@ -27,7 +27,7 @@ function AgentsModelsPageView({ labels, models, loading }) {
27
27
  const filteredModels = searchTerm.trim() ? allModels.filter((model) => model.name.toLowerCase().includes(searchTerm.trim().toLowerCase())) : allModels;
28
28
  const isEmpty = allModels.length === 0;
29
29
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
30
- chunkZGVN23J4_js.HeroSection,
30
+ chunk6R5Z2IQ5_js.HeroSection,
31
31
  {
32
32
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CubeTransparentIcon, { className: "h-5 w-5" }),
33
33
  label: labels.title,
@@ -35,7 +35,7 @@ function AgentsModelsPageView({ labels, models, loading }) {
35
35
  subtitle: labels.subtitle,
36
36
  gradient: "from-emerald-500 to-teal-700",
37
37
  toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
38
- chunkZGVN23J4_js.SearchBar,
38
+ chunk6R5Z2IQ5_js.SearchBar,
39
39
  {
40
40
  searchTerm,
41
41
  onSearchChange: setSearchTerm,
@@ -45,8 +45,8 @@ function AgentsModelsPageView({ labels, models, loading }) {
45
45
  ) : void 0
46
46
  }
47
47
  );
48
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredModels.map((model) => /* @__PURE__ */ jsxRuntime.jsx(
49
- chunkZGVN23J4_js.EntityCard,
48
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredModels.map((model) => /* @__PURE__ */ jsxRuntime.jsx(
49
+ chunk6R5Z2IQ5_js.EntityCard,
50
50
  {
51
51
  accentGradient: "from-emerald-500 to-teal-700",
52
52
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-emerald-500/10 text-emerald-600 dark:bg-emerald-500/20 dark:text-emerald-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.CubeTransparentIcon, { className: "h-6 w-6" }) }),
@@ -70,7 +70,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
70
70
  const filteredAgents = searchTerm.trim() ? allAgents.filter((agent) => String(agent.name ?? "").toLowerCase().includes(searchTerm.trim().toLowerCase())) : allAgents;
71
71
  const isEmpty = allAgents.length === 0;
72
72
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
73
- chunkZGVN23J4_js.HeroSection,
73
+ chunk6R5Z2IQ5_js.HeroSection,
74
74
  {
75
75
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
76
76
  label: labels.title,
@@ -78,7 +78,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
78
78
  subtitle: labels.subtitle,
79
79
  gradient: "from-violet-500 to-indigo-700",
80
80
  toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
81
- chunkZGVN23J4_js.SearchBar,
81
+ chunk6R5Z2IQ5_js.SearchBar,
82
82
  {
83
83
  searchTerm,
84
84
  onSearchChange: setSearchTerm,
@@ -87,7 +87,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
87
87
  }
88
88
  ) : void 0,
89
89
  actions: /* @__PURE__ */ jsxRuntime.jsx(
90
- chunkZGVN23J4_js.CreateActionButton,
90
+ chunk6R5Z2IQ5_js.CreateActionButton,
91
91
  {
92
92
  mode: "desktop",
93
93
  label: labels.addAgent,
@@ -98,7 +98,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
98
98
  }
99
99
  );
100
100
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
101
- chunkZGVN23J4_js.CreateActionButton,
101
+ chunk6R5Z2IQ5_js.CreateActionButton,
102
102
  {
103
103
  mode: "mobile",
104
104
  label: labels.addAgent,
@@ -106,10 +106,10 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
106
106
  accent: "violet"
107
107
  }
108
108
  );
109
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredAgents.map((agent) => {
109
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredAgents.map((agent) => {
110
110
  const modelRecord = models.find((model) => model.id === String(agent.modelId ?? ""));
111
111
  return /* @__PURE__ */ jsxRuntime.jsx(
112
- chunkZGVN23J4_js.EntityCard,
112
+ chunk6R5Z2IQ5_js.EntityCard,
113
113
  {
114
114
  accentGradient: "from-violet-500 to-indigo-700",
115
115
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-violet-500/10 text-violet-600 dark:bg-violet-500/20 dark:text-violet-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-6 w-6" }) }),
@@ -146,7 +146,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
146
146
  );
147
147
  }) });
148
148
  const renderForm = (initial, onSubmit) => /* @__PURE__ */ jsxRuntime.jsx(
149
- chunkZGVN23J4_js.GlassModal,
149
+ chunk6R5Z2IQ5_js.GlassModal,
150
150
  {
151
151
  open: true,
152
152
  onClose: () => {
@@ -169,13 +169,13 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
169
169
  outputSchema: String(form.get("outputSchema") ?? "").trim() || void 0
170
170
  });
171
171
  },
172
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
173
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name ?? "", required: true }),
174
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormSelect, { name: "modelId", label: labels.model, options: modelOptions, defaultValue: initial.modelId ?? modelOptions[0]?.value ?? "", required: true }),
175
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "maxTokens", label: String(labels.maxTokens), type: "number", defaultValue: String(initial.maxTokens ?? 2048) }),
176
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "temperature", label: labels.temperature, type: "number", step: 0.1, min: 0, max: 2, defaultValue: String(initial.temperature ?? 0.2) }),
177
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, defaultValue: initial.systemPrompt ?? "", rows: 4 }),
178
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "outputSchema", label: labels.outputSchema, placeholder: labels.outputSchemaPlaceholder, defaultValue: initial.outputSchema ?? "", rows: 4 })
172
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
173
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name ?? "", required: true }),
174
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormSelect, { name: "modelId", label: labels.model, options: modelOptions, defaultValue: initial.modelId ?? modelOptions[0]?.value ?? "", required: true }),
175
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "maxTokens", label: String(labels.maxTokens), type: "number", defaultValue: String(initial.maxTokens ?? 2048) }),
176
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "temperature", label: labels.temperature, type: "number", step: 0.1, min: 0, max: 2, defaultValue: String(initial.temperature ?? 0.2) }),
177
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, defaultValue: initial.systemPrompt ?? "", rows: 4 }),
178
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "outputSchema", label: labels.outputSchema, placeholder: labels.outputSchemaPlaceholder, defaultValue: initial.outputSchema ?? "", rows: 4 })
179
179
  ] })
180
180
  }
181
181
  );
@@ -242,7 +242,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
242
242
  }) : allPrompts;
243
243
  const isEmpty = allPrompts.length === 0;
244
244
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
245
- chunkZGVN23J4_js.HeroSection,
245
+ chunk6R5Z2IQ5_js.HeroSection,
246
246
  {
247
247
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ChatBubbleLeftEllipsisIcon, { className: "h-5 w-5" }),
248
248
  label: labels.title,
@@ -250,7 +250,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
250
250
  subtitle: labels.subtitle,
251
251
  gradient: "from-sky-500 to-blue-700",
252
252
  toolbar: /* @__PURE__ */ jsxRuntime.jsx(
253
- chunkZGVN23J4_js.CreateActionButton,
253
+ chunk6R5Z2IQ5_js.CreateActionButton,
254
254
  {
255
255
  mode: "desktop",
256
256
  label: labels.addPrompt,
@@ -261,7 +261,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
261
261
  }
262
262
  );
263
263
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
264
- chunkZGVN23J4_js.CreateActionButton,
264
+ chunk6R5Z2IQ5_js.CreateActionButton,
265
265
  {
266
266
  mode: "mobile",
267
267
  label: labels.addPrompt,
@@ -269,9 +269,9 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
269
269
  accent: "sky"
270
270
  }
271
271
  );
272
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
272
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
273
273
  /* @__PURE__ */ jsxRuntime.jsx(
274
- chunkZGVN23J4_js.SearchBar,
274
+ chunk6R5Z2IQ5_js.SearchBar,
275
275
  {
276
276
  searchTerm,
277
277
  onSearchChange: setSearchTerm,
@@ -282,7 +282,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
282
282
  const agentName = agentNameById.get(prompt.agentId) ?? prompt.agentId;
283
283
  const key = `${prompt.agentId}:${prompt.locale}:${prompt.version}`;
284
284
  return /* @__PURE__ */ jsxRuntime.jsx(
285
- chunkZGVN23J4_js.EntityCard,
285
+ chunk6R5Z2IQ5_js.EntityCard,
286
286
  {
287
287
  accentGradient: "from-sky-500 to-blue-700",
288
288
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-sky-500/10 text-sky-600 dark:bg-sky-500/20 dark:text-sky-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.ChatBubbleLeftEllipsisIcon, { className: "h-6 w-6" }) }),
@@ -317,7 +317,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
317
317
  mobileAction
318
318
  ] }),
319
319
  /* @__PURE__ */ jsxRuntime.jsx(
320
- chunkZGVN23J4_js.GlassModal,
320
+ chunk6R5Z2IQ5_js.GlassModal,
321
321
  {
322
322
  open: createOpen,
323
323
  onClose: () => setCreateOpen(false),
@@ -341,11 +341,11 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
341
341
  });
342
342
  setCreateOpen(false);
343
343
  },
344
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
345
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormSelect, { name: "agentId", label: labels.agent, options: agentOptions, required: true }),
346
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormSelect, { name: "locale", label: labels.locale, options: LOCALE_OPTIONS, defaultValue: "en" }),
344
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
345
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormSelect, { name: "agentId", label: labels.agent, options: agentOptions, required: true }),
346
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormSelect, { name: "locale", label: labels.locale, options: LOCALE_OPTIONS, defaultValue: "en" }),
347
347
  /* @__PURE__ */ jsxRuntime.jsx(
348
- chunkZGVN23J4_js.FormSelect,
348
+ chunk6R5Z2IQ5_js.FormSelect,
349
349
  {
350
350
  name: "isActive",
351
351
  label: labels.isActive,
@@ -353,10 +353,10 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
353
353
  defaultValue: "true"
354
354
  }
355
355
  ),
356
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "reason", label: labels.reason }),
357
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, rows: 3 }),
358
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "userTemplate", label: labels.userTemplate, rows: 3 }),
359
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "prompt", label: labels.prompt, rows: 6, required: true })
356
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "reason", label: labels.reason }),
357
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, rows: 3 }),
358
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "userTemplate", label: labels.userTemplate, rows: 3 }),
359
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "prompt", label: labels.prompt, rows: 6, required: true })
360
360
  ] })
361
361
  }
362
362
  )
@@ -391,7 +391,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
391
391
  const filteredTools = searchTerm.trim() ? allTools.filter((tool) => tool.name.toLowerCase().includes(searchTerm.trim().toLowerCase())) : allTools;
392
392
  const isEmpty = allTools.length === 0;
393
393
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
394
- chunkZGVN23J4_js.HeroSection,
394
+ chunk6R5Z2IQ5_js.HeroSection,
395
395
  {
396
396
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-5 w-5" }),
397
397
  label: labels.title,
@@ -399,7 +399,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
399
399
  subtitle: labels.subtitle,
400
400
  gradient: "from-amber-500 to-orange-700",
401
401
  toolbar: /* @__PURE__ */ jsxRuntime.jsx(
402
- chunkZGVN23J4_js.CreateActionButton,
402
+ chunk6R5Z2IQ5_js.CreateActionButton,
403
403
  {
404
404
  mode: "desktop",
405
405
  label: labels.addTool,
@@ -410,7 +410,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
410
410
  }
411
411
  );
412
412
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
413
- chunkZGVN23J4_js.CreateActionButton,
413
+ chunk6R5Z2IQ5_js.CreateActionButton,
414
414
  {
415
415
  mode: "mobile",
416
416
  label: labels.addTool,
@@ -418,9 +418,9 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
418
418
  accent: "amber"
419
419
  }
420
420
  );
421
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
421
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
422
422
  /* @__PURE__ */ jsxRuntime.jsx(
423
- chunkZGVN23J4_js.SearchBar,
423
+ chunk6R5Z2IQ5_js.SearchBar,
424
424
  {
425
425
  searchTerm,
426
426
  onSearchChange: setSearchTerm,
@@ -428,7 +428,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
428
428
  }
429
429
  ),
430
430
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsx(
431
- chunkZGVN23J4_js.EntityCard,
431
+ chunk6R5Z2IQ5_js.EntityCard,
432
432
  {
433
433
  accentGradient: "from-amber-500 to-orange-700",
434
434
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-amber-500/10 text-amber-600 dark:bg-amber-500/20 dark:text-amber-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-6 w-6" }) }),
@@ -518,7 +518,7 @@ function ToolEditor({
518
518
  setValue((v) => ({ ...v, [key]: next }));
519
519
  };
520
520
  return /* @__PURE__ */ jsxRuntime.jsx(
521
- chunkZGVN23J4_js.GlassModal,
521
+ chunk6R5Z2IQ5_js.GlassModal,
522
522
  {
523
523
  open: true,
524
524
  onClose,
@@ -531,9 +531,9 @@ function ToolEditor({
531
531
  handleSubmit();
532
532
  },
533
533
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
534
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
534
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
535
535
  /* @__PURE__ */ jsxRuntime.jsx(
536
- chunkZGVN23J4_js.FormInput,
536
+ chunk6R5Z2IQ5_js.FormInput,
537
537
  {
538
538
  label: "Name",
539
539
  required: true,
@@ -543,7 +543,7 @@ function ToolEditor({
543
543
  }
544
544
  ),
545
545
  /* @__PURE__ */ jsxRuntime.jsx(
546
- chunkZGVN23J4_js.FormSelect,
546
+ chunk6R5Z2IQ5_js.FormSelect,
547
547
  {
548
548
  label: "Tool type",
549
549
  value: value.toolType,
@@ -553,7 +553,7 @@ function ToolEditor({
553
553
  }
554
554
  ),
555
555
  /* @__PURE__ */ jsxRuntime.jsx(
556
- chunkZGVN23J4_js.FormSelect,
556
+ chunk6R5Z2IQ5_js.FormSelect,
557
557
  {
558
558
  label: "Enabled",
559
559
  value: value.enabled ? "true" : "false",
@@ -562,7 +562,7 @@ function ToolEditor({
562
562
  }
563
563
  ),
564
564
  /* @__PURE__ */ jsxRuntime.jsx(
565
- chunkZGVN23J4_js.FormInput,
565
+ chunk6R5Z2IQ5_js.FormInput,
566
566
  {
567
567
  label: "Icon (optional)",
568
568
  value: value.icon ?? "",
@@ -572,7 +572,7 @@ function ToolEditor({
572
572
  )
573
573
  ] }),
574
574
  /* @__PURE__ */ jsxRuntime.jsx(
575
- chunkZGVN23J4_js.FormTextarea,
575
+ chunk6R5Z2IQ5_js.FormTextarea,
576
576
  {
577
577
  label: "Description",
578
578
  rows: 2,
@@ -620,7 +620,7 @@ function ParametersEditor({
620
620
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
621
621
  parameters.map((param, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[1fr_160px_1fr_110px_auto] items-end gap-2", children: [
622
622
  /* @__PURE__ */ jsxRuntime.jsx(
623
- chunkZGVN23J4_js.FormInput,
623
+ chunk6R5Z2IQ5_js.FormInput,
624
624
  {
625
625
  label: "Name",
626
626
  value: param.name,
@@ -629,7 +629,7 @@ function ParametersEditor({
629
629
  }
630
630
  ),
631
631
  /* @__PURE__ */ jsxRuntime.jsx(
632
- chunkZGVN23J4_js.FormSelect,
632
+ chunk6R5Z2IQ5_js.FormSelect,
633
633
  {
634
634
  label: "Type",
635
635
  value: param.type,
@@ -638,7 +638,7 @@ function ParametersEditor({
638
638
  }
639
639
  ),
640
640
  /* @__PURE__ */ jsxRuntime.jsx(
641
- chunkZGVN23J4_js.FormInput,
641
+ chunk6R5Z2IQ5_js.FormInput,
642
642
  {
643
643
  label: "Description",
644
644
  value: param.description,
@@ -672,9 +672,9 @@ function HandlerConfigEditor({
672
672
  if (toolType === "http") {
673
673
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "rounded-xl border border-slate-200 bg-slate-50/60 p-3 dark:border-slate-700 dark:bg-slate-900/40", children: [
674
674
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "HTTP handler" }),
675
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
675
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
676
676
  /* @__PURE__ */ jsxRuntime.jsx(
677
- chunkZGVN23J4_js.FormSelect,
677
+ chunk6R5Z2IQ5_js.FormSelect,
678
678
  {
679
679
  label: "Method",
680
680
  value: stringProp(config, "method", "GET"),
@@ -683,7 +683,7 @@ function HandlerConfigEditor({
683
683
  }
684
684
  ),
685
685
  /* @__PURE__ */ jsxRuntime.jsx(
686
- chunkZGVN23J4_js.FormInput,
686
+ chunk6R5Z2IQ5_js.FormInput,
687
687
  {
688
688
  label: "URL template",
689
689
  value: stringProp(config, "url"),
@@ -693,7 +693,7 @@ function HandlerConfigEditor({
693
693
  )
694
694
  ] }),
695
695
  /* @__PURE__ */ jsxRuntime.jsx(
696
- chunkZGVN23J4_js.FormTextarea,
696
+ chunk6R5Z2IQ5_js.FormTextarea,
697
697
  {
698
698
  label: "Headers (JSON)",
699
699
  rows: 3,
@@ -703,7 +703,7 @@ function HandlerConfigEditor({
703
703
  }
704
704
  ),
705
705
  /* @__PURE__ */ jsxRuntime.jsx(
706
- chunkZGVN23J4_js.FormTextarea,
706
+ chunk6R5Z2IQ5_js.FormTextarea,
707
707
  {
708
708
  label: "Body template",
709
709
  rows: 3,
@@ -718,7 +718,7 @@ function HandlerConfigEditor({
718
718
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "rounded-xl border border-slate-200 bg-slate-50/60 p-3 dark:border-slate-700 dark:bg-slate-900/40", children: [
719
719
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Function handler" }),
720
720
  /* @__PURE__ */ jsxRuntime.jsx(
721
- chunkZGVN23J4_js.FormInput,
721
+ chunk6R5Z2IQ5_js.FormInput,
722
722
  {
723
723
  label: "Implementation key",
724
724
  value: stringProp(config, "implementationKey"),
@@ -732,9 +732,9 @@ function HandlerConfigEditor({
732
732
  if (toolType === "database_query") {
733
733
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "rounded-xl border border-slate-200 bg-slate-50/60 p-3 dark:border-slate-700 dark:bg-slate-900/40", children: [
734
734
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Database query handler" }),
735
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
735
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
736
736
  /* @__PURE__ */ jsxRuntime.jsx(
737
- chunkZGVN23J4_js.FormInput,
737
+ chunk6R5Z2IQ5_js.FormInput,
738
738
  {
739
739
  label: "Datasource ID",
740
740
  value: stringProp(config, "datasourceId"),
@@ -743,7 +743,7 @@ function HandlerConfigEditor({
743
743
  }
744
744
  ),
745
745
  /* @__PURE__ */ jsxRuntime.jsx(
746
- chunkZGVN23J4_js.FormInput,
746
+ chunk6R5Z2IQ5_js.FormInput,
747
747
  {
748
748
  label: "Max rows",
749
749
  type: "number",
@@ -753,7 +753,7 @@ function HandlerConfigEditor({
753
753
  )
754
754
  ] }),
755
755
  /* @__PURE__ */ jsxRuntime.jsx(
756
- chunkZGVN23J4_js.FormTextarea,
756
+ chunk6R5Z2IQ5_js.FormTextarea,
757
757
  {
758
758
  label: "Query template",
759
759
  rows: 4,
@@ -769,7 +769,7 @@ function HandlerConfigEditor({
769
769
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Code execution handler" }),
770
770
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 text-xs text-amber-600 dark:text-amber-400", children: "Experimental \u2014 sandbox is not yet enforced. Only enable for trusted tools." }),
771
771
  /* @__PURE__ */ jsxRuntime.jsx(
772
- chunkZGVN23J4_js.FormSelect,
772
+ chunk6R5Z2IQ5_js.FormSelect,
773
773
  {
774
774
  label: "Language",
775
775
  value: stringProp(config, "language", "javascript"),
@@ -781,7 +781,7 @@ function HandlerConfigEditor({
781
781
  }
782
782
  ),
783
783
  /* @__PURE__ */ jsxRuntime.jsx(
784
- chunkZGVN23J4_js.FormTextarea,
784
+ chunk6R5Z2IQ5_js.FormTextarea,
785
785
  {
786
786
  label: "Code",
787
787
  rows: 6,
@@ -794,9 +794,9 @@ function HandlerConfigEditor({
794
794
  }
795
795
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "rounded-xl border border-slate-200 bg-slate-50/60 p-3 dark:border-slate-700 dark:bg-slate-900/40", children: [
796
796
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "API call handler" }),
797
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
797
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
798
798
  /* @__PURE__ */ jsxRuntime.jsx(
799
- chunkZGVN23J4_js.FormInput,
799
+ chunk6R5Z2IQ5_js.FormInput,
800
800
  {
801
801
  label: "URL",
802
802
  value: stringProp(config, "url"),
@@ -804,7 +804,7 @@ function HandlerConfigEditor({
804
804
  }
805
805
  ),
806
806
  /* @__PURE__ */ jsxRuntime.jsx(
807
- chunkZGVN23J4_js.FormSelect,
807
+ chunk6R5Z2IQ5_js.FormSelect,
808
808
  {
809
809
  label: "Auth",
810
810
  value: stringProp(config, "authType", "bearer"),
@@ -818,7 +818,7 @@ function HandlerConfigEditor({
818
818
  }
819
819
  ),
820
820
  /* @__PURE__ */ jsxRuntime.jsx(
821
- chunkZGVN23J4_js.FormInput,
821
+ chunk6R5Z2IQ5_js.FormInput,
822
822
  {
823
823
  label: "Credential secret id",
824
824
  value: stringProp(config, "credentialRef"),
@@ -955,15 +955,24 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete, o
955
955
  const filteredRules = searchTerm.trim() ? allRules.filter((rule) => (rule.name ?? "").toLowerCase().includes(searchTerm.trim().toLowerCase())) : allRules;
956
956
  const isEmpty = allRules.length === 0;
957
957
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
958
- chunkZGVN23J4_js.HeroSection,
958
+ chunk6R5Z2IQ5_js.HeroSection,
959
959
  {
960
960
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-5 w-5" }),
961
961
  label: labels.title,
962
962
  title: labels.title,
963
963
  subtitle: labels.subtitle,
964
964
  gradient: "from-fuchsia-500 to-purple-700",
965
- toolbar: /* @__PURE__ */ jsxRuntime.jsx(
966
- chunkZGVN23J4_js.CreateActionButton,
965
+ toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
966
+ chunk6R5Z2IQ5_js.SearchBar,
967
+ {
968
+ searchTerm,
969
+ onSearchChange: setSearchTerm,
970
+ placeholder: labels.searchPlaceholder ?? labels.title,
971
+ noBorder: true
972
+ }
973
+ ) : void 0,
974
+ actions: /* @__PURE__ */ jsxRuntime.jsx(
975
+ chunk6R5Z2IQ5_js.CreateActionButton,
967
976
  {
968
977
  mode: "desktop",
969
978
  label: labels.addRule,
@@ -974,7 +983,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete, o
974
983
  }
975
984
  );
976
985
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
977
- chunkZGVN23J4_js.CreateActionButton,
986
+ chunk6R5Z2IQ5_js.CreateActionButton,
978
987
  {
979
988
  mode: "mobile",
980
989
  label: labels.addRule,
@@ -982,43 +991,33 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete, o
982
991
  accent: "fuchsia"
983
992
  }
984
993
  );
985
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
986
- /* @__PURE__ */ jsxRuntime.jsx(
987
- chunkZGVN23J4_js.SearchBar,
988
- {
989
- searchTerm,
990
- onSearchChange: setSearchTerm,
991
- placeholder: labels.searchPlaceholder ?? labels.title
992
- }
993
- ),
994
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredRules.map((rule) => /* @__PURE__ */ jsxRuntime.jsx(
995
- chunkZGVN23J4_js.EntityCard,
996
- {
997
- accentGradient: "from-fuchsia-500 to-purple-700",
998
- icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-fuchsia-500/10 text-fuchsia-600 dark:bg-fuchsia-500/20 dark:text-fuchsia-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-6 w-6" }) }),
999
- title: rule.name,
1000
- subtitle: `${labels.order}: ${rule.order ?? 0}`,
1001
- status: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: rule.enabled ? "emerald" : "zinc", children: rule.enabled ? labels.enabled : labels.disabled }),
1002
- footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
1003
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEditing(rule), children: labels.edit }),
1004
- /* @__PURE__ */ jsxRuntime.jsx(
1005
- chunkBHOT22QL_js.Button,
1006
- {
1007
- type: "button",
1008
- size: "sm",
1009
- color: "rose",
1010
- onClick: () => {
1011
- if (window.confirm(labels.deleteConfirm)) onDelete(rule);
1012
- },
1013
- children: labels.delete
1014
- }
1015
- )
1016
- ] }),
1017
- children: rule.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs text-slate-500 dark:text-slate-400", children: rule.description })
1018
- },
1019
- rule.ruleId
1020
- )) })
1021
- ] });
994
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredRules.map((rule) => /* @__PURE__ */ jsxRuntime.jsx(
995
+ chunk6R5Z2IQ5_js.EntityCard,
996
+ {
997
+ accentGradient: "from-fuchsia-500 to-purple-700",
998
+ icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-fuchsia-500/10 text-fuchsia-600 dark:bg-fuchsia-500/20 dark:text-fuchsia-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-6 w-6" }) }),
999
+ title: rule.name,
1000
+ subtitle: `${labels.order}: ${rule.order ?? 0}`,
1001
+ status: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: rule.enabled ? "emerald" : "zinc", children: rule.enabled ? labels.enabled : labels.disabled }),
1002
+ footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
1003
+ /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEditing(rule), children: labels.edit }),
1004
+ /* @__PURE__ */ jsxRuntime.jsx(
1005
+ chunkBHOT22QL_js.Button,
1006
+ {
1007
+ type: "button",
1008
+ size: "sm",
1009
+ color: "rose",
1010
+ onClick: () => {
1011
+ if (window.confirm(labels.deleteConfirm)) onDelete(rule);
1012
+ },
1013
+ children: labels.delete
1014
+ }
1015
+ )
1016
+ ] }),
1017
+ children: rule.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs text-slate-500 dark:text-slate-400", children: rule.description })
1018
+ },
1019
+ rule.ruleId
1020
+ )) });
1022
1021
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1023
1022
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1024
1023
  hero,
@@ -1030,7 +1029,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete, o
1030
1029
  {
1031
1030
  title: labels.createTitle,
1032
1031
  saveLabel: labels.save,
1033
- initial: chunkH475T2N7_js.defaultRuleForm(),
1032
+ initial: chunkY4YIGEX6_js.defaultRuleForm(),
1034
1033
  onClose: () => setCreateOpen(false),
1035
1034
  onSubmit: (value) => {
1036
1035
  onCreate(value);
@@ -1062,7 +1061,7 @@ function RuleEditor({
1062
1061
  }) {
1063
1062
  const [value, setValue] = react.useState(initial);
1064
1063
  return /* @__PURE__ */ jsxRuntime.jsx(
1065
- chunkZGVN23J4_js.GlassModal,
1064
+ chunk6R5Z2IQ5_js.GlassModal,
1066
1065
  {
1067
1066
  open: true,
1068
1067
  onClose,
@@ -1074,12 +1073,12 @@ function RuleEditor({
1074
1073
  event.preventDefault();
1075
1074
  onSubmit(value);
1076
1075
  },
1077
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkH475T2N7_js.RuleForm, { value, onChange: setValue })
1076
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunkY4YIGEX6_js.RuleForm, { value, onChange: setValue })
1078
1077
  }
1079
1078
  );
1080
1079
  }
1081
1080
  function ruleToFormValue(rule) {
1082
- const base = chunkH475T2N7_js.defaultRuleForm();
1081
+ const base = chunkY4YIGEX6_js.defaultRuleForm();
1083
1082
  const rawCondition = rule.condition ?? rule.conditions;
1084
1083
  const rawAction = pickAction(rule);
1085
1084
  return {
@@ -1219,7 +1218,7 @@ var SAMPLE_DATASOURCES = [
1219
1218
  ];
1220
1219
  function getDialectLabel(dialect) {
1221
1220
  if (!dialect) return "Unknown";
1222
- for (const category of chunk62BD4WLW_js.DIALECT_CATEGORIES) {
1221
+ for (const category of chunkTXI3QDYE_js.DIALECT_CATEGORIES) {
1223
1222
  const found = category.dialects.find((d) => d.value === dialect);
1224
1223
  if (found) return found.label;
1225
1224
  }
@@ -1227,12 +1226,12 @@ function getDialectLabel(dialect) {
1227
1226
  }
1228
1227
  function getDialectGradient(dialect) {
1229
1228
  if (!dialect) return "from-gray-400 to-gray-500";
1230
- const category = chunk62BD4WLW_js.findCategory(dialect);
1229
+ const category = chunkTXI3QDYE_js.findCategory(dialect);
1231
1230
  return category?.gradient ?? "from-gray-400 to-gray-500";
1232
1231
  }
1233
1232
  function getDialectIcon(dialect) {
1234
1233
  if (!dialect) return outline.CircleStackIcon;
1235
- const category = chunk62BD4WLW_js.findCategory(dialect);
1234
+ const category = chunkTXI3QDYE_js.findCategory(dialect);
1236
1235
  return category?.icon ?? outline.CircleStackIcon;
1237
1236
  }
1238
1237
  var DIALECT_LOGO = {
@@ -1312,15 +1311,24 @@ function DatasourcesPageView({
1312
1311
  }
1313
1312
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1314
1313
  /* @__PURE__ */ jsxRuntime.jsx(
1315
- chunkZGVN23J4_js.HeroSection,
1314
+ chunk6R5Z2IQ5_js.HeroSection,
1316
1315
  {
1317
1316
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CircleStackIcon, { className: "h-5 w-5" }),
1318
1317
  label: labels.title,
1319
1318
  title: labels.title,
1320
1319
  subtitle: labels.subtitle,
1321
1320
  gradient: "from-amber-500 to-orange-600",
1322
- toolbar: /* @__PURE__ */ jsxRuntime.jsx(
1323
- chunkZGVN23J4_js.CreateActionButton,
1321
+ toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
1322
+ chunk6R5Z2IQ5_js.SearchBar,
1323
+ {
1324
+ searchTerm,
1325
+ onSearchChange: setSearchTerm,
1326
+ placeholder: labels.searchPlaceholder ?? labels.title,
1327
+ noBorder: true
1328
+ }
1329
+ ) : void 0,
1330
+ actions: /* @__PURE__ */ jsxRuntime.jsx(
1331
+ chunk6R5Z2IQ5_js.CreateActionButton,
1324
1332
  {
1325
1333
  mode: "desktop",
1326
1334
  label: labels.addDatasource,
@@ -1331,7 +1339,7 @@ function DatasourcesPageView({
1331
1339
  }
1332
1340
  ),
1333
1341
  /* @__PURE__ */ jsxRuntime.jsx(
1334
- chunkZGVN23J4_js.CreateActionButton,
1342
+ chunk6R5Z2IQ5_js.CreateActionButton,
1335
1343
  {
1336
1344
  mode: "mobile",
1337
1345
  label: labels.addDatasource,
@@ -1339,16 +1347,8 @@ function DatasourcesPageView({
1339
1347
  accent: "amber"
1340
1348
  }
1341
1349
  ),
1342
- !isEmpty && /* @__PURE__ */ jsxRuntime.jsx(
1343
- chunkZGVN23J4_js.SearchBar,
1344
- {
1345
- searchTerm,
1346
- onSearchChange: setSearchTerm,
1347
- placeholder: labels.searchPlaceholder ?? labels.title
1348
- }
1349
- ),
1350
1350
  isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
1351
- chunkZGVN23J4_js.PageEmptyState,
1351
+ chunk6R5Z2IQ5_js.PageEmptyState,
1352
1352
  {
1353
1353
  title: labels.emptyTitle,
1354
1354
  message: labels.emptyDescription,
@@ -1362,7 +1362,7 @@ function DatasourcesPageView({
1362
1362
  const logoSrc = getDialectLogoSrc(ds.dialect);
1363
1363
  const iconElement = logoSrc ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "liquid-surface flex h-11 w-11 items-center justify-center rounded-lg", children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logoSrc, alt: dialectLabel, className: "h-7 w-7 object-contain" }) }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex h-11 w-11 items-center justify-center rounded-lg bg-gradient-to-br ${gradient} shadow-lg`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-6 w-6 text-white" }) });
1364
1364
  return /* @__PURE__ */ jsxRuntime.jsx(
1365
- chunkZGVN23J4_js.EntityCard,
1365
+ chunk6R5Z2IQ5_js.EntityCard,
1366
1366
  {
1367
1367
  accentGradient: gradient,
1368
1368
  icon: iconElement,
@@ -1392,7 +1392,7 @@ function DatasourcesPageView({
1392
1392
  );
1393
1393
  }) }),
1394
1394
  /* @__PURE__ */ jsxRuntime.jsx(
1395
- chunk62BD4WLW_js.DatasourceModal,
1395
+ chunkTXI3QDYE_js.DatasourceModal,
1396
1396
  {
1397
1397
  open: modalOpen,
1398
1398
  onClose: () => setModalOpen(false),
@@ -1421,7 +1421,7 @@ function AgentsIndexPageView({ labels }) {
1421
1421
  const filteredTiles = searchTerm.trim() ? allTiles.filter((tile) => tile.title.toLowerCase().includes(searchTerm.trim().toLowerCase())) : allTiles;
1422
1422
  const isEmpty = allTiles.length === 0;
1423
1423
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
1424
- chunkZGVN23J4_js.HeroSection,
1424
+ chunk6R5Z2IQ5_js.HeroSection,
1425
1425
  {
1426
1426
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
1427
1427
  label: labels.title,
@@ -1429,7 +1429,7 @@ function AgentsIndexPageView({ labels }) {
1429
1429
  subtitle: labels.subtitle,
1430
1430
  gradient: "from-violet-500 to-indigo-700",
1431
1431
  toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
1432
- chunkZGVN23J4_js.SearchBar,
1432
+ chunk6R5Z2IQ5_js.SearchBar,
1433
1433
  {
1434
1434
  searchTerm,
1435
1435
  onSearchChange: setSearchTerm,
@@ -1442,7 +1442,7 @@ function AgentsIndexPageView({ labels }) {
1442
1442
  const content = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4", children: filteredTiles.map((tile) => {
1443
1443
  const Icon = tile.icon;
1444
1444
  return /* @__PURE__ */ jsxRuntime.jsx(Link, { href: tile.href, className: "block focus:outline-none", children: /* @__PURE__ */ jsxRuntime.jsx(
1445
- chunkZGVN23J4_js.EntityCard,
1445
+ chunk6R5Z2IQ5_js.EntityCard,
1446
1446
  {
1447
1447
  accentGradient: tile.gradient,
1448
1448
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex h-11 w-11 items-center justify-center rounded-lg bg-gradient-to-br ${tile.gradient} shadow-lg`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-6 w-6 text-white" }) }),
@@ -1460,7 +1460,7 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
1460
1460
  const selectedWorkflow = workflows[0] ?? null;
1461
1461
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
1462
1462
  /* @__PURE__ */ jsxRuntime.jsx(
1463
- chunkZGVN23J4_js.SectionHeader,
1463
+ chunk6R5Z2IQ5_js.SectionHeader,
1464
1464
  {
1465
1465
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.RectangleStackIcon, { className: "h-5 w-5 text-white" }),
1466
1466
  title: labels.title,
@@ -1469,9 +1469,9 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
1469
1469
  }
1470
1470
  ),
1471
1471
  /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
1472
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.add }),
1472
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.add }),
1473
1473
  /* @__PURE__ */ jsxRuntime.jsx(
1474
- chunkZGVN23J4_js.Form,
1474
+ chunk6R5Z2IQ5_js.Form,
1475
1475
  {
1476
1476
  onSubmit: (event) => {
1477
1477
  event.preventDefault();
@@ -1482,32 +1482,32 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
1482
1482
  onCreate({ name, description });
1483
1483
  event.currentTarget.reset();
1484
1484
  },
1485
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
1486
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "name", label: labels.workflowName, placeholder: labels.workflowNamePlaceholder, required: true }),
1487
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.workflowDescriptionPlaceholder, rows: 3 }),
1488
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", children: labels.create }) })
1485
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
1486
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "name", label: labels.workflowName, placeholder: labels.workflowNamePlaceholder, required: true }),
1487
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.workflowDescriptionPlaceholder, rows: 3 }),
1488
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", children: labels.create }) })
1489
1489
  ] })
1490
1490
  }
1491
1491
  )
1492
1492
  ] }),
1493
1493
  /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
1494
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.registry }),
1495
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.Table, { children: [
1496
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHead, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.TableRow, { children: [
1497
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHeader, { children: labels.name }),
1498
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHeader, { children: labels.description }),
1499
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHeader, { children: labels.version }),
1500
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHeader, { children: labels.status }),
1501
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableHeader, { children: labels.actions })
1494
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.registry }),
1495
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.Table, { children: [
1496
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHead, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.TableRow, { children: [
1497
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHeader, { children: labels.name }),
1498
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHeader, { children: labels.description }),
1499
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHeader, { children: labels.version }),
1500
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHeader, { children: labels.status }),
1501
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableHeader, { children: labels.actions })
1502
1502
  ] }) }),
1503
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableBody, { children: workflows.map((workflow) => /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.TableRow, { children: [
1504
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableCell, { children: workflow.name }),
1505
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableCell, { children: workflow.description }),
1506
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableCell, { children: String(workflow.version) }),
1507
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { children: workflow.isDraft ? labels.statusDraft : labels.statusPublished }) }),
1508
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
1503
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableBody, { children: workflows.map((workflow) => /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.TableRow, { children: [
1504
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableCell, { children: workflow.name }),
1505
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableCell, { children: workflow.description }),
1506
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableCell, { children: String(workflow.version) }),
1507
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { children: workflow.isDraft ? labels.statusDraft : labels.statusPublished }) }),
1508
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
1509
1509
  /* @__PURE__ */ jsxRuntime.jsx(
1510
- chunkZGVN23J4_js.Form,
1510
+ chunk6R5Z2IQ5_js.Form,
1511
1511
  {
1512
1512
  onSubmit: (event) => {
1513
1513
  event.preventDefault();
@@ -1517,7 +1517,7 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
1517
1517
  description: workflow.description ?? ""
1518
1518
  });
1519
1519
  },
1520
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.InlineForm, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", outline: true, children: labels.saveMeta }) })
1520
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.InlineForm, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", outline: true, children: labels.saveMeta }) })
1521
1521
  }
1522
1522
  ),
1523
1523
  /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", color: "sky", onClick: () => onPublish(workflow.id), children: labels.publish })
@@ -1526,8 +1526,8 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
1526
1526
  ] })
1527
1527
  ] }),
1528
1528
  /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
1529
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.workspace }),
1530
- selectedWorkflow ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-h-[680px] rounded-2xl border border-white/65 dark:border-white/12 overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(chunkZ6FZQOTW_js.WorkflowWorkspace, { graph: chunk3T2WGL47_js.adaptWorkflowGraphToUi(selectedWorkflow.graph) }) }) : /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Text, { children: labels.empty })
1529
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.workspace }),
1530
+ selectedWorkflow ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-h-[680px] rounded-2xl border border-white/65 dark:border-white/12 overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(chunkGDVB7QDZ_js.WorkflowWorkspace, { graph: chunk3T2WGL47_js.adaptWorkflowGraphToUi(selectedWorkflow.graph) }) }) : /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Text, { children: labels.empty })
1531
1531
  ] })
1532
1532
  ] });
1533
1533
  }
@@ -1577,7 +1577,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
1577
1577
  });
1578
1578
  const isEmpty = allRuns.length === 0;
1579
1579
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
1580
- chunkZGVN23J4_js.HeroSection,
1580
+ chunk6R5Z2IQ5_js.HeroSection,
1581
1581
  {
1582
1582
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ClockIcon, { className: "h-5 w-5" }),
1583
1583
  label: labels.title,
@@ -1585,7 +1585,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
1585
1585
  subtitle: labels.subtitle,
1586
1586
  gradient: "from-indigo-500 to-sky-700",
1587
1587
  toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
1588
- chunkZGVN23J4_js.SearchBar,
1588
+ chunk6R5Z2IQ5_js.SearchBar,
1589
1589
  {
1590
1590
  searchTerm,
1591
1591
  onSearchChange: setSearchTerm,
@@ -1599,7 +1599,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
1599
1599
  count: statusFilter !== "all" ? 1 : 0,
1600
1600
  onClear: statusFilter !== "all" ? () => setStatusFilter("all") : void 0,
1601
1601
  children: /* @__PURE__ */ jsxRuntime.jsx(
1602
- chunkZGVN23J4_js.FormSelect,
1602
+ chunk6R5Z2IQ5_js.FormSelect,
1603
1603
  {
1604
1604
  name: "statusFilter",
1605
1605
  label: labels.filterStatus,
@@ -1613,8 +1613,8 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
1613
1613
  ) : void 0
1614
1614
  }
1615
1615
  );
1616
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : filteredRuns.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredRuns.map((run) => /* @__PURE__ */ jsxRuntime.jsxs(
1617
- chunkZGVN23J4_js.EntityCard,
1616
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : filteredRuns.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredRuns.map((run) => /* @__PURE__ */ jsxRuntime.jsxs(
1617
+ chunk6R5Z2IQ5_js.EntityCard,
1618
1618
  {
1619
1619
  accentGradient: "from-indigo-500 to-sky-700",
1620
1620
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-indigo-500/10 text-indigo-600 dark:bg-indigo-500/20 dark:text-indigo-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.ClockIcon, { className: "h-6 w-6" }) }),
@@ -1646,7 +1646,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
1646
1646
  }
1647
1647
  function RunTimelinePageView({ labels, entries, loading, runId }) {
1648
1648
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
1649
- chunkZGVN23J4_js.HeroSection,
1649
+ chunk6R5Z2IQ5_js.HeroSection,
1650
1650
  {
1651
1651
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ClockIcon, { className: "h-5 w-5" }),
1652
1652
  label: labels.title,
@@ -1658,19 +1658,19 @@ function RunTimelinePageView({ labels, entries, loading, runId }) {
1658
1658
  if (loading) {
1659
1659
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1660
1660
  hero,
1661
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {})
1661
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {})
1662
1662
  ] });
1663
1663
  }
1664
1664
  if (entries.length === 0) {
1665
1665
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1666
1666
  hero,
1667
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty ?? "", message: "", iconName: "folder-open" })
1667
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty ?? "", message: "", iconName: "folder-open" })
1668
1668
  ] });
1669
1669
  }
1670
1670
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1671
1671
  hero,
1672
1672
  /* @__PURE__ */ jsxRuntime.jsx(
1673
- chunkH475T2N7_js.ExecutionTimelinePanel,
1673
+ chunkY4YIGEX6_js.ExecutionTimelinePanel,
1674
1674
  {
1675
1675
  entries,
1676
1676
  labels
@@ -1755,15 +1755,24 @@ function ConnectionsPageView({
1755
1755
  const filteredConnections = searchTerm.trim() ? allConnections.filter((conn) => conn.name.toLowerCase().includes(searchTerm.trim().toLowerCase())) : allConnections;
1756
1756
  const isEmpty = allConnections.length === 0;
1757
1757
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
1758
- chunkZGVN23J4_js.HeroSection,
1758
+ chunk6R5Z2IQ5_js.HeroSection,
1759
1759
  {
1760
1760
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-5 w-5" }),
1761
1761
  label: labels.title,
1762
1762
  title: labels.title,
1763
1763
  subtitle: labels.subtitle,
1764
1764
  gradient: "from-sky-500 to-indigo-600",
1765
- toolbar: /* @__PURE__ */ jsxRuntime.jsx(
1766
- chunkZGVN23J4_js.CreateActionButton,
1765
+ toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
1766
+ chunk6R5Z2IQ5_js.SearchBar,
1767
+ {
1768
+ searchTerm,
1769
+ onSearchChange: setSearchTerm,
1770
+ placeholder: labels.searchPlaceholder ?? labels.title,
1771
+ noBorder: true
1772
+ }
1773
+ ) : void 0,
1774
+ actions: /* @__PURE__ */ jsxRuntime.jsx(
1775
+ chunk6R5Z2IQ5_js.CreateActionButton,
1767
1776
  {
1768
1777
  mode: "desktop",
1769
1778
  label: labels.add,
@@ -1774,7 +1783,7 @@ function ConnectionsPageView({
1774
1783
  }
1775
1784
  );
1776
1785
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
1777
- chunkZGVN23J4_js.CreateActionButton,
1786
+ chunk6R5Z2IQ5_js.CreateActionButton,
1778
1787
  {
1779
1788
  mode: "mobile",
1780
1789
  label: labels.add,
@@ -1782,50 +1791,40 @@ function ConnectionsPageView({
1782
1791
  accent: "sky"
1783
1792
  }
1784
1793
  );
1785
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1786
- /* @__PURE__ */ jsxRuntime.jsx(
1787
- chunkZGVN23J4_js.SearchBar,
1788
- {
1789
- searchTerm,
1790
- onSearchChange: setSearchTerm,
1791
- placeholder: labels.searchPlaceholder ?? labels.title
1792
- }
1793
- ),
1794
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredConnections.map((conn) => /* @__PURE__ */ jsxRuntime.jsx(
1795
- chunkZGVN23J4_js.EntityCard,
1796
- {
1797
- accentGradient: "from-sky-500 to-indigo-600",
1798
- icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-sky-500/10 text-sky-600 dark:bg-sky-500/20 dark:text-sky-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-6 w-6" }) }),
1799
- title: conn.name,
1800
- subtitle: providerLabel(conn.providerSlug),
1801
- status: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-1", children: [
1802
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: conn.enabled ? "emerald" : "zinc", children: conn.enabled ? labels.enable : labels.disable }),
1803
- conn.credentialRef ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "indigo", children: "Secret set" }) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "amber", children: "No secret" })
1804
- ] }),
1805
- footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
1806
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEditing(conn), children: labels.edit }),
1807
- /* @__PURE__ */ jsxRuntime.jsx(
1808
- chunkBHOT22QL_js.Button,
1809
- {
1810
- type: "button",
1811
- size: "sm",
1812
- color: "rose",
1813
- onClick: async () => {
1814
- if (window.confirm(labels.deleteConfirm)) await onDelete(conn);
1815
- },
1816
- children: labels.delete
1817
- }
1818
- )
1819
- ] }),
1820
- children: /* @__PURE__ */ jsxRuntime.jsxs("dl", { className: "mt-1 space-y-0.5 text-xs text-slate-500 dark:text-slate-400", children: [
1821
- conn.region && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Region", value: conn.region }),
1822
- conn.endpoint && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Endpoint", value: conn.endpoint }),
1823
- conn.modelFilter && conn.modelFilter.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Models", value: conn.modelFilter.join(", ") })
1824
- ] })
1825
- },
1826
- conn.id
1827
- )) })
1828
- ] });
1794
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredConnections.map((conn) => /* @__PURE__ */ jsxRuntime.jsx(
1795
+ chunk6R5Z2IQ5_js.EntityCard,
1796
+ {
1797
+ accentGradient: "from-sky-500 to-indigo-600",
1798
+ icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-sky-500/10 text-sky-600 dark:bg-sky-500/20 dark:text-sky-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-6 w-6" }) }),
1799
+ title: conn.name,
1800
+ subtitle: providerLabel(conn.providerSlug),
1801
+ status: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-1", children: [
1802
+ /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: conn.enabled ? "emerald" : "zinc", children: conn.enabled ? labels.enable : labels.disable }),
1803
+ conn.credentialRef ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "indigo", children: "Secret set" }) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "amber", children: "No secret" })
1804
+ ] }),
1805
+ footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
1806
+ /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEditing(conn), children: labels.edit }),
1807
+ /* @__PURE__ */ jsxRuntime.jsx(
1808
+ chunkBHOT22QL_js.Button,
1809
+ {
1810
+ type: "button",
1811
+ size: "sm",
1812
+ color: "rose",
1813
+ onClick: async () => {
1814
+ if (window.confirm(labels.deleteConfirm)) await onDelete(conn);
1815
+ },
1816
+ children: labels.delete
1817
+ }
1818
+ )
1819
+ ] }),
1820
+ children: /* @__PURE__ */ jsxRuntime.jsxs("dl", { className: "mt-1 space-y-0.5 text-xs text-slate-500 dark:text-slate-400", children: [
1821
+ conn.region && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Region", value: conn.region }),
1822
+ conn.endpoint && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Endpoint", value: conn.endpoint }),
1823
+ conn.modelFilter && conn.modelFilter.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Row, { label: "Models", value: conn.modelFilter.join(", ") })
1824
+ ] })
1825
+ },
1826
+ conn.id
1827
+ )) });
1829
1828
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1830
1829
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1831
1830
  hero,
@@ -1945,7 +1944,7 @@ function ConnectionEditor({
1945
1944
  return preset.exampleModels?.join(", ") ?? "";
1946
1945
  }, [preset]);
1947
1946
  return /* @__PURE__ */ jsxRuntime.jsx(
1948
- chunkZGVN23J4_js.GlassModal,
1947
+ chunk6R5Z2IQ5_js.GlassModal,
1949
1948
  {
1950
1949
  open: true,
1951
1950
  onClose,
@@ -1958,9 +1957,9 @@ function ConnectionEditor({
1958
1957
  void handleSubmit();
1959
1958
  },
1960
1959
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
1961
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
1960
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
1962
1961
  /* @__PURE__ */ jsxRuntime.jsx(
1963
- chunkZGVN23J4_js.FormSelect,
1962
+ chunk6R5Z2IQ5_js.FormSelect,
1964
1963
  {
1965
1964
  label: "Provider",
1966
1965
  value: value.providerSlug,
@@ -1971,7 +1970,7 @@ function ConnectionEditor({
1971
1970
  }
1972
1971
  ),
1973
1972
  /* @__PURE__ */ jsxRuntime.jsx(
1974
- chunkZGVN23J4_js.FormInput,
1973
+ chunk6R5Z2IQ5_js.FormInput,
1975
1974
  {
1976
1975
  label: "Display name",
1977
1976
  required: true,
@@ -1981,7 +1980,7 @@ function ConnectionEditor({
1981
1980
  }
1982
1981
  ),
1983
1982
  preset.needsRegion && /* @__PURE__ */ jsxRuntime.jsx(
1984
- chunkZGVN23J4_js.FormInput,
1983
+ chunk6R5Z2IQ5_js.FormInput,
1985
1984
  {
1986
1985
  label: "Region",
1987
1986
  value: value.region,
@@ -1990,7 +1989,7 @@ function ConnectionEditor({
1990
1989
  }
1991
1990
  ),
1992
1991
  preset.needsEndpoint && /* @__PURE__ */ jsxRuntime.jsx(
1993
- chunkZGVN23J4_js.FormInput,
1992
+ chunk6R5Z2IQ5_js.FormInput,
1994
1993
  {
1995
1994
  label: "Endpoint URL",
1996
1995
  value: value.endpoint,
@@ -2000,7 +1999,7 @@ function ConnectionEditor({
2000
1999
  )
2001
2000
  ] }),
2002
2001
  /* @__PURE__ */ jsxRuntime.jsx(
2003
- chunkZGVN23J4_js.FormInput,
2002
+ chunk6R5Z2IQ5_js.FormInput,
2004
2003
  {
2005
2004
  label: value.credentialRef ? "Rotate API key (leave blank to keep current)" : "API key",
2006
2005
  type: "password",
@@ -2011,7 +2010,7 @@ function ConnectionEditor({
2011
2010
  }
2012
2011
  ),
2013
2012
  /* @__PURE__ */ jsxRuntime.jsx(
2014
- chunkZGVN23J4_js.FormInput,
2013
+ chunk6R5Z2IQ5_js.FormInput,
2015
2014
  {
2016
2015
  label: "Model filter (comma-separated, optional)",
2017
2016
  value: value.modelFilter,
@@ -2023,7 +2022,7 @@ function ConnectionEditor({
2023
2022
  /* @__PURE__ */ jsxRuntime.jsxs("details", { className: "rounded-xl border border-slate-200 bg-slate-50/60 p-3 text-sm dark:border-slate-700 dark:bg-slate-900/40", children: [
2024
2023
  /* @__PURE__ */ jsxRuntime.jsx("summary", { className: "cursor-pointer font-medium text-slate-700 dark:text-slate-200", children: "Advanced config (JSON)" }),
2025
2024
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsx(
2026
- chunkZGVN23J4_js.FormTextarea,
2025
+ chunk6R5Z2IQ5_js.FormTextarea,
2027
2026
  {
2028
2027
  rows: 4,
2029
2028
  value: value.configJson,
@@ -2093,7 +2092,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2093
2092
  { value: "password", label: labels.typePassword }
2094
2093
  ];
2095
2094
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
2096
- chunkZGVN23J4_js.HeroSection,
2095
+ chunk6R5Z2IQ5_js.HeroSection,
2097
2096
  {
2098
2097
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.KeyIcon, { className: "h-5 w-5" }),
2099
2098
  label: labels.title,
@@ -2101,7 +2100,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2101
2100
  subtitle: labels.subtitle,
2102
2101
  gradient: "from-rose-500 to-orange-600",
2103
2102
  toolbar: /* @__PURE__ */ jsxRuntime.jsx(
2104
- chunkZGVN23J4_js.CreateActionButton,
2103
+ chunk6R5Z2IQ5_js.CreateActionButton,
2105
2104
  {
2106
2105
  mode: "desktop",
2107
2106
  label: labels.addCredential,
@@ -2112,7 +2111,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2112
2111
  }
2113
2112
  );
2114
2113
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
2115
- chunkZGVN23J4_js.CreateActionButton,
2114
+ chunk6R5Z2IQ5_js.CreateActionButton,
2116
2115
  {
2117
2116
  mode: "mobile",
2118
2117
  label: labels.addCredential,
@@ -2120,9 +2119,9 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2120
2119
  accent: "rose"
2121
2120
  }
2122
2121
  );
2123
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2122
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2124
2123
  /* @__PURE__ */ jsxRuntime.jsx(
2125
- chunkZGVN23J4_js.SearchBar,
2124
+ chunk6R5Z2IQ5_js.SearchBar,
2126
2125
  {
2127
2126
  searchTerm,
2128
2127
  onSearchChange: setSearchTerm,
@@ -2130,7 +2129,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2130
2129
  }
2131
2130
  ),
2132
2131
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: filteredCredentials.map((secret) => /* @__PURE__ */ jsxRuntime.jsxs(
2133
- chunkZGVN23J4_js.EntityCard,
2132
+ chunk6R5Z2IQ5_js.EntityCard,
2134
2133
  {
2135
2134
  accentGradient: "from-rose-500 to-orange-700",
2136
2135
  icon: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-rose-500/10 text-rose-600 dark:bg-rose-500/20 dark:text-rose-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.KeyIcon, { className: "h-6 w-6" }) }),
@@ -2138,7 +2137,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2138
2137
  subtitle: secret.secretType,
2139
2138
  status: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: secret.disabled ? "zinc" : "emerald", children: secret.disabled ? labels.disable : "Active" }),
2140
2139
  footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-2", children: [
2141
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.CopyableId, { id: secret.secretId }),
2140
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.CopyableId, { id: secret.secretId }),
2142
2141
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
2143
2142
  /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setRotateFor(secret), children: [
2144
2143
  /* @__PURE__ */ jsxRuntime.jsx(outline.ArrowPathIcon, { className: "mr-1 h-3.5 w-3.5" }),
@@ -2181,7 +2180,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2181
2180
  mobileAction
2182
2181
  ] }),
2183
2182
  /* @__PURE__ */ jsxRuntime.jsx(
2184
- chunkZGVN23J4_js.GlassModal,
2183
+ chunk6R5Z2IQ5_js.GlassModal,
2185
2184
  {
2186
2185
  open: createOpen,
2187
2186
  onClose: () => setCreateOpen(false),
@@ -2199,16 +2198,16 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2199
2198
  onCreate({ name, value, secretType, description });
2200
2199
  setCreateOpen(false);
2201
2200
  },
2202
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
2203
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "name", label: labels.name, placeholder: labels.namePlaceholder, required: true }),
2204
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormSelect, { name: "secretType", label: labels.type, options: typeOptions, defaultValue: "generic" }),
2205
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }),
2206
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.descriptionPlaceholder, rows: 2 })
2201
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
2202
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "name", label: labels.name, placeholder: labels.namePlaceholder, required: true }),
2203
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormSelect, { name: "secretType", label: labels.type, options: typeOptions, defaultValue: "generic" }),
2204
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }),
2205
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.descriptionPlaceholder, rows: 2 })
2207
2206
  ] })
2208
2207
  }
2209
2208
  ),
2210
2209
  /* @__PURE__ */ jsxRuntime.jsx(
2211
- chunkZGVN23J4_js.GlassModal,
2210
+ chunk6R5Z2IQ5_js.GlassModal,
2212
2211
  {
2213
2212
  open: rotateFor !== null,
2214
2213
  onClose: () => setRotateFor(null),
@@ -2223,7 +2222,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
2223
2222
  onRotate(rotateFor, value);
2224
2223
  setRotateFor(null);
2225
2224
  },
2226
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormGrid, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }) })
2225
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormGrid, { children: /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }) })
2227
2226
  }
2228
2227
  )
2229
2228
  ] });
@@ -2276,15 +2275,24 @@ function AgentsWorkspacePageView({
2276
2275
  }, [agents, selectedId]);
2277
2276
  const isEmpty = agents.length === 0;
2278
2277
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
2279
- chunkZGVN23J4_js.HeroSection,
2278
+ chunk6R5Z2IQ5_js.HeroSection,
2280
2279
  {
2281
2280
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
2282
2281
  label: labels.title,
2283
2282
  title: labels.title,
2284
2283
  subtitle: labels.subtitle,
2285
2284
  gradient: "from-violet-500 to-indigo-700",
2285
+ toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
2286
+ chunk6R5Z2IQ5_js.SearchBar,
2287
+ {
2288
+ searchTerm,
2289
+ onSearchChange: setSearchTerm,
2290
+ placeholder: labels.searchPlaceholder,
2291
+ noBorder: true
2292
+ }
2293
+ ) : void 0,
2286
2294
  actions: /* @__PURE__ */ jsxRuntime.jsx(
2287
- chunkZGVN23J4_js.CreateActionButton,
2295
+ chunk6R5Z2IQ5_js.CreateActionButton,
2288
2296
  {
2289
2297
  mode: "desktop",
2290
2298
  label: labels.addAgent,
@@ -2295,7 +2303,7 @@ function AgentsWorkspacePageView({
2295
2303
  }
2296
2304
  );
2297
2305
  const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
2298
- chunkZGVN23J4_js.CreateActionButton,
2306
+ chunk6R5Z2IQ5_js.CreateActionButton,
2299
2307
  {
2300
2308
  mode: "mobile",
2301
2309
  label: labels.addAgent,
@@ -2303,91 +2311,81 @@ function AgentsWorkspacePageView({
2303
2311
  accent: "violet"
2304
2312
  }
2305
2313
  );
2306
- const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
2307
- chunkZGVN23J4_js.PageEmptyState,
2314
+ const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
2315
+ chunk6R5Z2IQ5_js.PageEmptyState,
2308
2316
  {
2309
2317
  title: labels.empty,
2310
2318
  message: labels.emptyMessage,
2311
2319
  iconName: "folder-open"
2312
2320
  }
2313
- ) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
2314
- /* @__PURE__ */ jsxRuntime.jsx(
2315
- chunkZGVN23J4_js.SearchBar,
2316
- {
2317
- searchTerm,
2318
- onSearchChange: setSearchTerm,
2319
- placeholder: labels.searchPlaceholder
2320
- }
2321
- ),
2322
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-[20rem_minmax(0,1fr)]", children: [
2323
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:sticky lg:top-4", children: /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.ListCard, { variant: "glass", children: filteredAgents.map((agent) => {
2324
- const id = String(agent.agentId ?? agent.id ?? "");
2325
- const active = id === selectedId;
2326
- const initials = deriveInitials(String(agent.name ?? id));
2327
- const modelName = models.find((m) => m.id === String(agent.modelId ?? ""))?.name ?? String(agent.modelId ?? "");
2328
- return /* @__PURE__ */ jsxRuntime.jsx(
2329
- chunkZGVN23J4_js.ListCardItem,
2330
- {
2331
- leading: /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Avatar, { tone: active ? "violet" : "slate", initials }),
2332
- trailing: agent.activePromptVersion > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Badge, { color: "emerald", children: [
2333
- "v",
2334
- agent.activePromptVersion
2335
- ] }) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "zinc", children: "draft" }),
2336
- pressable: true,
2337
- onPress: () => {
2338
- setSelectedId(id);
2339
- onSelectAgent?.(id);
2340
- },
2341
- className: active ? "bg-violet-500/5 dark:bg-violet-400/10" : "",
2342
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0", children: [
2343
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-sm font-semibold text-slate-900 dark:text-slate-100", children: String(agent.name ?? id) }),
2344
- modelName && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs text-slate-500 dark:text-slate-400", children: modelName })
2345
- ] })
2346
- },
2347
- id
2348
- );
2349
- }) }) }),
2350
- /* @__PURE__ */ jsxRuntime.jsx("div", { children: selectedAgent ? /* @__PURE__ */ jsxRuntime.jsx(
2351
- AgentDetail,
2352
- {
2353
- agent: selectedAgent,
2354
- labels,
2355
- models,
2356
- tools,
2357
- connections,
2358
- prompts: promptsByAgent[String(selectedAgent.agentId ?? selectedAgent.id ?? "")] ?? [],
2359
- onUpdateAgent,
2360
- onDeleteAgent,
2361
- onCreatePrompt,
2362
- onActivatePrompt,
2363
- onAttachTool,
2364
- onDetachTool,
2365
- onUpdateModel,
2366
- onCleared: () => {
2367
- setSelectedId(null);
2368
- onSelectAgent?.(null);
2369
- }
2370
- },
2371
- String(selectedAgent.agentId ?? selectedAgent.id ?? "")
2372
- ) : /* @__PURE__ */ jsxRuntime.jsx(
2373
- chunkZGVN23J4_js.SectionCard,
2321
+ ) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-[20rem_minmax(0,1fr)]", children: [
2322
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:sticky lg:top-4", children: /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.ListCard, { variant: "glass", children: filteredAgents.map((agent) => {
2323
+ const id = String(agent.agentId ?? agent.id ?? "");
2324
+ const active = id === selectedId;
2325
+ const initials = deriveInitials(String(agent.name ?? id));
2326
+ const modelName = models.find((m) => m.id === String(agent.modelId ?? ""))?.name ?? String(agent.modelId ?? "");
2327
+ return /* @__PURE__ */ jsxRuntime.jsx(
2328
+ chunk6R5Z2IQ5_js.ListCardItem,
2374
2329
  {
2375
- header: {
2376
- icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-4 w-4" }),
2377
- title: labels.noSelection,
2378
- subtitle: labels.noSelectionMessage
2330
+ leading: /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Avatar, { tone: active ? "violet" : "slate", initials }),
2331
+ trailing: agent.activePromptVersion > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Badge, { color: "emerald", children: [
2332
+ "v",
2333
+ agent.activePromptVersion
2334
+ ] }) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: "zinc", children: "draft" }),
2335
+ pressable: true,
2336
+ onPress: () => {
2337
+ setSelectedId(id);
2338
+ onSelectAgent?.(id);
2379
2339
  },
2380
- children: /* @__PURE__ */ jsxRuntime.jsx(
2381
- chunkZGVN23J4_js.PageEmptyState,
2382
- {
2383
- title: labels.noSelection,
2384
- message: labels.noSelectionMessage,
2385
- iconName: "folder-open"
2386
- }
2387
- )
2340
+ className: active ? "bg-violet-500/5 dark:bg-violet-400/10" : "",
2341
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0", children: [
2342
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-sm font-semibold text-slate-900 dark:text-slate-100", children: String(agent.name ?? id) }),
2343
+ modelName && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs text-slate-500 dark:text-slate-400", children: modelName })
2344
+ ] })
2345
+ },
2346
+ id
2347
+ );
2348
+ }) }) }),
2349
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: selectedAgent ? /* @__PURE__ */ jsxRuntime.jsx(
2350
+ AgentDetail,
2351
+ {
2352
+ agent: selectedAgent,
2353
+ labels,
2354
+ models,
2355
+ tools,
2356
+ connections,
2357
+ prompts: promptsByAgent[String(selectedAgent.agentId ?? selectedAgent.id ?? "")] ?? [],
2358
+ onUpdateAgent,
2359
+ onDeleteAgent,
2360
+ onCreatePrompt,
2361
+ onActivatePrompt,
2362
+ onAttachTool,
2363
+ onDetachTool,
2364
+ onUpdateModel,
2365
+ onCleared: () => {
2366
+ setSelectedId(null);
2367
+ onSelectAgent?.(null);
2388
2368
  }
2389
- ) })
2390
- ] })
2369
+ },
2370
+ String(selectedAgent.agentId ?? selectedAgent.id ?? "")
2371
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
2372
+ chunk6R5Z2IQ5_js.SectionCard,
2373
+ {
2374
+ header: {
2375
+ icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-4 w-4" }),
2376
+ title: labels.noSelection,
2377
+ subtitle: labels.noSelectionMessage
2378
+ },
2379
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2380
+ chunk6R5Z2IQ5_js.PageEmptyState,
2381
+ {
2382
+ title: labels.noSelection,
2383
+ message: labels.noSelectionMessage,
2384
+ iconName: "folder-open"
2385
+ }
2386
+ )
2387
+ }
2388
+ ) })
2391
2389
  ] });
2392
2390
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
2393
2391
  hero,
@@ -2413,7 +2411,7 @@ function AgentDetail({
2413
2411
  }) {
2414
2412
  const agentId = String(agent.agentId ?? agent.id ?? "");
2415
2413
  return /* @__PURE__ */ jsxRuntime.jsx(
2416
- chunkZGVN23J4_js.SectionCard,
2414
+ chunk6R5Z2IQ5_js.SectionCard,
2417
2415
  {
2418
2416
  header: {
2419
2417
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-4 w-4" }),
@@ -2438,15 +2436,15 @@ function AgentDetail({
2438
2436
  ]
2439
2437
  }
2440
2438
  ),
2441
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.Tabs, { defaultValue: "general", className: "w-full", children: [
2442
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.TabsList, { className: "bg-white/40 dark:bg-white/[0.06]", children: [
2443
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsTrigger, { value: "general", children: labels.generalTab }),
2444
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsTrigger, { value: "prompt", children: labels.promptTab }),
2445
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsTrigger, { value: "tools", children: labels.toolsTab }),
2446
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsTrigger, { value: "model", children: labels.modelTab })
2439
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.Tabs, { defaultValue: "general", className: "w-full", children: [
2440
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.TabsList, { className: "bg-white/40 dark:bg-white/[0.06]", children: [
2441
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsTrigger, { value: "general", children: labels.generalTab }),
2442
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsTrigger, { value: "prompt", children: labels.promptTab }),
2443
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsTrigger, { value: "tools", children: labels.toolsTab }),
2444
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsTrigger, { value: "model", children: labels.modelTab })
2447
2445
  ] }),
2448
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsContent, { value: "general", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(GeneralTab, { agent, labels, onSubmit: (input) => onUpdateAgent(agentId, input) }) }),
2449
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsContent, { value: "prompt", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2446
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsContent, { value: "general", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(GeneralTab, { agent, labels, onSubmit: (input) => onUpdateAgent(agentId, input) }) }),
2447
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsContent, { value: "prompt", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2450
2448
  PromptTab,
2451
2449
  {
2452
2450
  agent,
@@ -2456,7 +2454,7 @@ function AgentDetail({
2456
2454
  onActivate: (promptId) => onActivatePrompt(agentId, promptId)
2457
2455
  }
2458
2456
  ) }),
2459
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsContent, { value: "tools", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2457
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsContent, { value: "tools", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2460
2458
  ToolsTab,
2461
2459
  {
2462
2460
  agent,
@@ -2466,7 +2464,7 @@ function AgentDetail({
2466
2464
  onDetach: (toolId) => onDetachTool(agentId, toolId)
2467
2465
  }
2468
2466
  ) }),
2469
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.TabsContent, { value: "model", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2467
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.TabsContent, { value: "model", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
2470
2468
  ModelTab,
2471
2469
  {
2472
2470
  agent,
@@ -2498,7 +2496,7 @@ function GeneralTab({
2498
2496
  const initialRole = String(agent.role ?? "");
2499
2497
  const initialStatus = String(agent.status ?? "draft");
2500
2498
  return /* @__PURE__ */ jsxRuntime.jsx(
2501
- chunkZGVN23J4_js.SectionCard,
2499
+ chunk6R5Z2IQ5_js.SectionCard,
2502
2500
  {
2503
2501
  variant: "glass",
2504
2502
  header: {
@@ -2527,10 +2525,10 @@ function GeneralTab({
2527
2525
  },
2528
2526
  className: "space-y-4",
2529
2527
  children: [
2530
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
2531
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name, required: true }),
2528
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
2529
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name, required: true }),
2532
2530
  /* @__PURE__ */ jsxRuntime.jsx(
2533
- chunkZGVN23J4_js.FormSelect,
2531
+ chunk6R5Z2IQ5_js.FormSelect,
2534
2532
  {
2535
2533
  name: "status",
2536
2534
  label: labels.status,
@@ -2542,9 +2540,9 @@ function GeneralTab({
2542
2540
  ]
2543
2541
  }
2544
2542
  ),
2545
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "role", label: labels.role, placeholder: labels.rolePlaceholder, defaultValue: initialRole }),
2543
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "role", label: labels.role, placeholder: labels.rolePlaceholder, defaultValue: initialRole }),
2546
2544
  /* @__PURE__ */ jsxRuntime.jsx(
2547
- chunkZGVN23J4_js.FormInput,
2545
+ chunk6R5Z2IQ5_js.FormInput,
2548
2546
  {
2549
2547
  name: "maxTokens",
2550
2548
  label: labels.maxTokens,
@@ -2553,7 +2551,7 @@ function GeneralTab({
2553
2551
  }
2554
2552
  ),
2555
2553
  /* @__PURE__ */ jsxRuntime.jsx(
2556
- chunkZGVN23J4_js.FormInput,
2554
+ chunk6R5Z2IQ5_js.FormInput,
2557
2555
  {
2558
2556
  name: "temperature",
2559
2557
  label: labels.temperature,
@@ -2565,7 +2563,7 @@ function GeneralTab({
2565
2563
  }
2566
2564
  )
2567
2565
  ] }),
2568
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "description", label: labels.description, defaultValue: initialDescription, rows: 3 }),
2566
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "description", label: labels.description, defaultValue: initialDescription, rows: 3 }),
2569
2567
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-end", children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", color: "indigo", disabled: submitting, children: submitting ? labels.saving : labels.save }) })
2570
2568
  ]
2571
2569
  }
@@ -2585,7 +2583,7 @@ function PromptTab({
2585
2583
  const currentSystem = String(agent.systemPrompt ?? "");
2586
2584
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
2587
2585
  /* @__PURE__ */ jsxRuntime.jsx(
2588
- chunkZGVN23J4_js.SectionCard,
2586
+ chunk6R5Z2IQ5_js.SectionCard,
2589
2587
  {
2590
2588
  variant: "glass",
2591
2589
  header: {
@@ -2597,7 +2595,7 @@ function PromptTab({
2597
2595
  }
2598
2596
  ),
2599
2597
  /* @__PURE__ */ jsxRuntime.jsx(
2600
- chunkZGVN23J4_js.SectionCard,
2598
+ chunk6R5Z2IQ5_js.SectionCard,
2601
2599
  {
2602
2600
  variant: "glass",
2603
2601
  header: {
@@ -2608,10 +2606,10 @@ function PromptTab({
2608
2606
  /* @__PURE__ */ jsxRuntime.jsx(outline.PlusIcon, { className: "h-4 w-4" }),
2609
2607
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1.5", children: labels.addPrompt })
2610
2608
  ] }),
2611
- children: prompts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.promptVersionsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.ListCard, { children: prompts.map((prompt) => {
2609
+ children: prompts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.promptVersionsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.ListCard, { children: prompts.map((prompt) => {
2612
2610
  const id = `${prompt.agentId}:${prompt.locale}:${prompt.version}`;
2613
2611
  return /* @__PURE__ */ jsxRuntime.jsxs(
2614
- chunkZGVN23J4_js.ListCardItem,
2612
+ chunk6R5Z2IQ5_js.ListCardItem,
2615
2613
  {
2616
2614
  leading: /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Badge, { color: prompt.isActive ? "emerald" : "zinc", children: [
2617
2615
  "v",
@@ -2629,7 +2627,7 @@ function PromptTab({
2629
2627
  }
2630
2628
  ),
2631
2629
  addOpen && /* @__PURE__ */ jsxRuntime.jsx(
2632
- chunkZGVN23J4_js.GlassModal,
2630
+ chunk6R5Z2IQ5_js.GlassModal,
2633
2631
  {
2634
2632
  open: true,
2635
2633
  onClose: () => setAddOpen(false),
@@ -2650,10 +2648,10 @@ function PromptTab({
2650
2648
  });
2651
2649
  setAddOpen(false);
2652
2650
  },
2653
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
2654
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormSelect, { name: "locale", label: labels.promptLocale, options: LOCALE_OPTIONS2, defaultValue: "en" }),
2651
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
2652
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormSelect, { name: "locale", label: labels.promptLocale, options: LOCALE_OPTIONS2, defaultValue: "en" }),
2655
2653
  /* @__PURE__ */ jsxRuntime.jsx(
2656
- chunkZGVN23J4_js.FormSelect,
2654
+ chunk6R5Z2IQ5_js.FormSelect,
2657
2655
  {
2658
2656
  name: "isActive",
2659
2657
  label: labels.promptIsActive,
@@ -2664,10 +2662,10 @@ function PromptTab({
2664
2662
  defaultValue: "true"
2665
2663
  }
2666
2664
  ),
2667
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormInput, { name: "reason", label: labels.promptReason }),
2668
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "systemPrompt", label: labels.promptSystemPrompt, rows: 3 }),
2669
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "userTemplate", label: labels.promptUserTemplate, rows: 3 }),
2670
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormTextarea, { name: "prompt", label: labels.promptText, rows: 6, required: true })
2665
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormInput, { name: "reason", label: labels.promptReason }),
2666
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "systemPrompt", label: labels.promptSystemPrompt, rows: 3 }),
2667
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "userTemplate", label: labels.promptUserTemplate, rows: 3 }),
2668
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormTextarea, { name: "prompt", label: labels.promptText, rows: 6, required: true })
2671
2669
  ] })
2672
2670
  }
2673
2671
  )
@@ -2690,15 +2688,15 @@ function ToolsTab({
2690
2688
  const availableTools = tools.filter((tool) => !attachedSet.has(tool.agentToolId));
2691
2689
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
2692
2690
  /* @__PURE__ */ jsxRuntime.jsx(
2693
- chunkZGVN23J4_js.SectionCard,
2691
+ chunk6R5Z2IQ5_js.SectionCard,
2694
2692
  {
2695
2693
  variant: "glass",
2696
2694
  header: {
2697
2695
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-4 w-4" }),
2698
2696
  title: labels.toolsAttached
2699
2697
  },
2700
- children: attachedTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.ListCard, { children: attachedTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
2701
- chunkZGVN23J4_js.ListCardItem,
2698
+ children: attachedTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.ListCard, { children: attachedTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
2699
+ chunk6R5Z2IQ5_js.ListCardItem,
2702
2700
  {
2703
2701
  leading: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-9 w-9 items-center justify-center rounded-lg bg-amber-500/10 text-amber-600 dark:bg-amber-500/20 dark:text-amber-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-5 w-5" }) }),
2704
2702
  trailing: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => onDetach(tool.agentToolId), children: labels.detachTool }),
@@ -2712,15 +2710,15 @@ function ToolsTab({
2712
2710
  }
2713
2711
  ),
2714
2712
  /* @__PURE__ */ jsxRuntime.jsx(
2715
- chunkZGVN23J4_js.SectionCard,
2713
+ chunk6R5Z2IQ5_js.SectionCard,
2716
2714
  {
2717
2715
  variant: "glass",
2718
2716
  header: {
2719
2717
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-4 w-4" }),
2720
2718
  title: labels.toolsAvailable
2721
2719
  },
2722
- children: availableTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.ListCard, { children: availableTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
2723
- chunkZGVN23J4_js.ListCardItem,
2720
+ children: availableTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.ListCard, { children: availableTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
2721
+ chunk6R5Z2IQ5_js.ListCardItem,
2724
2722
  {
2725
2723
  leading: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-9 w-9 items-center justify-center rounded-lg bg-slate-500/10 text-slate-600 dark:bg-slate-500/20 dark:text-slate-300", children: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-5 w-5" }) }),
2726
2724
  trailing: /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "indigo", onClick: () => onAttach(tool.agentToolId), children: [
@@ -2761,7 +2759,7 @@ function ModelTab({
2761
2759
  return matches.length > 0 ? matches : connections;
2762
2760
  }, [selectedModel, connections]);
2763
2761
  return /* @__PURE__ */ jsxRuntime.jsx(
2764
- chunkZGVN23J4_js.SectionCard,
2762
+ chunk6R5Z2IQ5_js.SectionCard,
2765
2763
  {
2766
2764
  variant: "glass",
2767
2765
  header: {
@@ -2782,9 +2780,9 @@ function ModelTab({
2782
2780
  },
2783
2781
  className: "space-y-4",
2784
2782
  children: [
2785
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
2783
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
2786
2784
  /* @__PURE__ */ jsxRuntime.jsx(
2787
- chunkZGVN23J4_js.FormSelect,
2785
+ chunk6R5Z2IQ5_js.FormSelect,
2788
2786
  {
2789
2787
  label: labels.model,
2790
2788
  value: modelId,
@@ -2793,7 +2791,7 @@ function ModelTab({
2793
2791
  }
2794
2792
  ),
2795
2793
  /* @__PURE__ */ jsxRuntime.jsx(
2796
- chunkZGVN23J4_js.FormSelect,
2794
+ chunk6R5Z2IQ5_js.FormSelect,
2797
2795
  {
2798
2796
  label: labels.connection,
2799
2797
  value: connectionId,
@@ -3083,7 +3081,7 @@ function AgentNewWizardPageView({
3083
3081
  }
3084
3082
  const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS));
3085
3083
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
3086
- chunkZGVN23J4_js.HeroSection,
3084
+ chunk6R5Z2IQ5_js.HeroSection,
3087
3085
  {
3088
3086
  icon: /* @__PURE__ */ jsxRuntime.jsx(
3089
3087
  "div",
@@ -3098,7 +3096,7 @@ function AgentNewWizardPageView({
3098
3096
  subtitle: stepSubtitles[step - 1],
3099
3097
  gradient: activePreset.accent,
3100
3098
  children: /* @__PURE__ */ jsxRuntime.jsx(
3101
- chunkZGVN23J4_js.StepIndicator,
3099
+ chunk6R5Z2IQ5_js.StepIndicator,
3102
3100
  {
3103
3101
  accent: "indigo",
3104
3102
  currentStep: step - 1,
@@ -3111,7 +3109,7 @@ function AgentNewWizardPageView({
3111
3109
  );
3112
3110
  function renderStep1() {
3113
3111
  return /* @__PURE__ */ jsxRuntime.jsx(
3114
- chunkZGVN23J4_js.SectionCard,
3112
+ chunk6R5Z2IQ5_js.SectionCard,
3115
3113
  {
3116
3114
  variant: "glass",
3117
3115
  header: {
@@ -3127,7 +3125,7 @@ function AgentNewWizardPageView({
3127
3125
  children: AGENT_PRESETS.map((preset) => {
3128
3126
  const selected = preset.id === presetId;
3129
3127
  return /* @__PURE__ */ jsxRuntime.jsx(
3130
- chunkZGVN23J4_js.FilterTileButton,
3128
+ chunk6R5Z2IQ5_js.FilterTileButton,
3131
3129
  {
3132
3130
  isActive: selected,
3133
3131
  color: preset.tileColor,
@@ -3146,7 +3144,7 @@ function AgentNewWizardPageView({
3146
3144
  }
3147
3145
  function renderStep2() {
3148
3146
  return /* @__PURE__ */ jsxRuntime.jsx(
3149
- chunkZGVN23J4_js.SectionCard,
3147
+ chunk6R5Z2IQ5_js.SectionCard,
3150
3148
  {
3151
3149
  variant: "glass",
3152
3150
  header: {
@@ -3174,9 +3172,9 @@ function AgentNewWizardPageView({
3174
3172
  e
3175
3173
  )) })
3176
3174
  ] }),
3177
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
3175
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
3178
3176
  /* @__PURE__ */ jsxRuntime.jsx(
3179
- chunkZGVN23J4_js.FormInput,
3177
+ chunk6R5Z2IQ5_js.FormInput,
3180
3178
  {
3181
3179
  label: labels.name,
3182
3180
  value: name,
@@ -3189,7 +3187,7 @@ function AgentNewWizardPageView({
3189
3187
  }
3190
3188
  ),
3191
3189
  /* @__PURE__ */ jsxRuntime.jsx(
3192
- chunkZGVN23J4_js.FormInput,
3190
+ chunk6R5Z2IQ5_js.FormInput,
3193
3191
  {
3194
3192
  label: labels.role,
3195
3193
  value: role,
@@ -3202,7 +3200,7 @@ function AgentNewWizardPageView({
3202
3200
  )
3203
3201
  ] }),
3204
3202
  /* @__PURE__ */ jsxRuntime.jsx(
3205
- chunkZGVN23J4_js.FormTextarea,
3203
+ chunk6R5Z2IQ5_js.FormTextarea,
3206
3204
  {
3207
3205
  label: labels.descriptionLabel,
3208
3206
  value: description,
@@ -3220,7 +3218,7 @@ function AgentNewWizardPageView({
3220
3218
  }
3221
3219
  function renderStep3() {
3222
3220
  return /* @__PURE__ */ jsxRuntime.jsx(
3223
- chunkZGVN23J4_js.SectionCard,
3221
+ chunk6R5Z2IQ5_js.SectionCard,
3224
3222
  {
3225
3223
  variant: "glass",
3226
3224
  header: {
@@ -3228,9 +3226,9 @@ function AgentNewWizardPageView({
3228
3226
  subtitle: labels.connectionPickPrompt
3229
3227
  },
3230
3228
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3231
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
3229
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
3232
3230
  /* @__PURE__ */ jsxRuntime.jsx(
3233
- chunkZGVN23J4_js.FormSelect,
3231
+ chunk6R5Z2IQ5_js.FormSelect,
3234
3232
  {
3235
3233
  label: labels.connectionLabel,
3236
3234
  value: connectionId,
@@ -3243,7 +3241,7 @@ function AgentNewWizardPageView({
3243
3241
  }
3244
3242
  ),
3245
3243
  /* @__PURE__ */ jsxRuntime.jsx(
3246
- chunkZGVN23J4_js.FormSelect,
3244
+ chunk6R5Z2IQ5_js.FormSelect,
3247
3245
  {
3248
3246
  label: labels.frameworkLabel,
3249
3247
  value: framework,
@@ -3255,7 +3253,7 @@ function AgentNewWizardPageView({
3255
3253
  }
3256
3254
  ),
3257
3255
  /* @__PURE__ */ jsxRuntime.jsx(
3258
- chunkZGVN23J4_js.FormSelect,
3256
+ chunk6R5Z2IQ5_js.FormSelect,
3259
3257
  {
3260
3258
  label: labels.model,
3261
3259
  value: modelId,
@@ -3268,7 +3266,7 @@ function AgentNewWizardPageView({
3268
3266
  )
3269
3267
  ] }),
3270
3268
  /* @__PURE__ */ jsxRuntime.jsx(
3271
- chunkZGVN23J4_js.FormTextarea,
3269
+ chunk6R5Z2IQ5_js.FormTextarea,
3272
3270
  {
3273
3271
  label: labels.outputSchemaLabel,
3274
3272
  value: outputSchema,
@@ -3287,7 +3285,7 @@ function AgentNewWizardPageView({
3287
3285
  function renderStep4() {
3288
3286
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3289
3287
  /* @__PURE__ */ jsxRuntime.jsx(
3290
- chunkZGVN23J4_js.SectionCard,
3288
+ chunk6R5Z2IQ5_js.SectionCard,
3291
3289
  {
3292
3290
  variant: "glass",
3293
3291
  header: {
@@ -3447,7 +3445,7 @@ function AgentNewWizardPageView({
3447
3445
  }
3448
3446
  ),
3449
3447
  /* @__PURE__ */ jsxRuntime.jsx(
3450
- chunkZGVN23J4_js.SectionCard,
3448
+ chunk6R5Z2IQ5_js.SectionCard,
3451
3449
  {
3452
3450
  variant: "glass",
3453
3451
  header: {
@@ -3490,7 +3488,7 @@ function AgentNewWizardPageView({
3490
3488
  }) })
3491
3489
  ] }),
3492
3490
  /* @__PURE__ */ jsxRuntime.jsx(
3493
- chunkZGVN23J4_js.FormInput,
3491
+ chunk6R5Z2IQ5_js.FormInput,
3494
3492
  {
3495
3493
  label: labels.tagsLabel,
3496
3494
  value: tagsInput,
@@ -3511,7 +3509,7 @@ function AgentNewWizardPageView({
3511
3509
  const connectionLabel = connectionId ? connections.find((c) => c.id === connectionId)?.name ?? labels.connectionInline : labels.connectionInline;
3512
3510
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
3513
3511
  /* @__PURE__ */ jsxRuntime.jsx(
3514
- chunkZGVN23J4_js.SectionCard,
3512
+ chunk6R5Z2IQ5_js.SectionCard,
3515
3513
  {
3516
3514
  variant: "glass",
3517
3515
  header: {
@@ -3526,7 +3524,7 @@ function AgentNewWizardPageView({
3526
3524
  }
3527
3525
  ),
3528
3526
  /* @__PURE__ */ jsxRuntime.jsx(
3529
- chunkZGVN23J4_js.SectionCard,
3527
+ chunk6R5Z2IQ5_js.SectionCard,
3530
3528
  {
3531
3529
  variant: "glass",
3532
3530
  header: {
@@ -3555,7 +3553,7 @@ function AgentNewWizardPageView({
3555
3553
  }
3556
3554
  ),
3557
3555
  /* @__PURE__ */ jsxRuntime.jsx(
3558
- chunkZGVN23J4_js.SectionCard,
3556
+ chunk6R5Z2IQ5_js.SectionCard,
3559
3557
  {
3560
3558
  variant: "glass",
3561
3559
  header: {
@@ -3575,7 +3573,7 @@ function AgentNewWizardPageView({
3575
3573
  }
3576
3574
  ),
3577
3575
  /* @__PURE__ */ jsxRuntime.jsxs(
3578
- chunkZGVN23J4_js.SectionCard,
3576
+ chunk6R5Z2IQ5_js.SectionCard,
3579
3577
  {
3580
3578
  variant: "glass",
3581
3579
  header: {
@@ -3724,8 +3722,8 @@ function DatasourceNewWizardPageView({
3724
3722
  const [submitting, setSubmitting] = react.useState(false);
3725
3723
  const [touched, setTouched] = react.useState(false);
3726
3724
  const [testStatus, setTestStatus] = react.useState("idle");
3727
- const dialectOption = react.useMemo(() => dialect ? chunk62BD4WLW_js.findDialect(dialect) : null, [dialect]);
3728
- const category = react.useMemo(() => dialect ? chunk62BD4WLW_js.findCategory(dialect) : null, [dialect]);
3725
+ const dialectOption = react.useMemo(() => dialect ? chunkTXI3QDYE_js.findDialect(dialect) : null, [dialect]);
3726
+ const category = react.useMemo(() => dialect ? chunkTXI3QDYE_js.findCategory(dialect) : null, [dialect]);
3729
3727
  react.useEffect(() => {
3730
3728
  if (dialectOption?.defaultPort && (port === "" || /^[0-9]+$/.test(port))) {
3731
3729
  setPort(String(dialectOption.defaultPort));
@@ -3850,7 +3848,7 @@ function DatasourceNewWizardPageView({
3850
3848
  }));
3851
3849
  const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS2));
3852
3850
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
3853
- chunkZGVN23J4_js.HeroSection,
3851
+ chunk6R5Z2IQ5_js.HeroSection,
3854
3852
  {
3855
3853
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CircleStackIcon, { className: "h-5 w-5" }),
3856
3854
  label: counter,
@@ -3858,7 +3856,7 @@ function DatasourceNewWizardPageView({
3858
3856
  subtitle: stepSubtitles[step - 1] ?? labels.pageSubtitle,
3859
3857
  gradient: category?.gradient ?? "from-amber-500 to-orange-600",
3860
3858
  children: /* @__PURE__ */ jsxRuntime.jsx(
3861
- chunkZGVN23J4_js.StepIndicator,
3859
+ chunk6R5Z2IQ5_js.StepIndicator,
3862
3860
  {
3863
3861
  accent: "indigo",
3864
3862
  currentStep: step - 1,
@@ -3870,11 +3868,11 @@ function DatasourceNewWizardPageView({
3870
3868
  }
3871
3869
  );
3872
3870
  function renderStep1() {
3873
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children: chunk62BD4WLW_js.DIALECT_CATEGORIES.map((cat) => {
3871
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children: chunkTXI3QDYE_js.DIALECT_CATEGORIES.map((cat) => {
3874
3872
  const color = CATEGORY_COLOR[cat.id] ?? "slate";
3875
3873
  const categoryLabel = labels[cat.labelKey] ?? cat.id;
3876
3874
  return /* @__PURE__ */ jsxRuntime.jsx(
3877
- chunkZGVN23J4_js.SectionCard,
3875
+ chunk6R5Z2IQ5_js.SectionCard,
3878
3876
  {
3879
3877
  variant: "glass",
3880
3878
  header: {
@@ -3892,7 +3890,7 @@ function DatasourceNewWizardPageView({
3892
3890
  const selected = opt.value === dialect;
3893
3891
  const logoSrc = DIALECT_LOGO_SRC[opt.value.toLowerCase()];
3894
3892
  return /* @__PURE__ */ jsxRuntime.jsx(
3895
- chunkZGVN23J4_js.FilterTileButton,
3893
+ chunk6R5Z2IQ5_js.FilterTileButton,
3896
3894
  {
3897
3895
  isActive: selected,
3898
3896
  color,
@@ -3920,7 +3918,7 @@ function DatasourceNewWizardPageView({
3920
3918
  case "standard":
3921
3919
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3922
3920
  /* @__PURE__ */ jsxRuntime.jsx(
3923
- chunkZGVN23J4_js.FormInput,
3921
+ chunk6R5Z2IQ5_js.FormInput,
3924
3922
  {
3925
3923
  label: labels.fieldHost,
3926
3924
  value: host,
@@ -3933,7 +3931,7 @@ function DatasourceNewWizardPageView({
3933
3931
  }
3934
3932
  ),
3935
3933
  /* @__PURE__ */ jsxRuntime.jsx(
3936
- chunkZGVN23J4_js.FormInput,
3934
+ chunk6R5Z2IQ5_js.FormInput,
3937
3935
  {
3938
3936
  label: labels.fieldPort,
3939
3937
  type: "number",
@@ -3945,7 +3943,7 @@ function DatasourceNewWizardPageView({
3945
3943
  }
3946
3944
  ),
3947
3945
  /* @__PURE__ */ jsxRuntime.jsx(
3948
- chunkZGVN23J4_js.FormInput,
3946
+ chunk6R5Z2IQ5_js.FormInput,
3949
3947
  {
3950
3948
  label: labels.fieldDatabase,
3951
3949
  value: database,
@@ -3958,7 +3956,7 @@ function DatasourceNewWizardPageView({
3958
3956
  }
3959
3957
  ),
3960
3958
  /* @__PURE__ */ jsxRuntime.jsx(
3961
- chunkZGVN23J4_js.FormInput,
3959
+ chunk6R5Z2IQ5_js.FormInput,
3962
3960
  {
3963
3961
  label: labels.fieldUsername,
3964
3962
  value: username,
@@ -3970,7 +3968,7 @@ function DatasourceNewWizardPageView({
3970
3968
  }
3971
3969
  ),
3972
3970
  /* @__PURE__ */ jsxRuntime.jsx(
3973
- chunkZGVN23J4_js.FormInput,
3971
+ chunk6R5Z2IQ5_js.FormInput,
3974
3972
  {
3975
3973
  label: labels.fieldPassword,
3976
3974
  type: "password",
@@ -3983,7 +3981,7 @@ function DatasourceNewWizardPageView({
3983
3981
  }
3984
3982
  ),
3985
3983
  /* @__PURE__ */ jsxRuntime.jsx(
3986
- chunkZGVN23J4_js.FormInput,
3984
+ chunk6R5Z2IQ5_js.FormInput,
3987
3985
  {
3988
3986
  label: labels.fieldSchema,
3989
3987
  value: schema,
@@ -3997,7 +3995,7 @@ function DatasourceNewWizardPageView({
3997
3995
  ] });
3998
3996
  case "connection-string":
3999
3997
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "col-span-full", children: /* @__PURE__ */ jsxRuntime.jsx(
4000
- chunkZGVN23J4_js.FormInput,
3998
+ chunk6R5Z2IQ5_js.FormInput,
4001
3999
  {
4002
4000
  label: labels.fieldConnectionString,
4003
4001
  value: connectionString,
@@ -4012,7 +4010,7 @@ function DatasourceNewWizardPageView({
4012
4010
  case "cloud-bigquery":
4013
4011
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4014
4012
  /* @__PURE__ */ jsxRuntime.jsx(
4015
- chunkZGVN23J4_js.FormInput,
4013
+ chunk6R5Z2IQ5_js.FormInput,
4016
4014
  {
4017
4015
  label: labels.fieldProjectId,
4018
4016
  value: projectId,
@@ -4025,7 +4023,7 @@ function DatasourceNewWizardPageView({
4025
4023
  }
4026
4024
  ),
4027
4025
  /* @__PURE__ */ jsxRuntime.jsx(
4028
- chunkZGVN23J4_js.FormInput,
4026
+ chunk6R5Z2IQ5_js.FormInput,
4029
4027
  {
4030
4028
  label: labels.fieldDataset,
4031
4029
  value: dataset,
@@ -4038,7 +4036,7 @@ function DatasourceNewWizardPageView({
4038
4036
  }
4039
4037
  ),
4040
4038
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "col-span-full", children: /* @__PURE__ */ jsxRuntime.jsx(
4041
- chunkZGVN23J4_js.FormInput,
4039
+ chunk6R5Z2IQ5_js.FormInput,
4042
4040
  {
4043
4041
  label: labels.fieldKeyFile,
4044
4042
  value: keyFile,
@@ -4053,7 +4051,7 @@ function DatasourceNewWizardPageView({
4053
4051
  case "cloud-snowflake":
4054
4052
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4055
4053
  /* @__PURE__ */ jsxRuntime.jsx(
4056
- chunkZGVN23J4_js.FormInput,
4054
+ chunk6R5Z2IQ5_js.FormInput,
4057
4055
  {
4058
4056
  label: labels.fieldAccount,
4059
4057
  value: account,
@@ -4066,7 +4064,7 @@ function DatasourceNewWizardPageView({
4066
4064
  }
4067
4065
  ),
4068
4066
  /* @__PURE__ */ jsxRuntime.jsx(
4069
- chunkZGVN23J4_js.FormInput,
4067
+ chunk6R5Z2IQ5_js.FormInput,
4070
4068
  {
4071
4069
  label: labels.fieldWarehouse,
4072
4070
  value: warehouseField,
@@ -4079,7 +4077,7 @@ function DatasourceNewWizardPageView({
4079
4077
  }
4080
4078
  ),
4081
4079
  /* @__PURE__ */ jsxRuntime.jsx(
4082
- chunkZGVN23J4_js.FormInput,
4080
+ chunk6R5Z2IQ5_js.FormInput,
4083
4081
  {
4084
4082
  label: labels.fieldDatabase,
4085
4083
  value: database,
@@ -4092,7 +4090,7 @@ function DatasourceNewWizardPageView({
4092
4090
  }
4093
4091
  ),
4094
4092
  /* @__PURE__ */ jsxRuntime.jsx(
4095
- chunkZGVN23J4_js.FormInput,
4093
+ chunk6R5Z2IQ5_js.FormInput,
4096
4094
  {
4097
4095
  label: labels.fieldUsername,
4098
4096
  value: username,
@@ -4105,7 +4103,7 @@ function DatasourceNewWizardPageView({
4105
4103
  }
4106
4104
  ),
4107
4105
  /* @__PURE__ */ jsxRuntime.jsx(
4108
- chunkZGVN23J4_js.FormInput,
4106
+ chunk6R5Z2IQ5_js.FormInput,
4109
4107
  {
4110
4108
  label: labels.fieldPassword,
4111
4109
  type: "password",
@@ -4118,7 +4116,7 @@ function DatasourceNewWizardPageView({
4118
4116
  }
4119
4117
  ),
4120
4118
  /* @__PURE__ */ jsxRuntime.jsx(
4121
- chunkZGVN23J4_js.FormInput,
4119
+ chunk6R5Z2IQ5_js.FormInput,
4122
4120
  {
4123
4121
  label: labels.fieldSchema,
4124
4122
  value: schema,
@@ -4133,7 +4131,7 @@ function DatasourceNewWizardPageView({
4133
4131
  case "cloud-key":
4134
4132
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4135
4133
  /* @__PURE__ */ jsxRuntime.jsx(
4136
- chunkZGVN23J4_js.FormInput,
4134
+ chunk6R5Z2IQ5_js.FormInput,
4137
4135
  {
4138
4136
  label: labels.fieldRegion,
4139
4137
  value: region,
@@ -4146,7 +4144,7 @@ function DatasourceNewWizardPageView({
4146
4144
  }
4147
4145
  ),
4148
4146
  /* @__PURE__ */ jsxRuntime.jsx(
4149
- chunkZGVN23J4_js.FormInput,
4147
+ chunk6R5Z2IQ5_js.FormInput,
4150
4148
  {
4151
4149
  label: labels.fieldToken,
4152
4150
  type: "password",
@@ -4160,7 +4158,7 @@ function DatasourceNewWizardPageView({
4160
4158
  }
4161
4159
  ),
4162
4160
  /* @__PURE__ */ jsxRuntime.jsx(
4163
- chunkZGVN23J4_js.FormInput,
4161
+ chunk6R5Z2IQ5_js.FormInput,
4164
4162
  {
4165
4163
  label: labels.fieldBucket,
4166
4164
  value: bucket,
@@ -4175,7 +4173,7 @@ function DatasourceNewWizardPageView({
4175
4173
  case "vector-key":
4176
4174
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4177
4175
  /* @__PURE__ */ jsxRuntime.jsx(
4178
- chunkZGVN23J4_js.FormInput,
4176
+ chunk6R5Z2IQ5_js.FormInput,
4179
4177
  {
4180
4178
  label: labels.fieldApiKey,
4181
4179
  type: "password",
@@ -4189,7 +4187,7 @@ function DatasourceNewWizardPageView({
4189
4187
  }
4190
4188
  ),
4191
4189
  /* @__PURE__ */ jsxRuntime.jsx(
4192
- chunkZGVN23J4_js.FormInput,
4190
+ chunk6R5Z2IQ5_js.FormInput,
4193
4191
  {
4194
4192
  label: labels.fieldEnvironment,
4195
4193
  value: environment,
@@ -4202,7 +4200,7 @@ function DatasourceNewWizardPageView({
4202
4200
  }
4203
4201
  ),
4204
4202
  /* @__PURE__ */ jsxRuntime.jsx(
4205
- chunkZGVN23J4_js.FormInput,
4203
+ chunk6R5Z2IQ5_js.FormInput,
4206
4204
  {
4207
4205
  label: labels.fieldIndex,
4208
4206
  value: index,
@@ -4218,13 +4216,13 @@ function DatasourceNewWizardPageView({
4218
4216
  }
4219
4217
  function renderStep2() {
4220
4218
  if (!dialectOption) {
4221
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.SectionCard, { variant: "glass", header: { title: labels.wizardStep1Title }, children: [
4219
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.SectionCard, { variant: "glass", header: { title: labels.wizardStep1Title }, children: [
4222
4220
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-700 dark:text-slate-200", children: labels.wizardStep1Subtitle }),
4223
4221
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", outline: true, onClick: () => goToStep(1), children: labels.wizardBack }) })
4224
4222
  ] });
4225
4223
  }
4226
4224
  return /* @__PURE__ */ jsxRuntime.jsx(
4227
- chunkZGVN23J4_js.SectionCard,
4225
+ chunk6R5Z2IQ5_js.SectionCard,
4228
4226
  {
4229
4227
  variant: "glass",
4230
4228
  header: {
@@ -4235,7 +4233,7 @@ function DatasourceNewWizardPageView({
4235
4233
  },
4236
4234
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4237
4235
  /* @__PURE__ */ jsxRuntime.jsx(
4238
- chunkZGVN23J4_js.FormInput,
4236
+ chunk6R5Z2IQ5_js.FormInput,
4239
4237
  {
4240
4238
  label: labels.fieldName,
4241
4239
  value: name,
@@ -4247,10 +4245,10 @@ function DatasourceNewWizardPageView({
4247
4245
  required: true
4248
4246
  }
4249
4247
  ),
4250
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.FormGrid, { children: renderConnectionFields() }),
4248
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.FormGrid, { children: renderConnectionFields() }),
4251
4249
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-6 pt-1", children: [
4252
4250
  /* @__PURE__ */ jsxRuntime.jsx(
4253
- chunkZGVN23J4_js.FormToggle,
4251
+ chunk6R5Z2IQ5_js.FormToggle,
4254
4252
  {
4255
4253
  checked: ssl,
4256
4254
  onChange: (v) => {
@@ -4262,7 +4260,7 @@ function DatasourceNewWizardPageView({
4262
4260
  }
4263
4261
  ),
4264
4262
  /* @__PURE__ */ jsxRuntime.jsx(
4265
- chunkZGVN23J4_js.FormToggle,
4263
+ chunk6R5Z2IQ5_js.FormToggle,
4266
4264
  {
4267
4265
  checked: readOnly,
4268
4266
  onChange: (v) => {
@@ -4284,13 +4282,13 @@ function DatasourceNewWizardPageView({
4284
4282
  onClick: () => void handleTestConnection(),
4285
4283
  disabled: testStatus === "testing",
4286
4284
  children: testStatus === "testing" ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-2", children: [
4287
- /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.Spinner, { size: "xs" }),
4285
+ /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.Spinner, { size: "xs" }),
4288
4286
  labels.testing
4289
4287
  ] }) : labels.testConnection
4290
4288
  }
4291
4289
  ),
4292
- testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.StatusBadge, { status: "success", label: labels.connectionSuccess }),
4293
- testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(chunkZGVN23J4_js.StatusBadge, { status: "error", label: labels.connectionFailed })
4290
+ testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.StatusBadge, { status: "success", label: labels.connectionSuccess }),
4291
+ testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(chunk6R5Z2IQ5_js.StatusBadge, { status: "error", label: labels.connectionFailed })
4294
4292
  ] })
4295
4293
  ] })
4296
4294
  }
@@ -4298,7 +4296,7 @@ function DatasourceNewWizardPageView({
4298
4296
  }
4299
4297
  function renderStep3() {
4300
4298
  return /* @__PURE__ */ jsxRuntime.jsx(
4301
- chunkZGVN23J4_js.SectionCard,
4299
+ chunk6R5Z2IQ5_js.SectionCard,
4302
4300
  {
4303
4301
  variant: "glass",
4304
4302
  header: {
@@ -4306,9 +4304,9 @@ function DatasourceNewWizardPageView({
4306
4304
  subtitle: labels.governanceSectionSubtitle
4307
4305
  },
4308
4306
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4309
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
4307
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
4310
4308
  /* @__PURE__ */ jsxRuntime.jsx(
4311
- chunkZGVN23J4_js.FormInput,
4309
+ chunk6R5Z2IQ5_js.FormInput,
4312
4310
  {
4313
4311
  label: labels.fieldMaxPoolSize,
4314
4312
  type: "number",
@@ -4323,7 +4321,7 @@ function DatasourceNewWizardPageView({
4323
4321
  }
4324
4322
  ),
4325
4323
  /* @__PURE__ */ jsxRuntime.jsx(
4326
- chunkZGVN23J4_js.FormInput,
4324
+ chunk6R5Z2IQ5_js.FormInput,
4327
4325
  {
4328
4326
  label: labels.fieldTimeoutMs,
4329
4327
  type: "number",
@@ -4340,7 +4338,7 @@ function DatasourceNewWizardPageView({
4340
4338
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
4341
4339
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-medium text-gray-500 dark:text-gray-400", children: labels.fieldAllowedTables }),
4342
4340
  /* @__PURE__ */ jsxRuntime.jsx(
4343
- chunkZGVN23J4_js.ChipPicker,
4341
+ chunk6R5Z2IQ5_js.ChipPicker,
4344
4342
  {
4345
4343
  items: allowedTablesItems,
4346
4344
  selectedIds: allowedTablesSelected,
@@ -4364,7 +4362,7 @@ function DatasourceNewWizardPageView({
4364
4362
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
4365
4363
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-medium text-gray-500 dark:text-gray-400", children: labels.fieldBlockedColumns }),
4366
4364
  /* @__PURE__ */ jsxRuntime.jsx(
4367
- chunkZGVN23J4_js.ChipPicker,
4365
+ chunk6R5Z2IQ5_js.ChipPicker,
4368
4366
  {
4369
4367
  items: blockedColumnsItems,
4370
4368
  selectedIds: blockedColumnsSelected,
@@ -4386,7 +4384,7 @@ function DatasourceNewWizardPageView({
4386
4384
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[11px] text-slate-500 dark:text-slate-400", children: labels.fieldBlockedColumnsHint })
4387
4385
  ] }),
4388
4386
  /* @__PURE__ */ jsxRuntime.jsx(
4389
- chunkZGVN23J4_js.FormCheckbox,
4387
+ chunk6R5Z2IQ5_js.FormCheckbox,
4390
4388
  {
4391
4389
  checked: maskPii,
4392
4390
  onChange: (v) => {
@@ -4408,7 +4406,7 @@ function DatasourceNewWizardPageView({
4408
4406
  const blocked = blockedColumnsSelected;
4409
4407
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4410
4408
  /* @__PURE__ */ jsxRuntime.jsx(
4411
- chunkZGVN23J4_js.SectionCard,
4409
+ chunk6R5Z2IQ5_js.SectionCard,
4412
4410
  {
4413
4411
  variant: "glass",
4414
4412
  header: {
@@ -4426,7 +4424,7 @@ function DatasourceNewWizardPageView({
4426
4424
  }
4427
4425
  ),
4428
4426
  /* @__PURE__ */ jsxRuntime.jsx(
4429
- chunkZGVN23J4_js.SectionCard,
4427
+ chunk6R5Z2IQ5_js.SectionCard,
4430
4428
  {
4431
4429
  variant: "glass",
4432
4430
  header: {
@@ -4446,7 +4444,7 @@ function DatasourceNewWizardPageView({
4446
4444
  }
4447
4445
  ),
4448
4446
  /* @__PURE__ */ jsxRuntime.jsx(
4449
- chunkZGVN23J4_js.SectionCard,
4447
+ chunk6R5Z2IQ5_js.SectionCard,
4450
4448
  {
4451
4449
  variant: "glass",
4452
4450
  header: {
@@ -4635,9 +4633,9 @@ function RuleNewWizardPageView({
4635
4633
  text: "text-fuchsia-700 dark:text-fuchsia-300"
4636
4634
  };
4637
4635
  const [combinator, setCombinator] = react.useState("and");
4638
- const [condition, setCondition] = react.useState(chunkH475T2N7_js.defaultRuleCondition());
4636
+ const [condition, setCondition] = react.useState(chunkY4YIGEX6_js.defaultRuleCondition());
4639
4637
  const [actionTileId, setActionTileId] = react.useState("");
4640
- const [action, setAction] = react.useState(chunkH475T2N7_js.defaultRuleAction());
4638
+ const [action, setAction] = react.useState(chunkY4YIGEX6_js.defaultRuleAction());
4641
4639
  const [validFromDate, setValidFromDate] = react.useState(null);
4642
4640
  const [validFromTime, setValidFromTime] = react.useState(null);
4643
4641
  const [validUntilDate, setValidUntilDate] = react.useState(null);
@@ -4766,7 +4764,7 @@ function RuleNewWizardPageView({
4766
4764
  }));
4767
4765
  const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS3));
4768
4766
  const hero = /* @__PURE__ */ jsxRuntime.jsx(
4769
- chunkZGVN23J4_js.HeroSection,
4767
+ chunk6R5Z2IQ5_js.HeroSection,
4770
4768
  {
4771
4769
  icon: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-5 w-5" }),
4772
4770
  label: counter,
@@ -4774,7 +4772,7 @@ function RuleNewWizardPageView({
4774
4772
  subtitle: stepSubtitles[step - 1] ?? labels.pageSubtitle,
4775
4773
  gradient: "from-fuchsia-500 to-purple-700",
4776
4774
  children: /* @__PURE__ */ jsxRuntime.jsx(
4777
- chunkZGVN23J4_js.StepIndicator,
4775
+ chunk6R5Z2IQ5_js.StepIndicator,
4778
4776
  {
4779
4777
  accent: "violet",
4780
4778
  currentStep: step - 1,
@@ -4787,7 +4785,7 @@ function RuleNewWizardPageView({
4787
4785
  );
4788
4786
  function renderStep1() {
4789
4787
  return /* @__PURE__ */ jsxRuntime.jsx(
4790
- chunkZGVN23J4_js.SectionCard,
4788
+ chunk6R5Z2IQ5_js.SectionCard,
4791
4789
  {
4792
4790
  variant: "glass",
4793
4791
  header: {
@@ -4796,7 +4794,7 @@ function RuleNewWizardPageView({
4796
4794
  },
4797
4795
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
4798
4796
  /* @__PURE__ */ jsxRuntime.jsx(
4799
- chunkZGVN23J4_js.FormInput,
4797
+ chunk6R5Z2IQ5_js.FormInput,
4800
4798
  {
4801
4799
  label: labels.nameLabel,
4802
4800
  value: name,
@@ -4809,7 +4807,7 @@ function RuleNewWizardPageView({
4809
4807
  }
4810
4808
  ),
4811
4809
  /* @__PURE__ */ jsxRuntime.jsx(
4812
- chunkZGVN23J4_js.FormTextarea,
4810
+ chunk6R5Z2IQ5_js.FormTextarea,
4813
4811
  {
4814
4812
  label: labels.descriptionLabel,
4815
4813
  value: description,
@@ -4845,7 +4843,7 @@ function RuleNewWizardPageView({
4845
4843
  }
4846
4844
  ),
4847
4845
  /* @__PURE__ */ jsxRuntime.jsx(
4848
- chunkZGVN23J4_js.FormToggle,
4846
+ chunk6R5Z2IQ5_js.FormToggle,
4849
4847
  {
4850
4848
  checked: enabled,
4851
4849
  onChange: (v) => {
@@ -4862,7 +4860,7 @@ function RuleNewWizardPageView({
4862
4860
  }
4863
4861
  function renderStep2() {
4864
4862
  return /* @__PURE__ */ jsxRuntime.jsx(
4865
- chunkZGVN23J4_js.SectionCard,
4863
+ chunk6R5Z2IQ5_js.SectionCard,
4866
4864
  {
4867
4865
  variant: "glass",
4868
4866
  header: {
@@ -4873,7 +4871,7 @@ function RuleNewWizardPageView({
4873
4871
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
4874
4872
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mb-2 block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.combinatorLabel }),
4875
4873
  /* @__PURE__ */ jsxRuntime.jsx(
4876
- chunkZGVN23J4_js.SegmentedControl,
4874
+ chunk6R5Z2IQ5_js.SegmentedControl,
4877
4875
  {
4878
4876
  segments: [
4879
4877
  { value: "and", label: labels.combinatorAnd },
@@ -4890,7 +4888,7 @@ function RuleNewWizardPageView({
4890
4888
  )
4891
4889
  ] }),
4892
4890
  /* @__PURE__ */ jsxRuntime.jsx(
4893
- chunkH475T2N7_js.RuleConditionBuilder,
4891
+ chunkY4YIGEX6_js.RuleConditionBuilder,
4894
4892
  {
4895
4893
  value: condition,
4896
4894
  onChange: (next) => {
@@ -4906,7 +4904,7 @@ function RuleNewWizardPageView({
4906
4904
  function renderStep3() {
4907
4905
  const selectedTile = ACTION_TILES.find((t) => t.id === actionTileId) ?? null;
4908
4906
  return /* @__PURE__ */ jsxRuntime.jsx(
4909
- chunkZGVN23J4_js.SectionCard,
4907
+ chunk6R5Z2IQ5_js.SectionCard,
4910
4908
  {
4911
4909
  variant: "glass",
4912
4910
  header: {
@@ -4926,7 +4924,7 @@ function RuleNewWizardPageView({
4926
4924
  const label = labels[tile.labelKey] ?? tile.id;
4927
4925
  const description2 = labels[tile.descriptionKey] ?? "";
4928
4926
  return /* @__PURE__ */ jsxRuntime.jsx(
4929
- chunkZGVN23J4_js.FilterTileButton,
4927
+ chunk6R5Z2IQ5_js.FilterTileButton,
4930
4928
  {
4931
4929
  isActive: selected,
4932
4930
  color: tile.color,
@@ -4944,7 +4942,7 @@ function RuleNewWizardPageView({
4944
4942
  }
4945
4943
  ),
4946
4944
  selectedTile && /* @__PURE__ */ jsxRuntime.jsx(
4947
- chunkZGVN23J4_js.SectionCard,
4945
+ chunk6R5Z2IQ5_js.SectionCard,
4948
4946
  {
4949
4947
  variant: "glass",
4950
4948
  header: {
@@ -4952,7 +4950,7 @@ function RuleNewWizardPageView({
4952
4950
  subtitle: labels.actionConfigSubtitle
4953
4951
  },
4954
4952
  children: /* @__PURE__ */ jsxRuntime.jsx(
4955
- chunkH475T2N7_js.RuleActionBuilder,
4953
+ chunkY4YIGEX6_js.RuleActionBuilder,
4956
4954
  {
4957
4955
  value: action,
4958
4956
  onChange: (next) => {
@@ -4969,7 +4967,7 @@ function RuleNewWizardPageView({
4969
4967
  }
4970
4968
  function renderStep4() {
4971
4969
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-4", children: /* @__PURE__ */ jsxRuntime.jsx(
4972
- chunkZGVN23J4_js.SectionCard,
4970
+ chunk6R5Z2IQ5_js.SectionCard,
4973
4971
  {
4974
4972
  variant: "glass",
4975
4973
  header: {
@@ -4977,12 +4975,12 @@ function RuleNewWizardPageView({
4977
4975
  subtitle: labels.scheduleSectionSubtitle
4978
4976
  },
4979
4977
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
4980
- /* @__PURE__ */ jsxRuntime.jsxs(chunkZGVN23J4_js.FormGrid, { children: [
4978
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk6R5Z2IQ5_js.FormGrid, { children: [
4981
4979
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
4982
4980
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.validFromLabel }),
4983
4981
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
4984
4982
  /* @__PURE__ */ jsxRuntime.jsx(
4985
- chunkZGVN23J4_js.DatePicker,
4983
+ chunk6R5Z2IQ5_js.DatePicker,
4986
4984
  {
4987
4985
  value: validFromDate,
4988
4986
  onChange: (d) => {
@@ -4993,7 +4991,7 @@ function RuleNewWizardPageView({
4993
4991
  }
4994
4992
  ),
4995
4993
  /* @__PURE__ */ jsxRuntime.jsx(
4996
- chunkZGVN23J4_js.TimePicker,
4994
+ chunk6R5Z2IQ5_js.TimePicker,
4997
4995
  {
4998
4996
  value: validFromTime,
4999
4997
  onChange: (t) => {
@@ -5009,7 +5007,7 @@ function RuleNewWizardPageView({
5009
5007
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.validUntilLabel }),
5010
5008
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
5011
5009
  /* @__PURE__ */ jsxRuntime.jsx(
5012
- chunkZGVN23J4_js.DatePicker,
5010
+ chunk6R5Z2IQ5_js.DatePicker,
5013
5011
  {
5014
5012
  value: validUntilDate,
5015
5013
  onChange: (d) => {
@@ -5020,7 +5018,7 @@ function RuleNewWizardPageView({
5020
5018
  }
5021
5019
  ),
5022
5020
  /* @__PURE__ */ jsxRuntime.jsx(
5023
- chunkZGVN23J4_js.TimePicker,
5021
+ chunk6R5Z2IQ5_js.TimePicker,
5024
5022
  {
5025
5023
  value: validUntilTime,
5026
5024
  onChange: (t) => {
@@ -5034,7 +5032,7 @@ function RuleNewWizardPageView({
5034
5032
  ] })
5035
5033
  ] }),
5036
5034
  /* @__PURE__ */ jsxRuntime.jsx(
5037
- chunkZGVN23J4_js.FormCheckbox,
5035
+ chunk6R5Z2IQ5_js.FormCheckbox,
5038
5036
  {
5039
5037
  checked: noExpiry,
5040
5038
  onChange: (v) => {
@@ -5048,7 +5046,7 @@ function RuleNewWizardPageView({
5048
5046
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5049
5047
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mb-2 block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.statusLabel }),
5050
5048
  /* @__PURE__ */ jsxRuntime.jsx(
5051
- chunkZGVN23J4_js.SegmentedControl,
5049
+ chunk6R5Z2IQ5_js.SegmentedControl,
5052
5050
  {
5053
5051
  segments: [
5054
5052
  { value: "active", label: labels.statusActive },
@@ -5067,7 +5065,7 @@ function RuleNewWizardPageView({
5067
5065
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
5068
5066
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.tagsLabel }),
5069
5067
  /* @__PURE__ */ jsxRuntime.jsx(
5070
- chunkZGVN23J4_js.ChipPicker,
5068
+ chunk6R5Z2IQ5_js.ChipPicker,
5071
5069
  {
5072
5070
  items: tagsItems,
5073
5071
  selectedIds: tagsSelected,
@@ -5091,7 +5089,7 @@ function RuleNewWizardPageView({
5091
5089
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5092
5090
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mb-2 block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.recurrenceLabel }),
5093
5091
  /* @__PURE__ */ jsxRuntime.jsx(
5094
- chunkZGVN23J4_js.SegmentedControl,
5092
+ chunk6R5Z2IQ5_js.SegmentedControl,
5095
5093
  {
5096
5094
  segments: [
5097
5095
  { value: "one-off", label: labels.recurrenceOneOff },
@@ -5108,7 +5106,7 @@ function RuleNewWizardPageView({
5108
5106
  )
5109
5107
  ] }),
5110
5108
  recurrence === "cron" && /* @__PURE__ */ jsxRuntime.jsx(
5111
- chunkZGVN23J4_js.FormInput,
5109
+ chunk6R5Z2IQ5_js.FormInput,
5112
5110
  {
5113
5111
  label: labels.cronExpressionLabel,
5114
5112
  value: cronExpression,
@@ -5124,7 +5122,7 @@ function RuleNewWizardPageView({
5124
5122
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5125
5123
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mb-2 block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.weekdaysLabel }),
5126
5124
  /* @__PURE__ */ jsxRuntime.jsx(
5127
- chunkZGVN23J4_js.ChipPicker,
5125
+ chunk6R5Z2IQ5_js.ChipPicker,
5128
5126
  {
5129
5127
  items: WEEKDAYS.map((d) => ({
5130
5128
  id: d.id,
@@ -5146,7 +5144,7 @@ function RuleNewWizardPageView({
5146
5144
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5147
5145
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mb-2 block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.timeOfDayLabel }),
5148
5146
  /* @__PURE__ */ jsxRuntime.jsx(
5149
- chunkZGVN23J4_js.TimePicker,
5147
+ chunk6R5Z2IQ5_js.TimePicker,
5150
5148
  {
5151
5149
  value: recurringTime,
5152
5150
  onChange: (t) => {
@@ -5168,7 +5166,7 @@ function RuleNewWizardPageView({
5168
5166
  const actionSentence = humanReadableAction(payload.action, labels, ACTION_TILES, actionTileId);
5169
5167
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
5170
5168
  /* @__PURE__ */ jsxRuntime.jsx(
5171
- chunkZGVN23J4_js.SectionCard,
5169
+ chunk6R5Z2IQ5_js.SectionCard,
5172
5170
  {
5173
5171
  variant: "glass",
5174
5172
  header: {
@@ -5194,7 +5192,7 @@ function RuleNewWizardPageView({
5194
5192
  }
5195
5193
  ),
5196
5194
  /* @__PURE__ */ jsxRuntime.jsxs(
5197
- chunkZGVN23J4_js.SectionCard,
5195
+ chunk6R5Z2IQ5_js.SectionCard,
5198
5196
  {
5199
5197
  variant: "glass",
5200
5198
  header: {
@@ -5213,7 +5211,7 @@ function RuleNewWizardPageView({
5213
5211
  }
5214
5212
  ),
5215
5213
  /* @__PURE__ */ jsxRuntime.jsxs(
5216
- chunkZGVN23J4_js.SectionCard,
5214
+ chunk6R5Z2IQ5_js.SectionCard,
5217
5215
  {
5218
5216
  variant: "glass",
5219
5217
  header: {
@@ -5231,7 +5229,7 @@ function RuleNewWizardPageView({
5231
5229
  }
5232
5230
  ),
5233
5231
  /* @__PURE__ */ jsxRuntime.jsx(
5234
- chunkZGVN23J4_js.SectionCard,
5232
+ chunk6R5Z2IQ5_js.SectionCard,
5235
5233
  {
5236
5234
  variant: "glass",
5237
5235
  header: {
@@ -5365,31 +5363,31 @@ function humanReadableAction(action, labels, tiles, actionTileId) {
5365
5363
 
5366
5364
  Object.defineProperty(exports, "RolesPageView", {
5367
5365
  enumerable: true,
5368
- get: function () { return chunkZ6FZQOTW_js.RolesPageView; }
5366
+ get: function () { return chunkGDVB7QDZ_js.RolesPageView; }
5369
5367
  });
5370
5368
  Object.defineProperty(exports, "UsersPageView", {
5371
5369
  enumerable: true,
5372
- get: function () { return chunkZ6FZQOTW_js.UsersPageView; }
5370
+ get: function () { return chunkGDVB7QDZ_js.UsersPageView; }
5373
5371
  });
5374
5372
  Object.defineProperty(exports, "DIALECT_CATEGORIES", {
5375
5373
  enumerable: true,
5376
- get: function () { return chunk62BD4WLW_js.DIALECT_CATEGORIES; }
5374
+ get: function () { return chunkTXI3QDYE_js.DIALECT_CATEGORIES; }
5377
5375
  });
5378
5376
  Object.defineProperty(exports, "DatasourceFormModal", {
5379
5377
  enumerable: true,
5380
- get: function () { return chunk62BD4WLW_js.DatasourceFormModal; }
5378
+ get: function () { return chunkTXI3QDYE_js.DatasourceFormModal; }
5381
5379
  });
5382
5380
  Object.defineProperty(exports, "DatasourceModal", {
5383
5381
  enumerable: true,
5384
- get: function () { return chunk62BD4WLW_js.DatasourceModal; }
5382
+ get: function () { return chunkTXI3QDYE_js.DatasourceModal; }
5385
5383
  });
5386
5384
  Object.defineProperty(exports, "findCategory", {
5387
5385
  enumerable: true,
5388
- get: function () { return chunk62BD4WLW_js.findCategory; }
5386
+ get: function () { return chunkTXI3QDYE_js.findCategory; }
5389
5387
  });
5390
5388
  Object.defineProperty(exports, "findDialect", {
5391
5389
  enumerable: true,
5392
- get: function () { return chunk62BD4WLW_js.findDialect; }
5390
+ get: function () { return chunkTXI3QDYE_js.findDialect; }
5393
5391
  });
5394
5392
  exports.AgentNewWizardPageView = AgentNewWizardPageView;
5395
5393
  exports.AgentsConfigPageView = AgentsConfigPageView;