@xyo-network/react-node-renderer 2.64.3 → 2.64.4

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 (168) hide show
  1. package/dist/browser/components/ProvidedNodeRenderer.cjs +7 -5
  2. package/dist/browser/components/ProvidedNodeRenderer.cjs.map +1 -1
  3. package/dist/browser/components/ProvidedNodeRenderer.js +8 -6
  4. package/dist/browser/components/ProvidedNodeRenderer.js.map +1 -1
  5. package/dist/browser/components/RelationalGraph.cjs +2 -2
  6. package/dist/browser/components/RelationalGraph.cjs.map +1 -1
  7. package/dist/browser/components/RelationalGraph.d.cts.map +1 -1
  8. package/dist/browser/components/RelationalGraph.d.mts.map +1 -1
  9. package/dist/browser/components/RelationalGraph.d.ts.map +1 -1
  10. package/dist/browser/components/RelationalGraph.js +3 -3
  11. package/dist/browser/components/RelationalGraph.js.map +1 -1
  12. package/dist/browser/components/index.cjs +104 -82
  13. package/dist/browser/components/index.cjs.map +1 -1
  14. package/dist/browser/components/index.js +93 -71
  15. package/dist/browser/components/index.js.map +1 -1
  16. package/dist/browser/components/module/graph/GraphFlexBox.cjs +103 -81
  17. package/dist/browser/components/module/graph/GraphFlexBox.cjs.map +1 -1
  18. package/dist/browser/components/module/graph/GraphFlexBox.d.cts +1 -0
  19. package/dist/browser/components/module/graph/GraphFlexBox.d.cts.map +1 -1
  20. package/dist/browser/components/module/graph/GraphFlexBox.d.mts +1 -0
  21. package/dist/browser/components/module/graph/GraphFlexBox.d.mts.map +1 -1
  22. package/dist/browser/components/module/graph/GraphFlexBox.d.ts +1 -0
  23. package/dist/browser/components/module/graph/GraphFlexBox.d.ts.map +1 -1
  24. package/dist/browser/components/module/graph/GraphFlexBox.js +92 -70
  25. package/dist/browser/components/module/graph/GraphFlexBox.js.map +1 -1
  26. package/dist/browser/components/module/graph/NodeHover.cjs +17 -10
  27. package/dist/browser/components/module/graph/NodeHover.cjs.map +1 -1
  28. package/dist/browser/components/module/graph/NodeHover.d.cts.map +1 -1
  29. package/dist/browser/components/module/graph/NodeHover.d.mts.map +1 -1
  30. package/dist/browser/components/module/graph/NodeHover.d.ts.map +1 -1
  31. package/dist/browser/components/module/graph/NodeHover.js +20 -13
  32. package/dist/browser/components/module/graph/NodeHover.js.map +1 -1
  33. package/dist/browser/components/module/graph/Popper.cjs +2 -2
  34. package/dist/browser/components/module/graph/Popper.cjs.map +1 -1
  35. package/dist/browser/components/module/graph/Popper.d.cts +1 -1
  36. package/dist/browser/components/module/graph/Popper.d.cts.map +1 -1
  37. package/dist/browser/components/module/graph/Popper.d.mts +1 -1
  38. package/dist/browser/components/module/graph/Popper.d.mts.map +1 -1
  39. package/dist/browser/components/module/graph/Popper.d.ts +1 -1
  40. package/dist/browser/components/module/graph/Popper.d.ts.map +1 -1
  41. package/dist/browser/components/module/graph/Popper.js +3 -3
  42. package/dist/browser/components/module/graph/Popper.js.map +1 -1
  43. package/dist/browser/components/module/graph/index.cjs +103 -81
  44. package/dist/browser/components/module/graph/index.cjs.map +1 -1
  45. package/dist/browser/components/module/graph/index.js +92 -70
  46. package/dist/browser/components/module/graph/index.js.map +1 -1
  47. package/dist/browser/components/module/index.cjs +103 -81
  48. package/dist/browser/components/module/index.cjs.map +1 -1
  49. package/dist/browser/components/module/index.js +92 -70
  50. package/dist/browser/components/module/index.js.map +1 -1
  51. package/dist/browser/hooks/cytoscape/index.cjs +5 -3
  52. package/dist/browser/hooks/cytoscape/index.cjs.map +1 -1
  53. package/dist/browser/hooks/cytoscape/index.js +5 -3
  54. package/dist/browser/hooks/cytoscape/index.js.map +1 -1
  55. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.cjs +5 -3
  56. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.cjs.map +1 -1
  57. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.d.cts.map +1 -1
  58. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.d.mts.map +1 -1
  59. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.d.ts.map +1 -1
  60. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.js +5 -3
  61. package/dist/browser/hooks/cytoscape/useCytoscapeOptions.js.map +1 -1
  62. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.cjs +5 -3
  63. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.cjs.map +1 -1
  64. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.js +5 -3
  65. package/dist/browser/hooks/cytoscape/useRelationalGraphOptions.js.map +1 -1
  66. package/dist/browser/hooks/index.cjs +5 -3
  67. package/dist/browser/hooks/index.cjs.map +1 -1
  68. package/dist/browser/hooks/index.js +5 -3
  69. package/dist/browser/hooks/index.js.map +1 -1
  70. package/dist/browser/index.cjs +107 -82
  71. package/dist/browser/index.cjs.map +1 -1
  72. package/dist/browser/index.d.cts +1 -0
  73. package/dist/browser/index.d.cts.map +1 -1
  74. package/dist/browser/index.d.mts +1 -0
  75. package/dist/browser/index.d.mts.map +1 -1
  76. package/dist/browser/index.d.ts +1 -0
  77. package/dist/browser/index.d.ts.map +1 -1
  78. package/dist/browser/index.js +96 -71
  79. package/dist/browser/index.js.map +1 -1
  80. package/dist/docs.json +1747 -1151
  81. package/dist/node/components/ProvidedNodeRenderer.cjs +7 -5
  82. package/dist/node/components/ProvidedNodeRenderer.cjs.map +1 -1
  83. package/dist/node/components/ProvidedNodeRenderer.js +8 -6
  84. package/dist/node/components/ProvidedNodeRenderer.js.map +1 -1
  85. package/dist/node/components/RelationalGraph.cjs +2 -2
  86. package/dist/node/components/RelationalGraph.cjs.map +1 -1
  87. package/dist/node/components/RelationalGraph.d.cts.map +1 -1
  88. package/dist/node/components/RelationalGraph.d.mts.map +1 -1
  89. package/dist/node/components/RelationalGraph.d.ts.map +1 -1
  90. package/dist/node/components/RelationalGraph.js +3 -3
  91. package/dist/node/components/RelationalGraph.js.map +1 -1
  92. package/dist/node/components/index.cjs +105 -82
  93. package/dist/node/components/index.cjs.map +1 -1
  94. package/dist/node/components/index.js +93 -71
  95. package/dist/node/components/index.js.map +1 -1
  96. package/dist/node/components/module/graph/GraphFlexBox.cjs +105 -82
  97. package/dist/node/components/module/graph/GraphFlexBox.cjs.map +1 -1
  98. package/dist/node/components/module/graph/GraphFlexBox.d.cts +1 -0
  99. package/dist/node/components/module/graph/GraphFlexBox.d.cts.map +1 -1
  100. package/dist/node/components/module/graph/GraphFlexBox.d.mts +1 -0
  101. package/dist/node/components/module/graph/GraphFlexBox.d.mts.map +1 -1
  102. package/dist/node/components/module/graph/GraphFlexBox.d.ts +1 -0
  103. package/dist/node/components/module/graph/GraphFlexBox.d.ts.map +1 -1
  104. package/dist/node/components/module/graph/GraphFlexBox.js +92 -70
  105. package/dist/node/components/module/graph/GraphFlexBox.js.map +1 -1
  106. package/dist/node/components/module/graph/NodeHover.cjs +17 -10
  107. package/dist/node/components/module/graph/NodeHover.cjs.map +1 -1
  108. package/dist/node/components/module/graph/NodeHover.d.cts.map +1 -1
  109. package/dist/node/components/module/graph/NodeHover.d.mts.map +1 -1
  110. package/dist/node/components/module/graph/NodeHover.d.ts.map +1 -1
  111. package/dist/node/components/module/graph/NodeHover.js +20 -13
  112. package/dist/node/components/module/graph/NodeHover.js.map +1 -1
  113. package/dist/node/components/module/graph/Popper.cjs +2 -2
  114. package/dist/node/components/module/graph/Popper.cjs.map +1 -1
  115. package/dist/node/components/module/graph/Popper.d.cts +1 -1
  116. package/dist/node/components/module/graph/Popper.d.cts.map +1 -1
  117. package/dist/node/components/module/graph/Popper.d.mts +1 -1
  118. package/dist/node/components/module/graph/Popper.d.mts.map +1 -1
  119. package/dist/node/components/module/graph/Popper.d.ts +1 -1
  120. package/dist/node/components/module/graph/Popper.d.ts.map +1 -1
  121. package/dist/node/components/module/graph/Popper.js +3 -3
  122. package/dist/node/components/module/graph/Popper.js.map +1 -1
  123. package/dist/node/components/module/graph/index.cjs +105 -82
  124. package/dist/node/components/module/graph/index.cjs.map +1 -1
  125. package/dist/node/components/module/graph/index.js +92 -70
  126. package/dist/node/components/module/graph/index.js.map +1 -1
  127. package/dist/node/components/module/index.cjs +105 -82
  128. package/dist/node/components/module/index.cjs.map +1 -1
  129. package/dist/node/components/module/index.js +92 -70
  130. package/dist/node/components/module/index.js.map +1 -1
  131. package/dist/node/hooks/cytoscape/index.cjs +5 -3
  132. package/dist/node/hooks/cytoscape/index.cjs.map +1 -1
  133. package/dist/node/hooks/cytoscape/index.js +5 -3
  134. package/dist/node/hooks/cytoscape/index.js.map +1 -1
  135. package/dist/node/hooks/cytoscape/useCytoscapeOptions.cjs +5 -3
  136. package/dist/node/hooks/cytoscape/useCytoscapeOptions.cjs.map +1 -1
  137. package/dist/node/hooks/cytoscape/useCytoscapeOptions.d.cts.map +1 -1
  138. package/dist/node/hooks/cytoscape/useCytoscapeOptions.d.mts.map +1 -1
  139. package/dist/node/hooks/cytoscape/useCytoscapeOptions.d.ts.map +1 -1
  140. package/dist/node/hooks/cytoscape/useCytoscapeOptions.js +5 -3
  141. package/dist/node/hooks/cytoscape/useCytoscapeOptions.js.map +1 -1
  142. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.cjs +5 -3
  143. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.cjs.map +1 -1
  144. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.js +5 -3
  145. package/dist/node/hooks/cytoscape/useRelationalGraphOptions.js.map +1 -1
  146. package/dist/node/hooks/index.cjs +5 -3
  147. package/dist/node/hooks/index.cjs.map +1 -1
  148. package/dist/node/hooks/index.js +5 -3
  149. package/dist/node/hooks/index.js.map +1 -1
  150. package/dist/node/index.cjs +111 -82
  151. package/dist/node/index.cjs.map +1 -1
  152. package/dist/node/index.d.cts +1 -0
  153. package/dist/node/index.d.cts.map +1 -1
  154. package/dist/node/index.d.mts +1 -0
  155. package/dist/node/index.d.mts.map +1 -1
  156. package/dist/node/index.d.ts +1 -0
  157. package/dist/node/index.d.ts.map +1 -1
  158. package/dist/node/index.js +96 -71
  159. package/dist/node/index.js.map +1 -1
  160. package/package.json +8 -8
  161. package/src/components/RelationalGraph.stories.tsx +4 -1
  162. package/src/components/RelationalGraph.tsx +14 -6
  163. package/src/components/module/graph/GraphFlexBox.stories.tsx +7 -10
  164. package/src/components/module/graph/GraphFlexBox.tsx +9 -0
  165. package/src/components/module/graph/NodeHover.tsx +31 -19
  166. package/src/components/module/graph/Popper.tsx +14 -10
  167. package/src/hooks/cytoscape/useCytoscapeOptions.ts +6 -3
  168. package/src/index.ts +1 -0
