@xyo-network/react-node 2.64.8 → 2.64.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/dist/browser/hooks/useModuleFilterOptions.d.cts +2 -2
  2. package/dist/browser/hooks/useModuleFilterOptions.d.mts +2 -2
  3. package/dist/browser/hooks/useModuleFilterOptions.d.ts +2 -2
  4. package/dist/docs.json +4345 -1093
  5. package/dist/node/hooks/useModuleFilterOptions.d.cts +2 -2
  6. package/dist/node/hooks/useModuleFilterOptions.d.mts +2 -2
  7. package/dist/node/hooks/useModuleFilterOptions.d.ts +2 -2
  8. package/package.json +18 -18
  9. package/dist/browser/components/Node.cjs +0 -88
  10. package/dist/browser/components/Node.cjs.map +0 -1
  11. package/dist/browser/components/Node.js +0 -65
  12. package/dist/browser/components/Node.js.map +0 -1
  13. package/dist/browser/components/NodeDescriptionBox.cjs +0 -76
  14. package/dist/browser/components/NodeDescriptionBox.cjs.map +0 -1
  15. package/dist/browser/components/NodeDescriptionBox.js +0 -55
  16. package/dist/browser/components/NodeDescriptionBox.js.map +0 -1
  17. package/dist/browser/components/NodeDrawer.cjs +0 -116
  18. package/dist/browser/components/NodeDrawer.cjs.map +0 -1
  19. package/dist/browser/components/NodeDrawer.js +0 -95
  20. package/dist/browser/components/NodeDrawer.js.map +0 -1
  21. package/dist/browser/components/NodeModulesBox.cjs +0 -104
  22. package/dist/browser/components/NodeModulesBox.cjs.map +0 -1
  23. package/dist/browser/components/NodeModulesBox.js +0 -83
  24. package/dist/browser/components/NodeModulesBox.js.map +0 -1
  25. package/dist/browser/components/TestModule.cjs +0 -39
  26. package/dist/browser/components/TestModule.cjs.map +0 -1
  27. package/dist/browser/components/TestModule.js +0 -18
  28. package/dist/browser/components/TestModule.js.map +0 -1
  29. package/dist/browser/components/index.cjs +0 -173
  30. package/dist/browser/components/index.cjs.map +0 -1
  31. package/dist/browser/components/index.js +0 -150
  32. package/dist/browser/components/index.js.map +0 -1
  33. package/dist/browser/components/render/ModuleDescriptionBox.cjs +0 -90
  34. package/dist/browser/components/render/ModuleDescriptionBox.cjs.map +0 -1
  35. package/dist/browser/components/render/ModuleDescriptionBox.js +0 -69
  36. package/dist/browser/components/render/ModuleDescriptionBox.js.map +0 -1
  37. package/dist/browser/components/render/RenderModule.cjs +0 -61
  38. package/dist/browser/components/render/RenderModule.cjs.map +0 -1
  39. package/dist/browser/components/render/RenderModule.js +0 -40
  40. package/dist/browser/components/render/RenderModule.js.map +0 -1
  41. package/dist/browser/components/render/index.cjs +0 -93
  42. package/dist/browser/components/render/index.cjs.map +0 -1
  43. package/dist/browser/components/render/index.js +0 -70
  44. package/dist/browser/components/render/index.js.map +0 -1
  45. package/dist/browser/hooks/ModuleFromNodeConfig.cjs +0 -29
  46. package/dist/browser/hooks/ModuleFromNodeConfig.cjs.map +0 -1
  47. package/dist/browser/hooks/ModuleFromNodeConfig.js +0 -8
  48. package/dist/browser/hooks/ModuleFromNodeConfig.js.map +0 -1
  49. package/dist/browser/hooks/index.cjs +0 -174
  50. package/dist/browser/hooks/index.cjs.map +0 -1
  51. package/dist/browser/hooks/index.js +0 -151
  52. package/dist/browser/hooks/index.js.map +0 -1
  53. package/dist/browser/hooks/provided/index.cjs +0 -34
  54. package/dist/browser/hooks/provided/index.cjs.map +0 -1
  55. package/dist/browser/hooks/provided/index.js +0 -11
  56. package/dist/browser/hooks/provided/index.js.map +0 -1
  57. package/dist/browser/hooks/provided/useProvidedNode.cjs +0 -32
  58. package/dist/browser/hooks/provided/useProvidedNode.cjs.map +0 -1
  59. package/dist/browser/hooks/provided/useProvidedNode.js +0 -11
  60. package/dist/browser/hooks/provided/useProvidedNode.js.map +0 -1
  61. package/dist/browser/hooks/useModuleFilterOptions.cjs +0 -30
  62. package/dist/browser/hooks/useModuleFilterOptions.cjs.map +0 -1
  63. package/dist/browser/hooks/useModuleFilterOptions.js +0 -9
  64. package/dist/browser/hooks/useModuleFilterOptions.js.map +0 -1
  65. package/dist/browser/hooks/useModuleFromNode.cjs +0 -109
  66. package/dist/browser/hooks/useModuleFromNode.cjs.map +0 -1
  67. package/dist/browser/hooks/useModuleFromNode.js +0 -88
  68. package/dist/browser/hooks/useModuleFromNode.js.map +0 -1
  69. package/dist/browser/hooks/useModulesFromNode.cjs +0 -96
  70. package/dist/browser/hooks/useModulesFromNode.cjs.map +0 -1
  71. package/dist/browser/hooks/useModulesFromNode.js +0 -75
  72. package/dist/browser/hooks/useModulesFromNode.js.map +0 -1
  73. package/dist/browser/hooks/useNode.cjs +0 -56
  74. package/dist/browser/hooks/useNode.cjs.map +0 -1
  75. package/dist/browser/hooks/useNode.js +0 -35
  76. package/dist/browser/hooks/useNode.js.map +0 -1
  77. package/dist/browser/hooks/useNodeConfigNodeField.cjs +0 -32
  78. package/dist/browser/hooks/useNodeConfigNodeField.cjs.map +0 -1
  79. package/dist/browser/hooks/useNodeConfigNodeField.js +0 -11
  80. package/dist/browser/hooks/useNodeConfigNodeField.js.map +0 -1
  81. package/dist/browser/hooks/useNodeDescription.cjs +0 -68
  82. package/dist/browser/hooks/useNodeDescription.cjs.map +0 -1
  83. package/dist/browser/hooks/useNodeDescription.js +0 -47
  84. package/dist/browser/hooks/useNodeDescription.js.map +0 -1
  85. package/dist/browser/hooks/useNodeFromNode.cjs +0 -124
  86. package/dist/browser/hooks/useNodeFromNode.cjs.map +0 -1
  87. package/dist/browser/hooks/useNodeFromNode.js +0 -103
  88. package/dist/browser/hooks/useNodeFromNode.js.map +0 -1
  89. package/dist/browser/hooks/useNodesFromNode.cjs +0 -120
  90. package/dist/browser/hooks/useNodesFromNode.cjs.map +0 -1
  91. package/dist/browser/hooks/useNodesFromNode.js +0 -99
  92. package/dist/browser/hooks/useNodesFromNode.js.map +0 -1
  93. package/dist/node/components/Node.cjs +0 -92
  94. package/dist/node/components/Node.cjs.map +0 -1
  95. package/dist/node/components/Node.js +0 -65
  96. package/dist/node/components/Node.js.map +0 -1
  97. package/dist/node/components/NodeDescriptionBox.cjs +0 -80
  98. package/dist/node/components/NodeDescriptionBox.cjs.map +0 -1
  99. package/dist/node/components/NodeDescriptionBox.js +0 -55
  100. package/dist/node/components/NodeDescriptionBox.js.map +0 -1
  101. package/dist/node/components/NodeDrawer.cjs +0 -120
  102. package/dist/node/components/NodeDrawer.cjs.map +0 -1
  103. package/dist/node/components/NodeDrawer.js +0 -95
  104. package/dist/node/components/NodeDrawer.js.map +0 -1
  105. package/dist/node/components/NodeModulesBox.cjs +0 -108
  106. package/dist/node/components/NodeModulesBox.cjs.map +0 -1
  107. package/dist/node/components/NodeModulesBox.js +0 -83
  108. package/dist/node/components/NodeModulesBox.js.map +0 -1
  109. package/dist/node/components/TestModule.cjs +0 -45
  110. package/dist/node/components/TestModule.cjs.map +0 -1
  111. package/dist/node/components/TestModule.js +0 -18
  112. package/dist/node/components/TestModule.js.map +0 -1
  113. package/dist/node/components/index.cjs +0 -178
  114. package/dist/node/components/index.cjs.map +0 -1
  115. package/dist/node/components/index.js +0 -150
  116. package/dist/node/components/index.js.map +0 -1
  117. package/dist/node/components/render/ModuleDescriptionBox.cjs +0 -94
  118. package/dist/node/components/render/ModuleDescriptionBox.cjs.map +0 -1
  119. package/dist/node/components/render/ModuleDescriptionBox.js +0 -69
  120. package/dist/node/components/render/ModuleDescriptionBox.js.map +0 -1
  121. package/dist/node/components/render/RenderModule.cjs +0 -65
  122. package/dist/node/components/render/RenderModule.cjs.map +0 -1
  123. package/dist/node/components/render/RenderModule.js +0 -40
  124. package/dist/node/components/render/RenderModule.js.map +0 -1
  125. package/dist/node/components/render/index.cjs +0 -98
  126. package/dist/node/components/render/index.cjs.map +0 -1
  127. package/dist/node/components/render/index.js +0 -70
  128. package/dist/node/components/render/index.js.map +0 -1
  129. package/dist/node/hooks/ModuleFromNodeConfig.cjs +0 -33
  130. package/dist/node/hooks/ModuleFromNodeConfig.cjs.map +0 -1
  131. package/dist/node/hooks/ModuleFromNodeConfig.js +0 -8
  132. package/dist/node/hooks/ModuleFromNodeConfig.js.map +0 -1
  133. package/dist/node/hooks/index.cjs +0 -189
  134. package/dist/node/hooks/index.cjs.map +0 -1
  135. package/dist/node/hooks/index.js +0 -154
  136. package/dist/node/hooks/index.js.map +0 -1
  137. package/dist/node/hooks/provided/index.cjs +0 -38
  138. package/dist/node/hooks/provided/index.cjs.map +0 -1
  139. package/dist/node/hooks/provided/index.js +0 -11
  140. package/dist/node/hooks/provided/index.js.map +0 -1
  141. package/dist/node/hooks/provided/useProvidedNode.cjs +0 -36
  142. package/dist/node/hooks/provided/useProvidedNode.cjs.map +0 -1
  143. package/dist/node/hooks/provided/useProvidedNode.js +0 -11
  144. package/dist/node/hooks/provided/useProvidedNode.js.map +0 -1
  145. package/dist/node/hooks/useModuleFilterOptions.cjs +0 -34
  146. package/dist/node/hooks/useModuleFilterOptions.cjs.map +0 -1
  147. package/dist/node/hooks/useModuleFilterOptions.js +0 -9
  148. package/dist/node/hooks/useModuleFilterOptions.js.map +0 -1
  149. package/dist/node/hooks/useModuleFromNode.cjs +0 -115
  150. package/dist/node/hooks/useModuleFromNode.cjs.map +0 -1
  151. package/dist/node/hooks/useModuleFromNode.js +0 -90
  152. package/dist/node/hooks/useModuleFromNode.js.map +0 -1
  153. package/dist/node/hooks/useModulesFromNode.cjs +0 -100
  154. package/dist/node/hooks/useModulesFromNode.cjs.map +0 -1
  155. package/dist/node/hooks/useModulesFromNode.js +0 -75
  156. package/dist/node/hooks/useModulesFromNode.js.map +0 -1
  157. package/dist/node/hooks/useNode.cjs +0 -60
  158. package/dist/node/hooks/useNode.cjs.map +0 -1
  159. package/dist/node/hooks/useNode.js +0 -35
  160. package/dist/node/hooks/useNode.js.map +0 -1
  161. package/dist/node/hooks/useNodeConfigNodeField.cjs +0 -36
  162. package/dist/node/hooks/useNodeConfigNodeField.cjs.map +0 -1
  163. package/dist/node/hooks/useNodeConfigNodeField.js +0 -11
  164. package/dist/node/hooks/useNodeConfigNodeField.js.map +0 -1
  165. package/dist/node/hooks/useNodeDescription.cjs +0 -72
  166. package/dist/node/hooks/useNodeDescription.cjs.map +0 -1
  167. package/dist/node/hooks/useNodeDescription.js +0 -47
  168. package/dist/node/hooks/useNodeDescription.js.map +0 -1
  169. package/dist/node/hooks/useNodeFromNode.cjs +0 -131
  170. package/dist/node/hooks/useNodeFromNode.cjs.map +0 -1
  171. package/dist/node/hooks/useNodeFromNode.js +0 -106
  172. package/dist/node/hooks/useNodeFromNode.js.map +0 -1
  173. package/dist/node/hooks/useNodesFromNode.cjs +0 -124
  174. package/dist/node/hooks/useNodesFromNode.cjs.map +0 -1
  175. package/dist/node/hooks/useNodesFromNode.js +0 -99
  176. package/dist/node/hooks/useNodesFromNode.js.map +0 -1
