@uipath/apollo-react 4.20.0 → 4.21.0-pr644.9f93a11

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 (97) hide show
  1. package/dist/canvas/components/AddNodePanel/AddNodePanel.cjs +3 -2
  2. package/dist/canvas/components/AddNodePanel/AddNodePanel.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/AddNodePanel.js +3 -2
  4. package/dist/canvas/components/AddNodePanel/AddNodePanel.types.d.ts +2 -1
  5. package/dist/canvas/components/AddNodePanel/AddNodePanel.types.d.ts.map +1 -1
  6. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +3 -2
  7. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  8. package/dist/canvas/components/BaseNode/BaseNode.cjs +12 -3
  9. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  10. package/dist/canvas/components/BaseNode/BaseNode.js +12 -3
  11. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts +1 -0
  12. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts.map +1 -1
  13. package/dist/canvas/components/Toolbox/ListView.cjs +30 -22
  14. package/dist/canvas/components/Toolbox/ListView.d.ts +1 -0
  15. package/dist/canvas/components/Toolbox/ListView.d.ts.map +1 -1
  16. package/dist/canvas/components/Toolbox/ListView.js +30 -22
  17. package/dist/canvas/components/Toolbox/Toolbox.cjs +9 -1
  18. package/dist/canvas/components/Toolbox/Toolbox.d.ts +5 -1
  19. package/dist/canvas/components/Toolbox/Toolbox.d.ts.map +1 -1
  20. package/dist/canvas/components/Toolbox/Toolbox.js +9 -1
  21. package/dist/canvas/components/index.cjs +19 -12
  22. package/dist/canvas/components/index.d.ts +1 -0
  23. package/dist/canvas/components/index.d.ts.map +1 -1
  24. package/dist/canvas/components/index.js +1 -0
  25. package/dist/canvas/components/shared/InitialsBadge.cjs +83 -0
  26. package/dist/canvas/components/shared/InitialsBadge.d.ts +8 -0
  27. package/dist/canvas/components/shared/InitialsBadge.d.ts.map +1 -0
  28. package/dist/canvas/components/shared/InitialsBadge.js +36 -0
  29. package/dist/canvas/components/shared/index.cjs +39 -0
  30. package/dist/canvas/components/shared/index.d.ts +3 -0
  31. package/dist/canvas/components/shared/index.d.ts.map +1 -0
  32. package/dist/canvas/components/shared/index.js +2 -0
  33. package/dist/canvas/core/CategoryTree.cjs +3 -0
  34. package/dist/canvas/core/CategoryTree.d.ts.map +1 -1
  35. package/dist/canvas/core/CategoryTree.js +3 -0
  36. package/dist/canvas/core/NodeTypeRegistry.cjs +3 -1
  37. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  38. package/dist/canvas/core/NodeTypeRegistry.js +3 -1
  39. package/dist/canvas/schema/node-definition/category-manifest.cjs +1 -1
  40. package/dist/canvas/schema/node-definition/category-manifest.d.ts +1 -1
  41. package/dist/canvas/schema/node-definition/category-manifest.d.ts.map +1 -1
  42. package/dist/canvas/schema/node-definition/category-manifest.js +1 -1
  43. package/dist/canvas/schema/node-definition/node-manifest.cjs +2 -1
  44. package/dist/canvas/schema/node-definition/node-manifest.d.ts +4 -2
  45. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  46. package/dist/canvas/schema/node-definition/node-manifest.js +2 -1
  47. package/dist/canvas/schema/node-instance/base.cjs +1 -0
  48. package/dist/canvas/schema/node-instance/base.d.ts +1 -0
  49. package/dist/canvas/schema/node-instance/base.d.ts.map +1 -1
  50. package/dist/canvas/schema/node-instance/base.js +1 -0
  51. package/dist/canvas/schema/node-instance/node.d.ts +1 -0
  52. package/dist/canvas/schema/node-instance/node.d.ts.map +1 -1
  53. package/dist/canvas/storybook-utils/manifests/index.d.ts +3 -2
  54. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  55. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  56. package/dist/canvas/utils/icon-registry.cjs +8 -0
  57. package/dist/canvas/utils/icon-registry.d.ts +1 -1
  58. package/dist/canvas/utils/icon-registry.d.ts.map +1 -1
  59. package/dist/canvas/utils/icon-registry.js +8 -0
  60. package/dist/canvas/utils/manifest-resolver.cjs +3 -1
  61. package/dist/canvas/utils/manifest-resolver.d.ts +1 -1
  62. package/dist/canvas/utils/manifest-resolver.d.ts.map +1 -1
  63. package/dist/canvas/utils/manifest-resolver.js +3 -1
  64. package/dist/material/components/ap-chat/locales/de.cjs +1 -1
  65. package/dist/material/components/ap-chat/locales/de.d.ts.map +1 -1
  66. package/dist/material/components/ap-chat/locales/de.js +1 -1
  67. package/dist/material/components/ap-chat/locales/es-MX.cjs +1 -1
  68. package/dist/material/components/ap-chat/locales/es-MX.d.ts.map +1 -1
  69. package/dist/material/components/ap-chat/locales/es-MX.js +1 -1
  70. package/dist/material/components/ap-chat/locales/es.cjs +1 -1
  71. package/dist/material/components/ap-chat/locales/es.d.ts.map +1 -1
  72. package/dist/material/components/ap-chat/locales/es.js +1 -1
  73. package/dist/material/components/ap-chat/locales/fr.cjs +1 -1
  74. package/dist/material/components/ap-chat/locales/fr.d.ts.map +1 -1
  75. package/dist/material/components/ap-chat/locales/fr.js +1 -1
  76. package/dist/material/components/ap-chat/locales/ja.cjs +1 -1
  77. package/dist/material/components/ap-chat/locales/ja.d.ts.map +1 -1
  78. package/dist/material/components/ap-chat/locales/ja.js +1 -1
  79. package/dist/material/components/ap-chat/locales/ko.cjs +1 -1
  80. package/dist/material/components/ap-chat/locales/ko.d.ts.map +1 -1
  81. package/dist/material/components/ap-chat/locales/ko.js +1 -1
  82. package/dist/material/components/ap-chat/locales/pt-BR.cjs +1 -1
  83. package/dist/material/components/ap-chat/locales/pt-BR.d.ts.map +1 -1
  84. package/dist/material/components/ap-chat/locales/pt-BR.js +1 -1
  85. package/dist/material/components/ap-chat/locales/pt.cjs +1 -1
  86. package/dist/material/components/ap-chat/locales/pt.d.ts.map +1 -1
  87. package/dist/material/components/ap-chat/locales/pt.js +1 -1
  88. package/dist/material/components/ap-chat/locales/tr.cjs +1 -1
  89. package/dist/material/components/ap-chat/locales/tr.d.ts.map +1 -1
  90. package/dist/material/components/ap-chat/locales/tr.js +1 -1
  91. package/dist/material/components/ap-chat/locales/zh-CN.cjs +1 -1
  92. package/dist/material/components/ap-chat/locales/zh-CN.d.ts.map +1 -1
  93. package/dist/material/components/ap-chat/locales/zh-CN.js +1 -1
  94. package/dist/material/components/ap-chat/locales/zh-TW.cjs +1 -1
  95. package/dist/material/components/ap-chat/locales/zh-TW.d.ts.map +1 -1
  96. package/dist/material/components/ap-chat/locales/zh-TW.js +1 -1
  97. package/package.json +3 -3
