@xyo-network/react-node 2.45.0-rc.2 → 2.45.0-rc.20

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 (188) hide show
  1. package/dist/cjs/components/Node.js +1 -1
  2. package/dist/cjs/components/Node.js.map +1 -1
  3. package/dist/cjs/components/NodeDrawer.js +1 -1
  4. package/dist/cjs/components/NodeDrawer.js.map +1 -1
  5. package/dist/cjs/contexts/index.js +0 -11
  6. package/dist/cjs/contexts/index.js.map +1 -1
  7. package/dist/cjs/hooks/index.js +5 -0
  8. package/dist/cjs/hooks/index.js.map +1 -1
  9. package/dist/cjs/{contexts → hooks}/useMemoryNodeUpdates.js +3 -3
  10. package/dist/cjs/hooks/useMemoryNodeUpdates.js.map +1 -0
  11. package/dist/cjs/hooks/useModule.js +61 -0
  12. package/dist/cjs/hooks/useModule.js.map +1 -0
  13. package/dist/cjs/hooks/useModules.js +47 -0
  14. package/dist/cjs/hooks/useModules.js.map +1 -0
  15. package/dist/cjs/hooks/useNode.js +54 -0
  16. package/dist/cjs/hooks/useNode.js.map +1 -0
  17. package/dist/cjs/{contexts/useModuleAddresses.js → hooks/useNodeAttachedAddresses.js} +9 -9
  18. package/dist/cjs/hooks/useNodeAttachedAddresses.js.map +1 -0
  19. package/dist/cjs/hooks/useProvidedNode.js +31 -0
  20. package/dist/cjs/hooks/useProvidedNode.js.map +1 -0
  21. package/dist/cjs/hooks/useWrappedModule.js +33 -0
  22. package/dist/cjs/hooks/useWrappedModule.js.map +1 -0
  23. package/dist/docs.json +767 -1776
  24. package/dist/esm/components/Node.js +1 -1
  25. package/dist/esm/components/Node.js.map +1 -1
  26. package/dist/esm/components/NodeDrawer.js +1 -1
  27. package/dist/esm/components/NodeDrawer.js.map +1 -1
  28. package/dist/esm/contexts/index.js +0 -11
  29. package/dist/esm/contexts/index.js.map +1 -1
  30. package/dist/esm/hooks/index.js +5 -0
  31. package/dist/esm/hooks/index.js.map +1 -1
  32. package/dist/esm/{contexts → hooks}/useMemoryNodeUpdates.js +3 -3
  33. package/dist/esm/hooks/useMemoryNodeUpdates.js.map +1 -0
  34. package/dist/esm/hooks/useModule.js +56 -0
  35. package/dist/esm/hooks/useModule.js.map +1 -0
  36. package/dist/esm/hooks/useModules.js +42 -0
  37. package/dist/esm/hooks/useModules.js.map +1 -0
  38. package/dist/esm/hooks/useNode.js +50 -0
  39. package/dist/esm/hooks/useNode.js.map +1 -0
  40. package/dist/esm/hooks/useNodeAttachedAddresses.js +17 -0
  41. package/dist/esm/hooks/useNodeAttachedAddresses.js.map +1 -0
  42. package/dist/esm/hooks/useProvidedNode.js +26 -0
  43. package/dist/esm/hooks/useProvidedNode.js.map +1 -0
  44. package/dist/esm/hooks/useWrappedModule.js +29 -0
  45. package/dist/esm/hooks/useWrappedModule.js.map +1 -0
  46. package/dist/types/contexts/index.d.ts +0 -11
  47. package/dist/types/contexts/index.d.ts.map +1 -1
  48. package/dist/types/hooks/index.d.ts +5 -0
  49. package/dist/types/hooks/index.d.ts.map +1 -1
  50. package/dist/types/hooks/useMemoryNodeUpdates.d.ts.map +1 -0
  51. package/dist/types/{contexts/useModules.d.ts → hooks/useModule.d.ts} +6 -6
  52. package/dist/types/hooks/useModule.d.ts.map +1 -0
  53. package/dist/types/hooks/useModules.d.ts +23 -0
  54. package/dist/types/hooks/useModules.d.ts.map +1 -0
  55. package/dist/types/hooks/useNode.d.ts +4 -0
  56. package/dist/types/hooks/useNode.d.ts.map +1 -0
  57. package/dist/types/hooks/useNodeAttachedAddresses.d.ts +2 -0
  58. package/dist/types/hooks/useNodeAttachedAddresses.d.ts.map +1 -0
  59. package/dist/types/hooks/useProvidedNode.d.ts +5 -0
  60. package/dist/types/hooks/useProvidedNode.d.ts.map +1 -0
  61. package/dist/types/hooks/useWrappedModule.d.ts +38 -0
  62. package/dist/types/hooks/useWrappedModule.d.ts.map +1 -0
  63. package/package.json +8 -13
  64. package/src/components/Node.stories.tsx +1 -1
  65. package/src/components/Node.tsx +1 -1
  66. package/src/components/NodeDrawer.tsx +1 -1
  67. package/src/contexts/index.ts +0 -11
  68. package/src/hooks/index.ts +5 -0
  69. package/src/{contexts → hooks}/useMemoryNodeUpdates.tsx +3 -3
  70. package/src/hooks/useModule.tsx +59 -0
  71. package/src/hooks/useModules.ts +45 -0
  72. package/src/hooks/useNode.tsx +51 -0
  73. package/src/{contexts/useModuleAddresses.ts → hooks/useNodeAttachedAddresses.ts} +6 -6
  74. package/src/hooks/useProvidedNode.tsx +31 -0
  75. package/src/hooks/useWrappedModule.tsx +37 -0
  76. package/dist/cjs/contexts/useArchiveArchivists.js +0 -38
  77. package/dist/cjs/contexts/useArchiveArchivists.js.map +0 -1
  78. package/dist/cjs/contexts/useArchivistModule.js +0 -12
  79. package/dist/cjs/contexts/useArchivistModule.js.map +0 -1
  80. package/dist/cjs/contexts/useArchivistModules.js +0 -11
  81. package/dist/cjs/contexts/useArchivistModules.js.map +0 -1
  82. package/dist/cjs/contexts/useDivinerModule.js +0 -12
  83. package/dist/cjs/contexts/useDivinerModule.js.map +0 -1
  84. package/dist/cjs/contexts/useDivinerModules.js +0 -12
  85. package/dist/cjs/contexts/useDivinerModules.js.map +0 -1
  86. package/dist/cjs/contexts/useMemoryNodeUpdates.js.map +0 -1
  87. package/dist/cjs/contexts/useModuleAddresses.js.map +0 -1
  88. package/dist/cjs/contexts/useModules.js +0 -22
  89. package/dist/cjs/contexts/useModules.js.map +0 -1
  90. package/dist/cjs/contexts/useNodeQueryDiviner.js +0 -43
  91. package/dist/cjs/contexts/useNodeQueryDiviner.js.map +0 -1
  92. package/dist/cjs/contexts/useWitnessModule.js +0 -12
  93. package/dist/cjs/contexts/useWitnessModule.js.map +0 -1
  94. package/dist/cjs/contexts/useWitnessModules.js +0 -11
  95. package/dist/cjs/contexts/useWitnessModules.js.map +0 -1
  96. package/dist/cjs/hooks/useModule/createUseModuleHook.js +0 -26
  97. package/dist/cjs/hooks/useModule/createUseModuleHook.js.map +0 -1
  98. package/dist/cjs/hooks/useModule/index.js +0 -6
  99. package/dist/cjs/hooks/useModule/index.js.map +0 -1
  100. package/dist/cjs/hooks/useModule/useModule.js +0 -7
  101. package/dist/cjs/hooks/useModule/useModule.js.map +0 -1
  102. package/dist/cjs/hooks/useNode/index.js +0 -6
  103. package/dist/cjs/hooks/useNode/index.js.map +0 -1
  104. package/dist/cjs/hooks/useNode/useNode.js +0 -7
  105. package/dist/cjs/hooks/useNode/useNode.js.map +0 -1
  106. package/dist/cjs/hooks/useNode/useProvidedNode.js +0 -12
  107. package/dist/cjs/hooks/useNode/useProvidedNode.js.map +0 -1
  108. package/dist/esm/contexts/useArchiveArchivists.js +0 -33
  109. package/dist/esm/contexts/useArchiveArchivists.js.map +0 -1
  110. package/dist/esm/contexts/useArchivistModule.js +0 -8
  111. package/dist/esm/contexts/useArchivistModule.js.map +0 -1
  112. package/dist/esm/contexts/useArchivistModules.js +0 -7
  113. package/dist/esm/contexts/useArchivistModules.js.map +0 -1
  114. package/dist/esm/contexts/useDivinerModule.js +0 -8
  115. package/dist/esm/contexts/useDivinerModule.js.map +0 -1
  116. package/dist/esm/contexts/useDivinerModules.js +0 -8
  117. package/dist/esm/contexts/useDivinerModules.js.map +0 -1
  118. package/dist/esm/contexts/useMemoryNodeUpdates.js.map +0 -1
  119. package/dist/esm/contexts/useModuleAddresses.js +0 -17
  120. package/dist/esm/contexts/useModuleAddresses.js.map +0 -1
  121. package/dist/esm/contexts/useModules.js +0 -17
  122. package/dist/esm/contexts/useModules.js.map +0 -1
  123. package/dist/esm/contexts/useNodeQueryDiviner.js +0 -37
  124. package/dist/esm/contexts/useNodeQueryDiviner.js.map +0 -1
  125. package/dist/esm/contexts/useWitnessModule.js +0 -8
  126. package/dist/esm/contexts/useWitnessModule.js.map +0 -1
  127. package/dist/esm/contexts/useWitnessModules.js +0 -7
  128. package/dist/esm/contexts/useWitnessModules.js.map +0 -1
  129. package/dist/esm/hooks/useModule/createUseModuleHook.js +0 -21
  130. package/dist/esm/hooks/useModule/createUseModuleHook.js.map +0 -1
  131. package/dist/esm/hooks/useModule/index.js +0 -3
  132. package/dist/esm/hooks/useModule/index.js.map +0 -1
  133. package/dist/esm/hooks/useModule/useModule.js +0 -4
  134. package/dist/esm/hooks/useModule/useModule.js.map +0 -1
  135. package/dist/esm/hooks/useNode/index.js +0 -3
  136. package/dist/esm/hooks/useNode/index.js.map +0 -1
  137. package/dist/esm/hooks/useNode/useNode.js +0 -4
  138. package/dist/esm/hooks/useNode/useNode.js.map +0 -1
  139. package/dist/esm/hooks/useNode/useProvidedNode.js +0 -9
  140. package/dist/esm/hooks/useNode/useProvidedNode.js.map +0 -1
  141. package/dist/types/contexts/useArchiveArchivists.d.ts +0 -9
  142. package/dist/types/contexts/useArchiveArchivists.d.ts.map +0 -1
  143. package/dist/types/contexts/useArchivistModule.d.ts +0 -4
  144. package/dist/types/contexts/useArchivistModule.d.ts.map +0 -1
  145. package/dist/types/contexts/useArchivistModules.d.ts +0 -3
  146. package/dist/types/contexts/useArchivistModules.d.ts.map +0 -1
  147. package/dist/types/contexts/useDivinerModule.d.ts +0 -4
  148. package/dist/types/contexts/useDivinerModule.d.ts.map +0 -1
  149. package/dist/types/contexts/useDivinerModules.d.ts +0 -3
  150. package/dist/types/contexts/useDivinerModules.d.ts.map +0 -1
  151. package/dist/types/contexts/useMemoryNodeUpdates.d.ts.map +0 -1
  152. package/dist/types/contexts/useModuleAddresses.d.ts +0 -2
  153. package/dist/types/contexts/useModuleAddresses.d.ts.map +0 -1
  154. package/dist/types/contexts/useModules.d.ts.map +0 -1
  155. package/dist/types/contexts/useNodeQueryDiviner.d.ts +0 -6
  156. package/dist/types/contexts/useNodeQueryDiviner.d.ts.map +0 -1
  157. package/dist/types/contexts/useWitnessModule.d.ts +0 -4
  158. package/dist/types/contexts/useWitnessModule.d.ts.map +0 -1
  159. package/dist/types/contexts/useWitnessModules.d.ts +0 -3
  160. package/dist/types/contexts/useWitnessModules.d.ts.map +0 -1
  161. package/dist/types/hooks/useModule/createUseModuleHook.d.ts +0 -50
  162. package/dist/types/hooks/useModule/createUseModuleHook.d.ts.map +0 -1
  163. package/dist/types/hooks/useModule/index.d.ts +0 -3
  164. package/dist/types/hooks/useModule/index.d.ts.map +0 -1
  165. package/dist/types/hooks/useModule/useModule.d.ts +0 -48
  166. package/dist/types/hooks/useModule/useModule.d.ts.map +0 -1
  167. package/dist/types/hooks/useNode/index.d.ts +0 -3
  168. package/dist/types/hooks/useNode/index.d.ts.map +0 -1
  169. package/dist/types/hooks/useNode/useNode.d.ts +0 -8
  170. package/dist/types/hooks/useNode/useNode.d.ts.map +0 -1
  171. package/dist/types/hooks/useNode/useProvidedNode.d.ts +0 -6
  172. package/dist/types/hooks/useNode/useProvidedNode.d.ts.map +0 -1
  173. package/src/contexts/useArchiveArchivists.tsx +0 -49
  174. package/src/contexts/useArchivistModule.ts +0 -10
  175. package/src/contexts/useArchivistModules.ts +0 -8
  176. package/src/contexts/useDivinerModule.ts +0 -10
  177. package/src/contexts/useDivinerModules.ts +0 -9
  178. package/src/contexts/useModules.ts +0 -23
  179. package/src/contexts/useNodeQueryDiviner.tsx +0 -54
  180. package/src/contexts/useWitnessModule.ts +0 -10
  181. package/src/contexts/useWitnessModules.ts +0 -8
  182. package/src/hooks/useModule/createUseModuleHook.tsx +0 -42
  183. package/src/hooks/useModule/index.ts +0 -2
  184. package/src/hooks/useModule/useModule.tsx +0 -5
  185. package/src/hooks/useNode/index.ts +0 -2
  186. package/src/hooks/useNode/useNode.tsx +0 -5
  187. package/src/hooks/useNode/useProvidedNode.tsx +0 -14
  188. /package/dist/types/{contexts → hooks}/useMemoryNodeUpdates.d.ts +0 -0
