@xyo-network/react-network 2.81.9 → 2.82.0

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 (216) hide show
  1. package/dist/browser/components/SelectEx/NetworkSelectEx.d.cts +1 -0
  2. package/dist/browser/components/SelectEx/NetworkSelectEx.d.cts.map +1 -1
  3. package/dist/browser/components/SelectEx/NetworkSelectEx.d.mts +1 -0
  4. package/dist/browser/components/SelectEx/NetworkSelectEx.d.mts.map +1 -1
  5. package/dist/browser/components/SelectEx/NetworkSelectEx.d.ts +1 -0
  6. package/dist/browser/components/SelectEx/NetworkSelectEx.d.ts.map +1 -1
  7. package/dist/browser/components/SelectEx/index.d.cts +1 -1
  8. package/dist/browser/components/SelectEx/index.d.cts.map +1 -1
  9. package/dist/browser/components/SelectEx/index.d.mts +1 -1
  10. package/dist/browser/components/SelectEx/index.d.mts.map +1 -1
  11. package/dist/browser/components/SelectEx/index.d.ts +1 -1
  12. package/dist/browser/components/SelectEx/index.d.ts.map +1 -1
  13. package/dist/browser/components/index.d.cts +1 -1
  14. package/dist/browser/components/index.d.mts +1 -1
  15. package/dist/browser/components/index.d.ts +1 -1
  16. package/dist/browser/contexts/Context.d.cts +1 -1
  17. package/dist/browser/contexts/Context.d.mts +1 -1
  18. package/dist/browser/contexts/Context.d.ts +1 -1
  19. package/dist/browser/contexts/Provider/Memory.d.cts +3 -2
  20. package/dist/browser/contexts/Provider/Memory.d.cts.map +1 -1
  21. package/dist/browser/contexts/Provider/Memory.d.mts +3 -2
  22. package/dist/browser/contexts/Provider/Memory.d.mts.map +1 -1
  23. package/dist/browser/contexts/Provider/Memory.d.ts +3 -2
  24. package/dist/browser/contexts/Provider/Memory.d.ts.map +1 -1
  25. package/dist/browser/contexts/Provider/Props.d.cts +1 -1
  26. package/dist/browser/contexts/Provider/Props.d.cts.map +1 -1
  27. package/dist/browser/contexts/Provider/Props.d.mts +1 -1
  28. package/dist/browser/contexts/Provider/Props.d.mts.map +1 -1
  29. package/dist/browser/contexts/Provider/Props.d.ts +1 -1
  30. package/dist/browser/contexts/Provider/Props.d.ts.map +1 -1
  31. package/dist/browser/contexts/Provider/Route.d.cts +2 -1
  32. package/dist/browser/contexts/Provider/Route.d.cts.map +1 -1
  33. package/dist/browser/contexts/Provider/Route.d.mts +2 -1
  34. package/dist/browser/contexts/Provider/Route.d.mts.map +1 -1
  35. package/dist/browser/contexts/Provider/Route.d.ts +2 -1
  36. package/dist/browser/contexts/Provider/Route.d.ts.map +1 -1
  37. package/dist/browser/contexts/Provider/index.d.cts +3 -3
  38. package/dist/browser/contexts/Provider/index.d.cts.map +1 -1
  39. package/dist/browser/contexts/Provider/index.d.mts +3 -3
  40. package/dist/browser/contexts/Provider/index.d.mts.map +1 -1
  41. package/dist/browser/contexts/Provider/index.d.ts +3 -3
  42. package/dist/browser/contexts/Provider/index.d.ts.map +1 -1
  43. package/dist/browser/contexts/index.d.cts +4 -4
  44. package/dist/browser/contexts/index.d.mts +4 -4
  45. package/dist/browser/contexts/index.d.ts +4 -4
  46. package/dist/browser/contexts/use.d.cts +1 -1
  47. package/dist/browser/contexts/use.d.mts +1 -1
  48. package/dist/browser/contexts/use.d.ts +1 -1
  49. package/dist/browser/index.cjs +118 -68
  50. package/dist/browser/index.cjs.map +1 -1
  51. package/dist/browser/index.d.cts +3 -3
  52. package/dist/browser/index.d.mts +3 -3
  53. package/dist/browser/index.d.ts +3 -3
  54. package/dist/browser/{index.js → index.mjs} +111 -69
  55. package/dist/browser/index.mjs.map +1 -0
  56. package/dist/browser/lib/Config/index.d.cts +4 -4
  57. package/dist/browser/lib/Config/index.d.mts +4 -4
  58. package/dist/browser/lib/Config/index.d.ts +4 -4
  59. package/dist/browser/lib/Config/resolveNetworkFromHostname.d.cts +1 -1
  60. package/dist/browser/lib/Config/resolveNetworkFromHostname.d.mts +1 -1
  61. package/dist/browser/lib/Config/resolveNetworkFromHostname.d.ts +1 -1
  62. package/dist/browser/lib/index.d.cts +4 -4
  63. package/dist/browser/lib/index.d.mts +4 -4
  64. package/dist/browser/lib/index.d.ts +4 -4
  65. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.cts +1 -0
  66. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.cts.map +1 -1
  67. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.mts +1 -0
  68. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.mts.map +1 -1
  69. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.ts +1 -0
  70. package/dist/neutral/components/SelectEx/NetworkSelectEx.d.ts.map +1 -1
  71. package/dist/neutral/components/SelectEx/index.d.cts +1 -1
  72. package/dist/neutral/components/SelectEx/index.d.cts.map +1 -1
  73. package/dist/neutral/components/SelectEx/index.d.mts +1 -1
  74. package/dist/neutral/components/SelectEx/index.d.mts.map +1 -1
  75. package/dist/neutral/components/SelectEx/index.d.ts +1 -1
  76. package/dist/neutral/components/SelectEx/index.d.ts.map +1 -1
  77. package/dist/neutral/components/index.d.cts +1 -1
  78. package/dist/neutral/components/index.d.mts +1 -1
  79. package/dist/neutral/components/index.d.ts +1 -1
  80. package/dist/neutral/contexts/Context.d.cts +1 -1
  81. package/dist/neutral/contexts/Context.d.mts +1 -1
  82. package/dist/neutral/contexts/Context.d.ts +1 -1
  83. package/dist/neutral/contexts/Provider/Memory.d.cts +3 -2
  84. package/dist/neutral/contexts/Provider/Memory.d.cts.map +1 -1
  85. package/dist/neutral/contexts/Provider/Memory.d.mts +3 -2
  86. package/dist/neutral/contexts/Provider/Memory.d.mts.map +1 -1
  87. package/dist/neutral/contexts/Provider/Memory.d.ts +3 -2
  88. package/dist/neutral/contexts/Provider/Memory.d.ts.map +1 -1
  89. package/dist/neutral/contexts/Provider/Props.d.cts +1 -1
  90. package/dist/neutral/contexts/Provider/Props.d.cts.map +1 -1
  91. package/dist/neutral/contexts/Provider/Props.d.mts +1 -1
  92. package/dist/neutral/contexts/Provider/Props.d.mts.map +1 -1
  93. package/dist/neutral/contexts/Provider/Props.d.ts +1 -1
  94. package/dist/neutral/contexts/Provider/Props.d.ts.map +1 -1
  95. package/dist/neutral/contexts/Provider/Route.d.cts +2 -1
  96. package/dist/neutral/contexts/Provider/Route.d.cts.map +1 -1
  97. package/dist/neutral/contexts/Provider/Route.d.mts +2 -1
  98. package/dist/neutral/contexts/Provider/Route.d.mts.map +1 -1
  99. package/dist/neutral/contexts/Provider/Route.d.ts +2 -1
  100. package/dist/neutral/contexts/Provider/Route.d.ts.map +1 -1
  101. package/dist/neutral/contexts/Provider/index.d.cts +3 -3
  102. package/dist/neutral/contexts/Provider/index.d.cts.map +1 -1
  103. package/dist/neutral/contexts/Provider/index.d.mts +3 -3
  104. package/dist/neutral/contexts/Provider/index.d.mts.map +1 -1
  105. package/dist/neutral/contexts/Provider/index.d.ts +3 -3
  106. package/dist/neutral/contexts/Provider/index.d.ts.map +1 -1
  107. package/dist/neutral/contexts/index.d.cts +4 -4
  108. package/dist/neutral/contexts/index.d.mts +4 -4
  109. package/dist/neutral/contexts/index.d.ts +4 -4
  110. package/dist/neutral/contexts/use.d.cts +1 -1
  111. package/dist/neutral/contexts/use.d.mts +1 -1
  112. package/dist/neutral/contexts/use.d.ts +1 -1
  113. package/dist/neutral/index.cjs +118 -68
  114. package/dist/neutral/index.cjs.map +1 -1
  115. package/dist/neutral/index.d.cts +3 -3
  116. package/dist/neutral/index.d.mts +3 -3
  117. package/dist/neutral/index.d.ts +3 -3
  118. package/dist/neutral/{index.js → index.mjs} +111 -69
  119. package/dist/neutral/index.mjs.map +1 -0
  120. package/dist/neutral/lib/Config/index.d.cts +4 -4
  121. package/dist/neutral/lib/Config/index.d.mts +4 -4
  122. package/dist/neutral/lib/Config/index.d.ts +4 -4
  123. package/dist/neutral/lib/Config/resolveNetworkFromHostname.d.cts +1 -1
  124. package/dist/neutral/lib/Config/resolveNetworkFromHostname.d.mts +1 -1
  125. package/dist/neutral/lib/Config/resolveNetworkFromHostname.d.ts +1 -1
  126. package/dist/neutral/lib/index.d.cts +4 -4
  127. package/dist/neutral/lib/index.d.mts +4 -4
  128. package/dist/neutral/lib/index.d.ts +4 -4
  129. package/dist/node/components/SelectEx/NetworkSelectEx.d.cts +1 -0
  130. package/dist/node/components/SelectEx/NetworkSelectEx.d.cts.map +1 -1
  131. package/dist/node/components/SelectEx/NetworkSelectEx.d.mts +1 -0
  132. package/dist/node/components/SelectEx/NetworkSelectEx.d.mts.map +1 -1
  133. package/dist/node/components/SelectEx/NetworkSelectEx.d.ts +1 -0
  134. package/dist/node/components/SelectEx/NetworkSelectEx.d.ts.map +1 -1
  135. package/dist/node/components/SelectEx/index.d.cts +1 -1
  136. package/dist/node/components/SelectEx/index.d.cts.map +1 -1
  137. package/dist/node/components/SelectEx/index.d.mts +1 -1
  138. package/dist/node/components/SelectEx/index.d.mts.map +1 -1
  139. package/dist/node/components/SelectEx/index.d.ts +1 -1
  140. package/dist/node/components/SelectEx/index.d.ts.map +1 -1
  141. package/dist/node/components/index.d.cts +1 -1
  142. package/dist/node/components/index.d.mts +1 -1
  143. package/dist/node/components/index.d.ts +1 -1
  144. package/dist/node/contexts/Context.d.cts +1 -1
  145. package/dist/node/contexts/Context.d.mts +1 -1
  146. package/dist/node/contexts/Context.d.ts +1 -1
  147. package/dist/node/contexts/Provider/Memory.d.cts +3 -2
  148. package/dist/node/contexts/Provider/Memory.d.cts.map +1 -1
  149. package/dist/node/contexts/Provider/Memory.d.mts +3 -2
  150. package/dist/node/contexts/Provider/Memory.d.mts.map +1 -1
  151. package/dist/node/contexts/Provider/Memory.d.ts +3 -2
  152. package/dist/node/contexts/Provider/Memory.d.ts.map +1 -1
  153. package/dist/node/contexts/Provider/Props.d.cts +1 -1
  154. package/dist/node/contexts/Provider/Props.d.cts.map +1 -1
  155. package/dist/node/contexts/Provider/Props.d.mts +1 -1
  156. package/dist/node/contexts/Provider/Props.d.mts.map +1 -1
  157. package/dist/node/contexts/Provider/Props.d.ts +1 -1
  158. package/dist/node/contexts/Provider/Props.d.ts.map +1 -1
  159. package/dist/node/contexts/Provider/Route.d.cts +2 -1
  160. package/dist/node/contexts/Provider/Route.d.cts.map +1 -1
  161. package/dist/node/contexts/Provider/Route.d.mts +2 -1
  162. package/dist/node/contexts/Provider/Route.d.mts.map +1 -1
  163. package/dist/node/contexts/Provider/Route.d.ts +2 -1
  164. package/dist/node/contexts/Provider/Route.d.ts.map +1 -1
  165. package/dist/node/contexts/Provider/index.d.cts +3 -3
  166. package/dist/node/contexts/Provider/index.d.cts.map +1 -1
  167. package/dist/node/contexts/Provider/index.d.mts +3 -3
  168. package/dist/node/contexts/Provider/index.d.mts.map +1 -1
  169. package/dist/node/contexts/Provider/index.d.ts +3 -3
  170. package/dist/node/contexts/Provider/index.d.ts.map +1 -1
  171. package/dist/node/contexts/index.d.cts +4 -4
  172. package/dist/node/contexts/index.d.mts +4 -4
  173. package/dist/node/contexts/index.d.ts +4 -4
  174. package/dist/node/contexts/use.d.cts +1 -1
  175. package/dist/node/contexts/use.d.mts +1 -1
  176. package/dist/node/contexts/use.d.ts +1 -1
  177. package/dist/node/index.cjs +119 -69
  178. package/dist/node/index.cjs.map +1 -1
  179. package/dist/node/index.d.cts +3 -3
  180. package/dist/node/index.d.mts +3 -3
  181. package/dist/node/index.d.ts +3 -3
  182. package/dist/node/{index.js → index.mjs} +112 -70
  183. package/dist/node/index.mjs.map +1 -0
  184. package/dist/node/lib/Config/index.d.cts +4 -4
  185. package/dist/node/lib/Config/index.d.mts +4 -4
  186. package/dist/node/lib/Config/index.d.ts +4 -4
  187. package/dist/node/lib/Config/resolveNetworkFromHostname.d.cts +1 -1
  188. package/dist/node/lib/Config/resolveNetworkFromHostname.d.mts +1 -1
  189. package/dist/node/lib/Config/resolveNetworkFromHostname.d.ts +1 -1
  190. package/dist/node/lib/index.d.cts +4 -4
  191. package/dist/node/lib/index.d.mts +4 -4
  192. package/dist/node/lib/index.d.ts +4 -4
  193. package/package.json +16 -16
  194. package/src/components/SelectEx/NetworkSelectEx.stories.tsx +5 -6
  195. package/src/components/SelectEx/NetworkSelectEx.tsx +3 -2
  196. package/src/components/SelectEx/index.ts +1 -1
  197. package/src/components/index.ts +1 -1
  198. package/src/contexts/Context.ts +1 -1
  199. package/src/contexts/Provider/Memory.stories.tsx +7 -5
  200. package/src/contexts/Provider/Memory.tsx +8 -6
  201. package/src/contexts/Provider/{Props.tsx → Props.ts} +1 -1
  202. package/src/contexts/Provider/Route.tsx +12 -11
  203. package/src/contexts/Provider/index.ts +3 -3
  204. package/src/contexts/index.ts +4 -4
  205. package/src/contexts/use.ts +2 -2
  206. package/src/index.ts +3 -3
  207. package/src/lib/Config/default.ts +2 -2
  208. package/src/lib/Config/find.ts +1 -1
  209. package/src/lib/Config/index.ts +4 -4
  210. package/src/lib/Config/resolveNetworkFromHostname.ts +1 -1
  211. package/src/lib/archivistNameToUri.ts +1 -1
  212. package/src/lib/archivistPresets.ts +1 -1
  213. package/src/lib/index.ts +4 -4
  214. package/dist/browser/index.js.map +0 -1
  215. package/dist/neutral/index.js.map +0 -1
  216. package/dist/node/index.js.map +0 -1
