@uipath/apollo-react 3.32.0 → 3.33.1

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 (101) hide show
  1. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +126 -2
  2. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  3. package/dist/canvas/components/BaseNode/BaseNode.cjs +10 -3
  4. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  5. package/dist/canvas/components/BaseNode/BaseNode.js +10 -3
  6. package/dist/canvas/components/BaseNode/BaseNode.stories.cjs +1 -2
  7. package/dist/canvas/components/BaseNode/BaseNode.stories.d.ts.map +1 -1
  8. package/dist/canvas/components/BaseNode/BaseNode.stories.js +1 -2
  9. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts +1 -0
  10. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts.map +1 -1
  11. package/dist/canvas/components/ButtonHandle/useButtonHandles.cjs +1 -4
  12. package/dist/canvas/components/ButtonHandle/useButtonHandles.d.ts.map +1 -1
  13. package/dist/canvas/components/ButtonHandle/useButtonHandles.js +1 -4
  14. package/dist/canvas/components/CodedAgent/coded-agent.manifest.cjs +0 -1
  15. package/dist/canvas/components/CodedAgent/coded-agent.manifest.d.ts +5 -2
  16. package/dist/canvas/components/CodedAgent/coded-agent.manifest.d.ts.map +1 -1
  17. package/dist/canvas/components/CodedAgent/coded-agent.manifest.js +0 -1
  18. package/dist/canvas/components/CollapseConfig/CollapseConfig.stories.cjs +2 -2
  19. package/dist/canvas/components/CollapseConfig/CollapseConfig.stories.d.ts.map +1 -1
  20. package/dist/canvas/components/CollapseConfig/CollapseConfig.stories.js +2 -2
  21. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.stories.d.ts.map +1 -1
  22. package/dist/canvas/core/CategoryTree.cjs +11 -10
  23. package/dist/canvas/core/CategoryTree.d.ts.map +1 -1
  24. package/dist/canvas/core/CategoryTree.js +11 -10
  25. package/dist/canvas/core/NodeRegistryProvider.cjs +1 -1
  26. package/dist/canvas/core/NodeRegistryProvider.d.ts +5 -2
  27. package/dist/canvas/core/NodeRegistryProvider.d.ts.map +1 -1
  28. package/dist/canvas/core/NodeRegistryProvider.js +1 -1
  29. package/dist/canvas/core/NodeTypeRegistry.cjs +10 -15
  30. package/dist/canvas/core/NodeTypeRegistry.d.ts +2 -2
  31. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  32. package/dist/canvas/core/NodeTypeRegistry.js +10 -15
  33. package/dist/canvas/hooks/ToolbarActionContext.cjs +5 -9
  34. package/dist/canvas/hooks/ToolbarActionContext.d.ts +1 -2
  35. package/dist/canvas/hooks/ToolbarActionContext.d.ts.map +1 -1
  36. package/dist/canvas/hooks/ToolbarActionContext.js +5 -9
  37. package/dist/canvas/schema/index.cjs +9 -9
  38. package/dist/canvas/schema/index.d.ts +1 -1
  39. package/dist/canvas/schema/index.d.ts.map +1 -1
  40. package/dist/canvas/schema/index.js +1 -1
  41. package/dist/canvas/schema/node-definition/index.cjs +1 -8
  42. package/dist/canvas/schema/node-definition/index.d.ts +0 -2
  43. package/dist/canvas/schema/node-definition/index.d.ts.map +1 -1
  44. package/dist/canvas/schema/node-definition/index.js +1 -2
  45. package/dist/canvas/schema/node-definition/node-manifest.cjs +10 -1
  46. package/dist/canvas/schema/node-definition/node-manifest.d.ts +8 -0
  47. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  48. package/dist/canvas/schema/node-definition/node-manifest.js +7 -1
  49. package/dist/canvas/schema/{workflow → node-instance}/base.d.ts +4 -4
  50. package/dist/canvas/schema/node-instance/base.d.ts.map +1 -0
  51. package/dist/canvas/schema/{workflow → node-instance}/edge.d.ts +1 -1
  52. package/dist/canvas/schema/node-instance/edge.d.ts.map +1 -0
  53. package/dist/canvas/schema/{workflow → node-instance}/index.cjs +4 -24
  54. package/dist/canvas/schema/node-instance/index.d.ts +7 -0
  55. package/dist/canvas/schema/node-instance/index.d.ts.map +1 -0
  56. package/dist/canvas/schema/node-instance/index.js +4 -0
  57. package/dist/canvas/schema/{workflow → node-instance}/node.d.ts +2 -2
  58. package/dist/canvas/schema/node-instance/node.d.ts.map +1 -0
  59. package/dist/canvas/storybook-utils/manifests/index.d.ts +125 -2
  60. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  61. package/dist/canvas/{schema/workflow/metadata.cjs → utils/collapse.cjs} +22 -11
  62. package/dist/canvas/utils/collapse.d.ts +9 -0
  63. package/dist/canvas/utils/collapse.d.ts.map +1 -0
  64. package/dist/canvas/utils/collapse.js +11 -0
  65. package/dist/canvas/utils/index.cjs +45 -36
  66. package/dist/canvas/utils/index.d.ts +1 -0
  67. package/dist/canvas/utils/index.d.ts.map +1 -1
  68. package/dist/canvas/utils/index.js +1 -0
  69. package/dist/canvas/utils/manifest-resolver.cjs +18 -11
  70. package/dist/canvas/utils/manifest-resolver.d.ts +7 -7
  71. package/dist/canvas/utils/manifest-resolver.d.ts.map +1 -1
  72. package/dist/canvas/utils/manifest-resolver.js +18 -11
  73. package/dist/canvas/utils/toolbar-resolver.cjs +2 -17
  74. package/dist/canvas/utils/toolbar-resolver.d.ts +1 -3
  75. package/dist/canvas/utils/toolbar-resolver.d.ts.map +1 -1
  76. package/dist/canvas/utils/toolbar-resolver.js +2 -17
  77. package/dist/material/components/ap-chat/components/header/header-actions.d.ts.map +1 -1
  78. package/package.json +1 -1
  79. package/dist/canvas/schema/node-definition/workflow-manifest.cjs +0 -52
  80. package/dist/canvas/schema/node-definition/workflow-manifest.d.ts +0 -309
  81. package/dist/canvas/schema/node-definition/workflow-manifest.d.ts.map +0 -1
  82. package/dist/canvas/schema/node-definition/workflow-manifest.js +0 -15
  83. package/dist/canvas/schema/workflow/base.d.ts.map +0 -1
  84. package/dist/canvas/schema/workflow/edge.d.ts.map +0 -1
  85. package/dist/canvas/schema/workflow/index.d.ts +0 -11
  86. package/dist/canvas/schema/workflow/index.d.ts.map +0 -1
  87. package/dist/canvas/schema/workflow/index.js +0 -6
  88. package/dist/canvas/schema/workflow/metadata.d.ts +0 -10
  89. package/dist/canvas/schema/workflow/metadata.d.ts.map +0 -1
  90. package/dist/canvas/schema/workflow/metadata.js +0 -9
  91. package/dist/canvas/schema/workflow/node.d.ts.map +0 -1
  92. package/dist/canvas/schema/workflow/workflow.cjs +0 -96
  93. package/dist/canvas/schema/workflow/workflow.d.ts +0 -356
  94. package/dist/canvas/schema/workflow/workflow.d.ts.map +0 -1
  95. package/dist/canvas/schema/workflow/workflow.js +0 -50
  96. /package/dist/canvas/schema/{workflow → node-instance}/base.cjs +0 -0
  97. /package/dist/canvas/schema/{workflow → node-instance}/base.js +0 -0
  98. /package/dist/canvas/schema/{workflow → node-instance}/edge.cjs +0 -0
  99. /package/dist/canvas/schema/{workflow → node-instance}/edge.js +0 -0
  100. /package/dist/canvas/schema/{workflow → node-instance}/node.cjs +0 -0
  101. /package/dist/canvas/schema/{workflow → node-instance}/node.js +0 -0
