@datatechsolutions/ui 2.11.53 → 2.11.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/astrlabe/contracts.d.mts +16 -3
  2. package/dist/astrlabe/contracts.d.ts +16 -3
  3. package/dist/astrlabe/index.d.mts +1 -1
  4. package/dist/astrlabe/index.d.ts +1 -1
  5. package/dist/astrlabe/index.js +133 -120
  6. package/dist/astrlabe/index.js.map +1 -1
  7. package/dist/astrlabe/index.mjs +13 -8
  8. package/dist/astrlabe/index.mjs.map +1 -1
  9. package/dist/astrlabe/utils.d.mts +27 -23
  10. package/dist/astrlabe/utils.d.ts +27 -23
  11. package/dist/astrlabe/utils.js +15 -7
  12. package/dist/astrlabe/utils.mjs +2 -2
  13. package/dist/astrlabe/workflow-canvas.js +3 -3
  14. package/dist/astrlabe/workflow-canvas.mjs +2 -2
  15. package/dist/chunk-53SRKVKQ.mjs +542 -0
  16. package/dist/chunk-53SRKVKQ.mjs.map +1 -0
  17. package/dist/chunk-5UU3RQRB.js +547 -0
  18. package/dist/chunk-5UU3RQRB.js.map +1 -0
  19. package/dist/{chunk-PWBWP5FJ.js → chunk-C7BI5LQ6.js} +7 -2
  20. package/dist/chunk-C7BI5LQ6.js.map +1 -0
  21. package/dist/{chunk-PEBQWL6R.mjs → chunk-FXJBJ77I.mjs} +7 -3
  22. package/dist/chunk-FXJBJ77I.mjs.map +1 -0
  23. package/dist/{chunk-7LCEP4X5.js → chunk-P67L6WXL.js} +14 -10
  24. package/dist/chunk-P67L6WXL.js.map +1 -0
  25. package/dist/{chunk-TLPPVL3W.mjs → chunk-WNCPAWLC.mjs} +7 -2
  26. package/dist/chunk-WNCPAWLC.mjs.map +1 -0
  27. package/package.json +1 -1
  28. package/dist/chunk-3GE3MBUZ.js +0 -279
  29. package/dist/chunk-3GE3MBUZ.js.map +0 -1
  30. package/dist/chunk-7LCEP4X5.js.map +0 -1
  31. package/dist/chunk-BLNXRUC4.mjs +0 -276
  32. package/dist/chunk-BLNXRUC4.mjs.map +0 -1
  33. package/dist/chunk-PEBQWL6R.mjs.map +0 -1
  34. package/dist/chunk-PWBWP5FJ.js.map +0 -1
  35. package/dist/chunk-TLPPVL3W.mjs.map +0 -1
@@ -2,14 +2,14 @@
2
2
  'use strict';
3
3
 
4
4
  require('../chunk-55H6WZQP.js');
5
- var chunk3GE3MBUZ_js = require('../chunk-3GE3MBUZ.js');
6
- var chunk7LCEP4X5_js = require('../chunk-7LCEP4X5.js');
5
+ var chunk5UU3RQRB_js = require('../chunk-5UU3RQRB.js');
6
+ var chunkP67L6WXL_js = require('../chunk-P67L6WXL.js');
7
7
  var chunk5N6QYUAA_js = require('../chunk-5N6QYUAA.js');
8
8
  var chunkYXN2K77G_js = require('../chunk-YXN2K77G.js');
9
9
  require('../chunk-S7KHTUHA.js');
10
10
  require('../chunk-UZ3CMNUJ.js');
11
11
  var chunkP4YYEM4B_js = require('../chunk-P4YYEM4B.js');
12
- var chunkPWBWP5FJ_js = require('../chunk-PWBWP5FJ.js');
12
+ var chunkC7BI5LQ6_js = require('../chunk-C7BI5LQ6.js');
13
13
  var react = require('react');
14
14
  var outline = require('@heroicons/react/24/outline');
15
15
  var jsxRuntime = require('react/jsx-runtime');
@@ -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 = chunk7LCEP4X5_js.getFrameworkMeta(selectedFramework);
86
+ const frameworkMeta = chunkP67L6WXL_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(chunk7LCEP4X5_js.FRAMEWORK_META);
362
+ const frameworkKeys = Object.keys(chunkP67L6WXL_js.FRAMEWORK_META);
363
363
  const hasProviderConstraints = connectedProviderTypes.length > 0;