@@ -1,20 +1,22 @@
1
1
  import { WithChildren } from '@xylabs/react-shared'
2
- import { useState } from 'react'
2
+ import React, { useMemo, useState } from 'react'
3
3
 
4
- import { defaultNetworkConfigs } from '../../lib/index.js'
5
- import { NetworkContext } from '../Context.js'
6
- import { NetworkProviderProps } from './Props.js'
4
+ import { defaultNetworkConfigs } from '../../lib/index.ts'
5
+ import { NetworkContext } from '../Context.ts'
6
+ import { NetworkProviderProps } from './Props.ts'
7
7
 
8
8
  export const NetworkMemoryProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {
9
9
  if (defaultNetworkConfig && defaultNetworkName) {
10
10
  console.warn('Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig')
11
11
  }
12
12
 
13
- const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find((config) => config.name === defaultNetworkName) : undefined
13
+ const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find(config => config.name === defaultNetworkName) : undefined
14
14
 
15
15
  const [network, setNetwork] = useState(defaultNetworkConfig ?? resolvedDefaultNetworkConfig ?? defaultNetworkConfigs[0])
16
16
 
17
- return <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork }} {...props} />
17
+ const value = useMemo(() => ({ network, networks: defaultNetworkConfigs, provided: true, setNetwork }), [network, setNetwork])
18
+
19
+ return <NetworkContext.Provider value={value} {...props} />
18
20
  }