@@ -1,4 +1,4 @@
1
- import type { CategoryManifest, NodeManifest, WorkflowManifest } from '../../schema/node-definition';
1
+ import type { CategoryManifest, NodeManifest } from '../../schema/node-definition';
2
2
  export declare const agentFlowCategories: CategoryManifest[];
3
3
  export declare const conversationalAgentManifest: NodeManifest;
4
4
  export declare const autonomousAgentManifest: NodeManifest;
@@ -7,5 +7,129 @@ export declare const toolResourceManifest: NodeManifest;
7
7
  export declare const mcpResourceManifest: NodeManifest;
8
8
  export declare const escalationResourceManifest: NodeManifest;
9
9
  export declare const memoryResourceManifest: NodeManifest;
10
- export declare const agentFlowManifest: WorkflowManifest;
10
+ export declare const agentFlowManifest: {
11
+ version: string;
12
+ categories: {
13
+ id: string;
14
+ name: string;
15
+ sortOrder: number;
16
+ color: string;
17
+ colorDark: string;
18
+ icon: string;
19
+ tags: string[];
20
+ parentId?: string | undefined;
21
+ }[];
22
+ nodes: {
23
+ nodeType: string;
24
+ version: string;
25
+ tags: string[];
26
+ sortOrder: number;
27
+ display: {
28
+ label: string;
29
+ icon: string;
30
+ description?: string | undefined;
31
+ shape?: "square" | "circle" | "rectangle" | undefined;
32
+ color?: string | undefined;
33
+ background?: string | undefined;
34
+ iconBackground?: string | undefined;
35
+ iconBackgroundDark?: string | undefined;
36
+ iconColor?: string | undefined;
37
+ };
38
+ handleConfiguration: {
39
+ position: "top" | "right" | "bottom" | "left";
40
+ handles: {
41
+ id: string;
42
+ type: "target" | "source";
43
+ handleType: "input" | "output" | "artifact";
44
+ label?: string | undefined;
45
+ visible?: string | boolean | undefined;
46
+ repeat?: string | undefined;
47
+ itemVar?: string | undefined;
48
+ indexVar?: string | undefined;
49
+ showButton?: boolean | undefined;
50
+ constraints?: {
51
+ maxConnections?: number | undefined;
52
+ minConnections?: number | undefined;
53
+ allowedTargets?: {
54
+ nodeType: string;
55
+ handleId?: string | undefined;
56
+ }[] | undefined;
57
+ forbiddenTargets?: {
58
+ nodeType: string;
59
+ handleId?: string | undefined;
60
+ }[] | undefined;
61
+ allowedSources?: {
62
+ nodeType: string;
63
+ handleId?: string | undefined;
64
+ }[] | undefined;
65
+ forbiddenSources?: {
66
+ nodeType: string;
67
+ handleId?: string | undefined;
68
+ }[] | undefined;
69
+ allowedTargetCategories?: string[] | undefined;
70
+ forbiddenTargetCategories?: string[] | undefined;
71
+ allowedSourceCategories?: string[] | undefined;
72
+ forbiddenSourceCategories?: string[] | undefined;
73
+ customValidation?: string | undefined;
74
+ validationMessage?: string | undefined;
75
+ } | undefined;
76
+ isDefaultForType?: boolean | undefined;
77
+ }[];
78
+ customPositionAndOffsets?: {
79
+ height?: number | undefined;
80
+ width?: number | undefined;
81
+ top?: number | undefined;
82
+ bottom?: number | undefined;
83
+ left?: number | undefined;
84
+ right?: number | undefined;
85
+ } | undefined;
86
+ visible?: boolean | undefined;
87
+ }[];
88
+ description?: string | undefined;
89
+ category?: string | undefined;
90
+ toolbarExtensions?: Record<string, {
91
+ actions: {
92
+ id: string;
93
+ icon: string;
94
+ label: string;
95
+ shortcut?: string | undefined;
96
+ condition?: {
97
+ requiresPermissions?: string[] | undefined;
98
+ hideOnExecution?: boolean | undefined;
99
+ nodeTypes?: string[] | undefined;
100
+ handles?: {
101
+ handleType: "input" | "output" | "artifact";
102
+ type?: "target" | "source" | undefined;
103
+ }[] | undefined;
104
+ } | undefined;
105
+ }[];
106
+ overflowActions?: {
107
+ id: string;
108
+ icon: string;
109
+ label: string;
110
+ shortcut?: string | undefined;
111
+ condition?: {
112
+ requiresPermissions?: string[] | undefined;
113
+ hideOnExecution?: boolean | undefined;
114
+ nodeTypes?: string[] | undefined;
115
+ handles?: {
116
+ handleType: "input" | "output" | "artifact";
117
+ type?: "target" | "source" | undefined;
118
+ }[] | undefined;
119
+ } | undefined;
120
+ }[] | undefined;
121
+ }> | undefined;
122
+ inputDefaults?: Record<string, unknown> | undefined;
123
+ inputDefinition?: Record<string, any> | undefined;
124
+ outputDefinition?: Record<string, any> | undefined;
125
+ drillable?: boolean | undefined;
126
+ debug?: {
127
+ runtime: string;
128
+ } | undefined;
129
+ model?: any;
130
+ defaultProperties?: Record<string, unknown> | undefined;
131
+ form?: import("@uipath/apollo-wind").FormSchema | undefined;
132
+ deprecated?: boolean | undefined;
133
+ }[];
134
+ };
11
135
  //# sourceMappingURL=agent-flow.manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-flow.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AgentCanvas/agent-flow.manifest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AAMtC,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAmBjD,CAAC;AAMF,eAAO,MAAM,2BAA2B,EAAE,YAsDzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAqDrC,CAAC;AAMF,eAAO,MAAM,uBAAuB,EAAE,YAwBrC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAwBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,YAwBxC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAwBpC,CAAC;AAMF,eAAO,MAAM,iBAAiB,EAAE,gBAY/B,CAAC"}