364
- const compatibleModels = chunk7LCEP4X5_js.getCompatibleModels(models, selectedFramework);
364
+ const compatibleModels = chunkP67L6WXL_js.getCompatibleModels(models, selectedFramework);
365
365
  const handleFrameworkChange = react.useCallback((newFramework) => {
366
366
  setSelectedFramework(newFramework);
367
- if (!chunk7LCEP4X5_js.isModelCompatibleWithFramework(selectedModelId, newFramework)) {
368
- const compatible = chunk7LCEP4X5_js.getCompatibleModels(models, newFramework);
367
+ if (!chunkP67L6WXL_js.isModelCompatibleWithFramework(selectedModelId, newFramework)) {
368
+ const compatible = chunkP67L6WXL_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 = chunk7LCEP4X5_js.FRAMEWORK_META[key];
379
+ const meta = chunkP67L6WXL_js.FRAMEWORK_META[key];
380
380
  const isSelected = key === selectedFramework;
381
- const compatCount = chunk7LCEP4X5_js.getCompatibleModels(models, key).length;
382
- const isCompatibleWithProviders = !hasProviderConstraints || chunk7LCEP4X5_js.isFrameworkCompatibleWithProviders(key, connectedProviderTypes);
381
+ const compatCount = chunkP67L6WXL_js.getCompatibleModels(models, key).length;
382
+ const isCompatibleWithProviders = !hasProviderConstraints || chunkP67L6WXL_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 = chunk7LCEP4X5_js.isModelCompatibleWithFramework(model.id, selectedFramework);
414
+ const isCompatible = chunkP67L6WXL_js.isModelCompatibleWithFramework(model.id, selectedFramework);
415
415
  const { IconComponent, color, providerLabel } = getModelIcon(model.id);
416
416
  return /* @__PURE__ */ jsxRuntime.jsxs(
417
417
  "button",
@@ -510,7 +510,7 @@ function PromptTab({ agent, temperature, setTemperature, markDirty, t }) {
510
510
  ] });
511
511
  }
512
512
  function ResultsTab({ agentId, t }) {
513
- const nodeResults = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodeResults);
513
+ const nodeResults = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodeResults);
514
514
  const agentResult = react.useMemo(() => {
515
515
  return nodeResults[agentId] ?? null;
516
516
  }, [nodeResults, agentId]);
@@ -600,10 +600,10 @@ function ModelsTab({ modelProviders, selectedProviderId, onSelectProvider, model
600
600
  const providerModels = modelsByProvider.find((p) => p.provider.id === selectedProviderId);
601
601
  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") });
602
602
  const compatibleModels = providerModels.models.filter(
603
- (m) => chunk7LCEP4X5_js.isModelCompatibleWithFramework(m.id, agentFramework)
603
+ (m) => chunkP67L6WXL_js.isModelCompatibleWithFramework(m.id, agentFramework)
604
604
  );
605
605
  const incompatibleModels = providerModels.models.filter(
606
- (m) => !chunk7LCEP4X5_js.isModelCompatibleWithFramework(m.id, agentFramework)
606
+ (m) => !chunkP67L6WXL_js.isModelCompatibleWithFramework(m.id, agentFramework)
607
607
  );
608
608
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
609
609
  /* @__PURE__ */ jsxRuntime.jsx("label", { className: "mb-2 block text-xs font-medium text-gray-500 dark:text-gray-400", children: t("agentDrawer.selectModel") }),
@@ -676,7 +676,7 @@ function ToolsTab({ agentTools, enabledToolIds, onToggle, agentFramework, t }) {
676
676
  ] }),
677
677
  tool.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-[10px] text-gray-400 dark:text-gray-500", children: tool.description }),
678
678
  tool.compatibleFrameworks && tool.compatibleFrameworks.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 flex flex-wrap gap-0.5", children: tool.compatibleFrameworks.map((framework) => {
679
- const meta = chunk7LCEP4X5_js.getFrameworkMeta(framework);
679
+ const meta = chunkP67L6WXL_js.getFrameworkMeta(framework);
680
680
  const isCurrentFw = framework === agentFramework;
681
681
  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: [
682
682
  /* @__PURE__ */ jsxRuntime.jsx(meta.IconComponent, { className: "h-2.5 w-2.5" }),
@@ -714,9 +714,9 @@ function ToolsTab({ agentTools, enabledToolIds, onToggle, agentFramework, t }) {
714
714
  }
715
715
  function AgentModal({ onSaved }) {
716
716
  const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
717
- const activeModal = chunk7LCEP4X5_js.useModalStore((s) => s.activeModal);
718
- const agentData = chunk7LCEP4X5_js.useModalStore((s) => s.agentData);
719
- const closeModal = chunk7LCEP4X5_js.useModalStore((s) => s.closeModal);
717
+ const activeModal = chunkP67L6WXL_js.useModalStore((s) => s.activeModal);
718
+ const agentData = chunkP67L6WXL_js.useModalStore((s) => s.agentData);
719
+ const closeModal = chunkP67L6WXL_js.useModalStore((s) => s.closeModal);
720
720
  const open = activeModal === "agent";
721
721
  const agent = agentData?.agent ?? null;
722
722
  const models = agentData?.models ?? [];
@@ -943,7 +943,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
943
943
  const markDirty = useSubworkflowStore((s) => s.markDirty);
944
944
  const markSaved = useSubworkflowStore((s) => s.markSaved);
945
945
  const closeModal = useSubworkflowStore((s) => s.closeModal);
946
- const agentBehind = chunk7LCEP4X5_js.useModalStore((s) => s.activeModal === "agent" ? s.agentData?.agent?.name : null);
946
+ const agentBehind = chunkP67L6WXL_js.useModalStore((s) => s.activeModal === "agent" ? s.agentData?.agent?.name : null);
947
947
  const isCreateMode = !tool?.toolId;
948
948
  const initialGraph = react.useMemo(() => {
949
949
  const config = tool?.config;
@@ -972,9 +972,9 @@ function SubworkflowModal({ onSaved, onMaximize }) {
972
972
  }, [tool, onSaved, name, category, description, timeoutMs, latestGraphRef, markSaved]);
973
973
  if (!tool) return null;
974
974
  const categoryKey = category ?? "external";
975
- const gradient = tool.color ?? chunk7LCEP4X5_js.CATEGORY_COLORS[categoryKey] ?? chunk7LCEP4X5_js.CATEGORY_COLORS.external;
976
- const categoryPill = chunk7LCEP4X5_js.CATEGORY_PILL_COLORS[categoryKey] ?? chunk7LCEP4X5_js.CATEGORY_PILL_COLORS.external;
977
- const IconComponent = chunk7LCEP4X5_js.ICON_MAP[tool.icon ?? ""] ?? outline.ArrowPathRoundedSquareIcon;
975
+ const gradient = tool.color ?? chunkP67L6WXL_js.CATEGORY_COLORS[categoryKey] ?? chunkP67L6WXL_js.CATEGORY_COLORS.external;
976
+ const categoryPill = chunkP67L6WXL_js.CATEGORY_PILL_COLORS[categoryKey] ?? chunkP67L6WXL_js.CATEGORY_PILL_COLORS.external;
977
+ const IconComponent = chunkP67L6WXL_js.ICON_MAP[tool.icon ?? ""] ?? outline.ArrowPathRoundedSquareIcon;
978
978
  const graph = latestGraphRef.current;
979
979
  const startNode = graph.nodes.find((n) => n.type === "start");
980
980
  const endNode = graph.nodes.find((n) => n.type === "end");
@@ -1039,7 +1039,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
1039
1039
  {
1040
1040
  type: "button",
1041
1041
  onClick: () => setCategory(cat),
1042
- className: `rounded-full px-2 py-1 text-[9px] font-semibold transition-all ${cat === category ? `${chunk7LCEP4X5_js.CATEGORY_PILL_COLORS[cat] ?? chunk7LCEP4X5_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"}`,
1042
+ className: `rounded-full px-2 py-1 text-[9px] font-semibold transition-all ${cat === category ? `${chunkP67L6WXL_js.CATEGORY_PILL_COLORS[cat] ?? chunkP67L6WXL_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"}`,
1043
1043
  children: cat
1044
1044
  },
1045
1045
  cat
@@ -1126,7 +1126,7 @@ function SubworkflowModal({ onSaved, onMaximize }) {
1126
1126
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-auto" })
1127
1127
  ] }),
1128
1128
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(
1129
- chunk7LCEP4X5_js.WorkflowCanvas,
1129
+ chunkP67L6WXL_js.WorkflowCanvas,
1130
1130
  {
1131
1131
  initialGraph,
1132
1132
  agents: [],
@@ -1142,9 +1142,9 @@ function SubworkflowModal({ onSaved, onMaximize }) {
1142
1142
  }
1143
1143
  function PipelineSettingsModal({ onSave }) {
1144
1144
  const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
1145
- const activeModal = chunk7LCEP4X5_js.useModalStore((s) => s.activeModal);
1146
- const data = chunk7LCEP4X5_js.useModalStore((s) => s.pipelineSettingsData);
1147
- const closeModal = chunk7LCEP4X5_js.useModalStore((s) => s.closeModal);
1145
+ const activeModal = chunkP67L6WXL_js.useModalStore((s) => s.activeModal);
1146
+ const data = chunkP67L6WXL_js.useModalStore((s) => s.pipelineSettingsData);
1147
+ const closeModal = chunkP67L6WXL_js.useModalStore((s) => s.closeModal);
1148
1148
  const open = activeModal === "pipeline-settings";
1149
1149
  const [nameValue, setNameValue] = react.useState("");
1150
1150
  const [descriptionValue, setDescriptionValue] = react.useState("");
@@ -1299,13 +1299,16 @@ var LOGIC_NODE_ITEMS = [
1299
1299
  { nodeType: "question_classifier", nameKey: "questionClassifierNode", descriptionKey: "questionClassifierNodeDescription", subcategory: "ai_ml" },
1300
1300
  { nodeType: "parameter_extractor", nameKey: "parameterExtractorNode", descriptionKey: "parameterExtractorNodeDescription", subcategory: "ai_ml" },
1301
1301
  // Annotation
1302
- { nodeType: "note", nameKey: "noteNode", descriptionKey: "noteNodeDescription", subcategory: "annotation" }
1302
+ { nodeType: "note", nameKey: "noteNode", descriptionKey: "noteNodeDescription", subcategory: "annotation" },
1303
+ // Output
1304
+ { nodeType: "dashboard_output", nameKey: "dashboardOutputNode", descriptionKey: "dashboardOutputNodeDescription", subcategory: "output" }
1303
1305
  ];
1304
1306
  var SUBCATEGORY_LABELS = {
1305
1307
  control_flow: "controlFlowSection",
1306
1308
  data_processing: "dataProcessingSection",
1307
1309
  ai_ml: "aiMlSection",
1308
- annotation: "annotationSection"
1310
+ annotation: "annotationSection",
1311
+ output: "outputSection"
1309
1312
  };
1310
1313
  function SectionHeader({ icon, title, colorClass, count, onAdd, addLabel, isOpen, onToggle }) {
1311
1314
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between px-4 py-2.5", children: [
@@ -1363,9 +1366,9 @@ function CollapsibleSection({ title, icon, colorClass, defaultOpen = true, count
1363
1366
  ] });
1364
1367
  }
1365
1368
  function LogicNodeItemCard({ item, translationFunction }) {
1366
- const IconComponent = chunk7LCEP4X5_js.LOGIC_ICON_MAP[item.nodeType];
1367
- const gradient = chunk7LCEP4X5_js.LOGIC_NODE_GRADIENTS[item.nodeType] ?? "from-gray-400 to-gray-500";
1368
- const defaultConfig = chunkPWBWP5FJ_js.createDefaultLogicNodeConfig(item.nodeType);
1369
+ const IconComponent = chunkP67L6WXL_js.LOGIC_ICON_MAP[item.nodeType];
1370
+ const gradient = chunkP67L6WXL_js.LOGIC_NODE_GRADIENTS[item.nodeType] ?? "from-gray-400 to-gray-500";
1371
+ const defaultConfig = chunkC7BI5LQ6_js.createDefaultLogicNodeConfig(item.nodeType);
1369
1372
  const configJson = defaultConfig ? JSON.stringify(defaultConfig) : void 0;
1370
1373
  return /* @__PURE__ */ jsxRuntime.jsxs(
1371
1374
  "div",
@@ -1445,7 +1448,8 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], mod
1445
1448
  control_flow: [],
1446
1449
  data_processing: [],
1447
1450
  ai_ml: [],
1448
- annotation: []
1451
+ annotation: [],
1452
+ output: []
1449
1453
  };
1450
1454
  for (const item of filteredLogicItems) {
1451
1455
  groups[item.subcategory].push(item);
@@ -1497,7 +1501,7 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], mod
1497
1501
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5", children: [
1498
1502
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs font-medium text-gray-900 dark:text-white", children: agent.name }),
1499
1503
  (() => {
1500
- const tier = chunkPWBWP5FJ_js.getAgentTier(Number(agent.elo ?? 0));
1504
+ const tier = chunkC7BI5LQ6_js.getAgentTier(Number(agent.elo ?? 0));
1501
1505
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: `shrink-0 rounded-full px-1.5 py-px text-[8px] font-bold ${tier.pillColor}`, children: t(`agentDrawer.tier${tier.key.charAt(0).toUpperCase()}${tier.key.slice(1)}`) });
1502
1506
  })()
1503
1507
  ] }),
@@ -1607,8 +1611,8 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], mod
1607
1611
  limit: entity.defaultLimit