19
21
 
20
22
  /** @deprecated use NetworkMemoryProvider instead */
@@ -1,6 +1,6 @@
1
1
  import { NetworkPayload } from '@xyo-network/network'
2
2
 
3
- import { NetworkNames } from '../../lib/index.js'
3
+ import { NetworkNames } from '../../lib/index.ts'
4
4
 
5
5
  export interface NetworkProviderProps {
6
6
  /** @deprecated use defaultNetworkConfig instead */
@@ -1,13 +1,13 @@
1
1
  import { WithChildren } from '@xylabs/react-shared'
2
2
  import { NetworkPayload } from '@xyo-network/network'
3
- import { useCallback, useEffect, useState } from 'react'
3
+ import React, { useCallback, useEffect, useState } from 'react'
4
4
  import { useSearchParams } from 'react-router-dom'
5
5
 
6
- import { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.js'
7
- import { NetworkContext } from '../Context.js'
8
- import { useNetwork } from '../use.js'
9
- import { NetworkMemoryProvider } from './Memory.js'
10
- import { NetworkProviderProps } from './Props.js'
6
+ import { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.ts'
7
+ import { NetworkContext } from '../Context.ts'
8
+ import { useNetwork } from '../use.ts'
9
+ import { NetworkMemoryProvider } from './Memory.tsx'
10
+ import { NetworkProviderProps } from './Props.ts'
11
11
 
12
12
  const NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {
13
13
  const [initialized, setInitialized] = useState(false)
@@ -18,7 +18,7 @@ const NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {
18
18
  const slug = params.get('network')
19
19
  const routeNetwork = slug ? findNetworkConfig(slug) : undefined
20
20
 
21
- //update the network stored in the route
21
+ // update the network stored in the route
22
22
  const setNetworkParam = useCallback(
23
23
  (network?: NetworkPayload) => {
24
24
  if (network) {
@@ -32,7 +32,7 @@ const NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {
32
32
  [params, setParams, setNetwork],
33
33
  )
34
34
 
35
- //if the network is actively changed, update both memory and route
35
+ // if the network is actively changed, update both memory and route
36
36
  const setNetworkLocal = useCallback(
37
37
  (network: NetworkPayload) => {
38
38
  setNetworkParam(network)
@@ -41,14 +41,14 @@ const NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {
41
41
  [setNetworkParam, setNetwork],
42
42
  )
43
43
 
44
- //sync memory and route storage of network
44
+ // sync memory and route storage of network
45
45
  useEffect(() => {
46
46
  if (routeNetwork !== network) {
47
47
  if (routeNetwork === undefined && network !== undefined) {
48
- //if the route does not have a network selected, use what is in the memory context
48
+ // if the route does not have a network selected, use what is in the memory context
49
49
  setNetworkParam(network)
50
50
  } else if (routeNetwork) {
51
- //if the route has a selection and it is different from memory, update memory
51
+ // if the route has a selection and it is different from memory, update memory
52
52
  setNetwork?.(routeNetwork)
53
53
  }
54
54
  }
@@ -56,6 +56,7 @@ const NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {
56
56
  }, [routeNetwork, network, setNetworkParam, setNetwork])
57
57
 
58
58
  return (
59
+ // eslint-disable-next-line @eslint-react/no-unstable-context-value
59
60
  <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal }}>
60
61
  {initialized ? children : null}
61
62
  </NetworkContext.Provider>
@@ -1,3 +1,3 @@
1
- export * from './Memory.js'
2
- export * from './Props.js'
3
- export * from './Route.js'
1
+ export * from './Memory.tsx'
2
+ export * from './Props.ts'
3
+ export * from './Route.tsx'
@@ -1,4 +1,4 @@
1
- export * from './Context.js'
2
- export * from './Provider/index.js'
3
- export * from './State.js'
4
- export * from './use.js'
1
+ export * from './Context.ts'
2
+ export * from './Provider/index.ts'
3
+ export * from './State.ts'
4
+ export * from './use.ts'
@@ -1,7 +1,7 @@
1
1
  import { useContextEx } from '@xyo-network/react-shared'
2
2
 
3
- import { NetworkContext } from './Context.js'
4
- import { NetworkContextState } from './State.js'
3
+ import { NetworkContext } from './Context.ts'
4
+ import { NetworkContextState } from './State.ts'
5
5
 
6
6
  export const useNetwork = (required = false) => {
7
7
  return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)
package/src/index.ts CHANGED
@@ -1,3 +1,3 @@
1
- export * from './components/index.js'
2
- export * from './contexts/index.js'
3
- export * from './lib/index.js'
1
+ export * from './components/index.ts'
2
+ export * from './contexts/index.ts'
3
+ export * from './lib/index.ts'
@@ -1,7 +1,7 @@
1
1
  import { NetworkPayload, NetworkSchema } from '@xyo-network/network'
2
2
 
3
- import { findArchivistPreset } from '../archivistPresets.js'
4
- import { findDivinerPreset } from '../divinerPresets.js'
3
+ import { findArchivistPreset } from '../archivistPresets.ts'
4
+ import { findDivinerPreset } from '../divinerPresets.ts'
5
5
 
6
6
  export const defaultNetworkConfigs: NetworkPayload[] = [
7
7
  {
@@ -1,4 +1,4 @@
1
- import { defaultNetworkConfigs } from './default.js'
1
+ import { defaultNetworkConfigs } from './default.ts'
2
2
 
3
3
  export const findNetworkConfig = (slug: string, configs = defaultNetworkConfigs) => {
4
4
  return configs.find((item) => {
@@ -1,4 +1,4 @@
1
- export * from './default.js'
2
- export * from './find.js'
3
- export * from './NetworkNames.js'
4
- export * from './resolveNetworkFromHostname.js'
1
+ export * from './default.ts'
2
+ export * from './find.ts'
3
+ export * from './NetworkNames.ts'
4
+ export * from './resolveNetworkFromHostname.ts'
@@ -1,4 +1,4 @@
1
- import { NetworkNames } from './NetworkNames.js'
1
+ import { NetworkNames } from './NetworkNames.ts'
2
2
 
3
3
  export type SiteName = 'explore' | 'node'
4
4
 
@@ -1,4 +1,4 @@
1
- import { archivistPresets } from './archivistPresets.js'
1
+ import { archivistPresets } from './archivistPresets.ts'
2
2
 
3
3
  export const archivistUriToName = () => {
4
4
  // eslint-disable-next-line unicorn/no-array-reduce
@@ -1,7 +1,7 @@
1
1
  import { Hash } from '@xylabs/hex'
2
2
  import { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'
3
3
 
4
- import { ExplorerMapHashes } from './ExplorerMapHashes.js'
4
+ import { ExplorerMapHashes } from './ExplorerMapHashes.ts'
5
5
 
6
6
  export type ArchivistPreset = NetworkNodePayload & {
7
7
  explorerMapHashes?: {
package/src/lib/index.ts CHANGED
@@ -1,4 +1,4 @@
1
- export * from './archivistNameToUri.js'
2
- export * from './archivistPresets.js'
3
- export * from './Config/index.js'
4
- export * from './divinerPresets.js'
1
+ export * from './archivistNameToUri.ts'
2
+ export * from './archivistPresets.ts'
3
+ export * from './Config/index.ts'
4
+ export * from './divinerPresets.ts'
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/SelectEx/NetworkSelectEx.tsx","../../src/contexts/Context.ts","../../src/contexts/Provider/Memory.tsx","../../src/lib/archivistPresets.ts","../../src/lib/ExplorerMapHashes.ts","../../src/lib/archivistNameToUri.ts","../../src/lib/Config/default.ts","../../src/lib/divinerPresets.ts","../../src/lib/Config/find.ts","../../src/lib/Config/resolveNetworkFromHostname.ts","../../src/contexts/Provider/Route.tsx","../../src/contexts/use.ts"],"sourcesContent":["import { MenuItem } from '@mui/material'\nimport { assertEx } from '@xylabs/assert'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { useNetwork } from '../../contexts/index.js'\nimport { findNetworkConfig } from '../../lib/index.js'\n\nexport type NetworkSelectExProps = Omit<SelectExProps<string>, 'variant'> &\n Partial<SelectExProps<string>> & {\n responsive?: boolean\n }\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({ onChange, variant = 'outlined', responsive = true, ...props }) => {\n const { network, setNetwork, networks } = useNetwork(false)\n const sm = useBreakpoint() === 'sm'\n return (\n <SelectEx\n variant={variant}\n size=\"small\"\n value={network?.slug ?? ''}\n onChange={(event, child) => {\n if (event.target.value !== network?.slug) {\n onChange?.(event, child)\n setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)))\n }\n }}\n {...props}\n >\n {networks?.map((network) => {\n return (\n <MenuItem key={network.slug} value={network.slug}>\n {responsive && sm ? network.name?.[0].toUpperCase() : network.name}\n </MenuItem>\n )\n })}\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContextState } from './State.js'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { NetworkProviderProps } from './Props.js'\n\nexport const NetworkMemoryProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n if (defaultNetworkConfig && defaultNetworkName) {\n console.warn('Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig')\n }\n\n const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find((config) => config.name === defaultNetworkName) : undefined\n\n const [network, setNetwork] = useState(defaultNetworkConfig ?? resolvedDefaultNetworkConfig ?? defaultNetworkConfigs[0])\n\n return <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork }} {...props} />\n}\n\n/** @deprecated use NetworkMemoryProvider instead */\nexport const NetworkProvider = NetworkMemoryProvider\n","import { Hash } from '@xylabs/hex'\nimport { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes.js'\n\nexport type ArchivistPreset = NetworkNodePayload & {\n explorerMapHashes?: {\n animatedAnswerHashes: Hash[]\n staticAnswerHash: Hash\n }\n}\n\nexport const findArchivistPreset = (slug: string) => {\n return (\n archivistPresets.find((item) => {\n return item.slug === slug\n }) ?? archivistPresets[0]\n )\n}\n\nexport const archivistPresets: ArchivistPreset[] = [\n {\n docs: 'https://beta.archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (kerplunk)',\n schema: NetworkNodeSchema,\n slug: 'kerplunk-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://beta.api.archivist.xyo.network',\n },\n {\n docs: 'https://archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (main)',\n schema: NetworkNodeSchema,\n slug: 'main-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://api.archivist.xyo.network',\n },\n {\n docs: 'http://localhost:8080/api',\n name: 'XYO Shared Archivist (local)',\n schema: NetworkNodeSchema,\n slug: 'local-archivist-xyo-network',\n type: 'archivist',\n uri: 'http://localhost:8080',\n },\n]\n","import { Hash } from '@xylabs/hex'\nexport const ExplorerMapHashes: { animatedAnswerHashes: Hash[]; staticAnswerHash: Hash } = {\n animatedAnswerHashes: [\n '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',\n '531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898',\n 'c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb',\n '29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e',\n 'cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c',\n '1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d',\n '1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9',\n '973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9',\n '463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95',\n '15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555',\n '32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e',\n ],\n staticAnswerHash: 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5',\n}\n","import { archivistPresets } from './archivistPresets.js'\n\nexport const archivistUriToName = () => {\n // eslint-disable-next-line unicorn/no-array-reduce\n return archivistPresets.reduce<Record<string, string>>((acc, { name, uri }) => {\n if (name) {\n acc[uri] = name\n }\n return acc\n }, {})\n}\n","import { NetworkPayload, NetworkSchema } from '@xyo-network/network'\n\nimport { findArchivistPreset } from '../archivistPresets.js'\nimport { findDivinerPreset } from '../divinerPresets.js'\n\nexport const defaultNetworkConfigs: NetworkPayload[] = [\n {\n name: 'Kerplunk',\n nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'kerplunk',\n },\n {\n name: 'Main',\n nodes: [findArchivistPreset('main-archivist-xyo-network'), findDivinerPreset('location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'main',\n },\n {\n name: 'Local',\n nodes: [findArchivistPreset('local-archivist-xyo-network'), findDivinerPreset('local-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'local',\n },\n]\n\n/** @deprecated use defaultNetworkConfigs instead */\nexport const networkPresets = defaultNetworkConfigs\n","import { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nexport const findDivinerPreset = (slug: string) => {\n return (\n divinerPresets.find((item) => {\n return item.slug === slug\n }) ?? divinerPresets[0]\n )\n}\n\nexport const divinerPresets: NetworkNodePayload[] = [\n {\n name: 'XYO Location (beta)',\n schema: NetworkNodeSchema,\n slug: 'beta-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://beta.api.location.diviner.xyo.network',\n web: 'https://beta.explore.xyo.network',\n },\n {\n name: 'XYO Location',\n schema: NetworkNodeSchema,\n slug: 'location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://api.location.diviner.xyo.network',\n web: 'https://explore.xyo.network',\n },\n {\n name: 'XYO Location (local)',\n schema: NetworkNodeSchema,\n slug: 'local-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'http://localhost:8082',\n web: 'http://localhost:3000',\n },\n]\n","import { defaultNetworkConfigs } from './default.js'\n\nexport const findNetworkConfig = (slug: string, configs = defaultNetworkConfigs) => {\n return configs.find((item) => {\n return item.slug === slug\n })\n}\n\n/** @deprecated use findNetworkConfig instead */\nexport const findNetworkPreset = findNetworkConfig\n","import { NetworkNames } from './NetworkNames.js'\n\nexport type SiteName = 'explore' | 'node'\n\nexport const resolveNetworkFromHostName = (fallback: NetworkNames = 'Kerplunk', siteName: SiteName) => {\n switch (document.location.hostname) {\n case `${siteName}.xyo.network`: {\n return 'Main'\n }\n case `beta.${siteName}.xyo.network`: {\n return 'Kerplunk'\n }\n default: {\n return fallback\n }\n }\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { NetworkPayload } from '@xyo-network/network'\nimport { useCallback, useEffect, useState } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { useNetwork } from '../use.js'\nimport { NetworkMemoryProvider } from './Memory.js'\nimport { NetworkProviderProps } from './Props.js'\n\nconst NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const [initialized, setInitialized] = useState(false)\n const { network, setNetwork } = useNetwork()\n\n const [params, setParams] = useSearchParams()\n\n const slug = params.get('network')\n const routeNetwork = slug ? findNetworkConfig(slug) : undefined\n\n //update the network stored in the route\n const setNetworkParam = useCallback(\n (network?: NetworkPayload) => {\n if (network) {\n params.set('network', network.slug)\n setParams(params, { replace: true })\n setNetwork?.(network)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setNetwork],\n )\n\n //if the network is actively changed, update both memory and route\n const setNetworkLocal = useCallback(\n (network: NetworkPayload) => {\n setNetworkParam(network)\n setNetwork?.(network)\n },\n [setNetworkParam, setNetwork],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeNetwork !== network) {\n if (routeNetwork === undefined && network !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setNetworkParam(network)\n } else if (routeNetwork) {\n //if the route has a selection and it is different from memory, update memory\n setNetwork?.(routeNetwork)\n }\n }\n setInitialized(true)\n }, [routeNetwork, network, setNetworkParam, setNetwork])\n\n return (\n <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal }}>\n {initialized ? children : null}\n </NetworkContext.Provider>\n )\n}\n\nexport const NetworkRouteProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n return (\n <NetworkMemoryProvider defaultNetworkConfig={defaultNetworkConfig} defaultNetworkName={defaultNetworkName}>\n <NetworkRouteProviderInner {...props} />\n </NetworkMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContext } from './Context.js'\nimport { NetworkContextState } from './State.js'\n\nexport const useNetwork = (required = false) => {\n return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)\n}\n"],"mappings":"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","names":["NetworkNodeSchema","useState","jsx","useState","network","jsx","network"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/SelectEx/NetworkSelectEx.tsx","../../src/contexts/Context.ts","../../src/contexts/Provider/Memory.tsx","../../src/lib/archivistPresets.ts","../../src/lib/ExplorerMapHashes.ts","../../src/lib/archivistNameToUri.ts","../../src/lib/Config/default.ts","../../src/lib/divinerPresets.ts","../../src/lib/Config/find.ts","../../src/lib/Config/resolveNetworkFromHostname.ts","../../src/contexts/Provider/Route.tsx","../../src/contexts/use.ts"],"sourcesContent":["import { MenuItem } from '@mui/material'\nimport { assertEx } from '@xylabs/assert'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { useNetwork } from '../../contexts/index.js'\nimport { findNetworkConfig } from '../../lib/index.js'\n\nexport type NetworkSelectExProps = Omit<SelectExProps<string>, 'variant'> &\n Partial<SelectExProps<string>> & {\n responsive?: boolean\n }\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({ onChange, variant = 'outlined', responsive = true, ...props }) => {\n const { network, setNetwork, networks } = useNetwork(false)\n const sm = useBreakpoint() === 'sm'\n return (\n <SelectEx\n variant={variant}\n size=\"small\"\n value={network?.slug ?? ''}\n onChange={(event, child) => {\n if (event.target.value !== network?.slug) {\n onChange?.(event, child)\n setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)))\n }\n }}\n {...props}\n >\n {networks?.map((network) => {\n return (\n <MenuItem key={network.slug} value={network.slug}>\n {responsive && sm ? network.name?.[0].toUpperCase() : network.name}\n </MenuItem>\n )\n })}\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContextState } from './State.js'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { NetworkProviderProps } from './Props.js'\n\nexport const NetworkMemoryProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n if (defaultNetworkConfig && defaultNetworkName) {\n console.warn('Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig')\n }\n\n const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find((config) => config.name === defaultNetworkName) : undefined\n\n const [network, setNetwork] = useState(defaultNetworkConfig ?? resolvedDefaultNetworkConfig ?? defaultNetworkConfigs[0])\n\n return <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork }} {...props} />\n}\n\n/** @deprecated use NetworkMemoryProvider instead */\nexport const NetworkProvider = NetworkMemoryProvider\n","import { Hash } from '@xylabs/hex'\nimport { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes.js'\n\nexport type ArchivistPreset = NetworkNodePayload & {\n explorerMapHashes?: {\n animatedAnswerHashes: Hash[]\n staticAnswerHash: Hash\n }\n}\n\nexport const findArchivistPreset = (slug: string) => {\n return (\n archivistPresets.find((item) => {\n return item.slug === slug\n }) ?? archivistPresets[0]\n )\n}\n\nexport const archivistPresets: ArchivistPreset[] = [\n {\n docs: 'https://beta.archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (kerplunk)',\n schema: NetworkNodeSchema,\n slug: 'kerplunk-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://beta.api.archivist.xyo.network',\n },\n {\n docs: 'https://archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (main)',\n schema: NetworkNodeSchema,\n slug: 'main-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://api.archivist.xyo.network',\n },\n {\n docs: 'http://localhost:8080/api',\n name: 'XYO Shared Archivist (local)',\n schema: NetworkNodeSchema,\n slug: 'local-archivist-xyo-network',\n type: 'archivist',\n uri: 'http://localhost:8080',\n },\n]\n","import { Hash } from '@xylabs/hex'\nexport const ExplorerMapHashes: { animatedAnswerHashes: Hash[]; staticAnswerHash: Hash } = {\n animatedAnswerHashes: [\n '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',\n '531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898',\n 'c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb',\n '29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e',\n 'cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c',\n '1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d',\n '1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9',\n '973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9',\n '463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95',\n '15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555',\n '32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e',\n ],\n staticAnswerHash: 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5',\n}\n","import { archivistPresets } from './archivistPresets.js'\n\nexport const archivistUriToName = () => {\n // eslint-disable-next-line unicorn/no-array-reduce\n return archivistPresets.reduce<Record<string, string>>((acc, { name, uri }) => {\n if (name) {\n acc[uri] = name\n }\n return acc\n }, {})\n}\n","import { NetworkPayload, NetworkSchema } from '@xyo-network/network'\n\nimport { findArchivistPreset } from '../archivistPresets.js'\nimport { findDivinerPreset } from '../divinerPresets.js'\n\nexport const defaultNetworkConfigs: NetworkPayload[] = [\n {\n name: 'Kerplunk',\n nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'kerplunk',\n },\n {\n name: 'Main',\n nodes: [findArchivistPreset('main-archivist-xyo-network'), findDivinerPreset('location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'main',\n },\n {\n name: 'Local',\n nodes: [findArchivistPreset('local-archivist-xyo-network'), findDivinerPreset('local-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'local',\n },\n]\n\n/** @deprecated use defaultNetworkConfigs instead */\nexport const networkPresets = defaultNetworkConfigs\n","import { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nexport const findDivinerPreset = (slug: string) => {\n return (\n divinerPresets.find((item) => {\n return item.slug === slug\n }) ?? divinerPresets[0]\n )\n}\n\nexport const divinerPresets: NetworkNodePayload[] = [\n {\n name: 'XYO Location (beta)',\n schema: NetworkNodeSchema,\n slug: 'beta-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://beta.api.location.diviner.xyo.network',\n web: 'https://beta.explore.xyo.network',\n },\n {\n name: 'XYO Location',\n schema: NetworkNodeSchema,\n slug: 'location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://api.location.diviner.xyo.network',\n web: 'https://explore.xyo.network',\n },\n {\n name: 'XYO Location (local)',\n schema: NetworkNodeSchema,\n slug: 'local-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'http://localhost:8082',\n web: 'http://localhost:3000',\n },\n]\n","import { defaultNetworkConfigs } from './default.js'\n\nexport const findNetworkConfig = (slug: string, configs = defaultNetworkConfigs) => {\n return configs.find((item) => {\n return item.slug === slug\n })\n}\n\n/** @deprecated use findNetworkConfig instead */\nexport const findNetworkPreset = findNetworkConfig\n","import { NetworkNames } from './NetworkNames.js'\n\nexport type SiteName = 'explore' | 'node'\n\nexport const resolveNetworkFromHostName = (fallback: NetworkNames = 'Kerplunk', siteName: SiteName) => {\n switch (document.location.hostname) {\n case `${siteName}.xyo.network`: {\n return 'Main'\n }\n case `beta.${siteName}.xyo.network`: {\n return 'Kerplunk'\n }\n default: {\n return fallback\n }\n }\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { NetworkPayload } from '@xyo-network/network'\nimport { useCallback, useEffect, useState } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { useNetwork } from '../use.js'\nimport { NetworkMemoryProvider } from './Memory.js'\nimport { NetworkProviderProps } from './Props.js'\n\nconst NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const [initialized, setInitialized] = useState(false)\n const { network, setNetwork } = useNetwork()\n\n const [params, setParams] = useSearchParams()\n\n const slug = params.get('network')\n const routeNetwork = slug ? findNetworkConfig(slug) : undefined\n\n //update the network stored in the route\n const setNetworkParam = useCallback(\n (network?: NetworkPayload) => {\n if (network) {\n params.set('network', network.slug)\n setParams(params, { replace: true })\n setNetwork?.(network)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setNetwork],\n )\n\n //if the network is actively changed, update both memory and route\n const setNetworkLocal = useCallback(\n (network: NetworkPayload) => {\n setNetworkParam(network)\n setNetwork?.(network)\n },\n [setNetworkParam, setNetwork],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeNetwork !== network) {\n if (routeNetwork === undefined && network !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setNetworkParam(network)\n } else if (routeNetwork) {\n //if the route has a selection and it is different from memory, update memory\n setNetwork?.(routeNetwork)\n }\n }\n setInitialized(true)\n }, [routeNetwork, network, setNetworkParam, setNetwork])\n\n return (\n <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal }}>\n {initialized ? children : null}\n </NetworkContext.Provider>\n )\n}\n\nexport const NetworkRouteProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n return (\n <NetworkMemoryProvider defaultNetworkConfig={defaultNetworkConfig} defaultNetworkName={defaultNetworkName}>\n <NetworkRouteProviderInner {...props} />\n </NetworkMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContext } from './Context.js'\nimport { NetworkContextState } from './State.js'\n\nexport const useNetwork = (required = false) => {\n return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)\n}\n"],"mappings":"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","names":["NetworkNodeSchema","useState","jsx","useState","network","jsx","network"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/SelectEx/NetworkSelectEx.tsx","../../src/contexts/Context.ts","../../src/contexts/Provider/Memory.tsx","../../src/lib/archivistPresets.ts","../../src/lib/ExplorerMapHashes.ts","../../src/lib/archivistNameToUri.ts","../../src/lib/Config/default.ts","../../src/lib/divinerPresets.ts","../../src/lib/Config/find.ts","../../src/lib/Config/resolveNetworkFromHostname.ts","../../src/contexts/Provider/Route.tsx","../../src/contexts/use.ts"],"sourcesContent":["import { MenuItem } from '@mui/material'\nimport { assertEx } from '@xylabs/assert'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { useNetwork } from '../../contexts/index.js'\nimport { findNetworkConfig } from '../../lib/index.js'\n\nexport type NetworkSelectExProps = Omit<SelectExProps<string>, 'variant'> &\n Partial<SelectExProps<string>> & {\n responsive?: boolean\n }\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({ onChange, variant = 'outlined', responsive = true, ...props }) => {\n const { network, setNetwork, networks } = useNetwork(false)\n const sm = useBreakpoint() === 'sm'\n return (\n <SelectEx\n variant={variant}\n size=\"small\"\n value={network?.slug ?? ''}\n onChange={(event, child) => {\n if (event.target.value !== network?.slug) {\n onChange?.(event, child)\n setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)))\n }\n }}\n {...props}\n >\n {networks?.map((network) => {\n return (\n <MenuItem key={network.slug} value={network.slug}>\n {responsive && sm ? network.name?.[0].toUpperCase() : network.name}\n </MenuItem>\n )\n })}\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContextState } from './State.js'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { NetworkProviderProps } from './Props.js'\n\nexport const NetworkMemoryProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n if (defaultNetworkConfig && defaultNetworkName) {\n console.warn('Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig')\n }\n\n const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find((config) => config.name === defaultNetworkName) : undefined\n\n const [network, setNetwork] = useState(defaultNetworkConfig ?? resolvedDefaultNetworkConfig ?? defaultNetworkConfigs[0])\n\n return <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork }} {...props} />\n}\n\n/** @deprecated use NetworkMemoryProvider instead */\nexport const NetworkProvider = NetworkMemoryProvider\n","import { Hash } from '@xylabs/hex'\nimport { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes.js'\n\nexport type ArchivistPreset = NetworkNodePayload & {\n explorerMapHashes?: {\n animatedAnswerHashes: Hash[]\n staticAnswerHash: Hash\n }\n}\n\nexport const findArchivistPreset = (slug: string) => {\n return (\n archivistPresets.find((item) => {\n return item.slug === slug\n }) ?? archivistPresets[0]\n )\n}\n\nexport const archivistPresets: ArchivistPreset[] = [\n {\n docs: 'https://beta.archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (kerplunk)',\n schema: NetworkNodeSchema,\n slug: 'kerplunk-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://beta.api.archivist.xyo.network',\n },\n {\n docs: 'https://archivist.xyo.network/api',\n explorerMapHashes: ExplorerMapHashes,\n name: 'XYO Shared Archivist (main)',\n schema: NetworkNodeSchema,\n slug: 'main-archivist-xyo-network',\n type: 'archivist',\n uri: 'https://api.archivist.xyo.network',\n },\n {\n docs: 'http://localhost:8080/api',\n name: 'XYO Shared Archivist (local)',\n schema: NetworkNodeSchema,\n slug: 'local-archivist-xyo-network',\n type: 'archivist',\n uri: 'http://localhost:8080',\n },\n]\n","import { Hash } from '@xylabs/hex'\nexport const ExplorerMapHashes: { animatedAnswerHashes: Hash[]; staticAnswerHash: Hash } = {\n animatedAnswerHashes: [\n '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',\n '531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898',\n 'c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb',\n '29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e',\n 'cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c',\n '1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d',\n '1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9',\n '973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9',\n '463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95',\n '15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555',\n '32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e',\n ],\n staticAnswerHash: 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5',\n}\n","import { archivistPresets } from './archivistPresets.js'\n\nexport const archivistUriToName = () => {\n // eslint-disable-next-line unicorn/no-array-reduce\n return archivistPresets.reduce<Record<string, string>>((acc, { name, uri }) => {\n if (name) {\n acc[uri] = name\n }\n return acc\n }, {})\n}\n","import { NetworkPayload, NetworkSchema } from '@xyo-network/network'\n\nimport { findArchivistPreset } from '../archivistPresets.js'\nimport { findDivinerPreset } from '../divinerPresets.js'\n\nexport const defaultNetworkConfigs: NetworkPayload[] = [\n {\n name: 'Kerplunk',\n nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'kerplunk',\n },\n {\n name: 'Main',\n nodes: [findArchivistPreset('main-archivist-xyo-network'), findDivinerPreset('location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'main',\n },\n {\n name: 'Local',\n nodes: [findArchivistPreset('local-archivist-xyo-network'), findDivinerPreset('local-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'local',\n },\n]\n\n/** @deprecated use defaultNetworkConfigs instead */\nexport const networkPresets = defaultNetworkConfigs\n","import { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nexport const findDivinerPreset = (slug: string) => {\n return (\n divinerPresets.find((item) => {\n return item.slug === slug\n }) ?? divinerPresets[0]\n )\n}\n\nexport const divinerPresets: NetworkNodePayload[] = [\n {\n name: 'XYO Location (beta)',\n schema: NetworkNodeSchema,\n slug: 'beta-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://beta.api.location.diviner.xyo.network',\n web: 'https://beta.explore.xyo.network',\n },\n {\n name: 'XYO Location',\n schema: NetworkNodeSchema,\n slug: 'location-diviner-xyo-network',\n type: 'diviner',\n uri: 'https://api.location.diviner.xyo.network',\n web: 'https://explore.xyo.network',\n },\n {\n name: 'XYO Location (local)',\n schema: NetworkNodeSchema,\n slug: 'local-location-diviner-xyo-network',\n type: 'diviner',\n uri: 'http://localhost:8082',\n web: 'http://localhost:3000',\n },\n]\n","import { defaultNetworkConfigs } from './default.js'\n\nexport const findNetworkConfig = (slug: string, configs = defaultNetworkConfigs) => {\n return configs.find((item) => {\n return item.slug === slug\n })\n}\n\n/** @deprecated use findNetworkConfig instead */\nexport const findNetworkPreset = findNetworkConfig\n","import { NetworkNames } from './NetworkNames.js'\n\nexport type SiteName = 'explore' | 'node'\n\nexport const resolveNetworkFromHostName = (fallback: NetworkNames = 'Kerplunk', siteName: SiteName) => {\n switch (document.location.hostname) {\n case `${siteName}.xyo.network`: {\n return 'Main'\n }\n case `beta.${siteName}.xyo.network`: {\n return 'Kerplunk'\n }\n default: {\n return fallback\n }\n }\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { NetworkPayload } from '@xyo-network/network'\nimport { useCallback, useEffect, useState } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.js'\nimport { NetworkContext } from '../Context.js'\nimport { useNetwork } from '../use.js'\nimport { NetworkMemoryProvider } from './Memory.js'\nimport { NetworkProviderProps } from './Props.js'\n\nconst NetworkRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const [initialized, setInitialized] = useState(false)\n const { network, setNetwork } = useNetwork()\n\n const [params, setParams] = useSearchParams()\n\n const slug = params.get('network')\n const routeNetwork = slug ? findNetworkConfig(slug) : undefined\n\n //update the network stored in the route\n const setNetworkParam = useCallback(\n (network?: NetworkPayload) => {\n if (network) {\n params.set('network', network.slug)\n setParams(params, { replace: true })\n setNetwork?.(network)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setNetwork],\n )\n\n //if the network is actively changed, update both memory and route\n const setNetworkLocal = useCallback(\n (network: NetworkPayload) => {\n setNetworkParam(network)\n setNetwork?.(network)\n },\n [setNetworkParam, setNetwork],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeNetwork !== network) {\n if (routeNetwork === undefined && network !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setNetworkParam(network)\n } else if (routeNetwork) {\n //if the route has a selection and it is different from memory, update memory\n setNetwork?.(routeNetwork)\n }\n }\n setInitialized(true)\n }, [routeNetwork, network, setNetworkParam, setNetwork])\n\n return (\n <NetworkContext.Provider value={{ network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal }}>\n {initialized ? children : null}\n </NetworkContext.Provider>\n )\n}\n\nexport const NetworkRouteProvider: React.FC<WithChildren<NetworkProviderProps>> = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {\n return (\n <NetworkMemoryProvider defaultNetworkConfig={defaultNetworkConfig} defaultNetworkName={defaultNetworkName}>\n <NetworkRouteProviderInner {...props} />\n </NetworkMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { NetworkContext } from './Context.js'\nimport { NetworkContextState } from './State.js'\n\nexport const useNetwork = (required = false) => {\n return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)\n}\n"],"mappings":"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","names":["NetworkNodeSchema","useState","jsx","useState","network","jsx","network"]}