@xyo-network/react-node 2.75.7 → 2.76.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/dist/browser/components/render/ModuleDescriptionBox.d.cts +1 -1
  2. package/dist/browser/components/render/ModuleDescriptionBox.d.cts.map +1 -1
  3. package/dist/browser/components/render/ModuleDescriptionBox.d.mts +1 -1
  4. package/dist/browser/components/render/ModuleDescriptionBox.d.mts.map +1 -1
  5. package/dist/browser/components/render/ModuleDescriptionBox.d.ts +1 -1
  6. package/dist/browser/components/render/ModuleDescriptionBox.d.ts.map +1 -1
  7. package/dist/browser/components/render/RenderModule.d.cts +1 -1
  8. package/dist/browser/components/render/RenderModule.d.cts.map +1 -1
  9. package/dist/browser/components/render/RenderModule.d.mts +1 -1
  10. package/dist/browser/components/render/RenderModule.d.mts.map +1 -1
  11. package/dist/browser/components/render/RenderModule.d.ts +1 -1
  12. package/dist/browser/components/render/RenderModule.d.ts.map +1 -1
  13. package/dist/browser/hooks/index.d.cts +1 -0
  14. package/dist/browser/hooks/index.d.cts.map +1 -1
  15. package/dist/browser/hooks/index.d.mts +1 -0
  16. package/dist/browser/hooks/index.d.mts.map +1 -1
  17. package/dist/browser/hooks/index.d.ts +1 -0
  18. package/dist/browser/hooks/index.d.ts.map +1 -1
  19. package/dist/browser/hooks/useWeakModuleFilterOptions.d.cts +18 -0
  20. package/dist/browser/hooks/useWeakModuleFilterOptions.d.cts.map +1 -0
  21. package/dist/browser/hooks/useWeakModuleFilterOptions.d.mts +18 -0
  22. package/dist/browser/hooks/useWeakModuleFilterOptions.d.mts.map +1 -0
  23. package/dist/browser/hooks/useWeakModuleFilterOptions.d.ts +18 -0
  24. package/dist/browser/hooks/useWeakModuleFilterOptions.d.ts.map +1 -0
  25. package/dist/browser/hooks/useWeakModuleFromNode.d.cts +2 -2
  26. package/dist/browser/hooks/useWeakModuleFromNode.d.cts.map +1 -1
  27. package/dist/browser/hooks/useWeakModuleFromNode.d.mts +2 -2
  28. package/dist/browser/hooks/useWeakModuleFromNode.d.mts.map +1 -1
  29. package/dist/browser/hooks/useWeakModuleFromNode.d.ts +2 -2
  30. package/dist/browser/hooks/useWeakModuleFromNode.d.ts.map +1 -1
  31. package/dist/browser/hooks/useWeakNodeFromNode.d.cts +2 -2
  32. package/dist/browser/hooks/useWeakNodeFromNode.d.cts.map +1 -1
  33. package/dist/browser/hooks/useWeakNodeFromNode.d.mts +2 -2
  34. package/dist/browser/hooks/useWeakNodeFromNode.d.mts.map +1 -1
  35. package/dist/browser/hooks/useWeakNodeFromNode.d.ts +2 -2
  36. package/dist/browser/hooks/useWeakNodeFromNode.d.ts.map +1 -1
  37. package/dist/browser/index.cjs +93 -84
  38. package/dist/browser/index.cjs.map +1 -1
  39. package/dist/browser/index.js +90 -81
  40. package/dist/browser/index.js.map +1 -1
  41. package/dist/neutral/components/Node.d.cts +9 -0
  42. package/dist/neutral/components/Node.d.cts.map +1 -0
  43. package/dist/neutral/components/Node.d.mts +9 -0
  44. package/dist/neutral/components/Node.d.mts.map +1 -0
  45. package/dist/neutral/components/Node.d.ts +9 -0
  46. package/dist/neutral/components/Node.d.ts.map +1 -0
  47. package/dist/neutral/components/NodeDescriptionBox.d.cts +8 -0
  48. package/dist/neutral/components/NodeDescriptionBox.d.cts.map +1 -0
  49. package/dist/neutral/components/NodeDescriptionBox.d.mts +8 -0
  50. package/dist/neutral/components/NodeDescriptionBox.d.mts.map +1 -0
  51. package/dist/neutral/components/NodeDescriptionBox.d.ts +8 -0
  52. package/dist/neutral/components/NodeDescriptionBox.d.ts.map +1 -0
  53. package/dist/neutral/components/NodeDrawer.d.cts +7 -0
  54. package/dist/neutral/components/NodeDrawer.d.cts.map +1 -0
  55. package/dist/neutral/components/NodeDrawer.d.mts +7 -0
  56. package/dist/neutral/components/NodeDrawer.d.mts.map +1 -0
  57. package/dist/neutral/components/NodeDrawer.d.ts +7 -0
  58. package/dist/neutral/components/NodeDrawer.d.ts.map +1 -0
  59. package/dist/neutral/components/NodeModulesBox.d.cts +8 -0
  60. package/dist/neutral/components/NodeModulesBox.d.cts.map +1 -0
  61. package/dist/neutral/components/NodeModulesBox.d.mts +8 -0
  62. package/dist/neutral/components/NodeModulesBox.d.mts.map +1 -0
  63. package/dist/neutral/components/NodeModulesBox.d.ts +8 -0
  64. package/dist/neutral/components/NodeModulesBox.d.ts.map +1 -0
  65. package/dist/neutral/components/TestModule.d.cts +14 -0
  66. package/dist/neutral/components/TestModule.d.cts.map +1 -0
  67. package/dist/neutral/components/TestModule.d.mts +14 -0
  68. package/dist/neutral/components/TestModule.d.mts.map +1 -0
  69. package/dist/neutral/components/TestModule.d.ts +14 -0
  70. package/dist/neutral/components/TestModule.d.ts.map +1 -0
  71. package/dist/neutral/components/index.d.cts +3 -0
  72. package/dist/neutral/components/index.d.cts.map +1 -0
  73. package/dist/neutral/components/index.d.mts +3 -0
  74. package/dist/neutral/components/index.d.mts.map +1 -0
  75. package/dist/neutral/components/index.d.ts +3 -0
  76. package/dist/neutral/components/index.d.ts.map +1 -0
  77. package/dist/neutral/components/render/ModuleDescriptionBox.d.cts +8 -0
  78. package/dist/neutral/components/render/ModuleDescriptionBox.d.cts.map +1 -0
  79. package/dist/neutral/components/render/ModuleDescriptionBox.d.mts +8 -0
  80. package/dist/neutral/components/render/ModuleDescriptionBox.d.mts.map +1 -0
  81. package/dist/neutral/components/render/ModuleDescriptionBox.d.ts +8 -0
  82. package/dist/neutral/components/render/ModuleDescriptionBox.d.ts.map +1 -0
  83. package/dist/neutral/components/render/RenderModule.d.cts +12 -0
  84. package/dist/neutral/components/render/RenderModule.d.cts.map +1 -0
  85. package/dist/neutral/components/render/RenderModule.d.mts +12 -0
  86. package/dist/neutral/components/render/RenderModule.d.mts.map +1 -0
  87. package/dist/neutral/components/render/RenderModule.d.ts +12 -0
  88. package/dist/neutral/components/render/RenderModule.d.ts.map +1 -0
  89. package/dist/neutral/components/render/index.d.cts +3 -0
  90. package/dist/neutral/components/render/index.d.cts.map +1 -0
  91. package/dist/neutral/components/render/index.d.mts +3 -0
  92. package/dist/neutral/components/render/index.d.mts.map +1 -0
  93. package/dist/neutral/components/render/index.d.ts +3 -0
  94. package/dist/neutral/components/render/index.d.ts.map +1 -0
  95. package/dist/neutral/hooks/ModuleFromNodeConfig.d.cts +9 -0
  96. package/dist/neutral/hooks/ModuleFromNodeConfig.d.cts.map +1 -0
  97. package/dist/neutral/hooks/ModuleFromNodeConfig.d.mts +9 -0
  98. package/dist/neutral/hooks/ModuleFromNodeConfig.d.mts.map +1 -0
  99. package/dist/neutral/hooks/ModuleFromNodeConfig.d.ts +9 -0
  100. package/dist/neutral/hooks/ModuleFromNodeConfig.d.ts.map +1 -0
  101. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.cts +9 -0
  102. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.cts.map +1 -0
  103. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.mts +9 -0
  104. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.mts.map +1 -0
  105. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.ts +9 -0
  106. package/dist/neutral/hooks/WeakModuleFromNodeConfig.d.ts.map +1 -0
  107. package/dist/neutral/hooks/index.d.cts +18 -0
  108. package/dist/neutral/hooks/index.d.cts.map +1 -0
  109. package/dist/neutral/hooks/index.d.mts +18 -0
  110. package/dist/neutral/hooks/index.d.mts.map +1 -0
  111. package/dist/neutral/hooks/index.d.ts +18 -0
  112. package/dist/neutral/hooks/index.d.ts.map +1 -0
  113. package/dist/neutral/hooks/provided/index.d.cts +3 -0
  114. package/dist/neutral/hooks/provided/index.d.cts.map +1 -0
  115. package/dist/neutral/hooks/provided/index.d.mts +3 -0
  116. package/dist/neutral/hooks/provided/index.d.mts.map +1 -0
  117. package/dist/neutral/hooks/provided/index.d.ts +3 -0
  118. package/dist/neutral/hooks/provided/index.d.ts.map +1 -0
  119. package/dist/neutral/hooks/provided/useProvidedNode.d.cts +3 -0
  120. package/dist/neutral/hooks/provided/useProvidedNode.d.cts.map +1 -0
  121. package/dist/neutral/hooks/provided/useProvidedNode.d.mts +3 -0
  122. package/dist/neutral/hooks/provided/useProvidedNode.d.mts.map +1 -0
  123. package/dist/neutral/hooks/provided/useProvidedNode.d.ts +3 -0
  124. package/dist/neutral/hooks/provided/useProvidedNode.d.ts.map +1 -0
  125. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.cts +3 -0
  126. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.cts.map +1 -0
  127. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.mts +3 -0
  128. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.mts.map +1 -0
  129. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.ts +3 -0
  130. package/dist/neutral/hooks/provided/useWeakProvidedNode.d.ts.map +1 -0
  131. package/dist/neutral/hooks/useModuleFilterOptions.d.cts +18 -0
  132. package/dist/neutral/hooks/useModuleFilterOptions.d.cts.map +1 -0
  133. package/dist/neutral/hooks/useModuleFilterOptions.d.mts +18 -0
  134. package/dist/neutral/hooks/useModuleFilterOptions.d.mts.map +1 -0
  135. package/dist/neutral/hooks/useModuleFilterOptions.d.ts +18 -0
  136. package/dist/neutral/hooks/useModuleFilterOptions.d.ts.map +1 -0
  137. package/dist/neutral/hooks/useModuleFromNode.d.cts +71 -0
  138. package/dist/neutral/hooks/useModuleFromNode.d.cts.map +1 -0
  139. package/dist/neutral/hooks/useModuleFromNode.d.mts +71 -0
  140. package/dist/neutral/hooks/useModuleFromNode.d.mts.map +1 -0
  141. package/dist/neutral/hooks/useModuleFromNode.d.ts +71 -0
  142. package/dist/neutral/hooks/useModuleFromNode.d.ts.map +1 -0
  143. package/dist/neutral/hooks/useModulesFromNode.d.cts +5 -0
  144. package/dist/neutral/hooks/useModulesFromNode.d.cts.map +1 -0
  145. package/dist/neutral/hooks/useModulesFromNode.d.mts +5 -0
  146. package/dist/neutral/hooks/useModulesFromNode.d.mts.map +1 -0
  147. package/dist/neutral/hooks/useModulesFromNode.d.ts +5 -0
  148. package/dist/neutral/hooks/useModulesFromNode.d.ts.map +1 -0
  149. package/dist/neutral/hooks/useNode.d.cts +4 -0
  150. package/dist/neutral/hooks/useNode.d.cts.map +1 -0
  151. package/dist/neutral/hooks/useNode.d.mts +4 -0
  152. package/dist/neutral/hooks/useNode.d.mts.map +1 -0
  153. package/dist/neutral/hooks/useNode.d.ts +4 -0
  154. package/dist/neutral/hooks/useNode.d.ts.map +1 -0
  155. package/dist/neutral/hooks/useNodeConfigNodeField.d.cts +4 -0
  156. package/dist/neutral/hooks/useNodeConfigNodeField.d.cts.map +1 -0
  157. package/dist/neutral/hooks/useNodeConfigNodeField.d.mts +4 -0
  158. package/dist/neutral/hooks/useNodeConfigNodeField.d.mts.map +1 -0
  159. package/dist/neutral/hooks/useNodeConfigNodeField.d.ts +4 -0
  160. package/dist/neutral/hooks/useNodeConfigNodeField.d.ts.map +1 -0
  161. package/dist/neutral/hooks/useNodeDescription.d.cts +4 -0
  162. package/dist/neutral/hooks/useNodeDescription.d.cts.map +1 -0
  163. package/dist/neutral/hooks/useNodeDescription.d.mts +4 -0
  164. package/dist/neutral/hooks/useNodeDescription.d.mts.map +1 -0
  165. package/dist/neutral/hooks/useNodeDescription.d.ts +4 -0
  166. package/dist/neutral/hooks/useNodeDescription.d.ts.map +1 -0
  167. package/dist/neutral/hooks/useNodeFromNode.d.cts +5 -0
  168. package/dist/neutral/hooks/useNodeFromNode.d.cts.map +1 -0
  169. package/dist/neutral/hooks/useNodeFromNode.d.mts +5 -0
  170. package/dist/neutral/hooks/useNodeFromNode.d.mts.map +1 -0
  171. package/dist/neutral/hooks/useNodeFromNode.d.ts +5 -0
  172. package/dist/neutral/hooks/useNodeFromNode.d.ts.map +1 -0
  173. package/dist/neutral/hooks/useNodesFromNode.d.cts +6 -0
  174. package/dist/neutral/hooks/useNodesFromNode.d.cts.map +1 -0
  175. package/dist/neutral/hooks/useNodesFromNode.d.mts +6 -0
  176. package/dist/neutral/hooks/useNodesFromNode.d.mts.map +1 -0
  177. package/dist/neutral/hooks/useNodesFromNode.d.ts +6 -0
  178. package/dist/neutral/hooks/useNodesFromNode.d.ts.map +1 -0
  179. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.cts +18 -0
  180. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.cts.map +1 -0
  181. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.mts +18 -0
  182. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.mts.map +1 -0
  183. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.ts +18 -0
  184. package/dist/neutral/hooks/useWeakModuleFilterOptions.d.ts.map +1 -0
  185. package/dist/neutral/hooks/useWeakModuleFromNode.d.cts +59 -0
  186. package/dist/neutral/hooks/useWeakModuleFromNode.d.cts.map +1 -0
  187. package/dist/neutral/hooks/useWeakModuleFromNode.d.mts +59 -0
  188. package/dist/neutral/hooks/useWeakModuleFromNode.d.mts.map +1 -0
  189. package/dist/neutral/hooks/useWeakModuleFromNode.d.ts +59 -0
  190. package/dist/neutral/hooks/useWeakModuleFromNode.d.ts.map +1 -0
  191. package/dist/neutral/hooks/useWeakModulesFromNode.d.cts +4 -0
  192. package/dist/neutral/hooks/useWeakModulesFromNode.d.cts.map +1 -0
  193. package/dist/neutral/hooks/useWeakModulesFromNode.d.mts +4 -0
  194. package/dist/neutral/hooks/useWeakModulesFromNode.d.mts.map +1 -0
  195. package/dist/neutral/hooks/useWeakModulesFromNode.d.ts +4 -0
  196. package/dist/neutral/hooks/useWeakModulesFromNode.d.ts.map +1 -0
  197. package/dist/neutral/hooks/useWeakNode.d.cts +4 -0
  198. package/dist/neutral/hooks/useWeakNode.d.cts.map +1 -0
  199. package/dist/neutral/hooks/useWeakNode.d.mts +4 -0
  200. package/dist/neutral/hooks/useWeakNode.d.mts.map +1 -0
  201. package/dist/neutral/hooks/useWeakNode.d.ts +4 -0
  202. package/dist/neutral/hooks/useWeakNode.d.ts.map +1 -0
  203. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.cts +4 -0
  204. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.cts.map +1 -0
  205. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.mts +4 -0
  206. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.mts.map +1 -0
  207. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.ts +4 -0
  208. package/dist/neutral/hooks/useWeakNodeConfigNodeField.d.ts.map +1 -0
  209. package/dist/neutral/hooks/useWeakNodeDescription.d.cts +4 -0
  210. package/dist/neutral/hooks/useWeakNodeDescription.d.cts.map +1 -0
  211. package/dist/neutral/hooks/useWeakNodeDescription.d.mts +4 -0
  212. package/dist/neutral/hooks/useWeakNodeDescription.d.mts.map +1 -0
  213. package/dist/neutral/hooks/useWeakNodeDescription.d.ts +4 -0
  214. package/dist/neutral/hooks/useWeakNodeDescription.d.ts.map +1 -0
  215. package/dist/neutral/hooks/useWeakNodeFromNode.d.cts +4 -0
  216. package/dist/neutral/hooks/useWeakNodeFromNode.d.cts.map +1 -0
  217. package/dist/neutral/hooks/useWeakNodeFromNode.d.mts +4 -0
  218. package/dist/neutral/hooks/useWeakNodeFromNode.d.mts.map +1 -0
  219. package/dist/neutral/hooks/useWeakNodeFromNode.d.ts +4 -0
  220. package/dist/neutral/hooks/useWeakNodeFromNode.d.ts.map +1 -0
  221. package/dist/neutral/hooks/useWeakNodesFromNode.d.cts +5 -0
  222. package/dist/neutral/hooks/useWeakNodesFromNode.d.cts.map +1 -0
  223. package/dist/neutral/hooks/useWeakNodesFromNode.d.mts +5 -0
  224. package/dist/neutral/hooks/useWeakNodesFromNode.d.mts.map +1 -0
  225. package/dist/neutral/hooks/useWeakNodesFromNode.d.ts +5 -0
  226. package/dist/neutral/hooks/useWeakNodesFromNode.d.ts.map +1 -0
  227. package/dist/neutral/index.cjs +465 -0
  228. package/dist/neutral/index.cjs.map +1 -0
  229. package/dist/neutral/index.d.cts +5 -0
  230. package/dist/neutral/index.d.cts.map +1 -0
  231. package/dist/neutral/index.d.mts +5 -0
  232. package/dist/neutral/index.d.mts.map +1 -0
  233. package/dist/neutral/index.d.ts +5 -0
  234. package/dist/neutral/index.d.ts.map +1 -0
  235. package/dist/neutral/index.js +441 -0
  236. package/dist/neutral/index.js.map +1 -0
  237. package/dist/node/components/render/ModuleDescriptionBox.d.cts +1 -1
  238. package/dist/node/components/render/ModuleDescriptionBox.d.cts.map +1 -1
  239. package/dist/node/components/render/ModuleDescriptionBox.d.mts +1 -1
  240. package/dist/node/components/render/ModuleDescriptionBox.d.mts.map +1 -1
  241. package/dist/node/components/render/ModuleDescriptionBox.d.ts +1 -1
  242. package/dist/node/components/render/ModuleDescriptionBox.d.ts.map +1 -1
  243. package/dist/node/components/render/RenderModule.d.cts +1 -1
  244. package/dist/node/components/render/RenderModule.d.cts.map +1 -1
  245. package/dist/node/components/render/RenderModule.d.mts +1 -1
  246. package/dist/node/components/render/RenderModule.d.mts.map +1 -1
  247. package/dist/node/components/render/RenderModule.d.ts +1 -1
  248. package/dist/node/components/render/RenderModule.d.ts.map +1 -1
  249. package/dist/node/hooks/index.d.cts +1 -0
  250. package/dist/node/hooks/index.d.cts.map +1 -1
  251. package/dist/node/hooks/index.d.mts +1 -0
  252. package/dist/node/hooks/index.d.mts.map +1 -1
  253. package/dist/node/hooks/index.d.ts +1 -0
  254. package/dist/node/hooks/index.d.ts.map +1 -1
  255. package/dist/node/hooks/useWeakModuleFilterOptions.d.cts +18 -0
  256. package/dist/node/hooks/useWeakModuleFilterOptions.d.cts.map +1 -0
  257. package/dist/node/hooks/useWeakModuleFilterOptions.d.mts +18 -0
  258. package/dist/node/hooks/useWeakModuleFilterOptions.d.mts.map +1 -0
  259. package/dist/node/hooks/useWeakModuleFilterOptions.d.ts +18 -0
  260. package/dist/node/hooks/useWeakModuleFilterOptions.d.ts.map +1 -0
  261. package/dist/node/hooks/useWeakModuleFromNode.d.cts +2 -2
  262. package/dist/node/hooks/useWeakModuleFromNode.d.cts.map +1 -1
  263. package/dist/node/hooks/useWeakModuleFromNode.d.mts +2 -2
  264. package/dist/node/hooks/useWeakModuleFromNode.d.mts.map +1 -1
  265. package/dist/node/hooks/useWeakModuleFromNode.d.ts +2 -2
  266. package/dist/node/hooks/useWeakModuleFromNode.d.ts.map +1 -1
  267. package/dist/node/hooks/useWeakNodeFromNode.d.cts +2 -2
  268. package/dist/node/hooks/useWeakNodeFromNode.d.cts.map +1 -1
  269. package/dist/node/hooks/useWeakNodeFromNode.d.mts +2 -2
  270. package/dist/node/hooks/useWeakNodeFromNode.d.mts.map +1 -1
  271. package/dist/node/hooks/useWeakNodeFromNode.d.ts +2 -2
  272. package/dist/node/hooks/useWeakNodeFromNode.d.ts.map +1 -1
  273. package/dist/node/index.cjs +94 -84
  274. package/dist/node/index.cjs.map +1 -1
  275. package/dist/node/index.js +90 -81
  276. package/dist/node/index.js.map +1 -1
  277. package/package.json +16 -16
  278. package/src/components/NodeDrawer.tsx +1 -1
  279. package/src/components/render/ModuleDescriptionBox.tsx +5 -5
  280. package/src/components/render/RenderModule.tsx +6 -6
  281. package/src/hooks/index.ts +1 -0
  282. package/src/hooks/useModuleFromNode.ts +8 -8
  283. package/src/hooks/useModulesFromNode.ts +4 -4
  284. package/src/hooks/useNodeFromNode.tsx +4 -4
  285. package/src/hooks/useNodesFromNode.tsx +3 -3
  286. package/src/hooks/useWeakModuleFilterOptions.ts +6 -0
  287. package/src/hooks/useWeakModuleFromNode.ts +15 -15
  288. package/src/hooks/useWeakModulesFromNode.ts +7 -7
  289. package/src/hooks/useWeakNodeFromNode.tsx +2 -2
  290. package/src/hooks/useWeakNodesFromNode.tsx +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/components/NodeDescriptionBox.tsx","../../src/hooks/ModuleFromNodeConfig.ts","../../src/hooks/provided/useProvidedNode.tsx","../../src/hooks/provided/useWeakProvidedNode.tsx","../../src/hooks/useModuleFilterOptions.ts","../../src/hooks/useModuleFromNode.ts","../../src/hooks/useNode.ts","../../src/hooks/useNodeConfigNodeField.ts","../../src/hooks/useModulesFromNode.ts","../../src/hooks/useNodeDescription.ts","../../src/hooks/useNodeFromNode.tsx","../../src/hooks/useNodesFromNode.tsx","../../src/hooks/useWeakModuleFromNode.ts","../../src/hooks/useWeakModulesFromNode.ts","../../src/hooks/useWeakNodeConfigNodeField.ts","../../src/hooks/useWeakNodeDescription.ts","../../src/hooks/useWeakNode.ts","../../src/hooks/useWeakNodeFromNode.tsx","../../src/hooks/WeakModuleFromNodeConfig.ts","../../src/components/Node.tsx","../../src/components/NodeDrawer.tsx","../../src/components/render/ModuleDescriptionBox.tsx","../../src/components/render/RenderModule.tsx"],"sourcesContent":["export * from './components'\nexport * from './hooks'\nexport * from '@xyo-network/react-node-context'\nexport * from '@xyo-network/react-node-provider'\n","import { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nimport { useWeakNodeDescription } from '../hooks'\n\nexport interface NodeDescriptionBoxProps extends FlexBoxProps {\n node?: string | WeakRef<NodeInstance>\n}\n\nexport const NodeDescriptionBox: React.FC<NodeDescriptionBoxProps> = ({ node, ...props }) => {\n const [description, error] = useWeakNodeDescription({ 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 { Logger } from '@xylabs/logger'\nimport { ModuleFilterOptions, ModuleInstance } from '@xyo-network/module-model'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nexport type ModuleFromNodeConfig<T extends ModuleInstance = ModuleInstance> = ModuleFilterOptions<T> & {\n logger?: Logger\n node?: NodeInstance | string\n}\n\nexport const useModuleFromNodeConfigLogger = (config?: ModuleFromNodeConfig) => {\n return config?.logger\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 { NodeInstance } from '@xyo-network/node-model'\nimport { NodeContext } from '@xyo-network/react-node-context'\nimport { useContext, useMemo } from 'react'\n\nexport const useWeakProvidedNode = (): [WeakRef<NodeInstance> | null | undefined] => {\n const { node } = useContext(NodeContext)\n const weakNode = useMemo(() => (node ? new WeakRef(node) : null), [node])\n return [weakNode]\n}\n","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n\nexport const useModuleFilterOptions = (config?: ModuleFromNodeConfig) => {\n const { direction, identity, maxDepth } = config ?? {}\n return { direction, identity, maxDepth }\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { TypeCheck } from '@xylabs/object'\nimport { usePromise } from '@xylabs/react-promise'\nimport { isModuleInstance, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig, useModuleFromNodeConfigLogger } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\n/** @deprecated use useWeakModuleFromNode */\nexport const useModuleFromNode = <T extends ModuleInstance | void = void>(\n nameOrAddressOrInstance: string | (T extends ModuleInstance ? T : ModuleInstance) | undefined = undefined,\n config?: T extends ModuleInstance ? ModuleFromNodeConfig<T> : ModuleFromNodeConfig | undefined,\n): [(T extends ModuleInstance ? T : ModuleInstance) | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = useModuleFromNodeConfigLogger(config)\n const filterOptions = useModuleFilterOptions(config)\n const [result, setResult] = useState<(T extends ModuleInstance ? T : ModuleInstance) | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const identity: TypeCheck<T extends ModuleInstance ? T : ModuleInstance> = (config?.identity ?? isModuleInstance) as TypeCheck<\n T extends ModuleInstance ? T : ModuleInstance\n >\n if (node && nameOrAddressOrInstance) {\n node.on('moduleAttached', ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${module.config.name ?? module.address}]`)\n if (module.address === nameOrAddressOrInstance || module.config?.name === nameOrAddressOrInstance) {\n setResult(identity(module) ? (module as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n })\n node.on('moduleDetached', ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${module.config.name ?? module.address}]`)\n if (module.address === nameOrAddressOrInstance || module.config?.name === nameOrAddressOrInstance) {\n setResult(undefined)\n }\n })\n if (identity(nameOrAddressOrInstance)) {\n setResult(nameOrAddressOrInstance)\n } else {\n const result = await node.resolve(nameOrAddressOrInstance, filterOptions)\n logger?.debug(`Result: ${result?.address}`)\n setResult(identity(module) ? (module as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n return result\n }\n logger?.debug('Result: No Node')\n return\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node, nameOrAddressOrInstance])\n return [result, nodeError ?? error]\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","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { 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","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { usePromise } from '@xylabs/react-promise'\nimport { ModuleFilter, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\n/** @deprecated use useModulesFromNode */\nexport const useModulesFromNode = (filter?: ModuleFilter, config?: ModuleFromNodeConfig): [ModuleInstance[] | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = config?.logger\n const filterOptions = useModuleFilterOptions()\n const [result, setResult] = useState<ModuleInstance[] | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n if (node) {\n node.on('moduleAttached', async ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${module.config.name ?? module.address}]`)\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n })\n node.on('moduleDetached', async ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${module.config.name ?? module.address}]`)\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n })\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n return moduleInstances\n }\n console.log('Result: No Node')\n return\n }, [node, filter])\n return [result, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleDescription, ModuleDescriptionPayload, ModuleDescriptionSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-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 const state = await activeNode?.state()\n return state?.find<ModuleDescriptionPayload>(isPayloadOfSchemaType(ModuleDescriptionSchema))\n }, [activeNode])\n return [description, nodeError ?? error]\n}\n","import { asNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n// eslint-disable-next-line import/no-deprecated\nimport { useModuleFromNode } from './useModuleFromNode'\n\n/** @deprecated use useWeakNodeFromNode instead */\nexport const useNodeFromNode = (\n nameOrAddressOrInstance?: string | NodeInstance,\n config?: ModuleFromNodeConfig,\n): [NodeInstance | undefined, Error | undefined] => {\n // eslint-disable-next-line import/no-deprecated, deprecation/deprecation\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asNodeInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a NodeInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","import { ModuleFilter } from '@xyo-network/module-model'\nimport { isNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n// eslint-disable-next-line import/no-deprecated\nimport { useModulesFromNode } from './useModulesFromNode'\n\n/** @deprecated use useWeakNodesFromNode */\nexport const useNodesFromNode = (filter?: ModuleFilter, config?: ModuleFromNodeConfig): [NodeInstance[] | null | undefined, Error | undefined] => {\n // eslint-disable-next-line import/no-deprecated, deprecation/deprecation\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<NodeInstance[]>((prev, module) => {\n if (isNodeInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { TypeCheck } from '@xylabs/object'\nimport { usePromise } from '@xylabs/react-promise'\nimport { isModuleInstance, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig, useModuleFromNodeConfigLogger } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\nexport const useWeakModuleFromNode = <T extends ModuleInstance | void = void>(\n nameOrAddressOrInstance: string | (T extends ModuleInstance ? T : ModuleInstance) | undefined = undefined,\n config?: ModuleFromNodeConfig,\n): [WeakRef<T extends ModuleInstance ? T : ModuleInstance> | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = useModuleFromNodeConfigLogger(config)\n const filterOptions = useModuleFilterOptions(config)\n const [result, setResult] = useState<WeakRef<T extends ModuleInstance ? T : ModuleInstance> | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const identity: TypeCheck<T extends ModuleInstance ? T : ModuleInstance> = (config?.identity ?? isModuleInstance) as TypeCheck<\n T extends ModuleInstance ? T : ModuleInstance\n >\n const nodeInstance = node\n if (nodeInstance && nameOrAddressOrInstance) {\n nodeInstance.on('moduleAttached', ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${module.config.name ?? module.address}]`)\n if (module.address === nameOrAddressOrInstance || module.config?.name === nameOrAddressOrInstance) {\n setResult(identity(module) ? new WeakRef(module as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n })\n nodeInstance.on('moduleDetached', ({ module }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${module.config.name ?? module.address}]`)\n if (module.address === nameOrAddressOrInstance || module.config?.name === nameOrAddressOrInstance) {\n setResult(undefined)\n }\n })\n if (identity(nameOrAddressOrInstance)) {\n setResult(new WeakRef(nameOrAddressOrInstance as T extends ModuleInstance ? T : ModuleInstance))\n } else {\n const result = await nodeInstance.resolve(nameOrAddressOrInstance, filterOptions)\n logger?.debug(`Result: ${result?.address}`)\n setResult(identity(result) ? new WeakRef(result as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n return result\n }\n logger?.debug('Result: No Node')\n return\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node, nameOrAddressOrInstance])\n return [result, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleFilter, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\nexport const useWeakModulesFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<ModuleInstance>[] | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = config?.logger\n const filterOptions = useModuleFilterOptions()\n const [result, setResult] = useState<WeakRef<ModuleInstance>[] | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const nodeInstance = node\n if (nodeInstance) {\n nodeInstance.on('moduleAttached', async ({ module }) => {\n const nodeInstance = node\n logger?.debug(`useModuleFromNode: moduleAttached [${module.config.name ?? module.address}]`)\n const moduleInstances = filter ? await nodeInstance?.resolve(filter, filterOptions) : await nodeInstance?.resolve('*', filterOptions)\n setResult(moduleInstances?.map((module) => new WeakRef(module)))\n })\n nodeInstance.on('moduleDetached', async ({ module }) => {\n const nodeInstance = node\n logger?.debug(`useModuleFromNode: moduleDetached [${module.config.name ?? module.address}]`)\n const moduleInstances = filter ? await nodeInstance?.resolve(filter, filterOptions) : await nodeInstance?.resolve('*', filterOptions)\n setResult(moduleInstances?.map((module) => new WeakRef(module)))\n })\n const moduleInstances = filter ? await nodeInstance.resolve(filter, filterOptions) : await nodeInstance.resolve('*', filterOptions)\n setResult(moduleInstances?.map((module) => new WeakRef(module)))\n return moduleInstances\n }\n console.log('Result: No Node')\n return\n }, [node, filter])\n return [result, nodeError ?? error]\n}\n","import { NodeInstance } from '@xyo-network/node-model'\nimport { useMemo } from 'react'\n\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNodeConfigNodeField = (\n config?: WeakModuleFromNodeConfig | undefined,\n): [string | undefined, WeakRef<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, ModuleDescriptionPayload, ModuleDescriptionSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { useWeakNode } from './useWeakNode'\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNodeDescription = (config?: WeakModuleFromNodeConfig | undefined): [ModuleDescription | undefined, Error | undefined] => {\n const [activeNode, nodeError] = useWeakNode(config)\n const [description, error] = usePromise(async () => {\n const state = await activeNode?.deref()?.state()\n return state?.find<ModuleDescriptionPayload>(isPayloadOfSchemaType(ModuleDescriptionSchema))\n }, [activeNode])\n return [description, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { asNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { useWeakProvidedNode } from './provided'\nimport { useWeakNodeConfigNodeField } from './useWeakNodeConfigNodeField'\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNode = (config?: WeakModuleFromNodeConfig | undefined): [WeakRef<NodeInstance> | undefined, Error | undefined] => {\n const [nodeAddress, nodeInstance] = useWeakNodeConfigNodeField(config)\n const [providedNode] = useWeakProvidedNode()\n const [nodeAddressNode, error] = usePromise(async () => {\n const providedNodeInstance = providedNode?.deref()\n if (providedNodeInstance && nodeAddress) {\n return new WeakRef(asNodeInstance(await providedNodeInstance.resolve(nodeAddress), 'Module is not a node'))\n }\n }, [providedNode, nodeAddress])\n return [nodeAddressNode ?? nodeInstance ?? providedNode ?? undefined, error]\n}\n","import { isNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useWeakModuleFromNode } from './useWeakModuleFromNode'\n\nexport const useWeakNodeFromNode = (\n nameOrAddressOrInstance?: string | NodeInstance,\n config?: ModuleFromNodeConfig,\n): [WeakRef<NodeInstance> | undefined, Error | undefined] => {\n return useWeakModuleFromNode<NodeInstance>(nameOrAddressOrInstance, { identity: isNodeInstance, ...config })\n}\n","import { Logger } from '@xylabs/logger'\nimport { ModuleFilterOptions } from '@xyo-network/module-model'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nexport type WeakModuleFromNodeConfig = ModuleFilterOptions & {\n logger?: Logger\n node?: WeakRef<NodeInstance> | string\n}\n\nexport const useWeakModuleFromNodeConfigLogger = (config?: WeakModuleFromNodeConfig) => {\n return config?.logger\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 | WeakRef<NodeInstance>\n variant?: 'description'\n}\n\nexport const NodeBox: React.FC<NodeBoxProps> = ({ variant, ...props }) => {\n switch (variant) {\n // eslint-disable-next-line unicorn/no-useless-switch-case\n case 'description':\n default: {\n return <NodeDescriptionBox {...props} />\n }\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 { useWeakProvidedNode } 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] = useWeakProvidedNode()\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-model'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n module?: WeakRef<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 : <Typography variant=\"h4\">Node not found</Typography>}\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-model'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n module: WeakRef<ModuleInstance>\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ module, idRef }) => {\n const [childModules, setChildModules] = useState<WeakRef<ModuleInstance>[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const moduleInstance = module.deref()\n const { address } = moduleInstance ?? {}\n if (moduleInstance) {\n const children = (await moduleInstance.resolve('*')).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children.map((childModule) => new WeakRef(childModule)))\n }\n }\n },\n [module],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n const moduleInstance = module.deref()\n const { queries, address } = moduleInstance ?? {}\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((childModuleRef) => {\n const childModule = childModuleRef.deref()\n return childModule ? <RenderModule key={childModule?.address} module={childModuleRef} idRef={idRef} /> : null\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":["import_react_node_context","import_react","import_react_promise","import_react","import_react","module","result","import_react_promise","import_react","module","moduleInstances","import_react_promise","import_module_model","import_node_model","module","error","import_node_model","module","import_react_promise","import_module_model","import_react","module","result","import_react_promise","import_react","module","nodeInstance","moduleInstances","import_react","import_react_promise","import_module_model","import_payload_model","import_react_promise","import_node_model","import_node_model","import_jsx_runtime","import_icons_material","import_material","import_react_flexbox","import_material","import_x_tree_view","import_react","import_react","import_jsx_runtime","module","moduleInstance","address","import_jsx_runtime","module","ExpandMoreIcon","ChevronRightIcon","import_jsx_runtime","CloseIcon"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/components/NodeDescriptionBox.tsx","../../src/hooks/ModuleFromNodeConfig.ts","../../src/hooks/provided/useProvidedNode.tsx","../../src/hooks/provided/useWeakProvidedNode.tsx","../../src/hooks/useModuleFilterOptions.ts","../../src/hooks/useModuleFromNode.ts","../../src/hooks/useNode.ts","../../src/hooks/useNodeConfigNodeField.ts","../../src/hooks/useModulesFromNode.ts","../../src/hooks/useNodeDescription.ts","../../src/hooks/useNodeFromNode.tsx","../../src/hooks/useNodesFromNode.tsx","../../src/hooks/useWeakModuleFilterOptions.ts","../../src/hooks/useWeakModuleFromNode.ts","../../src/hooks/useWeakNode.ts","../../src/hooks/useWeakNodeConfigNodeField.ts","../../src/hooks/WeakModuleFromNodeConfig.ts","../../src/hooks/useWeakModulesFromNode.ts","../../src/hooks/useWeakNodeDescription.ts","../../src/hooks/useWeakNodeFromNode.tsx","../../src/components/Node.tsx","../../src/components/NodeDrawer.tsx","../../src/components/render/ModuleDescriptionBox.tsx","../../src/components/render/RenderModule.tsx"],"sourcesContent":["export * from './components'\nexport * from './hooks'\nexport * from '@xyo-network/react-node-context'\nexport * from '@xyo-network/react-node-provider'\n","import { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nimport { useWeakNodeDescription } from '../hooks'\n\nexport interface NodeDescriptionBoxProps extends FlexBoxProps {\n node?: string | WeakRef<NodeInstance>\n}\n\nexport const NodeDescriptionBox: React.FC<NodeDescriptionBoxProps> = ({ node, ...props }) => {\n const [description, error] = useWeakNodeDescription({ 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 { Logger } from '@xylabs/logger'\nimport { ModuleFilterOptions, ModuleInstance } from '@xyo-network/module-model'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nexport type ModuleFromNodeConfig<T extends ModuleInstance = ModuleInstance> = ModuleFilterOptions<T> & {\n logger?: Logger\n node?: NodeInstance | string\n}\n\nexport const useModuleFromNodeConfigLogger = (config?: ModuleFromNodeConfig) => {\n return config?.logger\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 { NodeInstance } from '@xyo-network/node-model'\nimport { NodeContext } from '@xyo-network/react-node-context'\nimport { useContext, useMemo } from 'react'\n\nexport const useWeakProvidedNode = (): [WeakRef<NodeInstance> | null | undefined] => {\n const { node } = useContext(NodeContext)\n const weakNode = useMemo(() => (node ? new WeakRef(node) : null), [node])\n return [weakNode]\n}\n","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n\nexport const useModuleFilterOptions = (config?: ModuleFromNodeConfig) => {\n const { direction, identity, maxDepth } = config ?? {}\n return { direction, identity, maxDepth }\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { TypeCheck } from '@xylabs/object'\nimport { usePromise } from '@xylabs/react-promise'\nimport { isModuleInstance, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig, useModuleFromNodeConfigLogger } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\n/** @deprecated use useWeakModuleFromNode */\nexport const useModuleFromNode = <T extends ModuleInstance | void = void>(\n nameOrAddressOrInstance: string | (T extends ModuleInstance ? T : ModuleInstance) | undefined = undefined,\n config?: T extends ModuleInstance ? ModuleFromNodeConfig<T> : ModuleFromNodeConfig | undefined,\n): [(T extends ModuleInstance ? T : ModuleInstance) | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = useModuleFromNodeConfigLogger(config)\n const filterOptions = useModuleFilterOptions(config)\n const [result, setResult] = useState<(T extends ModuleInstance ? T : ModuleInstance) | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const identity: TypeCheck<T extends ModuleInstance ? T : ModuleInstance> = (config?.identity ?? isModuleInstance) as TypeCheck<\n T extends ModuleInstance ? T : ModuleInstance\n >\n if (node && nameOrAddressOrInstance) {\n node.on('moduleAttached', ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`)\n if (mod.address === nameOrAddressOrInstance || mod.config?.name === nameOrAddressOrInstance) {\n setResult(identity(mod) ? (mod as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n })\n node.on('moduleDetached', ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`)\n if (mod.address === nameOrAddressOrInstance || mod.config?.name === nameOrAddressOrInstance) {\n setResult(undefined)\n }\n })\n if (identity(nameOrAddressOrInstance)) {\n setResult(nameOrAddressOrInstance)\n } else {\n const result = await node.resolve(nameOrAddressOrInstance, filterOptions)\n logger?.debug(`Result: ${result?.address}`)\n setResult(identity(result) ? (result as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n return result\n }\n logger?.debug('Result: No Node')\n return\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node, nameOrAddressOrInstance])\n return [result, nodeError ?? error]\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","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { 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","/* eslint-disable deprecation/deprecation */\n/* eslint-disable import/no-deprecated */\nimport { usePromise } from '@xylabs/react-promise'\nimport { ModuleFilter, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\n/** @deprecated use useModulesFromNode */\nexport const useModulesFromNode = (filter?: ModuleFilter, config?: ModuleFromNodeConfig): [ModuleInstance[] | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = config?.logger\n const filterOptions = useModuleFilterOptions()\n const [result, setResult] = useState<ModuleInstance[] | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n if (node) {\n node.on('moduleAttached', async ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`)\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n })\n node.on('moduleDetached', async ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`)\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n })\n const moduleInstances = filter ? await node.resolve(filter, filterOptions) : await node.resolve('*', filterOptions)\n setResult(moduleInstances)\n return moduleInstances\n }\n console.log('Result: No Node')\n return\n }, [node, filter])\n return [result, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleDescription, ModuleDescriptionPayload, ModuleDescriptionSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-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 const state = await activeNode?.state()\n return state?.find<ModuleDescriptionPayload>(isPayloadOfSchemaType(ModuleDescriptionSchema))\n }, [activeNode])\n return [description, nodeError ?? error]\n}\n","import { asNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n// eslint-disable-next-line import/no-deprecated\nimport { useModuleFromNode } from './useModuleFromNode'\n\n/** @deprecated use useWeakNodeFromNode instead */\nexport const useNodeFromNode = (\n nameOrAddressOrInstance?: string | NodeInstance,\n config?: ModuleFromNodeConfig,\n): [NodeInstance | undefined, Error | undefined] => {\n // eslint-disable-next-line import/no-deprecated, deprecation/deprecation\n const [mod, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asNodeInstance(mod)\n if (mod && !instance) {\n const error = new Error(`Resolved module is not a NodeInstance [${mod.config?.schema}:${mod.config?.name}:${mod.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","import { ModuleFilter } from '@xyo-network/module-model'\nimport { isNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\n// eslint-disable-next-line import/no-deprecated\nimport { useModulesFromNode } from './useModulesFromNode'\n\n/** @deprecated use useWeakNodesFromNode */\nexport const useNodesFromNode = (filter?: ModuleFilter, config?: ModuleFromNodeConfig): [NodeInstance[] | null | undefined, Error | undefined] => {\n // eslint-disable-next-line import/no-deprecated, deprecation/deprecation\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<NodeInstance[]>((prev, mod) => {\n if (isNodeInstance(mod)) {\n prev.push(mod)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakModuleFilterOptions = (config?: WeakModuleFromNodeConfig) => {\n const { direction, identity, maxDepth } = config ?? {}\n return { direction, identity, maxDepth }\n}\n","import { TypeCheck } from '@xylabs/object'\nimport { usePromise } from '@xylabs/react-promise'\nimport { isModuleInstance, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { useWeakModuleFilterOptions } from './useWeakModuleFilterOptions'\nimport { useWeakNode } from './useWeakNode'\nimport { useWeakModuleFromNodeConfigLogger, WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakModuleFromNode = <T extends ModuleInstance | void = void>(\n nameOrAddressOrInstance: string | (T extends ModuleInstance ? T : ModuleInstance) | undefined = undefined,\n config?: WeakModuleFromNodeConfig,\n): [WeakRef<T extends ModuleInstance ? T : ModuleInstance> | undefined, Error | undefined] => {\n const [node, nodeError] = useWeakNode(config)\n const logger = useWeakModuleFromNodeConfigLogger(config)\n const filterOptions = useWeakModuleFilterOptions(config)\n const [result, setResult] = useState<WeakRef<T extends ModuleInstance ? T : ModuleInstance> | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const identity: TypeCheck<T extends ModuleInstance ? T : ModuleInstance> = (config?.identity ?? isModuleInstance) as TypeCheck<\n T extends ModuleInstance ? T : ModuleInstance\n >\n const nodeInstance = node?.deref()\n if (nodeInstance && nameOrAddressOrInstance) {\n nodeInstance.on('moduleAttached', ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`)\n if (mod.address === nameOrAddressOrInstance || mod.config?.name === nameOrAddressOrInstance) {\n setResult(identity(mod) ? new WeakRef(mod as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n })\n nodeInstance.on('moduleDetached', ({ module: mod }) => {\n logger?.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`)\n if (mod.address === nameOrAddressOrInstance || mod.config?.name === nameOrAddressOrInstance) {\n setResult(undefined)\n }\n })\n if (identity(nameOrAddressOrInstance)) {\n setResult(new WeakRef(nameOrAddressOrInstance as T extends ModuleInstance ? T : ModuleInstance))\n } else {\n const result = await nodeInstance.resolve(nameOrAddressOrInstance, filterOptions)\n logger?.debug(`Result: ${result?.address}`)\n setResult(identity(result) ? new WeakRef(result as T extends ModuleInstance ? T : ModuleInstance) : undefined)\n }\n return result\n }\n logger?.debug('Result: No Node')\n return\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node, nameOrAddressOrInstance])\n return [result, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { asNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { useWeakProvidedNode } from './provided'\nimport { useWeakNodeConfigNodeField } from './useWeakNodeConfigNodeField'\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNode = (config?: WeakModuleFromNodeConfig | undefined): [WeakRef<NodeInstance> | undefined, Error | undefined] => {\n const [nodeAddress, nodeInstance] = useWeakNodeConfigNodeField(config)\n const [providedNode] = useWeakProvidedNode()\n const [nodeAddressNode, error] = usePromise(async () => {\n const providedNodeInstance = providedNode?.deref()\n if (providedNodeInstance && nodeAddress) {\n return new WeakRef(asNodeInstance(await providedNodeInstance.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 { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNodeConfigNodeField = (\n config?: WeakModuleFromNodeConfig | undefined,\n): [string | undefined, WeakRef<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 { Logger } from '@xylabs/logger'\nimport { ModuleFilterOptions } from '@xyo-network/module-model'\nimport { NodeInstance } from '@xyo-network/node-model'\n\nexport type WeakModuleFromNodeConfig = ModuleFilterOptions & {\n logger?: Logger\n node?: WeakRef<NodeInstance> | string\n}\n\nexport const useWeakModuleFromNodeConfigLogger = (config?: WeakModuleFromNodeConfig) => {\n return config?.logger\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleFilter, ModuleInstance } from '@xyo-network/module-model'\nimport { useState } from 'react'\n\nimport { ModuleFromNodeConfig } from './ModuleFromNodeConfig'\nimport { useModuleFilterOptions } from './useModuleFilterOptions'\nimport { useNode } from './useNode'\n\nexport const useWeakModulesFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<ModuleInstance>[] | undefined, Error | undefined] => {\n const [node, nodeError] = useNode(config)\n const logger = config?.logger\n const filterOptions = useModuleFilterOptions()\n const [result, setResult] = useState<WeakRef<ModuleInstance>[] | undefined>()\n const [, error] = usePromise(async () => {\n logger?.debug('useModuleFromNode: resolving')\n const nodeInstance = node\n if (nodeInstance) {\n nodeInstance.on('moduleAttached', async ({ module: mod }) => {\n const nodeInstance = node\n logger?.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`)\n const moduleInstances = filter ? await nodeInstance?.resolve(filter, filterOptions) : await nodeInstance?.resolve('*', filterOptions)\n setResult(moduleInstances?.map((mod) => new WeakRef(mod)))\n })\n nodeInstance.on('moduleDetached', async ({ module: mod }) => {\n const nodeInstance = node\n logger?.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`)\n const moduleInstances = filter ? await nodeInstance?.resolve(filter, filterOptions) : await nodeInstance?.resolve('*', filterOptions)\n setResult(moduleInstances?.map((mod) => new WeakRef(mod)))\n })\n const moduleInstances = filter ? await nodeInstance.resolve(filter, filterOptions) : await nodeInstance.resolve('*', filterOptions)\n setResult(moduleInstances?.map((mod) => new WeakRef(mod)))\n return moduleInstances\n }\n console.log('Result: No Node')\n return\n }, [node, filter])\n return [result, nodeError ?? error]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport { ModuleDescription, ModuleDescriptionPayload, ModuleDescriptionSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { useWeakNode } from './useWeakNode'\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNodeDescription = (config?: WeakModuleFromNodeConfig | undefined): [ModuleDescription | undefined, Error | undefined] => {\n const [activeNode, nodeError] = useWeakNode(config)\n const [description, error] = usePromise(async () => {\n const state = await activeNode?.deref()?.state()\n return state?.find<ModuleDescriptionPayload>(isPayloadOfSchemaType(ModuleDescriptionSchema))\n }, [activeNode])\n return [description, nodeError ?? error]\n}\n","import { isNodeInstance, NodeInstance } from '@xyo-network/node-model'\n\nimport { useWeakModuleFromNode } from './useWeakModuleFromNode'\nimport { WeakModuleFromNodeConfig } from './WeakModuleFromNodeConfig'\n\nexport const useWeakNodeFromNode = (\n nameOrAddressOrInstance?: string | NodeInstance,\n config?: WeakModuleFromNodeConfig,\n): [WeakRef<NodeInstance> | undefined, Error | undefined] => {\n return useWeakModuleFromNode<NodeInstance>(nameOrAddressOrInstance, { identity: isNodeInstance, ...config })\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 | WeakRef<NodeInstance>\n variant?: 'description'\n}\n\nexport const NodeBox: React.FC<NodeBoxProps> = ({ variant, ...props }) => {\n switch (variant) {\n // eslint-disable-next-line unicorn/no-useless-switch-case\n case 'description':\n default: {\n return <NodeDescriptionBox {...props} />\n }\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 { useWeakProvidedNode } 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] = useWeakProvidedNode()\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 mod={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-model'\nimport { useRef } from 'react'\n\nimport { RenderModule } from './RenderModule'\n\nexport interface ModuleDescriptionProps extends FlexBoxProps {\n mod?: WeakRef<ModuleInstance> | null\n}\nexport const ModuleDescriptionBox: React.FC<ModuleDescriptionProps> = ({ mod }) => {\n const idRef = useRef<{ idIncrementor: number; ids: string[] }>({ idIncrementor: 0, ids: [] })\n\n return (\n <>\n {mod ?\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 mod={mod} idRef={idRef} />\n </StyledTreeView>\n </>\n : mod === null ?\n <Typography variant=\"h4\">Node loading...</Typography>\n : <Typography variant=\"h4\">Node not found</Typography>}\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-model'\nimport { MutableRefObject, useState } from 'react'\n\ninterface RenderModuleProps {\n idRef: MutableRefObject<{\n idIncrementor: number\n ids: string[]\n }>\n mod: WeakRef<ModuleInstance>\n}\n\nexport const RenderModule: React.FC<RenderModuleProps> = ({ mod, idRef }) => {\n const [childModules, setChildModules] = useState<WeakRef<ModuleInstance>[]>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const moduleInstance = mod.deref()\n const { address } = moduleInstance ?? {}\n if (moduleInstance) {\n const children = (await moduleInstance.resolve('*')).filter((childModule) => childModule.address !== address)\n if (mounted()) {\n setChildModules(children.map((childModule) => new WeakRef(childModule)))\n }\n }\n },\n [mod],\n )\n\n const increment = () => {\n const newId = (idRef.current.idIncrementor++).toString()\n idRef.current.ids.push(newId)\n return newId\n }\n\n const moduleInstance = mod.deref()\n const { queries, address } = moduleInstance ?? {}\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((childModuleRef) => {\n const childModule = childModuleRef.deref()\n return childModule ? <RenderModule key={childModule?.address} mod={childModuleRef} idRef={idRef} /> : null\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":["import_react_node_context","import_react","import_react_promise","import_react","import_react","result","import_react_promise","import_react","moduleInstances","import_react_promise","import_module_model","import_node_model","error","import_node_model","import_react_promise","import_module_model","import_react","import_react_promise","import_node_model","import_react","result","import_react_promise","import_react","nodeInstance","moduleInstances","mod","import_react_promise","import_module_model","import_payload_model","import_node_model","import_jsx_runtime","import_icons_material","import_material","import_react_flexbox","import_material","import_x_tree_view","import_react","import_react","import_jsx_runtime","moduleInstance","address","import_jsx_runtime","ExpandMoreIcon","ChevronRightIcon","import_jsx_runtime","CloseIcon"]}
@@ -68,17 +68,17 @@ var useModuleFromNode = (nameOrAddressOrInstance = void 0, config) => {
68
68
  logger == null ? void 0 : logger.debug("useModuleFromNode: resolving");
69
69
  const identity = (config == null ? void 0 : config.identity) ?? isModuleInstance;
70
70
  if (node && nameOrAddressOrInstance) {
71
- node.on("moduleAttached", ({ module: module2 }) => {
71
+ node.on("moduleAttached", ({ module: mod }) => {
72
72
  var _a;
73
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${module2.config.name ?? module2.address}]`);
74
- if (module2.address === nameOrAddressOrInstance || ((_a = module2.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
75
- setResult(identity(module2) ? module2 : void 0);
73
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`);
74
+ if (mod.address === nameOrAddressOrInstance || ((_a = mod.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
75
+ setResult(identity(mod) ? mod : void 0);
76
76
  }
77
77
  });
78
- node.on("moduleDetached", ({ module: module2 }) => {
78
+ node.on("moduleDetached", ({ module: mod }) => {
79
79
  var _a;
80
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${module2.config.name ?? module2.address}]`);
81
- if (module2.address === nameOrAddressOrInstance || ((_a = module2.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
80
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`);
81
+ if (mod.address === nameOrAddressOrInstance || ((_a = mod.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
82
82
  setResult(void 0);
83
83
  }
84
84
  });
@@ -87,7 +87,7 @@ var useModuleFromNode = (nameOrAddressOrInstance = void 0, config) => {
87
87
  } else {
88
88
  const result2 = await node.resolve(nameOrAddressOrInstance, filterOptions);
89
89
  logger == null ? void 0 : logger.debug(`Result: ${result2 == null ? void 0 : result2.address}`);
90
- setResult(identity(module) ? module : void 0);
90
+ setResult(identity(result2) ? result2 : void 0);
91
91
  }
92
92
  return result;
93
93
  }
@@ -108,13 +108,13 @@ var useModulesFromNode = (filter, config) => {
108
108
  const [, error] = usePromise3(async () => {
109
109
  logger == null ? void 0 : logger.debug("useModuleFromNode: resolving");
110
110
  if (node) {
111
- node.on("moduleAttached", async ({ module: module2 }) => {
112
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${module2.config.name ?? module2.address}]`);
111
+ node.on("moduleAttached", async ({ module: mod }) => {
112
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`);
113
113
  const moduleInstances2 = filter ? await node.resolve(filter, filterOptions) : await node.resolve("*", filterOptions);
114
114
  setResult(moduleInstances2);
115
115
  });
116
- node.on("moduleDetached", async ({ module: module2 }) => {
117
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${module2.config.name ?? module2.address}]`);
116
+ node.on("moduleDetached", async ({ module: mod }) => {
117
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`);
118
118
  const moduleInstances2 = filter ? await node.resolve(filter, filterOptions) : await node.resolve("*", filterOptions);
119
119
  setResult(moduleInstances2);
120
120
  });
@@ -145,10 +145,10 @@ var useNodeDescription = (config) => {
145
145
  import { asNodeInstance as asNodeInstance2 } from "@xyo-network/node-model";
146
146
  var useNodeFromNode = (nameOrAddressOrInstance, config) => {
147
147
  var _a, _b;
148
- const [module2, error] = useModuleFromNode(nameOrAddressOrInstance, config);
149
- const instance = asNodeInstance2(module2);
150
- if (module2 && !instance) {
151
- const error2 = new Error(`Resolved module is not a NodeInstance [${(_a = module2.config) == null ? void 0 : _a.schema}:${(_b = module2.config) == null ? void 0 : _b.name}:${module2.address}]`);
148
+ const [mod, error] = useModuleFromNode(nameOrAddressOrInstance, config);
149
+ const instance = asNodeInstance2(mod);
150
+ if (mod && !instance) {
151
+ const error2 = new Error(`Resolved module is not a NodeInstance [${(_a = mod.config) == null ? void 0 : _a.schema}:${(_b = mod.config) == null ? void 0 : _b.name}:${mod.address}]`);
152
152
  console.error(error2.message);
153
153
  return [void 0, error2];
154
154
  }
@@ -164,9 +164,9 @@ var useNodesFromNode = (filter, config) => {
164
164
  }
165
165
  return modules ? [
166
166
  // eslint-disable-next-line unicorn/no-array-reduce
167
- modules.reduce((prev, module2) => {
168
- if (isNodeInstance(module2)) {
169
- prev.push(module2);
167
+ modules.reduce((prev, mod) => {
168
+ if (isNodeInstance(mod)) {
169
+ prev.push(mod);
170
170
  }
171
171
  return prev;
172
172
  }, []),
@@ -174,31 +174,69 @@ var useNodesFromNode = (filter, config) => {
174
174
  ] : [modules, error];
175
175
  };
176
176
 
177
+ // src/hooks/useWeakModuleFilterOptions.ts
178
+ var useWeakModuleFilterOptions = (config) => {
179
+ const { direction, identity, maxDepth } = config ?? {};
180
+ return { direction, identity, maxDepth };
181
+ };
182
+
177
183
  // src/hooks/useWeakModuleFromNode.ts
178
- import { usePromise as usePromise5 } from "@xylabs/react-promise";
184
+ import { usePromise as usePromise6 } from "@xylabs/react-promise";
179
185
  import { isModuleInstance as isModuleInstance2 } from "@xyo-network/module-model";
180
186
  import { useState as useState3 } from "react";
187
+
188
+ // src/hooks/useWeakNode.ts
189
+ import { usePromise as usePromise5 } from "@xylabs/react-promise";
190
+ import { asNodeInstance as asNodeInstance3 } from "@xyo-network/node-model";
191
+
192
+ // src/hooks/useWeakNodeConfigNodeField.ts
193
+ import { useMemo as useMemo3 } from "react";
194
+ var useWeakNodeConfigNodeField = (config) => {
195
+ const nodeAddress = useMemo3(() => typeof (config == null ? void 0 : config.node) === "string" ? config == null ? void 0 : config.node : void 0, [config == null ? void 0 : config.node]);
196
+ const nodeInstance = useMemo3(() => typeof (config == null ? void 0 : config.node) === "object" ? config == null ? void 0 : config.node : void 0, [config == null ? void 0 : config.node]);
197
+ return [nodeAddress, nodeInstance];
198
+ };
199
+
200
+ // src/hooks/useWeakNode.ts
201
+ var useWeakNode = (config) => {
202
+ const [nodeAddress, nodeInstance] = useWeakNodeConfigNodeField(config);
203
+ const [providedNode] = useWeakProvidedNode();
204
+ const [nodeAddressNode, error] = usePromise5(async () => {
205
+ const providedNodeInstance = providedNode == null ? void 0 : providedNode.deref();
206
+ if (providedNodeInstance && nodeAddress) {
207
+ return new WeakRef(asNodeInstance3(await providedNodeInstance.resolve(nodeAddress), "Module is not a node"));
208
+ }
209
+ }, [providedNode, nodeAddress]);
210
+ return [nodeAddressNode ?? nodeInstance ?? providedNode ?? void 0, error];
211
+ };
212
+
213
+ // src/hooks/WeakModuleFromNodeConfig.ts
214
+ var useWeakModuleFromNodeConfigLogger = (config) => {
215
+ return config == null ? void 0 : config.logger;
216
+ };
217
+
218
+ // src/hooks/useWeakModuleFromNode.ts
181
219
  var useWeakModuleFromNode = (nameOrAddressOrInstance = void 0, config) => {
182
- const [node, nodeError] = useNode(config);
183
- const logger = useModuleFromNodeConfigLogger(config);
184
- const filterOptions = useModuleFilterOptions(config);
220
+ const [node, nodeError] = useWeakNode(config);
221
+ const logger = useWeakModuleFromNodeConfigLogger(config);
222
+ const filterOptions = useWeakModuleFilterOptions(config);
185
223
  const [result, setResult] = useState3();
186
- const [, error] = usePromise5(async () => {
224
+ const [, error] = usePromise6(async () => {
187
225
  logger == null ? void 0 : logger.debug("useModuleFromNode: resolving");
188
226
  const identity = (config == null ? void 0 : config.identity) ?? isModuleInstance2;
189
- const nodeInstance = node;
227
+ const nodeInstance = node == null ? void 0 : node.deref();
190
228
  if (nodeInstance && nameOrAddressOrInstance) {
191
- nodeInstance.on("moduleAttached", ({ module: module2 }) => {
229
+ nodeInstance.on("moduleAttached", ({ module: mod }) => {
192
230
  var _a;
193
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${module2.config.name ?? module2.address}]`);
194
- if (module2.address === nameOrAddressOrInstance || ((_a = module2.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
195
- setResult(identity(module2) ? new WeakRef(module2) : void 0);
231
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`);
232
+ if (mod.address === nameOrAddressOrInstance || ((_a = mod.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
233
+ setResult(identity(mod) ? new WeakRef(mod) : void 0);
196
234
  }
197
235
  });
198
- nodeInstance.on("moduleDetached", ({ module: module2 }) => {
236
+ nodeInstance.on("moduleDetached", ({ module: mod }) => {
199
237
  var _a;
200
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${module2.config.name ?? module2.address}]`);
201
- if (module2.address === nameOrAddressOrInstance || ((_a = module2.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
238
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`);
239
+ if (mod.address === nameOrAddressOrInstance || ((_a = mod.config) == null ? void 0 : _a.name) === nameOrAddressOrInstance) {
202
240
  setResult(void 0);
203
241
  }
204
242
  });
@@ -218,31 +256,31 @@ var useWeakModuleFromNode = (nameOrAddressOrInstance = void 0, config) => {
218
256
  };
219
257
 
220
258
  // src/hooks/useWeakModulesFromNode.ts
221
- import { usePromise as usePromise6 } from "@xylabs/react-promise";
259
+ import { usePromise as usePromise7 } from "@xylabs/react-promise";
222
260
  import { useState as useState4 } from "react";
223
261
  var useWeakModulesFromNode = (filter, config) => {
224
262
  const [node, nodeError] = useNode(config);
225
263
  const logger = config == null ? void 0 : config.logger;
226
264
  const filterOptions = useModuleFilterOptions();
227
265
  const [result, setResult] = useState4();
228
- const [, error] = usePromise6(async () => {
266
+ const [, error] = usePromise7(async () => {
229
267
  logger == null ? void 0 : logger.debug("useModuleFromNode: resolving");
230
268
  const nodeInstance = node;
231
269
  if (nodeInstance) {
232
- nodeInstance.on("moduleAttached", async ({ module: module2 }) => {
270
+ nodeInstance.on("moduleAttached", async ({ module: mod }) => {
233
271
  const nodeInstance2 = node;
234
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${module2.config.name ?? module2.address}]`);
272
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleAttached [${mod.config.name ?? mod.address}]`);
235
273
  const moduleInstances2 = filter ? await (nodeInstance2 == null ? void 0 : nodeInstance2.resolve(filter, filterOptions)) : await (nodeInstance2 == null ? void 0 : nodeInstance2.resolve("*", filterOptions));
236
- setResult(moduleInstances2 == null ? void 0 : moduleInstances2.map((module3) => new WeakRef(module3)));
274
+ setResult(moduleInstances2 == null ? void 0 : moduleInstances2.map((mod2) => new WeakRef(mod2)));
237
275
  });
238
- nodeInstance.on("moduleDetached", async ({ module: module2 }) => {
276
+ nodeInstance.on("moduleDetached", async ({ module: mod }) => {
239
277
  const nodeInstance2 = node;
240
- logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${module2.config.name ?? module2.address}]`);
278
+ logger == null ? void 0 : logger.debug(`useModuleFromNode: moduleDetached [${mod.config.name ?? mod.address}]`);
241
279
  const moduleInstances2 = filter ? await (nodeInstance2 == null ? void 0 : nodeInstance2.resolve(filter, filterOptions)) : await (nodeInstance2 == null ? void 0 : nodeInstance2.resolve("*", filterOptions));
242
- setResult(moduleInstances2 == null ? void 0 : moduleInstances2.map((module3) => new WeakRef(module3)));
280
+ setResult(moduleInstances2 == null ? void 0 : moduleInstances2.map((mod2) => new WeakRef(mod2)));
243
281
  });
244
282
  const moduleInstances = filter ? await nodeInstance.resolve(filter, filterOptions) : await nodeInstance.resolve("*", filterOptions);
245
- setResult(moduleInstances == null ? void 0 : moduleInstances.map((module2) => new WeakRef(module2)));
283
+ setResult(moduleInstances == null ? void 0 : moduleInstances.map((mod) => new WeakRef(mod)));
246
284
  return moduleInstances;
247
285
  }
248
286
  console.log("Result: No Node");
@@ -251,35 +289,10 @@ var useWeakModulesFromNode = (filter, config) => {
251
289
  return [result, nodeError ?? error];
252
290
  };
253
291
 
254
- // src/hooks/useWeakNodeConfigNodeField.ts
255
- import { useMemo as useMemo3 } from "react";
256
- var useWeakNodeConfigNodeField = (config) => {
257
- const nodeAddress = useMemo3(() => typeof (config == null ? void 0 : config.node) === "string" ? config == null ? void 0 : config.node : void 0, [config == null ? void 0 : config.node]);
258
- const nodeInstance = useMemo3(() => typeof (config == null ? void 0 : config.node) === "object" ? config == null ? void 0 : config.node : void 0, [config == null ? void 0 : config.node]);
259
- return [nodeAddress, nodeInstance];
260
- };
261
-
262
292
  // src/hooks/useWeakNodeDescription.ts
263
293
  import { usePromise as usePromise8 } from "@xylabs/react-promise";
264
294
  import { ModuleDescriptionSchema as ModuleDescriptionSchema2 } from "@xyo-network/module-model";
265
295
  import { isPayloadOfSchemaType as isPayloadOfSchemaType2 } from "@xyo-network/payload-model";
266
-
267
- // src/hooks/useWeakNode.ts
268
- import { usePromise as usePromise7 } from "@xylabs/react-promise";
269
- import { asNodeInstance as asNodeInstance3 } from "@xyo-network/node-model";
270
- var useWeakNode = (config) => {
271
- const [nodeAddress, nodeInstance] = useWeakNodeConfigNodeField(config);
272
- const [providedNode] = useWeakProvidedNode();
273
- const [nodeAddressNode, error] = usePromise7(async () => {
274
- const providedNodeInstance = providedNode == null ? void 0 : providedNode.deref();
275
- if (providedNodeInstance && nodeAddress) {
276
- return new WeakRef(asNodeInstance3(await providedNodeInstance.resolve(nodeAddress), "Module is not a node"));
277
- }
278
- }, [providedNode, nodeAddress]);
279
- return [nodeAddressNode ?? nodeInstance ?? providedNode ?? void 0, error];
280
- };
281
-
282
- // src/hooks/useWeakNodeDescription.ts
283
296
  var useWeakNodeDescription = (config) => {
284
297
  const [activeNode, nodeError] = useWeakNode(config);
285
298
  const [description, error] = usePromise8(async () => {
@@ -296,11 +309,6 @@ var useWeakNodeFromNode = (nameOrAddressOrInstance, config) => {
296
309
  return useWeakModuleFromNode(nameOrAddressOrInstance, { identity: isNodeInstance2, ...config });
297
310
  };
298
311
 
299
- // src/hooks/WeakModuleFromNodeConfig.ts
300
- var useWeakModuleFromNodeConfigLogger = (config) => {
301
- return config == null ? void 0 : config.logger;
302
- };
303
-
304
312
  // src/components/NodeDescriptionBox.tsx
305
313
  import { jsx } from "react/jsx-runtime";
306
314
  var NodeDescriptionBox = ({ node, ...props }) => {
@@ -337,12 +345,12 @@ import { TreeItem } from "@mui/x-tree-view";
337
345
  import { useAsyncEffect } from "@xylabs/react-async-effect";
338
346
  import { useState as useState5 } from "react";
339
347
  import { jsx as jsx3, jsxs } from "react/jsx-runtime";
340
- var RenderModule = ({ module: module2, idRef }) => {
348
+ var RenderModule = ({ mod, idRef }) => {
341
349
  const [childModules, setChildModules] = useState5();
342
350
  useAsyncEffect(
343
351
  // eslint-disable-next-line react-hooks/exhaustive-deps
344
352
  async (mounted) => {
345
- const moduleInstance2 = module2.deref();
353
+ const moduleInstance2 = mod.deref();
346
354
  const { address: address2 } = moduleInstance2 ?? {};
347
355
  if (moduleInstance2) {
348
356
  const children = (await moduleInstance2.resolve("*")).filter((childModule) => childModule.address !== address2);
@@ -351,14 +359,14 @@ var RenderModule = ({ module: module2, idRef }) => {
351
359
  }
352
360
  }
353
361
  },
354
- [module2]
362
+ [mod]
355
363
  );
356
364
  const increment = () => {
357
365
  const newId = (idRef.current.idIncrementor++).toString();
358
366
  idRef.current.ids.push(newId);
359
367
  return newId;
360
368
  };
361
- const moduleInstance = module2.deref();
369
+ const moduleInstance = mod.deref();
362
370
  const { queries, address } = moduleInstance ?? {};
363
371
  return /* @__PURE__ */ jsxs(StyledAddressTreeItem, { nodeId: increment(), label: `address: ${address}`, children: [
364
372
  queries == null ? void 0 : queries.map((query, index) => {
@@ -366,7 +374,7 @@ var RenderModule = ({ module: module2, idRef }) => {
366
374
  }),
367
375
  childModules && childModules.length > 0 ? /* @__PURE__ */ jsx3(TreeItem, { nodeId: increment(), label: "children", sx: { mb: 0.5 }, children: childModules.map((childModuleRef) => {
368
376
  const childModule = childModuleRef.deref();
369
- return childModule ? /* @__PURE__ */ jsx3(RenderModule, { module: childModuleRef, idRef }, childModule == null ? void 0 : childModule.address) : null;
377
+ return childModule ? /* @__PURE__ */ jsx3(RenderModule, { mod: childModuleRef, idRef }, childModule == null ? void 0 : childModule.address) : null;
370
378
  }) }) : null
371
379
  ] });
372
380
  };
@@ -378,9 +386,9 @@ var StyledAddressTreeItem = styled(TreeItem, { name: "StyledAddressTreeItem" })(
378
386
 
379
387
  // src/components/render/ModuleDescriptionBox.tsx
380
388
  import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
381
- var ModuleDescriptionBox = ({ module: module2 }) => {
389
+ var ModuleDescriptionBox = ({ mod }) => {
382
390
  const idRef = useRef({ idIncrementor: 0, ids: [] });
383
- return /* @__PURE__ */ jsx4(Fragment, { children: module2 ? /* @__PURE__ */ jsxs2(Fragment, { children: [
391
+ return /* @__PURE__ */ jsx4(Fragment, { children: mod ? /* @__PURE__ */ jsxs2(Fragment, { children: [
384
392
  /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node Configuration" }),
385
393
  /* @__PURE__ */ jsx4(
386
394
  StyledTreeView,
@@ -389,10 +397,10 @@ var ModuleDescriptionBox = ({ module: module2 }) => {
389
397
  defaultCollapseIcon: /* @__PURE__ */ jsx4(ExpandMoreIcon, {}),
390
398
  defaultExpandIcon: /* @__PURE__ */ jsx4(ChevronRightIcon, {}),
391
399
  sx: { flexGrow: 1 },
392
- children: /* @__PURE__ */ jsx4(RenderModule, { module: module2, idRef })
400
+ children: /* @__PURE__ */ jsx4(RenderModule, { mod, idRef })
393
401
  }
394
402
  )
395
- ] }) : module2 === null ? /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node not found" }) });
403
+ ] }) : mod === null ? /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node loading..." }) : /* @__PURE__ */ jsx4(Typography, { variant: "h4", children: "Node not found" }) });
396
404
  };
397
405
  var StyledTreeView = styled2(TreeView, { name: "StyledTreeView" })(() => ({
398
406
  height: "auto",
@@ -406,7 +414,7 @@ var NodeDrawer = ({ children, ...props }) => {
406
414
  const [node] = useWeakProvidedNode();
407
415
  return /* @__PURE__ */ jsx5(Drawer, { open: open ?? false, anchor: "right", ...props, children: /* @__PURE__ */ jsx5(ClickAwayListener, { onClickAway: () => setOpen == null ? void 0 : setOpen(false), children: /* @__PURE__ */ jsxs3(FlexGrowCol, { role: "presentation", justifyContent: "start", p: 2, rowGap: 2, minWidth: "33vw", children: [
408
416
  /* @__PURE__ */ jsx5(FlexRow, { alignContent: "start", justifyContent: "start", width: "100%", children: /* @__PURE__ */ jsx5(IconButton, { onClick: () => setOpen == null ? void 0 : setOpen(false), children: /* @__PURE__ */ jsx5(CloseIcon, {}) }) }),
409
- /* @__PURE__ */ jsx5(ModuleDescriptionBox, { module: node }),
417
+ /* @__PURE__ */ jsx5(ModuleDescriptionBox, { mod: node }),
410
418
  children
411
419
  ] }) }) });
412
420
  };
@@ -427,6 +435,7 @@ export {
427
435
  useNodeFromNode,
428
436
  useNodesFromNode,
429
437
  useProvidedNode,
438
+ useWeakModuleFilterOptions,
430
439
  useWeakModuleFromNode,
431
440
  useWeakModuleFromNodeConfigLogger,
432
441
  useWeakModulesFromNode,