1608
1612
  });
1609
1613
  const dsLogo = getDatasourceLogo(entity.id);
1610
- const EntityIcon = chunk7LCEP4X5_js.getEntityIcon(entity.id);
1611
- const entityGradient = chunk7LCEP4X5_js.getEntityGradient(entity.id);
1614
+ const EntityIcon = chunkP67L6WXL_js.getEntityIcon(entity.id);
1615
+ const entityGradient = chunkP67L6WXL_js.getEntityGradient(entity.id);
1612
1616
  return /* @__PURE__ */ jsxRuntime.jsxs(
1613
1617
  "div",
1614
1618
  {
@@ -1701,6 +1705,7 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], mod
1701
1705
  renderLogicSubcategory("control_flow", groupedLogicItems.control_flow, true),
1702
1706
  renderLogicSubcategory("data_processing", groupedLogicItems.data_processing, false),
1703
1707
  renderLogicSubcategory("ai_ml", groupedLogicItems.ai_ml, false),
1708
+ renderLogicSubcategory("output", groupedLogicItems.output, false),
1704
1709
  renderLogicSubcategory("annotation", groupedLogicItems.annotation, false)
1705
1710
  ]
1706
1711
  }
@@ -2005,9 +2010,9 @@ function formatDuration2(durationMs) {
2005
2010
  }
