@xyo-network/react-node-renderer 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 (458) hide show
  1. package/dist/browser/hooks/cytoscape/useModuleDetails.d.cts +2 -2
  2. package/dist/browser/hooks/cytoscape/useModuleDetails.d.mts +2 -2
  3. package/dist/browser/hooks/cytoscape/useModuleDetails.d.ts +2 -2
  4. package/dist/browser/index.cjs +4 -4
  5. package/dist/browser/index.cjs.map +1 -1
  6. package/dist/browser/index.js +4 -4
  7. package/dist/browser/index.js.map +1 -1
  8. package/dist/docs.json +19331 -9575
  9. package/dist/node/hooks/cytoscape/useModuleDetails.d.cts +2 -2
  10. package/dist/node/hooks/cytoscape/useModuleDetails.d.mts +2 -2
  11. package/dist/node/hooks/cytoscape/useModuleDetails.d.ts +2 -2
  12. package/dist/node/index.cjs +4 -4
  13. package/dist/node/index.cjs.map +1 -1
  14. package/dist/node/index.js +4 -4
  15. package/dist/node/index.js.map +1 -1
  16. package/package.json +29 -29
  17. package/src/components/module/graph/DetailsFlexbox.tsx +2 -2
  18. package/src/components/module/graph/Popper.tsx +2 -2
  19. package/dist/browser/Cytoscape/CytoscapeElements.cjs +0 -132
  20. package/dist/browser/Cytoscape/CytoscapeElements.cjs.map +0 -1
  21. package/dist/browser/Cytoscape/CytoscapeElements.js +0 -111
  22. package/dist/browser/Cytoscape/CytoscapeElements.js.map +0 -1
  23. package/dist/browser/Cytoscape/CytoscapeIcons.cjs +0 -36
  24. package/dist/browser/Cytoscape/CytoscapeIcons.cjs.map +0 -1
  25. package/dist/browser/Cytoscape/CytoscapeIcons.js +0 -23
  26. package/dist/browser/Cytoscape/CytoscapeIcons.js.map +0 -1
  27. package/dist/browser/Cytoscape/CytoscapeStyles.cjs +0 -70
  28. package/dist/browser/Cytoscape/CytoscapeStyles.cjs.map +0 -1
  29. package/dist/browser/Cytoscape/CytoscapeStyles.js +0 -49
  30. package/dist/browser/Cytoscape/CytoscapeStyles.js.map +0 -1
  31. package/dist/browser/Cytoscape/index.cjs +0 -244
  32. package/dist/browser/Cytoscape/index.cjs.map +0 -1
  33. package/dist/browser/Cytoscape/index.js +0 -229
  34. package/dist/browser/Cytoscape/index.js.map +0 -1
  35. package/dist/browser/Cytoscape/lib/CyNodeModuleTypes.cjs +0 -19
  36. package/dist/browser/Cytoscape/lib/CyNodeModuleTypes.cjs.map +0 -1
  37. package/dist/browser/Cytoscape/lib/CyNodeModuleTypes.js +0 -1
  38. package/dist/browser/Cytoscape/lib/CyNodeModuleTypes.js.map +0 -1
  39. package/dist/browser/Cytoscape/lib/encodeSvg.cjs +0 -39
  40. package/dist/browser/Cytoscape/lib/encodeSvg.cjs.map +0 -1
  41. package/dist/browser/Cytoscape/lib/encodeSvg.js +0 -18
  42. package/dist/browser/Cytoscape/lib/encodeSvg.js.map +0 -1
  43. package/dist/browser/Cytoscape/lib/iconMap.cjs +0 -35
  44. package/dist/browser/Cytoscape/lib/iconMap.cjs.map +0 -1
  45. package/dist/browser/Cytoscape/lib/iconMap.js +0 -14
  46. package/dist/browser/Cytoscape/lib/iconMap.js.map +0 -1
  47. package/dist/browser/Cytoscape/lib/index.cjs +0 -104
  48. package/dist/browser/Cytoscape/lib/index.cjs.map +0 -1
  49. package/dist/browser/Cytoscape/lib/index.js +0 -81
  50. package/dist/browser/Cytoscape/lib/index.js.map +0 -1
  51. package/dist/browser/Cytoscape/lib/layout/ColaLayout.cjs +0 -31
  52. package/dist/browser/Cytoscape/lib/layout/ColaLayout.cjs.map +0 -1
  53. package/dist/browser/Cytoscape/lib/layout/ColaLayout.js +0 -10
  54. package/dist/browser/Cytoscape/lib/layout/ColaLayout.js.map +0 -1
  55. package/dist/browser/Cytoscape/lib/layout/ConcentricLayout.cjs +0 -36
  56. package/dist/browser/Cytoscape/lib/layout/ConcentricLayout.cjs.map +0 -1
  57. package/dist/browser/Cytoscape/lib/layout/ConcentricLayout.js +0 -15
  58. package/dist/browser/Cytoscape/lib/layout/ConcentricLayout.js.map +0 -1
  59. package/dist/browser/Cytoscape/lib/layout/index.cjs +0 -46
  60. package/dist/browser/Cytoscape/lib/layout/index.cjs.map +0 -1
  61. package/dist/browser/Cytoscape/lib/layout/index.js +0 -23
  62. package/dist/browser/Cytoscape/lib/layout/index.js.map +0 -1
  63. package/dist/browser/Cytoscape/lib/parseModuleType.cjs +0 -53
  64. package/dist/browser/Cytoscape/lib/parseModuleType.cjs.map +0 -1
  65. package/dist/browser/Cytoscape/lib/parseModuleType.js +0 -32
  66. package/dist/browser/Cytoscape/lib/parseModuleType.js.map +0 -1
  67. package/dist/browser/components/cytoscape-extensions/WithExtensions.cjs +0 -48
  68. package/dist/browser/components/cytoscape-extensions/WithExtensions.cjs.map +0 -1
  69. package/dist/browser/components/cytoscape-extensions/WithExtensions.js +0 -17
  70. package/dist/browser/components/cytoscape-extensions/WithExtensions.js.map +0 -1
  71. package/dist/browser/components/cytoscape-extensions/index.cjs +0 -50
  72. package/dist/browser/components/cytoscape-extensions/index.cjs.map +0 -1
  73. package/dist/browser/components/cytoscape-extensions/index.js +0 -17
  74. package/dist/browser/components/cytoscape-extensions/index.js.map +0 -1
  75. package/dist/browser/components/index.cjs +0 -740
  76. package/dist/browser/components/index.cjs.map +0 -1
  77. package/dist/browser/components/index.js +0 -715
  78. package/dist/browser/components/index.js.map +0 -1
  79. package/dist/browser/components/lib/RelationalGraphProps.cjs +0 -19
  80. package/dist/browser/components/lib/RelationalGraphProps.cjs.map +0 -1
  81. package/dist/browser/components/lib/RelationalGraphProps.js +0 -1
  82. package/dist/browser/components/lib/RelationalGraphProps.js.map +0 -1
  83. package/dist/browser/components/lib/index.cjs +0 -19
  84. package/dist/browser/components/lib/index.cjs.map +0 -1
  85. package/dist/browser/components/lib/index.js +0 -1
  86. package/dist/browser/components/lib/index.js.map +0 -1
  87. package/dist/browser/components/module/CardParser.cjs +0 -41
  88. package/dist/browser/components/module/CardParser.cjs.map +0 -1
  89. package/dist/browser/components/module/CardParser.js +0 -20
  90. package/dist/browser/components/module/CardParser.js.map +0 -1
  91. package/dist/browser/components/module/graph/DetailsFlexbox.cjs +0 -46
  92. package/dist/browser/components/module/graph/DetailsFlexbox.cjs.map +0 -1
  93. package/dist/browser/components/module/graph/DetailsFlexbox.js +0 -15
  94. package/dist/browser/components/module/graph/DetailsFlexbox.js.map +0 -1
  95. package/dist/browser/components/module/graph/GraphFlexBox.cjs +0 -706
  96. package/dist/browser/components/module/graph/GraphFlexBox.cjs.map +0 -1
  97. package/dist/browser/components/module/graph/GraphFlexBox.js +0 -683
  98. package/dist/browser/components/module/graph/GraphFlexBox.js.map +0 -1
  99. package/dist/browser/components/module/graph/Popper.cjs +0 -67
  100. package/dist/browser/components/module/graph/Popper.cjs.map +0 -1
  101. package/dist/browser/components/module/graph/Popper.js +0 -36
  102. package/dist/browser/components/module/graph/Popper.js.map +0 -1
  103. package/dist/browser/components/module/graph/index.cjs +0 -708
  104. package/dist/browser/components/module/graph/index.cjs.map +0 -1
  105. package/dist/browser/components/module/graph/index.js +0 -683
  106. package/dist/browser/components/module/graph/index.js.map +0 -1
  107. package/dist/browser/components/module/graph/node/Hover.cjs +0 -74
  108. package/dist/browser/components/module/graph/node/Hover.cjs.map +0 -1
  109. package/dist/browser/components/module/graph/node/Hover.js +0 -53
  110. package/dist/browser/components/module/graph/node/Hover.js.map +0 -1
  111. package/dist/browser/components/module/graph/node/hooks/index.cjs +0 -53
  112. package/dist/browser/components/module/graph/node/hooks/index.cjs.map +0 -1
  113. package/dist/browser/components/module/graph/node/hooks/index.js +0 -30
  114. package/dist/browser/components/module/graph/node/hooks/index.js.map +0 -1
  115. package/dist/browser/components/module/graph/node/hooks/useNodeElement.cjs +0 -51
  116. package/dist/browser/components/module/graph/node/hooks/useNodeElement.cjs.map +0 -1
  117. package/dist/browser/components/module/graph/node/hooks/useNodeElement.js +0 -30
  118. package/dist/browser/components/module/graph/node/hooks/useNodeElement.js.map +0 -1
  119. package/dist/browser/components/module/graph/node/index.cjs +0 -76
  120. package/dist/browser/components/module/graph/node/index.cjs.map +0 -1
  121. package/dist/browser/components/module/graph/node/index.js +0 -53
  122. package/dist/browser/components/module/graph/node/index.js.map +0 -1
  123. package/dist/browser/components/module/index.cjs +0 -726
  124. package/dist/browser/components/module/index.cjs.map +0 -1
  125. package/dist/browser/components/module/index.js +0 -701
  126. package/dist/browser/components/module/index.js.map +0 -1
  127. package/dist/browser/components/relational/graph/Graph.cjs +0 -102
  128. package/dist/browser/components/relational/graph/Graph.cjs.map +0 -1
  129. package/dist/browser/components/relational/graph/Graph.js +0 -71
  130. package/dist/browser/components/relational/graph/Graph.js.map +0 -1
  131. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.cjs +0 -407
  132. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.cjs.map +0 -1
  133. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.js +0 -384
  134. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.js.map +0 -1
  135. package/dist/browser/components/relational/graph/index.cjs +0 -414
  136. package/dist/browser/components/relational/graph/index.cjs.map +0 -1
  137. package/dist/browser/components/relational/graph/index.js +0 -389
  138. package/dist/browser/components/relational/graph/index.js.map +0 -1
  139. package/dist/browser/components/relational/graph/story/TestData.cjs +0 -70
  140. package/dist/browser/components/relational/graph/story/TestData.cjs.map +0 -1
  141. package/dist/browser/components/relational/graph/story/TestData.js +0 -49
  142. package/dist/browser/components/relational/graph/story/TestData.js.map +0 -1
  143. package/dist/browser/components/relational/graph/story/index.cjs +0 -72
  144. package/dist/browser/components/relational/graph/story/index.cjs.map +0 -1
  145. package/dist/browser/components/relational/graph/story/index.js +0 -49
  146. package/dist/browser/components/relational/graph/story/index.js.map +0 -1
  147. package/dist/browser/components/relational/index.cjs +0 -414
  148. package/dist/browser/components/relational/index.cjs.map +0 -1
  149. package/dist/browser/components/relational/index.js +0 -389
  150. package/dist/browser/components/relational/index.js.map +0 -1
  151. package/dist/browser/contexts/CytoscapeInstance/Context.cjs +0 -28
  152. package/dist/browser/contexts/CytoscapeInstance/Context.cjs.map +0 -1
  153. package/dist/browser/contexts/CytoscapeInstance/Context.js +0 -7
  154. package/dist/browser/contexts/CytoscapeInstance/Context.js.map +0 -1
  155. package/dist/browser/contexts/CytoscapeInstance/Provider.cjs +0 -41
  156. package/dist/browser/contexts/CytoscapeInstance/Provider.cjs.map +0 -1
  157. package/dist/browser/contexts/CytoscapeInstance/Provider.js +0 -20
  158. package/dist/browser/contexts/CytoscapeInstance/Provider.js.map +0 -1
  159. package/dist/browser/contexts/CytoscapeInstance/State.cjs +0 -19
  160. package/dist/browser/contexts/CytoscapeInstance/State.cjs.map +0 -1
  161. package/dist/browser/contexts/CytoscapeInstance/State.js +0 -1
  162. package/dist/browser/contexts/CytoscapeInstance/State.js.map +0 -1
  163. package/dist/browser/contexts/CytoscapeInstance/index.cjs +0 -47
  164. package/dist/browser/contexts/CytoscapeInstance/index.cjs.map +0 -1
  165. package/dist/browser/contexts/CytoscapeInstance/index.js +0 -24
  166. package/dist/browser/contexts/CytoscapeInstance/index.js.map +0 -1
  167. package/dist/browser/contexts/CytoscapeInstance/use.cjs +0 -34
  168. package/dist/browser/contexts/CytoscapeInstance/use.cjs.map +0 -1
  169. package/dist/browser/contexts/CytoscapeInstance/use.js +0 -13
  170. package/dist/browser/contexts/CytoscapeInstance/use.js.map +0 -1
  171. package/dist/browser/contexts/index.cjs +0 -47
  172. package/dist/browser/contexts/index.cjs.map +0 -1
  173. package/dist/browser/contexts/index.js +0 -24
  174. package/dist/browser/contexts/index.js.map +0 -1
  175. package/dist/browser/hooks/cytoscape/elements/index.cjs +0 -267
  176. package/dist/browser/hooks/cytoscape/elements/index.cjs.map +0 -1
  177. package/dist/browser/hooks/cytoscape/elements/index.js +0 -244
  178. package/dist/browser/hooks/cytoscape/elements/index.js.map +0 -1
  179. package/dist/browser/hooks/cytoscape/elements/useCytoscapeElements.cjs +0 -171
  180. package/dist/browser/hooks/cytoscape/elements/useCytoscapeElements.cjs.map +0 -1
  181. package/dist/browser/hooks/cytoscape/elements/useCytoscapeElements.js +0 -150
  182. package/dist/browser/hooks/cytoscape/elements/useCytoscapeElements.js.map +0 -1
  183. package/dist/browser/hooks/cytoscape/elements/useElements.cjs +0 -268
  184. package/dist/browser/hooks/cytoscape/elements/useElements.cjs.map +0 -1
  185. package/dist/browser/hooks/cytoscape/elements/useElements.js +0 -245
  186. package/dist/browser/hooks/cytoscape/elements/useElements.js.map +0 -1
  187. package/dist/browser/hooks/cytoscape/elements/useHoveredNode.cjs +0 -57
  188. package/dist/browser/hooks/cytoscape/elements/useHoveredNode.cjs.map +0 -1
  189. package/dist/browser/hooks/cytoscape/elements/useHoveredNode.js +0 -36
  190. package/dist/browser/hooks/cytoscape/elements/useHoveredNode.js.map +0 -1
  191. package/dist/browser/hooks/cytoscape/elements/useNewElements.cjs +0 -182
  192. package/dist/browser/hooks/cytoscape/elements/useNewElements.cjs.map +0 -1
  193. package/dist/browser/hooks/cytoscape/elements/useNewElements.js +0 -161
  194. package/dist/browser/hooks/cytoscape/elements/useNewElements.js.map +0 -1
  195. package/dist/browser/hooks/cytoscape/elements/useRenderNewElements.cjs +0 -56
  196. package/dist/browser/hooks/cytoscape/elements/useRenderNewElements.cjs.map +0 -1
  197. package/dist/browser/hooks/cytoscape/elements/useRenderNewElements.js +0 -35
  198. package/dist/browser/hooks/cytoscape/elements/useRenderNewElements.js.map +0 -1
  199. package/dist/browser/hooks/cytoscape/elements/useSelectedElement.cjs +0 -54
  200. package/dist/browser/hooks/cytoscape/elements/useSelectedElement.cjs.map +0 -1
  201. package/dist/browser/hooks/cytoscape/elements/useSelectedElement.js +0 -33
  202. package/dist/browser/hooks/cytoscape/elements/useSelectedElement.js.map +0 -1
  203. package/dist/browser/hooks/cytoscape/index.cjs +0 -488
  204. package/dist/browser/hooks/cytoscape/index.cjs.map +0 -1
  205. package/dist/browser/hooks/cytoscape/index.js +0 -473
  206. package/dist/browser/hooks/cytoscape/index.js.map +0 -1
  207. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.cjs +0 -174
  208. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.cjs.map +0 -1
  209. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.js +0 -161
  210. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.js.map +0 -1
  211. package/dist/browser/hooks/cytoscape/useCytoscapeStyle.cjs +0 -142
  212. package/dist/browser/hooks/cytoscape/useCytoscapeStyle.cjs.map +0 -1
  213. package/dist/browser/hooks/cytoscape/useCytoscapeStyle.js +0 -129
  214. package/dist/browser/hooks/cytoscape/useCytoscapeStyle.js.map +0 -1
  215. package/dist/browser/hooks/cytoscape/useIcons.cjs +0 -81
  216. package/dist/browser/hooks/cytoscape/useIcons.cjs.map +0 -1
  217. package/dist/browser/hooks/cytoscape/useIcons.js +0 -68
  218. package/dist/browser/hooks/cytoscape/useIcons.js.map +0 -1
  219. package/dist/browser/hooks/cytoscape/useModuleDetails.cjs +0 -89
  220. package/dist/browser/hooks/cytoscape/useModuleDetails.cjs.map +0 -1
  221. package/dist/browser/hooks/cytoscape/useModuleDetails.js +0 -68
  222. package/dist/browser/hooks/cytoscape/useModuleDetails.js.map +0 -1
  223. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.cjs +0 -334
  224. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.cjs.map +0 -1
  225. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.js +0 -321
  226. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.js.map +0 -1
  227. package/dist/browser/hooks/index.cjs +0 -488
  228. package/dist/browser/hooks/index.cjs.map +0 -1
  229. package/dist/browser/hooks/index.js +0 -473
  230. package/dist/browser/hooks/index.js.map +0 -1
  231. package/dist/browser/types/global.d.cjs +0 -2
  232. package/dist/browser/types/global.d.cjs.map +0 -1
  233. package/dist/browser/types/global.d.js +0 -1
  234. package/dist/browser/types/global.d.js.map +0 -1
  235. package/dist/browser/types/images.d.cjs +0 -2
  236. package/dist/browser/types/images.d.cjs.map +0 -1
  237. package/dist/browser/types/images.d.js +0 -1
  238. package/dist/browser/types/images.d.js.map +0 -1
  239. package/dist/node/Cytoscape/CytoscapeElements.cjs +0 -136
  240. package/dist/node/Cytoscape/CytoscapeElements.cjs.map +0 -1
  241. package/dist/node/Cytoscape/CytoscapeElements.js +0 -111
  242. package/dist/node/Cytoscape/CytoscapeElements.js.map +0 -1
  243. package/dist/node/Cytoscape/CytoscapeIcons.cjs +0 -40
  244. package/dist/node/Cytoscape/CytoscapeIcons.cjs.map +0 -1
  245. package/dist/node/Cytoscape/CytoscapeIcons.js +0 -23
  246. package/dist/node/Cytoscape/CytoscapeIcons.js.map +0 -1
  247. package/dist/node/Cytoscape/CytoscapeStyles.cjs +0 -77
  248. package/dist/node/Cytoscape/CytoscapeStyles.cjs.map +0 -1
  249. package/dist/node/Cytoscape/CytoscapeStyles.js +0 -49
  250. package/dist/node/Cytoscape/CytoscapeStyles.js.map +0 -1
  251. package/dist/node/Cytoscape/index.cjs +0 -258
  252. package/dist/node/Cytoscape/index.cjs.map +0 -1
  253. package/dist/node/Cytoscape/index.js +0 -229
  254. package/dist/node/Cytoscape/index.js.map +0 -1
  255. package/dist/node/Cytoscape/lib/CyNodeModuleTypes.cjs +0 -19
  256. package/dist/node/Cytoscape/lib/CyNodeModuleTypes.cjs.map +0 -1
  257. package/dist/node/Cytoscape/lib/CyNodeModuleTypes.js +0 -1
  258. package/dist/node/Cytoscape/lib/CyNodeModuleTypes.js.map +0 -1
  259. package/dist/node/Cytoscape/lib/encodeSvg.cjs +0 -43
  260. package/dist/node/Cytoscape/lib/encodeSvg.cjs.map +0 -1
  261. package/dist/node/Cytoscape/lib/encodeSvg.js +0 -18
  262. package/dist/node/Cytoscape/lib/encodeSvg.js.map +0 -1
  263. package/dist/node/Cytoscape/lib/iconMap.cjs +0 -39
  264. package/dist/node/Cytoscape/lib/iconMap.cjs.map +0 -1
  265. package/dist/node/Cytoscape/lib/iconMap.js +0 -14
  266. package/dist/node/Cytoscape/lib/iconMap.js.map +0 -1
  267. package/dist/node/Cytoscape/lib/index.cjs +0 -112
  268. package/dist/node/Cytoscape/lib/index.cjs.map +0 -1
  269. package/dist/node/Cytoscape/lib/index.js +0 -81
  270. package/dist/node/Cytoscape/lib/index.js.map +0 -1
  271. package/dist/node/Cytoscape/lib/layout/ColaLayout.cjs +0 -35
  272. package/dist/node/Cytoscape/lib/layout/ColaLayout.cjs.map +0 -1
  273. package/dist/node/Cytoscape/lib/layout/ColaLayout.js +0 -10
  274. package/dist/node/Cytoscape/lib/layout/ColaLayout.js.map +0 -1
  275. package/dist/node/Cytoscape/lib/layout/ConcentricLayout.cjs +0 -40
  276. package/dist/node/Cytoscape/lib/layout/ConcentricLayout.cjs.map +0 -1
  277. package/dist/node/Cytoscape/lib/layout/ConcentricLayout.js +0 -15
  278. package/dist/node/Cytoscape/lib/layout/ConcentricLayout.js.map +0 -1
  279. package/dist/node/Cytoscape/lib/layout/index.cjs +0 -51
  280. package/dist/node/Cytoscape/lib/layout/index.cjs.map +0 -1
  281. package/dist/node/Cytoscape/lib/layout/index.js +0 -23
  282. package/dist/node/Cytoscape/lib/layout/index.js.map +0 -1
  283. package/dist/node/Cytoscape/lib/parseModuleType.cjs +0 -57
  284. package/dist/node/Cytoscape/lib/parseModuleType.cjs.map +0 -1
  285. package/dist/node/Cytoscape/lib/parseModuleType.js +0 -32
  286. package/dist/node/Cytoscape/lib/parseModuleType.js.map +0 -1
  287. package/dist/node/components/cytoscape-extensions/WithExtensions.cjs +0 -52
  288. package/dist/node/components/cytoscape-extensions/WithExtensions.cjs.map +0 -1
  289. package/dist/node/components/cytoscape-extensions/WithExtensions.js +0 -17
  290. package/dist/node/components/cytoscape-extensions/WithExtensions.js.map +0 -1
  291. package/dist/node/components/cytoscape-extensions/index.cjs +0 -54
  292. package/dist/node/components/cytoscape-extensions/index.cjs.map +0 -1
  293. package/dist/node/components/cytoscape-extensions/index.js +0 -17
  294. package/dist/node/components/cytoscape-extensions/index.js.map +0 -1
  295. package/dist/node/components/index.cjs +0 -751
  296. package/dist/node/components/index.cjs.map +0 -1
  297. package/dist/node/components/index.js +0 -717
  298. package/dist/node/components/index.js.map +0 -1
  299. package/dist/node/components/lib/RelationalGraphProps.cjs +0 -19
  300. package/dist/node/components/lib/RelationalGraphProps.cjs.map +0 -1
  301. package/dist/node/components/lib/RelationalGraphProps.js +0 -1
  302. package/dist/node/components/lib/RelationalGraphProps.js.map +0 -1
  303. package/dist/node/components/lib/index.cjs +0 -19
  304. package/dist/node/components/lib/index.cjs.map +0 -1
  305. package/dist/node/components/lib/index.js +0 -1
  306. package/dist/node/components/lib/index.js.map +0 -1
  307. package/dist/node/components/module/CardParser.cjs +0 -45
  308. package/dist/node/components/module/CardParser.cjs.map +0 -1
  309. package/dist/node/components/module/CardParser.js +0 -20
  310. package/dist/node/components/module/CardParser.js.map +0 -1
  311. package/dist/node/components/module/graph/DetailsFlexbox.cjs +0 -50
  312. package/dist/node/components/module/graph/DetailsFlexbox.cjs.map +0 -1
  313. package/dist/node/components/module/graph/DetailsFlexbox.js +0 -15
  314. package/dist/node/components/module/graph/DetailsFlexbox.js.map +0 -1
  315. package/dist/node/components/module/graph/GraphFlexBox.cjs +0 -713
  316. package/dist/node/components/module/graph/GraphFlexBox.cjs.map +0 -1
  317. package/dist/node/components/module/graph/GraphFlexBox.js +0 -685
  318. package/dist/node/components/module/graph/GraphFlexBox.js.map +0 -1
  319. package/dist/node/components/module/graph/Popper.cjs +0 -73
  320. package/dist/node/components/module/graph/Popper.cjs.map +0 -1
  321. package/dist/node/components/module/graph/Popper.js +0 -36
  322. package/dist/node/components/module/graph/Popper.js.map +0 -1
  323. package/dist/node/components/module/graph/index.cjs +0 -715
  324. package/dist/node/components/module/graph/index.cjs.map +0 -1
  325. package/dist/node/components/module/graph/index.js +0 -685
  326. package/dist/node/components/module/graph/index.js.map +0 -1
  327. package/dist/node/components/module/graph/node/Hover.cjs +0 -78
  328. package/dist/node/components/module/graph/node/Hover.cjs.map +0 -1
  329. package/dist/node/components/module/graph/node/Hover.js +0 -53
  330. package/dist/node/components/module/graph/node/Hover.js.map +0 -1
  331. package/dist/node/components/module/graph/node/hooks/index.cjs +0 -57
  332. package/dist/node/components/module/graph/node/hooks/index.cjs.map +0 -1
  333. package/dist/node/components/module/graph/node/hooks/index.js +0 -30
  334. package/dist/node/components/module/graph/node/hooks/index.js.map +0 -1
  335. package/dist/node/components/module/graph/node/hooks/useNodeElement.cjs +0 -55
  336. package/dist/node/components/module/graph/node/hooks/useNodeElement.cjs.map +0 -1
  337. package/dist/node/components/module/graph/node/hooks/useNodeElement.js +0 -30
  338. package/dist/node/components/module/graph/node/hooks/useNodeElement.js.map +0 -1
  339. package/dist/node/components/module/graph/node/index.cjs +0 -80
  340. package/dist/node/components/module/graph/node/index.cjs.map +0 -1
  341. package/dist/node/components/module/graph/node/index.js +0 -53
  342. package/dist/node/components/module/graph/node/index.js.map +0 -1
  343. package/dist/node/components/module/index.cjs +0 -734
  344. package/dist/node/components/module/index.cjs.map +0 -1
  345. package/dist/node/components/module/index.js +0 -703
  346. package/dist/node/components/module/index.js.map +0 -1
  347. package/dist/node/components/relational/graph/Graph.cjs +0 -107
  348. package/dist/node/components/relational/graph/Graph.cjs.map +0 -1
  349. package/dist/node/components/relational/graph/Graph.js +0 -71
  350. package/dist/node/components/relational/graph/Graph.js.map +0 -1
  351. package/dist/node/components/relational/graph/ProvidedNodeRenderer.cjs +0 -411
  352. package/dist/node/components/relational/graph/ProvidedNodeRenderer.cjs.map +0 -1
  353. package/dist/node/components/relational/graph/ProvidedNodeRenderer.js +0 -384
  354. package/dist/node/components/relational/graph/ProvidedNodeRenderer.js.map +0 -1
  355. package/dist/node/components/relational/graph/index.cjs +0 -420
  356. package/dist/node/components/relational/graph/index.cjs.map +0 -1
  357. package/dist/node/components/relational/graph/index.js +0 -389
  358. package/dist/node/components/relational/graph/index.js.map +0 -1
  359. package/dist/node/components/relational/graph/story/TestData.cjs +0 -74
  360. package/dist/node/components/relational/graph/story/TestData.cjs.map +0 -1
  361. package/dist/node/components/relational/graph/story/TestData.js +0 -49
  362. package/dist/node/components/relational/graph/story/TestData.js.map +0 -1
  363. package/dist/node/components/relational/graph/story/index.cjs +0 -76
  364. package/dist/node/components/relational/graph/story/index.cjs.map +0 -1
  365. package/dist/node/components/relational/graph/story/index.js +0 -49
  366. package/dist/node/components/relational/graph/story/index.js.map +0 -1
  367. package/dist/node/components/relational/index.cjs +0 -420
  368. package/dist/node/components/relational/index.cjs.map +0 -1
  369. package/dist/node/components/relational/index.js +0 -389
  370. package/dist/node/components/relational/index.js.map +0 -1
  371. package/dist/node/contexts/CytoscapeInstance/Context.cjs +0 -32
  372. package/dist/node/contexts/CytoscapeInstance/Context.cjs.map +0 -1
  373. package/dist/node/contexts/CytoscapeInstance/Context.js +0 -7
  374. package/dist/node/contexts/CytoscapeInstance/Context.js.map +0 -1
  375. package/dist/node/contexts/CytoscapeInstance/Provider.cjs +0 -45
  376. package/dist/node/contexts/CytoscapeInstance/Provider.cjs.map +0 -1
  377. package/dist/node/contexts/CytoscapeInstance/Provider.js +0 -20
  378. package/dist/node/contexts/CytoscapeInstance/Provider.js.map +0 -1
  379. package/dist/node/contexts/CytoscapeInstance/State.cjs +0 -19
  380. package/dist/node/contexts/CytoscapeInstance/State.cjs.map +0 -1
  381. package/dist/node/contexts/CytoscapeInstance/State.js +0 -1
  382. package/dist/node/contexts/CytoscapeInstance/State.js.map +0 -1
  383. package/dist/node/contexts/CytoscapeInstance/index.cjs +0 -53
  384. package/dist/node/contexts/CytoscapeInstance/index.cjs.map +0 -1
  385. package/dist/node/contexts/CytoscapeInstance/index.js +0 -24
  386. package/dist/node/contexts/CytoscapeInstance/index.js.map +0 -1
  387. package/dist/node/contexts/CytoscapeInstance/use.cjs +0 -38
  388. package/dist/node/contexts/CytoscapeInstance/use.cjs.map +0 -1
  389. package/dist/node/contexts/CytoscapeInstance/use.js +0 -13
  390. package/dist/node/contexts/CytoscapeInstance/use.js.map +0 -1
  391. package/dist/node/contexts/index.cjs +0 -53
  392. package/dist/node/contexts/index.cjs.map +0 -1
  393. package/dist/node/contexts/index.js +0 -24
  394. package/dist/node/contexts/index.js.map +0 -1
  395. package/dist/node/hooks/cytoscape/elements/index.cjs +0 -273
  396. package/dist/node/hooks/cytoscape/elements/index.cjs.map +0 -1
  397. package/dist/node/hooks/cytoscape/elements/index.js +0 -245
  398. package/dist/node/hooks/cytoscape/elements/index.js.map +0 -1
  399. package/dist/node/hooks/cytoscape/elements/useCytoscapeElements.cjs +0 -175
  400. package/dist/node/hooks/cytoscape/elements/useCytoscapeElements.cjs.map +0 -1
  401. package/dist/node/hooks/cytoscape/elements/useCytoscapeElements.js +0 -150
  402. package/dist/node/hooks/cytoscape/elements/useCytoscapeElements.js.map +0 -1
  403. package/dist/node/hooks/cytoscape/elements/useElements.cjs +0 -273
  404. package/dist/node/hooks/cytoscape/elements/useElements.cjs.map +0 -1
  405. package/dist/node/hooks/cytoscape/elements/useElements.js +0 -246
  406. package/dist/node/hooks/cytoscape/elements/useElements.js.map +0 -1
  407. package/dist/node/hooks/cytoscape/elements/useHoveredNode.cjs +0 -61
  408. package/dist/node/hooks/cytoscape/elements/useHoveredNode.cjs.map +0 -1
  409. package/dist/node/hooks/cytoscape/elements/useHoveredNode.js +0 -36
  410. package/dist/node/hooks/cytoscape/elements/useHoveredNode.js.map +0 -1
  411. package/dist/node/hooks/cytoscape/elements/useNewElements.cjs +0 -186
  412. package/dist/node/hooks/cytoscape/elements/useNewElements.cjs.map +0 -1
  413. package/dist/node/hooks/cytoscape/elements/useNewElements.js +0 -161
  414. package/dist/node/hooks/cytoscape/elements/useNewElements.js.map +0 -1
  415. package/dist/node/hooks/cytoscape/elements/useRenderNewElements.cjs +0 -60
  416. package/dist/node/hooks/cytoscape/elements/useRenderNewElements.cjs.map +0 -1
  417. package/dist/node/hooks/cytoscape/elements/useRenderNewElements.js +0 -35
  418. package/dist/node/hooks/cytoscape/elements/useRenderNewElements.js.map +0 -1
  419. package/dist/node/hooks/cytoscape/elements/useSelectedElement.cjs +0 -59
  420. package/dist/node/hooks/cytoscape/elements/useSelectedElement.cjs.map +0 -1
  421. package/dist/node/hooks/cytoscape/elements/useSelectedElement.js +0 -34
  422. package/dist/node/hooks/cytoscape/elements/useSelectedElement.js.map +0 -1
  423. package/dist/node/hooks/cytoscape/index.cjs +0 -498
  424. package/dist/node/hooks/cytoscape/index.cjs.map +0 -1
  425. package/dist/node/hooks/cytoscape/index.js +0 -475
  426. package/dist/node/hooks/cytoscape/index.js.map +0 -1
  427. package/dist/node/hooks/cytoscape/useCytoscapeOptions.cjs +0 -178
  428. package/dist/node/hooks/cytoscape/useCytoscapeOptions.cjs.map +0 -1
  429. package/dist/node/hooks/cytoscape/useCytoscapeOptions.js +0 -161
  430. package/dist/node/hooks/cytoscape/useCytoscapeOptions.js.map +0 -1
  431. package/dist/node/hooks/cytoscape/useCytoscapeStyle.cjs +0 -146
  432. package/dist/node/hooks/cytoscape/useCytoscapeStyle.cjs.map +0 -1
  433. package/dist/node/hooks/cytoscape/useCytoscapeStyle.js +0 -129
  434. package/dist/node/hooks/cytoscape/useCytoscapeStyle.js.map +0 -1
  435. package/dist/node/hooks/cytoscape/useIcons.cjs +0 -85
  436. package/dist/node/hooks/cytoscape/useIcons.cjs.map +0 -1
  437. package/dist/node/hooks/cytoscape/useIcons.js +0 -68
  438. package/dist/node/hooks/cytoscape/useIcons.js.map +0 -1
  439. package/dist/node/hooks/cytoscape/useModuleDetails.cjs +0 -94
  440. package/dist/node/hooks/cytoscape/useModuleDetails.cjs.map +0 -1
  441. package/dist/node/hooks/cytoscape/useModuleDetails.js +0 -69
  442. package/dist/node/hooks/cytoscape/useModuleDetails.js.map +0 -1
  443. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.cjs +0 -338
  444. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.cjs.map +0 -1
  445. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.js +0 -321
  446. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.js.map +0 -1
  447. package/dist/node/hooks/index.cjs +0 -498
  448. package/dist/node/hooks/index.cjs.map +0 -1
  449. package/dist/node/hooks/index.js +0 -475
  450. package/dist/node/hooks/index.js.map +0 -1
  451. package/dist/node/types/global.d.cjs +0 -2
  452. package/dist/node/types/global.d.cjs.map +0 -1
  453. package/dist/node/types/global.d.js +0 -1
  454. package/dist/node/types/global.d.js.map +0 -1
  455. package/dist/node/types/images.d.cjs +0 -2
  456. package/dist/node/types/images.d.cjs.map +0 -1
  457. package/dist/node/types/images.d.js +0 -1
  458. package/dist/node/types/images.d.js.map +0 -1
