@datatechsolutions/ui 2.11.8 → 2.11.10
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 +15 -3
- package/dist/astrlabe/index.d.ts +15 -3
- package/dist/astrlabe/index.js +96 -54
- package/dist/astrlabe/index.js.map +1 -1
- package/dist/astrlabe/index.mjs +97 -55
- package/dist/astrlabe/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -234,32 +234,44 @@ type WorkspaceModalProps = {
|
|
|
234
234
|
onClose: () => void;
|
|
235
235
|
title: string;
|
|
236
236
|
subtitle?: string;
|
|
237
|
+
label?: string;
|
|
237
238
|
icon?: ReactNode;
|
|
238
239
|
gradient?: string;
|
|
239
240
|
maxWidth?: string | GlassModalSize;
|
|
241
|
+
headerActions?: ReactNode;
|
|
242
|
+
footer?: ReactNode;
|
|
240
243
|
tabs?: ReactNode;
|
|
241
244
|
children: ReactNode;
|
|
242
245
|
};
|
|
243
|
-
declare function WorkspaceModal({ open, onClose, title, subtitle, icon, gradient, maxWidth, tabs, children, }: WorkspaceModalProps): react_jsx_runtime.JSX.Element;
|
|
246
|
+
declare function WorkspaceModal({ open, onClose, title, subtitle, label, icon, gradient, maxWidth, headerActions, footer, tabs, children, }: WorkspaceModalProps): react_jsx_runtime.JSX.Element;
|
|
244
247
|
|
|
245
248
|
type PipelineSettingsModalProps = {
|
|
246
249
|
onSave: (name: string, description: string) => Promise<void>;
|
|
247
250
|
};
|
|
248
251
|
declare function PipelineSettingsModal({ onSave }: PipelineSettingsModalProps): react_jsx_runtime.JSX.Element;
|
|
249
252
|
|
|
253
|
+
type ModelProvider = {
|
|
254
|
+
id: string;
|
|
255
|
+
name: string;
|
|
256
|
+
provider: string;
|
|
257
|
+
modelCount: number;
|
|
258
|
+
configured: boolean;
|
|
259
|
+
};
|
|
250
260
|
type NodePaletteProps = {
|
|
251
261
|
agents: AgentWithPrompts[];
|
|
252
262
|
tools: Subworkflow[];
|
|
253
263
|
agentTools?: AgentTool[];
|
|
254
264
|
rules: AgentRule[];
|
|
255
265
|
entities?: WorkflowEntityDefinition[];
|
|
266
|
+
modelProviders?: ModelProvider[];
|
|
256
267
|
onCreateAgent?: () => void;
|
|
257
268
|
onCreateTool?: () => void;
|
|
258
269
|
onCreateAgentTool?: () => void;
|
|
259
270
|
onCreateRule?: () => void;
|
|
260
271
|
onCreateDatasource?: () => void;
|
|
272
|
+
onConfigureProvider?: (providerId: string) => void;
|
|
261
273
|
};
|
|
262
|
-
declare function NodePalette({ agents, tools, agentTools, rules, entities, onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource }: NodePaletteProps): react_jsx_runtime.JSX.Element;
|
|
274
|
+
declare function NodePalette({ agents, tools, agentTools, rules, entities, modelProviders, onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource, onConfigureProvider }: NodePaletteProps): react_jsx_runtime.JSX.Element;
|
|
263
275
|
|
|
264
276
|
type WorkflowListBarProps = {
|
|
265
277
|
workflows: Workflow[];
|
|
@@ -711,4 +723,4 @@ declare function getEntityBadgeColor(entityKey: string | undefined): string;
|
|
|
711
723
|
declare function getEntityHandleColor(entityKey: string | undefined): string;
|
|
712
724
|
declare function getEntityMinimapColor(entityKey: string | undefined): string;
|
|
713
725
|
|
|
714
|
-
export { AgentFlowNode, type AgentFramework, AgentModal, AgentNodeData, AgentToolFlowNode, AgentWithPrompts, AmazonNovaIcon, AnswerFlowNode, AnswerNodeData, AnthropicIcon, AnthropicModelIcon, AutoSaveWorkspace, type AutoSaveWorkspaceProps, CodeFlowNode, CodeNodeData, CrewAIIcon, DocumentExtractorFlowNode, DocumentExtractorNodeData, DslExportModal, DslImportModal, DynamicIslandConfirm, type DynamicIslandConfirmProps, EndFlowNode, EndNodeData, EntityFlowNode, EntityNodeData, FRAMEWORK_META, GoogleADKIcon, GroupFlowNode, GroupNodeData, HttpRequestFlowNode, HttpRequestNodeData, IfElseFlowNode, IfElseNodeData, IterationFlowNode, IterationNodeData, IterationStartFlowNode, IterationStartNodeData, KnowledgeBaseFlowNode, KnowledgeBaseNodeData, LOGIC_ICON_MAP, LOGIC_NODE_BADGE_COLORS, LOGIC_NODE_GRADIENTS, LOGIC_NODE_HANDLE_COLORS, LangChainIcon, LayoutDirection, ListOperatorFlowNode, ListOperatorNodeData, LogicNodeModal, MINIMAP_NODE_COLORS, MetaLlamaIcon, NodeCard, NodeContextMenu, NodePalette, type NodeRunResult, NoteFlowNode, NoteNodeData, OpenAIIcon, PanelContextMenu, ParameterExtractorFlowNode, ParameterExtractorNodeData, PipelineSettingsModal, PreviewPanel, type PreviewPanelProps, QuestionClassifierFlowNode, QuestionClassifierNodeData, RuleFlowNode, RuleNodeData, RunInputDialog, type RunInputDialogProps, RunPanel, SaveStatusBadge, type SaveStatusBadgeProps, SelectionContextMenu, StartFlowNode, StartNodeData, StrandsIcon, SubworkflowModal, TemplateTransformFlowNode, TemplateTransformNodeData, ToolFlowNode, ToolNodeData, VariableAggregatorFlowNode, VariableAggregatorNodeData, VariableAssignerFlowNode, VariableAssignerNodeData, VariableInspector, VersionHistoryPanel, type WorkflowBuilderClient, WorkflowBuilderProvider, type WorkflowBuilderProviderProps, WorkflowEntityDefinition, WorkflowGraph, WorkflowListBar, type WorkflowStore, type WorkspaceBootstrapPayload, WorkspaceModal, WorkspaceProps, getCompatibleModels, getDefaultFrameworkForModel, getEntityBadgeColor, getEntityGradient, getEntityHandleColor, getEntityIcon, getEntityMinimapColor, getFrameworkMeta, getModelIcon, isModelCompatibleWithFramework, useCanRedo, useCanUndo, useCanvasShortcuts, useClipboard, useContextMenu, useEditingNodeId, useHasCopied, useHelpLines, useIsRunning, useModalStore, useNodeResults, useSelectedNodeCount, useSubworkflowStore, useUndoRedo, useWorkflowBuilderClient, useWorkflowBuilderClientOptional, useWorkflowStore };
|
|
726
|
+
export { AgentFlowNode, type AgentFramework, AgentModal, AgentNodeData, AgentToolFlowNode, AgentWithPrompts, AmazonNovaIcon, AnswerFlowNode, AnswerNodeData, AnthropicIcon, AnthropicModelIcon, AutoSaveWorkspace, type AutoSaveWorkspaceProps, CodeFlowNode, CodeNodeData, CrewAIIcon, DocumentExtractorFlowNode, DocumentExtractorNodeData, DslExportModal, DslImportModal, DynamicIslandConfirm, type DynamicIslandConfirmProps, EndFlowNode, EndNodeData, EntityFlowNode, EntityNodeData, FRAMEWORK_META, GoogleADKIcon, GroupFlowNode, GroupNodeData, HttpRequestFlowNode, HttpRequestNodeData, IfElseFlowNode, IfElseNodeData, IterationFlowNode, IterationNodeData, IterationStartFlowNode, IterationStartNodeData, KnowledgeBaseFlowNode, KnowledgeBaseNodeData, LOGIC_ICON_MAP, LOGIC_NODE_BADGE_COLORS, LOGIC_NODE_GRADIENTS, LOGIC_NODE_HANDLE_COLORS, LangChainIcon, LayoutDirection, ListOperatorFlowNode, ListOperatorNodeData, LogicNodeModal, MINIMAP_NODE_COLORS, MetaLlamaIcon, type ModelProvider, NodeCard, NodeContextMenu, NodePalette, type NodeRunResult, NoteFlowNode, NoteNodeData, OpenAIIcon, PanelContextMenu, ParameterExtractorFlowNode, ParameterExtractorNodeData, PipelineSettingsModal, PreviewPanel, type PreviewPanelProps, QuestionClassifierFlowNode, QuestionClassifierNodeData, RuleFlowNode, RuleNodeData, RunInputDialog, type RunInputDialogProps, RunPanel, SaveStatusBadge, type SaveStatusBadgeProps, SelectionContextMenu, StartFlowNode, StartNodeData, StrandsIcon, SubworkflowModal, TemplateTransformFlowNode, TemplateTransformNodeData, ToolFlowNode, ToolNodeData, VariableAggregatorFlowNode, VariableAggregatorNodeData, VariableAssignerFlowNode, VariableAssignerNodeData, VariableInspector, VersionHistoryPanel, type WorkflowBuilderClient, WorkflowBuilderProvider, type WorkflowBuilderProviderProps, WorkflowEntityDefinition, WorkflowGraph, WorkflowListBar, type WorkflowStore, type WorkspaceBootstrapPayload, WorkspaceModal, WorkspaceProps, getCompatibleModels, getDefaultFrameworkForModel, getEntityBadgeColor, getEntityGradient, getEntityHandleColor, getEntityIcon, getEntityMinimapColor, getFrameworkMeta, getModelIcon, isModelCompatibleWithFramework, useCanRedo, useCanUndo, useCanvasShortcuts, useClipboard, useContextMenu, useEditingNodeId, useHasCopied, useHelpLines, useIsRunning, useModalStore, useNodeResults, useSelectedNodeCount, useSubworkflowStore, useUndoRedo, useWorkflowBuilderClient, useWorkflowBuilderClientOptional, useWorkflowStore };
|
package/dist/astrlabe/index.d.ts
CHANGED
|
@@ -234,32 +234,44 @@ type WorkspaceModalProps = {
|
|
|
234
234
|
onClose: () => void;
|
|
235
235
|
title: string;
|
|
236
236
|
subtitle?: string;
|
|
237
|
+
label?: string;
|
|
237
238
|
icon?: ReactNode;
|
|
238
239
|
gradient?: string;
|
|
239
240
|
maxWidth?: string | GlassModalSize;
|
|
241
|
+
headerActions?: ReactNode;
|
|
242
|
+
footer?: ReactNode;
|
|
240
243
|
tabs?: ReactNode;
|
|
241
244
|
children: ReactNode;
|
|
242
245
|
};
|
|
243
|
-
declare function WorkspaceModal({ open, onClose, title, subtitle, icon, gradient, maxWidth, tabs, children, }: WorkspaceModalProps): react_jsx_runtime.JSX.Element;
|
|
246
|
+
declare function WorkspaceModal({ open, onClose, title, subtitle, label, icon, gradient, maxWidth, headerActions, footer, tabs, children, }: WorkspaceModalProps): react_jsx_runtime.JSX.Element;
|
|
244
247
|
|
|
245
248
|
type PipelineSettingsModalProps = {
|
|
246
249
|
onSave: (name: string, description: string) => Promise<void>;
|
|
247
250
|
};
|
|
248
251
|
declare function PipelineSettingsModal({ onSave }: PipelineSettingsModalProps): react_jsx_runtime.JSX.Element;
|
|
249
252
|
|
|
253
|
+
type ModelProvider = {
|
|
254
|
+
id: string;
|
|
255
|
+
name: string;
|
|
256
|
+
provider: string;
|
|
257
|
+
modelCount: number;
|
|
258
|
+
configured: boolean;
|
|
259
|
+
};
|
|
250
260
|
type NodePaletteProps = {
|
|
251
261
|
agents: AgentWithPrompts[];
|
|
252
262
|
tools: Subworkflow[];
|
|
253
263
|
agentTools?: AgentTool[];
|
|
254
264
|
rules: AgentRule[];
|
|
255
265
|
entities?: WorkflowEntityDefinition[];
|
|
266
|
+
modelProviders?: ModelProvider[];
|
|
256
267
|
onCreateAgent?: () => void;
|
|
257
268
|
onCreateTool?: () => void;
|
|
258
269
|
onCreateAgentTool?: () => void;
|
|
259
270
|
onCreateRule?: () => void;
|
|
260
271
|
onCreateDatasource?: () => void;
|
|
272
|
+
onConfigureProvider?: (providerId: string) => void;
|
|
261
273
|
};
|
|
262
|
-
declare function NodePalette({ agents, tools, agentTools, rules, entities, onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource }: NodePaletteProps): react_jsx_runtime.JSX.Element;
|
|
274
|
+
declare function NodePalette({ agents, tools, agentTools, rules, entities, modelProviders, onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource, onConfigureProvider }: NodePaletteProps): react_jsx_runtime.JSX.Element;
|
|
263
275
|
|
|
264
276
|
type WorkflowListBarProps = {
|
|
265
277
|
workflows: Workflow[];
|
|
@@ -711,4 +723,4 @@ declare function getEntityBadgeColor(entityKey: string | undefined): string;
|
|
|
711
723
|
declare function getEntityHandleColor(entityKey: string | undefined): string;
|
|
712
724
|
declare function getEntityMinimapColor(entityKey: string | undefined): string;
|
|
713
725
|
|
|
714
|
-
export { AgentFlowNode, type AgentFramework, AgentModal, AgentNodeData, AgentToolFlowNode, AgentWithPrompts, AmazonNovaIcon, AnswerFlowNode, AnswerNodeData, AnthropicIcon, AnthropicModelIcon, AutoSaveWorkspace, type AutoSaveWorkspaceProps, CodeFlowNode, CodeNodeData, CrewAIIcon, DocumentExtractorFlowNode, DocumentExtractorNodeData, DslExportModal, DslImportModal, DynamicIslandConfirm, type DynamicIslandConfirmProps, EndFlowNode, EndNodeData, EntityFlowNode, EntityNodeData, FRAMEWORK_META, GoogleADKIcon, GroupFlowNode, GroupNodeData, HttpRequestFlowNode, HttpRequestNodeData, IfElseFlowNode, IfElseNodeData, IterationFlowNode, IterationNodeData, IterationStartFlowNode, IterationStartNodeData, KnowledgeBaseFlowNode, KnowledgeBaseNodeData, LOGIC_ICON_MAP, LOGIC_NODE_BADGE_COLORS, LOGIC_NODE_GRADIENTS, LOGIC_NODE_HANDLE_COLORS, LangChainIcon, LayoutDirection, ListOperatorFlowNode, ListOperatorNodeData, LogicNodeModal, MINIMAP_NODE_COLORS, MetaLlamaIcon, NodeCard, NodeContextMenu, NodePalette, type NodeRunResult, NoteFlowNode, NoteNodeData, OpenAIIcon, PanelContextMenu, ParameterExtractorFlowNode, ParameterExtractorNodeData, PipelineSettingsModal, PreviewPanel, type PreviewPanelProps, QuestionClassifierFlowNode, QuestionClassifierNodeData, RuleFlowNode, RuleNodeData, RunInputDialog, type RunInputDialogProps, RunPanel, SaveStatusBadge, type SaveStatusBadgeProps, SelectionContextMenu, StartFlowNode, StartNodeData, StrandsIcon, SubworkflowModal, TemplateTransformFlowNode, TemplateTransformNodeData, ToolFlowNode, ToolNodeData, VariableAggregatorFlowNode, VariableAggregatorNodeData, VariableAssignerFlowNode, VariableAssignerNodeData, VariableInspector, VersionHistoryPanel, type WorkflowBuilderClient, WorkflowBuilderProvider, type WorkflowBuilderProviderProps, WorkflowEntityDefinition, WorkflowGraph, WorkflowListBar, type WorkflowStore, type WorkspaceBootstrapPayload, WorkspaceModal, WorkspaceProps, getCompatibleModels, getDefaultFrameworkForModel, getEntityBadgeColor, getEntityGradient, getEntityHandleColor, getEntityIcon, getEntityMinimapColor, getFrameworkMeta, getModelIcon, isModelCompatibleWithFramework, useCanRedo, useCanUndo, useCanvasShortcuts, useClipboard, useContextMenu, useEditingNodeId, useHasCopied, useHelpLines, useIsRunning, useModalStore, useNodeResults, useSelectedNodeCount, useSubworkflowStore, useUndoRedo, useWorkflowBuilderClient, useWorkflowBuilderClientOptional, useWorkflowStore };
|
|
726
|
+
export { AgentFlowNode, type AgentFramework, AgentModal, AgentNodeData, AgentToolFlowNode, AgentWithPrompts, AmazonNovaIcon, AnswerFlowNode, AnswerNodeData, AnthropicIcon, AnthropicModelIcon, AutoSaveWorkspace, type AutoSaveWorkspaceProps, CodeFlowNode, CodeNodeData, CrewAIIcon, DocumentExtractorFlowNode, DocumentExtractorNodeData, DslExportModal, DslImportModal, DynamicIslandConfirm, type DynamicIslandConfirmProps, EndFlowNode, EndNodeData, EntityFlowNode, EntityNodeData, FRAMEWORK_META, GoogleADKIcon, GroupFlowNode, GroupNodeData, HttpRequestFlowNode, HttpRequestNodeData, IfElseFlowNode, IfElseNodeData, IterationFlowNode, IterationNodeData, IterationStartFlowNode, IterationStartNodeData, KnowledgeBaseFlowNode, KnowledgeBaseNodeData, LOGIC_ICON_MAP, LOGIC_NODE_BADGE_COLORS, LOGIC_NODE_GRADIENTS, LOGIC_NODE_HANDLE_COLORS, LangChainIcon, LayoutDirection, ListOperatorFlowNode, ListOperatorNodeData, LogicNodeModal, MINIMAP_NODE_COLORS, MetaLlamaIcon, type ModelProvider, NodeCard, NodeContextMenu, NodePalette, type NodeRunResult, NoteFlowNode, NoteNodeData, OpenAIIcon, PanelContextMenu, ParameterExtractorFlowNode, ParameterExtractorNodeData, PipelineSettingsModal, PreviewPanel, type PreviewPanelProps, QuestionClassifierFlowNode, QuestionClassifierNodeData, RuleFlowNode, RuleNodeData, RunInputDialog, type RunInputDialogProps, RunPanel, SaveStatusBadge, type SaveStatusBadgeProps, SelectionContextMenu, StartFlowNode, StartNodeData, StrandsIcon, SubworkflowModal, TemplateTransformFlowNode, TemplateTransformNodeData, ToolFlowNode, ToolNodeData, VariableAggregatorFlowNode, VariableAggregatorNodeData, VariableAssignerFlowNode, VariableAssignerNodeData, VariableInspector, VersionHistoryPanel, type WorkflowBuilderClient, WorkflowBuilderProvider, type WorkflowBuilderProviderProps, WorkflowEntityDefinition, WorkflowGraph, WorkflowListBar, type WorkflowStore, type WorkspaceBootstrapPayload, WorkspaceModal, WorkspaceProps, getCompatibleModels, getDefaultFrameworkForModel, getEntityBadgeColor, getEntityGradient, getEntityHandleColor, getEntityIcon, getEntityMinimapColor, getFrameworkMeta, getModelIcon, isModelCompatibleWithFramework, useCanRedo, useCanUndo, useCanvasShortcuts, useClipboard, useContextMenu, useEditingNodeId, useHasCopied, useHelpLines, useIsRunning, useModalStore, useNodeResults, useSelectedNodeCount, useSubworkflowStore, useUndoRedo, useWorkflowBuilderClient, useWorkflowBuilderClientOptional, useWorkflowStore };
|
package/dist/astrlabe/index.js
CHANGED
|
@@ -952,9 +952,12 @@ function WorkspaceModal({
|
|
|
952
952
|
onClose,
|
|
953
953
|
title,
|
|
954
954
|
subtitle,
|
|
955
|
+
label,
|
|
955
956
|
icon,
|
|
956
957
|
gradient = "from-gray-400 to-gray-500",
|
|
957
958
|
maxWidth = "2xl",
|
|
959
|
+
headerActions,
|
|
960
|
+
footer,
|
|
958
961
|
tabs,
|
|
959
962
|
children
|
|
960
963
|
}) {
|
|
@@ -966,9 +969,12 @@ function WorkspaceModal({
|
|
|
966
969
|
onClose,
|
|
967
970
|
title,
|
|
968
971
|
subtitle,
|
|
972
|
+
label,
|
|
969
973
|
icon,
|
|
970
974
|
gradient,
|
|
971
975
|
maxWidth: resolvedSize,
|
|
976
|
+
headerActions,
|
|
977
|
+
footer,
|
|
972
978
|
children: [
|
|
973
979
|
tabs,
|
|
974
980
|
children
|
|
@@ -1183,7 +1189,7 @@ function LogicNodeItemCard({ item, translationFunction }) {
|
|
|
1183
1189
|
}
|
|
1184
1190
|
);
|
|
1185
1191
|
}
|
|
1186
|
-
function NodePalette({ agents, tools, agentTools = [], rules, entities = [], onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource }) {
|
|
1192
|
+
function NodePalette({ agents, tools, agentTools = [], rules, entities = [], modelProviders = [], onCreateAgent, onCreateTool, onCreateAgentTool, onCreateRule, onCreateDatasource, onConfigureProvider }) {
|
|
1187
1193
|
const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
|
|
1188
1194
|
const [searchQuery, setSearchQuery] = react.useState("");
|
|
1189
1195
|
const normalizedQuery = searchQuery.toLowerCase().trim();
|
|
@@ -1211,6 +1217,12 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], onC
|
|
|
1211
1217
|
) : rules,
|
|
1212
1218
|
[rules, normalizedQuery]
|
|
1213
1219
|
);
|
|
1220
|
+
const filteredProviders = react.useMemo(
|
|
1221
|
+
() => normalizedQuery ? modelProviders.filter(
|
|
1222
|
+
(provider) => provider.name.toLowerCase().includes(normalizedQuery) || provider.provider.toLowerCase().includes(normalizedQuery)
|
|
1223
|
+
) : modelProviders,
|
|
1224
|
+
[modelProviders, normalizedQuery]
|
|
1225
|
+
);
|
|
1214
1226
|
const entityTypes = react.useMemo(
|
|
1215
1227
|
() => entities.map((entity) => ({
|
|
1216
1228
|
id: entity.id,
|
|
@@ -1275,58 +1287,55 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], onC
|
|
|
1275
1287
|
colorClass: "text-indigo-600 dark:text-indigo-400",
|
|
1276
1288
|
onAdd: onCreateAgent,
|
|
1277
1289
|
addLabel: t("newAgent"),
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
/* @__PURE__ */ jsxRuntime.
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5", children: [
|
|
1291
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs font-medium text-gray-900 dark:text-white", children: agent.name }),
|
|
1292
|
-
(() => {
|
|
1293
|
-
const tier = chunkPWBWP5FJ_js.getAgentTier(Number(agent.elo ?? 0));
|
|
1294
|
-
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)}`) });
|
|
1295
|
-
})()
|
|
1290
|
+
count: filteredAgents.length + filteredAgentTools.length,
|
|
1291
|
+
children: filteredAgents.length === 0 && filteredAgentTools.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[10px] text-gray-400 dark:text-gray-500", children: t("noAgents") }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1292
|
+
filteredAgents.map((agent) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1293
|
+
"div",
|
|
1294
|
+
{
|
|
1295
|
+
draggable: true,
|
|
1296
|
+
onDragStart: (event) => onDragStart(event, "agent", agent.agentId, agent.name),
|
|
1297
|
+
className: "liquid-surface group flex items-center gap-2 rounded-lg px-3 py-2 transition-all cursor-grab hover:shadow-md active:cursor-grabbing",
|
|
1298
|
+
children: [
|
|
1299
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex-shrink-0", children: [
|
|
1300
|
+
agent.avatar ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: agent.avatar, alt: agent.name, className: "h-7 w-7 rounded-full bg-white shadow-sm ring-1 ring-gray-200/50 dark:bg-gray-800 dark:ring-white/10" }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-7 w-7 items-center justify-center rounded-full bg-gradient-to-br from-indigo-400 to-purple-500 shadow-sm", children: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-3.5 w-3.5 text-white" }) }),
|
|
1301
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -bottom-0.5 -right-0.5 flex h-3.5 w-3.5 items-center justify-center rounded-full bg-indigo-500 ring-1.5 ring-white dark:ring-gray-900", children: /* @__PURE__ */ jsxRuntime.jsx(outline.CpuChipIcon, { className: "h-2 w-2 text-white" }) })
|
|
1296
1302
|
] }),
|
|
1297
|
-
/* @__PURE__ */ jsxRuntime.
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1303
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
1304
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5", children: [
|
|
1305
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs font-medium text-gray-900 dark:text-white", children: agent.name }),
|
|
1306
|
+
(() => {
|
|
1307
|
+
const tier = chunkPWBWP5FJ_js.getAgentTier(Number(agent.elo ?? 0));
|
|
1308
|
+
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)}`) });
|
|
1309
|
+
})()
|
|
1310
|
+
] }),
|
|
1311
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-[10px] text-gray-400 dark:text-gray-500", children: agent.role ?? agent.agentId })
|
|
1312
|
+
] })
|
|
1313
|
+
]
|
|
1314
|
+
},
|
|
1315
|
+
agent.agentId
|
|
1316
|
+
)),
|
|
1317
|
+
filteredAgentTools.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1318
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-2 mb-1 flex items-center gap-1.5 px-1", children: [
|
|
1319
|
+
/* @__PURE__ */ jsxRuntime.jsx(outline.CommandLineIcon, { className: "h-2.5 w-2.5 text-amber-500 dark:text-amber-400" }),
|
|
1320
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[9px] font-semibold uppercase tracking-wider text-amber-600 dark:text-amber-400", children: t("agentToolsSection") }),
|
|
1321
|
+
onCreateAgentTool && /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: onCreateAgentTool, className: "ml-auto text-[9px] font-medium text-amber-500 hover:text-amber-600 dark:text-amber-400", children: /* @__PURE__ */ jsxRuntime.jsx(outline.PlusIcon, { className: "h-3 w-3" }) })
|
|
1322
|
+
] }),
|
|
1323
|
+
filteredAgentTools.map((agentTool) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1324
|
+
"div",
|
|
1325
|
+
{
|
|
1326
|
+
draggable: true,
|
|
1327
|
+
onDragStart: (event) => onDragStart(event, "agent_tool", agentTool.agentToolId, agentTool.name),
|
|
1328
|
+
className: "liquid-surface group flex items-center gap-2 rounded-lg px-3 py-1.5 transition-all cursor-grab hover:shadow-md active:cursor-grabbing",
|
|
1329
|
+
children: [
|
|
1330
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-5 w-5 items-center justify-center rounded-md bg-gradient-to-br from-amber-400 to-orange-500 shadow-sm", children: /* @__PURE__ */ jsxRuntime.jsx(outline.CommandLineIcon, { className: "h-3 w-3 text-white" }) }),
|
|
1331
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-[11px] font-medium text-gray-900 dark:text-white", children: agentTool.name }) }),
|
|
1332
|
+
!agentTool.enabled && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "rounded-full bg-gray-100 px-1.5 py-0.5 text-[8px] font-medium text-gray-500 dark:bg-white/10 dark:text-gray-400", children: "off" })
|
|
1333
|
+
]
|
|
1334
|
+
},
|
|
1335
|
+
agentTool.agentToolId
|
|
1336
|
+
))
|
|
1337
|
+
] })
|
|
1338
|
+
] })
|
|
1330
1339
|
}
|
|
1331
1340
|
),
|
|
1332
1341
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1429,6 +1438,36 @@ function NodePalette({ agents, tools, agentTools = [], rules, entities = [], onC
|
|
|
1429
1438
|
})
|
|
1430
1439
|
}
|
|
1431
1440
|
),
|
|
1441
|
+
filteredProviders.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1442
|
+
CollapsibleSection,
|
|
1443
|
+
{
|
|
1444
|
+
title: t("modelProvidersSection"),
|
|
1445
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.KeyIcon, { className: "h-3 w-3" }),
|
|
1446
|
+
colorClass: "text-rose-600 dark:text-rose-400",
|
|
1447
|
+
count: filteredProviders.length,
|
|
1448
|
+
children: filteredProviders.map((provider) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1449
|
+
"div",
|
|
1450
|
+
{
|
|
1451
|
+
className: "liquid-surface group flex items-center gap-2 rounded-lg px-3 py-2 transition-all cursor-pointer hover:shadow-md",
|
|
1452
|
+
onClick: () => onConfigureProvider?.(provider.id),
|
|
1453
|
+
role: "button",
|
|
1454
|
+
tabIndex: 0,
|
|
1455
|
+
children: [
|
|
1456
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-6 w-6 items-center justify-center rounded-md bg-gradient-to-br from-rose-400 to-pink-500 shadow-sm", children: /* @__PURE__ */ jsxRuntime.jsx(outline.KeyIcon, { className: "h-3.5 w-3.5 text-white" }) }),
|
|
1457
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
1458
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-xs font-medium text-gray-900 dark:text-white", children: provider.name }),
|
|
1459
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "truncate text-[10px] text-gray-400 dark:text-gray-500", children: [
|
|
1460
|
+
provider.modelCount,
|
|
1461
|
+
" models"
|
|
1462
|
+
] })
|
|
1463
|
+
] }),
|
|
1464
|
+
provider.configured ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "rounded-full bg-green-100 px-1.5 py-0.5 text-[9px] font-medium text-green-600 dark:bg-green-500/10 dark:text-green-400", children: t("configured") }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "rounded-full bg-amber-100 px-1.5 py-0.5 text-[9px] font-medium text-amber-600 dark:bg-amber-500/10 dark:text-amber-400", children: t("setup") })
|
|
1465
|
+
]
|
|
1466
|
+
},
|
|
1467
|
+
provider.id
|
|
1468
|
+
))
|
|
1469
|
+
}
|
|
1470
|
+
),
|
|
1432
1471
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1433
1472
|
CollapsibleSection,
|
|
1434
1473
|
{
|
|
@@ -2514,7 +2553,7 @@ function DslExportModal({ open, onClose, workflow, graph }) {
|
|
|
2514
2553
|
"data-testid": "export-copy-button",
|
|
2515
2554
|
children: isCopied ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
2516
2555
|
/* @__PURE__ */ jsxRuntime.jsx(outline.CheckIcon, { className: "h-4 w-4 text-green-500" }),
|
|
2517
|
-
translations("copied")
|
|
2556
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { role: "status", "aria-live": "polite", children: translations("copied") })
|
|
2518
2557
|
] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
2519
2558
|
/* @__PURE__ */ jsxRuntime.jsx(outline.ClipboardDocumentIcon, { className: "h-4 w-4" }),
|
|
2520
2559
|
translations("copyToClipboard")
|
|
@@ -2699,6 +2738,9 @@ function DslImportModal({ open, onClose, onImport }) {
|
|
|
2699
2738
|
onClick: handleClickUpload,
|
|
2700
2739
|
className: `cursor-pointer rounded-xl border-2 border-dashed p-8 text-center transition-colors duration-200 ${isDragActive ? "border-blue-400 bg-blue-50 dark:border-blue-500 dark:bg-blue-500/10" : "border-gray-300 hover:border-gray-400 dark:border-gray-600 dark:hover:border-gray-500"}`,
|
|
2701
2740
|
"data-testid": "import-dropzone",
|
|
2741
|
+
role: "button",
|
|
2742
|
+
tabIndex: 0,
|
|
2743
|
+
"aria-label": translations("dropzone"),
|
|
2702
2744
|
children: [
|
|
2703
2745
|
/* @__PURE__ */ jsxRuntime.jsx(outline.ArrowUpTrayIcon, { className: "mx-auto h-10 w-10 text-gray-400 dark:text-gray-500" }),
|
|
2704
2746
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-3 text-sm font-medium text-gray-700 dark:text-gray-300", children: translations("dropzone") }),
|
|
@@ -2738,7 +2780,7 @@ function DslImportModal({ open, onClose, onImport }) {
|
|
|
2738
2780
|
validationResult.edgeCount
|
|
2739
2781
|
] })
|
|
2740
2782
|
] })
|
|
2741
|
-
] }) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20", children: [
|
|
2783
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsxs("div", { role: "alert", className: "rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20", children: [
|
|
2742
2784
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2743
2785
|
/* @__PURE__ */ jsxRuntime.jsx(outline.ExclamationTriangleIcon, { className: "h-5 w-5 text-red-500" }),
|
|
2744
2786
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-red-700 dark:text-red-400", children: translations("validationFailed") })
|