@@ -31,7 +31,7 @@ const external_react_namespaceObject = require("react");
31
31
  const index_cjs_namespaceObject = require("../../core/index.cjs");
32
32
  const external_hooks_index_cjs_namespaceObject = require("../../hooks/index.cjs");
33
33
  const external_Toolbox_index_cjs_namespaceObject = require("../Toolbox/index.cjs");
34
- const AddNodePanel_AddNodePanel = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(function({ onNodeSelect, onClose, onSearch, onNodeHover, items, title, loading }) {
34
+ const AddNodePanel_AddNodePanel = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(function({ onNodeSelect, onClose, onSearch, onNodeHover, items, title, loading, renderEmptyState }) {
35
35
  const registry = (0, index_cjs_namespaceObject.useOptionalNodeTypeRegistry)();
36
36
  const { previewNodeConnectionInfo } = (0, external_hooks_index_cjs_namespaceObject.usePreviewNode)();
37
37
  const nodeListOptions = (0, external_react_namespaceObject.useMemo)(()=>{
@@ -75,7 +75,8 @@ const AddNodePanel_AddNodePanel = /*#__PURE__*/ (0, external_react_namespaceObje
75
75
  onItemSelect: handleNodeListItemSelect,
76
76
  onSearch: handleSearch,
77
77
  onClose: onClose,
78
- onItemHover: onNodeHover
78
+ onItemHover: onNodeHover,
79
+ renderEmptyState: renderEmptyState
79
80
  });
80
81
  });
81
82
  exports.AddNodePanel = __webpack_exports__.AddNodePanel;
@@ -1 +1 @@
1
- {"version":3,"file":"AddNodePanel.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAU9D,eAAO,MAAM,YAAY,yDA2EvB,CAAC"}
1
+ {"version":3,"file":"AddNodePanel.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAU9D,eAAO,MAAM,YAAY,yDA6EvB,CAAC"}
@@ -3,7 +3,7 @@ import { memo, useCallback, useMemo } from "react";
3
3
  import { useOptionalNodeTypeRegistry } from "../../core/index.js";
4
4
  import { usePreviewNode } from "../../hooks/index.js";
5
5
  import { Toolbox } from "../Toolbox/index.js";
6
- const AddNodePanel_AddNodePanel = /*#__PURE__*/ memo(function({ onNodeSelect, onClose, onSearch, onNodeHover, items, title, loading }) {
6
+ const AddNodePanel_AddNodePanel = /*#__PURE__*/ memo(function({ onNodeSelect, onClose, onSearch, onNodeHover, items, title, loading, renderEmptyState }) {
7
7
  const registry = useOptionalNodeTypeRegistry();
8
8
  const { previewNodeConnectionInfo } = usePreviewNode();
9
9
  const nodeListOptions = useMemo(()=>{
@@ -47,7 +47,8 @@ const AddNodePanel_AddNodePanel = /*#__PURE__*/ memo(function({ onNodeSelect, on
47
47
  onItemSelect: handleNodeListItemSelect,
48
48
  onSearch: handleSearch,
49
49
  onClose: onClose,
50
- onItemHover: onNodeHover
50
+ onItemHover: onNodeHover,
51
+ renderEmptyState: renderEmptyState
51
52
  });
52
53
  });
53
54
  export { AddNodePanel_AddNodePanel as AddNodePanel };
@@ -1,4 +1,4 @@
1
- import type { ListItem } from '../Toolbox';
1
+ import type { ListItem, ToolboxEmptyStateRenderer } from '../Toolbox';
2
2
  export interface NodeItemData {
3
3
  type: string;
4
4
  version?: string;
@@ -12,5 +12,6 @@ export interface AddNodePanelProps {
12
12
  title?: string;
13
13
  items?: ListItem[];
14
14
  loading?: boolean;
15
+ renderEmptyState?: ToolboxEmptyStateRenderer<NodeItemData>;
15
16
  }
16
17
  //# sourceMappingURL=AddNodePanel.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddNodePanel.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodePanel.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,CACT,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,EACzB,YAAY,EAAE,QAAQ,EAAE,KACrB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
1
+ {"version":3,"file":"AddNodePanel.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodePanel.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,CACT,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,EACzB,YAAY,EAAE,QAAQ,EAAE,KACrB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAOlB,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,YAAY,CAAC,CAAC;CAC5D"}
@@ -14,11 +14,11 @@ export declare const agentFlowManifest: {
14
14
  id: string;
15
15
  name: string;
16
16
  sortOrder: number;
17
- icon: string;
18
17
  tags: string[];
19
18
  parentId?: string | undefined;
20
19
  color?: string | undefined;
21
20
  colorDark?: string | undefined;
21
+ icon?: string | undefined;
22
22
  }[];
23
23
  nodes: {
24
24
  nodeType: string;
@@ -27,8 +27,9 @@ export declare const agentFlowManifest: {
27
27
  sortOrder: number;
28
28
  display: {
29
29
  label: string;
30
- icon: string;
30
+ canvasLabel?: string | undefined;
31
31
  description?: string | undefined;
32
+ icon?: string | undefined;
32
33
  shape?: "square" | "circle" | "container" | "rectangle" | undefined;
33
34
  color?: string | undefined;
34
35
  background?: string | undefined;
@@ -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,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;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAMF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa7B,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;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAMF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa7B,CAAC"}
@@ -43,6 +43,7 @@ const ConnectedHandlesContext_cjs_namespaceObject = require("../BaseCanvas/Conne
43
43
  const SelectionStateContext_cjs_namespaceObject = require("../BaseCanvas/SelectionStateContext.cjs");
44
44
  const SmartHandle_cjs_namespaceObject = require("../ButtonHandle/SmartHandle.cjs");
45
45
  const useButtonHandles_cjs_namespaceObject = require("../ButtonHandle/useButtonHandles.cjs");
46
+ const InitialsBadge_cjs_namespaceObject = require("../shared/InitialsBadge.cjs");
46
47
  const external_Toolbar_index_cjs_namespaceObject = require("../Toolbar/index.cjs");
47
48
  const external_BaseNodeBadgeSlot_cjs_namespaceObject = require("./BaseNodeBadgeSlot.cjs");
48
49
  const external_BaseNodeConfigContext_cjs_namespaceObject = require("./BaseNodeConfigContext.cjs");
@@ -124,11 +125,19 @@ const BaseNodeComponent = (props)=>{
124
125
  const isStacked = Boolean(manifest?.drillable || data?.isCollapsed);
125
126
  const Icon = (0, external_react_namespaceObject.useMemo)(()=>{
126
127
  if (void 0 !== iconComponent) return iconComponent;
127
- const IconComponent = (0, icon_registry_cjs_namespaceObject.getIcon)(display.icon);
128
- return IconComponent ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(IconComponent, {}) : null;
128
+ if (display.icon) {
129
+ const IconComponent = (0, icon_registry_cjs_namespaceObject.getIcon)(display.icon);
130
+ return IconComponent ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(IconComponent, {}) : null;
131
+ }
132
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(InitialsBadge_cjs_namespaceObject.InitialsBadge, {
133
+ name: display.label,
134
+ size: "var(--icon-size)",
135
+ "data-testid": "base-node-initials-badge"
136
+ });
129
137
  }, [
130
138
  iconComponent,
131
- display.icon
139
+ display.icon,
140
+ display.label
132
141
  ]);
133
142
  const handleConfigurations = (0, external_react_namespaceObject.useMemo)(()=>{
134
143
  if (handleConfigurationsProp && Array.isArray(handleConfigurationsProp)) return handleConfigurationsProp;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAuChF,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAynB1B,eAAO,MAAM,QAAQ,8CAnlBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAmlBhB,CAAC"}
1
+ {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAwChF,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAsoB1B,eAAO,MAAM,QAAQ,8CAhmBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAgmBhB,CAAC"}
@@ -15,6 +15,7 @@ import { useConnectedHandles } from "../BaseCanvas/ConnectedHandlesContext.js";
15
15
  import { useSelectionState } from "../BaseCanvas/SelectionStateContext.js";
16
16
  import { SmartHandle, SmartHandleProvider } from "../ButtonHandle/SmartHandle.js";
17
17
  import { useButtonHandles } from "../ButtonHandle/useButtonHandles.js";
18
+ import { InitialsBadge } from "../shared/InitialsBadge.js";
18
19
  import { NodeToolbar } from "../Toolbar/index.js";
19
20
  import { BaseBadgeSlot } from "./BaseNodeBadgeSlot.js";
20
21
  import { useBaseNodeOverrideConfig } from "./BaseNodeConfigContext.js";
@@ -96,11 +97,19 @@ const BaseNodeComponent = (props)=>{
96
97
  const isStacked = Boolean(manifest?.drillable || data?.isCollapsed);
97
98
  const Icon = useMemo(()=>{
98
99
  if (void 0 !== iconComponent) return iconComponent;
99
- const IconComponent = getIcon(display.icon);
100
- return IconComponent ? /*#__PURE__*/ jsx(IconComponent, {}) : null;
100
+ if (display.icon) {
101
+ const IconComponent = getIcon(display.icon);
102
+ return IconComponent ? /*#__PURE__*/ jsx(IconComponent, {}) : null;
103
+ }
104
+ return /*#__PURE__*/ jsx(InitialsBadge, {
105
+ name: display.label,
106
+ size: "var(--icon-size)",
107
+ "data-testid": "base-node-initials-badge"
108
+ });
101
109
  }, [
102
110
  iconComponent,
103
- display.icon
111
+ display.icon,
112
+ display.label
104
113
  ]);
105
114
  const handleConfigurations = useMemo(()=>{
106
115
  if (handleConfigurationsProp && Array.isArray(handleConfigurationsProp)) return handleConfigurationsProp;
@@ -5,6 +5,7 @@ export type FooterVariant = 'none' | 'button' | 'single' | 'double';
5
5
  export interface BaseNodeData extends Record<string, unknown> {
6
6
  display?: {
7
7
  label?: string;
8
+ canvasLabel?: string;
8
9
  subLabel?: string;
9
10
  shape?: NodeShape;
10
11
  color?: string;
@@ -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;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,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;IAOtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;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,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,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;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,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;QAMf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,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;IAOtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;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,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -34,6 +34,7 @@ const apollo_wind_namespaceObject = require("@uipath/apollo-wind");
34
34
  const external_react_namespaceObject = require("react");
35
35
  const CanvasThemeContext_cjs_namespaceObject = require("../BaseCanvas/CanvasThemeContext.cjs");
36
36
  const external_CanvasTooltip_cjs_namespaceObject = require("../CanvasTooltip.cjs");
37
+ const InitialsBadge_cjs_namespaceObject = require("../shared/InitialsBadge.cjs");
37
38
  const external_ListView_styles_cjs_namespaceObject = require("./ListView.styles.cjs");
38
39
  const DEFAULT_SKELETON_COUNT = 3;
39
40
  function buildRenderedItems(items, enableSections, loadingSkeleton) {
@@ -162,7 +163,11 @@ const ListViewRow = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ in
162
163
  icon: item.icon.name,
163
164
  size: 24
164
165
  }),
165
- item.icon?.Component && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(item.icon.Component, {})
166
+ item.icon?.Component && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(item.icon.Component, {}),
167
+ !item.icon?.url && !item.icon?.name && !item.icon?.Component && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(InitialsBadge_cjs_namespaceObject.InitialsBadge, {
168
+ name: item.name,
169
+ "data-testid": "list-item-initials-badge"
170
+ })
166
171
  ]
167
172
  }),
168
173
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(index_cjs_namespaceObject.Column, {
@@ -219,7 +224,7 @@ const ListItemSkeleton = ()=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)
219
224
  })
220
225
  ]
221
226
  });
222
- const ListViewInner = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(function({ items, activeIndex = -1, listRef, onItemClick, onItemHover, onScroll, emptyStateMessage = 'No items found', emptyStateIcon = 'search-x', isLoading = false, enableSections = true, loadingSkeleton }, ref) {
227
+ const ListViewInner = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(function({ items, activeIndex = -1, listRef, onItemClick, onItemHover, onScroll, emptyStateMessage = 'No items found', emptyStateIcon = 'search-x', renderEmptyState, isLoading = false, enableSections = true, loadingSkeleton }, ref) {
223
228
  const { isDarkMode } = (0, CanvasThemeContext_cjs_namespaceObject.useCanvasTheme)();
224
229
  const activeSkeleton = loadingSkeleton ?? (isLoading && 0 === items.length ? true : void 0);
225
230
  const renderedItems = (0, external_react_namespaceObject.useMemo)(()=>buildRenderedItems(items, enableSections, activeSkeleton), [
@@ -247,26 +252,29 @@ const ListViewInner = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRe
247
252
  onItemClick,
248
253
  onItemHover
249
254
  ]);
250
- if (0 === renderedItems.length) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(index_cjs_namespaceObject.Column, {
251
- align: "center",
252
- justify: "center",
253
- flex: 1,
254
- gap: 10,
255
- style: {
256
- minHeight: '250px'
257
- },
258
- children: [
259
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_utils_index_cjs_namespaceObject.CanvasIcon, {
260
- icon: emptyStateIcon,
261
- size: 48,
262
- color: "var(--canvas-foreground-de-emp)"
263
- }),
264
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
265
- className: "text-xs text-foreground-muted",
266
- children: emptyStateMessage
267
- })
268
- ]
269
- });
255
+ if (0 === renderedItems.length) {
256
+ if (renderEmptyState) return renderEmptyState();
257
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(index_cjs_namespaceObject.Column, {
258
+ align: "center",
259
+ justify: "center",
260
+ flex: 1,
261
+ gap: 10,
262
+ style: {
263
+ minHeight: '250px'
264
+ },
265
+ children: [
266
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_utils_index_cjs_namespaceObject.CanvasIcon, {
267
+ icon: emptyStateIcon,
268
+ size: 48,
269
+ color: "var(--canvas-foreground-de-emp)"
270
+ }),
271
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
272
+ className: "text-xs text-foreground-muted",
273
+ children: emptyStateMessage
274
+ })
275
+ ]
276
+ });
277
+ }
270
278
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_ListView_styles_cjs_namespaceObject.StyledList, {
271
279
  id: "toolbox-listbox",
272
280
  role: "listbox",
@@ -53,6 +53,7 @@ interface ListViewProps<T extends ListItem> {
53
53
  onScroll?: React.UIEventHandler<HTMLDivElement>;
54
54
  emptyStateMessage?: string;
55
55
  emptyStateIcon?: string;
56
+ renderEmptyState?: () => React.ReactElement | null;
56
57
  isLoading?: boolean;
57
58
  enableSections?: boolean;
58
59
  loadingSkeleton?: boolean | ChildrenLoadingSpec;
@@ -1 +1 @@
1
- {"version":3,"file":"ListView.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Toolbox/ListView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListView.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Toolbox/ListView.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { Skeleton } from "@uipath/apollo-wind";
5
5
  import { forwardRef, memo, useCallback, useImperativeHandle, useMemo } from "react";
6
6
  import { useCanvasTheme } from "../BaseCanvas/CanvasThemeContext.js";
7
7
  import { CanvasTooltip } from "../CanvasTooltip.js";
8
+ import { InitialsBadge } from "../shared/InitialsBadge.js";
8
9
  import { IconContainer, ListItemButton, SectionHeader, StyledList } from "./ListView.styles.js";
9
10
  const DEFAULT_SKELETON_COUNT = 3;
10
11
  function buildRenderedItems(items, enableSections, loadingSkeleton) {
@@ -133,7 +134,11 @@ const ListViewRow = /*#__PURE__*/ memo(({ index, style, ariaAttributes, rendered
133
134
  icon: item.icon.name,
134
135
  size: 24
135
136
  }),
136
- item.icon?.Component && /*#__PURE__*/ jsx(item.icon.Component, {})
137
+ item.icon?.Component && /*#__PURE__*/ jsx(item.icon.Component, {}),
138
+ !item.icon?.url && !item.icon?.name && !item.icon?.Component && /*#__PURE__*/ jsx(InitialsBadge, {
139
+ name: item.name,
140
+ "data-testid": "list-item-initials-badge"
141
+ })
137
142
  ]
138
143
  }),
139
144
  /*#__PURE__*/ jsxs(Column, {
@@ -190,7 +195,7 @@ const ListItemSkeleton = ()=>/*#__PURE__*/ jsxs("div", {
190
195
  })
191
196
  ]
192
197
  });
193
- const ListViewInner = /*#__PURE__*/ forwardRef(function({ items, activeIndex = -1, listRef, onItemClick, onItemHover, onScroll, emptyStateMessage = 'No items found', emptyStateIcon = 'search-x', isLoading = false, enableSections = true, loadingSkeleton }, ref) {
198
+ const ListViewInner = /*#__PURE__*/ forwardRef(function({ items, activeIndex = -1, listRef, onItemClick, onItemHover, onScroll, emptyStateMessage = 'No items found', emptyStateIcon = 'search-x', renderEmptyState, isLoading = false, enableSections = true, loadingSkeleton }, ref) {
194
199
  const { isDarkMode } = useCanvasTheme();
195
200
  const activeSkeleton = loadingSkeleton ?? (isLoading && 0 === items.length ? true : void 0);
196
201
  const renderedItems = useMemo(()=>buildRenderedItems(items, enableSections, activeSkeleton), [
@@ -218,26 +223,29 @@ const ListViewInner = /*#__PURE__*/ forwardRef(function({ items, activeIndex = -
218
223
  onItemClick,
219
224
  onItemHover
220
225
  ]);
221
- if (0 === renderedItems.length) return /*#__PURE__*/ jsxs(Column, {
222
- align: "center",
223
- justify: "center",
224
- flex: 1,
225
- gap: 10,
226
- style: {
227
- minHeight: '250px'
228
- },
229
- children: [
230
- /*#__PURE__*/ jsx(CanvasIcon, {
231
- icon: emptyStateIcon,
232
- size: 48,
233
- color: "var(--canvas-foreground-de-emp)"
234
- }),
235
- /*#__PURE__*/ jsx("span", {
236
- className: "text-xs text-foreground-muted",
237
- children: emptyStateMessage
238
- })
239
- ]
240
- });
226
+ if (0 === renderedItems.length) {
227
+ if (renderEmptyState) return renderEmptyState();
228
+ return /*#__PURE__*/ jsxs(Column, {
229
+ align: "center",
230
+ justify: "center",
231
+ flex: 1,
232
+ gap: 10,
233
+ style: {
234
+ minHeight: '250px'
235
+ },
236
+ children: [
237
+ /*#__PURE__*/ jsx(CanvasIcon, {
238
+ icon: emptyStateIcon,
239
+ size: 48,
240
+ color: "var(--canvas-foreground-de-emp)"
241
+ }),
242
+ /*#__PURE__*/ jsx("span", {
243
+ className: "text-xs text-foreground-muted",
244
+ children: emptyStateMessage
245
+ })
246
+ ]
247
+ });
248
+ }
241
249
  return /*#__PURE__*/ jsx(StyledList, {
242
250
  id: "toolbox-listbox",
243
251
  role: "listbox",
@@ -81,7 +81,7 @@ function searchLeafItems(items, query) {
81
81
  }
82
82
  return results;
83
83
  }
84
- function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth = false, fullHeight = false, quickActions }) {
84
+ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth = false, fullHeight = false, quickActions, renderEmptyState }) {
85
85
  const [items, setItems] = (0, external_react_namespaceObject.useState)(initialItems);
86
86
  const [search, setSearch] = (0, external_react_namespaceObject.useState)('');
87
87
  const [searchLoading, setSearchLoading] = (0, external_react_namespaceObject.useState)(false);
@@ -108,6 +108,13 @@ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title,
108
108
  const isSearching = (0, external_react_namespaceObject.useMemo)(()=>search.length > 0, [
109
109
  search
110
110
  ]);
111
+ const wrappedRenderEmptyState = (0, external_react_namespaceObject.useMemo)(()=>renderEmptyState && !isSearching ? ()=>renderEmptyState({
112
+ currentCategory: currentParentItem ?? void 0
113
+ }) : void 0, [
114
+ renderEmptyState,
115
+ isSearching,
116
+ currentParentItem
117
+ ]);
111
118
  const displayedItems = (0, external_react_namespaceObject.useMemo)(()=>isSearching && !isSearchingInitialItems ? searchedItems : items, [
112
119
  isSearching,
113
120
  isSearchingInitialItems,
@@ -455,6 +462,7 @@ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title,
455
462
  activeIndex: activeIndex,
456
463
  listRef: listRef,
457
464
  emptyStateMessage: isSearching ? 'No matching nodes found' : 'No nodes found',
465
+ renderEmptyState: wrappedRenderEmptyState,
458
466
  onItemClick: handleItemSelect,
459
467
  onItemHover: onItemHover,
460
468
  onScroll: handleListScroll,
@@ -1,5 +1,8 @@
1
1
  import { type ListItem } from './ListView';
2
2
  import { type ToolboxQuickAction } from './QuickActionsRow';
3
+ export type ToolboxEmptyStateRenderer<T = any> = (ctx: {
4
+ currentCategory?: ListItem<T>;
5
+ }) => React.ReactElement | null;
3
6
  export type ToolboxSearchHandler<T = any> = (query: string, isTopLevelSearch: boolean, { currentItems, category }: {
4
7
  currentItems?: ListItem<T>[];
5
8
  category?: string;
@@ -16,6 +19,7 @@ export interface ToolboxProps<T> {
16
19
  onBack?: () => void;
17
20
  onSearch?: ToolboxSearchHandler<T>;
18
21
  quickActions?: ToolboxQuickAction[];
22
+ renderEmptyState?: ToolboxEmptyStateRenderer<T>;
19
23
  }
20
- export declare function Toolbox<T>({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth, fullHeight, quickActions, }: ToolboxProps<T>): import("react/jsx-runtime").JSX.Element;
24
+ export declare function Toolbox<T>({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth, fullHeight, quickActions, renderEmptyState, }: ToolboxProps<T>): import("react/jsx-runtime").JSX.Element;
21
25
  //# sourceMappingURL=Toolbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbox.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Toolbox/Toolbox.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,QAAQ,EAAkD,MAAM,YAAY,CAAC;AAC3F,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAwC7E,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,GAAG,IAAI,CAC1C,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,EACzB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KAC5E,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5B,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAOnC,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAgDD,wBAAgB,OAAO,CAAC,CAAC,EAAE,EACzB,OAAO,EACP,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,SAAiB,EACjB,UAAkB,EAClB,YAAY,GACb,EAAE,YAAY,CAAC,CAAC,CAAC,2CA+fjB"}
1
+ {"version":3,"file":"Toolbox.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Toolbox/Toolbox.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,QAAQ,EAAkD,MAAM,YAAY,CAAC;AAC3F,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AA+C7E,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IACrD,eAAe,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;CAC/B,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;AAEhC,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,GAAG,IAAI,CAC1C,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,EACzB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KAC5E,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5B,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAOnC,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAOpC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC;CACjD;AAgDD,wBAAgB,OAAO,CAAC,CAAC,EAAE,EACzB,OAAO,EACP,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,SAAiB,EACjB,UAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,EAAE,YAAY,CAAC,CAAC,CAAC,2CA4gBjB"}
@@ -53,7 +53,7 @@ function searchLeafItems(items, query) {
53
53
  }
54
54
  return results;
55
55
  }
56
- function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth = false, fullHeight = false, quickActions }) {
56
+ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title, initialItems, loading, fullWidth = false, fullHeight = false, quickActions, renderEmptyState }) {
57
57
  const [items, setItems] = useState(initialItems);
58
58
  const [search, setSearch] = useState('');
59
59
  const [searchLoading, setSearchLoading] = useState(false);
@@ -80,6 +80,13 @@ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title,
80
80
  const isSearching = useMemo(()=>search.length > 0, [
81
81
  search
82
82
  ]);
83
+ const wrappedRenderEmptyState = useMemo(()=>renderEmptyState && !isSearching ? ()=>renderEmptyState({
84
+ currentCategory: currentParentItem ?? void 0
85
+ }) : void 0, [
86
+ renderEmptyState,
87
+ isSearching,
88
+ currentParentItem
89
+ ]);
83
90
  const displayedItems = useMemo(()=>isSearching && !isSearchingInitialItems ? searchedItems : items, [
84
91
  isSearching,
85
92
  isSearchingInitialItems,
@@ -427,6 +434,7 @@ function Toolbox({ onClose, onBack, onItemSelect, onSearch, onItemHover, title,
427
434
  activeIndex: activeIndex,
428
435
  listRef: listRef,
429
436
  emptyStateMessage: isSearching ? 'No matching nodes found' : 'No nodes found',
437
+ renderEmptyState: wrappedRenderEmptyState,
430
438
  onItemClick: handleItemSelect,
431
439
  onItemHover: onItemHover,
432
440
  onScroll: handleListScroll,
@@ -68,6 +68,9 @@ var __webpack_modules__ = {
68
68
  },
69
69
  "./TriggerNode" (module) {
70
70
  module.exports = require("./TriggerNode/index.cjs");
71
+ },
72
+ "./shared" (module) {
73
+ module.exports = require("./shared/index.cjs");
71
74
  }
72
75
  };
73
76
  var __webpack_module_cache__ = {};
@@ -181,29 +184,33 @@ var __webpack_exports__ = {};
181
184
  var __rspack_reexport = {};
182
185
  for(const __rspack_import_key in _NodePropertiesPanel__rspack_import_16)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_NodePropertiesPanel__rspack_import_16[__rspack_import_key];
183
186
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
184
- var _StageNode__rspack_import_17 = __webpack_require__("./StageNode");
187
+ var _shared__rspack_import_17 = __webpack_require__("./shared");
188
+ var __rspack_reexport = {};
189
+ for(const __rspack_import_key in _shared__rspack_import_17)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_shared__rspack_import_17[__rspack_import_key];
190
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
191
+ var _StageNode__rspack_import_18 = __webpack_require__("./StageNode");
185
192
  var __rspack_reexport = {};
186
- for(const __rspack_import_key in _StageNode__rspack_import_17)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_StageNode__rspack_import_17[__rspack_import_key];
193
+ for(const __rspack_import_key in _StageNode__rspack_import_18)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_StageNode__rspack_import_18[__rspack_import_key];
187
194
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
188
- var _StickyNoteNode__rspack_import_18 = __webpack_require__("./StickyNoteNode?d2a3");
195
+ var _StickyNoteNode__rspack_import_19 = __webpack_require__("./StickyNoteNode?d2a3");
189
196
  var __rspack_reexport = {};
190
- for(const __rspack_import_key in _StickyNoteNode__rspack_import_18)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_StickyNoteNode__rspack_import_18[__rspack_import_key];
197
+ for(const __rspack_import_key in _StickyNoteNode__rspack_import_19)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_StickyNoteNode__rspack_import_19[__rspack_import_key];
191
198
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
192
- var _TaskIcon__rspack_import_19 = __webpack_require__("./TaskIcon");
199
+ var _TaskIcon__rspack_import_20 = __webpack_require__("./TaskIcon");
193
200
  var __rspack_reexport = {};
194
- for(const __rspack_import_key in _TaskIcon__rspack_import_19)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_TaskIcon__rspack_import_19[__rspack_import_key];
201
+ for(const __rspack_import_key in _TaskIcon__rspack_import_20)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_TaskIcon__rspack_import_20[__rspack_import_key];
195
202
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
196
- var _Toolbar__rspack_import_20 = __webpack_require__("./Toolbar");
203
+ var _Toolbar__rspack_import_21 = __webpack_require__("./Toolbar");
197
204
  var __rspack_reexport = {};
198
- for(const __rspack_import_key in _Toolbar__rspack_import_20)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_Toolbar__rspack_import_20[__rspack_import_key];
205
+ for(const __rspack_import_key in _Toolbar__rspack_import_21)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_Toolbar__rspack_import_21[__rspack_import_key];
199
206
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
200
- var _Toolbox__rspack_import_21 = __webpack_require__("./Toolbox?2740");
207
+ var _Toolbox__rspack_import_22 = __webpack_require__("./Toolbox?2740");
201
208
  var __rspack_reexport = {};
202
- for(const __rspack_import_key in _Toolbox__rspack_import_21)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_Toolbox__rspack_import_21[__rspack_import_key];
209
+ for(const __rspack_import_key in _Toolbox__rspack_import_22)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_Toolbox__rspack_import_22[__rspack_import_key];
203
210
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
204
- var _TriggerNode__rspack_import_22 = __webpack_require__("./TriggerNode");
211
+ var _TriggerNode__rspack_import_23 = __webpack_require__("./TriggerNode");
205
212
  var __rspack_reexport = {};
206
- for(const __rspack_import_key in _TriggerNode__rspack_import_22)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_TriggerNode__rspack_import_22[__rspack_import_key];
213
+ for(const __rspack_import_key in _TriggerNode__rspack_import_23)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_TriggerNode__rspack_import_23[__rspack_import_key];
207
214
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
208
215
  })();
209
216
  for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
@@ -15,6 +15,7 @@ export * from './MiniCanvasNavigator';
15
15
  export * from './NodeContextMenu';
16
16
  export * from './NodeInspector';
17
17
  export * from './NodePropertiesPanel';
18
+ export * from './shared';
18
19
  export * from './StageNode';
19
20
  export * from './StickyNoteNode';
20
21
  export * from './TaskIcon';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/canvas/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/canvas/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC"}
@@ -15,6 +15,7 @@ export * from "./MiniCanvasNavigator/index.js";
15
15
  export * from "./NodeContextMenu/index.js";
16
16
  export * from "./NodeInspector.js";
17
17
  export * from "./NodePropertiesPanel/index.js";
18
+ export * from "./shared/index.js";
18
19
  export * from "./StageNode/index.js";
19
20
  export * from "./StickyNoteNode/index.js";
20
21
  export * from "./TaskIcon/index.js";