@@ -1,268 +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/hooks/cytoscape/elements/useElements.tsx
21
- var useElements_exports = {};
22
- __export(useElements_exports, {
23
- useElements: () => useElements
24
- });
25
- module.exports = __toCommonJS(useElements_exports);
26
-
27
- // src/hooks/cytoscape/elements/useHoveredNode.tsx
28
- var import_react = require("react");
29
-
30
- // src/contexts/CytoscapeInstance/Context.ts
31
- var import_react_shared = require("@xyo-network/react-shared");
32
- var CytoscapeInstanceContext = (0, import_react_shared.createContextEx)();
33
-
34
- // src/contexts/CytoscapeInstance/use.ts
35
- var import_react_shared2 = require("@xyo-network/react-shared");
36
- var useCytoscapeInstance = (required = false) => (0, import_react_shared2.useContextEx)(CytoscapeInstanceContext, "CytoscapeInstance", required);
37
-
38
- // src/hooks/cytoscape/elements/useHoveredNode.tsx
39
- var useHoveredNode = (renderedElements) => {
40
- const { cy } = useCytoscapeInstance(true);
41
- const [hoveredNode, setHoveredNode] = (0, import_react.useState)();
42
- const nodeListener = (0, import_react.useCallback)((node) => {
43
- node.on("mouseover tap", () => {
44
- setHoveredNode(node);
45
- });
46
- }, []);
47
- (0, import_react.useEffect)(() => {
48
- if (renderedElements) {
49
- renderedElements.nodes().forEach(nodeListener);
50
- }
51
- }, [nodeListener, renderedElements]);
52
- (0, import_react.useEffect)(() => {
53
- cy?.ready(() => {
54
- cy.nodes().forEach(nodeListener);
55
- });
56
- }, [cy, nodeListener]);
57
- return [hoveredNode, setHoveredNode];
58
- };
59
-
60
- // src/hooks/cytoscape/elements/useNewElements.tsx
61
- var import_react_node = require("@xyo-network/react-node");
62
-
63
- // src/hooks/cytoscape/elements/useCytoscapeElements.ts
64
- var import_react_async_effect = require("@xylabs/react-async-effect");
65
- var import_node_model3 = require("@xyo-network/node-model");
66
- var import_react2 = require("react");
67
-
68
- // src/Cytoscape/CytoscapeElements.ts
69
- var import_node_model2 = require("@xyo-network/node-model");
70
-
71
- // src/Cytoscape/lib/layout/ColaLayout.ts
72
- var ColaLayout = {
73
- centerGraph: false,
74
- convergenceThreshold: 0.01,
75
- name: "cola"
76
- };
77
-
78
- // src/Cytoscape/lib/parseModuleType.ts
79
- var import_archivist_model = require("@xyo-network/archivist-model");
80
- var import_bridge_model = require("@xyo-network/bridge-model");
81
- var import_diviner_model = require("@xyo-network/diviner-model");
82
- var import_node_model = require("@xyo-network/node-model");
83
- var import_sentinel = require("@xyo-network/sentinel");
84
- var import_witness = require("@xyo-network/witness");
85
- var parseModuleType = (module2) => {
86
- let type = "module";
87
- if (module2) {
88
- if ((0, import_archivist_model.isArchivistInstance)(module2)) {
89
- type = "archivist";
90
- } else if ((0, import_bridge_model.isBridgeInstance)(module2)) {
91
- type = "bridge";
92
- } else if ((0, import_diviner_model.isDivinerInstance)(module2)) {
93
- type = "diviner";
94
- } else if ((0, import_node_model.isNodeInstance)(module2)) {
95
- type = "node";
96
- } else if ((0, import_sentinel.isSentinelInstance)(module2)) {
97
- type = "sentinel";
98
- } else if ((0, import_witness.isWitnessModule)(module2)) {
99
- type = "witness";
100
- } else {
101
- type = "module";
102
- }
103
- }
104
- return type;
105
- };
106
-
107
- // src/Cytoscape/CytoscapeElements.ts
108
- var CytoscapeElements = class _CytoscapeElements {
109
- static MaxNameLength = 20;
110
- static buildEdge(rootNode, newNode) {
111
- return {
112
- data: {
113
- id: `${rootNode.data.id}/${newNode.data.id}`,
114
- source: rootNode.data.id,
115
- target: newNode.data.id
116
- }
117
- };
118
- }
119
- static async buildElements(module2) {
120
- const newRootNode = _CytoscapeElements.buildRootNode(module2);
121
- const newElements = [newRootNode];
122
- try {
123
- const childElements = await _CytoscapeElements.recurseNodes(module2);
124
- childElements?.forEach((module3) => {
125
- const newNode = _CytoscapeElements.buildNode(module3);
126
- newElements.push(newNode);
127
- const newEdge = _CytoscapeElements.buildEdge(newRootNode, newNode);
128
- newElements.push(newEdge);
129
- });
130
- return newElements;
131
- } catch (e) {
132
- console.error("error resolving modules", e);
133
- return [];
134
- }
135
- }
136
- static buildNode(module2, properties, classes) {
137
- const { address, config } = module2;
138
- const normalizedName = config.name ?? address.substring(0, 8);
139
- return {
140
- classes,
141
- data: {
142
- address,
143
- id: address,
144
- name: normalizedName,
145
- type: parseModuleType(module2),
146
- ...properties
147
- }
148
- };
149
- }
150
- static buildRootNode = (module2) => {
151
- return _CytoscapeElements.buildNode(module2, {}, ["activeNode"]);
152
- };
153
- static normalizeName(name) {
154
- if (!name)
155
- return;
156
- if (name.length > this.MaxNameLength)
157
- return `${name.substring(0, 20)}...`;
158
- return name;
159
- }
160
- static async recurseNodes(module2, maxTraversals = 1) {
161
- let localDepth = 0;
162
- const childModules = [];
163
- const traverse = async (nestedNode) => {
164
- if (localDepth < maxTraversals) {
165
- const modules = await nestedNode.resolve(void 0, { direction: "down", maxDepth: 2 });
166
- await Promise.all(
167
- modules.map(async (child) => {
168
- if (child !== nestedNode && (0, import_node_model2.isNodeInstance)(child)) {
169
- localDepth++;
170
- await traverse(child);
171
- } else if (child !== module2) {
172
- childModules.push(child);
173
- }
174
- })
175
- );
176
- }
177
- };
178
- await traverse(module2);
179
- return childModules;
180
- }
181
- };
182
-
183
- // src/hooks/cytoscape/elements/useCytoscapeElements.ts
184
- var useCytoscapeElements = (module2) => {
185
- const [elements, setElements] = (0, import_react2.useState)([]);
186
- (0, import_react_async_effect.useAsyncEffect)(
187
- // eslint-disable-next-line react-hooks/exhaustive-deps
188
- async () => {
189
- if (module2) {
190
- const newElements = await CytoscapeElements.buildElements(module2) ?? [];
191
- setElements(newElements);
192
- }
193
- },
194
- [module2]
195
- );
196
- (0, import_react2.useEffect)(() => {
197
- let attachedListener = void 0;
198
- let detachedListener = void 0;
199
- if (module2 && (0, import_node_model3.isNodeInstance)(module2)) {
200
- attachedListener = module2.on("moduleAttached", async () => {
201
- const newElements = await CytoscapeElements.buildElements(module2) ?? [];
202
- setElements(newElements);
203
- });
204
- detachedListener = module2.on("moduleDetached", async () => {
205
- const newElements = await CytoscapeElements.buildElements(module2) ?? [];
206
- setElements(newElements);
207
- });
208
- }
209
- return () => {
210
- attachedListener?.();
211
- detachedListener?.();
212
- };
213
- }, [module2]);
214
- return elements;
215
- };
216
-
217
- // src/hooks/cytoscape/elements/useNewElements.tsx
218
- var useNewElements = (selectedElement) => {
219
- const { address: selectedAddress } = selectedElement?.data() ?? {};
220
- const [module2] = (0, import_react_node.useModuleFromNode)(selectedAddress);
221
- const newElements = useCytoscapeElements(module2);
222
- return newElements;
223
- };
224
-
225
- // src/hooks/cytoscape/elements/useRenderNewElements.tsx
226
- var import_react3 = require("react");
227
- var useRenderNewElements = (newElements = [], hideLabels) => {
228
- const { cy } = useCytoscapeInstance(true);
229
- const [renderedElements, setRenderedElements] = (0, import_react3.useState)();
230
- (0, import_react3.useEffect)(() => {
231
- if (newElements.length > 1) {
232
- const renderedElements2 = cy?.add(newElements);
233
- setRenderedElements(renderedElements2);
234
- cy?.layout(ColaLayout).run();
235
- }
236
- }, [cy, hideLabels, newElements]);
237
- return renderedElements;
238
- };
239
-
240
- // src/hooks/cytoscape/elements/useSelectedElement.tsx
241
- var import_react4 = require("react");
242
- var useSelectedElement = () => {
243
- const [selectedElement, setSelectedElement] = (0, import_react4.useState)();
244
- const { cy } = useCytoscapeInstance(true);
245
- const updateStyles = (element) => {
246
- const nodes = cy?.nodes();
247
- nodes?.toggleClass("activeNode", false);
248
- element.toggleClass("activeNode", true);
249
- };
250
- const toggleSelectedElement = (address) => {
251
- const selectedNode = cy?.nodes(`[id="${address}"]`)?.[0];
252
- if (selectedNode) {
253
- setSelectedElement(selectedNode);
254
- updateStyles(selectedNode);
255
- }
256
- };
257
- return { selectedElement, toggleSelectedElement };
258
- };
259
-
260
- // src/hooks/cytoscape/elements/useElements.tsx
261
- var useElements = (hideLabels) => {
262
- const { selectedElement, toggleSelectedElement } = useSelectedElement();
263
- const newElements = useNewElements(selectedElement);
264
- const renderedElements = useRenderNewElements(newElements, hideLabels);
265
- const [hoveredNode, setHoveredNode] = useHoveredNode(renderedElements);
266
- return { hoveredNode, setHoveredNode, toggleSelectedElement };
267
- };
268
- //# sourceMappingURL=useElements.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../src/hooks/cytoscape/elements/useElements.tsx","../../../../../src/hooks/cytoscape/elements/useHoveredNode.tsx","../../../../../src/contexts/CytoscapeInstance/Context.ts","../../../../../src/contexts/CytoscapeInstance/use.ts","../../../../../src/hooks/cytoscape/elements/useNewElements.tsx","../../../../../src/hooks/cytoscape/elements/useCytoscapeElements.ts","../../../../../src/Cytoscape/CytoscapeElements.ts","../../../../../src/Cytoscape/lib/layout/ColaLayout.ts","../../../../../src/Cytoscape/lib/parseModuleType.ts","../../../../../src/hooks/cytoscape/elements/useRenderNewElements.tsx","../../../../../src/hooks/cytoscape/elements/useSelectedElement.tsx"],"sourcesContent":["import { useHoveredNode } from './useHoveredNode'\nimport { useNewElements } from './useNewElements'\nimport { useRenderNewElements } from './useRenderNewElements'\nimport { useSelectedElement } from './useSelectedElement'\n\nexport const useElements = (hideLabels: boolean) => {\n const { selectedElement, toggleSelectedElement } = useSelectedElement()\n const newElements = useNewElements(selectedElement)\n const renderedElements = useRenderNewElements(newElements, hideLabels)\n const [hoveredNode, setHoveredNode] = useHoveredNode(renderedElements)\n\n return { hoveredNode, setHoveredNode, toggleSelectedElement }\n}\n","import { NodeCollection, NodeSingular } from 'cytoscape'\nimport { Dispatch, SetStateAction, useCallback, useEffect, useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\n\nexport const useHoveredNode = (renderedElements?: NodeCollection): [NodeSingular | undefined, Dispatch<SetStateAction<NodeSingular | undefined>>] => {\n const { cy } = useCytoscapeInstance(true)\n const [hoveredNode, setHoveredNode] = useState<NodeSingular>()\n\n const nodeListener = useCallback((node: NodeSingular) => {\n node.on('mouseover tap', () => {\n setHoveredNode(node)\n })\n }, [])\n\n useEffect(() => {\n if (renderedElements) {\n renderedElements.nodes().forEach(nodeListener)\n }\n }, [nodeListener, renderedElements])\n\n useEffect(() => {\n cy?.ready(() => {\n cy.nodes().forEach(nodeListener)\n })\n }, [cy, nodeListener])\n\n return [hoveredNode, setHoveredNode]\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceState } from './State'\n\nexport const CytoscapeInstanceContext = createContextEx<CytoscapeInstanceState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceContext } from './Context'\n\nexport const useCytoscapeInstance = (required = false) => useContextEx(CytoscapeInstanceContext, 'CytoscapeInstance', required)\n","import { useModuleFromNode } from '@xyo-network/react-node'\nimport { NodeSingular } from 'cytoscape'\n\nimport { useCytoscapeElements } from './useCytoscapeElements'\n\nexport const useNewElements = (selectedElement?: NodeSingular) => {\n const { address: selectedAddress } = selectedElement?.data() ?? {}\n const [module] = useModuleFromNode(selectedAddress)\n const newElements = useCytoscapeElements(module)\n\n return newElements\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { EventUnsubscribeFunction, ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { ElementDefinition } from 'cytoscape'\nimport { useEffect, useState } from 'react'\n\nimport { CytoscapeElements } from '../../../Cytoscape'\n\nexport const useCytoscapeElements = (module?: ModuleInstance | null) => {\n const [elements, setElements] = useState<ElementDefinition[]>([])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (module) {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n }\n },\n [module],\n )\n\n useEffect(() => {\n let attachedListener: EventUnsubscribeFunction | undefined = undefined\n let detachedListener: EventUnsubscribeFunction | undefined = undefined\n\n if (module && isNodeInstance(module)) {\n attachedListener = module.on('moduleAttached', async () => {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n })\n detachedListener = module.on('moduleDetached', async () => {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n })\n }\n\n return () => {\n attachedListener?.()\n detachedListener?.()\n }\n }, [module])\n\n return elements\n}\n","import { ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { ElementDefinition } from 'cytoscape'\n\nimport { parseModuleType } from './lib'\n\nexport class CytoscapeElements {\n static MaxNameLength = 20\n\n static buildEdge(rootNode: ElementDefinition, newNode: ElementDefinition) {\n return {\n data: {\n id: `${rootNode.data.id}/${newNode.data.id}`,\n source: rootNode.data.id,\n target: newNode.data.id,\n },\n }\n }\n\n static async buildElements(module: ModuleInstance): Promise<ElementDefinition[]> {\n const newRootNode = CytoscapeElements.buildRootNode(module)\n const newElements: ElementDefinition[] = [newRootNode]\n\n try {\n const childElements = await CytoscapeElements.recurseNodes(module)\n childElements?.forEach((module) => {\n const newNode = CytoscapeElements.buildNode(module)\n newElements.push(newNode)\n\n const newEdge = CytoscapeElements.buildEdge(newRootNode, newNode)\n newElements.push(newEdge)\n })\n\n return newElements\n } catch (e) {\n console.error('error resolving modules', e)\n return []\n }\n }\n\n static buildNode(module: ModuleInstance, properties?: { [key: string]: unknown }, classes?: string[]): ElementDefinition {\n const { address, config } = module\n const normalizedName = config.name ?? address.substring(0, 8)\n return {\n classes,\n data: {\n address,\n id: address,\n name: normalizedName,\n type: parseModuleType(module),\n ...properties,\n },\n }\n }\n\n static buildRootNode = (module: ModuleInstance): ElementDefinition => {\n return CytoscapeElements.buildNode(module, {}, ['activeNode'])\n }\n\n static normalizeName(name?: string) {\n if (!name) return\n if (name.length > this.MaxNameLength) return `${name.substring(0, 20)}...`\n return name\n }\n\n static async recurseNodes(module: ModuleInstance, maxTraversals = 1): Promise<ModuleInstance[]> {\n let localDepth = 0\n const childModules: ModuleInstance[] = []\n\n const traverse = async (nestedNode: ModuleInstance) => {\n if (localDepth < maxTraversals) {\n const modules = await nestedNode.resolve(undefined, { direction: 'down', maxDepth: 2 })\n await Promise.all(\n modules.map(async (child) => {\n if (child !== nestedNode && isNodeInstance(child)) {\n localDepth++\n await traverse(child)\n // don't re add the root module that was passed in\n } else if (child !== module) {\n childModules.push(child)\n }\n }),\n )\n }\n }\n\n await traverse(module)\n\n return childModules\n }\n}\n","export const ColaLayout = {\n centerGraph: false,\n convergenceThreshold: 0.01,\n name: 'cola',\n}\n","import { isArchivistInstance } from '@xyo-network/archivist-model'\nimport { isBridgeInstance } from '@xyo-network/bridge-model'\nimport { isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { isSentinelInstance } from '@xyo-network/sentinel'\nimport { isWitnessModule } from '@xyo-network/witness'\n\nimport { CyNodeModuleTypes } from './CyNodeModuleTypes'\n\nexport const parseModuleType = (module?: ModuleInstance): CyNodeModuleTypes => {\n let type: CyNodeModuleTypes = 'module'\n if (module) {\n if (isArchivistInstance(module)) {\n type = 'archivist'\n } else if (isBridgeInstance(module)) {\n type = 'bridge'\n } else if (isDivinerInstance(module)) {\n type = 'diviner'\n } else if (isNodeInstance(module)) {\n type = 'node'\n } else if (isSentinelInstance(module)) {\n type = 'sentinel'\n } else if (isWitnessModule(module)) {\n type = 'witness'\n } else {\n type = 'module'\n }\n }\n return type\n}\n","import { CollectionReturnValue, ElementDefinition } from 'cytoscape'\nimport { useEffect, useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\nimport { ColaLayout } from '../../../Cytoscape'\n\nexport const useRenderNewElements = (newElements: ElementDefinition[] = [], hideLabels?: boolean) => {\n const { cy } = useCytoscapeInstance(true)\n const [renderedElements, setRenderedElements] = useState<CollectionReturnValue>()\n\n useEffect(() => {\n if (newElements.length > 1) {\n const renderedElements = cy?.add(newElements)\n setRenderedElements(renderedElements)\n cy?.layout(ColaLayout).run()\n }\n }, [cy, hideLabels, newElements])\n\n return renderedElements\n}\n","import { NodeSingular } from 'cytoscape'\nimport { useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\n\nexport const useSelectedElement = () => {\n const [selectedElement, setSelectedElement] = useState<NodeSingular>()\n const { cy } = useCytoscapeInstance(true)\n\n const updateStyles = (element: NodeSingular) => {\n const nodes = cy?.nodes()\n nodes?.toggleClass('activeNode', false)\n element.toggleClass('activeNode', true)\n }\n\n const toggleSelectedElement = (address?: string) => {\n const selectedNode = cy?.nodes(`[id=\"${address}\"]`)?.[0]\n if (selectedNode) {\n setSelectedElement(selectedNode)\n updateStyles(selectedNode)\n }\n }\n\n return { selectedElement, toggleSelectedElement }\n}\n"],"mappings":"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","names":["import_react_shared","import_node_model","import_react","import_node_model","module","module","module","module","import_react","renderedElements","import_react"]}
@@ -1,245 +0,0 @@
1
- // src/hooks/cytoscape/elements/useHoveredNode.tsx
2
- import { useCallback, useEffect, useState } from "react";
3
-
4
- // src/contexts/CytoscapeInstance/Context.ts
5
- import { createContextEx } from "@xyo-network/react-shared";
6
- var CytoscapeInstanceContext = createContextEx();
7
-
8
- // src/contexts/CytoscapeInstance/use.ts
9
- import { useContextEx } from "@xyo-network/react-shared";
10
- var useCytoscapeInstance = (required = false) => useContextEx(CytoscapeInstanceContext, "CytoscapeInstance", required);
11
-
12
- // src/hooks/cytoscape/elements/useHoveredNode.tsx
13
- var useHoveredNode = (renderedElements) => {
14
- const { cy } = useCytoscapeInstance(true);
15
- const [hoveredNode, setHoveredNode] = useState();
16
- const nodeListener = useCallback((node) => {
17
- node.on("mouseover tap", () => {
18
- setHoveredNode(node);
19
- });
20
- }, []);
21
- useEffect(() => {
22
- if (renderedElements) {
23
- renderedElements.nodes().forEach(nodeListener);
24
- }
25
- }, [nodeListener, renderedElements]);
26
- useEffect(() => {
27
- cy?.ready(() => {
28
- cy.nodes().forEach(nodeListener);
29
- });
30
- }, [cy, nodeListener]);
31
- return [hoveredNode, setHoveredNode];
32
- };
33
-
34
- // src/hooks/cytoscape/elements/useNewElements.tsx
35
- import { useModuleFromNode } from "@xyo-network/react-node";
36
-
37
- // src/hooks/cytoscape/elements/useCytoscapeElements.ts
38
- import { useAsyncEffect } from "@xylabs/react-async-effect";
39
- import { isNodeInstance as isNodeInstance3 } from "@xyo-network/node-model";
40
- import { useEffect as useEffect2, useState as useState2 } from "react";
41
-
42
- // src/Cytoscape/CytoscapeElements.ts
43
- import { isNodeInstance as isNodeInstance2 } from "@xyo-network/node-model";
44
-
45
- // src/Cytoscape/lib/layout/ColaLayout.ts
46
- var ColaLayout = {
47
- centerGraph: false,
48
- convergenceThreshold: 0.01,
49
- name: "cola"
50
- };
51
-
52
- // src/Cytoscape/lib/parseModuleType.ts
53
- import { isArchivistInstance } from "@xyo-network/archivist-model";
54
- import { isBridgeInstance } from "@xyo-network/bridge-model";
55
- import { isDivinerInstance } from "@xyo-network/diviner-model";
56
- import { isNodeInstance } from "@xyo-network/node-model";
57
- import { isSentinelInstance } from "@xyo-network/sentinel";
58
- import { isWitnessModule } from "@xyo-network/witness";
59
- var parseModuleType = (module) => {
60
- let type = "module";
61
- if (module) {
62
- if (isArchivistInstance(module)) {
63
- type = "archivist";
64
- } else if (isBridgeInstance(module)) {
65
- type = "bridge";
66
- } else if (isDivinerInstance(module)) {
67
- type = "diviner";
68
- } else if (isNodeInstance(module)) {
69
- type = "node";
70
- } else if (isSentinelInstance(module)) {
71
- type = "sentinel";
72
- } else if (isWitnessModule(module)) {
73
- type = "witness";
74
- } else {
75
- type = "module";
76
- }
77
- }
78
- return type;
79
- };
80
-
81
- // src/Cytoscape/CytoscapeElements.ts
82
- var CytoscapeElements = class _CytoscapeElements {
83
- static MaxNameLength = 20;
84
- static buildEdge(rootNode, newNode) {
85
- return {
86
- data: {
87
- id: `${rootNode.data.id}/${newNode.data.id}`,
88
- source: rootNode.data.id,
89
- target: newNode.data.id
90
- }
91
- };
92
- }
93
- static async buildElements(module) {
94
- const newRootNode = _CytoscapeElements.buildRootNode(module);
95
- const newElements = [newRootNode];
96
- try {
97
- const childElements = await _CytoscapeElements.recurseNodes(module);
98
- childElements?.forEach((module2) => {
99
- const newNode = _CytoscapeElements.buildNode(module2);
100
- newElements.push(newNode);
101
- const newEdge = _CytoscapeElements.buildEdge(newRootNode, newNode);
102
- newElements.push(newEdge);
103
- });
104
- return newElements;
105
- } catch (e) {
106
- console.error("error resolving modules", e);
107
- return [];
108
- }
109
- }
110
- static buildNode(module, properties, classes) {
111
- const { address, config } = module;
112
- const normalizedName = config.name ?? address.substring(0, 8);
113
- return {
114
- classes,
115
- data: {
116
- address,
117
- id: address,
118
- name: normalizedName,
119
- type: parseModuleType(module),
120
- ...properties
121
- }
122
- };
123
- }
124
- static buildRootNode = (module) => {
125
- return _CytoscapeElements.buildNode(module, {}, ["activeNode"]);
126
- };
127
- static normalizeName(name) {
128
- if (!name)
129
- return;
130
- if (name.length > this.MaxNameLength)
131
- return `${name.substring(0, 20)}...`;
132
- return name;
133
- }
134
- static async recurseNodes(module, maxTraversals = 1) {
135
- let localDepth = 0;
136
- const childModules = [];
137
- const traverse = async (nestedNode) => {
138
- if (localDepth < maxTraversals) {
139
- const modules = await nestedNode.resolve(void 0, { direction: "down", maxDepth: 2 });
140
- await Promise.all(
141
- modules.map(async (child) => {
142
- if (child !== nestedNode && isNodeInstance2(child)) {
143
- localDepth++;
144
- await traverse(child);
145
- } else if (child !== module) {
146
- childModules.push(child);
147
- }
148
- })
149
- );
150
- }
151
- };
152
- await traverse(module);
153
- return childModules;
154
- }
155
- };
156
-
157
- // src/hooks/cytoscape/elements/useCytoscapeElements.ts
158
- var useCytoscapeElements = (module) => {
159
- const [elements, setElements] = useState2([]);
160
- useAsyncEffect(
161
- // eslint-disable-next-line react-hooks/exhaustive-deps
162
- async () => {
163
- if (module) {
164
- const newElements = await CytoscapeElements.buildElements(module) ?? [];
165
- setElements(newElements);
166
- }
167
- },
168
- [module]
169
- );
170
- useEffect2(() => {
171
- let attachedListener = void 0;
172
- let detachedListener = void 0;
173
- if (module && isNodeInstance3(module)) {
174
- attachedListener = module.on("moduleAttached", async () => {
175
- const newElements = await CytoscapeElements.buildElements(module) ?? [];
176
- setElements(newElements);
177
- });
178
- detachedListener = module.on("moduleDetached", async () => {
179
- const newElements = await CytoscapeElements.buildElements(module) ?? [];
180
- setElements(newElements);
181
- });
182
- }
183
- return () => {
184
- attachedListener?.();
185
- detachedListener?.();
186
- };
187
- }, [module]);
188
- return elements;
189
- };
190
-
191
- // src/hooks/cytoscape/elements/useNewElements.tsx
192
- var useNewElements = (selectedElement) => {
193
- const { address: selectedAddress } = selectedElement?.data() ?? {};
194
- const [module] = useModuleFromNode(selectedAddress);
195
- const newElements = useCytoscapeElements(module);
196
- return newElements;
197
- };
198
-
199
- // src/hooks/cytoscape/elements/useRenderNewElements.tsx
200
- import { useEffect as useEffect3, useState as useState3 } from "react";
201
- var useRenderNewElements = (newElements = [], hideLabels) => {
202
- const { cy } = useCytoscapeInstance(true);
203
- const [renderedElements, setRenderedElements] = useState3();
204
- useEffect3(() => {
205
- if (newElements.length > 1) {
206
- const renderedElements2 = cy?.add(newElements);
207
- setRenderedElements(renderedElements2);
208
- cy?.layout(ColaLayout).run();
209
- }
210
- }, [cy, hideLabels, newElements]);
211
- return renderedElements;
212
- };
213
-
214
- // src/hooks/cytoscape/elements/useSelectedElement.tsx
215
- import { useState as useState4 } from "react";
216
- var useSelectedElement = () => {
217
- const [selectedElement, setSelectedElement] = useState4();
218
- const { cy } = useCytoscapeInstance(true);
219
- const updateStyles = (element) => {
220
- const nodes = cy?.nodes();
221
- nodes?.toggleClass("activeNode", false);
222
- element.toggleClass("activeNode", true);
223
- };
224
- const toggleSelectedElement = (address) => {
225
- const selectedNode = cy?.nodes(`[id="${address}"]`)?.[0];
226
- if (selectedNode) {
227
- setSelectedElement(selectedNode);
228
- updateStyles(selectedNode);
229
- }
230
- };
231
- return { selectedElement, toggleSelectedElement };
232
- };
233
-
234
- // src/hooks/cytoscape/elements/useElements.tsx
235
- var useElements = (hideLabels) => {
236
- const { selectedElement, toggleSelectedElement } = useSelectedElement();
237
- const newElements = useNewElements(selectedElement);
238
- const renderedElements = useRenderNewElements(newElements, hideLabels);
239
- const [hoveredNode, setHoveredNode] = useHoveredNode(renderedElements);
240
- return { hoveredNode, setHoveredNode, toggleSelectedElement };
241
- };
242
- export {
243
- useElements
244
- };
245
- //# sourceMappingURL=useElements.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../src/hooks/cytoscape/elements/useHoveredNode.tsx","../../../../../src/contexts/CytoscapeInstance/Context.ts","../../../../../src/contexts/CytoscapeInstance/use.ts","../../../../../src/hooks/cytoscape/elements/useNewElements.tsx","../../../../../src/hooks/cytoscape/elements/useCytoscapeElements.ts","../../../../../src/Cytoscape/CytoscapeElements.ts","../../../../../src/Cytoscape/lib/layout/ColaLayout.ts","../../../../../src/Cytoscape/lib/parseModuleType.ts","../../../../../src/hooks/cytoscape/elements/useRenderNewElements.tsx","../../../../../src/hooks/cytoscape/elements/useSelectedElement.tsx","../../../../../src/hooks/cytoscape/elements/useElements.tsx"],"sourcesContent":["import { NodeCollection, NodeSingular } from 'cytoscape'\nimport { Dispatch, SetStateAction, useCallback, useEffect, useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\n\nexport const useHoveredNode = (renderedElements?: NodeCollection): [NodeSingular | undefined, Dispatch<SetStateAction<NodeSingular | undefined>>] => {\n const { cy } = useCytoscapeInstance(true)\n const [hoveredNode, setHoveredNode] = useState<NodeSingular>()\n\n const nodeListener = useCallback((node: NodeSingular) => {\n node.on('mouseover tap', () => {\n setHoveredNode(node)\n })\n }, [])\n\n useEffect(() => {\n if (renderedElements) {\n renderedElements.nodes().forEach(nodeListener)\n }\n }, [nodeListener, renderedElements])\n\n useEffect(() => {\n cy?.ready(() => {\n cy.nodes().forEach(nodeListener)\n })\n }, [cy, nodeListener])\n\n return [hoveredNode, setHoveredNode]\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceState } from './State'\n\nexport const CytoscapeInstanceContext = createContextEx<CytoscapeInstanceState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceContext } from './Context'\n\nexport const useCytoscapeInstance = (required = false) => useContextEx(CytoscapeInstanceContext, 'CytoscapeInstance', required)\n","import { useModuleFromNode } from '@xyo-network/react-node'\nimport { NodeSingular } from 'cytoscape'\n\nimport { useCytoscapeElements } from './useCytoscapeElements'\n\nexport const useNewElements = (selectedElement?: NodeSingular) => {\n const { address: selectedAddress } = selectedElement?.data() ?? {}\n const [module] = useModuleFromNode(selectedAddress)\n const newElements = useCytoscapeElements(module)\n\n return newElements\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { EventUnsubscribeFunction, ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { ElementDefinition } from 'cytoscape'\nimport { useEffect, useState } from 'react'\n\nimport { CytoscapeElements } from '../../../Cytoscape'\n\nexport const useCytoscapeElements = (module?: ModuleInstance | null) => {\n const [elements, setElements] = useState<ElementDefinition[]>([])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (module) {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n }\n },\n [module],\n )\n\n useEffect(() => {\n let attachedListener: EventUnsubscribeFunction | undefined = undefined\n let detachedListener: EventUnsubscribeFunction | undefined = undefined\n\n if (module && isNodeInstance(module)) {\n attachedListener = module.on('moduleAttached', async () => {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n })\n detachedListener = module.on('moduleDetached', async () => {\n const newElements = (await CytoscapeElements.buildElements(module)) ?? []\n setElements(newElements)\n })\n }\n\n return () => {\n attachedListener?.()\n detachedListener?.()\n }\n }, [module])\n\n return elements\n}\n","import { ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { ElementDefinition } from 'cytoscape'\n\nimport { parseModuleType } from './lib'\n\nexport class CytoscapeElements {\n static MaxNameLength = 20\n\n static buildEdge(rootNode: ElementDefinition, newNode: ElementDefinition) {\n return {\n data: {\n id: `${rootNode.data.id}/${newNode.data.id}`,\n source: rootNode.data.id,\n target: newNode.data.id,\n },\n }\n }\n\n static async buildElements(module: ModuleInstance): Promise<ElementDefinition[]> {\n const newRootNode = CytoscapeElements.buildRootNode(module)\n const newElements: ElementDefinition[] = [newRootNode]\n\n try {\n const childElements = await CytoscapeElements.recurseNodes(module)\n childElements?.forEach((module) => {\n const newNode = CytoscapeElements.buildNode(module)\n newElements.push(newNode)\n\n const newEdge = CytoscapeElements.buildEdge(newRootNode, newNode)\n newElements.push(newEdge)\n })\n\n return newElements\n } catch (e) {\n console.error('error resolving modules', e)\n return []\n }\n }\n\n static buildNode(module: ModuleInstance, properties?: { [key: string]: unknown }, classes?: string[]): ElementDefinition {\n const { address, config } = module\n const normalizedName = config.name ?? address.substring(0, 8)\n return {\n classes,\n data: {\n address,\n id: address,\n name: normalizedName,\n type: parseModuleType(module),\n ...properties,\n },\n }\n }\n\n static buildRootNode = (module: ModuleInstance): ElementDefinition => {\n return CytoscapeElements.buildNode(module, {}, ['activeNode'])\n }\n\n static normalizeName(name?: string) {\n if (!name) return\n if (name.length > this.MaxNameLength) return `${name.substring(0, 20)}...`\n return name\n }\n\n static async recurseNodes(module: ModuleInstance, maxTraversals = 1): Promise<ModuleInstance[]> {\n let localDepth = 0\n const childModules: ModuleInstance[] = []\n\n const traverse = async (nestedNode: ModuleInstance) => {\n if (localDepth < maxTraversals) {\n const modules = await nestedNode.resolve(undefined, { direction: 'down', maxDepth: 2 })\n await Promise.all(\n modules.map(async (child) => {\n if (child !== nestedNode && isNodeInstance(child)) {\n localDepth++\n await traverse(child)\n // don't re add the root module that was passed in\n } else if (child !== module) {\n childModules.push(child)\n }\n }),\n )\n }\n }\n\n await traverse(module)\n\n return childModules\n }\n}\n","export const ColaLayout = {\n centerGraph: false,\n convergenceThreshold: 0.01,\n name: 'cola',\n}\n","import { isArchivistInstance } from '@xyo-network/archivist-model'\nimport { isBridgeInstance } from '@xyo-network/bridge-model'\nimport { isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleInstance } from '@xyo-network/module'\nimport { isNodeInstance } from '@xyo-network/node-model'\nimport { isSentinelInstance } from '@xyo-network/sentinel'\nimport { isWitnessModule } from '@xyo-network/witness'\n\nimport { CyNodeModuleTypes } from './CyNodeModuleTypes'\n\nexport const parseModuleType = (module?: ModuleInstance): CyNodeModuleTypes => {\n let type: CyNodeModuleTypes = 'module'\n if (module) {\n if (isArchivistInstance(module)) {\n type = 'archivist'\n } else if (isBridgeInstance(module)) {\n type = 'bridge'\n } else if (isDivinerInstance(module)) {\n type = 'diviner'\n } else if (isNodeInstance(module)) {\n type = 'node'\n } else if (isSentinelInstance(module)) {\n type = 'sentinel'\n } else if (isWitnessModule(module)) {\n type = 'witness'\n } else {\n type = 'module'\n }\n }\n return type\n}\n","import { CollectionReturnValue, ElementDefinition } from 'cytoscape'\nimport { useEffect, useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\nimport { ColaLayout } from '../../../Cytoscape'\n\nexport const useRenderNewElements = (newElements: ElementDefinition[] = [], hideLabels?: boolean) => {\n const { cy } = useCytoscapeInstance(true)\n const [renderedElements, setRenderedElements] = useState<CollectionReturnValue>()\n\n useEffect(() => {\n if (newElements.length > 1) {\n const renderedElements = cy?.add(newElements)\n setRenderedElements(renderedElements)\n cy?.layout(ColaLayout).run()\n }\n }, [cy, hideLabels, newElements])\n\n return renderedElements\n}\n","import { NodeSingular } from 'cytoscape'\nimport { useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\n\nexport const useSelectedElement = () => {\n const [selectedElement, setSelectedElement] = useState<NodeSingular>()\n const { cy } = useCytoscapeInstance(true)\n\n const updateStyles = (element: NodeSingular) => {\n const nodes = cy?.nodes()\n nodes?.toggleClass('activeNode', false)\n element.toggleClass('activeNode', true)\n }\n\n const toggleSelectedElement = (address?: string) => {\n const selectedNode = cy?.nodes(`[id=\"${address}\"]`)?.[0]\n if (selectedNode) {\n setSelectedElement(selectedNode)\n updateStyles(selectedNode)\n }\n }\n\n return { selectedElement, toggleSelectedElement }\n}\n","import { useHoveredNode } from './useHoveredNode'\nimport { useNewElements } from './useNewElements'\nimport { useRenderNewElements } from './useRenderNewElements'\nimport { useSelectedElement } from './useSelectedElement'\n\nexport const useElements = (hideLabels: boolean) => {\n const { selectedElement, toggleSelectedElement } = useSelectedElement()\n const newElements = useNewElements(selectedElement)\n const renderedElements = useRenderNewElements(newElements, hideLabels)\n const [hoveredNode, setHoveredNode] = useHoveredNode(renderedElements)\n\n return { hoveredNode, setHoveredNode, toggleSelectedElement }\n}\n"],"mappings":"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","names":["isNodeInstance","useEffect","useState","isNodeInstance","module","isNodeInstance","useState","useEffect","isNodeInstance","useEffect","useState","useState","useEffect","renderedElements","useState","useState"]}
@@ -1,57 +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/hooks/cytoscape/elements/useHoveredNode.tsx
21
- var useHoveredNode_exports = {};
22
- __export(useHoveredNode_exports, {
23
- useHoveredNode: () => useHoveredNode
24
- });
25
- module.exports = __toCommonJS(useHoveredNode_exports);
26
- var import_react = require("react");
27
-
28
- // src/contexts/CytoscapeInstance/Context.ts
29
- var import_react_shared = require("@xyo-network/react-shared");
30
- var CytoscapeInstanceContext = (0, import_react_shared.createContextEx)();
31
-
32
- // src/contexts/CytoscapeInstance/use.ts
33
- var import_react_shared2 = require("@xyo-network/react-shared");
34
- var useCytoscapeInstance = (required = false) => (0, import_react_shared2.useContextEx)(CytoscapeInstanceContext, "CytoscapeInstance", required);
35
-
36
- // src/hooks/cytoscape/elements/useHoveredNode.tsx
37
- var useHoveredNode = (renderedElements) => {
38
- const { cy } = useCytoscapeInstance(true);
39
- const [hoveredNode, setHoveredNode] = (0, import_react.useState)();
40
- const nodeListener = (0, import_react.useCallback)((node) => {
41
- node.on("mouseover tap", () => {
42
- setHoveredNode(node);
43
- });
44
- }, []);
45
- (0, import_react.useEffect)(() => {
46
- if (renderedElements) {
47
- renderedElements.nodes().forEach(nodeListener);
48
- }
49
- }, [nodeListener, renderedElements]);
50
- (0, import_react.useEffect)(() => {
51
- cy?.ready(() => {
52
- cy.nodes().forEach(nodeListener);
53
- });
54
- }, [cy, nodeListener]);
55
- return [hoveredNode, setHoveredNode];
56
- };
57
- //# sourceMappingURL=useHoveredNode.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../src/hooks/cytoscape/elements/useHoveredNode.tsx","../../../../../src/contexts/CytoscapeInstance/Context.ts","../../../../../src/contexts/CytoscapeInstance/use.ts"],"sourcesContent":["import { NodeCollection, NodeSingular } from 'cytoscape'\nimport { Dispatch, SetStateAction, useCallback, useEffect, useState } from 'react'\n\nimport { useCytoscapeInstance } from '../../../contexts'\n\nexport const useHoveredNode = (renderedElements?: NodeCollection): [NodeSingular | undefined, Dispatch<SetStateAction<NodeSingular | undefined>>] => {\n const { cy } = useCytoscapeInstance(true)\n const [hoveredNode, setHoveredNode] = useState<NodeSingular>()\n\n const nodeListener = useCallback((node: NodeSingular) => {\n node.on('mouseover tap', () => {\n setHoveredNode(node)\n })\n }, [])\n\n useEffect(() => {\n if (renderedElements) {\n renderedElements.nodes().forEach(nodeListener)\n }\n }, [nodeListener, renderedElements])\n\n useEffect(() => {\n cy?.ready(() => {\n cy.nodes().forEach(nodeListener)\n })\n }, [cy, nodeListener])\n\n return [hoveredNode, setHoveredNode]\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceState } from './State'\n\nexport const CytoscapeInstanceContext = createContextEx<CytoscapeInstanceState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { CytoscapeInstanceContext } from './Context'\n\nexport const useCytoscapeInstance = (required = false) => useContextEx(CytoscapeInstanceContext, 'CytoscapeInstance', required)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAA2E;;;ACD3E,0BAAgC;AAIzB,IAAM,+BAA2B,qCAAwC;;;ACJhF,IAAAA,uBAA6B;AAItB,IAAM,uBAAuB,CAAC,WAAW,cAAU,mCAAa,0BAA0B,qBAAqB,QAAQ;;;AFCvH,IAAM,iBAAiB,CAAC,qBAAsH;AACnJ,QAAM,EAAE,GAAG,IAAI,qBAAqB,IAAI;AACxC,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAuB;AAE7D,QAAM,mBAAe,0BAAY,CAAC,SAAuB;AACvD,SAAK,GAAG,iBAAiB,MAAM;AAC7B,qBAAe,IAAI;AAAA,IACrB,CAAC;AAAA,EACH,GAAG,CAAC,CAAC;AAEL,8BAAU,MAAM;AACd,QAAI,kBAAkB;AACpB,uBAAiB,MAAM,EAAE,QAAQ,YAAY;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,cAAc,gBAAgB,CAAC;AAEnC,8BAAU,MAAM;AACd,QAAI,MAAM,MAAM;AACd,SAAG,MAAM,EAAE,QAAQ,YAAY;AAAA,IACjC,CAAC;AAAA,EACH,GAAG,CAAC,IAAI,YAAY,CAAC;AAErB,SAAO,CAAC,aAAa,cAAc;AACrC;","names":["import_react_shared"]}