package/package.json CHANGED
@@ -19,10 +19,10 @@
19
19
  "@xyo-network/diviner-model": "^2.75.4",
20
20
  "@xyo-network/module": "^2.75.4",
21
21
  "@xyo-network/node-model": "^2.75.4",
22
- "@xyo-network/react-archivist": "~2.64.3",
23
- "@xyo-network/react-module": "~2.64.3",
24
- "@xyo-network/react-node": "~2.64.3",
25
- "@xyo-network/react-shared": "~2.64.3",
22
+ "@xyo-network/react-archivist": "~2.64.4",
23
+ "@xyo-network/react-module": "~2.64.4",
24
+ "@xyo-network/react-node": "~2.64.4",
25
+ "@xyo-network/react-shared": "~2.64.4",
26
26
  "cytoscape": "^3.26.0",
27
27
  "cytoscape-cola": "^2.5.1"
28
28
  },
@@ -47,9 +47,9 @@
47
47
  "@xyo-network/id-plugin": "^2.75.4",
48
48
  "@xyo-network/module": "^2.75.4",
49
49
  "@xyo-network/node-memory": "^2.75.4",
50
- "@xyo-network/react-node": "~2.64.3",
51
- "@xyo-network/react-storybook": "~2.64.3",
52
- "@xyo-network/react-wallet": "~2.64.3",
50
+ "@xyo-network/react-node": "~2.64.4",
51
+ "@xyo-network/react-storybook": "~2.64.4",
52
+ "@xyo-network/react-wallet": "~2.64.4",
53
53
  "@xyo-network/sentinel": "^2.75.4",
