@datatechsolutions/ui 2.11.55 → 2.11.57

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.
@@ -4,7 +4,7 @@
4
4
  * Self-contained workflow contracts for embeddable usage.
5
5
  * No dependency on shared-domain.
6
6
  */
7
- type WorkflowNodeType = 'agent' | 'tool' | 'agent_tool' | 'rule' | 'start' | 'end' | 'if_else' | 'code' | 'http_request' | 'template_transform' | 'iteration' | 'knowledge_base' | 'answer' | 'question_classifier' | 'parameter_extractor' | 'variable_assigner' | 'variable_aggregator' | 'document_extractor' | 'list_operator' | 'iteration_start' | 'note' | 'entity' | 'datasource' | 'model_provider' | 'group';
7
+ type WorkflowNodeType = 'agent' | 'tool' | 'agent_tool' | 'rule' | 'start' | 'end' | 'if_else' | 'code' | 'http_request' | 'template_transform' | 'iteration' | 'knowledge_base' | 'answer' | 'question_classifier' | 'parameter_extractor' | 'variable_assigner' | 'variable_aggregator' | 'document_extractor' | 'list_operator' | 'iteration_start' | 'note' | 'entity' | 'datasource' | 'model_provider' | 'dashboard_output' | 'group';
8
8
  type StartNodeConfig = {
9
9
  type: 'start';
10
10
  inputVariables: string[];
@@ -34,6 +34,10 @@ type HttpRequestNodeConfig = {
34
34
  headers: Record<string, string>;
35
35
  body: string;
36
36
  timeoutMs: number;
37
+ /** How to decode the response body before storing it under `output.body`.
38
+ * `json` (default) tries `serde_json::from_slice` and falls back to text.
39
+ * `text` always stores the body as a raw string — use for RSS/HTML/XML. */
40
+ parseResponse?: 'json' | 'text';
37
41
  };
38
42
  type TemplateTransformNodeConfig = {
39
43
  type: 'template_transform';
@@ -167,7 +171,20 @@ type ModelProviderNodeConfig = {
167
171
  apiKeyRef?: string;
168
172
  modelFilter?: string[];
169
173
  };
170
- type LogicNodeConfig = StartNodeConfig | EndNodeConfig | IfElseNodeConfig | CodeNodeConfig | HttpRequestNodeConfig | TemplateTransformNodeConfig | IterationNodeConfig | KnowledgeBaseNodeConfig | AnswerNodeConfig | QuestionClassifierNodeConfig | ParameterExtractorNodeConfig | VariableAssignerNodeConfig | VariableAggregatorNodeConfig | DocumentExtractorNodeConfig | ListOperatorNodeConfig | IterationStartNodeConfig | NoteNodeConfig | GroupNodeConfig | EntityNodeConfig | DatasourceNodeConfig | RuleNodeConfig | ModelProviderNodeConfig;
174
+ /**
175
+ * DashboardOutput is the terminal node that emits a DashboardSpec so the UI
176
+ * (astrlabe, fuel-price-ai, kori-erp) can render the run result without
177
+ * bespoke code. Either inline `dashboard` (literal spec) or `dashboardFrom`
178
+ * (reference to an upstream node's output) is used.
179
+ */
180
+ type DashboardOutputNodeConfig = {
181
+ type: 'dashboard_output';
182
+ /** Inline DashboardSpec literal. Shape matches @datatechsolutions/ui DashboardSpec. */
183
+ dashboard?: Record<string, unknown>;
184
+ /** Reference to an upstream node's value (`"nodeId"` or `"nodeId.path"`) that already conforms to DashboardSpec. */
185
+ dashboardFrom?: string;
186
+ };
187
+ type LogicNodeConfig = StartNodeConfig | EndNodeConfig | IfElseNodeConfig | CodeNodeConfig | HttpRequestNodeConfig | TemplateTransformNodeConfig | IterationNodeConfig | KnowledgeBaseNodeConfig | AnswerNodeConfig | QuestionClassifierNodeConfig | ParameterExtractorNodeConfig | VariableAssignerNodeConfig | VariableAggregatorNodeConfig | DocumentExtractorNodeConfig | ListOperatorNodeConfig | IterationStartNodeConfig | NoteNodeConfig | GroupNodeConfig | EntityNodeConfig | DatasourceNodeConfig | RuleNodeConfig | ModelProviderNodeConfig | DashboardOutputNodeConfig;
171
188
  type WorkflowNodeData = {
172
189
  entityId: string;
173
190
  label: string;
@@ -306,4 +323,4 @@ type AgentRule = {
306
323
  [key: string]: unknown;
307
324
  };
308
325
 
309
- export type { AgentConfig, AgentModel, AgentRule, AgentTool, AnswerNodeConfig, CodeNodeConfig, DatasourceNodeConfig, DocumentExtractorNodeConfig, EndNodeConfig, EntityNodeConfig, GroupNodeConfig, HttpRequestNodeConfig, IfElseNodeConfig, IterationNodeConfig, IterationStartNodeConfig, KnowledgeBaseNodeConfig, ListOperatorNodeConfig, LogicNodeConfig, ModelProviderNodeConfig, ModelProviderType, NodeExecutionResult, NoteNodeConfig, ParameterExtractorNodeConfig, QuestionClassifierNodeConfig, RuleNodeConfig, StartNodeConfig, TemplateTransformNodeConfig, VariableAggregatorNodeConfig, VariableAssignerNodeConfig, VariableValue, Workflow, WorkflowEdge, WorkflowGraph, WorkflowNode, WorkflowNodeData, WorkflowNodeStatus, WorkflowNodeType, WorkflowRun, WorkflowRunStatus, WorkflowTool, WorkflowViewport };
326
+ export type { AgentConfig, AgentModel, AgentRule, AgentTool, AnswerNodeConfig, CodeNodeConfig, DashboardOutputNodeConfig, DatasourceNodeConfig, DocumentExtractorNodeConfig, EndNodeConfig, EntityNodeConfig, GroupNodeConfig, HttpRequestNodeConfig, IfElseNodeConfig, IterationNodeConfig, IterationStartNodeConfig, KnowledgeBaseNodeConfig, ListOperatorNodeConfig, LogicNodeConfig, ModelProviderNodeConfig, ModelProviderType, NodeExecutionResult, NoteNodeConfig, ParameterExtractorNodeConfig, QuestionClassifierNodeConfig, RuleNodeConfig, StartNodeConfig, TemplateTransformNodeConfig, VariableAggregatorNodeConfig, VariableAssignerNodeConfig, VariableValue, Workflow, WorkflowEdge, WorkflowGraph, WorkflowNode, WorkflowNodeData, WorkflowNodeStatus, WorkflowNodeType, WorkflowRun, WorkflowRunStatus, WorkflowTool, WorkflowViewport };
@@ -4,7 +4,7 @@
4
4
  * Self-contained workflow contracts for embeddable usage.
5
5
  * No dependency on shared-domain.
6
6
  */
7
- type WorkflowNodeType = 'agent' | 'tool' | 'agent_tool' | 'rule' | 'start' | 'end' | 'if_else' | 'code' | 'http_request' | 'template_transform' | 'iteration' | 'knowledge_base' | 'answer' | 'question_classifier' | 'parameter_extractor' | 'variable_assigner' | 'variable_aggregator' | 'document_extractor' | 'list_operator' | 'iteration_start' | 'note' | 'entity' | 'datasource' | 'model_provider' | 'group';
7
+ type WorkflowNodeType = 'agent' | 'tool' | 'agent_tool' | 'rule' | 'start' | 'end' | 'if_else' | 'code' | 'http_request' | 'template_transform' | 'iteration' | 'knowledge_base' | 'answer' | 'question_classifier' | 'parameter_extractor' | 'variable_assigner' | 'variable_aggregator' | 'document_extractor' | 'list_operator' | 'iteration_start' | 'note' | 'entity' | 'datasource' | 'model_provider' | 'dashboard_output' | 'group';
8
8
  type StartNodeConfig = {
9
9
  type: 'start';
10
10
  inputVariables: string[];
@@ -34,6 +34,10 @@ type HttpRequestNodeConfig = {
34
34
  headers: Record<string, string>;
35
35
  body: string;
36
36
  timeoutMs: number;
37
+ /** How to decode the response body before storing it under `output.body`.
38
+ * `json` (default) tries `serde_json::from_slice` and falls back to text.
39
+ * `text` always stores the body as a raw string — use for RSS/HTML/XML. */
40
+ parseResponse?: 'json' | 'text';
37
41
  };
38
42
  type TemplateTransformNodeConfig = {
39
43
  type: 'template_transform';
@@ -167,7 +171,20 @@ type ModelProviderNodeConfig = {
167
171
  apiKeyRef?: string;
168
172
  modelFilter?: string[];
169
173
  };
170
- type LogicNodeConfig = StartNodeConfig | EndNodeConfig | IfElseNodeConfig | CodeNodeConfig | HttpRequestNodeConfig | TemplateTransformNodeConfig | IterationNodeConfig | KnowledgeBaseNodeConfig | AnswerNodeConfig | QuestionClassifierNodeConfig | ParameterExtractorNodeConfig | VariableAssignerNodeConfig | VariableAggregatorNodeConfig | DocumentExtractorNodeConfig | ListOperatorNodeConfig | IterationStartNodeConfig | NoteNodeConfig | GroupNodeConfig | EntityNodeConfig | DatasourceNodeConfig | RuleNodeConfig | ModelProviderNodeConfig;
174
+ /**
175
+ * DashboardOutput is the terminal node that emits a DashboardSpec so the UI
176
+ * (astrlabe, fuel-price-ai, kori-erp) can render the run result without
177
+ * bespoke code. Either inline `dashboard` (literal spec) or `dashboardFrom`
178
+ * (reference to an upstream node's output) is used.
179
+ */
180
+ type DashboardOutputNodeConfig = {
181
+ type: 'dashboard_output';
182
+ /** Inline DashboardSpec literal. Shape matches @datatechsolutions/ui DashboardSpec. */
183
+ dashboard?: Record<string, unknown>;
184
+ /** Reference to an upstream node's value (`"nodeId"` or `"nodeId.path"`) that already conforms to DashboardSpec. */
185
+ dashboardFrom?: string;
186
+ };
187
+ type LogicNodeConfig = StartNodeConfig | EndNodeConfig | IfElseNodeConfig | CodeNodeConfig | HttpRequestNodeConfig | TemplateTransformNodeConfig | IterationNodeConfig | KnowledgeBaseNodeConfig | AnswerNodeConfig | QuestionClassifierNodeConfig | ParameterExtractorNodeConfig | VariableAssignerNodeConfig | VariableAggregatorNodeConfig | DocumentExtractorNodeConfig | ListOperatorNodeConfig | IterationStartNodeConfig | NoteNodeConfig | GroupNodeConfig | EntityNodeConfig | DatasourceNodeConfig | RuleNodeConfig | ModelProviderNodeConfig | DashboardOutputNodeConfig;
171
188
  type WorkflowNodeData = {
172
189
  entityId: string;
173
190
  label: string;
@@ -306,4 +323,4 @@ type AgentRule = {
306
323
  [key: string]: unknown;
307
324
  };
308
325
 
309
- export type { AgentConfig, AgentModel, AgentRule, AgentTool, AnswerNodeConfig, CodeNodeConfig, DatasourceNodeConfig, DocumentExtractorNodeConfig, EndNodeConfig, EntityNodeConfig, GroupNodeConfig, HttpRequestNodeConfig, IfElseNodeConfig, IterationNodeConfig, IterationStartNodeConfig, KnowledgeBaseNodeConfig, ListOperatorNodeConfig, LogicNodeConfig, ModelProviderNodeConfig, ModelProviderType, NodeExecutionResult, NoteNodeConfig, ParameterExtractorNodeConfig, QuestionClassifierNodeConfig, RuleNodeConfig, StartNodeConfig, TemplateTransformNodeConfig, VariableAggregatorNodeConfig, VariableAssignerNodeConfig, VariableValue, Workflow, WorkflowEdge, WorkflowGraph, WorkflowNode, WorkflowNodeData, WorkflowNodeStatus, WorkflowNodeType, WorkflowRun, WorkflowRunStatus, WorkflowTool, WorkflowViewport };
326
+ export type { AgentConfig, AgentModel, AgentRule, AgentTool, AnswerNodeConfig, CodeNodeConfig, DashboardOutputNodeConfig, DatasourceNodeConfig, DocumentExtractorNodeConfig, EndNodeConfig, EntityNodeConfig, GroupNodeConfig, HttpRequestNodeConfig, IfElseNodeConfig, IterationNodeConfig, IterationStartNodeConfig, KnowledgeBaseNodeConfig, ListOperatorNodeConfig, LogicNodeConfig, ModelProviderNodeConfig, ModelProviderType, NodeExecutionResult, NoteNodeConfig, ParameterExtractorNodeConfig, QuestionClassifierNodeConfig, RuleNodeConfig, StartNodeConfig, TemplateTransformNodeConfig, VariableAggregatorNodeConfig, VariableAssignerNodeConfig, VariableValue, Workflow, WorkflowEdge, WorkflowGraph, WorkflowNode, WorkflowNodeData, WorkflowNodeStatus, WorkflowNodeType, WorkflowRun, WorkflowRunStatus, WorkflowTool, WorkflowViewport };