@datatechsolutions/ui 3.11.0 → 3.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/astrlabe/index.js +108 -108
- package/dist/astrlabe/index.mjs +4 -4
- package/dist/astrlabe/workflow-canvas.js +4 -4
- package/dist/astrlabe/workflow-canvas.mjs +3 -3
- package/dist/{chunk-K4AJL4BH.mjs → chunk-3U3CIARA.mjs} +3 -3
- package/dist/{chunk-K4AJL4BH.mjs.map → chunk-3U3CIARA.mjs.map} +1 -1
- package/dist/{chunk-TCIK6WHT.mjs → chunk-7DZ2C5IN.mjs} +4 -4
- package/dist/{chunk-TCIK6WHT.mjs.map → chunk-7DZ2C5IN.mjs.map} +1 -1
- package/dist/{chunk-H475T2N7.js → chunk-APONR6ZM.js} +135 -135
- package/dist/{chunk-H475T2N7.js.map → chunk-APONR6ZM.js.map} +1 -1
- package/dist/{chunk-7MPIYSRH.js → chunk-BTMHQCDB.js} +36 -36
- package/dist/{chunk-7MPIYSRH.js.map → chunk-BTMHQCDB.js.map} +1 -1
- package/dist/{chunk-G52HXPSB.js → chunk-CLXEVSGB.js} +13 -13
- package/dist/{chunk-G52HXPSB.js.map → chunk-CLXEVSGB.js.map} +1 -1
- package/dist/{chunk-GTJGX7IZ.js → chunk-CVCMJJ56.js} +10 -10
- package/dist/{chunk-GTJGX7IZ.js.map → chunk-CVCMJJ56.js.map} +1 -1
- package/dist/{chunk-35O2X7WY.js → chunk-DPXCJVJT.js} +9 -9
- package/dist/{chunk-35O2X7WY.js.map → chunk-DPXCJVJT.js.map} +1 -1
- package/dist/{chunk-ZJMYLUZ2.mjs → chunk-E3NMVWRL.mjs} +4 -4
- package/dist/{chunk-ZJMYLUZ2.mjs.map → chunk-E3NMVWRL.mjs.map} +1 -1
- package/dist/{chunk-KTEEXEAX.mjs → chunk-I77TTBYO.mjs} +6 -6
- package/dist/{chunk-KTEEXEAX.mjs.map → chunk-I77TTBYO.mjs.map} +1 -1
- package/dist/{chunk-3US2QXEF.mjs → chunk-IHOCYBHM.mjs} +3 -3
- package/dist/{chunk-3US2QXEF.mjs.map → chunk-IHOCYBHM.mjs.map} +1 -1
- package/dist/{chunk-NM3YTQ26.mjs → chunk-K3LIDGMA.mjs} +3 -3
- package/dist/{chunk-NM3YTQ26.mjs.map → chunk-K3LIDGMA.mjs.map} +1 -1
- package/dist/{chunk-Z6FZQOTW.js → chunk-KDVZIDVF.js} +28 -28
- package/dist/{chunk-Z6FZQOTW.js.map → chunk-KDVZIDVF.js.map} +1 -1
- package/dist/{chunk-2AJ73ULK.mjs → chunk-LHAOIPYP.mjs} +3 -3
- package/dist/{chunk-2AJ73ULK.mjs.map → chunk-LHAOIPYP.mjs.map} +1 -1
- package/dist/{chunk-GKI74CPB.js → chunk-LM6BJOKX.js} +55 -55
- package/dist/{chunk-GKI74CPB.js.map → chunk-LM6BJOKX.js.map} +1 -1
- package/dist/{chunk-BO3RXG6M.js → chunk-MN777KLN.js} +45 -45
- package/dist/{chunk-BO3RXG6M.js.map → chunk-MN777KLN.js.map} +1 -1
- package/dist/{chunk-62BD4WLW.js → chunk-NW32BM3F.js} +34 -34
- package/dist/{chunk-62BD4WLW.js.map → chunk-NW32BM3F.js.map} +1 -1
- package/dist/{chunk-R3CGJK7D.mjs → chunk-O4DIKNNH.mjs} +3 -3
- package/dist/{chunk-R3CGJK7D.mjs.map → chunk-O4DIKNNH.mjs.map} +1 -1
- package/dist/{chunk-BCJATFZE.js → chunk-OD2AZBEX.js} +25 -25
- package/dist/{chunk-BCJATFZE.js.map → chunk-OD2AZBEX.js.map} +1 -1
- package/dist/{chunk-35P352JX.mjs → chunk-OKCEK7GH.mjs} +3 -3
- package/dist/{chunk-35P352JX.mjs.map → chunk-OKCEK7GH.mjs.map} +1 -1
- package/dist/{chunk-O2CUOJ74.js → chunk-OO4YMN4P.js} +4 -4
- package/dist/{chunk-O2CUOJ74.js.map → chunk-OO4YMN4P.js.map} +1 -1
- package/dist/{chunk-6TKCMQ75.js → chunk-OSXBMLZP.js} +68 -68
- package/dist/{chunk-6TKCMQ75.js.map → chunk-OSXBMLZP.js.map} +1 -1
- package/dist/{chunk-7V7WEXHS.mjs → chunk-Q6MMJYEG.mjs} +3 -3
- package/dist/{chunk-7V7WEXHS.mjs.map → chunk-Q6MMJYEG.mjs.map} +1 -1
- package/dist/{chunk-PHBZ3TXE.js → chunk-QASAHGLE.js} +4 -4
- package/dist/{chunk-PHBZ3TXE.js.map → chunk-QASAHGLE.js.map} +1 -1
- package/dist/{chunk-7D52TFVL.mjs → chunk-QDW3IJIL.mjs} +3 -3
- package/dist/{chunk-7D52TFVL.mjs.map → chunk-QDW3IJIL.mjs.map} +1 -1
- package/dist/{chunk-HUAWGBYL.mjs → chunk-QKWNQOJB.mjs} +3 -3
- package/dist/{chunk-HUAWGBYL.mjs.map → chunk-QKWNQOJB.mjs.map} +1 -1
- package/dist/{chunk-NRVV4PHB.mjs → chunk-S46LUR7O.mjs} +7 -7
- package/dist/{chunk-NRVV4PHB.mjs.map → chunk-S46LUR7O.mjs.map} +1 -1
- package/dist/{chunk-37FWIPYO.mjs → chunk-S4LHC5SF.mjs} +3 -3
- package/dist/{chunk-37FWIPYO.mjs.map → chunk-S4LHC5SF.mjs.map} +1 -1
- package/dist/{chunk-JTD3BBVI.js → chunk-SSKKTSMA.js} +35 -35
- package/dist/{chunk-JTD3BBVI.js.map → chunk-SSKKTSMA.js.map} +1 -1
- package/dist/{chunk-ZGVN23J4.js → chunk-TIJXCRM4.js} +3 -3
- package/dist/{chunk-ZGVN23J4.js.map → chunk-TIJXCRM4.js.map} +1 -1
- package/dist/{chunk-7KPMLHPR.mjs → chunk-VHU5FWFB.mjs} +3 -3
- package/dist/{chunk-7KPMLHPR.mjs.map → chunk-VHU5FWFB.mjs.map} +1 -1
- package/dist/index.js +663 -663
- package/dist/index.mjs +2 -2
- package/dist/platform/admin/index.js +10 -10
- package/dist/platform/admin/index.mjs +4 -4
- package/dist/platform/agents-workspace.js +7 -7
- package/dist/platform/agents-workspace.mjs +6 -6
- package/dist/platform/app-shell.js +4 -4
- package/dist/platform/app-shell.mjs +3 -3
- package/dist/platform/auth/index.js +22 -22
- package/dist/platform/auth/index.mjs +4 -4
- package/dist/platform/billing/index.js +4 -4
- package/dist/platform/billing/index.mjs +3 -3
- package/dist/platform/impersonation/index.js +4 -4
- package/dist/platform/impersonation/index.mjs +3 -3
- package/dist/platform/index.js +78 -78
- package/dist/platform/index.mjs +18 -18
- package/dist/platform/pages/index.js +471 -473
- package/dist/platform/pages/index.js.map +1 -1
- package/dist/platform/pages/index.mjs +173 -175
- package/dist/platform/pages/index.mjs.map +1 -1
- package/dist/platform/settings/index.js +7 -7
- package/dist/platform/settings/index.mjs +6 -6
- package/dist/platform/workflow-canvas-shell.js +5 -5
- package/dist/platform/workflow-canvas-shell.mjs +4 -4
- package/package.json +1 -1
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var chunk3T2WGL47_js = require('../../chunk-3T2WGL47.js');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
5
|
+
var chunkKDVZIDVF_js = require('../../chunk-KDVZIDVF.js');
|
|
6
|
+
var chunkNW32BM3F_js = require('../../chunk-NW32BM3F.js');
|
|
7
|
+
var chunkAPONR6ZM_js = require('../../chunk-APONR6ZM.js');
|
|
8
8
|
require('../../chunk-55H6WZQP.js');
|
|
9
9
|
require('../../chunk-DJDZIRM6.js');
|
|
10
|
-
require('../../chunk-
|
|
11
|
-
var
|
|
10
|
+
require('../../chunk-OSXBMLZP.js');
|
|
11
|
+
var chunkTIJXCRM4_js = require('../../chunk-TIJXCRM4.js');
|
|
12
|
+
require('../../chunk-YXN2K77G.js');
|
|
12
13
|
require('../../chunk-ZUU7G3PC.js');
|
|
13
14
|
require('../../chunk-2OZZH2IO.js');
|
|
14
|
-
require('../../chunk-YXN2K77G.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
|
-
|
|
30
|
+
chunkTIJXCRM4_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
|
-
|
|
38
|
+
chunkTIJXCRM4_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(
|
|
49
|
-
|
|
48
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
73
|
+
chunkTIJXCRM4_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
|
-
|
|
81
|
+
chunkTIJXCRM4_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
|
-
|
|
90
|
+
chunkTIJXCRM4_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
|
-
|
|
101
|
+
chunkTIJXCRM4_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(
|
|
109
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
112
|
+
chunkTIJXCRM4_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
|
-
|
|
149
|
+
chunkTIJXCRM4_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(
|
|
173
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
174
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
175
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
176
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
177
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
178
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
172
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
173
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name ?? "", required: true }),
|
|
174
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormSelect, { name: "modelId", label: labels.model, options: modelOptions, defaultValue: initial.modelId ?? modelOptions[0]?.value ?? "", required: true }),
|
|
175
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "maxTokens", label: String(labels.maxTokens), type: "number", defaultValue: String(initial.maxTokens ?? 2048) }),
|
|
176
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(chunkTIJXCRM4_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, defaultValue: initial.systemPrompt ?? "", rows: 4 }),
|
|
178
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
245
|
+
chunkTIJXCRM4_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
|
-
|
|
253
|
+
chunkTIJXCRM4_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
|
-
|
|
264
|
+
chunkTIJXCRM4_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(
|
|
272
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
273
273
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
274
|
-
|
|
274
|
+
chunkTIJXCRM4_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
|
-
|
|
285
|
+
chunkTIJXCRM4_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
|
-
|
|
320
|
+
chunkTIJXCRM4_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(
|
|
345
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
346
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
344
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
345
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormSelect, { name: "agentId", label: labels.agent, options: agentOptions, required: true }),
|
|
346
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormSelect, { name: "locale", label: labels.locale, options: LOCALE_OPTIONS, defaultValue: "en" }),
|
|
347
347
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
348
|
-
|
|
348
|
+
chunkTIJXCRM4_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(
|
|
357
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
358
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
359
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
356
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "reason", label: labels.reason }),
|
|
357
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, rows: 3 }),
|
|
358
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "userTemplate", label: labels.userTemplate, rows: 3 }),
|
|
359
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
394
|
+
chunkTIJXCRM4_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
|
-
|
|
402
|
+
chunkTIJXCRM4_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
|
-
|
|
413
|
+
chunkTIJXCRM4_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(
|
|
421
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
422
422
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
423
|
-
|
|
423
|
+
chunkTIJXCRM4_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
|
-
|
|
431
|
+
chunkTIJXCRM4_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
|
-
|
|
521
|
+
chunkTIJXCRM4_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(
|
|
534
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
535
535
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
536
|
-
|
|
536
|
+
chunkTIJXCRM4_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
|
-
|
|
546
|
+
chunkTIJXCRM4_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
|
-
|
|
556
|
+
chunkTIJXCRM4_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
|
-
|
|
565
|
+
chunkTIJXCRM4_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
|
-
|
|
575
|
+
chunkTIJXCRM4_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
|
-
|
|
623
|
+
chunkTIJXCRM4_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
|
-
|
|
632
|
+
chunkTIJXCRM4_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
|
-
|
|
641
|
+
chunkTIJXCRM4_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(
|
|
675
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
676
676
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
677
|
-
|
|
677
|
+
chunkTIJXCRM4_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
|
-
|
|
686
|
+
chunkTIJXCRM4_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
|
-
|
|
696
|
+
chunkTIJXCRM4_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
|
-
|
|
706
|
+
chunkTIJXCRM4_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
|
-
|
|
721
|
+
chunkTIJXCRM4_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(
|
|
735
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
736
736
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
737
|
-
|
|
737
|
+
chunkTIJXCRM4_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
|
-
|
|
746
|
+
chunkTIJXCRM4_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
|
-
|
|
756
|
+
chunkTIJXCRM4_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
|
-
|
|
772
|
+
chunkTIJXCRM4_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
|
-
|
|
784
|
+
chunkTIJXCRM4_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(
|
|
797
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
798
798
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
799
|
-
|
|
799
|
+
chunkTIJXCRM4_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
|
-
|
|
807
|
+
chunkTIJXCRM4_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
|
-
|
|
821
|
+
chunkTIJXCRM4_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
|
-
|
|
958
|
+
chunkTIJXCRM4_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
|
-
|
|
965
|
+
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
966
|
+
chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
986
|
+
chunkTIJXCRM4_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(
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
}
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
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(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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:
|
|
1032
|
+
initial: chunkAPONR6ZM_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
|
-
|
|
1064
|
+
chunkTIJXCRM4_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(
|
|
1076
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkAPONR6ZM_js.RuleForm, { value, onChange: setValue })
|
|
1078
1077
|
}
|
|
1079
1078
|
);
|
|
1080
1079
|
}
|
|
1081
1080
|
function ruleToFormValue(rule) {
|
|
1082
|
-
const base =
|
|
1081
|
+
const base = chunkAPONR6ZM_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
|
|
1221
|
+
for (const category of chunkNW32BM3F_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 =
|
|
1229
|
+
const category = chunkNW32BM3F_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 =
|
|
1234
|
+
const category = chunkNW32BM3F_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
|
-
|
|
1314
|
+
chunkTIJXCRM4_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
|
-
|
|
1321
|
+
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1322
|
+
chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
1342
|
+
chunkTIJXCRM4_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
|
-
|
|
1351
|
+
chunkTIJXCRM4_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
|
-
|
|
1365
|
+
chunkTIJXCRM4_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
|
-
|
|
1395
|
+
chunkNW32BM3F_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
|
-
|
|
1424
|
+
chunkTIJXCRM4_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
|
-
|
|
1432
|
+
chunkTIJXCRM4_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
|
-
|
|
1445
|
+
chunkTIJXCRM4_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
|
-
|
|
1463
|
+
chunkTIJXCRM4_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(
|
|
1472
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.add }),
|
|
1473
1473
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1474
|
-
|
|
1474
|
+
chunkTIJXCRM4_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(
|
|
1486
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1487
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1488
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1485
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
1486
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "name", label: labels.workflowName, placeholder: labels.workflowNamePlaceholder, required: true }),
|
|
1487
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.workflowDescriptionPlaceholder, rows: 3 }),
|
|
1488
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(
|
|
1495
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1496
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1497
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1498
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1499
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1500
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1501
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1494
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.registry }),
|
|
1495
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.Table, { children: [
|
|
1496
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHead, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.TableRow, { children: [
|
|
1497
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHeader, { children: labels.name }),
|
|
1498
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHeader, { children: labels.description }),
|
|
1499
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHeader, { children: labels.version }),
|
|
1500
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHeader, { children: labels.status }),
|
|
1501
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableHeader, { children: labels.actions })
|
|
1502
1502
|
] }) }),
|
|
1503
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1504
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1505
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1506
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1507
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1508
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1503
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableBody, { children: workflows.map((workflow) => /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.TableRow, { children: [
|
|
1504
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableCell, { children: workflow.name }),
|
|
1505
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableCell, { children: workflow.description }),
|
|
1506
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableCell, { children: String(workflow.version) }),
|
|
1507
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { children: workflow.isDraft ? labels.statusDraft : labels.statusPublished }) }),
|
|
1508
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
1509
1509
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1510
|
-
|
|
1510
|
+
chunkTIJXCRM4_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(
|
|
1520
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(
|
|
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(
|
|
1529
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(chunkKDVZIDVF_js.WorkflowWorkspace, { graph: chunk3T2WGL47_js.adaptWorkflowGraphToUi(selectedWorkflow.graph) }) }) : /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
1580
|
+
chunkTIJXCRM4_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
|
-
|
|
1588
|
+
chunkTIJXCRM4_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
|
-
|
|
1602
|
+
chunkTIJXCRM4_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(
|
|
1617
|
-
|
|
1616
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : filteredRuns.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
1649
|
+
chunkTIJXCRM4_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(
|
|
1661
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(
|
|
1667
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
1673
|
+
chunkAPONR6ZM_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
|
-
|
|
1758
|
+
chunkTIJXCRM4_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
|
-
|
|
1765
|
+
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1766
|
+
chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
1786
|
+
chunkTIJXCRM4_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(
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
{
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
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(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
1947
|
+
chunkTIJXCRM4_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(
|
|
1960
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
1962
1961
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1963
|
-
|
|
1962
|
+
chunkTIJXCRM4_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
|
-
|
|
1973
|
+
chunkTIJXCRM4_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
|
-
|
|
1983
|
+
chunkTIJXCRM4_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
|
-
|
|
1992
|
+
chunkTIJXCRM4_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
|
-
|
|
2002
|
+
chunkTIJXCRM4_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
|
-
|
|
2013
|
+
chunkTIJXCRM4_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
|
-
|
|
2025
|
+
chunkTIJXCRM4_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
|
-
|
|
2095
|
+
chunkTIJXCRM4_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
|
-
|
|
2103
|
+
chunkTIJXCRM4_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
|
-
|
|
2114
|
+
chunkTIJXCRM4_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(
|
|
2122
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageEmptyState, { title: labels.empty, message: labels.subtitle, iconName: "folder-open" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
2124
2123
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2125
|
-
|
|
2124
|
+
chunkTIJXCRM4_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
|
-
|
|
2132
|
+
chunkTIJXCRM4_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(
|
|
2140
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2183
|
+
chunkTIJXCRM4_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(
|
|
2203
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2204
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2205
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2206
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2201
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
2202
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "name", label: labels.name, placeholder: labels.namePlaceholder, required: true }),
|
|
2203
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormSelect, { name: "secretType", label: labels.type, options: typeOptions, defaultValue: "generic" }),
|
|
2204
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }),
|
|
2205
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.descriptionPlaceholder, rows: 2 })
|
|
2207
2206
|
] })
|
|
2208
2207
|
}
|
|
2209
2208
|
),
|
|
2210
2209
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2211
|
-
|
|
2210
|
+
chunkTIJXCRM4_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(
|
|
2225
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormGrid, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2278
|
+
chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
2295
|
+
chunkTIJXCRM4_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
|
-
|
|
2306
|
+
chunkTIJXCRM4_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(
|
|
2307
|
-
|
|
2314
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2315
|
+
chunkTIJXCRM4_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: "
|
|
2314
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
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(chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_js.ListCardItem,
|
|
2374
2329
|
{
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2330
|
+
leading: /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2381
|
-
|
|
2382
|
-
{
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
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
|
+
chunkTIJXCRM4_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
|
+
chunkTIJXCRM4_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
|
-
|
|
2414
|
+
chunkTIJXCRM4_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(
|
|
2442
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2443
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2444
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2445
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2446
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2439
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.Tabs, { defaultValue: "general", className: "w-full", children: [
|
|
2440
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.TabsList, { className: "bg-white/40 dark:bg-white/[0.06]", children: [
|
|
2441
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TabsTrigger, { value: "general", children: labels.generalTab }),
|
|
2442
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TabsTrigger, { value: "prompt", children: labels.promptTab }),
|
|
2443
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TabsTrigger, { value: "tools", children: labels.toolsTab }),
|
|
2444
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.TabsTrigger, { value: "model", children: labels.modelTab })
|
|
2447
2445
|
] }),
|
|
2448
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2449
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2446
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(chunkTIJXCRM4_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(
|
|
2457
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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(
|
|
2467
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2499
|
+
chunkTIJXCRM4_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(
|
|
2531
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2528
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
2529
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name, required: true }),
|
|
2532
2530
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2533
|
-
|
|
2531
|
+
chunkTIJXCRM4_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(
|
|
2543
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "role", label: labels.role, placeholder: labels.rolePlaceholder, defaultValue: initialRole }),
|
|
2546
2544
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2547
|
-
|
|
2545
|
+
chunkTIJXCRM4_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
|
-
|
|
2554
|
+
chunkTIJXCRM4_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(
|
|
2566
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2586
|
+
chunkTIJXCRM4_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
|
-
|
|
2598
|
+
chunkTIJXCRM4_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(
|
|
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(chunkTIJXCRM4_js.ListCard, { children: prompts.map((prompt) => {
|
|
2612
2610
|
const id = `${prompt.agentId}:${prompt.locale}:${prompt.version}`;
|
|
2613
2611
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2614
|
-
|
|
2612
|
+
chunkTIJXCRM4_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
|
-
|
|
2630
|
+
chunkTIJXCRM4_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(
|
|
2654
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2651
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
2652
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormSelect, { name: "locale", label: labels.promptLocale, options: LOCALE_OPTIONS2, defaultValue: "en" }),
|
|
2655
2653
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2656
|
-
|
|
2654
|
+
chunkTIJXCRM4_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(
|
|
2668
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2669
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2670
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2665
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormInput, { name: "reason", label: labels.promptReason }),
|
|
2666
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "systemPrompt", label: labels.promptSystemPrompt, rows: 3 }),
|
|
2667
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.FormTextarea, { name: "userTemplate", label: labels.promptUserTemplate, rows: 3 }),
|
|
2668
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
2691
|
+
chunkTIJXCRM4_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(
|
|
2701
|
-
|
|
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(chunkTIJXCRM4_js.ListCard, { children: attachedTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2699
|
+
chunkTIJXCRM4_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
|
-
|
|
2713
|
+
chunkTIJXCRM4_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(
|
|
2723
|
-
|
|
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(chunkTIJXCRM4_js.ListCard, { children: availableTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2721
|
+
chunkTIJXCRM4_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
|
-
|
|
2762
|
+
chunkTIJXCRM4_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(
|
|
2783
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
2786
2784
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2787
|
-
|
|
2785
|
+
chunkTIJXCRM4_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
|
-
|
|
2794
|
+
chunkTIJXCRM4_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
|
-
|
|
3084
|
+
chunkTIJXCRM4_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
|
-
|
|
3099
|
+
chunkTIJXCRM4_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
|
-
|
|
3112
|
+
chunkTIJXCRM4_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
|
-
|
|
3128
|
+
chunkTIJXCRM4_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
|
-
|
|
3147
|
+
chunkTIJXCRM4_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(
|
|
3175
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
3178
3176
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3179
|
-
|
|
3177
|
+
chunkTIJXCRM4_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
|
-
|
|
3190
|
+
chunkTIJXCRM4_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
|
-
|
|
3203
|
+
chunkTIJXCRM4_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
|
-
|
|
3221
|
+
chunkTIJXCRM4_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(
|
|
3229
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
3232
3230
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3233
|
-
|
|
3231
|
+
chunkTIJXCRM4_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
|
-
|
|
3244
|
+
chunkTIJXCRM4_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
|
-
|
|
3256
|
+
chunkTIJXCRM4_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
|
-
|
|
3269
|
+
chunkTIJXCRM4_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
|
-
|
|
3288
|
+
chunkTIJXCRM4_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
|
-
|
|
3448
|
+
chunkTIJXCRM4_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
|
-
|
|
3491
|
+
chunkTIJXCRM4_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
|
-
|
|
3512
|
+
chunkTIJXCRM4_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
|
-
|
|
3527
|
+
chunkTIJXCRM4_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
|
-
|
|
3556
|
+
chunkTIJXCRM4_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
|
-
|
|
3576
|
+
chunkTIJXCRM4_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 ?
|
|
3728
|
-
const category = react.useMemo(() => dialect ?
|
|
3725
|
+
const dialectOption = react.useMemo(() => dialect ? chunkNW32BM3F_js.findDialect(dialect) : null, [dialect]);
|
|
3726
|
+
const category = react.useMemo(() => dialect ? chunkNW32BM3F_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
|
-
|
|
3851
|
+
chunkTIJXCRM4_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
|
-
|
|
3859
|
+
chunkTIJXCRM4_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:
|
|
3871
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children: chunkNW32BM3F_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
|
-
|
|
3875
|
+
chunkTIJXCRM4_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
|
-
|
|
3893
|
+
chunkTIJXCRM4_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
|
-
|
|
3921
|
+
chunkTIJXCRM4_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
|
-
|
|
3934
|
+
chunkTIJXCRM4_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
|
-
|
|
3946
|
+
chunkTIJXCRM4_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
|
-
|
|
3959
|
+
chunkTIJXCRM4_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
|
-
|
|
3971
|
+
chunkTIJXCRM4_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
|
-
|
|
3984
|
+
chunkTIJXCRM4_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
|
-
|
|
3998
|
+
chunkTIJXCRM4_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
|
-
|
|
4013
|
+
chunkTIJXCRM4_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
|
-
|
|
4026
|
+
chunkTIJXCRM4_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
|
-
|
|
4039
|
+
chunkTIJXCRM4_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
|
-
|
|
4054
|
+
chunkTIJXCRM4_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
|
-
|
|
4067
|
+
chunkTIJXCRM4_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
|
-
|
|
4080
|
+
chunkTIJXCRM4_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
|
-
|
|
4093
|
+
chunkTIJXCRM4_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
|
-
|
|
4106
|
+
chunkTIJXCRM4_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
|
-
|
|
4119
|
+
chunkTIJXCRM4_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
|
-
|
|
4134
|
+
chunkTIJXCRM4_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
|
-
|
|
4147
|
+
chunkTIJXCRM4_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
|
-
|
|
4161
|
+
chunkTIJXCRM4_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
|
-
|
|
4176
|
+
chunkTIJXCRM4_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
|
-
|
|
4190
|
+
chunkTIJXCRM4_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
|
-
|
|
4203
|
+
chunkTIJXCRM4_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(
|
|
4219
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_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
|
-
|
|
4225
|
+
chunkTIJXCRM4_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
|
-
|
|
4236
|
+
chunkTIJXCRM4_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(
|
|
4248
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
4251
|
+
chunkTIJXCRM4_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
|
-
|
|
4263
|
+
chunkTIJXCRM4_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(
|
|
4285
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.Spinner, { size: "xs" }),
|
|
4288
4286
|
labels.testing
|
|
4289
4287
|
] }) : labels.testConnection
|
|
4290
4288
|
}
|
|
4291
4289
|
),
|
|
4292
|
-
testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4293
|
-
testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4290
|
+
testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_js.StatusBadge, { status: "success", label: labels.connectionSuccess }),
|
|
4291
|
+
testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(chunkTIJXCRM4_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
|
-
|
|
4299
|
+
chunkTIJXCRM4_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(
|
|
4307
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_js.FormGrid, { children: [
|
|
4310
4308
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4311
|
-
|
|
4309
|
+
chunkTIJXCRM4_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
|
-
|
|
4324
|
+
chunkTIJXCRM4_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
|
-
|
|
4341
|
+
chunkTIJXCRM4_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
|
-
|
|
4365
|
+
chunkTIJXCRM4_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
|
-
|
|
4387
|
+
chunkTIJXCRM4_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
|
-
|
|
4409
|
+
chunkTIJXCRM4_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
|
-
|
|
4427
|
+
chunkTIJXCRM4_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
|
-
|
|
4447
|
+
chunkTIJXCRM4_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(
|
|
4636
|
+
const [condition, setCondition] = react.useState(chunkAPONR6ZM_js.defaultRuleCondition());
|
|
4639
4637
|
const [actionTileId, setActionTileId] = react.useState("");
|
|
4640
|
-
const [action, setAction] = react.useState(
|
|
4638
|
+
const [action, setAction] = react.useState(chunkAPONR6ZM_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
|
-
|
|
4767
|
+
chunkTIJXCRM4_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
|
-
|
|
4775
|
+
chunkTIJXCRM4_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
|
-
|
|
4788
|
+
chunkTIJXCRM4_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
|
-
|
|
4797
|
+
chunkTIJXCRM4_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
|
-
|
|
4810
|
+
chunkTIJXCRM4_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
|
-
|
|
4846
|
+
chunkTIJXCRM4_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
|
-
|
|
4863
|
+
chunkTIJXCRM4_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
|
-
|
|
4874
|
+
chunkTIJXCRM4_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
|
-
|
|
4891
|
+
chunkAPONR6ZM_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
|
-
|
|
4907
|
+
chunkTIJXCRM4_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
|
-
|
|
4927
|
+
chunkTIJXCRM4_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
|
-
|
|
4945
|
+
chunkTIJXCRM4_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
|
-
|
|
4953
|
+
chunkAPONR6ZM_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
|
-
|
|
4970
|
+
chunkTIJXCRM4_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(
|
|
4978
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkTIJXCRM4_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
|
-
|
|
4983
|
+
chunkTIJXCRM4_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
|
-
|
|
4994
|
+
chunkTIJXCRM4_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
|
-
|
|
5010
|
+
chunkTIJXCRM4_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
|
-
|
|
5021
|
+
chunkTIJXCRM4_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
|
-
|
|
5035
|
+
chunkTIJXCRM4_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
|
-
|
|
5049
|
+
chunkTIJXCRM4_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
|
-
|
|
5068
|
+
chunkTIJXCRM4_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
|
-
|
|
5092
|
+
chunkTIJXCRM4_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
|
-
|
|
5109
|
+
chunkTIJXCRM4_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
|
-
|
|
5125
|
+
chunkTIJXCRM4_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
|
-
|
|
5147
|
+
chunkTIJXCRM4_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
|
-
|
|
5169
|
+
chunkTIJXCRM4_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
|
-
|
|
5195
|
+
chunkTIJXCRM4_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
|
-
|
|
5214
|
+
chunkTIJXCRM4_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
|
-
|
|
5232
|
+
chunkTIJXCRM4_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
|
|
5366
|
+
get: function () { return chunkKDVZIDVF_js.RolesPageView; }
|
|
5369
5367
|
});
|
|
5370
5368
|
Object.defineProperty(exports, "UsersPageView", {
|
|
5371
5369
|
enumerable: true,
|
|
5372
|
-
get: function () { return
|
|
5370
|
+
get: function () { return chunkKDVZIDVF_js.UsersPageView; }
|
|
5373
5371
|
});
|
|
5374
5372
|
Object.defineProperty(exports, "DIALECT_CATEGORIES", {
|
|
5375
5373
|
enumerable: true,
|
|
5376
|
-
get: function () { return
|
|
5374
|
+
get: function () { return chunkNW32BM3F_js.DIALECT_CATEGORIES; }
|
|
5377
5375
|
});
|
|
5378
5376
|
Object.defineProperty(exports, "DatasourceFormModal", {
|
|
5379
5377
|
enumerable: true,
|
|
5380
|
-
get: function () { return
|
|
5378
|
+
get: function () { return chunkNW32BM3F_js.DatasourceFormModal; }
|
|
5381
5379
|
});
|
|
5382
5380
|
Object.defineProperty(exports, "DatasourceModal", {
|
|
5383
5381
|
enumerable: true,
|
|
5384
|
-
get: function () { return
|
|
5382
|
+
get: function () { return chunkNW32BM3F_js.DatasourceModal; }
|
|
5385
5383
|
});
|
|
5386
5384
|
Object.defineProperty(exports, "findCategory", {
|
|
5387
5385
|
enumerable: true,
|
|
5388
|
-
get: function () { return
|
|
5386
|
+
get: function () { return chunkNW32BM3F_js.findCategory; }
|
|
5389
5387
|
});
|
|
5390
5388
|
Object.defineProperty(exports, "findDialect", {
|
|
5391
5389
|
enumerable: true,
|
|
5392
|
-
get: function () { return
|
|
5390
|
+
get: function () { return chunkNW32BM3F_js.findDialect; }
|
|
5393
5391
|
});
|
|
5394
5392
|
exports.AgentNewWizardPageView = AgentNewWizardPageView;
|
|
5395
5393
|
exports.AgentsConfigPageView = AgentsConfigPageView;
|