2006
2011
  function RunPanel({ open, onClose, onRun, onStop }) {
2007
2012
  const translations = chunkYXN2K77G_js.useTranslations("agents.workflow.runPanel");
2008
- const nodes = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodes);
2009
- const isRunning = chunk7LCEP4X5_js.useWorkflowStore((state) => state.isRunning);
2010
- const nodeResults = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodeResults);
2013
+ const nodes = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodes);
2014
+ const isRunning = chunkP67L6WXL_js.useWorkflowStore((state) => state.isRunning);
2015
+ const nodeResults = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodeResults);
2011
2016
  const startNode = nodes.find((node) => node.type === "start");
2012
2017
  const hasEndNode = nodes.some((node) => node.type === "end");
2013
2018
  const hasValidStartConfig = Boolean(
@@ -2292,8 +2297,8 @@ function inferVariables(config, nodeType) {
2292
2297
  }
2293
2298
  function VariableInspector({ open, onClose }) {
2294
2299
  const translations = chunkYXN2K77G_js.useTranslations("agents.workflow.variableInspector");
2295
- const nodes = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodes);
2296
- const edges = chunk7LCEP4X5_js.useWorkflowStore((state) => state.edges);
2300
+ const nodes = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodes);
2301
+ const edges = chunkP67L6WXL_js.useWorkflowStore((state) => state.edges);
2297
2302
  const [expandedNodes, setExpandedNodes] = react.useState(/* @__PURE__ */ new Set());
2298
2303
  const toggleNodeExpansion = react.useCallback((nodeId) => {
2299
2304
  setExpandedNodes((current) => {
@@ -2355,8 +2360,8 @@ function VariableInspector({ open, onClose }) {
2355
2360
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-gray-500 dark:text-gray-400", children: translations("noNodes") })
2356
2361
  ] }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "divide-y divide-gray-100 dark:divide-gray-800", children: nodeVariableEntries.map((entry) => {
2357
2362
  const isExpanded = expandedNodes.has(entry.nodeId);
2358
- const IconComponent = chunk7LCEP4X5_js.LOGIC_ICON_MAP[entry.nodeType];
2359
- const gradient = chunk7LCEP4X5_js.LOGIC_NODE_GRADIENTS[entry.nodeType] ?? "from-gray-400 to-gray-500";
2363
+ const IconComponent = chunkP67L6WXL_js.LOGIC_ICON_MAP[entry.nodeType];
2364
+ const gradient = chunkP67L6WXL_js.LOGIC_NODE_GRADIENTS[entry.nodeType] ?? "from-gray-400 to-gray-500";
2360
2365
  const inputVariables = entry.variables.filter((variable) => variable.direction === "input");
2361
2366
  const outputVariables = entry.variables.filter((variable) => variable.direction === "output");
2362
2367
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-testid": `variable-node-${entry.nodeId}`, children: [
@@ -2422,7 +2427,7 @@ function RunInputDialog({
2422
2427
  onRun
2423
2428
  }) {
2424
2429
  const t = chunkYXN2K77G_js.useTranslations("agents.workflow.runInputDialog");
2425
- const nodes = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodes);
2430
+ const nodes = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodes);
2426
2431
  const [values, setValues] = react.useState({});
2427
2432
  const inputVariableNames = react.useMemo(() => {
2428
2433
  const storeStartNode = nodes.find((node) => node.type === "start");
@@ -2503,8 +2508,8 @@ function PreviewPanel({ open, onClose, workflowId, loadRuns }) {
2503
2508
  const [isLoadingRuns, setIsLoadingRuns] = react.useState(false);
2504
2509
  const [selectedRun, setSelectedRun] = react.useState(null);
2505
2510
  const [selectedNode, setSelectedNode] = react.useState(null);
2506
- const isRunning = chunk7LCEP4X5_js.useWorkflowStore((state) => state.isRunning);
2507
- const nodeResults = chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodeResults);
2511
+ const isRunning = chunkP67L6WXL_js.useWorkflowStore((state) => state.isRunning);
2512
+ const nodeResults = chunkP67L6WXL_js.useWorkflowStore((state) => state.nodeResults);
2508
2513
  const refreshRuns = react.useCallback(async () => {
2509
2514
  setIsLoadingRuns(true);
2510
2515
  try {
@@ -2660,7 +2665,7 @@ var AutoSaveWorkspace = react.memo(function AutoSaveWorkspace2({
2660
2665
  onAutoSaveGraph(graph);
2661
2666
  }, [onAutoSaveGraph, onGraphSnapshot]);
2662
2667
  return /* @__PURE__ */ jsxRuntime.jsx(
2663
- chunk7LCEP4X5_js.Workspace,
2668
+ chunkP67L6WXL_js.Workspace,
2664
2669
  {
2665
2670
  ...workspaceProps,
2666
2671
  onGraphChange: handleGraphChange
@@ -3031,14 +3036,14 @@ function DslImportModal({ open, onClose, onImport }) {
3031
3036
  }
3032
3037
 
3033
3038
  // src/astrlabe/store/selectors.ts
3034
- var useCanUndo = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.past.length > 0);
3035
- var useCanRedo = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.future.length > 0);
3036
- var useHasCopied = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.clipboard !== null);
3037
- var useContextMenu = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.contextMenu);
3038
- var useEditingNodeId = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.editingNodeId);
3039
- var useSelectedNodeCount = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodes.filter((node) => node.selected).length);
3040
- var useIsRunning = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.isRunning);
3041
- var useNodeResults = () => chunk7LCEP4X5_js.useWorkflowStore((state) => state.nodeResults);
3039
+ var useCanUndo = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.past.length > 0);
3040
+ var useCanRedo = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.future.length > 0);
3041
+ var useHasCopied = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.clipboard !== null);
3042
+ var useContextMenu = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.contextMenu);
3043
+ var useEditingNodeId = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.editingNodeId);
3044
+ var useSelectedNodeCount = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.nodes.filter((node) => node.selected).length);
3045
+ var useIsRunning = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.isRunning);
3046
+ var useNodeResults = () => chunkP67L6WXL_js.useWorkflowStore((state) => state.nodeResults);
3042
3047
  var DEFAULT_MAX_HISTORY = 50;
