@datatechsolutions/ui 3.12.1 → 3.13.0
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-HTODLUKG.js → chunk-2ECLDHAT.js} +12 -12
- package/dist/{chunk-HTODLUKG.js.map → chunk-2ECLDHAT.js.map} +1 -1
- package/dist/{chunk-NQGLSM46.mjs → chunk-4VHFGW7I.mjs} +4 -4
- package/dist/{chunk-NQGLSM46.mjs.map → chunk-4VHFGW7I.mjs.map} +1 -1
- package/dist/{chunk-ULKZGM2T.js → chunk-5ETT54QS.js} +37 -37
- package/dist/{chunk-ULKZGM2T.js.map → chunk-5ETT54QS.js.map} +1 -1
- package/dist/{chunk-N5GQIT7A.mjs → chunk-6KDTVSZT.mjs} +7 -7
- package/dist/{chunk-N5GQIT7A.mjs.map → chunk-6KDTVSZT.mjs.map} +1 -1
- package/dist/{chunk-VYU2FYDE.js → chunk-6YTYD4P5.js} +66 -66
- package/dist/{chunk-VYU2FYDE.js.map → chunk-6YTYD4P5.js.map} +1 -1
- package/dist/{chunk-YYNGXKUE.mjs → chunk-7TYNV6SY.mjs} +4 -4
- package/dist/{chunk-YYNGXKUE.mjs.map → chunk-7TYNV6SY.mjs.map} +1 -1
- package/dist/{chunk-RT264BD4.mjs → chunk-AHNH2PMI.mjs} +4 -4
- package/dist/{chunk-RT264BD4.mjs.map → chunk-AHNH2PMI.mjs.map} +1 -1
- package/dist/{chunk-RBH723MG.mjs → chunk-AKWCT53S.mjs} +4 -4
- package/dist/{chunk-RBH723MG.mjs.map → chunk-AKWCT53S.mjs.map} +1 -1
- package/dist/{chunk-MYHBXIO2.js → chunk-AMCFAGK3.js} +34 -34
- package/dist/{chunk-MYHBXIO2.js.map → chunk-AMCFAGK3.js.map} +1 -1
- package/dist/{chunk-UVFWKDRO.mjs → chunk-ANFSQJNI.mjs} +4 -4
- package/dist/{chunk-UVFWKDRO.mjs.map → chunk-ANFSQJNI.mjs.map} +1 -1
- package/dist/{chunk-BPMYNE7S.mjs → chunk-CSOMZ5UM.mjs} +4 -4
- package/dist/{chunk-BPMYNE7S.mjs.map → chunk-CSOMZ5UM.mjs.map} +1 -1
- package/dist/{chunk-FKRIQYRG.js → chunk-D5OTZGA2.js} +126 -127
- package/dist/chunk-D5OTZGA2.js.map +1 -0
- package/dist/{chunk-V3UZCOZI.js → chunk-IIRS5XZY.js} +32 -32
- package/dist/{chunk-V3UZCOZI.js.map → chunk-IIRS5XZY.js.map} +1 -1
- package/dist/{chunk-Z75CEP4V.js → chunk-K5567JM5.js} +13 -13
- package/dist/{chunk-Z75CEP4V.js.map → chunk-K5567JM5.js.map} +1 -1
- package/dist/{chunk-OM5NNUD2.mjs → chunk-KWH7JIRP.mjs} +3 -3
- package/dist/{chunk-OM5NNUD2.mjs.map → chunk-KWH7JIRP.mjs.map} +1 -1
- package/dist/{chunk-MFF37C24.js → chunk-MQDCUBVW.js} +150 -150
- package/dist/{chunk-MFF37C24.js.map → chunk-MQDCUBVW.js.map} +1 -1
- package/dist/{chunk-OW5LSEHU.mjs → chunk-MSKKNPRE.mjs} +3 -3
- package/dist/{chunk-OW5LSEHU.mjs.map → chunk-MSKKNPRE.mjs.map} +1 -1
- package/dist/{chunk-PLEWG2L7.js → chunk-N4YT3QA5.js} +15 -15
- package/dist/{chunk-PLEWG2L7.js.map → chunk-N4YT3QA5.js.map} +1 -1
- package/dist/{chunk-XGAPZT4J.js → chunk-NF5DDM5V.js} +40 -40
- package/dist/{chunk-XGAPZT4J.js.map → chunk-NF5DDM5V.js.map} +1 -1
- package/dist/{chunk-NK4H3JWN.mjs → chunk-OC4AOYU5.mjs} +4 -4
- package/dist/{chunk-NK4H3JWN.mjs.map → chunk-OC4AOYU5.mjs.map} +1 -1
- package/dist/{chunk-ID55ABBB.js → chunk-OY5HUZSD.js} +44 -44
- package/dist/{chunk-ID55ABBB.js.map → chunk-OY5HUZSD.js.map} +1 -1
- package/dist/{chunk-5OZTI7TR.js → chunk-PPIUMCUZ.js} +6 -6
- package/dist/{chunk-5OZTI7TR.js.map → chunk-PPIUMCUZ.js.map} +1 -1
- package/dist/{chunk-WLNY3GVM.mjs → chunk-QGRTV35L.mjs} +7 -7
- package/dist/{chunk-WLNY3GVM.mjs.map → chunk-QGRTV35L.mjs.map} +1 -1
- package/dist/{chunk-TDNBO3V7.js → chunk-SDYKXLCU.js} +56 -56
- package/dist/{chunk-TDNBO3V7.js.map → chunk-SDYKXLCU.js.map} +1 -1
- package/dist/{chunk-5TLKFOEL.mjs → chunk-UPYACFZJ.mjs} +5 -5
- package/dist/{chunk-5TLKFOEL.mjs.map → chunk-UPYACFZJ.mjs.map} +1 -1
- package/dist/{chunk-EDI46QA7.mjs → chunk-UXHJS2SH.mjs} +4 -5
- package/dist/chunk-UXHJS2SH.mjs.map +1 -0
- package/dist/{chunk-LRNVB7MO.js → chunk-VI4IUTMX.js} +4 -4
- package/dist/{chunk-LRNVB7MO.js.map → chunk-VI4IUTMX.js.map} +1 -1
- package/dist/{chunk-4D23CQZM.mjs → chunk-VIB42VMZ.mjs} +5 -5
- package/dist/{chunk-4D23CQZM.mjs.map → chunk-VIB42VMZ.mjs.map} +1 -1
- package/dist/{chunk-QSCWV47U.js → chunk-WOTKBKS6.js} +31 -31
- package/dist/{chunk-QSCWV47U.js.map → chunk-WOTKBKS6.js.map} +1 -1
- package/dist/{chunk-YXN2K77G.js → chunk-Y5VN4SPH.js} +26 -3
- package/dist/chunk-Y5VN4SPH.js.map +1 -0
- package/dist/{chunk-7VJ7CMMT.mjs → chunk-ZEFNBGYI.mjs} +26 -3
- package/dist/chunk-ZEFNBGYI.mjs.map +1 -0
- package/dist/{chunk-PIIY2Z2O.mjs → chunk-ZRCXDKBE.mjs} +3 -3
- package/dist/{chunk-PIIY2Z2O.mjs.map → chunk-ZRCXDKBE.mjs.map} +1 -1
- package/dist/index.js +668 -668
- package/dist/index.mjs +2 -2
- package/dist/lib/i18n-context.d.mts +12 -4
- package/dist/lib/i18n-context.d.ts +12 -4
- package/dist/lib/i18n-context.js +6 -6
- package/dist/lib/i18n-context.mjs +1 -1
- package/dist/platform/admin/index.js +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.d.mts +1 -1
- package/dist/platform/index.d.ts +1 -1
- package/dist/platform/index.js +96 -96
- package/dist/platform/index.mjs +18 -18
- package/dist/platform/pages/index.js +346 -346
- package/dist/platform/pages/index.mjs +8 -8
- 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 +2 -1
- package/dist/chunk-7VJ7CMMT.mjs.map +0 -1
- package/dist/chunk-EDI46QA7.mjs.map +0 -1
- package/dist/chunk-FKRIQYRG.js.map +0 -1
- package/dist/chunk-YXN2K77G.js.map +0 -1
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var chunk3T2WGL47_js = require('../../chunk-3T2WGL47.js');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
5
|
+
var chunkIIRS5XZY_js = require('../../chunk-IIRS5XZY.js');
|
|
6
|
+
var chunkAMCFAGK3_js = require('../../chunk-AMCFAGK3.js');
|
|
7
|
+
var chunkMQDCUBVW_js = require('../../chunk-MQDCUBVW.js');
|
|
8
8
|
require('../../chunk-55H6WZQP.js');
|
|
9
9
|
require('../../chunk-DJDZIRM6.js');
|
|
10
|
-
require('../../chunk-
|
|
11
|
-
var
|
|
10
|
+
require('../../chunk-D5OTZGA2.js');
|
|
11
|
+
var chunk5ETT54QS_js = require('../../chunk-5ETT54QS.js');
|
|
12
|
+
require('../../chunk-Y5VN4SPH.js');
|
|
12
13
|
require('../../chunk-22XPYFHJ.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');
|
|
@@ -70,7 +70,7 @@ function AgentsModelsPageView({ labels, models, loading }) {
|
|
|
70
70
|
setEnabledFilter("all");
|
|
71
71
|
};
|
|
72
72
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
73
|
-
|
|
73
|
+
chunk5ETT54QS_js.HeroSection,
|
|
74
74
|
{
|
|
75
75
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CubeTransparentIcon, { className: "h-5 w-5" }),
|
|
76
76
|
label: labels.title,
|
|
@@ -78,7 +78,7 @@ function AgentsModelsPageView({ labels, models, loading }) {
|
|
|
78
78
|
subtitle: labels.subtitle,
|
|
79
79
|
gradient: "from-emerald-500 to-teal-700",
|
|
80
80
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
81
|
-
|
|
81
|
+
chunk5ETT54QS_js.SearchBar,
|
|
82
82
|
{
|
|
83
83
|
searchTerm,
|
|
84
84
|
onSearchChange: setSearchTerm,
|
|
@@ -95,8 +95,8 @@ function AgentsModelsPageView({ labels, models, loading }) {
|
|
|
95
95
|
count: filterCount,
|
|
96
96
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
97
97
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
98
|
-
providerChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
99
|
-
|
|
98
|
+
providerChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByProvider ?? "Provedor", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
99
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
100
100
|
{
|
|
101
101
|
items: providerChipItems,
|
|
102
102
|
selectedIds: selectedProviders,
|
|
@@ -106,15 +106,15 @@ function AgentsModelsPageView({ labels, models, loading }) {
|
|
|
106
106
|
clearLabel: labels.clear ?? "Limpar"
|
|
107
107
|
}
|
|
108
108
|
) }),
|
|
109
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
109
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByStatus ?? "Status", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "enabled", "disabled"].map((value) => enabledFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setEnabledFilter(value), children: statusLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEnabledFilter(value), children: statusLabelFor(value) }, value)) }) })
|
|
110
110
|
] })
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
) : void 0
|
|
114
114
|
}
|
|
115
115
|
);
|
|
116
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
117
|
-
|
|
116
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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(
|
|
117
|
+
chunk5ETT54QS_js.EntityCard,
|
|
118
118
|
{
|
|
119
119
|
accentGradient: "from-emerald-500 to-teal-700",
|
|
120
120
|
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" }) }),
|
|
@@ -183,7 +183,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
183
183
|
setHasActiveVersion("all");
|
|
184
184
|
};
|
|
185
185
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
186
|
-
|
|
186
|
+
chunk5ETT54QS_js.HeroSection,
|
|
187
187
|
{
|
|
188
188
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
|
|
189
189
|
label: labels.title,
|
|
@@ -191,7 +191,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
191
191
|
subtitle: labels.subtitle,
|
|
192
192
|
gradient: "from-violet-500 to-indigo-700",
|
|
193
193
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
194
|
-
|
|
194
|
+
chunk5ETT54QS_js.SearchBar,
|
|
195
195
|
{
|
|
196
196
|
searchTerm,
|
|
197
197
|
onSearchChange: setSearchTerm,
|
|
@@ -208,8 +208,8 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
208
208
|
count: filterCount,
|
|
209
209
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
210
210
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
211
|
-
modelChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
212
|
-
|
|
211
|
+
modelChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByModel ?? "Modelo", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
212
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
213
213
|
{
|
|
214
214
|
items: modelChipItems,
|
|
215
215
|
selectedIds: selectedModelIds,
|
|
@@ -219,13 +219,13 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
219
219
|
clearLabel: labels.clear ?? "Limpar"
|
|
220
220
|
}
|
|
221
221
|
) }),
|
|
222
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
222
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByActiveVersion ?? "Vers\xE3o ativa", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "with", "without"].map((value) => hasActiveVersion === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setHasActiveVersion(value), children: versionLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setHasActiveVersion(value), children: versionLabelFor(value) }, value)) }) })
|
|
223
223
|
] })
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
226
|
) : void 0,
|
|
227
227
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
228
|
-
|
|
228
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
229
229
|
{
|
|
230
230
|
mode: "desktop",
|
|
231
231
|
label: labels.addAgent,
|
|
@@ -236,7 +236,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
236
236
|
}
|
|
237
237
|
);
|
|
238
238
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
239
|
-
|
|
239
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
240
240
|
{
|
|
241
241
|
mode: "mobile",
|
|
242
242
|
label: labels.addAgent,
|
|
@@ -244,10 +244,10 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
244
244
|
accent: "violet"
|
|
245
245
|
}
|
|
246
246
|
);
|
|
247
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
247
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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) => {
|
|
248
248
|
const modelRecord = models.find((model) => model.id === String(agent.modelId ?? ""));
|
|
249
249
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
250
|
-
|
|
250
|
+
chunk5ETT54QS_js.EntityCard,
|
|
251
251
|
{
|
|
252
252
|
accentGradient: "from-violet-500 to-indigo-700",
|
|
253
253
|
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" }) }),
|
|
@@ -284,7 +284,7 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
284
284
|
);
|
|
285
285
|
}) });
|
|
286
286
|
const renderForm = (initial, onSubmit) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
287
|
-
|
|
287
|
+
chunk5ETT54QS_js.GlassModal,
|
|
288
288
|
{
|
|
289
289
|
open: true,
|
|
290
290
|
onClose: () => {
|
|
@@ -307,13 +307,13 @@ function AgentsConfigPageView({ labels, agents, models, loading, onCreate, onUpd
|
|
|
307
307
|
outputSchema: String(form.get("outputSchema") ?? "").trim() || void 0
|
|
308
308
|
});
|
|
309
309
|
},
|
|
310
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
311
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
312
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
313
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
314
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
315
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
316
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
310
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
311
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name ?? "", required: true }),
|
|
312
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSelect, { name: "modelId", label: labels.model, options: modelOptions, defaultValue: initial.modelId ?? modelOptions[0]?.value ?? "", required: true }),
|
|
313
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "maxTokens", label: String(labels.maxTokens), type: "number", defaultValue: String(initial.maxTokens ?? 2048) }),
|
|
314
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "temperature", label: labels.temperature, type: "number", step: 0.1, min: 0, max: 2, defaultValue: String(initial.temperature ?? 0.2) }),
|
|
315
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, defaultValue: initial.systemPrompt ?? "", rows: 4 }),
|
|
316
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "outputSchema", label: labels.outputSchema, placeholder: labels.outputSchemaPlaceholder, defaultValue: initial.outputSchema ?? "", rows: 4 })
|
|
317
317
|
] })
|
|
318
318
|
}
|
|
319
319
|
);
|
|
@@ -437,7 +437,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
437
437
|
setActiveFilter("all");
|
|
438
438
|
};
|
|
439
439
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
440
|
-
|
|
440
|
+
chunk5ETT54QS_js.HeroSection,
|
|
441
441
|
{
|
|
442
442
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ChatBubbleLeftEllipsisIcon, { className: "h-5 w-5" }),
|
|
443
443
|
label: labels.title,
|
|
@@ -445,7 +445,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
445
445
|
subtitle: labels.subtitle,
|
|
446
446
|
gradient: "from-sky-500 to-blue-700",
|
|
447
447
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
448
|
-
|
|
448
|
+
chunk5ETT54QS_js.SearchBar,
|
|
449
449
|
{
|
|
450
450
|
searchTerm,
|
|
451
451
|
onSearchChange: setSearchTerm,
|
|
@@ -462,8 +462,8 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
462
462
|
count: filterCount,
|
|
463
463
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
464
464
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
465
|
-
agentChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
466
|
-
|
|
465
|
+
agentChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByAgent ?? "Agente", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
466
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
467
467
|
{
|
|
468
468
|
items: agentChipItems,
|
|
469
469
|
selectedIds: selectedAgentIds,
|
|
@@ -473,8 +473,8 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
473
473
|
clearLabel: labels.clear ?? "Limpar"
|
|
474
474
|
}
|
|
475
475
|
) }),
|
|
476
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
477
|
-
|
|
476
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByLocale ?? "Idioma", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
477
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
478
478
|
{
|
|
479
479
|
items: localeChipItems,
|
|
480
480
|
selectedIds: selectedLocales,
|
|
@@ -484,13 +484,13 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
484
484
|
clearLabel: labels.clear ?? "Limpar"
|
|
485
485
|
}
|
|
486
486
|
) }),
|
|
487
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
487
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByActive ?? "Status", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "active", "inactive"].map((value) => activeFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setActiveFilter(value), children: activeLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setActiveFilter(value), children: activeLabelFor(value) }, value)) }) })
|
|
488
488
|
] })
|
|
489
489
|
}
|
|
490
490
|
}
|
|
491
491
|
) : void 0,
|
|
492
492
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
493
|
-
|
|
493
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
494
494
|
{
|
|
495
495
|
mode: "desktop",
|
|
496
496
|
label: labels.addPrompt,
|
|
@@ -501,7 +501,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
501
501
|
}
|
|
502
502
|
);
|
|
503
503
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
504
|
-
|
|
504
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
505
505
|
{
|
|
506
506
|
mode: "mobile",
|
|
507
507
|
label: labels.addPrompt,
|
|
@@ -509,11 +509,11 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
509
509
|
accent: "sky"
|
|
510
510
|
}
|
|
511
511
|
);
|
|
512
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
512
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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: filteredPrompts.map((prompt) => {
|
|
513
513
|
const agentName = agentNameById.get(prompt.agentId) ?? prompt.agentId;
|
|
514
514
|
const key = `${prompt.agentId}:${prompt.locale}:${prompt.version}`;
|
|
515
515
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
516
|
-
|
|
516
|
+
chunk5ETT54QS_js.EntityCard,
|
|
517
517
|
{
|
|
518
518
|
accentGradient: "from-sky-500 to-blue-700",
|
|
519
519
|
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" }) }),
|
|
@@ -547,7 +547,7 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
547
547
|
mobileAction
|
|
548
548
|
] }),
|
|
549
549
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
550
|
-
|
|
550
|
+
chunk5ETT54QS_js.GlassModal,
|
|
551
551
|
{
|
|
552
552
|
open: createOpen,
|
|
553
553
|
onClose: () => setCreateOpen(false),
|
|
@@ -571,11 +571,11 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
571
571
|
});
|
|
572
572
|
setCreateOpen(false);
|
|
573
573
|
},
|
|
574
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
575
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
576
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
574
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
575
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSelect, { name: "agentId", label: labels.agent, options: agentOptions, required: true }),
|
|
576
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSelect, { name: "locale", label: labels.locale, options: LOCALE_OPTIONS, defaultValue: "en" }),
|
|
577
577
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
578
|
-
|
|
578
|
+
chunk5ETT54QS_js.FormSelect,
|
|
579
579
|
{
|
|
580
580
|
name: "isActive",
|
|
581
581
|
label: labels.isActive,
|
|
@@ -583,10 +583,10 @@ function AgentsPromptsPageView({ labels, agents, prompts, loading, onCreate, onA
|
|
|
583
583
|
defaultValue: "true"
|
|
584
584
|
}
|
|
585
585
|
),
|
|
586
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
587
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
588
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
589
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
586
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "reason", label: labels.reason }),
|
|
587
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "systemPrompt", label: labels.systemPrompt, rows: 3 }),
|
|
588
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "userTemplate", label: labels.userTemplate, rows: 3 }),
|
|
589
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "prompt", label: labels.prompt, rows: 6, required: true })
|
|
590
590
|
] })
|
|
591
591
|
}
|
|
592
592
|
)
|
|
@@ -659,7 +659,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
659
659
|
setSelectedToolTypes([]);
|
|
660
660
|
};
|
|
661
661
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
662
|
-
|
|
662
|
+
chunk5ETT54QS_js.HeroSection,
|
|
663
663
|
{
|
|
664
664
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-5 w-5" }),
|
|
665
665
|
label: labels.title,
|
|
@@ -667,7 +667,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
667
667
|
subtitle: labels.subtitle,
|
|
668
668
|
gradient: "from-amber-500 to-orange-700",
|
|
669
669
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
670
|
-
|
|
670
|
+
chunk5ETT54QS_js.SearchBar,
|
|
671
671
|
{
|
|
672
672
|
searchTerm,
|
|
673
673
|
onSearchChange: setSearchTerm,
|
|
@@ -683,8 +683,8 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
683
683
|
title: labels.filtersTitle ?? "Filtros",
|
|
684
684
|
count: filterCount,
|
|
685
685
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
686
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-5", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
687
|
-
|
|
686
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-5", children: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByToolType ?? "Tipo de ferramenta", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
687
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
688
688
|
{
|
|
689
689
|
items: toolTypeChipItems,
|
|
690
690
|
selectedIds: selectedToolTypes,
|
|
@@ -698,7 +698,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
698
698
|
}
|
|
699
699
|
) : void 0,
|
|
700
700
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
701
|
-
|
|
701
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
702
702
|
{
|
|
703
703
|
mode: "desktop",
|
|
704
704
|
label: labels.addTool,
|
|
@@ -709,7 +709,7 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
709
709
|
}
|
|
710
710
|
);
|
|
711
711
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
712
|
-
|
|
712
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
713
713
|
{
|
|
714
714
|
mode: "mobile",
|
|
715
715
|
label: labels.addTool,
|
|
@@ -717,8 +717,8 @@ function AgentsToolDefinitionsPageView({ labels, tools, loading, onCreate, onUpd
|
|
|
717
717
|
accent: "amber"
|
|
718
718
|
}
|
|
719
719
|
);
|
|
720
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
721
|
-
|
|
720
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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: filteredTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
721
|
+
chunk5ETT54QS_js.EntityCard,
|
|
722
722
|
{
|
|
723
723
|
accentGradient: "from-amber-500 to-orange-700",
|
|
724
724
|
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" }) }),
|
|
@@ -807,7 +807,7 @@ function ToolEditor({
|
|
|
807
807
|
setValue((v) => ({ ...v, [key]: next }));
|
|
808
808
|
};
|
|
809
809
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
810
|
-
|
|
810
|
+
chunk5ETT54QS_js.GlassModal,
|
|
811
811
|
{
|
|
812
812
|
open: true,
|
|
813
813
|
onClose,
|
|
@@ -820,9 +820,9 @@ function ToolEditor({
|
|
|
820
820
|
handleSubmit();
|
|
821
821
|
},
|
|
822
822
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
823
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
823
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
824
824
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
825
|
-
|
|
825
|
+
chunk5ETT54QS_js.FormInput,
|
|
826
826
|
{
|
|
827
827
|
label: "Name",
|
|
828
828
|
required: true,
|
|
@@ -832,7 +832,7 @@ function ToolEditor({
|
|
|
832
832
|
}
|
|
833
833
|
),
|
|
834
834
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
835
|
-
|
|
835
|
+
chunk5ETT54QS_js.FormSelect,
|
|
836
836
|
{
|
|
837
837
|
label: "Tool type",
|
|
838
838
|
value: value.toolType,
|
|
@@ -842,7 +842,7 @@ function ToolEditor({
|
|
|
842
842
|
}
|
|
843
843
|
),
|
|
844
844
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
845
|
-
|
|
845
|
+
chunk5ETT54QS_js.FormSelect,
|
|
846
846
|
{
|
|
847
847
|
label: "Enabled",
|
|
848
848
|
value: value.enabled ? "true" : "false",
|
|
@@ -851,7 +851,7 @@ function ToolEditor({
|
|
|
851
851
|
}
|
|
852
852
|
),
|
|
853
853
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
854
|
-
|
|
854
|
+
chunk5ETT54QS_js.FormInput,
|
|
855
855
|
{
|
|
856
856
|
label: "Icon (optional)",
|
|
857
857
|
value: value.icon ?? "",
|
|
@@ -861,7 +861,7 @@ function ToolEditor({
|
|
|
861
861
|
)
|
|
862
862
|
] }),
|
|
863
863
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
864
|
-
|
|
864
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
865
865
|
{
|
|
866
866
|
label: "Description",
|
|
867
867
|
rows: 2,
|
|
@@ -909,7 +909,7 @@ function ParametersEditor({
|
|
|
909
909
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
|
|
910
910
|
parameters.map((param, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[1fr_160px_1fr_110px_auto] items-end gap-2", children: [
|
|
911
911
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
912
|
-
|
|
912
|
+
chunk5ETT54QS_js.FormInput,
|
|
913
913
|
{
|
|
914
914
|
label: "Name",
|
|
915
915
|
value: param.name,
|
|
@@ -918,7 +918,7 @@ function ParametersEditor({
|
|
|
918
918
|
}
|
|
919
919
|
),
|
|
920
920
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
921
|
-
|
|
921
|
+
chunk5ETT54QS_js.FormSelect,
|
|
922
922
|
{
|
|
923
923
|
label: "Type",
|
|
924
924
|
value: param.type,
|
|
@@ -927,7 +927,7 @@ function ParametersEditor({
|
|
|
927
927
|
}
|
|
928
928
|
),
|
|
929
929
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
930
|
-
|
|
930
|
+
chunk5ETT54QS_js.FormInput,
|
|
931
931
|
{
|
|
932
932
|
label: "Description",
|
|
933
933
|
value: param.description,
|
|
@@ -961,9 +961,9 @@ function HandlerConfigEditor({
|
|
|
961
961
|
if (toolType === "http") {
|
|
962
962
|
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: [
|
|
963
963
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "HTTP handler" }),
|
|
964
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
964
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
965
965
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
966
|
-
|
|
966
|
+
chunk5ETT54QS_js.FormSelect,
|
|
967
967
|
{
|
|
968
968
|
label: "Method",
|
|
969
969
|
value: stringProp(config, "method", "GET"),
|
|
@@ -972,7 +972,7 @@ function HandlerConfigEditor({
|
|
|
972
972
|
}
|
|
973
973
|
),
|
|
974
974
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
975
|
-
|
|
975
|
+
chunk5ETT54QS_js.FormInput,
|
|
976
976
|
{
|
|
977
977
|
label: "URL template",
|
|
978
978
|
value: stringProp(config, "url"),
|
|
@@ -982,7 +982,7 @@ function HandlerConfigEditor({
|
|
|
982
982
|
)
|
|
983
983
|
] }),
|
|
984
984
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
985
|
-
|
|
985
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
986
986
|
{
|
|
987
987
|
label: "Headers (JSON)",
|
|
988
988
|
rows: 3,
|
|
@@ -992,7 +992,7 @@ function HandlerConfigEditor({
|
|
|
992
992
|
}
|
|
993
993
|
),
|
|
994
994
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
995
|
-
|
|
995
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
996
996
|
{
|
|
997
997
|
label: "Body template",
|
|
998
998
|
rows: 3,
|
|
@@ -1007,7 +1007,7 @@ function HandlerConfigEditor({
|
|
|
1007
1007
|
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: [
|
|
1008
1008
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Function handler" }),
|
|
1009
1009
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1010
|
-
|
|
1010
|
+
chunk5ETT54QS_js.FormInput,
|
|
1011
1011
|
{
|
|
1012
1012
|
label: "Implementation key",
|
|
1013
1013
|
value: stringProp(config, "implementationKey"),
|
|
@@ -1021,9 +1021,9 @@ function HandlerConfigEditor({
|
|
|
1021
1021
|
if (toolType === "database_query") {
|
|
1022
1022
|
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: [
|
|
1023
1023
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Database query handler" }),
|
|
1024
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1024
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
1025
1025
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1026
|
-
|
|
1026
|
+
chunk5ETT54QS_js.FormInput,
|
|
1027
1027
|
{
|
|
1028
1028
|
label: "Datasource ID",
|
|
1029
1029
|
value: stringProp(config, "datasourceId"),
|
|
@@ -1032,7 +1032,7 @@ function HandlerConfigEditor({
|
|
|
1032
1032
|
}
|
|
1033
1033
|
),
|
|
1034
1034
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1035
|
-
|
|
1035
|
+
chunk5ETT54QS_js.FormInput,
|
|
1036
1036
|
{
|
|
1037
1037
|
label: "Max rows",
|
|
1038
1038
|
type: "number",
|
|
@@ -1042,7 +1042,7 @@ function HandlerConfigEditor({
|
|
|
1042
1042
|
)
|
|
1043
1043
|
] }),
|
|
1044
1044
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1045
|
-
|
|
1045
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
1046
1046
|
{
|
|
1047
1047
|
label: "Query template",
|
|
1048
1048
|
rows: 4,
|
|
@@ -1058,7 +1058,7 @@ function HandlerConfigEditor({
|
|
|
1058
1058
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "Code execution handler" }),
|
|
1059
1059
|
/* @__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." }),
|
|
1060
1060
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1061
|
-
|
|
1061
|
+
chunk5ETT54QS_js.FormSelect,
|
|
1062
1062
|
{
|
|
1063
1063
|
label: "Language",
|
|
1064
1064
|
value: stringProp(config, "language", "javascript"),
|
|
@@ -1070,7 +1070,7 @@ function HandlerConfigEditor({
|
|
|
1070
1070
|
}
|
|
1071
1071
|
),
|
|
1072
1072
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1073
|
-
|
|
1073
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
1074
1074
|
{
|
|
1075
1075
|
label: "Code",
|
|
1076
1076
|
rows: 6,
|
|
@@ -1083,9 +1083,9 @@ function HandlerConfigEditor({
|
|
|
1083
1083
|
}
|
|
1084
1084
|
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: [
|
|
1085
1085
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold text-slate-700 dark:text-slate-200", children: "API call handler" }),
|
|
1086
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1086
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
1087
1087
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1088
|
-
|
|
1088
|
+
chunk5ETT54QS_js.FormInput,
|
|
1089
1089
|
{
|
|
1090
1090
|
label: "URL",
|
|
1091
1091
|
value: stringProp(config, "url"),
|
|
@@ -1093,7 +1093,7 @@ function HandlerConfigEditor({
|
|
|
1093
1093
|
}
|
|
1094
1094
|
),
|
|
1095
1095
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1096
|
-
|
|
1096
|
+
chunk5ETT54QS_js.FormSelect,
|
|
1097
1097
|
{
|
|
1098
1098
|
label: "Auth",
|
|
1099
1099
|
value: stringProp(config, "authType", "bearer"),
|
|
@@ -1107,7 +1107,7 @@ function HandlerConfigEditor({
|
|
|
1107
1107
|
}
|
|
1108
1108
|
),
|
|
1109
1109
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1110
|
-
|
|
1110
|
+
chunk5ETT54QS_js.FormInput,
|
|
1111
1111
|
{
|
|
1112
1112
|
label: "Credential secret id",
|
|
1113
1113
|
value: stringProp(config, "credentialRef"),
|
|
@@ -1282,7 +1282,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1282
1282
|
setExpiryFilter("all");
|
|
1283
1283
|
};
|
|
1284
1284
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
1285
|
-
|
|
1285
|
+
chunk5ETT54QS_js.HeroSection,
|
|
1286
1286
|
{
|
|
1287
1287
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-5 w-5" }),
|
|
1288
1288
|
label: labels.title,
|
|
@@ -1290,7 +1290,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1290
1290
|
subtitle: labels.subtitle,
|
|
1291
1291
|
gradient: "from-fuchsia-500 to-purple-700",
|
|
1292
1292
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1293
|
-
|
|
1293
|
+
chunk5ETT54QS_js.SearchBar,
|
|
1294
1294
|
{
|
|
1295
1295
|
searchTerm,
|
|
1296
1296
|
onSearchChange: setSearchTerm,
|
|
@@ -1307,14 +1307,14 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1307
1307
|
count: filterCount,
|
|
1308
1308
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
1309
1309
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
1310
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1311
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1310
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByStatus ?? "Status", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "enabled", "disabled"].map((value) => enabledFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setEnabledFilter(value), children: statusLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEnabledFilter(value), children: statusLabelFor(value) }, value)) }) }),
|
|
1311
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByExpiry ?? "Validade", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "expiring", "noExpiry"].map((value) => expiryFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setExpiryFilter(value), children: expiryLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setExpiryFilter(value), children: expiryLabelFor(value) }, value)) }) })
|
|
1312
1312
|
] })
|
|
1313
1313
|
}
|
|
1314
1314
|
}
|
|
1315
1315
|
) : void 0,
|
|
1316
1316
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1317
|
-
|
|
1317
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
1318
1318
|
{
|
|
1319
1319
|
mode: "desktop",
|
|
1320
1320
|
label: labels.addRule,
|
|
@@ -1325,7 +1325,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1325
1325
|
}
|
|
1326
1326
|
);
|
|
1327
1327
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
1328
|
-
|
|
1328
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
1329
1329
|
{
|
|
1330
1330
|
mode: "mobile",
|
|
1331
1331
|
label: labels.addRule,
|
|
@@ -1333,8 +1333,8 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1333
1333
|
accent: "fuchsia"
|
|
1334
1334
|
}
|
|
1335
1335
|
);
|
|
1336
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1337
|
-
|
|
1336
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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(
|
|
1337
|
+
chunk5ETT54QS_js.EntityCard,
|
|
1338
1338
|
{
|
|
1339
1339
|
accentGradient: "from-fuchsia-500 to-purple-700",
|
|
1340
1340
|
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" }) }),
|
|
@@ -1371,7 +1371,7 @@ function RulesPageView({ labels, rules, loading, onCreate, onUpdate, onDelete })
|
|
|
1371
1371
|
{
|
|
1372
1372
|
title: labels.createTitle,
|
|
1373
1373
|
saveLabel: labels.save,
|
|
1374
|
-
initial:
|
|
1374
|
+
initial: chunkMQDCUBVW_js.defaultRuleForm(),
|
|
1375
1375
|
onClose: () => setCreateOpen(false),
|
|
1376
1376
|
onSubmit: (value) => {
|
|
1377
1377
|
onCreate(value);
|
|
@@ -1403,7 +1403,7 @@ function RuleEditor({
|
|
|
1403
1403
|
}) {
|
|
1404
1404
|
const [value, setValue] = react.useState(initial);
|
|
1405
1405
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1406
|
-
|
|
1406
|
+
chunk5ETT54QS_js.GlassModal,
|
|
1407
1407
|
{
|
|
1408
1408
|
open: true,
|
|
1409
1409
|
onClose,
|
|
@@ -1415,12 +1415,12 @@ function RuleEditor({
|
|
|
1415
1415
|
event.preventDefault();
|
|
1416
1416
|
onSubmit(value);
|
|
1417
1417
|
},
|
|
1418
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1418
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkMQDCUBVW_js.RuleForm, { value, onChange: setValue })
|
|
1419
1419
|
}
|
|
1420
1420
|
);
|
|
1421
1421
|
}
|
|
1422
1422
|
function ruleToFormValue(rule) {
|
|
1423
|
-
const base =
|
|
1423
|
+
const base = chunkMQDCUBVW_js.defaultRuleForm();
|
|
1424
1424
|
const rawCondition = rule.condition ?? rule.conditions;
|
|
1425
1425
|
const rawAction = pickAction(rule);
|
|
1426
1426
|
return {
|
|
@@ -1557,7 +1557,7 @@ var SAMPLE_DATASOURCES = [
|
|
|
1557
1557
|
];
|
|
1558
1558
|
function getDialectLabel(dialect) {
|
|
1559
1559
|
if (!dialect) return "Unknown";
|
|
1560
|
-
for (const category of
|
|
1560
|
+
for (const category of chunkAMCFAGK3_js.DIALECT_CATEGORIES) {
|
|
1561
1561
|
const found = category.dialects.find((d) => d.value === dialect);
|
|
1562
1562
|
if (found) return found.label;
|
|
1563
1563
|
}
|
|
@@ -1565,12 +1565,12 @@ function getDialectLabel(dialect) {
|
|
|
1565
1565
|
}
|
|
1566
1566
|
function getDialectGradient(dialect) {
|
|
1567
1567
|
if (!dialect) return "from-gray-400 to-gray-500";
|
|
1568
|
-
const category =
|
|
1568
|
+
const category = chunkAMCFAGK3_js.findCategory(dialect);
|
|
1569
1569
|
return category?.gradient ?? "from-gray-400 to-gray-500";
|
|
1570
1570
|
}
|
|
1571
1571
|
function getDialectIcon(dialect) {
|
|
1572
1572
|
if (!dialect) return outline.CircleStackIcon;
|
|
1573
|
-
const category =
|
|
1573
|
+
const category = chunkAMCFAGK3_js.findCategory(dialect);
|
|
1574
1574
|
return category?.icon ?? outline.CircleStackIcon;
|
|
1575
1575
|
}
|
|
1576
1576
|
var DIALECT_LOGO = {
|
|
@@ -1632,7 +1632,7 @@ function DatasourcesPageView({
|
|
|
1632
1632
|
});
|
|
1633
1633
|
}, [datasources, searchTerm, selectedDialects, enabledFilter, readOnlyFilter]);
|
|
1634
1634
|
const dialectChipItems = react.useMemo(
|
|
1635
|
-
() =>
|
|
1635
|
+
() => chunkAMCFAGK3_js.DIALECT_CATEGORIES.flatMap(
|
|
1636
1636
|
(cat) => cat.dialects.map((d) => ({
|
|
1637
1637
|
id: d.value,
|
|
1638
1638
|
name: d.label,
|
|
@@ -1701,7 +1701,7 @@ function DatasourcesPageView({
|
|
|
1701
1701
|
}
|
|
1702
1702
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
1703
1703
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1704
|
-
|
|
1704
|
+
chunk5ETT54QS_js.HeroSection,
|
|
1705
1705
|
{
|
|
1706
1706
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CircleStackIcon, { className: "h-5 w-5" }),
|
|
1707
1707
|
label: labels.title,
|
|
@@ -1709,7 +1709,7 @@ function DatasourcesPageView({
|
|
|
1709
1709
|
subtitle: labels.subtitle,
|
|
1710
1710
|
gradient: "from-amber-500 to-orange-600",
|
|
1711
1711
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1712
|
-
|
|
1712
|
+
chunk5ETT54QS_js.SearchBar,
|
|
1713
1713
|
{
|
|
1714
1714
|
searchTerm,
|
|
1715
1715
|
onSearchChange: setSearchTerm,
|
|
@@ -1726,8 +1726,8 @@ function DatasourcesPageView({
|
|
|
1726
1726
|
count: filterCount,
|
|
1727
1727
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
1728
1728
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
1729
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1730
|
-
|
|
1729
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByDialect ?? labels.dialect ?? "Dialeto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1730
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
1731
1731
|
{
|
|
1732
1732
|
items: dialectChipItems,
|
|
1733
1733
|
selectedIds: selectedDialects,
|
|
@@ -1737,14 +1737,14 @@ function DatasourcesPageView({
|
|
|
1737
1737
|
clearLabel: labels.clear ?? "Limpar"
|
|
1738
1738
|
}
|
|
1739
1739
|
) }),
|
|
1740
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1741
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1740
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByStatus ?? "Status", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "enabled", "disabled"].map((value) => enabledFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setEnabledFilter(value), children: enabledLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setEnabledFilter(value), children: enabledLabelFor(value) }, value)) }) }),
|
|
1741
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByReadOnly ?? "Modo de acesso", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "readOnly", "writable"].map((value) => readOnlyFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setReadOnlyFilter(value), children: readOnlyLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setReadOnlyFilter(value), children: readOnlyLabelFor(value) }, value)) }) })
|
|
1742
1742
|
] })
|
|
1743
1743
|
}
|
|
1744
1744
|
}
|
|
1745
1745
|
) : void 0,
|
|
1746
1746
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1747
|
-
|
|
1747
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
1748
1748
|
{
|
|
1749
1749
|
mode: "desktop",
|
|
1750
1750
|
label: labels.addDatasource,
|
|
@@ -1755,7 +1755,7 @@ function DatasourcesPageView({
|
|
|
1755
1755
|
}
|
|
1756
1756
|
),
|
|
1757
1757
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1758
|
-
|
|
1758
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
1759
1759
|
{
|
|
1760
1760
|
mode: "mobile",
|
|
1761
1761
|
label: labels.addDatasource,
|
|
@@ -1764,7 +1764,7 @@ function DatasourcesPageView({
|
|
|
1764
1764
|
}
|
|
1765
1765
|
),
|
|
1766
1766
|
isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1767
|
-
|
|
1767
|
+
chunk5ETT54QS_js.PageEmptyState,
|
|
1768
1768
|
{
|
|
1769
1769
|
title: labels.emptyTitle,
|
|
1770
1770
|
message: labels.emptyDescription,
|
|
@@ -1778,7 +1778,7 @@ function DatasourcesPageView({
|
|
|
1778
1778
|
const logoSrc = getDialectLogoSrc(ds.dialect);
|
|
1779
1779
|
const iconElement = logoSrc ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-11 w-11 items-center justify-center rounded-lg bg-white shadow-sm ring-1 ring-black/5 dark:bg-white/10 dark:ring-white/10", 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" }) });
|
|
1780
1780
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1781
|
-
|
|
1781
|
+
chunk5ETT54QS_js.EntityCard,
|
|
1782
1782
|
{
|
|
1783
1783
|
accentGradient: gradient,
|
|
1784
1784
|
icon: iconElement,
|
|
@@ -1808,7 +1808,7 @@ function DatasourcesPageView({
|
|
|
1808
1808
|
);
|
|
1809
1809
|
}) }),
|
|
1810
1810
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1811
|
-
|
|
1811
|
+
chunkAMCFAGK3_js.DatasourceModal,
|
|
1812
1812
|
{
|
|
1813
1813
|
open: modalOpen,
|
|
1814
1814
|
onClose: () => setModalOpen(false),
|
|
@@ -1837,7 +1837,7 @@ function AgentsIndexPageView({ labels }) {
|
|
|
1837
1837
|
const filteredTiles = searchTerm.trim() ? allTiles.filter((tile) => tile.title.toLowerCase().includes(searchTerm.trim().toLowerCase())) : allTiles;
|
|
1838
1838
|
const isEmpty = allTiles.length === 0;
|
|
1839
1839
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
1840
|
-
|
|
1840
|
+
chunk5ETT54QS_js.HeroSection,
|
|
1841
1841
|
{
|
|
1842
1842
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
|
|
1843
1843
|
label: labels.title,
|
|
@@ -1845,7 +1845,7 @@ function AgentsIndexPageView({ labels }) {
|
|
|
1845
1845
|
subtitle: labels.subtitle,
|
|
1846
1846
|
gradient: "from-violet-500 to-indigo-700",
|
|
1847
1847
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1848
|
-
|
|
1848
|
+
chunk5ETT54QS_js.SearchBar,
|
|
1849
1849
|
{
|
|
1850
1850
|
searchTerm,
|
|
1851
1851
|
onSearchChange: setSearchTerm,
|
|
@@ -1858,7 +1858,7 @@ function AgentsIndexPageView({ labels }) {
|
|
|
1858
1858
|
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) => {
|
|
1859
1859
|
const Icon = tile.icon;
|
|
1860
1860
|
return /* @__PURE__ */ jsxRuntime.jsx(Link, { href: tile.href, className: "block focus:outline-none", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1861
|
-
|
|
1861
|
+
chunk5ETT54QS_js.EntityCard,
|
|
1862
1862
|
{
|
|
1863
1863
|
accentGradient: tile.gradient,
|
|
1864
1864
|
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" }) }),
|
|
@@ -1876,7 +1876,7 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
|
|
|
1876
1876
|
const selectedWorkflow = workflows[0] ?? null;
|
|
1877
1877
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
|
|
1878
1878
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1879
|
-
|
|
1879
|
+
chunk5ETT54QS_js.SectionHeader,
|
|
1880
1880
|
{
|
|
1881
1881
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.RectangleStackIcon, { className: "h-5 w-5 text-white" }),
|
|
1882
1882
|
title: labels.title,
|
|
@@ -1885,9 +1885,9 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
|
|
|
1885
1885
|
}
|
|
1886
1886
|
),
|
|
1887
1887
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
|
|
1888
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1888
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.add }),
|
|
1889
1889
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1890
|
-
|
|
1890
|
+
chunk5ETT54QS_js.Form,
|
|
1891
1891
|
{
|
|
1892
1892
|
onSubmit: (event) => {
|
|
1893
1893
|
event.preventDefault();
|
|
@@ -1898,32 +1898,32 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
|
|
|
1898
1898
|
onCreate({ name, description });
|
|
1899
1899
|
event.currentTarget.reset();
|
|
1900
1900
|
},
|
|
1901
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1902
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1903
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1904
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1901
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
1902
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "name", label: labels.workflowName, placeholder: labels.workflowNamePlaceholder, required: true }),
|
|
1903
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.workflowDescriptionPlaceholder, rows: 3 }),
|
|
1904
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", children: labels.create }) })
|
|
1905
1905
|
] })
|
|
1906
1906
|
}
|
|
1907
1907
|
)
|
|
1908
1908
|
] }),
|
|
1909
1909
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
|
|
1910
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1911
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1912
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1913
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1914
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1915
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1916
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1917
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1910
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.registry }),
|
|
1911
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.Table, { children: [
|
|
1912
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHead, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.TableRow, { children: [
|
|
1913
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHeader, { children: labels.name }),
|
|
1914
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHeader, { children: labels.description }),
|
|
1915
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHeader, { children: labels.version }),
|
|
1916
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHeader, { children: labels.status }),
|
|
1917
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableHeader, { children: labels.actions })
|
|
1918
1918
|
] }) }),
|
|
1919
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1920
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1921
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1922
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1923
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1924
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1919
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableBody, { children: workflows.map((workflow) => /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.TableRow, { children: [
|
|
1920
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableCell, { children: workflow.name }),
|
|
1921
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableCell, { children: workflow.description }),
|
|
1922
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableCell, { children: String(workflow.version) }),
|
|
1923
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { children: workflow.isDraft ? labels.statusDraft : labels.statusPublished }) }),
|
|
1924
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
1925
1925
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1926
|
-
|
|
1926
|
+
chunk5ETT54QS_js.Form,
|
|
1927
1927
|
{
|
|
1928
1928
|
onSubmit: (event) => {
|
|
1929
1929
|
event.preventDefault();
|
|
@@ -1933,7 +1933,7 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
|
|
|
1933
1933
|
description: workflow.description ?? ""
|
|
1934
1934
|
});
|
|
1935
1935
|
},
|
|
1936
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1936
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.InlineForm, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", outline: true, children: labels.saveMeta }) })
|
|
1937
1937
|
}
|
|
1938
1938
|
),
|
|
1939
1939
|
/* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", color: "sky", onClick: () => onPublish(workflow.id), children: labels.publish })
|
|
@@ -1942,8 +1942,8 @@ function WorkflowsPageView({ labels, workflows, onCreate, onUpdateMeta, onPublis
|
|
|
1942
1942
|
] })
|
|
1943
1943
|
] }),
|
|
1944
1944
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "liquid-surface rounded-2xl p-4 space-y-3", children: [
|
|
1945
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1946
|
-
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(
|
|
1945
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Text, { className: "font-semibold text-slate-900 dark:text-slate-100", children: labels.workspace }),
|
|
1946
|
+
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(chunkIIRS5XZY_js.WorkflowWorkspace, { graph: chunk3T2WGL47_js.adaptWorkflowGraphToUi(selectedWorkflow.graph) }) }) : /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Text, { children: labels.empty })
|
|
1947
1947
|
] })
|
|
1948
1948
|
] });
|
|
1949
1949
|
}
|
|
@@ -1993,7 +1993,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
|
|
|
1993
1993
|
});
|
|
1994
1994
|
const isEmpty = allRuns.length === 0;
|
|
1995
1995
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
1996
|
-
|
|
1996
|
+
chunk5ETT54QS_js.HeroSection,
|
|
1997
1997
|
{
|
|
1998
1998
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ClockIcon, { className: "h-5 w-5" }),
|
|
1999
1999
|
label: labels.title,
|
|
@@ -2001,7 +2001,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
|
|
|
2001
2001
|
subtitle: labels.subtitle,
|
|
2002
2002
|
gradient: "from-indigo-500 to-sky-700",
|
|
2003
2003
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2004
|
-
|
|
2004
|
+
chunk5ETT54QS_js.SearchBar,
|
|
2005
2005
|
{
|
|
2006
2006
|
searchTerm,
|
|
2007
2007
|
onSearchChange: setSearchTerm,
|
|
@@ -2015,7 +2015,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
|
|
|
2015
2015
|
count: statusFilter !== "all" ? 1 : 0,
|
|
2016
2016
|
onClear: statusFilter !== "all" ? () => setStatusFilter("all") : void 0,
|
|
2017
2017
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2018
|
-
|
|
2018
|
+
chunk5ETT54QS_js.FormSelect,
|
|
2019
2019
|
{
|
|
2020
2020
|
name: "statusFilter",
|
|
2021
2021
|
label: labels.filterStatus,
|
|
@@ -2029,8 +2029,8 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
|
|
|
2029
2029
|
) : void 0
|
|
2030
2030
|
}
|
|
2031
2031
|
);
|
|
2032
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2033
|
-
|
|
2032
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : filteredRuns.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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(
|
|
2033
|
+
chunk5ETT54QS_js.EntityCard,
|
|
2034
2034
|
{
|
|
2035
2035
|
accentGradient: "from-indigo-500 to-sky-700",
|
|
2036
2036
|
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" }) }),
|
|
@@ -2062,7 +2062,7 @@ function WorkflowRunsPageView({ labels, runs, loading, onCancel, onReplay, onVie
|
|
|
2062
2062
|
}
|
|
2063
2063
|
function RunTimelinePageView({ labels, entries, loading, runId }) {
|
|
2064
2064
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2065
|
-
|
|
2065
|
+
chunk5ETT54QS_js.HeroSection,
|
|
2066
2066
|
{
|
|
2067
2067
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ClockIcon, { className: "h-5 w-5" }),
|
|
2068
2068
|
label: labels.title,
|
|
@@ -2074,19 +2074,19 @@ function RunTimelinePageView({ labels, entries, loading, runId }) {
|
|
|
2074
2074
|
if (loading) {
|
|
2075
2075
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
2076
2076
|
hero,
|
|
2077
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2077
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {})
|
|
2078
2078
|
] });
|
|
2079
2079
|
}
|
|
2080
2080
|
if (entries.length === 0) {
|
|
2081
2081
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
2082
2082
|
hero,
|
|
2083
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2083
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageEmptyState, { title: labels.empty ?? "", message: "", iconName: "folder-open" })
|
|
2084
2084
|
] });
|
|
2085
2085
|
}
|
|
2086
2086
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
2087
2087
|
hero,
|
|
2088
2088
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2089
|
-
|
|
2089
|
+
chunkMQDCUBVW_js.ExecutionTimelinePanel,
|
|
2090
2090
|
{
|
|
2091
2091
|
entries,
|
|
2092
2092
|
labels
|
|
@@ -2229,7 +2229,7 @@ function ConnectionsPageView({
|
|
|
2229
2229
|
setSelectedRegions([]);
|
|
2230
2230
|
};
|
|
2231
2231
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2232
|
-
|
|
2232
|
+
chunk5ETT54QS_js.HeroSection,
|
|
2233
2233
|
{
|
|
2234
2234
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-5 w-5" }),
|
|
2235
2235
|
label: labels.title,
|
|
@@ -2237,7 +2237,7 @@ function ConnectionsPageView({
|
|
|
2237
2237
|
subtitle: labels.subtitle,
|
|
2238
2238
|
gradient: "from-sky-500 to-indigo-600",
|
|
2239
2239
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2240
|
-
|
|
2240
|
+
chunk5ETT54QS_js.SearchBar,
|
|
2241
2241
|
{
|
|
2242
2242
|
searchTerm,
|
|
2243
2243
|
onSearchChange: setSearchTerm,
|
|
@@ -2254,8 +2254,8 @@ function ConnectionsPageView({
|
|
|
2254
2254
|
count: filterCount,
|
|
2255
2255
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
2256
2256
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
2257
|
-
providerChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2258
|
-
|
|
2257
|
+
providerChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByProvider ?? "Provedor", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2258
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
2259
2259
|
{
|
|
2260
2260
|
items: providerChipItems,
|
|
2261
2261
|
selectedIds: selectedProviders,
|
|
@@ -2265,8 +2265,8 @@ function ConnectionsPageView({
|
|
|
2265
2265
|
clearLabel: labels.clear ?? "Limpar"
|
|
2266
2266
|
}
|
|
2267
2267
|
) }),
|
|
2268
|
-
regionChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2269
|
-
|
|
2268
|
+
regionChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByRegion ?? "Regi\xE3o", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2269
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
2270
2270
|
{
|
|
2271
2271
|
items: regionChipItems,
|
|
2272
2272
|
selectedIds: selectedRegions,
|
|
@@ -2281,7 +2281,7 @@ function ConnectionsPageView({
|
|
|
2281
2281
|
}
|
|
2282
2282
|
) : void 0,
|
|
2283
2283
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2284
|
-
|
|
2284
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2285
2285
|
{
|
|
2286
2286
|
mode: "desktop",
|
|
2287
2287
|
label: labels.add,
|
|
@@ -2292,7 +2292,7 @@ function ConnectionsPageView({
|
|
|
2292
2292
|
}
|
|
2293
2293
|
);
|
|
2294
2294
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2295
|
-
|
|
2295
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2296
2296
|
{
|
|
2297
2297
|
mode: "mobile",
|
|
2298
2298
|
label: labels.add,
|
|
@@ -2300,8 +2300,8 @@ function ConnectionsPageView({
|
|
|
2300
2300
|
accent: "sky"
|
|
2301
2301
|
}
|
|
2302
2302
|
);
|
|
2303
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2304
|
-
|
|
2303
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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(
|
|
2304
|
+
chunk5ETT54QS_js.EntityCard,
|
|
2305
2305
|
{
|
|
2306
2306
|
accentGradient: "from-sky-500 to-indigo-600",
|
|
2307
2307
|
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" }) }),
|
|
@@ -2453,7 +2453,7 @@ function ConnectionEditor({
|
|
|
2453
2453
|
return preset.exampleModels?.join(", ") ?? "";
|
|
2454
2454
|
}, [preset]);
|
|
2455
2455
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2456
|
-
|
|
2456
|
+
chunk5ETT54QS_js.GlassModal,
|
|
2457
2457
|
{
|
|
2458
2458
|
open: true,
|
|
2459
2459
|
onClose,
|
|
@@ -2466,9 +2466,9 @@ function ConnectionEditor({
|
|
|
2466
2466
|
void handleSubmit();
|
|
2467
2467
|
},
|
|
2468
2468
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
2469
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2469
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
2470
2470
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2471
|
-
|
|
2471
|
+
chunk5ETT54QS_js.FormSelect,
|
|
2472
2472
|
{
|
|
2473
2473
|
label: "Provider",
|
|
2474
2474
|
value: value.providerSlug,
|
|
@@ -2479,7 +2479,7 @@ function ConnectionEditor({
|
|
|
2479
2479
|
}
|
|
2480
2480
|
),
|
|
2481
2481
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2482
|
-
|
|
2482
|
+
chunk5ETT54QS_js.FormInput,
|
|
2483
2483
|
{
|
|
2484
2484
|
label: "Display name",
|
|
2485
2485
|
required: true,
|
|
@@ -2489,7 +2489,7 @@ function ConnectionEditor({
|
|
|
2489
2489
|
}
|
|
2490
2490
|
),
|
|
2491
2491
|
preset.needsRegion && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2492
|
-
|
|
2492
|
+
chunk5ETT54QS_js.FormInput,
|
|
2493
2493
|
{
|
|
2494
2494
|
label: "Region",
|
|
2495
2495
|
value: value.region,
|
|
@@ -2498,7 +2498,7 @@ function ConnectionEditor({
|
|
|
2498
2498
|
}
|
|
2499
2499
|
),
|
|
2500
2500
|
preset.needsEndpoint && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2501
|
-
|
|
2501
|
+
chunk5ETT54QS_js.FormInput,
|
|
2502
2502
|
{
|
|
2503
2503
|
label: "Endpoint URL",
|
|
2504
2504
|
value: value.endpoint,
|
|
@@ -2508,7 +2508,7 @@ function ConnectionEditor({
|
|
|
2508
2508
|
)
|
|
2509
2509
|
] }),
|
|
2510
2510
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2511
|
-
|
|
2511
|
+
chunk5ETT54QS_js.FormInput,
|
|
2512
2512
|
{
|
|
2513
2513
|
label: value.credentialRef ? "Rotate API key (leave blank to keep current)" : "API key",
|
|
2514
2514
|
type: "password",
|
|
@@ -2519,7 +2519,7 @@ function ConnectionEditor({
|
|
|
2519
2519
|
}
|
|
2520
2520
|
),
|
|
2521
2521
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2522
|
-
|
|
2522
|
+
chunk5ETT54QS_js.FormInput,
|
|
2523
2523
|
{
|
|
2524
2524
|
label: "Model filter (comma-separated, optional)",
|
|
2525
2525
|
value: value.modelFilter,
|
|
@@ -2531,7 +2531,7 @@ function ConnectionEditor({
|
|
|
2531
2531
|
/* @__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: [
|
|
2532
2532
|
/* @__PURE__ */ jsxRuntime.jsx("summary", { className: "cursor-pointer font-medium text-slate-700 dark:text-slate-200", children: "Advanced config (JSON)" }),
|
|
2533
2533
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2534
|
-
|
|
2534
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
2535
2535
|
{
|
|
2536
2536
|
rows: 4,
|
|
2537
2537
|
value: value.configJson,
|
|
@@ -2652,7 +2652,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2652
2652
|
setDisabledFilter("all");
|
|
2653
2653
|
};
|
|
2654
2654
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2655
|
-
|
|
2655
|
+
chunk5ETT54QS_js.HeroSection,
|
|
2656
2656
|
{
|
|
2657
2657
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.KeyIcon, { className: "h-5 w-5" }),
|
|
2658
2658
|
label: labels.title,
|
|
@@ -2660,7 +2660,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2660
2660
|
subtitle: labels.subtitle,
|
|
2661
2661
|
gradient: "from-rose-500 to-orange-600",
|
|
2662
2662
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2663
|
-
|
|
2663
|
+
chunk5ETT54QS_js.SearchBar,
|
|
2664
2664
|
{
|
|
2665
2665
|
searchTerm,
|
|
2666
2666
|
onSearchChange: setSearchTerm,
|
|
@@ -2677,8 +2677,8 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2677
2677
|
count: filterCount,
|
|
2678
2678
|
onClear: filterCount > 0 ? clearAllFilters : void 0,
|
|
2679
2679
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
2680
|
-
typeChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2681
|
-
|
|
2680
|
+
typeChipItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByType ?? "Tipo", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2681
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
2682
2682
|
{
|
|
2683
2683
|
items: typeChipItems,
|
|
2684
2684
|
selectedIds: selectedTypes,
|
|
@@ -2688,13 +2688,13 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2688
2688
|
clearLabel: labels.clear ?? "Limpar"
|
|
2689
2689
|
}
|
|
2690
2690
|
) }),
|
|
2691
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2691
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSection, { title: labels.filterByStatus ?? "Status", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: ["all", "active", "disabled"].map((value) => disabledFilter === value ? /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "ios-glass-blue", onClick: () => setDisabledFilter(value), children: statusLabelFor(value) }, value) : /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setDisabledFilter(value), children: statusLabelFor(value) }, value)) }) })
|
|
2692
2692
|
] })
|
|
2693
2693
|
}
|
|
2694
2694
|
}
|
|
2695
2695
|
) : void 0,
|
|
2696
2696
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2697
|
-
|
|
2697
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2698
2698
|
{
|
|
2699
2699
|
mode: "desktop",
|
|
2700
2700
|
label: labels.addCredential,
|
|
@@ -2705,7 +2705,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2705
2705
|
}
|
|
2706
2706
|
);
|
|
2707
2707
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2708
|
-
|
|
2708
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2709
2709
|
{
|
|
2710
2710
|
mode: "mobile",
|
|
2711
2711
|
label: labels.addCredential,
|
|
@@ -2713,8 +2713,8 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2713
2713
|
accent: "rose"
|
|
2714
2714
|
}
|
|
2715
2715
|
);
|
|
2716
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2717
|
-
|
|
2716
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_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: filteredCredentials.map((secret) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2717
|
+
chunk5ETT54QS_js.EntityCard,
|
|
2718
2718
|
{
|
|
2719
2719
|
accentGradient: "from-rose-500 to-orange-700",
|
|
2720
2720
|
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" }) }),
|
|
@@ -2722,7 +2722,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2722
2722
|
subtitle: secret.secretType,
|
|
2723
2723
|
status: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Badge, { color: secret.disabled ? "zinc" : "emerald", children: secret.disabled ? labels.disable : "Active" }),
|
|
2724
2724
|
footer: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-2", children: [
|
|
2725
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2725
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.CopyableId, { id: secret.secretId }),
|
|
2726
2726
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
|
|
2727
2727
|
/* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => setRotateFor(secret), children: [
|
|
2728
2728
|
/* @__PURE__ */ jsxRuntime.jsx(outline.ArrowPathIcon, { className: "mr-1 h-3.5 w-3.5" }),
|
|
@@ -2764,7 +2764,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2764
2764
|
mobileAction
|
|
2765
2765
|
] }),
|
|
2766
2766
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2767
|
-
|
|
2767
|
+
chunk5ETT54QS_js.GlassModal,
|
|
2768
2768
|
{
|
|
2769
2769
|
open: createOpen,
|
|
2770
2770
|
onClose: () => setCreateOpen(false),
|
|
@@ -2782,16 +2782,16 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2782
2782
|
onCreate({ name, value, secretType, description });
|
|
2783
2783
|
setCreateOpen(false);
|
|
2784
2784
|
},
|
|
2785
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2786
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2787
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2788
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2789
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2785
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
2786
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "name", label: labels.name, placeholder: labels.namePlaceholder, required: true }),
|
|
2787
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSelect, { name: "secretType", label: labels.type, options: typeOptions, defaultValue: "generic" }),
|
|
2788
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }),
|
|
2789
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "description", label: labels.description, placeholder: labels.descriptionPlaceholder, rows: 2 })
|
|
2790
2790
|
] })
|
|
2791
2791
|
}
|
|
2792
2792
|
),
|
|
2793
2793
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2794
|
-
|
|
2794
|
+
chunk5ETT54QS_js.GlassModal,
|
|
2795
2795
|
{
|
|
2796
2796
|
open: rotateFor !== null,
|
|
2797
2797
|
onClose: () => setRotateFor(null),
|
|
@@ -2806,7 +2806,7 @@ function CredentialsPageView({ labels, credentials, loading, onCreate, onRotate,
|
|
|
2806
2806
|
onRotate(rotateFor, value);
|
|
2807
2807
|
setRotateFor(null);
|
|
2808
2808
|
},
|
|
2809
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2809
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormGrid, { children: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "value", label: labels.value, placeholder: labels.valuePlaceholder, required: true, type: "password" }) })
|
|
2810
2810
|
}
|
|
2811
2811
|
)
|
|
2812
2812
|
] });
|
|
@@ -2859,7 +2859,7 @@ function AgentsWorkspacePageView({
|
|
|
2859
2859
|
}, [agents, selectedId]);
|
|
2860
2860
|
const isEmpty = agents.length === 0;
|
|
2861
2861
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2862
|
-
|
|
2862
|
+
chunk5ETT54QS_js.HeroSection,
|
|
2863
2863
|
{
|
|
2864
2864
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-5 w-5" }),
|
|
2865
2865
|
label: labels.title,
|
|
@@ -2867,7 +2867,7 @@ function AgentsWorkspacePageView({
|
|
|
2867
2867
|
subtitle: labels.subtitle,
|
|
2868
2868
|
gradient: "from-violet-500 to-indigo-700",
|
|
2869
2869
|
toolbar: !isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2870
|
-
|
|
2870
|
+
chunk5ETT54QS_js.SearchBar,
|
|
2871
2871
|
{
|
|
2872
2872
|
searchTerm,
|
|
2873
2873
|
onSearchChange: setSearchTerm,
|
|
@@ -2876,7 +2876,7 @@ function AgentsWorkspacePageView({
|
|
|
2876
2876
|
}
|
|
2877
2877
|
) : void 0,
|
|
2878
2878
|
actions: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2879
|
-
|
|
2879
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2880
2880
|
{
|
|
2881
2881
|
mode: "desktop",
|
|
2882
2882
|
label: labels.addAgent,
|
|
@@ -2887,7 +2887,7 @@ function AgentsWorkspacePageView({
|
|
|
2887
2887
|
}
|
|
2888
2888
|
);
|
|
2889
2889
|
const mobileAction = /* @__PURE__ */ jsxRuntime.jsx(
|
|
2890
|
-
|
|
2890
|
+
chunk5ETT54QS_js.CreateActionButton,
|
|
2891
2891
|
{
|
|
2892
2892
|
mode: "mobile",
|
|
2893
2893
|
label: labels.addAgent,
|
|
@@ -2895,23 +2895,23 @@ function AgentsWorkspacePageView({
|
|
|
2895
2895
|
accent: "violet"
|
|
2896
2896
|
}
|
|
2897
2897
|
);
|
|
2898
|
-
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2899
|
-
|
|
2898
|
+
const content = loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.PageLoadingState, {}) : isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2899
|
+
chunk5ETT54QS_js.PageEmptyState,
|
|
2900
2900
|
{
|
|
2901
2901
|
title: labels.empty,
|
|
2902
2902
|
message: labels.emptyMessage,
|
|
2903
2903
|
iconName: "folder-open"
|
|
2904
2904
|
}
|
|
2905
2905
|
) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-[20rem_minmax(0,1fr)]", children: [
|
|
2906
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:sticky lg:top-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2906
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:sticky lg:top-4", children: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.ListCard, { variant: "glass", children: filteredAgents.map((agent) => {
|
|
2907
2907
|
const id = String(agent.agentId ?? agent.id ?? "");
|
|
2908
2908
|
const active = id === selectedId;
|
|
2909
2909
|
const initials = deriveInitials(String(agent.name ?? id));
|
|
2910
2910
|
const modelName = models.find((m) => m.id === String(agent.modelId ?? ""))?.name ?? String(agent.modelId ?? "");
|
|
2911
2911
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2912
|
-
|
|
2912
|
+
chunk5ETT54QS_js.ListCardItem,
|
|
2913
2913
|
{
|
|
2914
|
-
leading: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2914
|
+
leading: /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Avatar, { tone: active ? "violet" : "slate", initials }),
|
|
2915
2915
|
trailing: agent.activePromptVersion > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Badge, { color: "emerald", children: [
|
|
2916
2916
|
"v",
|
|
2917
2917
|
agent.activePromptVersion
|
|
@@ -2953,7 +2953,7 @@ function AgentsWorkspacePageView({
|
|
|
2953
2953
|
},
|
|
2954
2954
|
String(selectedAgent.agentId ?? selectedAgent.id ?? "")
|
|
2955
2955
|
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
2956
|
-
|
|
2956
|
+
chunk5ETT54QS_js.SectionCard,
|
|
2957
2957
|
{
|
|
2958
2958
|
header: {
|
|
2959
2959
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-4 w-4" }),
|
|
@@ -2961,7 +2961,7 @@ function AgentsWorkspacePageView({
|
|
|
2961
2961
|
subtitle: labels.noSelectionMessage
|
|
2962
2962
|
},
|
|
2963
2963
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2964
|
-
|
|
2964
|
+
chunk5ETT54QS_js.PageEmptyState,
|
|
2965
2965
|
{
|
|
2966
2966
|
title: labels.noSelection,
|
|
2967
2967
|
message: labels.noSelectionMessage,
|
|
@@ -2995,7 +2995,7 @@ function AgentDetail({
|
|
|
2995
2995
|
}) {
|
|
2996
2996
|
const agentId = String(agent.agentId ?? agent.id ?? "");
|
|
2997
2997
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2998
|
-
|
|
2998
|
+
chunk5ETT54QS_js.SectionCard,
|
|
2999
2999
|
{
|
|
3000
3000
|
header: {
|
|
3001
3001
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-4 w-4" }),
|
|
@@ -3020,15 +3020,15 @@ function AgentDetail({
|
|
|
3020
3020
|
]
|
|
3021
3021
|
}
|
|
3022
3022
|
),
|
|
3023
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3024
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3025
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3026
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3027
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3028
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3023
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.Tabs, { defaultValue: "general", className: "w-full", children: [
|
|
3024
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.TabsList, { className: "bg-white/40 dark:bg-white/[0.06]", children: [
|
|
3025
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsTrigger, { value: "general", children: labels.generalTab }),
|
|
3026
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsTrigger, { value: "prompt", children: labels.promptTab }),
|
|
3027
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsTrigger, { value: "tools", children: labels.toolsTab }),
|
|
3028
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsTrigger, { value: "model", children: labels.modelTab })
|
|
3029
3029
|
] }),
|
|
3030
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3031
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3030
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsContent, { value: "general", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(GeneralTab, { agent, labels, onSubmit: (input) => onUpdateAgent(agentId, input) }) }),
|
|
3031
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsContent, { value: "prompt", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3032
3032
|
PromptTab,
|
|
3033
3033
|
{
|
|
3034
3034
|
agent,
|
|
@@ -3038,7 +3038,7 @@ function AgentDetail({
|
|
|
3038
3038
|
onActivate: (promptId) => onActivatePrompt(agentId, promptId)
|
|
3039
3039
|
}
|
|
3040
3040
|
) }),
|
|
3041
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3041
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsContent, { value: "tools", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3042
3042
|
ToolsTab,
|
|
3043
3043
|
{
|
|
3044
3044
|
agent,
|
|
@@ -3048,7 +3048,7 @@ function AgentDetail({
|
|
|
3048
3048
|
onDetach: (toolId) => onDetachTool(agentId, toolId)
|
|
3049
3049
|
}
|
|
3050
3050
|
) }),
|
|
3051
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3051
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.TabsContent, { value: "model", className: "space-y-4 pt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3052
3052
|
ModelTab,
|
|
3053
3053
|
{
|
|
3054
3054
|
agent,
|
|
@@ -3080,7 +3080,7 @@ function GeneralTab({
|
|
|
3080
3080
|
const initialRole = String(agent.role ?? "");
|
|
3081
3081
|
const initialStatus = String(agent.status ?? "draft");
|
|
3082
3082
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3083
|
-
|
|
3083
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3084
3084
|
{
|
|
3085
3085
|
variant: "glass",
|
|
3086
3086
|
header: {
|
|
@@ -3109,10 +3109,10 @@ function GeneralTab({
|
|
|
3109
3109
|
},
|
|
3110
3110
|
className: "space-y-4",
|
|
3111
3111
|
children: [
|
|
3112
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3113
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3112
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
3113
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "name", label: labels.name, defaultValue: initial.name, required: true }),
|
|
3114
3114
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3115
|
-
|
|
3115
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3116
3116
|
{
|
|
3117
3117
|
name: "status",
|
|
3118
3118
|
label: labels.status,
|
|
@@ -3124,9 +3124,9 @@ function GeneralTab({
|
|
|
3124
3124
|
]
|
|
3125
3125
|
}
|
|
3126
3126
|
),
|
|
3127
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3127
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "role", label: labels.role, placeholder: labels.rolePlaceholder, defaultValue: initialRole }),
|
|
3128
3128
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3129
|
-
|
|
3129
|
+
chunk5ETT54QS_js.FormInput,
|
|
3130
3130
|
{
|
|
3131
3131
|
name: "maxTokens",
|
|
3132
3132
|
label: labels.maxTokens,
|
|
@@ -3135,7 +3135,7 @@ function GeneralTab({
|
|
|
3135
3135
|
}
|
|
3136
3136
|
),
|
|
3137
3137
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3138
|
-
|
|
3138
|
+
chunk5ETT54QS_js.FormInput,
|
|
3139
3139
|
{
|
|
3140
3140
|
name: "temperature",
|
|
3141
3141
|
label: labels.temperature,
|
|
@@ -3147,7 +3147,7 @@ function GeneralTab({
|
|
|
3147
3147
|
}
|
|
3148
3148
|
)
|
|
3149
3149
|
] }),
|
|
3150
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3150
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "description", label: labels.description, defaultValue: initialDescription, rows: 3 }),
|
|
3151
3151
|
/* @__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 }) })
|
|
3152
3152
|
]
|
|
3153
3153
|
}
|
|
@@ -3167,7 +3167,7 @@ function PromptTab({
|
|
|
3167
3167
|
const currentSystem = String(agent.systemPrompt ?? "");
|
|
3168
3168
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3169
3169
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3170
|
-
|
|
3170
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3171
3171
|
{
|
|
3172
3172
|
variant: "glass",
|
|
3173
3173
|
header: {
|
|
@@ -3179,7 +3179,7 @@ function PromptTab({
|
|
|
3179
3179
|
}
|
|
3180
3180
|
),
|
|
3181
3181
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3182
|
-
|
|
3182
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3183
3183
|
{
|
|
3184
3184
|
variant: "glass",
|
|
3185
3185
|
header: {
|
|
@@ -3190,10 +3190,10 @@ function PromptTab({
|
|
|
3190
3190
|
/* @__PURE__ */ jsxRuntime.jsx(outline.PlusIcon, { className: "h-4 w-4" }),
|
|
3191
3191
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1.5", children: labels.addPrompt })
|
|
3192
3192
|
] }),
|
|
3193
|
-
children: prompts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.promptVersionsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
3193
|
+
children: prompts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.promptVersionsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.ListCard, { children: prompts.map((prompt) => {
|
|
3194
3194
|
const id = `${prompt.agentId}:${prompt.locale}:${prompt.version}`;
|
|
3195
3195
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3196
|
-
|
|
3196
|
+
chunk5ETT54QS_js.ListCardItem,
|
|
3197
3197
|
{
|
|
3198
3198
|
leading: /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Badge, { color: prompt.isActive ? "emerald" : "zinc", children: [
|
|
3199
3199
|
"v",
|
|
@@ -3211,7 +3211,7 @@ function PromptTab({
|
|
|
3211
3211
|
}
|
|
3212
3212
|
),
|
|
3213
3213
|
addOpen && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3214
|
-
|
|
3214
|
+
chunk5ETT54QS_js.GlassModal,
|
|
3215
3215
|
{
|
|
3216
3216
|
open: true,
|
|
3217
3217
|
onClose: () => setAddOpen(false),
|
|
@@ -3232,10 +3232,10 @@ function PromptTab({
|
|
|
3232
3232
|
});
|
|
3233
3233
|
setAddOpen(false);
|
|
3234
3234
|
},
|
|
3235
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3236
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3235
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
3236
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormSelect, { name: "locale", label: labels.promptLocale, options: LOCALE_OPTIONS2, defaultValue: "en" }),
|
|
3237
3237
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3238
|
-
|
|
3238
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3239
3239
|
{
|
|
3240
3240
|
name: "isActive",
|
|
3241
3241
|
label: labels.promptIsActive,
|
|
@@ -3246,10 +3246,10 @@ function PromptTab({
|
|
|
3246
3246
|
defaultValue: "true"
|
|
3247
3247
|
}
|
|
3248
3248
|
),
|
|
3249
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3250
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3251
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3252
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3249
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormInput, { name: "reason", label: labels.promptReason }),
|
|
3250
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "systemPrompt", label: labels.promptSystemPrompt, rows: 3 }),
|
|
3251
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "userTemplate", label: labels.promptUserTemplate, rows: 3 }),
|
|
3252
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormTextarea, { name: "prompt", label: labels.promptText, rows: 6, required: true })
|
|
3253
3253
|
] })
|
|
3254
3254
|
}
|
|
3255
3255
|
)
|
|
@@ -3272,15 +3272,15 @@ function ToolsTab({
|
|
|
3272
3272
|
const availableTools = tools.filter((tool) => !attachedSet.has(tool.agentToolId));
|
|
3273
3273
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3274
3274
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3275
|
-
|
|
3275
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3276
3276
|
{
|
|
3277
3277
|
variant: "glass",
|
|
3278
3278
|
header: {
|
|
3279
3279
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-4 w-4" }),
|
|
3280
3280
|
title: labels.toolsAttached
|
|
3281
3281
|
},
|
|
3282
|
-
children: attachedTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
3283
|
-
|
|
3282
|
+
children: attachedTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.ListCard, { children: attachedTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3283
|
+
chunk5ETT54QS_js.ListCardItem,
|
|
3284
3284
|
{
|
|
3285
3285
|
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" }) }),
|
|
3286
3286
|
trailing: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", size: "sm", outline: true, onClick: () => onDetach(tool.agentToolId), children: labels.detachTool }),
|
|
@@ -3294,15 +3294,15 @@ function ToolsTab({
|
|
|
3294
3294
|
}
|
|
3295
3295
|
),
|
|
3296
3296
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3297
|
-
|
|
3297
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3298
3298
|
{
|
|
3299
3299
|
variant: "glass",
|
|
3300
3300
|
header: {
|
|
3301
3301
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.WrenchScrewdriverIcon, { className: "h-4 w-4" }),
|
|
3302
3302
|
title: labels.toolsAvailable
|
|
3303
3303
|
},
|
|
3304
|
-
children: availableTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
3305
|
-
|
|
3304
|
+
children: availableTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-500 dark:text-slate-400", children: labels.toolsEmpty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.ListCard, { children: availableTools.map((tool) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3305
|
+
chunk5ETT54QS_js.ListCardItem,
|
|
3306
3306
|
{
|
|
3307
3307
|
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" }) }),
|
|
3308
3308
|
trailing: /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { type: "button", size: "sm", color: "indigo", onClick: () => onAttach(tool.agentToolId), children: [
|
|
@@ -3343,7 +3343,7 @@ function ModelTab({
|
|
|
3343
3343
|
return matches.length > 0 ? matches : connections;
|
|
3344
3344
|
}, [selectedModel, connections]);
|
|
3345
3345
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3346
|
-
|
|
3346
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3347
3347
|
{
|
|
3348
3348
|
variant: "glass",
|
|
3349
3349
|
header: {
|
|
@@ -3364,9 +3364,9 @@ function ModelTab({
|
|
|
3364
3364
|
},
|
|
3365
3365
|
className: "space-y-4",
|
|
3366
3366
|
children: [
|
|
3367
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3367
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
3368
3368
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3369
|
-
|
|
3369
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3370
3370
|
{
|
|
3371
3371
|
label: labels.model,
|
|
3372
3372
|
value: modelId,
|
|
@@ -3375,7 +3375,7 @@ function ModelTab({
|
|
|
3375
3375
|
}
|
|
3376
3376
|
),
|
|
3377
3377
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3378
|
-
|
|
3378
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3379
3379
|
{
|
|
3380
3380
|
label: labels.connection,
|
|
3381
3381
|
value: connectionId,
|
|
@@ -3665,7 +3665,7 @@ function AgentNewWizardPageView({
|
|
|
3665
3665
|
}
|
|
3666
3666
|
const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS));
|
|
3667
3667
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
3668
|
-
|
|
3668
|
+
chunk5ETT54QS_js.HeroSection,
|
|
3669
3669
|
{
|
|
3670
3670
|
icon: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3671
3671
|
"div",
|
|
@@ -3680,7 +3680,7 @@ function AgentNewWizardPageView({
|
|
|
3680
3680
|
subtitle: stepSubtitles[step - 1],
|
|
3681
3681
|
gradient: activePreset.accent,
|
|
3682
3682
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3683
|
-
|
|
3683
|
+
chunk5ETT54QS_js.StepIndicator,
|
|
3684
3684
|
{
|
|
3685
3685
|
accent: "indigo",
|
|
3686
3686
|
currentStep: step - 1,
|
|
@@ -3693,7 +3693,7 @@ function AgentNewWizardPageView({
|
|
|
3693
3693
|
);
|
|
3694
3694
|
function renderStep1() {
|
|
3695
3695
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3696
|
-
|
|
3696
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3697
3697
|
{
|
|
3698
3698
|
variant: "glass",
|
|
3699
3699
|
header: {
|
|
@@ -3709,7 +3709,7 @@ function AgentNewWizardPageView({
|
|
|
3709
3709
|
children: AGENT_PRESETS.map((preset) => {
|
|
3710
3710
|
const selected = preset.id === presetId;
|
|
3711
3711
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3712
|
-
|
|
3712
|
+
chunk5ETT54QS_js.FilterTileButton,
|
|
3713
3713
|
{
|
|
3714
3714
|
isActive: selected,
|
|
3715
3715
|
color: preset.tileColor,
|
|
@@ -3728,7 +3728,7 @@ function AgentNewWizardPageView({
|
|
|
3728
3728
|
}
|
|
3729
3729
|
function renderStep2() {
|
|
3730
3730
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3731
|
-
|
|
3731
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3732
3732
|
{
|
|
3733
3733
|
variant: "glass",
|
|
3734
3734
|
header: {
|
|
@@ -3756,9 +3756,9 @@ function AgentNewWizardPageView({
|
|
|
3756
3756
|
e
|
|
3757
3757
|
)) })
|
|
3758
3758
|
] }),
|
|
3759
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3759
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
3760
3760
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3761
|
-
|
|
3761
|
+
chunk5ETT54QS_js.FormInput,
|
|
3762
3762
|
{
|
|
3763
3763
|
label: labels.name,
|
|
3764
3764
|
value: name,
|
|
@@ -3771,7 +3771,7 @@ function AgentNewWizardPageView({
|
|
|
3771
3771
|
}
|
|
3772
3772
|
),
|
|
3773
3773
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3774
|
-
|
|
3774
|
+
chunk5ETT54QS_js.FormInput,
|
|
3775
3775
|
{
|
|
3776
3776
|
label: labels.role,
|
|
3777
3777
|
value: role,
|
|
@@ -3784,7 +3784,7 @@ function AgentNewWizardPageView({
|
|
|
3784
3784
|
)
|
|
3785
3785
|
] }),
|
|
3786
3786
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3787
|
-
|
|
3787
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
3788
3788
|
{
|
|
3789
3789
|
label: labels.descriptionLabel,
|
|
3790
3790
|
value: description,
|
|
@@ -3802,7 +3802,7 @@ function AgentNewWizardPageView({
|
|
|
3802
3802
|
}
|
|
3803
3803
|
function renderStep3() {
|
|
3804
3804
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3805
|
-
|
|
3805
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3806
3806
|
{
|
|
3807
3807
|
variant: "glass",
|
|
3808
3808
|
header: {
|
|
@@ -3810,9 +3810,9 @@ function AgentNewWizardPageView({
|
|
|
3810
3810
|
subtitle: labels.connectionPickPrompt
|
|
3811
3811
|
},
|
|
3812
3812
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3813
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3813
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
3814
3814
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3815
|
-
|
|
3815
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3816
3816
|
{
|
|
3817
3817
|
label: labels.connectionLabel,
|
|
3818
3818
|
value: connectionId,
|
|
@@ -3825,7 +3825,7 @@ function AgentNewWizardPageView({
|
|
|
3825
3825
|
}
|
|
3826
3826
|
),
|
|
3827
3827
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3828
|
-
|
|
3828
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3829
3829
|
{
|
|
3830
3830
|
label: labels.frameworkLabel,
|
|
3831
3831
|
value: framework,
|
|
@@ -3837,7 +3837,7 @@ function AgentNewWizardPageView({
|
|
|
3837
3837
|
}
|
|
3838
3838
|
),
|
|
3839
3839
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3840
|
-
|
|
3840
|
+
chunk5ETT54QS_js.FormSelect,
|
|
3841
3841
|
{
|
|
3842
3842
|
label: labels.model,
|
|
3843
3843
|
value: modelId,
|
|
@@ -3850,7 +3850,7 @@ function AgentNewWizardPageView({
|
|
|
3850
3850
|
)
|
|
3851
3851
|
] }),
|
|
3852
3852
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3853
|
-
|
|
3853
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
3854
3854
|
{
|
|
3855
3855
|
label: labels.outputSchemaLabel,
|
|
3856
3856
|
value: outputSchema,
|
|
@@ -3869,7 +3869,7 @@ function AgentNewWizardPageView({
|
|
|
3869
3869
|
function renderStep4() {
|
|
3870
3870
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
3871
3871
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3872
|
-
|
|
3872
|
+
chunk5ETT54QS_js.SectionCard,
|
|
3873
3873
|
{
|
|
3874
3874
|
variant: "glass",
|
|
3875
3875
|
header: {
|
|
@@ -4029,7 +4029,7 @@ function AgentNewWizardPageView({
|
|
|
4029
4029
|
}
|
|
4030
4030
|
),
|
|
4031
4031
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4032
|
-
|
|
4032
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4033
4033
|
{
|
|
4034
4034
|
variant: "glass",
|
|
4035
4035
|
header: {
|
|
@@ -4072,7 +4072,7 @@ function AgentNewWizardPageView({
|
|
|
4072
4072
|
}) })
|
|
4073
4073
|
] }),
|
|
4074
4074
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4075
|
-
|
|
4075
|
+
chunk5ETT54QS_js.FormInput,
|
|
4076
4076
|
{
|
|
4077
4077
|
label: labels.tagsLabel,
|
|
4078
4078
|
value: tagsInput,
|
|
@@ -4093,7 +4093,7 @@ function AgentNewWizardPageView({
|
|
|
4093
4093
|
const connectionLabel = connectionId ? connections.find((c) => c.id === connectionId)?.name ?? labels.connectionInline : labels.connectionInline;
|
|
4094
4094
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4095
4095
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4096
|
-
|
|
4096
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4097
4097
|
{
|
|
4098
4098
|
variant: "glass",
|
|
4099
4099
|
header: {
|
|
@@ -4108,7 +4108,7 @@ function AgentNewWizardPageView({
|
|
|
4108
4108
|
}
|
|
4109
4109
|
),
|
|
4110
4110
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4111
|
-
|
|
4111
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4112
4112
|
{
|
|
4113
4113
|
variant: "glass",
|
|
4114
4114
|
header: {
|
|
@@ -4137,7 +4137,7 @@ function AgentNewWizardPageView({
|
|
|
4137
4137
|
}
|
|
4138
4138
|
),
|
|
4139
4139
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4140
|
-
|
|
4140
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4141
4141
|
{
|
|
4142
4142
|
variant: "glass",
|
|
4143
4143
|
header: {
|
|
@@ -4157,7 +4157,7 @@ function AgentNewWizardPageView({
|
|
|
4157
4157
|
}
|
|
4158
4158
|
),
|
|
4159
4159
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
4160
|
-
|
|
4160
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4161
4161
|
{
|
|
4162
4162
|
variant: "glass",
|
|
4163
4163
|
header: {
|
|
@@ -4306,8 +4306,8 @@ function DatasourceNewWizardPageView({
|
|
|
4306
4306
|
const [submitting, setSubmitting] = react.useState(false);
|
|
4307
4307
|
const [touched, setTouched] = react.useState(false);
|
|
4308
4308
|
const [testStatus, setTestStatus] = react.useState("idle");
|
|
4309
|
-
const dialectOption = react.useMemo(() => dialect ?
|
|
4310
|
-
const category = react.useMemo(() => dialect ?
|
|
4309
|
+
const dialectOption = react.useMemo(() => dialect ? chunkAMCFAGK3_js.findDialect(dialect) : null, [dialect]);
|
|
4310
|
+
const category = react.useMemo(() => dialect ? chunkAMCFAGK3_js.findCategory(dialect) : null, [dialect]);
|
|
4311
4311
|
react.useEffect(() => {
|
|
4312
4312
|
if (dialectOption?.defaultPort && (port === "" || /^[0-9]+$/.test(port))) {
|
|
4313
4313
|
setPort(String(dialectOption.defaultPort));
|
|
@@ -4432,7 +4432,7 @@ function DatasourceNewWizardPageView({
|
|
|
4432
4432
|
}));
|
|
4433
4433
|
const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS2));
|
|
4434
4434
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
4435
|
-
|
|
4435
|
+
chunk5ETT54QS_js.HeroSection,
|
|
4436
4436
|
{
|
|
4437
4437
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.CircleStackIcon, { className: "h-5 w-5" }),
|
|
4438
4438
|
label: counter,
|
|
@@ -4440,7 +4440,7 @@ function DatasourceNewWizardPageView({
|
|
|
4440
4440
|
subtitle: stepSubtitles[step - 1] ?? labels.pageSubtitle,
|
|
4441
4441
|
gradient: category?.gradient ?? "from-amber-500 to-orange-600",
|
|
4442
4442
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4443
|
-
|
|
4443
|
+
chunk5ETT54QS_js.StepIndicator,
|
|
4444
4444
|
{
|
|
4445
4445
|
accent: "indigo",
|
|
4446
4446
|
currentStep: step - 1,
|
|
@@ -4452,11 +4452,11 @@ function DatasourceNewWizardPageView({
|
|
|
4452
4452
|
}
|
|
4453
4453
|
);
|
|
4454
4454
|
function renderStep1() {
|
|
4455
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children:
|
|
4455
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children: chunkAMCFAGK3_js.DIALECT_CATEGORIES.map((cat) => {
|
|
4456
4456
|
const color = CATEGORY_COLOR[cat.id] ?? "slate";
|
|
4457
4457
|
const categoryLabel = labels[cat.labelKey] ?? cat.id;
|
|
4458
4458
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4459
|
-
|
|
4459
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4460
4460
|
{
|
|
4461
4461
|
variant: "glass",
|
|
4462
4462
|
header: {
|
|
@@ -4474,7 +4474,7 @@ function DatasourceNewWizardPageView({
|
|
|
4474
4474
|
const selected = opt.value === dialect;
|
|
4475
4475
|
const logoSrc = DIALECT_LOGO_SRC[opt.value.toLowerCase()];
|
|
4476
4476
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4477
|
-
|
|
4477
|
+
chunk5ETT54QS_js.FilterTileButton,
|
|
4478
4478
|
{
|
|
4479
4479
|
isActive: selected,
|
|
4480
4480
|
color,
|
|
@@ -4502,7 +4502,7 @@ function DatasourceNewWizardPageView({
|
|
|
4502
4502
|
case "standard":
|
|
4503
4503
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
4504
4504
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4505
|
-
|
|
4505
|
+
chunk5ETT54QS_js.FormInput,
|
|
4506
4506
|
{
|
|
4507
4507
|
label: labels.fieldHost,
|
|
4508
4508
|
value: host,
|
|
@@ -4515,7 +4515,7 @@ function DatasourceNewWizardPageView({
|
|
|
4515
4515
|
}
|
|
4516
4516
|
),
|
|
4517
4517
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4518
|
-
|
|
4518
|
+
chunk5ETT54QS_js.FormInput,
|
|
4519
4519
|
{
|
|
4520
4520
|
label: labels.fieldPort,
|
|
4521
4521
|
type: "number",
|
|
@@ -4527,7 +4527,7 @@ function DatasourceNewWizardPageView({
|
|
|
4527
4527
|
}
|
|
4528
4528
|
),
|
|
4529
4529
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4530
|
-
|
|
4530
|
+
chunk5ETT54QS_js.FormInput,
|
|
4531
4531
|
{
|
|
4532
4532
|
label: labels.fieldDatabase,
|
|
4533
4533
|
value: database,
|
|
@@ -4540,7 +4540,7 @@ function DatasourceNewWizardPageView({
|
|
|
4540
4540
|
}
|
|
4541
4541
|
),
|
|
4542
4542
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4543
|
-
|
|
4543
|
+
chunk5ETT54QS_js.FormInput,
|
|
4544
4544
|
{
|
|
4545
4545
|
label: labels.fieldUsername,
|
|
4546
4546
|
value: username,
|
|
@@ -4552,7 +4552,7 @@ function DatasourceNewWizardPageView({
|
|
|
4552
4552
|
}
|
|
4553
4553
|
),
|
|
4554
4554
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4555
|
-
|
|
4555
|
+
chunk5ETT54QS_js.FormInput,
|
|
4556
4556
|
{
|
|
4557
4557
|
label: labels.fieldPassword,
|
|
4558
4558
|
type: "password",
|
|
@@ -4565,7 +4565,7 @@ function DatasourceNewWizardPageView({
|
|
|
4565
4565
|
}
|
|
4566
4566
|
),
|
|
4567
4567
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4568
|
-
|
|
4568
|
+
chunk5ETT54QS_js.FormInput,
|
|
4569
4569
|
{
|
|
4570
4570
|
label: labels.fieldSchema,
|
|
4571
4571
|
value: schema,
|
|
@@ -4579,7 +4579,7 @@ function DatasourceNewWizardPageView({
|
|
|
4579
4579
|
] });
|
|
4580
4580
|
case "connection-string":
|
|
4581
4581
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "col-span-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4582
|
-
|
|
4582
|
+
chunk5ETT54QS_js.FormInput,
|
|
4583
4583
|
{
|
|
4584
4584
|
label: labels.fieldConnectionString,
|
|
4585
4585
|
value: connectionString,
|
|
@@ -4594,7 +4594,7 @@ function DatasourceNewWizardPageView({
|
|
|
4594
4594
|
case "cloud-bigquery":
|
|
4595
4595
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
4596
4596
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4597
|
-
|
|
4597
|
+
chunk5ETT54QS_js.FormInput,
|
|
4598
4598
|
{
|
|
4599
4599
|
label: labels.fieldProjectId,
|
|
4600
4600
|
value: projectId,
|
|
@@ -4607,7 +4607,7 @@ function DatasourceNewWizardPageView({
|
|
|
4607
4607
|
}
|
|
4608
4608
|
),
|
|
4609
4609
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4610
|
-
|
|
4610
|
+
chunk5ETT54QS_js.FormInput,
|
|
4611
4611
|
{
|
|
4612
4612
|
label: labels.fieldDataset,
|
|
4613
4613
|
value: dataset,
|
|
@@ -4620,7 +4620,7 @@ function DatasourceNewWizardPageView({
|
|
|
4620
4620
|
}
|
|
4621
4621
|
),
|
|
4622
4622
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "col-span-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4623
|
-
|
|
4623
|
+
chunk5ETT54QS_js.FormInput,
|
|
4624
4624
|
{
|
|
4625
4625
|
label: labels.fieldKeyFile,
|
|
4626
4626
|
value: keyFile,
|
|
@@ -4635,7 +4635,7 @@ function DatasourceNewWizardPageView({
|
|
|
4635
4635
|
case "cloud-snowflake":
|
|
4636
4636
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
4637
4637
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4638
|
-
|
|
4638
|
+
chunk5ETT54QS_js.FormInput,
|
|
4639
4639
|
{
|
|
4640
4640
|
label: labels.fieldAccount,
|
|
4641
4641
|
value: account,
|
|
@@ -4648,7 +4648,7 @@ function DatasourceNewWizardPageView({
|
|
|
4648
4648
|
}
|
|
4649
4649
|
),
|
|
4650
4650
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4651
|
-
|
|
4651
|
+
chunk5ETT54QS_js.FormInput,
|
|
4652
4652
|
{
|
|
4653
4653
|
label: labels.fieldWarehouse,
|
|
4654
4654
|
value: warehouseField,
|
|
@@ -4661,7 +4661,7 @@ function DatasourceNewWizardPageView({
|
|
|
4661
4661
|
}
|
|
4662
4662
|
),
|
|
4663
4663
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4664
|
-
|
|
4664
|
+
chunk5ETT54QS_js.FormInput,
|
|
4665
4665
|
{
|
|
4666
4666
|
label: labels.fieldDatabase,
|
|
4667
4667
|
value: database,
|
|
@@ -4674,7 +4674,7 @@ function DatasourceNewWizardPageView({
|
|
|
4674
4674
|
}
|
|
4675
4675
|
),
|
|
4676
4676
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4677
|
-
|
|
4677
|
+
chunk5ETT54QS_js.FormInput,
|
|
4678
4678
|
{
|
|
4679
4679
|
label: labels.fieldUsername,
|
|
4680
4680
|
value: username,
|
|
@@ -4687,7 +4687,7 @@ function DatasourceNewWizardPageView({
|
|
|
4687
4687
|
}
|
|
4688
4688
|
),
|
|
4689
4689
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4690
|
-
|
|
4690
|
+
chunk5ETT54QS_js.FormInput,
|
|
4691
4691
|
{
|
|
4692
4692
|
label: labels.fieldPassword,
|
|
4693
4693
|
type: "password",
|
|
@@ -4700,7 +4700,7 @@ function DatasourceNewWizardPageView({
|
|
|
4700
4700
|
}
|
|
4701
4701
|
),
|
|
4702
4702
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4703
|
-
|
|
4703
|
+
chunk5ETT54QS_js.FormInput,
|
|
4704
4704
|
{
|
|
4705
4705
|
label: labels.fieldSchema,
|
|
4706
4706
|
value: schema,
|
|
@@ -4715,7 +4715,7 @@ function DatasourceNewWizardPageView({
|
|
|
4715
4715
|
case "cloud-key":
|
|
4716
4716
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
4717
4717
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4718
|
-
|
|
4718
|
+
chunk5ETT54QS_js.FormInput,
|
|
4719
4719
|
{
|
|
4720
4720
|
label: labels.fieldRegion,
|
|
4721
4721
|
value: region,
|
|
@@ -4728,7 +4728,7 @@ function DatasourceNewWizardPageView({
|
|
|
4728
4728
|
}
|
|
4729
4729
|
),
|
|
4730
4730
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4731
|
-
|
|
4731
|
+
chunk5ETT54QS_js.FormInput,
|
|
4732
4732
|
{
|
|
4733
4733
|
label: labels.fieldToken,
|
|
4734
4734
|
type: "password",
|
|
@@ -4742,7 +4742,7 @@ function DatasourceNewWizardPageView({
|
|
|
4742
4742
|
}
|
|
4743
4743
|
),
|
|
4744
4744
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4745
|
-
|
|
4745
|
+
chunk5ETT54QS_js.FormInput,
|
|
4746
4746
|
{
|
|
4747
4747
|
label: labels.fieldBucket,
|
|
4748
4748
|
value: bucket,
|
|
@@ -4757,7 +4757,7 @@ function DatasourceNewWizardPageView({
|
|
|
4757
4757
|
case "vector-key":
|
|
4758
4758
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
4759
4759
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4760
|
-
|
|
4760
|
+
chunk5ETT54QS_js.FormInput,
|
|
4761
4761
|
{
|
|
4762
4762
|
label: labels.fieldApiKey,
|
|
4763
4763
|
type: "password",
|
|
@@ -4771,7 +4771,7 @@ function DatasourceNewWizardPageView({
|
|
|
4771
4771
|
}
|
|
4772
4772
|
),
|
|
4773
4773
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4774
|
-
|
|
4774
|
+
chunk5ETT54QS_js.FormInput,
|
|
4775
4775
|
{
|
|
4776
4776
|
label: labels.fieldEnvironment,
|
|
4777
4777
|
value: environment,
|
|
@@ -4784,7 +4784,7 @@ function DatasourceNewWizardPageView({
|
|
|
4784
4784
|
}
|
|
4785
4785
|
),
|
|
4786
4786
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4787
|
-
|
|
4787
|
+
chunk5ETT54QS_js.FormInput,
|
|
4788
4788
|
{
|
|
4789
4789
|
label: labels.fieldIndex,
|
|
4790
4790
|
value: index,
|
|
@@ -4800,13 +4800,13 @@ function DatasourceNewWizardPageView({
|
|
|
4800
4800
|
}
|
|
4801
4801
|
function renderStep2() {
|
|
4802
4802
|
if (!dialectOption) {
|
|
4803
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4803
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.SectionCard, { variant: "glass", header: { title: labels.wizardStep1Title }, children: [
|
|
4804
4804
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-slate-700 dark:text-slate-200", children: labels.wizardStep1Subtitle }),
|
|
4805
4805
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", outline: true, onClick: () => goToStep(1), children: labels.wizardBack }) })
|
|
4806
4806
|
] });
|
|
4807
4807
|
}
|
|
4808
4808
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4809
|
-
|
|
4809
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4810
4810
|
{
|
|
4811
4811
|
variant: "glass",
|
|
4812
4812
|
header: {
|
|
@@ -4817,7 +4817,7 @@ function DatasourceNewWizardPageView({
|
|
|
4817
4817
|
},
|
|
4818
4818
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4819
4819
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4820
|
-
|
|
4820
|
+
chunk5ETT54QS_js.FormInput,
|
|
4821
4821
|
{
|
|
4822
4822
|
label: labels.fieldName,
|
|
4823
4823
|
value: name,
|
|
@@ -4829,10 +4829,10 @@ function DatasourceNewWizardPageView({
|
|
|
4829
4829
|
required: true
|
|
4830
4830
|
}
|
|
4831
4831
|
),
|
|
4832
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4832
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.FormGrid, { children: renderConnectionFields() }),
|
|
4833
4833
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-6 pt-1", children: [
|
|
4834
4834
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4835
|
-
|
|
4835
|
+
chunk5ETT54QS_js.FormToggle,
|
|
4836
4836
|
{
|
|
4837
4837
|
checked: ssl,
|
|
4838
4838
|
onChange: (v) => {
|
|
@@ -4844,7 +4844,7 @@ function DatasourceNewWizardPageView({
|
|
|
4844
4844
|
}
|
|
4845
4845
|
),
|
|
4846
4846
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4847
|
-
|
|
4847
|
+
chunk5ETT54QS_js.FormToggle,
|
|
4848
4848
|
{
|
|
4849
4849
|
checked: readOnly,
|
|
4850
4850
|
onChange: (v) => {
|
|
@@ -4866,13 +4866,13 @@ function DatasourceNewWizardPageView({
|
|
|
4866
4866
|
onClick: () => void handleTestConnection(),
|
|
4867
4867
|
disabled: testStatus === "testing",
|
|
4868
4868
|
children: testStatus === "testing" ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-2", children: [
|
|
4869
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4869
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.Spinner, { size: "xs" }),
|
|
4870
4870
|
labels.testing
|
|
4871
4871
|
] }) : labels.testConnection
|
|
4872
4872
|
}
|
|
4873
4873
|
),
|
|
4874
|
-
testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4875
|
-
testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4874
|
+
testStatus === "success" && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.StatusBadge, { status: "success", label: labels.connectionSuccess }),
|
|
4875
|
+
testStatus === "failed" && /* @__PURE__ */ jsxRuntime.jsx(chunk5ETT54QS_js.StatusBadge, { status: "error", label: labels.connectionFailed })
|
|
4876
4876
|
] })
|
|
4877
4877
|
] })
|
|
4878
4878
|
}
|
|
@@ -4880,7 +4880,7 @@ function DatasourceNewWizardPageView({
|
|
|
4880
4880
|
}
|
|
4881
4881
|
function renderStep3() {
|
|
4882
4882
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4883
|
-
|
|
4883
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4884
4884
|
{
|
|
4885
4885
|
variant: "glass",
|
|
4886
4886
|
header: {
|
|
@@ -4888,9 +4888,9 @@ function DatasourceNewWizardPageView({
|
|
|
4888
4888
|
subtitle: labels.governanceSectionSubtitle
|
|
4889
4889
|
},
|
|
4890
4890
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4891
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
4891
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
4892
4892
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4893
|
-
|
|
4893
|
+
chunk5ETT54QS_js.FormInput,
|
|
4894
4894
|
{
|
|
4895
4895
|
label: labels.fieldMaxPoolSize,
|
|
4896
4896
|
type: "number",
|
|
@@ -4905,7 +4905,7 @@ function DatasourceNewWizardPageView({
|
|
|
4905
4905
|
}
|
|
4906
4906
|
),
|
|
4907
4907
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4908
|
-
|
|
4908
|
+
chunk5ETT54QS_js.FormInput,
|
|
4909
4909
|
{
|
|
4910
4910
|
label: labels.fieldTimeoutMs,
|
|
4911
4911
|
type: "number",
|
|
@@ -4922,7 +4922,7 @@ function DatasourceNewWizardPageView({
|
|
|
4922
4922
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
4923
4923
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-medium text-gray-500 dark:text-gray-400", children: labels.fieldAllowedTables }),
|
|
4924
4924
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4925
|
-
|
|
4925
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
4926
4926
|
{
|
|
4927
4927
|
items: allowedTablesItems,
|
|
4928
4928
|
selectedIds: allowedTablesSelected,
|
|
@@ -4946,7 +4946,7 @@ function DatasourceNewWizardPageView({
|
|
|
4946
4946
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
4947
4947
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-medium text-gray-500 dark:text-gray-400", children: labels.fieldBlockedColumns }),
|
|
4948
4948
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4949
|
-
|
|
4949
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
4950
4950
|
{
|
|
4951
4951
|
items: blockedColumnsItems,
|
|
4952
4952
|
selectedIds: blockedColumnsSelected,
|
|
@@ -4968,7 +4968,7 @@ function DatasourceNewWizardPageView({
|
|
|
4968
4968
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[11px] text-slate-500 dark:text-slate-400", children: labels.fieldBlockedColumnsHint })
|
|
4969
4969
|
] }),
|
|
4970
4970
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4971
|
-
|
|
4971
|
+
chunk5ETT54QS_js.FormCheckbox,
|
|
4972
4972
|
{
|
|
4973
4973
|
checked: maskPii,
|
|
4974
4974
|
onChange: (v) => {
|
|
@@ -4990,7 +4990,7 @@ function DatasourceNewWizardPageView({
|
|
|
4990
4990
|
const blocked = blockedColumnsSelected;
|
|
4991
4991
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
4992
4992
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4993
|
-
|
|
4993
|
+
chunk5ETT54QS_js.SectionCard,
|
|
4994
4994
|
{
|
|
4995
4995
|
variant: "glass",
|
|
4996
4996
|
header: {
|
|
@@ -5008,7 +5008,7 @@ function DatasourceNewWizardPageView({
|
|
|
5008
5008
|
}
|
|
5009
5009
|
),
|
|
5010
5010
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5011
|
-
|
|
5011
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5012
5012
|
{
|
|
5013
5013
|
variant: "glass",
|
|
5014
5014
|
header: {
|
|
@@ -5028,7 +5028,7 @@ function DatasourceNewWizardPageView({
|
|
|
5028
5028
|
}
|
|
5029
5029
|
),
|
|
5030
5030
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5031
|
-
|
|
5031
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5032
5032
|
{
|
|
5033
5033
|
variant: "glass",
|
|
5034
5034
|
header: {
|
|
@@ -5217,9 +5217,9 @@ function RuleNewWizardPageView({
|
|
|
5217
5217
|
text: "text-fuchsia-700 dark:text-fuchsia-300"
|
|
5218
5218
|
};
|
|
5219
5219
|
const [combinator, setCombinator] = react.useState("and");
|
|
5220
|
-
const [condition, setCondition] = react.useState(
|
|
5220
|
+
const [condition, setCondition] = react.useState(chunkMQDCUBVW_js.defaultRuleCondition());
|
|
5221
5221
|
const [actionTileId, setActionTileId] = react.useState("");
|
|
5222
|
-
const [action, setAction] = react.useState(
|
|
5222
|
+
const [action, setAction] = react.useState(chunkMQDCUBVW_js.defaultRuleAction());
|
|
5223
5223
|
const [validFromDate, setValidFromDate] = react.useState(null);
|
|
5224
5224
|
const [validFromTime, setValidFromTime] = react.useState(null);
|
|
5225
5225
|
const [validUntilDate, setValidUntilDate] = react.useState(null);
|
|
@@ -5348,7 +5348,7 @@ function RuleNewWizardPageView({
|
|
|
5348
5348
|
}));
|
|
5349
5349
|
const counter = labels.wizardStepCounter.replace("{current}", String(step)).replace("{total}", String(TOTAL_STEPS3));
|
|
5350
5350
|
const hero = /* @__PURE__ */ jsxRuntime.jsx(
|
|
5351
|
-
|
|
5351
|
+
chunk5ETT54QS_js.HeroSection,
|
|
5352
5352
|
{
|
|
5353
5353
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.AdjustmentsHorizontalIcon, { className: "h-5 w-5" }),
|
|
5354
5354
|
label: counter,
|
|
@@ -5356,7 +5356,7 @@ function RuleNewWizardPageView({
|
|
|
5356
5356
|
subtitle: stepSubtitles[step - 1] ?? labels.pageSubtitle,
|
|
5357
5357
|
gradient: "from-fuchsia-500 to-purple-700",
|
|
5358
5358
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5359
|
-
|
|
5359
|
+
chunk5ETT54QS_js.StepIndicator,
|
|
5360
5360
|
{
|
|
5361
5361
|
accent: "violet",
|
|
5362
5362
|
currentStep: step - 1,
|
|
@@ -5369,7 +5369,7 @@ function RuleNewWizardPageView({
|
|
|
5369
5369
|
);
|
|
5370
5370
|
function renderStep1() {
|
|
5371
5371
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5372
|
-
|
|
5372
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5373
5373
|
{
|
|
5374
5374
|
variant: "glass",
|
|
5375
5375
|
header: {
|
|
@@ -5378,7 +5378,7 @@ function RuleNewWizardPageView({
|
|
|
5378
5378
|
},
|
|
5379
5379
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
5380
5380
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5381
|
-
|
|
5381
|
+
chunk5ETT54QS_js.FormInput,
|
|
5382
5382
|
{
|
|
5383
5383
|
label: labels.nameLabel,
|
|
5384
5384
|
value: name,
|
|
@@ -5391,7 +5391,7 @@ function RuleNewWizardPageView({
|
|
|
5391
5391
|
}
|
|
5392
5392
|
),
|
|
5393
5393
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5394
|
-
|
|
5394
|
+
chunk5ETT54QS_js.FormTextarea,
|
|
5395
5395
|
{
|
|
5396
5396
|
label: labels.descriptionLabel,
|
|
5397
5397
|
value: description,
|
|
@@ -5427,7 +5427,7 @@ function RuleNewWizardPageView({
|
|
|
5427
5427
|
}
|
|
5428
5428
|
),
|
|
5429
5429
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5430
|
-
|
|
5430
|
+
chunk5ETT54QS_js.FormToggle,
|
|
5431
5431
|
{
|
|
5432
5432
|
checked: enabled,
|
|
5433
5433
|
onChange: (v) => {
|
|
@@ -5444,7 +5444,7 @@ function RuleNewWizardPageView({
|
|
|
5444
5444
|
}
|
|
5445
5445
|
function renderStep2() {
|
|
5446
5446
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5447
|
-
|
|
5447
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5448
5448
|
{
|
|
5449
5449
|
variant: "glass",
|
|
5450
5450
|
header: {
|
|
@@ -5455,7 +5455,7 @@ function RuleNewWizardPageView({
|
|
|
5455
5455
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5456
5456
|
/* @__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 }),
|
|
5457
5457
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5458
|
-
|
|
5458
|
+
chunk5ETT54QS_js.SegmentedControl,
|
|
5459
5459
|
{
|
|
5460
5460
|
segments: [
|
|
5461
5461
|
{ value: "and", label: labels.combinatorAnd },
|
|
@@ -5472,7 +5472,7 @@ function RuleNewWizardPageView({
|
|
|
5472
5472
|
)
|
|
5473
5473
|
] }),
|
|
5474
5474
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5475
|
-
|
|
5475
|
+
chunkMQDCUBVW_js.RuleConditionBuilder,
|
|
5476
5476
|
{
|
|
5477
5477
|
value: condition,
|
|
5478
5478
|
onChange: (next) => {
|
|
@@ -5488,7 +5488,7 @@ function RuleNewWizardPageView({
|
|
|
5488
5488
|
function renderStep3() {
|
|
5489
5489
|
const selectedTile = ACTION_TILES.find((t) => t.id === actionTileId) ?? null;
|
|
5490
5490
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5491
|
-
|
|
5491
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5492
5492
|
{
|
|
5493
5493
|
variant: "glass",
|
|
5494
5494
|
header: {
|
|
@@ -5508,7 +5508,7 @@ function RuleNewWizardPageView({
|
|
|
5508
5508
|
const label = labels[tile.labelKey] ?? tile.id;
|
|
5509
5509
|
const description2 = labels[tile.descriptionKey] ?? "";
|
|
5510
5510
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5511
|
-
|
|
5511
|
+
chunk5ETT54QS_js.FilterTileButton,
|
|
5512
5512
|
{
|
|
5513
5513
|
isActive: selected,
|
|
5514
5514
|
color: tile.color,
|
|
@@ -5526,7 +5526,7 @@ function RuleNewWizardPageView({
|
|
|
5526
5526
|
}
|
|
5527
5527
|
),
|
|
5528
5528
|
selectedTile && /* @__PURE__ */ jsxRuntime.jsx(
|
|
5529
|
-
|
|
5529
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5530
5530
|
{
|
|
5531
5531
|
variant: "glass",
|
|
5532
5532
|
header: {
|
|
@@ -5534,7 +5534,7 @@ function RuleNewWizardPageView({
|
|
|
5534
5534
|
subtitle: labels.actionConfigSubtitle
|
|
5535
5535
|
},
|
|
5536
5536
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5537
|
-
|
|
5537
|
+
chunkMQDCUBVW_js.RuleActionBuilder,
|
|
5538
5538
|
{
|
|
5539
5539
|
value: action,
|
|
5540
5540
|
onChange: (next) => {
|
|
@@ -5551,7 +5551,7 @@ function RuleNewWizardPageView({
|
|
|
5551
5551
|
}
|
|
5552
5552
|
function renderStep4() {
|
|
5553
5553
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5554
|
-
|
|
5554
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5555
5555
|
{
|
|
5556
5556
|
variant: "glass",
|
|
5557
5557
|
header: {
|
|
@@ -5559,12 +5559,12 @@ function RuleNewWizardPageView({
|
|
|
5559
5559
|
subtitle: labels.scheduleSectionSubtitle
|
|
5560
5560
|
},
|
|
5561
5561
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-5", children: [
|
|
5562
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
5562
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunk5ETT54QS_js.FormGrid, { children: [
|
|
5563
5563
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
|
|
5564
5564
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.validFromLabel }),
|
|
5565
5565
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
5566
5566
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5567
|
-
|
|
5567
|
+
chunk5ETT54QS_js.DatePicker,
|
|
5568
5568
|
{
|
|
5569
5569
|
value: validFromDate,
|
|
5570
5570
|
onChange: (d) => {
|
|
@@ -5575,7 +5575,7 @@ function RuleNewWizardPageView({
|
|
|
5575
5575
|
}
|
|
5576
5576
|
),
|
|
5577
5577
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5578
|
-
|
|
5578
|
+
chunk5ETT54QS_js.TimePicker,
|
|
5579
5579
|
{
|
|
5580
5580
|
value: validFromTime,
|
|
5581
5581
|
onChange: (t) => {
|
|
@@ -5591,7 +5591,7 @@ function RuleNewWizardPageView({
|
|
|
5591
5591
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.validUntilLabel }),
|
|
5592
5592
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
5593
5593
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5594
|
-
|
|
5594
|
+
chunk5ETT54QS_js.DatePicker,
|
|
5595
5595
|
{
|
|
5596
5596
|
value: validUntilDate,
|
|
5597
5597
|
onChange: (d) => {
|
|
@@ -5602,7 +5602,7 @@ function RuleNewWizardPageView({
|
|
|
5602
5602
|
}
|
|
5603
5603
|
),
|
|
5604
5604
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5605
|
-
|
|
5605
|
+
chunk5ETT54QS_js.TimePicker,
|
|
5606
5606
|
{
|
|
5607
5607
|
value: validUntilTime,
|
|
5608
5608
|
onChange: (t) => {
|
|
@@ -5616,7 +5616,7 @@ function RuleNewWizardPageView({
|
|
|
5616
5616
|
] })
|
|
5617
5617
|
] }),
|
|
5618
5618
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5619
|
-
|
|
5619
|
+
chunk5ETT54QS_js.FormCheckbox,
|
|
5620
5620
|
{
|
|
5621
5621
|
checked: noExpiry,
|
|
5622
5622
|
onChange: (v) => {
|
|
@@ -5630,7 +5630,7 @@ function RuleNewWizardPageView({
|
|
|
5630
5630
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5631
5631
|
/* @__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 }),
|
|
5632
5632
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5633
|
-
|
|
5633
|
+
chunk5ETT54QS_js.SegmentedControl,
|
|
5634
5634
|
{
|
|
5635
5635
|
segments: [
|
|
5636
5636
|
{ value: "active", label: labels.statusActive },
|
|
@@ -5649,7 +5649,7 @@ function RuleNewWizardPageView({
|
|
|
5649
5649
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
5650
5650
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "block text-xs font-semibold uppercase tracking-wider text-slate-600 dark:text-slate-400", children: labels.tagsLabel }),
|
|
5651
5651
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5652
|
-
|
|
5652
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
5653
5653
|
{
|
|
5654
5654
|
items: tagsItems,
|
|
5655
5655
|
selectedIds: tagsSelected,
|
|
@@ -5673,7 +5673,7 @@ function RuleNewWizardPageView({
|
|
|
5673
5673
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5674
5674
|
/* @__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 }),
|
|
5675
5675
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5676
|
-
|
|
5676
|
+
chunk5ETT54QS_js.SegmentedControl,
|
|
5677
5677
|
{
|
|
5678
5678
|
segments: [
|
|
5679
5679
|
{ value: "one-off", label: labels.recurrenceOneOff },
|
|
@@ -5690,7 +5690,7 @@ function RuleNewWizardPageView({
|
|
|
5690
5690
|
)
|
|
5691
5691
|
] }),
|
|
5692
5692
|
recurrence === "cron" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
5693
|
-
|
|
5693
|
+
chunk5ETT54QS_js.FormInput,
|
|
5694
5694
|
{
|
|
5695
5695
|
label: labels.cronExpressionLabel,
|
|
5696
5696
|
value: cronExpression,
|
|
@@ -5706,7 +5706,7 @@ function RuleNewWizardPageView({
|
|
|
5706
5706
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5707
5707
|
/* @__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 }),
|
|
5708
5708
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5709
|
-
|
|
5709
|
+
chunk5ETT54QS_js.ChipPicker,
|
|
5710
5710
|
{
|
|
5711
5711
|
items: WEEKDAYS.map((d) => ({
|
|
5712
5712
|
id: d.id,
|
|
@@ -5728,7 +5728,7 @@ function RuleNewWizardPageView({
|
|
|
5728
5728
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5729
5729
|
/* @__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 }),
|
|
5730
5730
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5731
|
-
|
|
5731
|
+
chunk5ETT54QS_js.TimePicker,
|
|
5732
5732
|
{
|
|
5733
5733
|
value: recurringTime,
|
|
5734
5734
|
onChange: (t) => {
|
|
@@ -5750,7 +5750,7 @@ function RuleNewWizardPageView({
|
|
|
5750
5750
|
const actionSentence = humanReadableAction(payload.action, labels, ACTION_TILES, actionTileId);
|
|
5751
5751
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
5752
5752
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5753
|
-
|
|
5753
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5754
5754
|
{
|
|
5755
5755
|
variant: "glass",
|
|
5756
5756
|
header: {
|
|
@@ -5776,7 +5776,7 @@ function RuleNewWizardPageView({
|
|
|
5776
5776
|
}
|
|
5777
5777
|
),
|
|
5778
5778
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
5779
|
-
|
|
5779
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5780
5780
|
{
|
|
5781
5781
|
variant: "glass",
|
|
5782
5782
|
header: {
|
|
@@ -5795,7 +5795,7 @@ function RuleNewWizardPageView({
|
|
|
5795
5795
|
}
|
|
5796
5796
|
),
|
|
5797
5797
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
5798
|
-
|
|
5798
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5799
5799
|
{
|
|
5800
5800
|
variant: "glass",
|
|
5801
5801
|
header: {
|
|
@@ -5813,7 +5813,7 @@ function RuleNewWizardPageView({
|
|
|
5813
5813
|
}
|
|
5814
5814
|
),
|
|
5815
5815
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5816
|
-
|
|
5816
|
+
chunk5ETT54QS_js.SectionCard,
|
|
5817
5817
|
{
|
|
5818
5818
|
variant: "glass",
|
|
5819
5819
|
header: {
|
|
@@ -5947,31 +5947,31 @@ function humanReadableAction(action, labels, tiles, actionTileId) {
|
|
|
5947
5947
|
|
|
5948
5948
|
Object.defineProperty(exports, "RolesPageView", {
|
|
5949
5949
|
enumerable: true,
|
|
5950
|
-
get: function () { return
|
|
5950
|
+
get: function () { return chunkIIRS5XZY_js.RolesPageView; }
|
|
5951
5951
|
});
|
|
5952
5952
|
Object.defineProperty(exports, "UsersPageView", {
|
|
5953
5953
|
enumerable: true,
|
|
5954
|
-
get: function () { return
|
|
5954
|
+
get: function () { return chunkIIRS5XZY_js.UsersPageView; }
|
|
5955
5955
|
});
|
|
5956
5956
|
Object.defineProperty(exports, "DIALECT_CATEGORIES", {
|
|
5957
5957
|
enumerable: true,
|
|
5958
|
-
get: function () { return
|
|
5958
|
+
get: function () { return chunkAMCFAGK3_js.DIALECT_CATEGORIES; }
|
|
5959
5959
|
});
|
|
5960
5960
|
Object.defineProperty(exports, "DatasourceFormModal", {
|
|
5961
5961
|
enumerable: true,
|
|
5962
|
-
get: function () { return
|
|
5962
|
+
get: function () { return chunkAMCFAGK3_js.DatasourceFormModal; }
|
|
5963
5963
|
});
|
|
5964
5964
|
Object.defineProperty(exports, "DatasourceModal", {
|
|
5965
5965
|
enumerable: true,
|
|
5966
|
-
get: function () { return
|
|
5966
|
+
get: function () { return chunkAMCFAGK3_js.DatasourceModal; }
|
|
5967
5967
|
});
|
|
5968
5968
|
Object.defineProperty(exports, "findCategory", {
|
|
5969
5969
|
enumerable: true,
|
|
5970
|
-
get: function () { return
|
|
5970
|
+
get: function () { return chunkAMCFAGK3_js.findCategory; }
|
|
5971
5971
|
});
|
|
5972
5972
|
Object.defineProperty(exports, "findDialect", {
|
|
5973
5973
|
enumerable: true,
|
|
5974
|
-
get: function () { return
|
|
5974
|
+
get: function () { return chunkAMCFAGK3_js.findDialect; }
|
|
5975
5975
|
});
|
|
5976
5976
|
exports.AgentNewWizardPageView = AgentNewWizardPageView;
|
|
5977
5977
|
exports.AgentsConfigPageView = AgentsConfigPageView;
|