@@ -1,150 +0,0 @@
1
- // src/components/NodeDescriptionBox.tsx
2
- import { FlexCol } from "@xylabs/react-flexbox";
3
-
4
- // src/hooks/provided/useProvidedNode.tsx
5
- import { NodeContext } from "@xyo-network/react-node-context";
6
- import { useContext } from "react";
7
- var useProvidedNode = () => {
8
- const { node } = useContext(NodeContext);
9
- return [node];
10
- };
11
-
12
- // src/hooks/useNode.ts
13
- import { usePromise } from "@xylabs/react-promise";
14
- import { asNodeInstance } from "@xyo-network/node-model";
15
-
16
- // src/hooks/useNodeConfigNodeField.ts
17
- import { useMemo } from "react";
18
- var useNodeConfigNodeField = (config) => {
19
- const nodeAddress = useMemo(() => typeof config?.node === "string" ? config?.node : void 0, [config?.node]);
20
- const nodeInstance = useMemo(() => typeof config?.node === "object" ? config?.node : void 0, [config?.node]);
21
- return [nodeAddress, nodeInstance];
22
- };
23
-
24
- // src/hooks/useNode.ts
25
- var useNode = (config) => {
26
- const [nodeAddress, nodeInstance] = useNodeConfigNodeField(config);
27
- const [providedNode] = useProvidedNode();
28
- const [nodeAddressNode, error] = usePromise(async () => {
29
- if (providedNode && nodeAddress) {
30
- return asNodeInstance(await providedNode.resolve(nodeAddress), "Module is not a node");
31
- }
32
- }, [providedNode, nodeAddress]);
33
- return [nodeAddressNode ?? nodeInstance ?? providedNode ?? void 0, error];
34
- };
35
-
36
- // src/hooks/useNodeDescription.ts
37
- import { usePromise as usePromise2 } from "@xylabs/react-promise";
38
- var useNodeDescription = (config) => {
39
- const [activeNode, nodeError] = useNode(config);
40
- const [description, error] = usePromise2(async () => {
41
- return await activeNode?.describe();
42
- }, [activeNode]);
43
- return [description, nodeError ?? error];
44
- };
45
-
46
- // src/components/NodeDescriptionBox.tsx
47
- import { jsx } from "react/jsx-runtime";
48
- var NodeDescriptionBox = ({ node, ...props }) => {
49
- const [description, error] = useNodeDescription({ node });
50
- return /* @__PURE__ */ jsx(FlexCol, { ...props, children: /* @__PURE__ */ jsx("code", { color: error ? "red" : void 0, children: error ? error.message : JSON.stringify(description, null, 2) }) });
51
- };
52
-
53
- // src/components/Node.tsx
54
- import { jsx as jsx2 } from "react/jsx-runtime";
55
- var NodeBox = ({ variant, ...props }) => {
56
- switch (variant) {
57
- case "description":
58
- default:
59
- return /* @__PURE__ */ jsx2(NodeDescriptionBox, { ...props });
60
- }
61
- };
62
-
63
- // src/components/NodeDrawer.tsx
64
- import { Close as CloseIcon } from "@mui/icons-material";
65
- import { ClickAwayListener, Drawer, IconButton } from "@mui/material";
66
- import { FlexGrowCol, FlexRow } from "@xylabs/react-flexbox";
67
- import { useNodeDrawer } from "@xyo-network/react-node-provider";
68
-
69
- // src/components/render/ModuleDescriptionBox.tsx
70
- import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from "@mui/icons-material";
71
- import { styled as styled2, Typography } from "@mui/material";
72
- import { TreeView } from "@mui/x-tree-view";
73
- import { useRef } from "react";
74
-
75
- // src/components/render/RenderModule.tsx
76
- import { styled } from "@mui/material";
77
- import { TreeItem } from "@mui/x-tree-view";
78
- import { useAsyncEffect } from "@xylabs/react-async-effect";
79
- import { useState } from "react";
80
- import { jsx as jsx3, jsxs } from "react/jsx-runtime";
81
- var RenderModule = ({ module, idRef }) => {
82
- const { address, queries } = module ?? {};
83
- const [childModules, setChildModules] = useState();
84
- useAsyncEffect(
85
- // eslint-disable-next-line react-hooks/exhaustive-deps
86
- async (mounted) => {
87
- const children = (await module.resolve()).filter((childModule) => childModule.address !== address);
88
- if (mounted()) {
89
- setChildModules(children);
90
- }
91
- },
92
- [module, address]
93
- );
94
- const increment = () => {
95
- const newId = (idRef.current.idIncrementor++).toString();
96
- idRef.current.ids.push(newId);
97
- return newId;
98
- };
99
- return /* @__PURE__ */ jsxs(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
100
- queries.map((query, index) => {
101
- return /* @__PURE__ */ jsx3(TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
102
- }),
103
- childModules && childModules.length > 0 ? /* @__PURE__ */ jsx3(TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ jsx3(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
104
- ] });
105
- };
106
- var StyledAddressTreeItem = styled(TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
107
- "& .MuiTreeItem-content": {
108
- marginBottom: theme.spacing(0.25)
109
- }
110
- }));
111
-
112
- // src/components/render/ModuleDescriptionBox.tsx
113
- import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
114
- var ModuleDescriptionBox = ({ module }) => {
115
- const idRef = useRef({ idIncrementor: 0, ids: [] });
116
- return /* @__PURE__ */ jsx4(Fragment, { children: module ? /* @__PURE__ */ jsxs2(Fragment, { children: [
117
- /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node Configuration" }),
118
- /* @__PURE__ */ jsx4(
119
- StyledTreeView,
120
- {
121
- "aria-label": "file system navigator",
122
- defaultCollapseIcon: /* @__PURE__ */ jsx4(ExpandMoreIcon, {}),
123
- defaultExpandIcon: /* @__PURE__ */ jsx4(ChevronRightIcon, {}),
124
- sx: { flexGrow: 1 },
125
- children: /* @__PURE__ */ jsx4(RenderModule, { module, idRef })
126
- }
127
- )
128
- ] }) : module === null ? /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node not found" }) });
129
- };
130
- var StyledTreeView = styled2(TreeView, { name: "StyledTreeView" })(() => ({
131
- height: "auto",
132
- maxWidth: "auto"
133
- }));
134
-
135
- // src/components/NodeDrawer.tsx
136
- import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
137
- var NodeDrawer = ({ children, ...props }) => {
138
- const { open, setOpen } = useNodeDrawer();
139
- const [node] = useProvidedNode();
140
- return /* @__PURE__ */ jsx5(Drawer, { open: open ?? false, anchor: "right", ...props, children: /* @__PURE__ */ jsx5(ClickAwayListener, { onClickAway: () => setOpen?.(false), children: /* @__PURE__ */ jsxs3(FlexGrowCol, { role: "presentation", justifyContent: "start", p: 2, rowGap: 2, minWidth: "33vw", children: [
141
- /* @__PURE__ */ jsx5(FlexRow, { alignContent: "start", justifyContent: "start", width: "100%", children: /* @__PURE__ */ jsx5(IconButton, { onClick: () => setOpen?.(false), children: /* @__PURE__ */ jsx5(CloseIcon, {}) }) }),
142
- /* @__PURE__ */ jsx5(ModuleDescriptionBox, { module: node }),
143
- children
144
- ] }) }) });
145
- };
146
- export {
147
- NodeBox,
148
- NodeDrawer
149
- };
150
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/NodeDescriptionBox.tsx","../../../src/hooks/provided/useProvidedNode.tsx","../../../src/hooks/useNode.ts","../../../src/hooks/useNodeConfigNodeField.ts","../../../src/hooks/useNodeDescription.ts","../../../src/components/Node.tsx","../../../src/components/NodeDrawer.tsx","../../../src/components/render/ModuleDescriptionBox.tsx","../../../src/components/render/RenderModule.tsx"],"sourcesContent":["import { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nimport { useNodeDescription } from '../hooks'\n\nexport interface NodeDescriptionBoxProps extends FlexBoxProps {\n node?: string | NodeInstance\n}\n\nexport const NodeDescriptionBox: React.FC<NodeDescriptionBoxProps> = ({ node, ...props }) => {\n const [description, error] = useNodeDescription({ node })\n\n return (\n <FlexCol {...props}>\n <code color={error ? 'red' : undefined}>{error ? error.message : JSON.stringify(description, null, 2)}</code>\n </FlexCol>\n )\n}\n","import { NodeInstance } from '@xyo-network/node-model'\nimport { NodeContext } from '@xyo-network/react-node-context'\nimport { useContext } from 'react'\n\nexport const useProvidedNode = (): [NodeInstance | null | undefined] => {\n const { node } = useContext(NodeContext)\n return [node]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { asNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useProvidedNode } from './provided'\nimport { useNodeConfigNodeField } from './useNodeConfigNodeField'\n\nexport const useNode = (config?: ModuleFromNodeConfig | undefined): [NodeInstance | undefined, Error | undefined] => {\n const [nodeAddress, nodeInstance] = useNodeConfigNodeField(config)\n const [providedNode] = useProvidedNode()\n const [nodeAddressNode, error] = usePromise(async () => {\n if (providedNode && nodeAddress) {\n return asNodeInstance(await providedNode.resolve(nodeAddress), 'Module is not a node')\n }\n }, [providedNode, nodeAddress])\n return [nodeAddressNode ?? nodeInstance ?? providedNode ?? undefined, error]\n}\n","import { NodeInstance } from '@xyo-network/node-model'\nimport { useMemo } from 'react'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n\nexport const useNodeConfigNodeField = (config?: ModuleFromNodeConfig | undefined): [string | undefined, NodeInstance | undefined] => {\n const nodeAddress = useMemo(() => (typeof config?.node === 'string' ? config?.node : undefined), [config?.node])\n const nodeInstance = useMemo(() => (typeof config?.node === 'object' ? config?.node : undefined), [config?.node])\n return [nodeAddress, nodeInstance]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleDescription } from '@xyo-network/module-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useNode } from './useNode'\n\nexport const useNodeDescription = (config?: ModuleFromNodeConfig | undefined): [ModuleDescription | undefined, Error | undefined] => {\n const [activeNode, nodeError] = useNode(config)\n const [description, error] = usePromise(async () => {\n return await activeNode?.describe()\n }, [activeNode])\n return [description, nodeError ?? error]\n}\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nimport { NodeDescriptionBox } from './NodeDescriptionBox'\n\nexport interface NodeBoxProps extends FlexBoxProps {\n node?: string | NodeInstance\n variant?: 'description'\n}\n\nexport const NodeBox: React.FC<NodeBoxProps> = ({ variant, ...props }) => {\n switch (variant) {\n case 'description':\n default:\n return <NodeDescriptionBox {...props} />\n }\n}\n","import { Close as CloseIcon } from '@mui/icons-material'\nimport { ClickAwayListener, Drawer, DrawerProps, IconButton } from '@mui/material'\nimport { FlexGrowCol, FlexRow } from '@xylabs/react-flexbox'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport { useNodeDrawer } from '@xyo-network/react-node-provider'\n\nimport { useProvidedNode } from '../hooks'\nimport { ModuleDescriptionBox } from './render'\n\nexport interface NodeDrawerProps extends WithChildren, Omit<DrawerProps, 'open'> {}\n\nexport const NodeDrawer: React.FC<NodeDrawerProps> = ({ children, ...props }) => {\n const { open, setOpen } = useNodeDrawer()\n const [node] = useProvidedNode()\n\n return (\n <Drawer open={open ?? false} anchor=\"right\" {...props}>\n <ClickAwayListener onClickAway={() => setOpen?.(false)}>\n <FlexGrowCol role=\"presentation\" justifyContent=\"start\" p={2} rowGap={2} minWidth=\"33vw\">\n <FlexRow alignContent=\"start\" justifyContent=\"start\" width=\"100%\">\n <IconButton onClick={() => setOpen?.(false)}>\n <CloseIcon />\n </IconButton>\n </FlexRow>\n <ModuleDescriptionBox module={node} />\n {children}\n </FlexGrowCol>\n </ClickAwayListener>\n </Drawer>\n )\n}\n","import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from '@mui/icons-material'\nimport { styled, Typography } from '@mui/material'\nimport { TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n module?: ModuleInstance | null\n}\nexport const ModuleDescriptionBox: React.FC<ModuleDescriptionProps> = ({ module }) => {\n const idRef = useRef<{ idIncrementor: number; ids: string[] }>({ idIncrementor: 0, ids: [] })\n\n return (\n <>\n {module ? (\n <>\n <Typography variant=\"h4\">Node Configuration</Typography>\n <StyledTreeView\n aria-label=\"file system navigator\"\n defaultCollapseIcon={<ExpandMoreIcon />}\n defaultExpandIcon={<ChevronRightIcon />}\n sx={{ flexGrow: 1 }}\n >\n <RenderModule module={module} idRef={idRef} />\n </StyledTreeView>\n </>\n ) : module === null ? (\n <Typography variant=\"h4\">Node loading...</Typography>\n ) : (\n <Typography variant=\"h4\">Node not found</Typography>\n )}\n </>\n )\n}\n\nconst StyledTreeView = styled(TreeView, { name: 'StyledTreeView' })(() => ({\n height: 'auto',\n maxWidth: 'auto',\n}))\n","import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":"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","names":["usePromise","usePromise","jsx","styled","jsx","jsx","jsxs","styled","jsx","jsxs"]}
@@ -1,90 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/render/ModuleDescriptionBox.tsx
21
- var ModuleDescriptionBox_exports = {};
22
- __export(ModuleDescriptionBox_exports, {
23
- ModuleDescriptionBox: () => ModuleDescriptionBox
24
- });
25
- module.exports = __toCommonJS(ModuleDescriptionBox_exports);
26
- var import_icons_material = require("@mui/icons-material");
27
- var import_material2 = require("@mui/material");
28
- var import_x_tree_view2 = require("@mui/x-tree-view");
29
- var import_react2 = require("react");
30
-
31
- // src/components/render/RenderModule.tsx
32
- var import_material = require("@mui/material");
33
- var import_x_tree_view = require("@mui/x-tree-view");
34
- var import_react_async_effect = require("@xylabs/react-async-effect");
35
- var import_react = require("react");
36
- var import_jsx_runtime = require("react/jsx-runtime");
37
- var RenderModule = ({ module: module2, idRef }) => {
38
- const { address, queries } = module2 ?? {};
39
- const [childModules, setChildModules] = (0, import_react.useState)();
40
- (0, import_react_async_effect.useAsyncEffect)(
41
- // eslint-disable-next-line react-hooks/exhaustive-deps
42
- async (mounted) => {
43
- const children = (await module2.resolve()).filter((childModule) => childModule.address !== address);
44
- if (mounted()) {
45
- setChildModules(children);
46
- }
47
- },
48
- [module2, address]
49
- );
50
- const increment = () => {
51
- const newId = (idRef.current.idIncrementor++).toString();
52
- idRef.current.ids.push(newId);
53
- return newId;
54
- };
55
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
56
- queries.map((query, index) => {
57
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
58
- }),
59
- childModules && childModules.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
60
- ] });
61
- };
62
- var StyledAddressTreeItem = (0, import_material.styled)(import_x_tree_view.TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
63
- "& .MuiTreeItem-content": {
64
- marginBottom: theme.spacing(0.25)
65
- }
66
- }));
67
-
68
- // src/components/render/ModuleDescriptionBox.tsx
69
- var import_jsx_runtime2 = require("react/jsx-runtime");
70
- var ModuleDescriptionBox = ({ module: module2 }) => {
71
- const idRef = (0, import_react2.useRef)({ idIncrementor: 0, ids: [] });
72
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: module2 ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
73
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node Configuration" }),
74
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
75
- StyledTreeView,
76
- {
77
- "aria-label": "file system navigator",
78
- defaultCollapseIcon: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ExpandMore, {}),
79
- defaultExpandIcon: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ChevronRight, {}),
80
- sx: { flexGrow: 1 },
81
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(RenderModule, { module: module2, idRef })
82
- }
83
- )
84
- ] }) : module2 === null ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node not found" }) });
85
- };
86
- var StyledTreeView = (0, import_material2.styled)(import_x_tree_view2.TreeView, { name: "StyledTreeView" })(() => ({
87
- height: "auto",
88
- maxWidth: "auto"
89
- }));
90
- //# sourceMappingURL=ModuleDescriptionBox.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/render/ModuleDescriptionBox.tsx","../../../../src/components/render/RenderModule.tsx"],"sourcesContent":["import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from '@mui/icons-material'\nimport { styled, Typography } from '@mui/material'\nimport { TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n module?: ModuleInstance | null\n}\nexport const ModuleDescriptionBox: React.FC<ModuleDescriptionProps> = ({ module }) => {\n const idRef = useRef<{ idIncrementor: number; ids: string[] }>({ idIncrementor: 0, ids: [] })\n\n return (\n <>\n {module ? (\n <>\n <Typography variant=\"h4\">Node Configuration</Typography>\n <StyledTreeView\n aria-label=\"file system navigator\"\n defaultCollapseIcon={<ExpandMoreIcon />}\n defaultExpandIcon={<ChevronRightIcon />}\n sx={{ flexGrow: 1 }}\n >\n <RenderModule module={module} idRef={idRef} />\n </StyledTreeView>\n </>\n ) : module === null ? (\n <Typography variant=\"h4\">Node loading...</Typography>\n ) : (\n <Typography variant=\"h4\">Node not found</Typography>\n )}\n </>\n )\n}\n\nconst StyledTreeView = styled(TreeView, { name: 'StyledTreeView' })(() => ({\n height: 'auto',\n maxWidth: 'auto',\n}))\n","import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAA+E;AAC/E,IAAAA,mBAAmC;AACnC,IAAAC,sBAAyB;AAGzB,IAAAC,gBAAuB;;;ACLvB,sBAAuB;AACvB,yBAAyB;AACzB,gCAA+B;AAE/B,mBAA2C;AAgCvC;AAtBG,IAAM,eAA4C,CAAC,EAAE,QAAAC,SAAQ,MAAM,MAAM;AAC9E,QAAM,EAAE,SAAS,QAAQ,IAAIA,WAAU,CAAC;AACxC,QAAM,CAAC,cAAc,eAAe,QAAI,uBAA2B;AAEnE;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,YAAM,YAAY,MAAMA,QAAO,QAAQ,GAAG,OAAO,CAAC,gBAAgB,YAAY,YAAY,OAAO;AACjG,UAAI,QAAQ,GAAG;AACb,wBAAgB,QAAQ;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAACA,SAAQ,OAAO;AAAA,EAClB;AAEA,QAAM,YAAY,MAAM;AACtB,UAAM,SAAS,MAAM,QAAQ,iBAAiB,SAAS;AACvD,UAAM,QAAQ,IAAI,KAAK,KAAK;AAC5B,WAAO;AAAA,EACT;AAEA,SACE,6CAAC,yBAAsB,QAAQ,UAAU,GAAG,OAAO,YAAY,OAAO,IACnE;AAAA,YAAQ,IAAI,CAAC,OAAO,UAAU;AAC7B,aAAO,4CAAC,+BAAqB,QAAQ,UAAU,GAAG,OAAO,WAAW,KAAK,IAAI,IAAI,EAAE,IAAI,UAAU,QAAQ,SAAS,IAAI,MAAM,IAAI,KAA1G,KAA6G;AAAA,IACrI,CAAC;AAAA,IACA,gBAAgB,aAAa,SAAS,IACrC,4CAAC,+BAAS,QAAQ,UAAU,GAAG,OAAO,YAAY,IAAI,EAAE,IAAI,IAAI,GAC7D,uBAAa,IAAI,CAAC,gBACjB,4CAAC,gBAAuC,QAAQ,aAAa,SAA1C,YAAY,OAA4C,CAC5E,GACH,IACE;AAAA,KACN;AAEJ;AAEA,IAAM,4BAAwB,wBAAO,6BAAU,EAAE,MAAM,wBAAwB,CAAC,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChG,0BAA0B;AAAA,IACxB,cAAc,MAAM,QAAQ,IAAI;AAAA,EAClC;AACF,EAAE;;;ADrCM,IAAAC,sBAAA;AAND,IAAM,uBAAyD,CAAC,EAAE,QAAAC,QAAO,MAAM;AACpF,QAAM,YAAQ,sBAAiD,EAAE,eAAe,GAAG,KAAK,CAAC,EAAE,CAAC;AAE5F,SACE,6EACG,UAAAA,UACC,8EACE;AAAA,iDAAC,+BAAW,SAAQ,MAAK,gCAAkB;AAAA,IAC3C;AAAA,MAAC;AAAA;AAAA,QACC,cAAW;AAAA,QACX,qBAAqB,6CAAC,sBAAAC,YAAA,EAAe;AAAA,QACrC,mBAAmB,6CAAC,sBAAAC,cAAA,EAAiB;AAAA,QACrC,IAAI,EAAE,UAAU,EAAE;AAAA,QAElB,uDAAC,gBAAa,QAAQF,SAAQ,OAAc;AAAA;AAAA,IAC9C;AAAA,KACF,IACEA,YAAW,OACb,6CAAC,+BAAW,SAAQ,MAAK,6BAAe,IAExC,6CAAC,+BAAW,SAAQ,MAAK,4BAAc,GAE3C;AAEJ;AAEA,IAAM,qBAAiB,yBAAO,8BAAU,EAAE,MAAM,iBAAiB,CAAC,EAAE,OAAO;AAAA,EACzE,QAAQ;AAAA,EACR,UAAU;AACZ,EAAE;","names":["import_material","import_x_tree_view","import_react","module","import_jsx_runtime","module","ExpandMoreIcon","ChevronRightIcon"]}
@@ -1,69 +0,0 @@
1
- // src/components/render/ModuleDescriptionBox.tsx
2
- import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from "@mui/icons-material";
3
- import { styled as styled2, Typography } from "@mui/material";
4
- import { TreeView } from "@mui/x-tree-view";
5
- import { useRef } from "react";
6
-
7
- // src/components/render/RenderModule.tsx
8
- import { styled } from "@mui/material";
9
- import { TreeItem } from "@mui/x-tree-view";
10
- import { useAsyncEffect } from "@xylabs/react-async-effect";
11
- import { useState } from "react";
12
- import { jsx, jsxs } from "react/jsx-runtime";
13
- var RenderModule = ({ module, idRef }) => {
14
- const { address, queries } = module ?? {};
15
- const [childModules, setChildModules] = useState();
16
- useAsyncEffect(
17
- // eslint-disable-next-line react-hooks/exhaustive-deps
18
- async (mounted) => {
19
- const children = (await module.resolve()).filter((childModule) => childModule.address !== address);
20
- if (mounted()) {
21
- setChildModules(children);
22
- }
23
- },
24
- [module, address]
25
- );
26
- const increment = () => {
27
- const newId = (idRef.current.idIncrementor++).toString();
28
- idRef.current.ids.push(newId);
29
- return newId;
30
- };
31
- return /* @__PURE__ */ jsxs(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
32
- queries.map((query, index) => {
33
- return /* @__PURE__ */ jsx(TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
34
- }),
35
- childModules && childModules.length > 0 ? /* @__PURE__ */ jsx(TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ jsx(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
36
- ] });
37
- };
38
- var StyledAddressTreeItem = styled(TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
39
- "& .MuiTreeItem-content": {
40
- marginBottom: theme.spacing(0.25)
41
- }
42
- }));
43
-
44
- // src/components/render/ModuleDescriptionBox.tsx
45
- import { Fragment, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
46
- var ModuleDescriptionBox = ({ module }) => {
47
- const idRef = useRef({ idIncrementor: 0, ids: [] });
48
- return /* @__PURE__ */ jsx2(Fragment, { children: module ? /* @__PURE__ */ jsxs2(Fragment, { children: [
49
- /* @__PURE__ */ jsx2(Typography, { variant: "h4", children: "Node Configuration" }),
50
- /* @__PURE__ */ jsx2(
51
- StyledTreeView,
52
- {
53
- "aria-label": "file system navigator",
54
- defaultCollapseIcon: /* @__PURE__ */ jsx2(ExpandMoreIcon, {}),
55
- defaultExpandIcon: /* @__PURE__ */ jsx2(ChevronRightIcon, {}),
56
- sx: { flexGrow: 1 },
57
- children: /* @__PURE__ */ jsx2(RenderModule, { module, idRef })
58
- }
59
- )
60
- ] }) : module === null ? /* @__PURE__ */ jsx2(Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ jsx2(Typography, { variant: "h4", children: "Node not found" }) });
61
- };
62
- var StyledTreeView = styled2(TreeView, { name: "StyledTreeView" })(() => ({
63
- height: "auto",
64
- maxWidth: "auto"
65
- }));
66
- export {
67
- ModuleDescriptionBox
68
- };
69
- //# sourceMappingURL=ModuleDescriptionBox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/render/ModuleDescriptionBox.tsx","../../../../src/components/render/RenderModule.tsx"],"sourcesContent":["import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from '@mui/icons-material'\nimport { styled, Typography } from '@mui/material'\nimport { TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n module?: ModuleInstance | null\n}\nexport const ModuleDescriptionBox: React.FC<ModuleDescriptionProps> = ({ module }) => {\n const idRef = useRef<{ idIncrementor: number; ids: string[] }>({ idIncrementor: 0, ids: [] })\n\n return (\n <>\n {module ? (\n <>\n <Typography variant=\"h4\">Node Configuration</Typography>\n <StyledTreeView\n aria-label=\"file system navigator\"\n defaultCollapseIcon={<ExpandMoreIcon />}\n defaultExpandIcon={<ChevronRightIcon />}\n sx={{ flexGrow: 1 }}\n >\n <RenderModule module={module} idRef={idRef} />\n </StyledTreeView>\n </>\n ) : module === null ? (\n <Typography variant=\"h4\">Node loading...</Typography>\n ) : (\n <Typography variant=\"h4\">Node not found</Typography>\n )}\n </>\n )\n}\n\nconst StyledTreeView = styled(TreeView, { name: 'StyledTreeView' })(() => ({\n height: 'auto',\n maxWidth: 'auto',\n}))\n","import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":";AAAA,SAAS,gBAAgB,kBAAkB,cAAc,sBAAsB;AAC/E,SAAS,UAAAA,SAAQ,kBAAkB;AACnC,SAAS,gBAAgB;AAGzB,SAAS,cAAc;;;ACLvB,SAAS,cAAc;AACvB,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAE/B,SAA2B,gBAAgB;AAgCvC,SAEW,KAFX;AAtBG,IAAM,eAA4C,CAAC,EAAE,QAAQ,MAAM,MAAM;AAC9E,QAAM,EAAE,SAAS,QAAQ,IAAI,UAAU,CAAC;AACxC,QAAM,CAAC,cAAc,eAAe,IAAI,SAA2B;AAEnE;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,YAAM,YAAY,MAAM,OAAO,QAAQ,GAAG,OAAO,CAAC,gBAAgB,YAAY,YAAY,OAAO;AACjG,UAAI,QAAQ,GAAG;AACb,wBAAgB,QAAQ;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,OAAO;AAAA,EAClB;AAEA,QAAM,YAAY,MAAM;AACtB,UAAM,SAAS,MAAM,QAAQ,iBAAiB,SAAS;AACvD,UAAM,QAAQ,IAAI,KAAK,KAAK;AAC5B,WAAO;AAAA,EACT;AAEA,SACE,qBAAC,yBAAsB,QAAQ,UAAU,GAAG,OAAO,YAAY,OAAO,IACnE;AAAA,YAAQ,IAAI,CAAC,OAAO,UAAU;AAC7B,aAAO,oBAAC,YAAqB,QAAQ,UAAU,GAAG,OAAO,WAAW,KAAK,IAAI,IAAI,EAAE,IAAI,UAAU,QAAQ,SAAS,IAAI,MAAM,IAAI,KAA1G,KAA6G;AAAA,IACrI,CAAC;AAAA,IACA,gBAAgB,aAAa,SAAS,IACrC,oBAAC,YAAS,QAAQ,UAAU,GAAG,OAAO,YAAY,IAAI,EAAE,IAAI,IAAI,GAC7D,uBAAa,IAAI,CAAC,gBACjB,oBAAC,gBAAuC,QAAQ,aAAa,SAA1C,YAAY,OAA4C,CAC5E,GACH,IACE;AAAA,KACN;AAEJ;AAEA,IAAM,wBAAwB,OAAO,UAAU,EAAE,MAAM,wBAAwB,CAAC,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChG,0BAA0B;AAAA,IACxB,cAAc,MAAM,QAAQ,IAAI;AAAA,EAClC;AACF,EAAE;;;ADrCM,mBACE,OAAAC,MADF,QAAAC,aAAA;AAND,IAAM,uBAAyD,CAAC,EAAE,OAAO,MAAM;AACpF,QAAM,QAAQ,OAAiD,EAAE,eAAe,GAAG,KAAK,CAAC,EAAE,CAAC;AAE5F,SACE,gBAAAD,KAAA,YACG,mBACC,gBAAAC,MAAA,YACE;AAAA,oBAAAD,KAAC,cAAW,SAAQ,MAAK,gCAAkB;AAAA,IAC3C,gBAAAA;AAAA,MAAC;AAAA;AAAA,QACC,cAAW;AAAA,QACX,qBAAqB,gBAAAA,KAAC,kBAAe;AAAA,QACrC,mBAAmB,gBAAAA,KAAC,oBAAiB;AAAA,QACrC,IAAI,EAAE,UAAU,EAAE;AAAA,QAElB,0BAAAA,KAAC,gBAAa,QAAgB,OAAc;AAAA;AAAA,IAC9C;AAAA,KACF,IACE,WAAW,OACb,gBAAAA,KAAC,cAAW,SAAQ,MAAK,6BAAe,IAExC,gBAAAA,KAAC,cAAW,SAAQ,MAAK,4BAAc,GAE3C;AAEJ;AAEA,IAAM,iBAAiBE,QAAO,UAAU,EAAE,MAAM,iBAAiB,CAAC,EAAE,OAAO;AAAA,EACzE,QAAQ;AAAA,EACR,UAAU;AACZ,EAAE;","names":["styled","jsx","jsxs","styled"]}
@@ -1,61 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/render/RenderModule.tsx
21
- var RenderModule_exports = {};
22
- __export(RenderModule_exports, {
23
- RenderModule: () => RenderModule
24
- });
25
- module.exports = __toCommonJS(RenderModule_exports);
26
- var import_material = require("@mui/material");
27
- var import_x_tree_view = require("@mui/x-tree-view");
28
- var import_react_async_effect = require("@xylabs/react-async-effect");
29
- var import_react = require("react");
30
- var import_jsx_runtime = require("react/jsx-runtime");
31
- var RenderModule = ({ module: module2, idRef }) => {
32
- const { address, queries } = module2 ?? {};
33
- const [childModules, setChildModules] = (0, import_react.useState)();
34
- (0, import_react_async_effect.useAsyncEffect)(
35
- // eslint-disable-next-line react-hooks/exhaustive-deps
36
- async (mounted) => {
37
- const children = (await module2.resolve()).filter((childModule) => childModule.address !== address);
38
- if (mounted()) {
39
- setChildModules(children);
40
- }
41
- },
42
- [module2, address]
43
- );
44
- const increment = () => {
45
- const newId = (idRef.current.idIncrementor++).toString();
46
- idRef.current.ids.push(newId);
47
- return newId;
48
- };
49
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
50
- queries.map((query, index) => {
51
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
52
- }),
53
- childModules && childModules.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
54
- ] });
55
- };
56
- var StyledAddressTreeItem = (0, import_material.styled)(import_x_tree_view.TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
57
- "& .MuiTreeItem-content": {
58
- marginBottom: theme.spacing(0.25)
59
- }
60
- }));
61
- //# sourceMappingURL=RenderModule.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/render/RenderModule.tsx"],"sourcesContent":["import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAuB;AACvB,yBAAyB;AACzB,gCAA+B;AAE/B,mBAA2C;AAgCvC;AAtBG,IAAM,eAA4C,CAAC,EAAE,QAAAA,SAAQ,MAAM,MAAM;AAC9E,QAAM,EAAE,SAAS,QAAQ,IAAIA,WAAU,CAAC;AACxC,QAAM,CAAC,cAAc,eAAe,QAAI,uBAA2B;AAEnE;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,YAAM,YAAY,MAAMA,QAAO,QAAQ,GAAG,OAAO,CAAC,gBAAgB,YAAY,YAAY,OAAO;AACjG,UAAI,QAAQ,GAAG;AACb,wBAAgB,QAAQ;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAACA,SAAQ,OAAO;AAAA,EAClB;AAEA,QAAM,YAAY,MAAM;AACtB,UAAM,SAAS,MAAM,QAAQ,iBAAiB,SAAS;AACvD,UAAM,QAAQ,IAAI,KAAK,KAAK;AAC5B,WAAO;AAAA,EACT;AAEA,SACE,6CAAC,yBAAsB,QAAQ,UAAU,GAAG,OAAO,YAAY,OAAO,IACnE;AAAA,YAAQ,IAAI,CAAC,OAAO,UAAU;AAC7B,aAAO,4CAAC,+BAAqB,QAAQ,UAAU,GAAG,OAAO,WAAW,KAAK,IAAI,IAAI,EAAE,IAAI,UAAU,QAAQ,SAAS,IAAI,MAAM,IAAI,KAA1G,KAA6G;AAAA,IACrI,CAAC;AAAA,IACA,gBAAgB,aAAa,SAAS,IACrC,4CAAC,+BAAS,QAAQ,UAAU,GAAG,OAAO,YAAY,IAAI,EAAE,IAAI,IAAI,GAC7D,uBAAa,IAAI,CAAC,gBACjB,4CAAC,gBAAuC,QAAQ,aAAa,SAA1C,YAAY,OAA4C,CAC5E,GACH,IACE;AAAA,KACN;AAEJ;AAEA,IAAM,4BAAwB,wBAAO,6BAAU,EAAE,MAAM,wBAAwB,CAAC,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChG,0BAA0B;AAAA,IACxB,cAAc,MAAM,QAAQ,IAAI;AAAA,EAClC;AACF,EAAE;","names":["module"]}
@@ -1,40 +0,0 @@
1
- // src/components/render/RenderModule.tsx
2
- import { styled } from "@mui/material";
3
- import { TreeItem } from "@mui/x-tree-view";
4
- import { useAsyncEffect } from "@xylabs/react-async-effect";
5
- import { useState } from "react";
6
- import { jsx, jsxs } from "react/jsx-runtime";
7
- var RenderModule = ({ module, idRef }) => {
8
- const { address, queries } = module ?? {};
9
- const [childModules, setChildModules] = useState();
10
- useAsyncEffect(
11
- // eslint-disable-next-line react-hooks/exhaustive-deps
12
- async (mounted) => {
13
- const children = (await module.resolve()).filter((childModule) => childModule.address !== address);
14
- if (mounted()) {
15
- setChildModules(children);
16
- }
17
- },
18
- [module, address]
19
- );
20
- const increment = () => {
21
- const newId = (idRef.current.idIncrementor++).toString();
22
- idRef.current.ids.push(newId);
23
- return newId;
24
- };
25
- return /* @__PURE__ */ jsxs(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
26
- queries.map((query, index) => {
27
- return /* @__PURE__ */ jsx(TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
28
- }),
29
- childModules && childModules.length > 0 ? /* @__PURE__ */ jsx(TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ jsx(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
30
- ] });
31
- };
32
- var StyledAddressTreeItem = styled(TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
33
- "& .MuiTreeItem-content": {
34
- marginBottom: theme.spacing(0.25)
35
- }
36
- }));
37
- export {
38
- RenderModule
39
- };
40
- //# sourceMappingURL=RenderModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/render/RenderModule.tsx"],"sourcesContent":["import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":";AAAA,SAAS,cAAc;AACvB,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAE/B,SAA2B,gBAAgB;AAgCvC,SAEW,KAFX;AAtBG,IAAM,eAA4C,CAAC,EAAE,QAAQ,MAAM,MAAM;AAC9E,QAAM,EAAE,SAAS,QAAQ,IAAI,UAAU,CAAC;AACxC,QAAM,CAAC,cAAc,eAAe,IAAI,SAA2B;AAEnE;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,YAAM,YAAY,MAAM,OAAO,QAAQ,GAAG,OAAO,CAAC,gBAAgB,YAAY,YAAY,OAAO;AACjG,UAAI,QAAQ,GAAG;AACb,wBAAgB,QAAQ;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,OAAO;AAAA,EAClB;AAEA,QAAM,YAAY,MAAM;AACtB,UAAM,SAAS,MAAM,QAAQ,iBAAiB,SAAS;AACvD,UAAM,QAAQ,IAAI,KAAK,KAAK;AAC5B,WAAO;AAAA,EACT;AAEA,SACE,qBAAC,yBAAsB,QAAQ,UAAU,GAAG,OAAO,YAAY,OAAO,IACnE;AAAA,YAAQ,IAAI,CAAC,OAAO,UAAU;AAC7B,aAAO,oBAAC,YAAqB,QAAQ,UAAU,GAAG,OAAO,WAAW,KAAK,IAAI,IAAI,EAAE,IAAI,UAAU,QAAQ,SAAS,IAAI,MAAM,IAAI,KAA1G,KAA6G;AAAA,IACrI,CAAC;AAAA,IACA,gBAAgB,aAAa,SAAS,IACrC,oBAAC,YAAS,QAAQ,UAAU,GAAG,OAAO,YAAY,IAAI,EAAE,IAAI,IAAI,GAC7D,uBAAa,IAAI,CAAC,gBACjB,oBAAC,gBAAuC,QAAQ,aAAa,SAA1C,YAAY,OAA4C,CAC5E,GACH,IACE;AAAA,KACN;AAEJ;AAEA,IAAM,wBAAwB,OAAO,UAAU,EAAE,MAAM,wBAAwB,CAAC,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChG,0BAA0B;AAAA,IACxB,cAAc,MAAM,QAAQ,IAAI;AAAA,EAClC;AACF,EAAE;","names":[]}
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/render/index.ts
21
- var render_exports = {};
22
- __export(render_exports, {
23
- ModuleDescriptionBox: () => ModuleDescriptionBox,
24
- RenderModule: () => RenderModule
25
- });
26
- module.exports = __toCommonJS(render_exports);
27
-
28
- // src/components/render/ModuleDescriptionBox.tsx
29
- var import_icons_material = require("@mui/icons-material");
30
- var import_material2 = require("@mui/material");
31
- var import_x_tree_view2 = require("@mui/x-tree-view");
32
- var import_react2 = require("react");
33
-
34
- // src/components/render/RenderModule.tsx
35
- var import_material = require("@mui/material");
36
- var import_x_tree_view = require("@mui/x-tree-view");
37
- var import_react_async_effect = require("@xylabs/react-async-effect");
38
- var import_react = require("react");
39
- var import_jsx_runtime = require("react/jsx-runtime");
40
- var RenderModule = ({ module: module2, idRef }) => {
41
- const { address, queries } = module2 ?? {};
42
- const [childModules, setChildModules] = (0, import_react.useState)();
43
- (0, import_react_async_effect.useAsyncEffect)(
44
- // eslint-disable-next-line react-hooks/exhaustive-deps
45
- async (mounted) => {
46
- const children = (await module2.resolve()).filter((childModule) => childModule.address !== address);
47
- if (mounted()) {
48
- setChildModules(children);
49
- }
50
- },
51
- [module2, address]
52
- );
53
- const increment = () => {
54
- const newId = (idRef.current.idIncrementor++).toString();
55
- idRef.current.ids.push(newId);
56
- return newId;
57
- };
58
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
59
- queries.map((query, index) => {
60
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: `query : ${query}`, sx: { mb: index === queries.length - 1 ? 1.5 : 0.5 } }, query);
61
- }),
62
- childModules && childModules.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_x_tree_view.TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModule) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RenderModule, { module: childModule, idRef }, childModule.address)) }) : null
63
- ] });
64
- };
65
- var StyledAddressTreeItem = (0, import_material.styled)(import_x_tree_view.TreeItem, { name: "StyledAddressTreeItem" })(({ theme }) => ({
66
- "& .MuiTreeItem-content": {
67
- marginBottom: theme.spacing(0.25)
68
- }
69
- }));
70
-
71
- // src/components/render/ModuleDescriptionBox.tsx
72
- var import_jsx_runtime2 = require("react/jsx-runtime");
73
- var ModuleDescriptionBox = ({ module: module2 }) => {
74
- const idRef = (0, import_react2.useRef)({ idIncrementor: 0, ids: [] });
75
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: module2 ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
76
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node Configuration" }),
77
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
78
- StyledTreeView,
79
- {
80
- "aria-label": "file system navigator",
81
- defaultCollapseIcon: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ExpandMore, {}),
82
- defaultExpandIcon: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ChevronRight, {}),
83
- sx: { flexGrow: 1 },
84
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(RenderModule, { module: module2, idRef })
85
- }
86
- )
87
- ] }) : module2 === null ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "h4", children: "Node not found" }) });
88
- };
89
- var StyledTreeView = (0, import_material2.styled)(import_x_tree_view2.TreeView, { name: "StyledTreeView" })(() => ({
90
- height: "auto",
91
- maxWidth: "auto"
92
- }));
93
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/render/index.ts","../../../../src/components/render/ModuleDescriptionBox.tsx","../../../../src/components/render/RenderModule.tsx"],"sourcesContent":["export * from './ModuleDescriptionBox'\nexport * from './RenderModule'\n","import { ChevronRight as ChevronRightIcon, ExpandMore as ExpandMoreIcon } from '@mui/icons-material'\nimport { styled, Typography } from '@mui/material'\nimport { TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n module?: ModuleInstance | null\n}\nexport const ModuleDescriptionBox: React.FC<ModuleDescriptionProps> = ({ module }) => {\n const idRef = useRef<{ idIncrementor: number; ids: string[] }>({ idIncrementor: 0, ids: [] })\n\n return (\n <>\n {module ? (\n <>\n <Typography variant=\"h4\">Node Configuration</Typography>\n <StyledTreeView\n aria-label=\"file system navigator\"\n defaultCollapseIcon={<ExpandMoreIcon />}\n defaultExpandIcon={<ChevronRightIcon />}\n sx={{ flexGrow: 1 }}\n >\n <RenderModule module={module} idRef={idRef} />\n </StyledTreeView>\n </>\n ) : module === null ? (\n <Typography variant=\"h4\">Node loading...</Typography>\n ) : (\n <Typography variant=\"h4\">Node not found</Typography>\n )}\n </>\n )\n}\n\nconst StyledTreeView = styled(TreeView, { name: 'StyledTreeView' })(() => ({\n height: 'auto',\n maxWidth: 'auto',\n}))\n","import { styled } from '@mui/material'\nimport { TreeItem } from '@mui/x-tree-view'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: ModuleInstance\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const { address, queries } = module ?? {}\n const [childModules, setChildModules] = useState<ModuleInstance[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const children = (await module.resolve()).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children)\n }\n },\n [module, address],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n return (\n <StyledAddressTreeItem nodeId={increment()} label={`address: ${address}`}>\n {queries.map((query, index) => {\n return <TreeItem key={query} nodeId={increment()} label={`query : ${query}`} sx={{ mb: index === queries.length - 1 ? 1.5 : 0.5 }} />\n })}\n {childModules && childModules.length > 0 ? (\n <TreeItem nodeId={increment()} label={'children'} sx={{ mb: 0.5 }}>\n {childModules.map((childModule) => (\n <RenderModule key={childModule.address} module={childModule} idRef={idRef} />\n ))}\n </TreeItem>\n ) : null}\n </StyledAddressTreeItem>\n )\n}\n\nconst StyledAddressTreeItem = styled(TreeItem, { name: 'StyledAddressTreeItem' })(({ theme }) => ({\n '& .MuiTreeItem-content': {\n marginBottom: theme.spacing(0.25),\n },\n}))\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,4BAA+E;AAC/E,IAAAA,mBAAmC;AACnC,IAAAC,sBAAyB;AAGzB,IAAAC,gBAAuB;;;ACLvB,sBAAuB;AACvB,yBAAyB;AACzB,gCAA+B;AAE/B,mBAA2C;AAgCvC;AAtBG,IAAM,eAA4C,CAAC,EAAE,QAAAC,SAAQ,MAAM,MAAM;AAC9E,QAAM,EAAE,SAAS,QAAQ,IAAIA,WAAU,CAAC;AACxC,QAAM,CAAC,cAAc,eAAe,QAAI,uBAA2B;AAEnE;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,YAAM,YAAY,MAAMA,QAAO,QAAQ,GAAG,OAAO,CAAC,gBAAgB,YAAY,YAAY,OAAO;AACjG,UAAI,QAAQ,GAAG;AACb,wBAAgB,QAAQ;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAACA,SAAQ,OAAO;AAAA,EAClB;AAEA,QAAM,YAAY,MAAM;AACtB,UAAM,SAAS,MAAM,QAAQ,iBAAiB,SAAS;AACvD,UAAM,QAAQ,IAAI,KAAK,KAAK;AAC5B,WAAO;AAAA,EACT;AAEA,SACE,6CAAC,yBAAsB,QAAQ,UAAU,GAAG,OAAO,YAAY,OAAO,IACnE;AAAA,YAAQ,IAAI,CAAC,OAAO,UAAU;AAC7B,aAAO,4CAAC,+BAAqB,QAAQ,UAAU,GAAG,OAAO,WAAW,KAAK,IAAI,IAAI,EAAE,IAAI,UAAU,QAAQ,SAAS,IAAI,MAAM,IAAI,KAA1G,KAA6G;AAAA,IACrI,CAAC;AAAA,IACA,gBAAgB,aAAa,SAAS,IACrC,4CAAC,+BAAS,QAAQ,UAAU,GAAG,OAAO,YAAY,IAAI,EAAE,IAAI,IAAI,GAC7D,uBAAa,IAAI,CAAC,gBACjB,4CAAC,gBAAuC,QAAQ,aAAa,SAA1C,YAAY,OAA4C,CAC5E,GACH,IACE;AAAA,KACN;AAEJ;AAEA,IAAM,4BAAwB,wBAAO,6BAAU,EAAE,MAAM,wBAAwB,CAAC,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChG,0BAA0B;AAAA,IACxB,cAAc,MAAM,QAAQ,IAAI;AAAA,EAClC;AACF,EAAE;;;ADrCM,IAAAC,sBAAA;AAND,IAAM,uBAAyD,CAAC,EAAE,QAAAC,QAAO,MAAM;AACpF,QAAM,YAAQ,sBAAiD,EAAE,eAAe,GAAG,KAAK,CAAC,EAAE,CAAC;AAE5F,SACE,6EACG,UAAAA,UACC,8EACE;AAAA,iDAAC,+BAAW,SAAQ,MAAK,gCAAkB;AAAA,IAC3C;AAAA,MAAC;AAAA;AAAA,QACC,cAAW;AAAA,QACX,qBAAqB,6CAAC,sBAAAC,YAAA,EAAe;AAAA,QACrC,mBAAmB,6CAAC,sBAAAC,cAAA,EAAiB;AAAA,QACrC,IAAI,EAAE,UAAU,EAAE;AAAA,QAElB,uDAAC,gBAAa,QAAQF,SAAQ,OAAc;AAAA;AAAA,IAC9C;AAAA,KACF,IACEA,YAAW,OACb,6CAAC,+BAAW,SAAQ,MAAK,6BAAe,IAExC,6CAAC,+BAAW,SAAQ,MAAK,4BAAc,GAE3C;AAEJ;AAEA,IAAM,qBAAiB,yBAAO,8BAAU,EAAE,MAAM,iBAAiB,CAAC,EAAE,OAAO;AAAA,EACzE,QAAQ;AAAA,EACR,UAAU;AACZ,EAAE;","names":["import_material","import_x_tree_view","import_react","module","import_jsx_runtime","module","ExpandMoreIcon","ChevronRightIcon"]}