54
54
  "@xyo-network/witness": "^2.75.4",
55
55
  "typescript": "^5.2.2"
@@ -105,6 +105,6 @@
105
105
  },
106
106
  "sideEffects": false,
107
107
  "types": "dist/browser/index.d.ts",
108
- "version": "2.64.3",
108
+ "version": "2.64.4",
109
109
  "type": "module"
110
110
  }
@@ -12,6 +12,7 @@ import { useWallet, WalletProvider } from '@xyo-network/react-wallet'
12
12
  import { MemorySentinel, SentinelConfigSchema } from '@xyo-network/sentinel'
13
13
  import { useState } from 'react'
14
14
 
15
+ import { CytoscapeInstanceProvider } from '../contexts'
15
16
  import { useCytoscapeElements, useCytoscapeOptions } from '../hooks'
16
17
  import { ProvidedNodeRenderer } from './ProvidedNodeRenderer'
17
18
  import { NodeRelationalGraphFlexBox } from './RelationalGraph'
@@ -62,7 +63,9 @@ const MemoryNodeDecorator: Decorator = (Story, args) => {
62
63
  return (
63
64
  <WalletProvider rootWallet={wallet}>
64
65
  <NodeProvider node={node}>
65
- <Story {...args} />
66
+ <CytoscapeInstanceProvider>
67
+ <Story {...args} />
68
+ </CytoscapeInstanceProvider>
66
69
  </NodeProvider>
67
70
  </WalletProvider>
68
71
  )
@@ -34,12 +34,20 @@ export const NodeRelationalGraphFlexBox = forwardRef<HTMLDivElement, NodeRelatio
34
34
  return (
35
35
  <FlexCol {...props}>
36
36
  <ActionsContainer>
37
- <ButtonGroup>
38
- {actions}
39
- <Button size={'small'} variant={'contained'} onClick={handleReset}>
40
- Reset
41
- </Button>
42
- </ButtonGroup>
37
+ <>
38
+ {actions ? (
39
+ <ButtonGroup>
40
+ {actions}
41
+ <Button size={'small'} variant={'contained'} onClick={handleReset}>
42
+ Reset
43
+ </Button>
44
+ </ButtonGroup>
45
+ ) : (
46
+ <Button size={'small'} variant={'contained'} onClick={handleReset}>
47
+ Reset
48
+ </Button>
49
+ )}
50
+ </>
43
51
  </ActionsContainer>
44
52
  {/* Cytoscape Element */}
45
53
  <FlexCol alignItems="stretch" height="100%" position="absolute" ref={sharedRef} width="100%"></FlexCol>
@@ -10,8 +10,7 @@ import { useWallet, WalletProvider } from '@xyo-network/react-wallet'
10
10
  import { MemorySentinel, SentinelConfigSchema } from '@xyo-network/sentinel'
11
11
  import { useState } from 'react'
12
12
 
13
- import { CytoscapeInstanceProvider } from '../../../contexts'
14
- import { ModuleGraphFlexBox } from './GraphFlexBox'
13
+ import { ModuleGraphFlexBoxWithProvider } from './GraphFlexBox'
15
14
 
16
15
  const nodeUrl = 'http://localhost:8080/node'
17
16
 
@@ -58,9 +57,7 @@ const MemoryNodeDecorator: Decorator = (Story, args) => {
58
57
  return (
59
58
  <WalletProvider rootWallet={wallet}>
60
59
  <NodeProvider node={node}>
61
- <CytoscapeInstanceProvider>
62
- <Story {...args} />
63
- </CytoscapeInstanceProvider>
60
+ <Story {...args} />
64
61
  </NodeProvider>
65
62
  </WalletProvider>
66
63
  )
@@ -68,15 +65,15 @@ const MemoryNodeDecorator: Decorator = (Story, args) => {
68
65
 
69
66
  // eslint-disable-next-line import/no-default-export
70
67
  export default {
71
- component: ModuleGraphFlexBox,
72
- title: 'node/renderer/ModuleGraphFlexBox',
68
+ component: ModuleGraphFlexBoxWithProvider,
69
+ title: 'node/renderer/ModuleGraphFlexBoxWithProvider',
73
70
  } as Meta
74
71
 
75
- const Template: StoryFn<typeof ModuleGraphFlexBox> = (props) => <ModuleGraphFlexBox {...props} />
72
+ const Template: StoryFn<typeof ModuleGraphFlexBoxWithProvider> = (props) => <ModuleGraphFlexBoxWithProvider {...props} />
76
73
 
77
- const TemplateWithProvidedModule: StoryFn<typeof ModuleGraphFlexBox> = (props) => {
74
+ const TemplateWithProvidedModule: StoryFn<typeof ModuleGraphFlexBoxWithProvider> = (props) => {
78
75
  const [node] = useProvidedNode()
79
- return <ModuleGraphFlexBox rootModule={node} {...props} />
76
+ return <ModuleGraphFlexBoxWithProvider rootModule={node} {...props} />
80
77
  }
81
78
 
82
79
  const defaultProps = {
@@ -2,6 +2,7 @@ import { Button } from '@mui/material'
2
2
  import { FlexBoxProps } from '@xylabs/react-flexbox'
3
3
  import { ModuleInstance } from '@xyo-network/module'
4
4
 
5
+ import { CytoscapeInstanceProvider } from '../../../contexts'
5
6
  import { useHoveredNode, useNewElements, useRelationalGraphOptions, useRenderNewElements, useSelectedElement } from '../../../hooks'
6
7
  import { WithExtensions } from '../../cytoscape-extensions'
7
8
  import { NodeRelationalGraphFlexBox } from '../../RelationalGraph'
@@ -34,3 +35,11 @@ export const ModuleGraphFlexBox: React.FC<ModuleGraphFlexBoxProps> = ({ rootModu
34
35
  </WithExtensions>
35
36
  )
36
37
  }
38
+
39
+ export const ModuleGraphFlexBoxWithProvider: React.FC<ModuleGraphFlexBoxProps> = (props) => {
40
+ return (
41
+ <CytoscapeInstanceProvider>
42
+ <ModuleGraphFlexBox {...props} />
43
+ </CytoscapeInstanceProvider>
44
+ )
45
+ }
@@ -1,5 +1,7 @@
1
+ import { PopperProps } from '@mui/material'
2
+ import { FlexCol } from '@xylabs/react-flexbox'
1
3
  import { NodeSingular } from 'cytoscape'
2
- import { useLayoutEffect, useRef, useState } from 'react'
4
+ import { useEffect, useLayoutEffect, useRef, useState } from 'react'
3
5
 
4
6
  import { ModuleHoverPopper } from './Popper'
5
7
 
@@ -11,12 +13,16 @@ export const ModuleGraphNodeHover: React.FC<ModuleHoverProps> = ({ node }) => {
11
13
  const { address, name } = node?.data() ?? {}
12
14
  const [boundingBox, setBoundingBox] = useState(node?.renderedBoundingBox())
13
15
  const ref = useRef<HTMLDivElement>(null)
14
- const [currentEl, setCurrentEl] = useState<HTMLDivElement | null>(null)
16
+ const [currentEl, setCurrentEl] = useState<PopperProps['anchorEl'] | null>(null)
15
17
 
16
- useLayoutEffect(() => {
17
- if (node && ref.current) {
18
+ // Ensure first render clears the previous element when node changes to avoid flicker
19
+ useEffect(() => {
20
+ setCurrentEl(null)
21
+ }, [node])
22
+
23
+ useEffect(() => {
24
+ if (node) {
18
25
  setBoundingBox(node.renderedBoundingBox())
19
- setCurrentEl(ref.current)
20
26
  }
21
27
 
22
28
  const listener = () => {
@@ -30,24 +36,30 @@ export const ModuleGraphNodeHover: React.FC<ModuleHoverProps> = ({ node }) => {
30
36
  }
31
37
  }, [node])
32
38
 
39
+ // Once boundingBox state is set and applied to the layout, update the ref
40
+ useLayoutEffect(() => {
41
+ setCurrentEl(ref.current)
42
+ }, [boundingBox])
43
+
33
44
  return (
34
45
  <>
46
+ <FlexCol
47
+ ref={ref}
48
+ sx={{
49
+ // For easier debugging of the 'ghost' element that matches the hovered cytoscape node
50
+ // backgroundColor: '#fff',
51
+ // opacity: 0.25,
52
+ cursor: 'pointer',
53
+ height: boundingBox?.h,
54
+ left: boundingBox?.x1,
55
+ pointerEvents: 'none',
56
+ position: 'absolute',
57
+ top: boundingBox?.y1,
58
+ width: boundingBox?.w,
59
+ }}
60
+ />
35
61
  {node ? (
36
62
  <>
37
- <div
38
- ref={ref}
39
- style={{
40
- // backgroundColor: '#fff',
41
- // opacity: 0.25,
42
- cursor: 'pointer',
43
- height: boundingBox?.h,
44
- left: boundingBox?.x1,
45
- pointerEvents: 'none',
46
- position: 'absolute',
47
- top: boundingBox?.y1,
48
- width: boundingBox?.w,
49
- }}
50
- ></div>
51
63
  <ModuleHoverPopper address={address} element={currentEl} name={name} placement={'top'} open />
52
64
  </>
53
65
  ) : null}
@@ -4,20 +4,24 @@ import { Identicon } from '@xylabs/react-identicon'
4
4
 
5
5
  export interface ModuleHoverPopperProps extends PopperProps {
6
6
  address?: string
7
- element?: HTMLElement | null
7
+ element?: PopperProps['anchorEl']
8
8
  name?: string
9
9
  }
10
10
 
11
11
  export const ModuleHoverPopper: React.FC<ModuleHoverPopperProps> = ({ address, element, name, ...props }) => {
12
12
  return (
13
- <Popper anchorEl={element} {...props}>
14
- <FlexCol gap={2} p={2} paper sx={{ backgroundColor: (theme: Theme) => alpha(theme.palette.background.paper, 0.95) }}>
15
- <FlexRow gap={2}>
16
- <Identicon value={address} size={24} />
17
- <Typography>{name}</Typography>
18
- </FlexRow>
19
- <Chip label={address} color={'primary'} />
20
- </FlexCol>
21
- </Popper>
13
+ <>
14
+ {element ? (
15
+ <Popper anchorEl={element} {...props}>
16
+ <FlexCol gap={2} p={2} paper sx={{ backgroundColor: (theme: Theme) => alpha(theme.palette.background.paper, 0.95) }}>
17
+ <FlexRow gap={2}>
18
+ <Identicon value={address} size={24} />
19
+ <Typography>{name}</Typography>
20
+ </FlexRow>
21
+ <Chip label={address} color={'primary'} />
22
+ </FlexCol>
23
+ </Popper>
24
+ ) : null}
25
+ </>
22
26
  )
23
27
  }
@@ -11,12 +11,15 @@ export const useCytoscapeOptions = (
11
11
  ) => {
12
12
  const defaultStyle = useCytoscapeStyle()
13
13
 
14
+ const resolvedLayout = layout ?? ConcentricLayout
15
+ const resolvedStyle = style ?? defaultStyle
16
+
14
17
  const options = useMemo<CytoscapeOptions | undefined>(() => {
15
- if (elements && layout && style) {
18
+ if (elements && resolvedLayout && resolvedStyle) {
16
19
  return {
17
20
  elements,
18
- layout: layout ?? ConcentricLayout,
19
- style: style ?? defaultStyle,
21
+ layout: resolvedLayout,
22
+ style: resolvedStyle,
20
23
  }
21
24
  }
22
25
  }, [elements, layout, style])
package/src/index.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './components'
2
+ export * from './contexts'
2
3
  export * from './Cytoscape'
3
4
  export * from './hooks'