@datatechsolutions/ui 2.11.78 → 2.11.80
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.d.mts +38 -3
- package/dist/astrlabe/index.d.ts +38 -3
- package/dist/astrlabe/index.js +414 -111
- package/dist/astrlabe/index.js.map +1 -1
- package/dist/astrlabe/index.mjs +309 -7
- package/dist/astrlabe/index.mjs.map +1 -1
- package/dist/astrlabe/workflow-canvas.js +2 -2
- package/dist/astrlabe/workflow-canvas.mjs +1 -1
- package/dist/{chunk-3VHSRL3N.mjs → chunk-J3OYJ44D.mjs} +10 -4
- package/dist/chunk-J3OYJ44D.mjs.map +1 -0
- package/dist/{chunk-BCE3FQVS.js → chunk-M7P2TQ6X.js} +10 -4
- package/dist/chunk-M7P2TQ6X.js.map +1 -0
- package/package.json +1 -1
- package/dist/chunk-3VHSRL3N.mjs.map +0 -1
- package/dist/chunk-BCE3FQVS.js.map +0 -1
package/dist/astrlabe/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
require('../chunk-55H6WZQP.js');
|
|
5
5
|
var chunk5UU3RQRB_js = require('../chunk-5UU3RQRB.js');
|
|
6
|
-
var
|
|
6
|
+
var chunkM7P2TQ6X_js = require('../chunk-M7P2TQ6X.js');
|
|
7
7
|
var chunkTUEYBNWL_js = require('../chunk-TUEYBNWL.js');
|
|
8
8
|
var chunkYXN2K77G_js = require('../chunk-YXN2K77G.js');
|
|
9
9
|
require('../chunk-S7KHTUHA.js');
|
|
@@ -83,7 +83,7 @@ function OutputCard({ label, value }) {
|
|
|
83
83
|
function AgentProfileHeader({ agent, models, t, selectedModelId, setSelectedModelId, selectedFramework, temperature, setTemperature, elo, setElo, onChanged }) {
|
|
84
84
|
const modelName = models.find((model) => model.id === selectedModelId)?.name ?? selectedModelId ?? "\u2014";
|
|
85
85
|
const avatarUrl = agent.avatar;
|
|
86
|
-
const frameworkMeta =
|
|
86
|
+
const frameworkMeta = chunkM7P2TQ6X_js.getFrameworkMeta(selectedFramework);
|
|
87
87
|
const tierInfo = getEloTier(elo);
|
|
88
88
|
const difficultyConfig = {
|
|
89
89
|
beginner: { color: "bg-cyan-100 text-cyan-700 dark:bg-cyan-900/30 dark:text-cyan-400", labelKey: "agentDrawer.tierBeginner" },
|
|
@@ -359,13 +359,13 @@ function AgentCapabilityCard({ elo, setElo, models, selectedModelId, setSelected
|
|
|
359
359
|
] });
|
|
360
360
|
}
|
|
361
361
|
function ConfigTab({ models, t, selectedModelId, setSelectedModelId, selectedFramework, setSelectedFramework, markDirty, connectedProviderTypes }) {
|
|
362
|
-
const frameworkKeys = Object.keys(
|
|
362
|
+
const frameworkKeys = Object.keys(chunkM7P2TQ6X_js.FRAMEWORK_META);
|
|
363
363
|
const hasProviderConstraints = connectedProviderTypes.length > 0;
|
|
364
|
-
const compatibleModels =
|
|
364
|
+
const compatibleModels = chunkM7P2TQ6X_js.getCompatibleModels(models, selectedFramework);
|
|
365
365
|
const handleFrameworkChange = react.useCallback((newFramework) => {
|
|
366
366
|
setSelectedFramework(newFramework);
|
|
367
|
-
if (!
|
|
368
|
-
const compatible =
|
|
367
|
+
if (!chunkM7P2TQ6X_js.isModelCompatibleWithFramework(selectedModelId, newFramework)) {
|
|
368
|
+
const compatible = chunkM7P2TQ6X_js.getCompatibleModels(models, newFramework);
|
|
369
369
|
if (compatible.length > 0) {
|
|
370
370
|
setSelectedModelId(compatible[0].id);
|
|
371
371
|
}
|
|
@@ -376,10 +376,10 @@ function ConfigTab({ models, t, selectedModelId, setSelectedModelId, selectedFra
|
|
|
376
376
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
377
377
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-2 block text-xs font-medium text-gray-500 dark:text-gray-400", children: t("agentDrawer.framework") }),
|
|
378
378
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-1.5", children: frameworkKeys.map((key) => {
|
|
379
|
-
const meta =
|
|
379
|
+
const meta = chunkM7P2TQ6X_js.FRAMEWORK_META[key];
|
|
380
380
|
const isSelected = key === selectedFramework;
|
|
381
|
-
const compatCount =
|
|
382
|
-
const isCompatibleWithProviders = !hasProviderConstraints ||
|
|
381
|
+
const compatCount = chunkM7P2TQ6X_js.getCompatibleModels(models, key).length;
|
|
382
|
+
const isCompatibleWithProviders = !hasProviderConstraints || chunkM7P2TQ6X_js.isFrameworkCompatibleWithProviders(key, connectedProviderTypes);
|
|
383
383
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
384
384
|
"button",
|
|
385
385
|
{
|
|
@@ -411,7 +411,7 @@ function ConfigTab({ models, t, selectedModelId, setSelectedModelId, selectedFra
|
|
|
411
411
|
] }),
|
|
412
412
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-2", children: models.map((model) => {
|
|
413
413
|
const isSelected = model.id === selectedModelId;
|
|
414
|
-
const isCompatible =
|
|
414
|
+
const isCompatible = chunkM7P2TQ6X_js.isModelCompatibleWithFramework(model.id, selectedFramework);
|
|
415
415
|
const { IconComponent, color, providerLabel } = getModelIcon(model.id);
|
|
416
416
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
417
417
|
"button",
|
|
@@ -509,7 +509,7 @@ function PromptTab({ agent, temperature, setTemperature, markDirty, t, promptTex
|
|
|
509
509
|
] });
|
|
510
510
|
}
|
|
511
511
|
function ResultsTab({ agentId, t }) {
|
|
512
|
-
const nodeResults =
|
|
512
|
+
const nodeResults = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodeResults);
|
|
513
513
|
const agentResult = react.useMemo(() => {
|
|
514
514
|
return nodeResults[agentId] ?? null;
|
|
515
515
|
}, [nodeResults, agentId]);
|
|
@@ -599,10 +599,10 @@ function ModelsTab({ modelProviders, selectedProviderId, onSelectProvider, model
|
|
|
599
599
|
const providerModels = modelsByProvider.find((p) => p.provider.id === selectedProviderId);
|
|
600
600
|
if (!providerModels || providerModels.models.length === 0) return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-400 dark:text-gray-500", children: t("agentDrawer.noModelsForProvider") });
|
|
601
601
|
const compatibleModels = providerModels.models.filter(
|
|
602
|
-
(m) =>
|
|
602
|
+
(m) => chunkM7P2TQ6X_js.isModelCompatibleWithFramework(m.id, agentFramework)
|
|
603
603
|
);
|
|
604
604
|
const incompatibleModels = providerModels.models.filter(
|
|
605
|
-
(m) => !
|
|
605
|
+
(m) => !chunkM7P2TQ6X_js.isModelCompatibleWithFramework(m.id, agentFramework)
|
|
606
606
|
);
|
|
607
607
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
608
608
|
/* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-2 block text-xs font-medium text-gray-500 dark:text-gray-400", children: t("agentDrawer.selectModel") }),
|
|
@@ -675,7 +675,7 @@ function ToolsTab({ agentTools, enabledToolIds, onToggle, agentFramework, t }) {
|
|
|
675
675
|
] }),
|
|
676
676
|
tool.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-[10px] text-gray-400 dark:text-gray-500", children: tool.description }),
|
|
677
677
|
tool.compatibleFrameworks && tool.compatibleFrameworks.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 flex flex-wrap gap-0.5", children: tool.compatibleFrameworks.map((framework) => {
|
|
678
|
-
const meta =
|
|
678
|
+
const meta = chunkM7P2TQ6X_js.getFrameworkMeta(framework);
|
|
679
679
|
const isCurrentFw = framework === agentFramework;
|
|
680
680
|
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[8px] font-medium ${isCurrentFw ? meta.badgeColor : "bg-gray-100 text-gray-500 dark:bg-white/5 dark:text-gray-400"}`, children: [
|
|
681
681
|
/* @__PURE__ */ jsxRuntime.jsx(meta.IconComponent, { className: "h-2.5 w-2.5" }),
|
|
@@ -851,9 +851,9 @@ function AdvancedTab({
|
|
|
851
851
|
}
|
|
852
852
|
function AgentModal({ onSaved, onPersist }) {
|
|
853
853
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
|
|
854
|
-
const activeModal =
|
|
855
|
-
const agentData =
|
|
856
|
-
const closeModal =
|
|
854
|
+
const activeModal = chunkM7P2TQ6X_js.useModalStore((s) => s.activeModal);
|
|
855
|
+
const agentData = chunkM7P2TQ6X_js.useModalStore((s) => s.agentData);
|
|
856
|
+
const closeModal = chunkM7P2TQ6X_js.useModalStore((s) => s.closeModal);
|
|
857
857
|
const open = activeModal === "agent";
|
|
858
858
|
const agent = agentData?.agent ?? null;
|
|
859
859
|
const models = agentData?.models ?? [];
|
|
@@ -1191,7 +1191,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
|
|
|
1191
1191
|
const markDirty = useSubworkflowStore((s) => s.markDirty);
|
|
1192
1192
|
const markSaved = useSubworkflowStore((s) => s.markSaved);
|
|
1193
1193
|
const closeModal = useSubworkflowStore((s) => s.closeModal);
|
|
1194
|
-
const agentBehind =
|
|
1194
|
+
const agentBehind = chunkM7P2TQ6X_js.useModalStore((s) => s.activeModal === "agent" ? s.agentData?.agent?.name : null);
|
|
1195
1195
|
const isCreateMode = !tool?.toolId;
|
|
1196
1196
|
const initialGraph = react.useMemo(() => {
|
|
1197
1197
|
const config = tool?.config;
|
|
@@ -1220,9 +1220,9 @@ function SubworkflowModal({ onSaved, onMaximize }) {
|
|
|
1220
1220
|
}, [tool, onSaved, name, category, description, timeoutMs, latestGraphRef, markSaved]);
|
|
1221
1221
|
if (!tool) return null;
|
|
1222
1222
|
const categoryKey = category ?? "external";
|
|
1223
|
-
const gradient = tool.color ??
|
|
1224
|
-
const categoryPill =
|
|
1225
|
-
const IconComponent =
|
|
1223
|
+
const gradient = tool.color ?? chunkM7P2TQ6X_js.CATEGORY_COLORS[categoryKey] ?? chunkM7P2TQ6X_js.CATEGORY_COLORS.external;
|
|
1224
|
+
const categoryPill = chunkM7P2TQ6X_js.CATEGORY_PILL_COLORS[categoryKey] ?? chunkM7P2TQ6X_js.CATEGORY_PILL_COLORS.external;
|
|
1225
|
+
const IconComponent = chunkM7P2TQ6X_js.ICON_MAP[tool.icon ?? ""] ?? outline.ArrowPathRoundedSquareIcon;
|
|
1226
1226
|
const graph = latestGraphRef.current;
|
|
1227
1227
|
const startNode = graph.nodes.find((n) => n.type === "start");
|
|
1228
1228
|
const endNode = graph.nodes.find((n) => n.type === "end");
|
|
@@ -1287,7 +1287,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
|
|
|
1287
1287
|
{
|
|
1288
1288
|
type: "button",
|
|
1289
1289
|
onClick: () => setCategory(cat),
|
|
1290
|
-
className: `rounded-full px-2 py-1 text-[9px] font-semibold transition-all ${cat === category ? `${
|
|
1290
|
+
className: `rounded-full px-2 py-1 text-[9px] font-semibold transition-all ${cat === category ? `${chunkM7P2TQ6X_js.CATEGORY_PILL_COLORS[cat] ?? chunkM7P2TQ6X_js.CATEGORY_PILL_COLORS.external} ring-1 ring-current/20` : "bg-white/30 text-gray-500 hover:bg-white/50 dark:bg-white/5 dark:text-gray-400"}`,
|
|
1291
1291
|
children: cat
|
|
1292
1292
|
},
|
|
1293
1293
|
cat
|
|
@@ -1374,7 +1374,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
|
|
|
1374
1374
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-auto" })
|
|
1375
1375
|
] }),
|
|
1376
1376
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1377
|
-
|
|
1377
|
+
chunkM7P2TQ6X_js.WorkflowCanvas,
|
|
1378
1378
|
{
|
|
1379
1379
|
initialGraph,
|
|
1380
1380
|
agents: [],
|
|
@@ -1390,26 +1390,53 @@ function SubworkflowModal({ onSaved, onMaximize }) {
|
|
|
1390
1390
|
}
|
|
1391
1391
|
function PipelineSettingsModal({ onSave }) {
|
|
1392
1392
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
|
|
1393
|
-
const activeModal =
|
|
1394
|
-
const data =
|
|
1395
|
-
const closeModal =
|
|
1393
|
+
const activeModal = chunkM7P2TQ6X_js.useModalStore((s) => s.activeModal);
|
|
1394
|
+
const data = chunkM7P2TQ6X_js.useModalStore((s) => s.pipelineSettingsData);
|
|
1395
|
+
const closeModal = chunkM7P2TQ6X_js.useModalStore((s) => s.closeModal);
|
|
1396
1396
|
const open = activeModal === "pipeline-settings";
|
|
1397
1397
|
const [nameValue, setNameValue] = react.useState("");
|
|
1398
1398
|
const [descriptionValue, setDescriptionValue] = react.useState("");
|
|
1399
|
+
const [slugValue, setSlugValue] = react.useState("");
|
|
1400
|
+
const [isDraft, setIsDraft] = react.useState(true);
|
|
1401
|
+
const [isActive, setIsActive] = react.useState(true);
|
|
1399
1402
|
const [isSaving, setIsSaving] = react.useState(false);
|
|
1403
|
+
const lifecycleAvailable = react.useMemo(() => {
|
|
1404
|
+
if (!data) return false;
|
|
1405
|
+
return data.isDraft !== void 0 || data.isActive !== void 0 || data.slug !== void 0;
|
|
1406
|
+
}, [data]);
|
|
1400
1407
|
react.useEffect(() => {
|
|
1401
1408
|
if (data) {
|
|
1402
1409
|
setNameValue(data.name);
|
|
1403
1410
|
setDescriptionValue(data.description);
|
|
1411
|
+
setSlugValue(data.slug ?? "");
|
|
1412
|
+
setIsDraft(data.isDraft ?? true);
|
|
1413
|
+
setIsActive(data.isActive ?? true);
|
|
1404
1414
|
}
|
|
1405
1415
|
}, [data]);
|
|
1406
1416
|
const handleSubmit = async (event) => {
|
|
1407
1417
|
event.preventDefault();
|
|
1408
1418
|
const trimmedName = nameValue.trim();
|
|
1409
1419
|
if (!trimmedName) return;
|
|
1420
|
+
const trimmedDescription = descriptionValue.trim();
|
|
1421
|
+
const trimmedSlug = slugValue.trim();
|
|
1422
|
+
const changes = {
|
|
1423
|
+
name: trimmedName,
|
|
1424
|
+
description: trimmedDescription
|
|
1425
|
+
};
|
|
1426
|
+
if (data) {
|
|
1427
|
+
if (trimmedSlug !== (data.slug ?? "")) {
|
|
1428
|
+
changes.slug = trimmedSlug.length > 0 ? trimmedSlug : null;
|
|
1429
|
+
}
|
|
1430
|
+
if (data.isDraft !== void 0 && isDraft !== data.isDraft) {
|
|
1431
|
+
changes.isDraft = isDraft;
|
|
1432
|
+
}
|
|
1433
|
+
if (data.isActive !== void 0 && isActive !== data.isActive) {
|
|
1434
|
+
changes.isActive = isActive;
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1410
1437
|
setIsSaving(true);
|
|
1411
1438
|
try {
|
|
1412
|
-
await onSave(
|
|
1439
|
+
await onSave(changes);
|
|
1413
1440
|
closeModal();
|
|
1414
1441
|
} catch {
|
|
1415
1442
|
} finally {
|
|
@@ -1454,7 +1481,7 @@ function PipelineSettingsModal({ onSave }) {
|
|
|
1454
1481
|
maxWidth: "md",
|
|
1455
1482
|
footer,
|
|
1456
1483
|
onSubmit: handleSubmit,
|
|
1457
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("form", { id: "pipeline-settings-form", onSubmit: handleSubmit, className: "space-y-
|
|
1484
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("form", { id: "pipeline-settings-form", onSubmit: handleSubmit, className: "space-y-5", children: [
|
|
1458
1485
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1459
1486
|
chunkTUEYBNWL_js.FormInput,
|
|
1460
1487
|
{
|
|
@@ -1474,11 +1501,286 @@ function PipelineSettingsModal({ onSave }) {
|
|
|
1474
1501
|
placeholder: t("pipelineDescriptionPlaceholder"),
|
|
1475
1502
|
rows: 4
|
|
1476
1503
|
}
|
|
1477
|
-
)
|
|
1504
|
+
),
|
|
1505
|
+
lifecycleAvailable && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1506
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1507
|
+
chunkTUEYBNWL_js.FormInput,
|
|
1508
|
+
{
|
|
1509
|
+
label: t("pipelineSlug", { _: "Slug" }),
|
|
1510
|
+
value: slugValue,
|
|
1511
|
+
onValueChange: setSlugValue,
|
|
1512
|
+
placeholder: "fuel-pricing",
|
|
1513
|
+
hint: t("pipelineSlugHint", {
|
|
1514
|
+
_: "URL-friendly identifier. Leave blank to use the auto-generated one."
|
|
1515
|
+
})
|
|
1516
|
+
}
|
|
1517
|
+
),
|
|
1518
|
+
/* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "space-y-2 rounded-xl border border-gray-200/60 bg-gray-50/60 p-3 dark:border-white/10 dark:bg-white/5", children: [
|
|
1519
|
+
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "px-1 text-xs font-medium text-gray-600 dark:text-gray-300", children: t("pipelineLifecycle", { _: "Lifecycle" }) }),
|
|
1520
|
+
/* @__PURE__ */ jsxRuntime.jsxs("label", { className: "flex items-center justify-between gap-3 text-sm text-gray-700 dark:text-gray-200", children: [
|
|
1521
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
|
1522
|
+
t("pipelineIsDraft", { _: "Draft mode" }),
|
|
1523
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-2 text-[11px] text-gray-400", children: isDraft ? t("pipelineIsDraftOn", { _: "Editable \u2014 changes do not affect runs." }) : t("pipelineIsDraftOff", { _: "Published \u2014 edits require a new version." }) })
|
|
1524
|
+
] }),
|
|
1525
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1526
|
+
"input",
|
|
1527
|
+
{
|
|
1528
|
+
type: "checkbox",
|
|
1529
|
+
checked: isDraft,
|
|
1530
|
+
onChange: (event) => setIsDraft(event.target.checked),
|
|
1531
|
+
className: "h-4 w-4 rounded border-gray-300 text-indigo-600 focus:ring-indigo-500"
|
|
1532
|
+
}
|
|
1533
|
+
)
|
|
1534
|
+
] }),
|
|
1535
|
+
/* @__PURE__ */ jsxRuntime.jsxs("label", { className: "flex items-center justify-between gap-3 text-sm text-gray-700 dark:text-gray-200", children: [
|
|
1536
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
|
1537
|
+
t("pipelineIsActive", { _: "Active" }),
|
|
1538
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-2 text-[11px] text-gray-400", children: isActive ? t("pipelineIsActiveOn", { _: "Visible in listings and runnable." }) : t("pipelineIsActiveOff", { _: "Archived \u2014 hidden from the default listing." }) })
|
|
1539
|
+
] }),
|
|
1540
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1541
|
+
"input",
|
|
1542
|
+
{
|
|
1543
|
+
type: "checkbox",
|
|
1544
|
+
checked: isActive,
|
|
1545
|
+
onChange: (event) => setIsActive(event.target.checked),
|
|
1546
|
+
className: "h-4 w-4 rounded border-gray-300 text-indigo-600 focus:ring-indigo-500"
|
|
1547
|
+
}
|
|
1548
|
+
)
|
|
1549
|
+
] })
|
|
1550
|
+
] })
|
|
1551
|
+
] })
|
|
1478
1552
|
] })
|
|
1479
1553
|
}
|
|
1480
1554
|
);
|
|
1481
1555
|
}
|
|
1556
|
+
function RunReplayModal({
|
|
1557
|
+
open,
|
|
1558
|
+
onClose,
|
|
1559
|
+
runId,
|
|
1560
|
+
workflowId,
|
|
1561
|
+
originalInputs,
|
|
1562
|
+
onReplay
|
|
1563
|
+
}) {
|
|
1564
|
+
const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
|
|
1565
|
+
const [rows, setRows] = react.useState([]);
|
|
1566
|
+
const [submitting, setSubmitting] = react.useState(false);
|
|
1567
|
+
const [error, setError] = react.useState(null);
|
|
1568
|
+
react.useEffect(() => {
|
|
1569
|
+
if (!open) return;
|
|
1570
|
+
setRows(Object.entries(originalInputs).map(([key, value]) => toRow(key, value)));
|
|
1571
|
+
setError(null);
|
|
1572
|
+
}, [open, originalInputs]);
|
|
1573
|
+
const overrides = react.useMemo(() => {
|
|
1574
|
+
const out = {};
|
|
1575
|
+
for (const row of rows) {
|
|
1576
|
+
if (!row.touched) continue;
|
|
1577
|
+
try {
|
|
1578
|
+
out[row.key] = parseRow(row);
|
|
1579
|
+
} catch (e) {
|
|
1580
|
+
out[`__error__${row.key}`] = e.message;
|
|
1581
|
+
}
|
|
1582
|
+
}
|
|
1583
|
+
return out;
|
|
1584
|
+
}, [rows]);
|
|
1585
|
+
const hasParseError = Object.keys(overrides).some((k) => k.startsWith("__error__"));
|
|
1586
|
+
const updateRow = (index, patch) => {
|
|
1587
|
+
setRows((current) => current.map((r, i) => i === index ? { ...r, ...patch, touched: true } : r));
|
|
1588
|
+
};
|
|
1589
|
+
const resetRow = (index) => {
|
|
1590
|
+
setRows((current) => current.map((r, i) => {
|
|
1591
|
+
if (i !== index) return r;
|
|
1592
|
+
return toRow(r.key, r.original);
|
|
1593
|
+
}));
|
|
1594
|
+
};
|
|
1595
|
+
const handleSubmit = async () => {
|
|
1596
|
+
setError(null);
|
|
1597
|
+
if (hasParseError) {
|
|
1598
|
+
setError(t("replayParseError", { _: "One or more values do not match their declared type." }));
|
|
1599
|
+
return;
|
|
1600
|
+
}
|
|
1601
|
+
setSubmitting(true);
|
|
1602
|
+
try {
|
|
1603
|
+
const cleaned = {};
|
|
1604
|
+
for (const row of rows) {
|
|
1605
|
+
if (!row.touched) continue;
|
|
1606
|
+
cleaned[row.key] = parseRow(row);
|
|
1607
|
+
}
|
|
1608
|
+
await onReplay(cleaned);
|
|
1609
|
+
onClose();
|
|
1610
|
+
} catch (e) {
|
|
1611
|
+
setError(e.message);
|
|
1612
|
+
} finally {
|
|
1613
|
+
setSubmitting(false);
|
|
1614
|
+
}
|
|
1615
|
+
};
|
|
1616
|
+
const footer = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-2", children: [
|
|
1617
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-[11px] text-gray-400", children: [
|
|
1618
|
+
"run ",
|
|
1619
|
+
/* @__PURE__ */ jsxRuntime.jsx("code", { children: runId.slice(0, 8) }),
|
|
1620
|
+
" \xB7 wf ",
|
|
1621
|
+
/* @__PURE__ */ jsxRuntime.jsx("code", { children: workflowId.slice(0, 8) })
|
|
1622
|
+
] }),
|
|
1623
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
1624
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1625
|
+
"button",
|
|
1626
|
+
{
|
|
1627
|
+
type: "button",
|
|
1628
|
+
onClick: onClose,
|
|
1629
|
+
className: "rounded-lg border border-gray-200/50 px-4 py-2 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-100/50 dark:border-white/10 dark:text-gray-300 dark:hover:bg-white/5",
|
|
1630
|
+
children: t("cancel")
|
|
1631
|
+
}
|
|
1632
|
+
),
|
|
1633
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1634
|
+
chunkTUEYBNWL_js.Button,
|
|
1635
|
+
{
|
|
1636
|
+
type: "submit",
|
|
1637
|
+
form: "run-replay-form",
|
|
1638
|
+
color: "ios-glass-blue",
|
|
1639
|
+
loading: submitting,
|
|
1640
|
+
children: [
|
|
1641
|
+
/* @__PURE__ */ jsxRuntime.jsx(outline.ArrowPathIcon, { className: "h-4 w-4" }),
|
|
1642
|
+
t("replay", { _: "Replay" })
|
|
1643
|
+
]
|
|
1644
|
+
}
|
|
1645
|
+
)
|
|
1646
|
+
] })
|
|
1647
|
+
] });
|
|
1648
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1649
|
+
chunkTUEYBNWL_js.GlassModal,
|
|
1650
|
+
{
|
|
1651
|
+
open,
|
|
1652
|
+
onClose,
|
|
1653
|
+
title: t("replayTitle", { _: "Replay run" }),
|
|
1654
|
+
subtitle: t("replaySubtitle", { _: "Tweak any input below and re-execute. Untouched keys keep their original value." }),
|
|
1655
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ArrowPathIcon, { className: "h-5 w-5 text-white" }),
|
|
1656
|
+
gradient: "from-sky-500 to-indigo-600",
|
|
1657
|
+
maxWidth: "lg",
|
|
1658
|
+
footer,
|
|
1659
|
+
onSubmit: (event) => {
|
|
1660
|
+
event.preventDefault();
|
|
1661
|
+
void handleSubmit();
|
|
1662
|
+
},
|
|
1663
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1664
|
+
"form",
|
|
1665
|
+
{
|
|
1666
|
+
id: "run-replay-form",
|
|
1667
|
+
onSubmit: (event) => {
|
|
1668
|
+
event.preventDefault();
|
|
1669
|
+
void handleSubmit();
|
|
1670
|
+
},
|
|
1671
|
+
className: "space-y-3",
|
|
1672
|
+
children: [
|
|
1673
|
+
rows.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-400", children: t("replayNoInputs", { _: "This run had no input variables \u2014 replaying will execute the workflow as-is." }) }) : rows.map((row, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1674
|
+
RowEditor,
|
|
1675
|
+
{
|
|
1676
|
+
row,
|
|
1677
|
+
onChange: (patch) => updateRow(index, patch),
|
|
1678
|
+
onReset: () => resetRow(index)
|
|
1679
|
+
},
|
|
1680
|
+
row.key
|
|
1681
|
+
)),
|
|
1682
|
+
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "rounded-lg border border-red-400/40 bg-red-500/10 p-2 text-xs text-red-600 dark:text-red-300", children: error })
|
|
1683
|
+
]
|
|
1684
|
+
}
|
|
1685
|
+
)
|
|
1686
|
+
}
|
|
1687
|
+
);
|
|
1688
|
+
}
|
|
1689
|
+
function RowEditor({
|
|
1690
|
+
row,
|
|
1691
|
+
onChange,
|
|
1692
|
+
onReset
|
|
1693
|
+
}) {
|
|
1694
|
+
const isJson = row.kind === "json";
|
|
1695
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-gray-200/60 bg-gray-50/60 p-3 dark:border-white/10 dark:bg-white/5", children: [
|
|
1696
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex items-center justify-between gap-2", children: [
|
|
1697
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-xs text-gray-700 dark:text-gray-200", children: row.key }),
|
|
1698
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
1699
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "rounded-full bg-gray-200/60 px-2 py-0.5 text-[10px] uppercase tracking-wider text-gray-600 dark:bg-white/10 dark:text-gray-300", children: row.kind }),
|
|
1700
|
+
row.touched && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1701
|
+
"button",
|
|
1702
|
+
{
|
|
1703
|
+
type: "button",
|
|
1704
|
+
onClick: onReset,
|
|
1705
|
+
className: "text-[11px] text-indigo-600 hover:text-indigo-500 dark:text-indigo-400",
|
|
1706
|
+
children: "reset"
|
|
1707
|
+
}
|
|
1708
|
+
)
|
|
1709
|
+
] })
|
|
1710
|
+
] }),
|
|
1711
|
+
row.kind === "boolean" ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1712
|
+
"select",
|
|
1713
|
+
{
|
|
1714
|
+
value: row.value,
|
|
1715
|
+
onChange: (event) => onChange({ value: event.target.value }),
|
|
1716
|
+
className: "w-full rounded-lg border border-gray-200/50 bg-white/70 px-3 py-2 text-sm text-gray-900 dark:border-white/10 dark:bg-gray-800/70 dark:text-gray-100",
|
|
1717
|
+
children: [
|
|
1718
|
+
/* @__PURE__ */ jsxRuntime.jsx("option", { value: "true", children: "true" }),
|
|
1719
|
+
/* @__PURE__ */ jsxRuntime.jsx("option", { value: "false", children: "false" })
|
|
1720
|
+
]
|
|
1721
|
+
}
|
|
1722
|
+
) : isJson ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1723
|
+
chunkTUEYBNWL_js.FormTextarea,
|
|
1724
|
+
{
|
|
1725
|
+
value: row.value,
|
|
1726
|
+
onValueChange: (v) => onChange({ value: v }),
|
|
1727
|
+
rows: 4,
|
|
1728
|
+
className: "font-mono"
|
|
1729
|
+
}
|
|
1730
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1731
|
+
chunkTUEYBNWL_js.FormInput,
|
|
1732
|
+
{
|
|
1733
|
+
type: row.kind === "number" ? "number" : "text",
|
|
1734
|
+
value: row.value,
|
|
1735
|
+
onValueChange: (v) => onChange({ value: v })
|
|
1736
|
+
}
|
|
1737
|
+
)
|
|
1738
|
+
] });
|
|
1739
|
+
}
|
|
1740
|
+
function toRow(key, value) {
|
|
1741
|
+
if (value === null || value === void 0) {
|
|
1742
|
+
return { key, value: "", kind: "string", touched: false, original: value };
|
|
1743
|
+
}
|
|
1744
|
+
if (typeof value === "boolean") {
|
|
1745
|
+
return { key, value: value ? "true" : "false", kind: "boolean", touched: false, original: value };
|
|
1746
|
+
}
|
|
1747
|
+
if (typeof value === "number") {
|
|
1748
|
+
return { key, value: String(value), kind: "number", touched: false, original: value };
|
|
1749
|
+
}
|
|
1750
|
+
if (typeof value === "string") {
|
|
1751
|
+
return { key, value, kind: "string", touched: false, original: value };
|
|
1752
|
+
}
|
|
1753
|
+
return {
|
|
1754
|
+
key,
|
|
1755
|
+
value: JSON.stringify(value, null, 2),
|
|
1756
|
+
kind: "json",
|
|
1757
|
+
touched: false,
|
|
1758
|
+
original: value
|
|
1759
|
+
};
|
|
1760
|
+
}
|
|
1761
|
+
function parseRow(row) {
|
|
1762
|
+
switch (row.kind) {
|
|
1763
|
+
case "string":
|
|
1764
|
+
return row.value;
|
|
1765
|
+
case "number": {
|
|
1766
|
+
const n = Number(row.value);
|
|
1767
|
+
if (!Number.isFinite(n)) {
|
|
1768
|
+
throw new Error(`'${row.key}' must be a number, got '${row.value}'`);
|
|
1769
|
+
}
|
|
1770
|
+
return n;
|
|
1771
|
+
}
|
|
1772
|
+
case "boolean":
|
|
1773
|
+
return row.value === "true";
|
|
1774
|
+
case "json": {
|
|
1775
|
+
if (row.value.trim().length === 0) return null;
|
|
1776
|
+
try {
|
|
1777
|
+
return JSON.parse(row.value);
|
|
1778
|
+
} catch (e) {
|
|
1779
|
+
throw new Error(`'${row.key}' is not valid JSON: ${e.message}`);
|
|
1780
|
+
}
|
|
1781
|
+
}
|
|
1782
|
+
}
|
|
1783
|
+
}
|
|
1482
1784
|
|
|
1483
1785
|
// src/astrlabe/components/rules/types.ts
|
|
1484
1786
|
var RULE_STATUS_OPTIONS = ["draft", "active", "archived"];
|
|
@@ -2266,8 +2568,8 @@ function CollapsibleSection({ title, icon, colorClass, defaultOpen = true, count
|
|
|
2266
2568
|
] });
|
|
2267
2569
|
}
|
|
2268
2570
|
function LogicNodeItemCard({ item, translationFunction }) {
|
|
2269
|
-
const IconComponent =
|
|
2270
|
-
const gradient =
|
|
2571
|
+
const IconComponent = chunkM7P2TQ6X_js.LOGIC_ICON_MAP[item.nodeType];
|
|
2572
|
+
const gradient = chunkM7P2TQ6X_js.LOGIC_NODE_GRADIENTS[item.nodeType] ?? "from-gray-400 to-gray-500";
|
|
2271
2573
|
const defaultConfig = chunkC7BI5LQ6_js.createDefaultLogicNodeConfig(item.nodeType);
|
|
2272
2574
|
const configJson = defaultConfig ? JSON.stringify(defaultConfig) : void 0;
|
|
2273
2575
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -2525,8 +2827,8 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], mod
|
|
|
2525
2827
|
limit: entity.defaultLimit
|
|
2526
2828
|
});
|
|
2527
2829
|
const dsLogo = getDatasourceLogo(entity.id);
|
|
2528
|
-
const EntityIcon =
|
|
2529
|
-
const entityGradient =
|
|
2830
|
+
const EntityIcon = chunkM7P2TQ6X_js.getEntityIcon(entity.id);
|
|
2831
|
+
const entityGradient = chunkM7P2TQ6X_js.getEntityGradient(entity.id);
|
|
2530
2832
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2531
2833
|
"div",
|
|
2532
2834
|
{
|
|
@@ -2924,9 +3226,9 @@ function formatDuration2(durationMs) {
|
|
|
2924
3226
|
}
|
|
2925
3227
|
function RunPanel({ open, onClose, onRun, onStop }) {
|
|
2926
3228
|
const translations = chunkYXN2K77G_js.useTranslations("agents.workflow.runPanel");
|
|
2927
|
-
const nodes =
|
|
2928
|
-
const isRunning =
|
|
2929
|
-
const nodeResults =
|
|
3229
|
+
const nodes = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodes);
|
|
3230
|
+
const isRunning = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.isRunning);
|
|
3231
|
+
const nodeResults = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodeResults);
|
|
2930
3232
|
const startNode = nodes.find((node) => node.type === "start");
|
|
2931
3233
|
const hasEndNode = nodes.some((node) => node.type === "end");
|
|
2932
3234
|
const hasValidStartConfig = Boolean(
|
|
@@ -3214,8 +3516,8 @@ function inferVariables(config, nodeType) {
|
|
|
3214
3516
|
}
|
|
3215
3517
|
function VariableInspector({ open, onClose }) {
|
|
3216
3518
|
const translations = chunkYXN2K77G_js.useTranslations("agents.workflow.variableInspector");
|
|
3217
|
-
const nodes =
|
|
3218
|
-
const edges =
|
|
3519
|
+
const nodes = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodes);
|
|
3520
|
+
const edges = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.edges);
|
|
3219
3521
|
const [expandedNodes, setExpandedNodes] = react.useState(/* @__PURE__ */ new Set());
|
|
3220
3522
|
const toggleNodeExpansion = react.useCallback((nodeId) => {
|
|
3221
3523
|
setExpandedNodes((current) => {
|
|
@@ -3277,8 +3579,8 @@ function VariableInspector({ open, onClose }) {
|
|
|
3277
3579
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-gray-500 dark:text-gray-400", children: translations("noNodes") })
|
|
3278
3580
|
] }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "divide-y divide-gray-100 dark:divide-gray-800", children: nodeVariableEntries.map((entry) => {
|
|
3279
3581
|
const isExpanded = expandedNodes.has(entry.nodeId);
|
|
3280
|
-
const IconComponent =
|
|
3281
|
-
const gradient =
|
|
3582
|
+
const IconComponent = chunkM7P2TQ6X_js.LOGIC_ICON_MAP[entry.nodeType];
|
|
3583
|
+
const gradient = chunkM7P2TQ6X_js.LOGIC_NODE_GRADIENTS[entry.nodeType] ?? "from-gray-400 to-gray-500";
|
|
3282
3584
|
const inputVariables = entry.variables.filter((variable) => variable.direction === "input");
|
|
3283
3585
|
const outputVariables = entry.variables.filter((variable) => variable.direction === "output");
|
|
3284
3586
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-testid": `variable-node-${entry.nodeId}`, children: [
|
|
@@ -3344,7 +3646,7 @@ function RunInputDialog({
|
|
|
3344
3646
|
onRun
|
|
3345
3647
|
}) {
|
|
3346
3648
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow.runInputDialog");
|
|
3347
|
-
const nodes =
|
|
3649
|
+
const nodes = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodes);
|
|
3348
3650
|
const [values, setValues] = react.useState({});
|
|
3349
3651
|
const inputVariableNames = react.useMemo(() => {
|
|
3350
3652
|
const storeStartNode = nodes.find((node) => node.type === "start");
|
|
@@ -3425,8 +3727,8 @@ function PreviewPanel({ open, onClose, workflowId, loadRuns }) {
|
|
|
3425
3727
|
const [isLoadingRuns, setIsLoadingRuns] = react.useState(false);
|
|
3426
3728
|
const [selectedRun, setSelectedRun] = react.useState(null);
|
|
3427
3729
|
const [selectedNode, setSelectedNode] = react.useState(null);
|
|
3428
|
-
const isRunning =
|
|
3429
|
-
const nodeResults =
|
|
3730
|
+
const isRunning = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.isRunning);
|
|
3731
|
+
const nodeResults = chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodeResults);
|
|
3430
3732
|
const refreshRuns = react.useCallback(async () => {
|
|
3431
3733
|
setIsLoadingRuns(true);
|
|
3432
3734
|
try {
|
|
@@ -3582,7 +3884,7 @@ var AutoSaveWorkspace = react.memo(function AutoSaveWorkspace2({
|
|
|
3582
3884
|
onAutoSaveGraph(graph);
|
|
3583
3885
|
}, [onAutoSaveGraph, onGraphSnapshot]);
|
|
3584
3886
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3585
|
-
|
|
3887
|
+
chunkM7P2TQ6X_js.Workspace,
|
|
3586
3888
|
{
|
|
3587
3889
|
...workspaceProps,
|
|
3588
3890
|
onGraphChange: handleGraphChange
|
|
@@ -3953,14 +4255,14 @@ function DslImportModal({ open, onClose, onImport }) {
|
|
|
3953
4255
|
}
|
|
3954
4256
|
|
|
3955
4257
|
// src/astrlabe/store/selectors.ts
|
|
3956
|
-
var useCanUndo = () =>
|
|
3957
|
-
var useCanRedo = () =>
|
|
3958
|
-
var useHasCopied = () =>
|
|
3959
|
-
var useContextMenu = () =>
|
|
3960
|
-
var useEditingNodeId = () =>
|
|
3961
|
-
var useSelectedNodeCount = () =>
|
|
3962
|
-
var useIsRunning = () =>
|
|
3963
|
-
var useNodeResults = () =>
|
|
4258
|
+
var useCanUndo = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.past.length > 0);
|
|
4259
|
+
var useCanRedo = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.future.length > 0);
|
|
4260
|
+
var useHasCopied = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.clipboard !== null);
|
|
4261
|
+
var useContextMenu = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.contextMenu);
|
|
4262
|
+
var useEditingNodeId = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.editingNodeId);
|
|
4263
|
+
var useSelectedNodeCount = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodes.filter((node) => node.selected).length);
|
|
4264
|
+
var useIsRunning = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.isRunning);
|
|
4265
|
+
var useNodeResults = () => chunkM7P2TQ6X_js.useWorkflowStore((state) => state.nodeResults);
|
|
3964
4266
|
var DEFAULT_MAX_HISTORY = 50;
|
|
3965
4267
|
function useUndoRedo(nodes, edges, setNodes, setEdges, maxHistory = DEFAULT_MAX_HISTORY) {
|
|
3966
4268
|
const pastRef = react.useRef([]);
|
|
@@ -4256,239 +4558,239 @@ Object.defineProperty(exports, "validateWorkflowGraph", {
|
|
|
4256
4558
|
});
|
|
4257
4559
|
Object.defineProperty(exports, "AgentFlowNode", {
|
|
4258
4560
|
enumerable: true,
|
|
4259
|
-
get: function () { return
|
|
4561
|
+
get: function () { return chunkM7P2TQ6X_js.AgentFlowNode; }
|
|
4260
4562
|
});
|
|
4261
4563
|
Object.defineProperty(exports, "AgentToolFlowNode", {
|
|
4262
4564
|
enumerable: true,
|
|
4263
|
-
get: function () { return
|
|
4565
|
+
get: function () { return chunkM7P2TQ6X_js.AgentToolFlowNode; }
|
|
4264
4566
|
});
|
|
4265
4567
|
Object.defineProperty(exports, "AnswerFlowNode", {
|
|
4266
4568
|
enumerable: true,
|
|
4267
|
-
get: function () { return
|
|
4569
|
+
get: function () { return chunkM7P2TQ6X_js.AnswerFlowNode; }
|
|
4268
4570
|
});
|
|
4269
4571
|
Object.defineProperty(exports, "AnthropicIcon", {
|
|
4270
4572
|
enumerable: true,
|
|
4271
|
-
get: function () { return
|
|
4573
|
+
get: function () { return chunkM7P2TQ6X_js.AnthropicIcon; }
|
|
4272
4574
|
});
|
|
4273
4575
|
Object.defineProperty(exports, "CodeFlowNode", {
|
|
4274
4576
|
enumerable: true,
|
|
4275
|
-
get: function () { return
|
|
4577
|
+
get: function () { return chunkM7P2TQ6X_js.CodeFlowNode; }
|
|
4276
4578
|
});
|
|
4277
4579
|
Object.defineProperty(exports, "CrewAIIcon", {
|
|
4278
4580
|
enumerable: true,
|
|
4279
|
-
get: function () { return
|
|
4581
|
+
get: function () { return chunkM7P2TQ6X_js.CrewAIIcon; }
|
|
4280
4582
|
});
|
|
4281
4583
|
Object.defineProperty(exports, "DocumentExtractorFlowNode", {
|
|
4282
4584
|
enumerable: true,
|
|
4283
|
-
get: function () { return
|
|
4585
|
+
get: function () { return chunkM7P2TQ6X_js.DocumentExtractorFlowNode; }
|
|
4284
4586
|
});
|
|
4285
4587
|
Object.defineProperty(exports, "EndFlowNode", {
|
|
4286
4588
|
enumerable: true,
|
|
4287
|
-
get: function () { return
|
|
4589
|
+
get: function () { return chunkM7P2TQ6X_js.EndFlowNode; }
|
|
4288
4590
|
});
|
|
4289
4591
|
Object.defineProperty(exports, "EntityFlowNode", {
|
|
4290
4592
|
enumerable: true,
|
|
4291
|
-
get: function () { return
|
|
4593
|
+
get: function () { return chunkM7P2TQ6X_js.EntityFlowNode; }
|
|
4292
4594
|
});
|
|
4293
4595
|
Object.defineProperty(exports, "FRAMEWORK_META", {
|
|
4294
4596
|
enumerable: true,
|
|
4295
|
-
get: function () { return
|
|
4597
|
+
get: function () { return chunkM7P2TQ6X_js.FRAMEWORK_META; }
|
|
4296
4598
|
});
|
|
4297
4599
|
Object.defineProperty(exports, "GoogleADKIcon", {
|
|
4298
4600
|
enumerable: true,
|
|
4299
|
-
get: function () { return
|
|
4601
|
+
get: function () { return chunkM7P2TQ6X_js.GoogleADKIcon; }
|
|
4300
4602
|
});
|
|
4301
4603
|
Object.defineProperty(exports, "GroupFlowNode", {
|
|
4302
4604
|
enumerable: true,
|
|
4303
|
-
get: function () { return
|
|
4605
|
+
get: function () { return chunkM7P2TQ6X_js.GroupFlowNode; }
|
|
4304
4606
|
});
|
|
4305
4607
|
Object.defineProperty(exports, "HttpRequestFlowNode", {
|
|
4306
4608
|
enumerable: true,
|
|
4307
|
-
get: function () { return
|
|
4609
|
+
get: function () { return chunkM7P2TQ6X_js.HttpRequestFlowNode; }
|
|
4308
4610
|
});
|
|
4309
4611
|
Object.defineProperty(exports, "IfElseFlowNode", {
|
|
4310
4612
|
enumerable: true,
|
|
4311
|
-
get: function () { return
|
|
4613
|
+
get: function () { return chunkM7P2TQ6X_js.IfElseFlowNode; }
|
|
4312
4614
|
});
|
|
4313
4615
|
Object.defineProperty(exports, "IterationFlowNode", {
|
|
4314
4616
|
enumerable: true,
|
|
4315
|
-
get: function () { return
|
|
4617
|
+
get: function () { return chunkM7P2TQ6X_js.IterationFlowNode; }
|
|
4316
4618
|
});
|
|
4317
4619
|
Object.defineProperty(exports, "IterationStartFlowNode", {
|
|
4318
4620
|
enumerable: true,
|
|
4319
|
-
get: function () { return
|
|
4621
|
+
get: function () { return chunkM7P2TQ6X_js.IterationStartFlowNode; }
|
|
4320
4622
|
});
|
|
4321
4623
|
Object.defineProperty(exports, "KnowledgeBaseFlowNode", {
|
|
4322
4624
|
enumerable: true,
|
|
4323
|
-
get: function () { return
|
|
4625
|
+
get: function () { return chunkM7P2TQ6X_js.KnowledgeBaseFlowNode; }
|
|
4324
4626
|
});
|
|
4325
4627
|
Object.defineProperty(exports, "LOGIC_ICON_MAP", {
|
|
4326
4628
|
enumerable: true,
|
|
4327
|
-
get: function () { return
|
|
4629
|
+
get: function () { return chunkM7P2TQ6X_js.LOGIC_ICON_MAP; }
|
|
4328
4630
|
});
|
|
4329
4631
|
Object.defineProperty(exports, "LOGIC_NODE_BADGE_COLORS", {
|
|
4330
4632
|
enumerable: true,
|
|
4331
|
-
get: function () { return
|
|
4633
|
+
get: function () { return chunkM7P2TQ6X_js.LOGIC_NODE_BADGE_COLORS; }
|
|
4332
4634
|
});
|
|
4333
4635
|
Object.defineProperty(exports, "LOGIC_NODE_GRADIENTS", {
|
|
4334
4636
|
enumerable: true,
|
|
4335
|
-
get: function () { return
|
|
4637
|
+
get: function () { return chunkM7P2TQ6X_js.LOGIC_NODE_GRADIENTS; }
|
|
4336
4638
|
});
|
|
4337
4639
|
Object.defineProperty(exports, "LOGIC_NODE_HANDLE_COLORS", {
|
|
4338
4640
|
enumerable: true,
|
|
4339
|
-
get: function () { return
|
|
4641
|
+
get: function () { return chunkM7P2TQ6X_js.LOGIC_NODE_HANDLE_COLORS; }
|
|
4340
4642
|
});
|
|
4341
4643
|
Object.defineProperty(exports, "LangChainIcon", {
|
|
4342
4644
|
enumerable: true,
|
|
4343
|
-
get: function () { return
|
|
4645
|
+
get: function () { return chunkM7P2TQ6X_js.LangChainIcon; }
|
|
4344
4646
|
});
|
|
4345
4647
|
Object.defineProperty(exports, "ListOperatorFlowNode", {
|
|
4346
4648
|
enumerable: true,
|
|
4347
|
-
get: function () { return
|
|
4649
|
+
get: function () { return chunkM7P2TQ6X_js.ListOperatorFlowNode; }
|
|
4348
4650
|
});
|
|
4349
4651
|
Object.defineProperty(exports, "LogicNodeModal", {
|
|
4350
4652
|
enumerable: true,
|
|
4351
|
-
get: function () { return
|
|
4653
|
+
get: function () { return chunkM7P2TQ6X_js.LogicNodeModal; }
|
|
4352
4654
|
});
|
|
4353
4655
|
Object.defineProperty(exports, "MINIMAP_NODE_COLORS", {
|
|
4354
4656
|
enumerable: true,
|
|
4355
|
-
get: function () { return
|
|
4657
|
+
get: function () { return chunkM7P2TQ6X_js.MINIMAP_NODE_COLORS; }
|
|
4356
4658
|
});
|
|
4357
4659
|
Object.defineProperty(exports, "ModelProviderFlowNode", {
|
|
4358
4660
|
enumerable: true,
|
|
4359
|
-
get: function () { return
|
|
4661
|
+
get: function () { return chunkM7P2TQ6X_js.ModelProviderFlowNode; }
|
|
4360
4662
|
});
|
|
4361
4663
|
Object.defineProperty(exports, "NODE_EXECUTION_ACCENT_COLORS", {
|
|
4362
4664
|
enumerable: true,
|
|
4363
|
-
get: function () { return
|
|
4665
|
+
get: function () { return chunkM7P2TQ6X_js.NODE_EXECUTION_ACCENT_COLORS; }
|
|
4364
4666
|
});
|
|
4365
4667
|
Object.defineProperty(exports, "NodeCard", {
|
|
4366
4668
|
enumerable: true,
|
|
4367
|
-
get: function () { return
|
|
4669
|
+
get: function () { return chunkM7P2TQ6X_js.NodeCard; }
|
|
4368
4670
|
});
|
|
4369
4671
|
Object.defineProperty(exports, "NodeContextMenu", {
|
|
4370
4672
|
enumerable: true,
|
|
4371
|
-
get: function () { return
|
|
4673
|
+
get: function () { return chunkM7P2TQ6X_js.NodeContextMenu; }
|
|
4372
4674
|
});
|
|
4373
4675
|
Object.defineProperty(exports, "NoteFlowNode", {
|
|
4374
4676
|
enumerable: true,
|
|
4375
|
-
get: function () { return
|
|
4677
|
+
get: function () { return chunkM7P2TQ6X_js.NoteFlowNode; }
|
|
4376
4678
|
});
|
|
4377
4679
|
Object.defineProperty(exports, "OpenAIIcon", {
|
|
4378
4680
|
enumerable: true,
|
|
4379
|
-
get: function () { return
|
|
4681
|
+
get: function () { return chunkM7P2TQ6X_js.OpenAIIcon; }
|
|
4380
4682
|
});
|
|
4381
4683
|
Object.defineProperty(exports, "PanelContextMenu", {
|
|
4382
4684
|
enumerable: true,
|
|
4383
|
-
get: function () { return
|
|
4685
|
+
get: function () { return chunkM7P2TQ6X_js.PanelContextMenu; }
|
|
4384
4686
|
});
|
|
4385
4687
|
Object.defineProperty(exports, "ParameterExtractorFlowNode", {
|
|
4386
4688
|
enumerable: true,
|
|
4387
|
-
get: function () { return
|
|
4689
|
+
get: function () { return chunkM7P2TQ6X_js.ParameterExtractorFlowNode; }
|
|
4388
4690
|
});
|
|
4389
4691
|
Object.defineProperty(exports, "QuestionClassifierFlowNode", {
|
|
4390
4692
|
enumerable: true,
|
|
4391
|
-
get: function () { return
|
|
4693
|
+
get: function () { return chunkM7P2TQ6X_js.QuestionClassifierFlowNode; }
|
|
4392
4694
|
});
|
|
4393
4695
|
Object.defineProperty(exports, "RuleFlowNode", {
|
|
4394
4696
|
enumerable: true,
|
|
4395
|
-
get: function () { return
|
|
4697
|
+
get: function () { return chunkM7P2TQ6X_js.RuleFlowNode; }
|
|
4396
4698
|
});
|
|
4397
4699
|
Object.defineProperty(exports, "SelectionContextMenu", {
|
|
4398
4700
|
enumerable: true,
|
|
4399
|
-
get: function () { return
|
|
4701
|
+
get: function () { return chunkM7P2TQ6X_js.SelectionContextMenu; }
|
|
4400
4702
|
});
|
|
4401
4703
|
Object.defineProperty(exports, "StartFlowNode", {
|
|
4402
4704
|
enumerable: true,
|
|
4403
|
-
get: function () { return
|
|
4705
|
+
get: function () { return chunkM7P2TQ6X_js.StartFlowNode; }
|
|
4404
4706
|
});
|
|
4405
4707
|
Object.defineProperty(exports, "StrandsIcon", {
|
|
4406
4708
|
enumerable: true,
|
|
4407
|
-
get: function () { return
|
|
4709
|
+
get: function () { return chunkM7P2TQ6X_js.StrandsIcon; }
|
|
4408
4710
|
});
|
|
4409
4711
|
Object.defineProperty(exports, "TemplateTransformFlowNode", {
|
|
4410
4712
|
enumerable: true,
|
|
4411
|
-
get: function () { return
|
|
4713
|
+
get: function () { return chunkM7P2TQ6X_js.TemplateTransformFlowNode; }
|
|
4412
4714
|
});
|
|
4413
4715
|
Object.defineProperty(exports, "ToolFlowNode", {
|
|
4414
4716
|
enumerable: true,
|
|
4415
|
-
get: function () { return
|
|
4717
|
+
get: function () { return chunkM7P2TQ6X_js.ToolFlowNode; }
|
|
4416
4718
|
});
|
|
4417
4719
|
Object.defineProperty(exports, "VariableAggregatorFlowNode", {
|
|
4418
4720
|
enumerable: true,
|
|
4419
|
-
get: function () { return
|
|
4721
|
+
get: function () { return chunkM7P2TQ6X_js.VariableAggregatorFlowNode; }
|
|
4420
4722
|
});
|
|
4421
4723
|
Object.defineProperty(exports, "VariableAssignerFlowNode", {
|
|
4422
4724
|
enumerable: true,
|
|
4423
|
-
get: function () { return
|
|
4725
|
+
get: function () { return chunkM7P2TQ6X_js.VariableAssignerFlowNode; }
|
|
4424
4726
|
});
|
|
4425
4727
|
Object.defineProperty(exports, "WorkflowBuilderProvider", {
|
|
4426
4728
|
enumerable: true,
|
|
4427
|
-
get: function () { return
|
|
4729
|
+
get: function () { return chunkM7P2TQ6X_js.WorkflowBuilderProvider; }
|
|
4428
4730
|
});
|
|
4429
4731
|
Object.defineProperty(exports, "Workspace", {
|
|
4430
4732
|
enumerable: true,
|
|
4431
|
-
get: function () { return
|
|
4733
|
+
get: function () { return chunkM7P2TQ6X_js.Workspace; }
|
|
4432
4734
|
});
|
|
4433
4735
|
Object.defineProperty(exports, "getCompatibleModels", {
|
|
4434
4736
|
enumerable: true,
|
|
4435
|
-
get: function () { return
|
|
4737
|
+
get: function () { return chunkM7P2TQ6X_js.getCompatibleModels; }
|
|
4436
4738
|
});
|
|
4437
4739
|
Object.defineProperty(exports, "getDefaultFrameworkForModel", {
|
|
4438
4740
|
enumerable: true,
|
|
4439
|
-
get: function () { return
|
|
4741
|
+
get: function () { return chunkM7P2TQ6X_js.getDefaultFrameworkForModel; }
|
|
4440
4742
|
});
|
|
4441
4743
|
Object.defineProperty(exports, "getEntityBadgeColor", {
|
|
4442
4744
|
enumerable: true,
|
|
4443
|
-
get: function () { return
|
|
4745
|
+
get: function () { return chunkM7P2TQ6X_js.getEntityBadgeColor; }
|
|
4444
4746
|
});
|
|
4445
4747
|
Object.defineProperty(exports, "getEntityGradient", {
|
|
4446
4748
|
enumerable: true,
|
|
4447
|
-
get: function () { return
|
|
4749
|
+
get: function () { return chunkM7P2TQ6X_js.getEntityGradient; }
|
|
4448
4750
|
});
|
|
4449
4751
|
Object.defineProperty(exports, "getEntityHandleColor", {
|
|
4450
4752
|
enumerable: true,
|
|
4451
|
-
get: function () { return
|
|
4753
|
+
get: function () { return chunkM7P2TQ6X_js.getEntityHandleColor; }
|
|
4452
4754
|
});
|
|
4453
4755
|
Object.defineProperty(exports, "getEntityIcon", {
|
|
4454
4756
|
enumerable: true,
|
|
4455
|
-
get: function () { return
|
|
4757
|
+
get: function () { return chunkM7P2TQ6X_js.getEntityIcon; }
|
|
4456
4758
|
});
|
|
4457
4759
|
Object.defineProperty(exports, "getEntityMinimapColor", {
|
|
4458
4760
|
enumerable: true,
|
|
4459
|
-
get: function () { return
|
|
4761
|
+
get: function () { return chunkM7P2TQ6X_js.getEntityMinimapColor; }
|
|
4460
4762
|
});
|
|
4461
4763
|
Object.defineProperty(exports, "getFrameworkMeta", {
|
|
4462
4764
|
enumerable: true,
|
|
4463
|
-
get: function () { return
|
|
4765
|
+
get: function () { return chunkM7P2TQ6X_js.getFrameworkMeta; }
|
|
4464
4766
|
});
|
|
4465
4767
|
Object.defineProperty(exports, "getNodeExecutionAccent", {
|
|
4466
4768
|
enumerable: true,
|
|
4467
|
-
get: function () { return
|
|
4769
|
+
get: function () { return chunkM7P2TQ6X_js.getNodeExecutionAccent; }
|
|
4468
4770
|
});
|
|
4469
4771
|
Object.defineProperty(exports, "getNodeExecutionAccentRgb", {
|
|
4470
4772
|
enumerable: true,
|
|
4471
|
-
get: function () { return
|
|
4773
|
+
get: function () { return chunkM7P2TQ6X_js.getNodeExecutionAccentRgb; }
|
|
4472
4774
|
});
|
|
4473
4775
|
Object.defineProperty(exports, "isModelCompatibleWithFramework", {
|
|
4474
4776
|
enumerable: true,
|
|
4475
|
-
get: function () { return
|
|
4777
|
+
get: function () { return chunkM7P2TQ6X_js.isModelCompatibleWithFramework; }
|
|
4476
4778
|
});
|
|
4477
4779
|
Object.defineProperty(exports, "useModalStore", {
|
|
4478
4780
|
enumerable: true,
|
|
4479
|
-
get: function () { return
|
|
4781
|
+
get: function () { return chunkM7P2TQ6X_js.useModalStore; }
|
|
4480
4782
|
});
|
|
4481
4783
|
Object.defineProperty(exports, "useWorkflowBuilderClient", {
|
|
4482
4784
|
enumerable: true,
|
|
4483
|
-
get: function () { return
|
|
4785
|
+
get: function () { return chunkM7P2TQ6X_js.useWorkflowBuilderClient; }
|
|
4484
4786
|
});
|
|
4485
4787
|
Object.defineProperty(exports, "useWorkflowBuilderClientOptional", {
|
|
4486
4788
|
enumerable: true,
|
|
4487
|
-
get: function () { return
|
|
4789
|
+
get: function () { return chunkM7P2TQ6X_js.useWorkflowBuilderClientOptional; }
|
|
4488
4790
|
});
|
|
4489
4791
|
Object.defineProperty(exports, "useWorkflowStore", {
|
|
4490
4792
|
enumerable: true,
|
|
4491
|
-
get: function () { return
|
|
4793
|
+
get: function () { return chunkM7P2TQ6X_js.useWorkflowStore; }
|
|
4492
4794
|
});
|
|
4493
4795
|
Object.defineProperty(exports, "GraphNodeBadge", {
|
|
4494
4796
|
enumerable: true,
|
|
@@ -4535,6 +4837,7 @@ exports.RuleConditionBuilder = RuleConditionBuilder;
|
|
|
4535
4837
|
exports.RuleForm = RuleForm;
|
|
4536
4838
|
exports.RunInputDialog = RunInputDialog;
|
|
4537
4839
|
exports.RunPanel = RunPanel;
|
|
4840
|
+
exports.RunReplayModal = RunReplayModal;
|
|
4538
4841
|
exports.SaveStatusBadge = SaveStatusBadge;
|
|
4539
4842
|
exports.SubworkflowModal = SubworkflowModal;
|
|
4540
4843
|
exports.TIMEZONE_OPTIONS = TIMEZONE_OPTIONS;
|