1
+ {"version":3,"file":"agent-flow.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AgentCanvas/agent-flow.manifest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAMnF,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAmBjD,CAAC;AAMF,eAAO,MAAM,2BAA2B,EAAE,YAsDzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAqDrC,CAAC;AAMF,eAAO,MAAM,uBAAuB,EAAE,YAwBrC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAwBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,YAwBxC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAwBpC,CAAC;AAMF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAY7B,CAAC"}
@@ -88,9 +88,13 @@ const BaseNodeComponent = (props)=>{
88
88
  const shouldShowAddButtonFn = shouldShowAddButtonFnProp;
89
89
  const shouldShowButtonHandleNotchesFn = shouldShowButtonHandleNotchesFnProp;
90
90
  const executionStatus = executionStatusOverride ?? ('string' == typeof executionState ? executionState : executionState?.status);
91
- const display = (0, external_react_namespaceObject.useMemo)(()=>(0, manifest_resolver_cjs_namespaceObject.resolveDisplay)(manifest?.display, data.display), [
91
+ const display = (0, external_react_namespaceObject.useMemo)(()=>(0, manifest_resolver_cjs_namespaceObject.resolveDisplay)(manifest?.display, {
92
+ ...data,
93
+ nodeId: id
94
+ }), [
92
95
  manifest,
93
- data.display
96
+ data.display,
97
+ id
94
98
  ]);
95
99
  const Icon = (0, external_react_namespaceObject.useMemo)(()=>{
96
100
  if (void 0 !== iconComponent) return iconComponent;
@@ -103,7 +107,10 @@ const BaseNodeComponent = (props)=>{
103
107
  const handleConfigurations = (0, external_react_namespaceObject.useMemo)(()=>{
104
108
  if (handleConfigurationsProp && Array.isArray(handleConfigurationsProp)) return handleConfigurationsProp;
105
109
  if (!manifest) return [];
106
- const resolved = (0, manifest_resolver_cjs_namespaceObject.resolveHandles)(manifest.handleConfiguration, data);
110
+ const resolved = (0, manifest_resolver_cjs_namespaceObject.resolveHandles)(manifest.handleConfiguration, {
111
+ ...data,
112
+ nodeId: id
113
+ });
107
114
  return resolved.map((group)=>({
108
115
  position: group.position,
109
116
  handles: group.handles.map((h)=>({
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAkB,MAAM,0CAA0C,CAAC;AAkChG,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AA0f1B,eAAO,MAAM,QAAQ,8CArfa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAqfhB,CAAC"}
1
+ {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAkB,MAAM,0CAA0C,CAAC;AAkChG,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AA2f1B,eAAO,MAAM,QAAQ,8CAtfa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAsfhB,CAAC"}
@@ -60,9 +60,13 @@ const BaseNodeComponent = (props)=>{
60
60
  const shouldShowAddButtonFn = shouldShowAddButtonFnProp;
61
61
  const shouldShowButtonHandleNotchesFn = shouldShowButtonHandleNotchesFnProp;
62
62
  const executionStatus = executionStatusOverride ?? ('string' == typeof executionState ? executionState : executionState?.status);
63
- const display = useMemo(()=>resolveDisplay(manifest?.display, data.display), [
63
+ const display = useMemo(()=>resolveDisplay(manifest?.display, {
64
+ ...data,
65
+ nodeId: id
66
+ }), [
64
67
  manifest,
65
- data.display
68
+ data.display,
69
+ id
66
70
  ]);
67
71
  const Icon = useMemo(()=>{
68
72
  if (void 0 !== iconComponent) return iconComponent;
@@ -75,7 +79,10 @@ const BaseNodeComponent = (props)=>{
75
79
  const handleConfigurations = useMemo(()=>{
76
80
  if (handleConfigurationsProp && Array.isArray(handleConfigurationsProp)) return handleConfigurationsProp;
77
81
  if (!manifest) return [];
78
- const resolved = resolveHandles(manifest.handleConfiguration, data);
82
+ const resolved = resolveHandles(manifest.handleConfiguration, {
83
+ ...data,
84
+ nodeId: id
85
+ });
79
86
  return resolved.map((group)=>({
80
87
  position: group.position,
81
88
  handles: group.handles.map((h)=>({
@@ -43,7 +43,6 @@ const external_BaseCanvas_index_cjs_namespaceObject = require("../BaseCanvas/ind
43
43
  const external_CanvasPositionControls_cjs_namespaceObject = require("../CanvasPositionControls.cjs");
44
44
  const external_NodeInspector_cjs_namespaceObject = require("../NodeInspector.cjs");
45
45
  const sampleManifest = {
46
- version: '1.0.0',
47
46
  categories: [
48
47
  {
49
48
  id: 'general',
@@ -228,7 +227,7 @@ const meta = {
228
227
  (Story)=>{
229
228
  const registry = (0, external_react_namespaceObject.useMemo)(()=>{
230
229
  const reg = new external_core_index_cjs_namespaceObject.NodeTypeRegistry();
231
- reg.registerManifest(sampleManifest);
230
+ reg.registerManifest(sampleManifest.nodes, sampleManifest.categories);
232
231
  return reg;
233
232
  }, []);
234
233
  const contextValue = (0, external_react_namespaceObject.useMemo)(()=>({
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.stories.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.stories.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAmBvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAsJrD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,YAAY,CAqB5B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAgWnC,eAAO,MAAM,OAAO,EAAE,KAGrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAG7B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAG5B,CAAC"}
1
+ {"version":3,"file":"BaseNode.stories.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.stories.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAmBvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAqJrD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,YAAY,CAqB5B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAgWnC,eAAO,MAAM,OAAO,EAAE,KAGrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAG7B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAG5B,CAAC"}
@@ -12,7 +12,6 @@ import { BaseCanvas } from "../BaseCanvas/index.js";
12
12
  import { CanvasPositionControls } from "../CanvasPositionControls.js";
13
13
  import { NodeInspector } from "../NodeInspector.js";
14
14
  const sampleManifest = {
15
- version: '1.0.0',
16
15
  categories: [
17
16
  {
18
17
  id: 'general',
@@ -197,7 +196,7 @@ const meta = {
197
196
  (Story)=>{
198
197
  const registry = useMemo(()=>{
199
198
  const reg = new NodeTypeRegistry();
200
- reg.registerManifest(sampleManifest);
199
+ reg.registerManifest(sampleManifest.nodes, sampleManifest.categories);
201
200
  return reg;
202
201
  }, []);
203
202
  const contextValue = useMemo(()=>({
@@ -14,6 +14,7 @@ export interface BaseNodeData extends Record<string, unknown> {
14
14
  iconColor?: string;
15
15
  };
16
16
  useSmartHandles?: boolean;
17
+ isCollapsed?: boolean;
17
18
  }
18
19
  export interface NodeAdornments {
19
20
  topLeft?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAOF,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"BaseNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAOF,eAAe,CAAC,EAAE,OAAO,CAAC;IAM1B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -32,10 +32,7 @@ const external_react_namespaceObject = require("react");
32
32
  const manifest_resolver_cjs_namespaceObject = require("../../utils/manifest-resolver.cjs");
33
33
  const ConnectedHandlesContext_cjs_namespaceObject = require("../BaseCanvas/ConnectedHandlesContext.cjs");
34
34
  const external_index_cjs_namespaceObject = require("./index.cjs");
35
- const ToolbarActionContext_cjs_namespaceObject = require("../../hooks/ToolbarActionContext.cjs");
36
35
  const useButtonHandles = ({ handleConfigurations, shouldShowHandles, handleAction, nodeId, selected, showAddButton, showNotches, shouldShowAddButtonFn, nodeWidth, nodeHeight })=>{
37
- const { collapsed } = (0, ToolbarActionContext_cjs_namespaceObject.getToolbarActionStore)();
38
- const isCollapsed = Boolean(collapsed?.has(nodeId));
39
36
  const connectedHandleIds = (0, ConnectedHandlesContext_cjs_namespaceObject.useConnectedHandles)(nodeId);
40
37
  const node = (0, react_namespaceObject.useNodesData)(nodeId);
41
38
  const handleElements = (0, external_react_namespaceObject.useMemo)(()=>{
@@ -44,7 +41,7 @@ const useButtonHandles = ({ handleConfigurations, shouldShowHandles, handleActio
44
41
  const elements = resolvedHandles.map((config, i)=>{
45
42
  const hasConnectedHandle = config.handles.some((h)=>connectedHandleIds.has(h.id));
46
43
  const finalVisible = hasConnectedHandle || shouldShowHandles && (config.visible ?? true);
47
- const enhancedHandles = config.handles.filter((handle)=>isCollapsed ? 'artifact' !== handle.handleType : true).map((handle)=>({
44
+ const enhancedHandles = config.handles.map((handle)=>({
48
45
  ...handle,
49
46
  onAction: handle.onAction || handleAction
50
47
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"useButtonHandles.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ButtonHandle/useButtonHandles.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIzD,eAAO,MAAM,gBAAgB,GAAI,wJAW9B;IACD,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAUpB,qBAAqB,CAAC,EAAE,CAAC,EACvB,aAAa,EACb,QAAQ,GACT,EAAE;QACD,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;KACnB,KAAK,OAAO,CAAC;CACf,wFAiEA,CAAC"}
1
+ {"version":3,"file":"useButtonHandles.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ButtonHandle/useButtonHandles.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,eAAO,MAAM,gBAAgB,GAAI,wJAW9B;IACD,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAUpB,qBAAqB,CAAC,EAAE,CAAC,EACvB,aAAa,EACb,QAAQ,GACT,EAAE;QACD,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;KACnB,KAAK,OAAO,CAAC;CACf,wFA2DA,CAAC"}
@@ -4,10 +4,7 @@ import { useMemo } from "react";
4
4
  import { resolveHandles } from "../../utils/manifest-resolver.js";
5
5
  import { useConnectedHandles } from "../BaseCanvas/ConnectedHandlesContext.js";
6
6
  import { ButtonHandles } from "./index.js";
7
- import { getToolbarActionStore } from "../../hooks/ToolbarActionContext.js";
8
7
  const useButtonHandles = ({ handleConfigurations, shouldShowHandles, handleAction, nodeId, selected, showAddButton, showNotches, shouldShowAddButtonFn, nodeWidth, nodeHeight })=>{
9
- const { collapsed } = getToolbarActionStore();
10
- const isCollapsed = Boolean(collapsed?.has(nodeId));
11
8
  const connectedHandleIds = useConnectedHandles(nodeId);
12
9
  const node = useNodesData(nodeId);
13
10
  const handleElements = useMemo(()=>{
@@ -16,7 +13,7 @@ const useButtonHandles = ({ handleConfigurations, shouldShowHandles, handleActio
16
13
  const elements = resolvedHandles.map((config, i)=>{
17
14
  const hasConnectedHandle = config.handles.some((h)=>connectedHandleIds.has(h.id));
18
15
  const finalVisible = hasConnectedHandle || shouldShowHandles && (config.visible ?? true);
19
- const enhancedHandles = config.handles.filter((handle)=>isCollapsed ? 'artifact' !== handle.handleType : true).map((handle)=>({
16
+ const enhancedHandles = config.handles.map((handle)=>({
20
17
  ...handle,
21
18
  onAction: handle.onAction || handleAction
22
19
  }));
@@ -27,7 +27,6 @@ __webpack_require__.d(__webpack_exports__, {
27
27
  codedAgentManifest: ()=>codedAgentManifest
28
28
  });
29
29
  const codedAgentManifest = {
30
- version: '1.0.0',
31
30
  categories: [
32
31
  {
33
32
  id: 'coded-agent',
@@ -1,3 +1,6 @@
1
- import type { WorkflowManifest } from '../../schema/node-definition';
2
- export declare const codedAgentManifest: WorkflowManifest;
1
+ import type { CategoryManifest, NodeManifest } from '../../schema';
2
+ export declare const codedAgentManifest: {
3
+ categories: CategoryManifest[];
4
+ nodes: NodeManifest[];
5
+ };
3
6
  //# sourceMappingURL=coded-agent.manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coded-agent.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/CodedAgent/coded-agent.manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,eAAO,MAAM,kBAAkB,EAAE,gBAqLhC,CAAC"}
1
+ {"version":3,"file":"coded-agent.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/CodedAgent/coded-agent.manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEnE,eAAO,MAAM,kBAAkB,EAAE;IAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAAC,KAAK,EAAE,YAAY,EAAE,CAAA;CAoLvF,CAAC"}
@@ -1,5 +1,4 @@
1
1
  const codedAgentManifest = {
2
- version: '1.0.0',
3
2
  categories: [
4
3
  {
5
4
  id: 'coded-agent',
@@ -31,14 +31,14 @@ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
31
31
  const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
32
32
  const index_cjs_namespaceObject = require("../../../material/components/index.cjs");
33
33
  const external_react_namespaceObject = require("react");
34
+ const NodeRegistryProvider_cjs_namespaceObject = require("../../core/NodeRegistryProvider.cjs");
34
35
  const external_storybook_utils_index_cjs_namespaceObject = require("../../storybook-utils/index.cjs");
35
36
  const external_types_cjs_namespaceObject = require("../../types.cjs");
37
+ const agent_flow_manifest_cjs_namespaceObject = require("../AgentCanvas/agent-flow.manifest.cjs");
36
38
  const external_BaseCanvas_index_cjs_namespaceObject = require("../BaseCanvas/index.cjs");
37
39
  const BaseNode_cjs_namespaceObject = require("../BaseNode/BaseNode.cjs");
38
40
  const BaseNodeConfigContext_cjs_namespaceObject = require("../BaseNode/BaseNodeConfigContext.cjs");
39
41
  const external_CanvasPositionControls_cjs_namespaceObject = require("../CanvasPositionControls.cjs");
40
- const NodeRegistryProvider_cjs_namespaceObject = require("../../core/NodeRegistryProvider.cjs");
41
- const agent_flow_manifest_cjs_namespaceObject = require("../AgentCanvas/agent-flow.manifest.cjs");
42
42
  const collapsibleAgentManifest = {
43
43
  nodeType: 'uipath.agent.collapsible',
44
44
  version: '1.0.0',
@@ -1 +1 @@
1
- {"version":3,"file":"CollapseConfig.stories.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/CollapseConfig/CollapseConfig.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA+D5D,QAAA,MAAM,IAAI,EAAE,IAsBX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA+YnC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC"}
1
+ {"version":3,"file":"CollapseConfig.stories.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/CollapseConfig/CollapseConfig.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA8D5D,QAAA,MAAM,IAAI,EAAE,IAsBX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA+YnC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC"}
@@ -2,14 +2,14 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Panel, Position, ReactFlowProvider, useReactFlow } from "../../xyflow/react.js";
3
3
  import { ApIcon } from "../../../material/components/index.js";
4
4
  import { useCallback, useMemo } from "react";
5
+ import { NodeRegistryProvider } from "../../core/NodeRegistryProvider.js";
5
6
  import { StoryInfoPanel, allNodeManifests, useCanvasStory } from "../../storybook-utils/index.js";
6
7
  import { DefaultCanvasTranslations } from "../../types.js";
8
+ import { contextResourceManifest, escalationResourceManifest, memoryResourceManifest, toolResourceManifest } from "../AgentCanvas/agent-flow.manifest.js";
7
9
  import { BaseCanvas } from "../BaseCanvas/index.js";
8
10
  import { BaseNode } from "../BaseNode/BaseNode.js";
9
11
  import { BaseNodeOverrideConfigProvider } from "../BaseNode/BaseNodeConfigContext.js";
10
12
  import { CanvasPositionControls } from "../CanvasPositionControls.js";
11
- import { NodeRegistryProvider } from "../../core/NodeRegistryProvider.js";
12
- import { contextResourceManifest, escalationResourceManifest, memoryResourceManifest, toolResourceManifest } from "../AgentCanvas/agent-flow.manifest.js";
13
13
  const collapsibleAgentManifest = {
14
14
  nodeType: 'uipath.agent.collapsible',
15
15
  version: '1.0.0',
@@ -1 +1 @@
1
- {"version":3,"file":"NodeToolbar.stories.d.ts","sourceRoot":"","sources":["../../../../../src/canvas/components/Toolbar/NodeToolbar/NodeToolbar.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAqGvD,QAAA,MAAM,IAAI,EAAE,IAsCX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA2FnC,eAAO,MAAM,OAAO,EAAE,KAGrB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,KAGrC,CAAC"}
1
+ {"version":3,"file":"NodeToolbar.stories.d.ts","sourceRoot":"","sources":["../../../../../src/canvas/components/Toolbar/NodeToolbar/NodeToolbar.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAoGvD,QAAA,MAAM,IAAI,EAAE,IAsCX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA2FnC,eAAO,MAAM,OAAO,EAAE,KAGrB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,KAGrC,CAAC"}
@@ -148,18 +148,19 @@ class CategoryTree {
148
148
  });
149
149
  }
150
150
  flattenSinglePath() {
151
- if (1 !== this.rootCategories.length) return this;
152
- let current = this.rootCategories[0];
153
- let leafNodes = [
151
+ if (1 !== this.rootCategories.length || this.rootNodes.length > 0) return CategoryTree.fromPrebuilt([
152
+ ...this.rootCategories
153
+ ], [
154
154
  ...this.rootNodes
155
- ];
155
+ ]);
156
+ let current = this.rootCategories[0];
156
157
  while(current)if (1 === current.nestedCategories.length && 0 === current.nodes.length) current = current.nestedCategories[0];
157
- else {
158
- if (0 !== current.nestedCategories.length) return this;
159
- leafNodes = leafNodes.concat(current.nodes);
160
- break;
161
- }
162
- return CategoryTree.fromPrebuilt([], leafNodes);
158
+ else break;
159
+ return current ? CategoryTree.fromPrebuilt([
160
+ ...current.nestedCategories
161
+ ], [
162
+ ...current.nodes
163
+ ]) : CategoryTree.fromPrebuilt([], []);
163
164
  }
164
165
  flatten() {
165
166
  const collectNodes = (categories)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"CategoryTree.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/CategoryTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAKhF,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;IACrC,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAKD,MAAM,WAAW,yBAAyB;IAExC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAEzD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;CAC9C;AAMD,MAAM,WAAW,mBAAmB;IAMlC,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAO1D,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3C;AA8BD,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,WAAW,CAAgC;gBAQvC,UAAU,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;IAYjE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAmBxE,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,YAAY;IAkBhG,SAAS,CACP,UAAU,EAAE,gBAAgB,EAAE,EAC9B,KAAK,EAAE,YAAY,EAAE,GACpB;QAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;QAAC,SAAS,EAAE,YAAY,EAAE,CAAA;KAAE;IAsFpE,iBAAiB,IAAI,gBAAgB,EAAE;IASvC,YAAY,IAAI,YAAY,EAAE;IAU9B,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAWzD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY;IAuB5C,MAAM,CAAC,OAAO,GAAE,yBAA8B,GAAG,YAAY;IA6C7D,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY;IAiChD,mBAAmB,CAAC,SAAS,EAAE,mBAAmB,GAAG,YAAY;IAiBjE,iBAAiB,IAAI,YAAY;IAgCjC,OAAO,IAAI,YAAY;IAmBvB,OAAO,IAAI,OAAO;IASlB,gBAAgB,IAAI,gBAAgB,EAAE;IAStC,WAAW,IAAI,YAAY,EAAE;IAa7B,gBAAgB,IAAI,MAAM;IAS1B,YAAY,IAAI,MAAM;CAOvB"}
1
+ {"version":3,"file":"CategoryTree.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/CategoryTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAKhF,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;IACrC,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAKD,MAAM,WAAW,yBAAyB;IAExC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAEzD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;CAC9C;AAMD,MAAM,WAAW,mBAAmB;IAMlC,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAO1D,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3C;AA8BD,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,WAAW,CAAgC;gBAQvC,UAAU,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;IAYjE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAmBxE,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,YAAY;IAkBhG,SAAS,CACP,UAAU,EAAE,gBAAgB,EAAE,EAC9B,KAAK,EAAE,YAAY,EAAE,GACpB;QAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;QAAC,SAAS,EAAE,YAAY,EAAE,CAAA;KAAE;IAsFpE,iBAAiB,IAAI,gBAAgB,EAAE;IASvC,YAAY,IAAI,YAAY,EAAE;IAU9B,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAWzD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY;IAuB5C,MAAM,CAAC,OAAO,GAAE,yBAA8B,GAAG,YAAY;IA6C7D,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY;IAiChD,mBAAmB,CAAC,SAAS,EAAE,mBAAmB,GAAG,YAAY;IAoBjE,iBAAiB,IAAI,YAAY;IA4BjC,OAAO,IAAI,YAAY;IAmBvB,OAAO,IAAI,OAAO;IASlB,gBAAgB,IAAI,gBAAgB,EAAE;IAStC,WAAW,IAAI,YAAY,EAAE;IAa7B,gBAAgB,IAAI,MAAM;IAS1B,YAAY,IAAI,MAAM;CAOvB"}
@@ -120,18 +120,19 @@ class CategoryTree {
120
120
  });
121
121
  }
122
122
  flattenSinglePath() {
123
- if (1 !== this.rootCategories.length) return this;
124
- let current = this.rootCategories[0];
125
- let leafNodes = [
123
+ if (1 !== this.rootCategories.length || this.rootNodes.length > 0) return CategoryTree.fromPrebuilt([
124
+ ...this.rootCategories
125
+ ], [
126
126
  ...this.rootNodes
127
- ];
127
+ ]);
128
+ let current = this.rootCategories[0];
128
129
  while(current)if (1 === current.nestedCategories.length && 0 === current.nodes.length) current = current.nestedCategories[0];
129
- else {
130
- if (0 !== current.nestedCategories.length) return this;
131
- leafNodes = leafNodes.concat(current.nodes);
132
- break;
133
- }
134
- return CategoryTree.fromPrebuilt([], leafNodes);
130
+ else break;
131
+ return current ? CategoryTree.fromPrebuilt([
132
+ ...current.nestedCategories
133
+ ], [
134
+ ...current.nodes
135
+ ]) : CategoryTree.fromPrebuilt([], []);
135
136
  }
136
137
  flatten() {
137
138
  const collectNodes = (categories)=>{
@@ -33,7 +33,7 @@ const external_useNodeTypeRegistry_cjs_namespaceObject = require("./useNodeTypeR
33
33
  const NodeRegistryProvider = ({ children, manifest, registrations })=>{
34
34
  const registry = (0, external_react_namespaceObject.useMemo)(()=>{
35
35
  const reg = new external_NodeTypeRegistry_cjs_namespaceObject.NodeTypeRegistry();
36
- if (manifest) reg.registerManifest(manifest);
36
+ if (manifest) reg.registerManifest(manifest.nodes, manifest.categories);
37
37
  else if (registrations) reg.registerNodeManifests(registrations);
38
38
  return reg;
39
39
  }, [
@@ -1,9 +1,12 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { NodeManifest, WorkflowManifest } from '../schema/node-definition';
2
+ import type { CategoryManifest, NodeManifest } from '../schema/node-definition';
3
3
  interface NodeRegistryProviderProps {
4
4
  children: ReactNode;
5
5
  registrations?: NodeManifest[];
6
- manifest?: WorkflowManifest;
6
+ manifest?: {
7
+ nodes: NodeManifest[];
8
+ categories: CategoryManifest[];
9
+ };
7
10
  onRegistration?: (nodeType: string, success: boolean) => void;
8
11
  }
9
12
  export declare const NodeRegistryProvider: React.FC<NodeRegistryProviderProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"NodeRegistryProvider.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/NodeRegistryProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAIhF,UAAU,yBAAyB;IACjC,QAAQ,EAAE,SAAS,CAAC;IAIpB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAI/B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/D;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAoBpE,CAAC"}
1
+ {"version":3,"file":"NodeRegistryProvider.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/NodeRegistryProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAIhF,UAAU,yBAAyB;IACjC,QAAQ,EAAE,SAAS,CAAC;IAIpB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAI/B,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,YAAY,EAAE,CAAC;QAAC,UAAU,EAAE,gBAAgB,EAAE,CAAA;KAAE,CAAC;IACrE,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/D;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAoBpE,CAAC"}
@@ -5,7 +5,7 @@ import { NodeRegistryContext } from "./useNodeTypeRegistry.js";
5
5
  const NodeRegistryProvider = ({ children, manifest, registrations })=>{
6
6
  const registry = useMemo(()=>{
7
7
  const reg = new NodeTypeRegistry();
8
- if (manifest) reg.registerManifest(manifest);
8
+ if (manifest) reg.registerManifest(manifest.nodes, manifest.categories);
9
9
  else if (registrations) reg.registerNodeManifests(registrations);
10
10
  return reg;
11
11
  }, [
@@ -52,23 +52,18 @@ class NodeTypeRegistry {
52
52
  icon: node.display.icon ?? 'box'
53
53
  });
54
54
  }
55
- const workflowManifest = {
56
- version: '0',
57
- categories: Array.from(categoryMap.values()),
58
- nodes
59
- };
60
- this.registerManifest(workflowManifest);
55
+ this.registerManifest(nodes, Array.from(categoryMap.values()));
61
56
  }
62
- registerManifest(manifest) {
63
- this.categoryById = new Map(manifest.categories.map((c)=>[
57
+ registerManifest(nodeManifests, categoryManifests) {
58
+ this.categoryById = new Map(categoryManifests.map((c)=>[
64
59
  c.id,
65
60
  c
66
61
  ]));
67
- this.nodeByType = new Map(manifest.nodes.map((n)=>[
62
+ this.nodeByType = new Map(nodeManifests.map((n)=>[
68
63
  n.nodeType,
69
64
  n
70
65
  ]));
71
- this.nodeHandles = new Map(manifest.nodes.map((n)=>[
66
+ this.nodeHandles = new Map(nodeManifests.map((n)=>[
72
67
  n.nodeType,
73
68
  n.handleConfiguration.flatMap((hc)=>hc.handles).reduce((acc, handle)=>{
74
69
  if (!acc[handle.type]) acc[handle.type] = [];
@@ -77,13 +72,13 @@ class NodeTypeRegistry {
77
72
  }, {})
78
73
  ]));
79
74
  this.categoriesByParent = new Map();
80
- for (const cat of manifest.categories){
75
+ for (const cat of categoryManifests){
81
76
  const siblings = this.categoriesByParent.get(cat.parentId) ?? [];
82
77
  siblings.push(cat);
83
78
  this.categoriesByParent.set(cat.parentId, siblings);
84
79
  }
85
80
  this.categoryAncestors = new Map();
86
- for (const cat of manifest.categories){
81
+ for (const cat of categoryManifests){
87
82
  const ancestors = [];
88
83
  let currentId = cat.parentId;
89
84
  while(currentId){
@@ -93,7 +88,7 @@ class NodeTypeRegistry {
93
88
  this.categoryAncestors.set(cat.id, ancestors);
94
89
  }
95
90
  this.categoryDescendants = new Map();
96
- for (const cat of manifest.categories){
91
+ for (const cat of categoryManifests){
97
92
  const descendants = [];
98
93
  const queue = [
99
94
  cat.id
@@ -109,13 +104,13 @@ class NodeTypeRegistry {
109
104
  this.categoryDescendants.set(cat.id, descendants);
110
105
  }
111
106
  this.nodesByCategory = new Map();
112
- for (const node of manifest.nodes){
107
+ for (const node of nodeManifests){
113
108
  const categoryKey = node.category ?? void 0;
114
109
  const nodes = this.nodesByCategory.get(categoryKey) ?? [];
115
110
  nodes.push(node);
116
111
  this.nodesByCategory.set(categoryKey, nodes);
117
112
  }
118
- this.categoryTree = new external_CategoryTree_cjs_namespaceObject.CategoryTree(manifest.categories, manifest.nodes);
113
+ this.categoryTree = new external_CategoryTree_cjs_namespaceObject.CategoryTree(categoryManifests, nodeManifests);
119
114
  }
120
115
  getManifest(nodeType) {
121
116
  return this.nodeByType.get(nodeType);
@@ -1,6 +1,6 @@
1
1
  import type { BaseNodeData, ListItem } from '../components';
2
2
  import type { PreviewNodeConnectionInfo } from '../hooks';
3
- import type { HandleManifest, NodeManifest, WorkflowManifest } from '../schema/node-definition';
3
+ import type { CategoryManifest, HandleManifest, NodeManifest } from '../schema/node-definition';
4
4
  import { CategoryTree } from './CategoryTree';
5
5
  interface NodeHandles {
6
6
  source?: HandleManifest[];
@@ -16,7 +16,7 @@ export declare class NodeTypeRegistry {
16
16
  private categoryDescendants;
17
17
  private categoryTree;
18
18
  registerNodeManifests(nodes: NodeManifest[]): void;
19
- registerManifest(manifest: WorkflowManifest): void;
19
+ registerManifest(nodeManifests: NodeManifest[], categoryManifests: CategoryManifest[]): void;
20
20
  getManifest(nodeType: string): NodeManifest | undefined;
21
21
  getAllManifests(): NodeManifest[];
22
22
  getAllCategories(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTypeRegistry.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/NodeTypeRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,KAAK,EAEV,cAAc,EACd,YAAY,EACZ,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAAE,YAAY,EAA4B,MAAM,gBAAgB,CAAC;AAGxE,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC3B;AAMD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,kBAAkB,CAAqD;IAC/E,OAAO,CAAC,eAAe,CAAiD;IACxE,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,mBAAmB,CAA+B;IAC1D,OAAO,CAAC,YAAY,CAA6B;IAUjD,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE;IAmC3C,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB;IA0E3C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAQvD,eAAe,IAAI,YAAY,EAAE;IAQjC,gBAAgB,IAAI,MAAM,EAAE;IAQ5B,eAAe,IAAI,MAAM,EAAE;IAO3B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;IAOnD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS;IAW/F,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY;IAqCjE,eAAe,IAAI,YAAY,GAAG,IAAI;IAOtC,KAAK,IAAI,IAAI;IAwBb,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,yBAAyB,EAAE,yBAAyB,EAAE,GAAG,IAAI,GAAG,SAAS,GACxE,OAAO;IA6CV,wBAAwB,CACtB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,yBAAyB,EAAE,GAAG,IAAI,GAAG,SAAS;IAgE3E,OAAO,CAAC,yBAAyB;IAqCjC,cAAc,CAAC,OAAO,EAAE;QACtB,WAAW,CAAC,EAAE,yBAAyB,EAAE,GAAG,IAAI,CAAC;QACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,QAAQ,EAAE;CAyCf"}
1
+ {"version":3,"file":"NodeTypeRegistry.d.ts","sourceRoot":"","sources":["../../../src/canvas/core/NodeTypeRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAMhG,OAAO,EAAE,YAAY,EAA4B,MAAM,gBAAgB,CAAC;AAGxE,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC3B;AAMD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,kBAAkB,CAAqD;IAC/E,OAAO,CAAC,eAAe,CAAiD;IACxE,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,mBAAmB,CAA+B;IAC1D,OAAO,CAAC,YAAY,CAA6B;IAUjD,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE;IA8B3C,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,gBAAgB,EAAE;IA0ErF,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAQvD,eAAe,IAAI,YAAY,EAAE;IAQjC,gBAAgB,IAAI,MAAM,EAAE;IAQ5B,eAAe,IAAI,MAAM,EAAE;IAO3B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;IAOnD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS;IAW/F,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY;IAqCjE,eAAe,IAAI,YAAY,GAAG,IAAI;IAOtC,KAAK,IAAI,IAAI;IAwBb,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,yBAAyB,EAAE,yBAAyB,EAAE,GAAG,IAAI,GAAG,SAAS,GACxE,OAAO;IA6CV,wBAAwB,CACtB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,yBAAyB,EAAE,GAAG,IAAI,GAAG,SAAS;IAgE3E,OAAO,CAAC,yBAAyB;IAqCjC,cAAc,CAAC,OAAO,EAAE;QACtB,WAAW,CAAC,EAAE,yBAAyB,EAAE,GAAG,IAAI,CAAC;QACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,QAAQ,EAAE;CAyCf"}