@@ -1,10 +0,0 @@
1
- import { ArchivistWrapper } from '@xyo-network/archivist'
2
- import { ModuleFilter } from '@xyo-network/module'
3
-
4
- import { useModules } from './useModules'
5
-
6
- export const useArchivistModule = (filter?: ModuleFilter) => {
7
- const modules = useModules(filter)
8
- const foundModule = modules?.shift()
9
- return foundModule ? new ArchivistWrapper(foundModule) : undefined
10
- }
@@ -1,8 +0,0 @@
1
- import { ArchivistGetQuerySchema, ArchivistWrapper } from '@xyo-network/archivist'
2
-
3
- import { useModules } from './useModules'
4
-
5
- export const useArchivistModules = () => {
6
- const modules = useModules({ query: [[ArchivistGetQuerySchema]] })
7
- return modules?.map((module) => new ArchivistWrapper(module))
8
- }
@@ -1,10 +0,0 @@
1
- import { DivinerWrapper } from '@xyo-network/diviner-wrapper'
2
- import { ModuleFilter } from '@xyo-network/module-model'
3
-
4
- import { useModules } from './useModules'
5
-
6
- export const useDivinerModule = (filter?: ModuleFilter) => {
7
- const modules = useModules(filter)
8
- const foundModule = modules?.shift()
9
- return foundModule ? new DivinerWrapper(foundModule) : undefined
10
- }
@@ -1,9 +0,0 @@
1
- import { XyoDivinerDivineQuerySchema } from '@xyo-network/diviner-model'
2
- import { DivinerWrapper } from '@xyo-network/diviner-wrapper'
3
-
4
- import { useModules } from './useModules'
5
-
6
- export const useDivinerModules = () => {
7
- const modules = useModules({ query: [[XyoDivinerDivineQuerySchema]] })
8
- return modules?.map((module) => new DivinerWrapper(module))
9
- }
@@ -1,23 +0,0 @@
1
- import { useAsyncEffect } from '@xylabs/react-shared'
2
- import { Module, ModuleFilter } from '@xyo-network/module'
3
- import { useState } from 'react'
4
-
5
- import { useProvidedNode } from '../hooks'
6
-
7
- export const useModules = <T extends Module = Module>(filter?: ModuleFilter) => {
8
- const node = useProvidedNode(true)
9
- const [modules, setModules] = useState<T[]>()
10
-
11
- useAsyncEffect(
12
- // eslint-disable-next-line react-hooks/exhaustive-deps
13
- async (mounted) => {
14
- const modules = await node?.resolve<T>(filter)
15
- if (mounted()) {
16
- setModules(modules)
17
- }
18
- },
19
- [filter, node],
20
- )
21
-
22
- return modules
23
- }
@@ -1,54 +0,0 @@
1
- import { useAsyncEffect } from '@xylabs/react-shared'
2
- import { DivinerWrapper } from '@xyo-network/diviner-wrapper'
3
- import { XyoPayload, XyoPayloads } from '@xyo-network/payload-model'
4
- import { assertDefinedEx } from '@xyo-network/react-shared'
5
- import { useState } from 'react'
6
-
7
- import { useProvidedNode } from '../hooks'
8
- import { useMemoryNodeUpdates } from './useMemoryNodeUpdates'
9
-
10
- export const useNodeQueryDivinerRaw = (
11
- moduleIdentifier?: string,
12
- query?: XyoPayload,
13
- refresher?: boolean,
14
- ): [XyoPayloads | undefined, Error | undefined] => {
15
- const [result, setResult] = useState<XyoPayloads>()
16
- const [error, setError] = useState<Error>()
17
- const node = useProvidedNode()
18
-
19
- useAsyncEffect(
20
- // eslint-disable-next-line react-hooks/exhaustive-deps
21
- async () => {
22
- if (moduleIdentifier && query && node && refresher) {
23
- try {
24
- const divinerModule = (await node.downResolver.resolve({ name: [moduleIdentifier] })).pop()
25
- assertDefinedEx(divinerModule, `Unable to find moduleIdentifier: ${moduleIdentifier}`)
26
- const diviner = DivinerWrapper.wrap(assertDefinedEx(divinerModule, `Unable to find moduleIdentifier: ${moduleIdentifier}`))
27
-
28
- const result = await diviner.divine([query])
29
- setResult(result)
30
- setError(undefined)
31
- } catch (e) {
32
- console.error(e)
33
- setResult(undefined)
34
- setError(e as Error)
35
- }
36
- }
37
- },
38
- [moduleIdentifier, node, query, refresher],
39
- )
40
-
41
- return [result, error]
42
- }
43
-
44
- export const useNodeQueryDiviner = (
45
- moduleIdentifier?: string,
46
- query?: XyoPayload,
47
- refresher?: boolean,
48
- refreshAddresses?: string[],
49
- ): ReturnType<typeof useNodeQueryDivinerRaw> => {
50
- const { module } = useMemoryNodeUpdates(refreshAddresses)
51
- const [result, error] = useNodeQueryDivinerRaw(moduleIdentifier, query, refresher ?? !!module)
52
-
53
- return [result, error]
54
- }
@@ -1,10 +0,0 @@
1
- import { ModuleFilter } from '@xyo-network/module'
2
- import { WitnessWrapper } from '@xyo-network/witness'
3
-
4
- import { useModules } from './useModules'
5
-
6
- export const useWitnessModule = (filter?: ModuleFilter) => {
7
- const modules = useModules(filter)
8
- const foundModule = modules?.shift()
9
- return foundModule ? new WitnessWrapper(foundModule) : undefined
10
- }
@@ -1,8 +0,0 @@
1
- import { WitnessWrapper, XyoWitnessObserveQuerySchema } from '@xyo-network/witness'
2
-
3
- import { useModules } from './useModules'
4
-
5
- export const useWitnessModules = () => {
6
- const modules = useModules({ query: [[XyoWitnessObserveQuerySchema]] })
7
- return modules?.map((module) => new WitnessWrapper(module))
8
- }
@@ -1,42 +0,0 @@
1
- /* eslint-disable react-hooks/rules-of-hooks */
2
- import { useAsyncEffect } from '@xylabs/react-shared'
3
- import { Account } from '@xyo-network/account'
4
- import { Module, ModuleWrapper } from '@xyo-network/module'
5
- import { useState } from 'react'
6
-
7
- import { useProvidedNode } from '../useNode'
8
-
9
- export type WrapFunc<TModule extends Module = Module, TWrapper extends ModuleWrapper = ModuleWrapper> = (
10
- module?: TModule,
11
- account?: Account,
12
- ) => TWrapper
13
-
14
- export const createUseModuleHook = <
15
- TModule extends Module = Module,
16
- TWrapper extends ModuleWrapper = ModuleWrapper,
17
- TWrapFunc extends WrapFunc<TModule, TWrapper> = WrapFunc<TModule, TWrapper>,
18
- >(
19
- wrapFunc: TWrapFunc,
20
- ) => {
21
- function use(name?: string): TModule | undefined
22
- function use(name: string | undefined, wrap: true | Account): TWrapper | undefined
23
- function use(address: string): TModule | undefined
24
- function use(address: string, wrap: true | Account): TWrapper | undefined
25
- function use(nameOrAddress?: string, wrap: boolean | Account = false): TWrapper | TModule | undefined {
26
- const node = useProvidedNode(true)
27
- const [module, setModule] = useState<TModule>()
28
- useAsyncEffect(
29
- // eslint-disable-next-line react-hooks/exhaustive-deps
30
- async (mounted) => {
31
- const module = await node?.resolve<TModule>(nameOrAddress)
32
- if (mounted()) {
33
- setModule(module)
34
- }
35
- },
36
- [node, nameOrAddress],
37
- )
38
-
39
- return wrap ? wrapFunc(module, typeof wrap === 'boolean' ? undefined : wrap) : module
40
- }
41
- return use
42
- }
@@ -1,2 +0,0 @@
1
- export * from './createUseModuleHook'
2
- export * from './useModule'
@@ -1,5 +0,0 @@
1
- import { Module, ModuleWrapper } from '@xyo-network/module'
2
-
3
- import { createUseModuleHook } from './createUseModuleHook'
4
-
5
- export const useModule = createUseModuleHook<Module, ModuleWrapper>(ModuleWrapper.wrap)
@@ -1,2 +0,0 @@
1
- export * from './useNode'
2
- export * from './useProvidedNode'
@@ -1,5 +0,0 @@
1
- import { NodeModule, NodeWrapper } from '@xyo-network/node'
2
-
3
- import { createUseModuleHook } from '../useModule'
4
-
5
- export const useNode = createUseModuleHook<NodeModule, NodeWrapper>(NodeWrapper.wrap)
@@ -1,14 +0,0 @@
1
- import { NodeModule, NodeWrapper } from '@xyo-network/node'
2
- import { useContext } from 'react'
3
-
4
- import { NodeContext } from '../../contexts'
5
-
6
- function useProvidedNodeFunc(wrap?: false): NodeModule | undefined
7
- function useProvidedNodeFunc(wrap: true): NodeWrapper | undefined
8
- function useProvidedNodeFunc(wrap?: boolean): NodeModule | undefined {
9
- const { node } = useContext(NodeContext)
10
-
11
- return wrap ? NodeWrapper.wrap(node) : node
12
- }
13
-
14
- export const useProvidedNode = useProvidedNodeFunc