3043
3048
  function useUndoRedo(nodes, edges, setNodes, setEdges, maxHistory = DEFAULT_MAX_HISTORY) {
3044
3049
  const pastRef = react.useRef([]);
@@ -3318,247 +3323,255 @@ function useHelpLines() {
3318
3323
 
3319
3324
  Object.defineProperty(exports, "topologicalSortAgents", {
3320
3325
  enumerable: true,
3321
- get: function () { return chunk3GE3MBUZ_js.topologicalSortAgents; }
3326
+ get: function () { return chunk5UU3RQRB_js.topologicalSortAgents; }
3327
+ });
3328
+ Object.defineProperty(exports, "validateGraphNodeConfigs", {
3329
+ enumerable: true,
3330
+ get: function () { return chunk5UU3RQRB_js.validateGraphNodeConfigs; }
3331
+ });
3332
+ Object.defineProperty(exports, "validateNodeConfig", {
3333
+ enumerable: true,
3334
+ get: function () { return chunk5UU3RQRB_js.validateNodeConfig; }
3322
3335
  });
3323
3336
  Object.defineProperty(exports, "validateWorkflowGraph", {
3324
3337
  enumerable: true,
3325
- get: function () { return chunk3GE3MBUZ_js.validateWorkflowGraph; }
3338
+ get: function () { return chunk5UU3RQRB_js.validateWorkflowGraph; }
3326
3339
  });
3327
3340
  Object.defineProperty(exports, "AgentFlowNode", {
3328
3341
  enumerable: true,
3329
- get: function () { return chunk7LCEP4X5_js.AgentFlowNode; }
3342
+ get: function () { return chunkP67L6WXL_js.AgentFlowNode; }
3330
3343
  });
3331
3344
  Object.defineProperty(exports, "AgentToolFlowNode", {
3332
3345
  enumerable: true,
3333
- get: function () { return chunk7LCEP4X5_js.AgentToolFlowNode; }
3346
+ get: function () { return chunkP67L6WXL_js.AgentToolFlowNode; }
3334
3347
  });
3335
3348
  Object.defineProperty(exports, "AnswerFlowNode", {
3336
3349
  enumerable: true,
3337
- get: function () { return chunk7LCEP4X5_js.AnswerFlowNode; }
3350
+ get: function () { return chunkP67L6WXL_js.AnswerFlowNode; }
3338
3351
  });
3339
3352
  Object.defineProperty(exports, "AnthropicIcon", {
3340
3353
  enumerable: true,
3341
- get: function () { return chunk7LCEP4X5_js.AnthropicIcon; }
3354
+ get: function () { return chunkP67L6WXL_js.AnthropicIcon; }
3342
3355
  });
3343
3356
  Object.defineProperty(exports, "CodeFlowNode", {
3344
3357
  enumerable: true,
3345
- get: function () { return chunk7LCEP4X5_js.CodeFlowNode; }
3358
+ get: function () { return chunkP67L6WXL_js.CodeFlowNode; }
3346
3359
  });
3347
3360
  Object.defineProperty(exports, "CrewAIIcon", {
3348
3361
  enumerable: true,
3349
- get: function () { return chunk7LCEP4X5_js.CrewAIIcon; }
3362
+ get: function () { return chunkP67L6WXL_js.CrewAIIcon; }
3350
3363
  });
3351
3364
  Object.defineProperty(exports, "DocumentExtractorFlowNode", {
3352
3365
  enumerable: true,
3353
- get: function () { return chunk7LCEP4X5_js.DocumentExtractorFlowNode; }
3366
+ get: function () { return chunkP67L6WXL_js.DocumentExtractorFlowNode; }
3354
3367
  });
3355
3368
  Object.defineProperty(exports, "EndFlowNode", {
3356
3369
  enumerable: true,
3357
- get: function () { return chunk7LCEP4X5_js.EndFlowNode; }
3370
+ get: function () { return chunkP67L6WXL_js.EndFlowNode; }
3358
3371
  });
3359
3372
  Object.defineProperty(exports, "EntityFlowNode", {
3360
3373
  enumerable: true,
3361
- get: function () { return chunk7LCEP4X5_js.EntityFlowNode; }
3374
+ get: function () { return chunkP67L6WXL_js.EntityFlowNode; }
3362
3375
  });
3363
3376
  Object.defineProperty(exports, "FRAMEWORK_META", {
3364
3377
  enumerable: true,
3365
- get: function () { return chunk7LCEP4X5_js.FRAMEWORK_META; }
3378
+ get: function () { return chunkP67L6WXL_js.FRAMEWORK_META; }
3366
3379
  });
3367
3380
  Object.defineProperty(exports, "GoogleADKIcon", {
3368
3381
  enumerable: true,
3369
- get: function () { return chunk7LCEP4X5_js.GoogleADKIcon; }
3382
+ get: function () { return chunkP67L6WXL_js.GoogleADKIcon; }
3370
3383
  });
3371
3384
  Object.defineProperty(exports, "GroupFlowNode", {
3372
3385
  enumerable: true,
3373
- get: function () { return chunk7LCEP4X5_js.GroupFlowNode; }
3386
+ get: function () { return chunkP67L6WXL_js.GroupFlowNode; }
3374
3387
  });
3375
3388
  Object.defineProperty(exports, "HttpRequestFlowNode", {
3376
3389
  enumerable: true,
3377
- get: function () { return chunk7LCEP4X5_js.HttpRequestFlowNode; }
3390
+ get: function () { return chunkP67L6WXL_js.HttpRequestFlowNode; }
3378
3391
  });
3379
3392
  Object.defineProperty(exports, "IfElseFlowNode", {
3380
3393
  enumerable: true,
3381
- get: function () { return chunk7LCEP4X5_js.IfElseFlowNode; }
3394
+ get: function () { return chunkP67L6WXL_js.IfElseFlowNode; }
3382
3395
  });
3383
3396
  Object.defineProperty(exports, "IterationFlowNode", {
3384
3397
  enumerable: true,
3385
- get: function () { return chunk7LCEP4X5_js.IterationFlowNode; }
3398
+ get: function () { return chunkP67L6WXL_js.IterationFlowNode; }
3386
3399
  });
3387
3400
  Object.defineProperty(exports, "IterationStartFlowNode", {
3388
3401
  enumerable: true,
3389
- get: function () { return chunk7LCEP4X5_js.IterationStartFlowNode; }
3402
+ get: function () { return chunkP67L6WXL_js.IterationStartFlowNode; }
3390
3403
  });
3391
3404
  Object.defineProperty(exports, "KnowledgeBaseFlowNode", {
3392
3405
  enumerable: true,
3393
- get: function () { return chunk7LCEP4X5_js.KnowledgeBaseFlowNode; }
3406
+ get: function () { return chunkP67L6WXL_js.KnowledgeBaseFlowNode; }
3394
3407
  });
3395
3408
  Object.defineProperty(exports, "LOGIC_ICON_MAP", {
3396
3409
  enumerable: true,
3397
- get: function () { return chunk7LCEP4X5_js.LOGIC_ICON_MAP; }
3410
+ get: function () { return chunkP67L6WXL_js.LOGIC_ICON_MAP; }
3398
3411
  });
3399
3412
  Object.defineProperty(exports, "LOGIC_NODE_BADGE_COLORS", {
3400
3413
  enumerable: true,
3401
- get: function () { return chunk7LCEP4X5_js.LOGIC_NODE_BADGE_COLORS; }
3414
+ get: function () { return chunkP67L6WXL_js.LOGIC_NODE_BADGE_COLORS; }
3402
3415
  });
3403
3416
  Object.defineProperty(exports, "LOGIC_NODE_GRADIENTS", {
3404
3417
  enumerable: true,
3405
- get: function () { return chunk7LCEP4X5_js.LOGIC_NODE_GRADIENTS; }
3418
+ get: function () { return chunkP67L6WXL_js.LOGIC_NODE_GRADIENTS; }
3406
3419
  });
3407
3420
  Object.defineProperty(exports, "LOGIC_NODE_HANDLE_COLORS", {
3408
3421
  enumerable: true,
3409
- get: function () { return chunk7LCEP4X5_js.LOGIC_NODE_HANDLE_COLORS; }
3422
+ get: function () { return chunkP67L6WXL_js.LOGIC_NODE_HANDLE_COLORS; }
3410
3423
  });
3411
3424
  Object.defineProperty(exports, "LangChainIcon", {
3412
3425
  enumerable: true,
3413
- get: function () { return chunk7LCEP4X5_js.LangChainIcon; }
3426
+ get: function () { return chunkP67L6WXL_js.LangChainIcon; }
3414
3427
  });
3415
3428
  Object.defineProperty(exports, "ListOperatorFlowNode", {
3416
3429
  enumerable: true,
3417
- get: function () { return chunk7LCEP4X5_js.ListOperatorFlowNode; }
3430
+ get: function () { return chunkP67L6WXL_js.ListOperatorFlowNode; }
3418
3431
  });
3419
3432
  Object.defineProperty(exports, "LogicNodeModal", {
3420
3433
  enumerable: true,
3421
- get: function () { return chunk7LCEP4X5_js.LogicNodeModal; }
3434
+ get: function () { return chunkP67L6WXL_js.LogicNodeModal; }
3422
3435
  });
3423
3436
  Object.defineProperty(exports, "MINIMAP_NODE_COLORS", {
3424
3437
  enumerable: true,
3425
- get: function () { return chunk7LCEP4X5_js.MINIMAP_NODE_COLORS; }
3438
+ get: function () { return chunkP67L6WXL_js.MINIMAP_NODE_COLORS; }
3426
3439
  });
3427
3440
  Object.defineProperty(exports, "ModelProviderFlowNode", {
3428
3441
  enumerable: true,
3429
- get: function () { return chunk7LCEP4X5_js.ModelProviderFlowNode; }
3442
+ get: function () { return chunkP67L6WXL_js.ModelProviderFlowNode; }
3430
3443
  });
3431
3444
  Object.defineProperty(exports, "NODE_EXECUTION_ACCENT_COLORS", {
3432
3445
  enumerable: true,
3433
- get: function () { return chunk7LCEP4X5_js.NODE_EXECUTION_ACCENT_COLORS; }
3446
+ get: function () { return chunkP67L6WXL_js.NODE_EXECUTION_ACCENT_COLORS; }
3434
3447
  });
3435
3448
  Object.defineProperty(exports, "NodeCard", {
3436
3449
  enumerable: true,
3437
- get: function () { return chunk7LCEP4X5_js.NodeCard; }
3450
+ get: function () { return chunkP67L6WXL_js.NodeCard; }
3438
3451
  });
3439
3452
  Object.defineProperty(exports, "NodeContextMenu", {
3440
3453
  enumerable: true,
3441
- get: function () { return chunk7LCEP4X5_js.NodeContextMenu; }
3454
+ get: function () { return chunkP67L6WXL_js.NodeContextMenu; }
3442
3455
  });
3443
3456
  Object.defineProperty(exports, "NoteFlowNode", {
3444
3457
  enumerable: true,
3445
- get: function () { return chunk7LCEP4X5_js.NoteFlowNode; }
3458
+ get: function () { return chunkP67L6WXL_js.NoteFlowNode; }
3446
3459
  });
3447
3460
  Object.defineProperty(exports, "OpenAIIcon", {
3448
3461
  enumerable: true,
3449
- get: function () { return chunk7LCEP4X5_js.OpenAIIcon; }
3462
+ get: function () { return chunkP67L6WXL_js.OpenAIIcon; }
3450
3463
  });
3451
3464
  Object.defineProperty(exports, "PanelContextMenu", {
3452
3465
  enumerable: true,
3453
- get: function () { return chunk7LCEP4X5_js.PanelContextMenu; }
3466
+ get: function () { return chunkP67L6WXL_js.PanelContextMenu; }
3454
3467
  });
3455
3468
  Object.defineProperty(exports, "ParameterExtractorFlowNode", {
3456
3469
  enumerable: true,
3457
- get: function () { return chunk7LCEP4X5_js.ParameterExtractorFlowNode; }
3470
+ get: function () { return chunkP67L6WXL_js.ParameterExtractorFlowNode; }
3458
3471
  });
3459
3472
  Object.defineProperty(exports, "QuestionClassifierFlowNode", {
3460
3473
  enumerable: true,
3461
- get: function () { return chunk7LCEP4X5_js.QuestionClassifierFlowNode; }
3474
+ get: function () { return chunkP67L6WXL_js.QuestionClassifierFlowNode; }
3462
3475
  });
3463
3476
  Object.defineProperty(exports, "RuleFlowNode", {
3464
3477
  enumerable: true,
3465
- get: function () { return chunk7LCEP4X5_js.RuleFlowNode; }
3478
+ get: function () { return chunkP67L6WXL_js.RuleFlowNode; }
3466
3479
  });
3467
3480
  Object.defineProperty(exports, "SelectionContextMenu", {
3468
3481
  enumerable: true,
3469
- get: function () { return chunk7LCEP4X5_js.SelectionContextMenu; }
3482
+ get: function () { return chunkP67L6WXL_js.SelectionContextMenu; }
3470
3483
  });
3471
3484
  Object.defineProperty(exports, "StartFlowNode", {
3472
3485
  enumerable: true,
3473
- get: function () { return chunk7LCEP4X5_js.StartFlowNode; }
3486
+ get: function () { return chunkP67L6WXL_js.StartFlowNode; }
3474
3487
  });
3475
3488
  Object.defineProperty(exports, "StrandsIcon", {
3476
3489
  enumerable: true,
3477
- get: function () { return chunk7LCEP4X5_js.StrandsIcon; }
3490
+ get: function () { return chunkP67L6WXL_js.StrandsIcon; }
3478
3491
  });
3479
3492
  Object.defineProperty(exports, "TemplateTransformFlowNode", {
3480
3493
  enumerable: true,
3481
- get: function () { return chunk7LCEP4X5_js.TemplateTransformFlowNode; }
3494
+ get: function () { return chunkP67L6WXL_js.TemplateTransformFlowNode; }
3482
3495
  });
3483
3496
  Object.defineProperty(exports, "ToolFlowNode", {
3484
3497
  enumerable: true,
3485
- get: function () { return chunk7LCEP4X5_js.ToolFlowNode; }
3498
+ get: function () { return chunkP67L6WXL_js.ToolFlowNode; }
3486
3499
  });
3487
3500
  Object.defineProperty(exports, "VariableAggregatorFlowNode", {
3488
3501
  enumerable: true,
3489
- get: function () { return chunk7LCEP4X5_js.VariableAggregatorFlowNode; }
3502
+ get: function () { return chunkP67L6WXL_js.VariableAggregatorFlowNode; }
3490
3503
  });
3491
3504
  Object.defineProperty(exports, "VariableAssignerFlowNode", {
3492
3505
  enumerable: true,
3493
- get: function () { return chunk7LCEP4X5_js.VariableAssignerFlowNode; }
3506
+ get: function () { return chunkP67L6WXL_js.VariableAssignerFlowNode; }
3494
3507
  });
3495
3508
  Object.defineProperty(exports, "WorkflowBuilderProvider", {
3496
3509
  enumerable: true,
3497
- get: function () { return chunk7LCEP4X5_js.WorkflowBuilderProvider; }
3510
+ get: function () { return chunkP67L6WXL_js.WorkflowBuilderProvider; }
3498
3511
  });
3499
3512
  Object.defineProperty(exports, "Workspace", {
3500
3513
  enumerable: true,
3501
- get: function () { return chunk7LCEP4X5_js.Workspace; }
3514
+ get: function () { return chunkP67L6WXL_js.Workspace; }
3502
3515
  });
3503
3516
  Object.defineProperty(exports, "getCompatibleModels", {
3504
3517
  enumerable: true,
3505
- get: function () { return chunk7LCEP4X5_js.getCompatibleModels; }
3518
+ get: function () { return chunkP67L6WXL_js.getCompatibleModels; }
3506
3519
  });
3507
3520
  Object.defineProperty(exports, "getDefaultFrameworkForModel", {
3508
3521
  enumerable: true,
3509
- get: function () { return chunk7LCEP4X5_js.getDefaultFrameworkForModel; }
3522
+ get: function () { return chunkP67L6WXL_js.getDefaultFrameworkForModel; }
3510
3523
  });
3511
3524
  Object.defineProperty(exports, "getEntityBadgeColor", {
3512
3525
  enumerable: true,
3513
- get: function () { return chunk7LCEP4X5_js.getEntityBadgeColor; }
3526
+ get: function () { return chunkP67L6WXL_js.getEntityBadgeColor; }
3514
3527
  });
3515
3528
  Object.defineProperty(exports, "getEntityGradient", {
3516
3529
  enumerable: true,
3517
- get: function () { return chunk7LCEP4X5_js.getEntityGradient; }
3530
+ get: function () { return chunkP67L6WXL_js.getEntityGradient; }
3518
3531
  });
3519
3532
  Object.defineProperty(exports, "getEntityHandleColor", {
3520
3533
  enumerable: true,
3521
- get: function () { return chunk7LCEP4X5_js.getEntityHandleColor; }
3534
+ get: function () { return chunkP67L6WXL_js.getEntityHandleColor; }
3522
3535
  });
3523
3536
  Object.defineProperty(exports, "getEntityIcon", {
3524
3537
  enumerable: true,
3525
- get: function () { return chunk7LCEP4X5_js.getEntityIcon; }
3538
+ get: function () { return chunkP67L6WXL_js.getEntityIcon; }
3526
3539
  });
3527
3540
  Object.defineProperty(exports, "getEntityMinimapColor", {
3528
3541
  enumerable: true,
3529
- get: function () { return chunk7LCEP4X5_js.getEntityMinimapColor; }
3542
+ get: function () { return chunkP67L6WXL_js.getEntityMinimapColor; }
3530
3543
  });
3531
3544
  Object.defineProperty(exports, "getFrameworkMeta", {
3532
3545
  enumerable: true,
3533
- get: function () { return chunk7LCEP4X5_js.getFrameworkMeta; }
3546
+ get: function () { return chunkP67L6WXL_js.getFrameworkMeta; }
3534
3547
  });
3535
3548
  Object.defineProperty(exports, "getNodeExecutionAccent", {
3536
3549
  enumerable: true,
3537
- get: function () { return chunk7LCEP4X5_js.getNodeExecutionAccent; }
3550
+ get: function () { return chunkP67L6WXL_js.getNodeExecutionAccent; }
3538
3551
  });
3539
3552
  Object.defineProperty(exports, "getNodeExecutionAccentRgb", {
3540
3553
  enumerable: true,
3541
- get: function () { return chunk7LCEP4X5_js.getNodeExecutionAccentRgb; }
3554
+ get: function () { return chunkP67L6WXL_js.getNodeExecutionAccentRgb; }
3542
3555
  });
3543
3556
  Object.defineProperty(exports, "isModelCompatibleWithFramework", {
3544
3557
  enumerable: true,
3545
- get: function () { return chunk7LCEP4X5_js.isModelCompatibleWithFramework; }
3558
+ get: function () { return chunkP67L6WXL_js.isModelCompatibleWithFramework; }
3546
3559
  });
3547
3560
  Object.defineProperty(exports, "useModalStore", {
3548
3561
  enumerable: true,
3549
- get: function () { return chunk7LCEP4X5_js.useModalStore; }
3562
+ get: function () { return chunkP67L6WXL_js.useModalStore; }
3550
3563
  });
3551
3564
  Object.defineProperty(exports, "useWorkflowBuilderClient", {
3552
3565
  enumerable: true,
3553
- get: function () { return chunk7LCEP4X5_js.useWorkflowBuilderClient; }
3566
+ get: function () { return chunkP67L6WXL_js.useWorkflowBuilderClient; }
3554
3567
  });
3555
3568
  Object.defineProperty(exports, "useWorkflowBuilderClientOptional", {
3556
3569
  enumerable: true,
3557
- get: function () { return chunk7LCEP4X5_js.useWorkflowBuilderClientOptional; }
3570
+ get: function () { return chunkP67L6WXL_js.useWorkflowBuilderClientOptional; }
3558
3571
  });
3559
3572
  Object.defineProperty(exports, "useWorkflowStore", {
3560
3573
  enumerable: true,
3561
- get: function () { return chunk7LCEP4X5_js.useWorkflowStore; }
3574
+ get: function () { return chunkP67L6WXL_js.useWorkflowStore; }
3562
3575
  });
3563
3576
  Object.defineProperty(exports, "GraphNodeBadge", {
3564
3577
  enumerable: true,
@@ -3578,15 +3591,15 @@ Object.defineProperty(exports, "GraphNodeMeta", {
3578
3591
  });
3579
3592
  Object.defineProperty(exports, "applyDagreLayout", {
3580
3593
  enumerable: true,
3581
- get: function () { return chunkPWBWP5FJ_js.applyDagreLayout; }
3594
+ get: function () { return chunkC7BI5LQ6_js.applyDagreLayout; }
3582
3595
  });
3583
3596
  Object.defineProperty(exports, "createDefaultLogicNodeConfig", {
3584
3597
  enumerable: true,
3585
- get: function () { return chunkPWBWP5FJ_js.createDefaultLogicNodeConfig; }
3598
+ get: function () { return chunkC7BI5LQ6_js.createDefaultLogicNodeConfig; }
3586
3599
  });
3587
3600
  Object.defineProperty(exports, "getAgentTier", {
3588
3601
  enumerable: true,
3589
- get: function () { return chunkPWBWP5FJ_js.getAgentTier; }
3602
+ get: function () { return chunkC7BI5LQ6_js.getAgentTier; }
3590
3603
  });
3591
3604
  exports.AgentModal = AgentModal;
3592
3605
  exports.AmazonNovaIcon = AmazonNovaIcon;