@xyo-network/react-network 2.63.1 → 2.64.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/dist/components/SelectEx/NetworkSelectEx.d.mts.map +1 -0
  2. package/dist/components/SelectEx/NetworkSelectEx.d.ts +7 -0
  3. package/dist/components/SelectEx/NetworkSelectEx.d.ts.map +1 -0
  4. package/dist/components/SelectEx/NetworkSelectEx.stories.d.mts +7 -0
  5. package/dist/components/SelectEx/NetworkSelectEx.stories.d.mts.map +1 -0
  6. package/dist/components/SelectEx/NetworkSelectEx.stories.d.ts +7 -0
  7. package/dist/components/SelectEx/NetworkSelectEx.stories.d.ts.map +1 -0
  8. package/dist/components/SelectEx/index.d.mts.map +1 -0
  9. package/dist/{esm/components/SelectEx/index.js → components/SelectEx/index.d.ts} +1 -1
  10. package/dist/components/SelectEx/index.d.ts.map +1 -0
  11. package/dist/components/index.d.mts.map +1 -0
  12. package/dist/components/index.d.ts +2 -0
  13. package/dist/components/index.d.ts.map +1 -0
  14. package/dist/contexts/Context.d.mts.map +1 -0
  15. package/dist/contexts/Context.d.ts +4 -0
  16. package/dist/contexts/Context.d.ts.map +1 -0
  17. package/dist/contexts/Provider/Memory.d.mts.map +1 -0
  18. package/dist/contexts/Provider/Memory.d.ts +7 -0
  19. package/dist/contexts/Provider/Memory.d.ts.map +1 -0
  20. package/dist/contexts/Provider/Memory.stories.d.mts +15 -0
  21. package/dist/contexts/Provider/Memory.stories.d.mts.map +1 -0
  22. package/dist/contexts/Provider/Memory.stories.d.ts +15 -0
  23. package/dist/contexts/Provider/Memory.stories.d.ts.map +1 -0
  24. package/dist/contexts/Provider/Props.d.mts.map +1 -0
  25. package/dist/contexts/Provider/Props.d.ts +9 -0
  26. package/dist/contexts/Provider/Props.d.ts.map +1 -0
  27. package/dist/contexts/Provider/Route.d.mts.map +1 -0
  28. package/dist/contexts/Provider/Route.d.ts +5 -0
  29. package/dist/contexts/Provider/Route.d.ts.map +1 -0
  30. package/dist/contexts/Provider/index.d.mts.map +1 -0
  31. package/dist/{esm/contexts/Provider/index.js → contexts/Provider/index.d.ts} +1 -1
  32. package/dist/contexts/Provider/index.d.ts.map +1 -0
  33. package/dist/contexts/State.d.mts.map +1 -0
  34. package/dist/contexts/State.d.ts +12 -0
  35. package/dist/contexts/State.d.ts.map +1 -0
  36. package/dist/contexts/index.d.mts.map +1 -0
  37. package/dist/{esm/contexts/index.js → contexts/index.d.ts} +1 -1
  38. package/dist/contexts/index.d.ts.map +1 -0
  39. package/dist/contexts/use.d.mts.map +1 -0
  40. package/dist/contexts/use.d.ts +3 -0
  41. package/dist/contexts/use.d.ts.map +1 -0
  42. package/dist/index.d.mts.map +1 -0
  43. package/dist/{esm/index.js → index.d.ts} +1 -1
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +309 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/index.mjs +267 -0
  48. package/dist/index.mjs.map +1 -0
  49. package/dist/lib/Config/NetworkNames.d.mts.map +1 -0
  50. package/dist/lib/Config/NetworkNames.d.ts +2 -0
  51. package/dist/lib/Config/NetworkNames.d.ts.map +1 -0
  52. package/dist/lib/Config/default.d.mts.map +1 -0
  53. package/dist/lib/Config/default.d.ts +19 -0
  54. package/dist/lib/Config/default.d.ts.map +1 -0
  55. package/dist/lib/Config/find.d.mts.map +1 -0
  56. package/dist/lib/Config/find.d.ts +60 -0
  57. package/dist/lib/Config/find.d.ts.map +1 -0
  58. package/dist/lib/Config/index.d.mts.map +1 -0
  59. package/dist/{esm/lib/Config/index.js → lib/Config/index.d.ts} +1 -1
  60. package/dist/lib/Config/index.d.ts.map +1 -0
  61. package/dist/lib/Config/resolveNetworkFromHostname.d.mts.map +1 -0
  62. package/dist/lib/Config/resolveNetworkFromHostname.d.ts +4 -0
  63. package/dist/lib/Config/resolveNetworkFromHostname.d.ts.map +1 -0
  64. package/dist/lib/ExplorerMapHashes.d.mts.map +1 -0
  65. package/dist/lib/ExplorerMapHashes.d.ts +5 -0
  66. package/dist/lib/ExplorerMapHashes.d.ts.map +1 -0
  67. package/dist/lib/archivistNameToUri.d.mts.map +1 -0
  68. package/dist/lib/archivistNameToUri.d.ts +2 -0
  69. package/dist/lib/archivistNameToUri.d.ts.map +1 -0
  70. package/dist/lib/archivistPresets.d.mts.map +1 -0
  71. package/dist/lib/archivistPresets.d.ts +10 -0
  72. package/dist/lib/archivistPresets.d.ts.map +1 -0
  73. package/dist/lib/divinerPresets.d.mts.map +1 -0
  74. package/dist/lib/divinerPresets.d.ts +13 -0
  75. package/dist/lib/divinerPresets.d.ts.map +1 -0
  76. package/dist/lib/index.d.mts.map +1 -0
  77. package/dist/{esm/lib/index.js → lib/index.d.ts} +1 -1
  78. package/dist/lib/index.d.ts.map +1 -0
  79. package/package.json +29 -20
  80. package/dist/cjs/components/SelectEx/NetworkSelectEx.js +0 -28
  81. package/dist/cjs/components/SelectEx/NetworkSelectEx.js.map +0 -1
  82. package/dist/cjs/components/SelectEx/index.js +0 -5
  83. package/dist/cjs/components/SelectEx/index.js.map +0 -1
  84. package/dist/cjs/components/index.js +0 -5
  85. package/dist/cjs/components/index.js.map +0 -1
  86. package/dist/cjs/contexts/Context.js +0 -6
  87. package/dist/cjs/contexts/Context.js.map +0 -1
  88. package/dist/cjs/contexts/Provider/Memory.js +0 -22
  89. package/dist/cjs/contexts/Provider/Memory.js.map +0 -1
  90. package/dist/cjs/contexts/Provider/Props.js +0 -3
  91. package/dist/cjs/contexts/Provider/Props.js.map +0 -1
  92. package/dist/cjs/contexts/Provider/Route.js +0 -55
  93. package/dist/cjs/contexts/Provider/Route.js.map +0 -1
  94. package/dist/cjs/contexts/Provider/index.js +0 -7
  95. package/dist/cjs/contexts/Provider/index.js.map +0 -1
  96. package/dist/cjs/contexts/State.js +0 -3
  97. package/dist/cjs/contexts/State.js.map +0 -1
  98. package/dist/cjs/contexts/index.js +0 -8
  99. package/dist/cjs/contexts/index.js.map +0 -1
  100. package/dist/cjs/contexts/use.js +0 -10
  101. package/dist/cjs/contexts/use.js.map +0 -1
  102. package/dist/cjs/index.js +0 -7
  103. package/dist/cjs/index.js.map +0 -1
  104. package/dist/cjs/lib/Config/NetworkNames.js +0 -3
  105. package/dist/cjs/lib/Config/NetworkNames.js.map +0 -1
  106. package/dist/cjs/lib/Config/default.js +0 -29
  107. package/dist/cjs/lib/Config/default.js.map +0 -1
  108. package/dist/cjs/lib/Config/find.js +0 -13
  109. package/dist/cjs/lib/Config/find.js.map +0 -1
  110. package/dist/cjs/lib/Config/index.js +0 -8
  111. package/dist/cjs/lib/Config/index.js.map +0 -1
  112. package/dist/cjs/lib/Config/resolveNetworkFromHostname.js +0 -15
  113. package/dist/cjs/lib/Config/resolveNetworkFromHostname.js.map +0 -1
  114. package/dist/cjs/lib/ExplorerMapHashes.js +0 -20
  115. package/dist/cjs/lib/ExplorerMapHashes.js.map +0 -1
  116. package/dist/cjs/lib/archivistNameToUri.js +0 -14
  117. package/dist/cjs/lib/archivistNameToUri.js.map +0 -1
  118. package/dist/cjs/lib/archivistPresets.js +0 -41
  119. package/dist/cjs/lib/archivistPresets.js.map +0 -1
  120. package/dist/cjs/lib/divinerPresets.js +0 -38
  121. package/dist/cjs/lib/divinerPresets.js.map +0 -1
  122. package/dist/cjs/lib/index.js +0 -8
  123. package/dist/cjs/lib/index.js.map +0 -1
  124. package/dist/docs.json +0 -2329
  125. package/dist/esm/components/SelectEx/NetworkSelectEx.js +0 -20
  126. package/dist/esm/components/SelectEx/NetworkSelectEx.js.map +0 -1
  127. package/dist/esm/components/SelectEx/index.js.map +0 -1
  128. package/dist/esm/components/index.js +0 -2
  129. package/dist/esm/components/index.js.map +0 -1
  130. package/dist/esm/contexts/Context.js +0 -3
  131. package/dist/esm/contexts/Context.js.map +0 -1
  132. package/dist/esm/contexts/Provider/Memory.js +0 -15
  133. package/dist/esm/contexts/Provider/Memory.js.map +0 -1
  134. package/dist/esm/contexts/Provider/Props.js +0 -2
  135. package/dist/esm/contexts/Provider/Props.js.map +0 -1
  136. package/dist/esm/contexts/Provider/Route.js +0 -49
  137. package/dist/esm/contexts/Provider/Route.js.map +0 -1
  138. package/dist/esm/contexts/Provider/index.js.map +0 -1
  139. package/dist/esm/contexts/State.js +0 -2
  140. package/dist/esm/contexts/State.js.map +0 -1
  141. package/dist/esm/contexts/index.js.map +0 -1
  142. package/dist/esm/contexts/use.js +0 -6
  143. package/dist/esm/contexts/use.js.map +0 -1
  144. package/dist/esm/index.js.map +0 -1
  145. package/dist/esm/lib/Config/NetworkNames.js +0 -2
  146. package/dist/esm/lib/Config/NetworkNames.js.map +0 -1
  147. package/dist/esm/lib/Config/default.js +0 -26
  148. package/dist/esm/lib/Config/default.js.map +0 -1
  149. package/dist/esm/lib/Config/find.js +0 -9
  150. package/dist/esm/lib/Config/find.js.map +0 -1
  151. package/dist/esm/lib/Config/index.js.map +0 -1
  152. package/dist/esm/lib/Config/resolveNetworkFromHostname.js +0 -11
  153. package/dist/esm/lib/Config/resolveNetworkFromHostname.js.map +0 -1
  154. package/dist/esm/lib/ExplorerMapHashes.js +0 -17
  155. package/dist/esm/lib/ExplorerMapHashes.js.map +0 -1
  156. package/dist/esm/lib/archivistNameToUri.js +0 -10
  157. package/dist/esm/lib/archivistNameToUri.js.map +0 -1
  158. package/dist/esm/lib/archivistPresets.js +0 -36
  159. package/dist/esm/lib/archivistPresets.js.map +0 -1
  160. package/dist/esm/lib/divinerPresets.js +0 -33
  161. package/dist/esm/lib/divinerPresets.js.map +0 -1
  162. package/dist/esm/lib/index.js.map +0 -1
  163. package/dist/types/components/SelectEx/NetworkSelectEx.d.ts.map +0 -1
  164. package/dist/types/components/SelectEx/index.d.ts.map +0 -1
  165. package/dist/types/components/index.d.ts.map +0 -1
  166. package/dist/types/contexts/Context.d.ts.map +0 -1
  167. package/dist/types/contexts/Provider/Memory.d.ts.map +0 -1
  168. package/dist/types/contexts/Provider/Props.d.ts.map +0 -1
  169. package/dist/types/contexts/Provider/Route.d.ts.map +0 -1
  170. package/dist/types/contexts/Provider/index.d.ts.map +0 -1
  171. package/dist/types/contexts/State.d.ts.map +0 -1
  172. package/dist/types/contexts/index.d.ts.map +0 -1
  173. package/dist/types/contexts/use.d.ts.map +0 -1
  174. package/dist/types/index.d.ts.map +0 -1
  175. package/dist/types/lib/Config/NetworkNames.d.ts.map +0 -1
  176. package/dist/types/lib/Config/default.d.ts.map +0 -1
  177. package/dist/types/lib/Config/find.d.ts.map +0 -1
  178. package/dist/types/lib/Config/index.d.ts.map +0 -1
  179. package/dist/types/lib/Config/resolveNetworkFromHostname.d.ts.map +0 -1
  180. package/dist/types/lib/ExplorerMapHashes.d.ts.map +0 -1
  181. package/dist/types/lib/archivistNameToUri.d.ts.map +0 -1
  182. package/dist/types/lib/archivistPresets.d.ts.map +0 -1
  183. package/dist/types/lib/divinerPresets.d.ts.map +0 -1
  184. package/dist/types/lib/index.d.ts.map +0 -1
  185. /package/dist/{types/components/SelectEx/NetworkSelectEx.d.ts → components/SelectEx/NetworkSelectEx.d.mts} +0 -0
  186. /package/dist/{types/components/SelectEx/index.d.ts → components/SelectEx/index.d.mts} +0 -0
  187. /package/dist/{types/components/index.d.ts → components/index.d.mts} +0 -0
  188. /package/dist/{types/contexts/Context.d.ts → contexts/Context.d.mts} +0 -0
  189. /package/dist/{types/contexts/Provider/Memory.d.ts → contexts/Provider/Memory.d.mts} +0 -0
  190. /package/dist/{types/contexts/Provider/Props.d.ts → contexts/Provider/Props.d.mts} +0 -0
  191. /package/dist/{types/contexts/Provider/Route.d.ts → contexts/Provider/Route.d.mts} +0 -0
  192. /package/dist/{types/contexts/Provider/index.d.ts → contexts/Provider/index.d.mts} +0 -0
  193. /package/dist/{types/contexts/State.d.ts → contexts/State.d.mts} +0 -0
  194. /package/dist/{types/contexts/index.d.ts → contexts/index.d.mts} +0 -0
  195. /package/dist/{types/contexts/use.d.ts → contexts/use.d.mts} +0 -0
  196. /package/dist/{types/index.d.ts → index.d.mts} +0 -0
  197. /package/dist/{types/lib/Config/NetworkNames.d.ts → lib/Config/NetworkNames.d.mts} +0 -0
  198. /package/dist/{types/lib/Config/default.d.ts → lib/Config/default.d.mts} +0 -0
  199. /package/dist/{types/lib/Config/find.d.ts → lib/Config/find.d.mts} +0 -0
  200. /package/dist/{types/lib/Config/index.d.ts → lib/Config/index.d.mts} +0 -0
  201. /package/dist/{types/lib/Config/resolveNetworkFromHostname.d.ts → lib/Config/resolveNetworkFromHostname.d.mts} +0 -0
  202. /package/dist/{types/lib/ExplorerMapHashes.d.ts → lib/ExplorerMapHashes.d.mts} +0 -0
  203. /package/dist/{types/lib/archivistNameToUri.d.ts → lib/archivistNameToUri.d.mts} +0 -0
  204. /package/dist/{types/lib/archivistPresets.d.ts → lib/archivistPresets.d.mts} +0 -0
  205. /package/dist/{types/lib/divinerPresets.d.ts → lib/divinerPresets.d.mts} +0 -0
  206. /package/dist/{types/lib/index.d.ts → lib/index.d.mts} +0 -0
package/dist/index.mjs ADDED
@@ -0,0 +1,267 @@
1
+ // src/components/SelectEx/NetworkSelectEx.tsx
2
+ import { MenuItem } from "@mui/material";
3
+ import { assertEx } from "@xylabs/assert";
4
+ import { SelectEx } from "@xylabs/react-select";
5
+ import { useBreakpoint } from "@xylabs/react-shared";
6
+
7
+ // src/contexts/Context.ts
8
+ import { createContextEx } from "@xyo-network/react-shared";
9
+ var NetworkContext = createContextEx();
10
+
11
+ // src/contexts/Provider/Memory.tsx
12
+ import { useState } from "react";
13
+
14
+ // src/lib/archivistPresets.ts
15
+ import { NetworkNodeSchema } from "@xyo-network/network";
16
+
17
+ // src/lib/ExplorerMapHashes.ts
18
+ var ExplorerMapHashes = {
19
+ animatedAnswerHashes: [
20
+ "79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5",
21
+ "531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898",
22
+ "c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb",
23
+ "29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e",
24
+ "cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c",
25
+ "1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d",
26
+ "1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9",
27
+ "973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9",
28
+ "463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95",
29
+ "15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555",
30
+ "32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e"
31
+ ],
32
+ staticAnswerHash: "c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5"
33
+ };
34
+
35
+ // src/lib/archivistPresets.ts
36
+ var findArchivistPreset = (slug) => {
37
+ return archivistPresets.find((item) => {
38
+ return item.slug === slug;
39
+ }) ?? archivistPresets[0];
40
+ };
41
+ var archivistPresets = [
42
+ {
43
+ docs: "https://beta.archivist.xyo.network/api",
44
+ explorerMapHashes: ExplorerMapHashes,
45
+ name: "XYO Shared Archivist (kerplunk)",
46
+ schema: NetworkNodeSchema,
47
+ slug: "kerplunk-archivist-xyo-network",
48
+ type: "archivist",
49
+ uri: "https://beta.api.archivist.xyo.network"
50
+ },
51
+ {
52
+ docs: "https://archivist.xyo.network/api",
53
+ explorerMapHashes: ExplorerMapHashes,
54
+ name: "XYO Shared Archivist (main)",
55
+ schema: NetworkNodeSchema,
56
+ slug: "main-archivist-xyo-network",
57
+ type: "archivist",
58
+ uri: "https://api.archivist.xyo.network"
59
+ },
60
+ {
61
+ docs: "http://localhost:8080/api",
62
+ name: "XYO Shared Archivist (local)",
63
+ schema: NetworkNodeSchema,
64
+ slug: "local-archivist-xyo-network",
65
+ type: "archivist",
66
+ uri: "http://localhost:8080"
67
+ }
68
+ ];
69
+
70
+ // src/lib/archivistNameToUri.ts
71
+ var archivistUriToName = () => {
72
+ return archivistPresets.reduce((acc, { name, uri }) => {
73
+ if (name) {
74
+ acc[uri] = name;
75
+ }
76
+ return acc;
77
+ }, {});
78
+ };
79
+
80
+ // src/lib/Config/default.ts
81
+ import { NetworkSchema } from "@xyo-network/network";
82
+
83
+ // src/lib/divinerPresets.ts
84
+ import { NetworkNodeSchema as NetworkNodeSchema2 } from "@xyo-network/network";
85
+ var findDivinerPreset = (slug) => {
86
+ return divinerPresets.find((item) => {
87
+ return item.slug === slug;
88
+ }) ?? divinerPresets[0];
89
+ };
90
+ var divinerPresets = [
91
+ {
92
+ name: "XYO Location (beta)",
93
+ schema: NetworkNodeSchema2,
94
+ slug: "beta-location-diviner-xyo-network",
95
+ type: "diviner",
96
+ uri: "https://beta.api.location.diviner.xyo.network",
97
+ web: "https://beta.explore.xyo.network"
98
+ },
99
+ {
100
+ name: "XYO Location",
101
+ schema: NetworkNodeSchema2,
102
+ slug: "location-diviner-xyo-network",
103
+ type: "diviner",
104
+ uri: "https://api.location.diviner.xyo.network",
105
+ web: "https://explore.xyo.network"
106
+ },
107
+ {
108
+ name: "XYO Location (local)",
109
+ schema: NetworkNodeSchema2,
110
+ slug: "local-location-diviner-xyo-network",
111
+ type: "diviner",
112
+ uri: "http://localhost:8082",
113
+ web: "http://localhost:3000"
114
+ }
115
+ ];
116
+
117
+ // src/lib/Config/default.ts
118
+ var defaultNetworkConfigs = [
119
+ {
120
+ name: "Kerplunk",
121
+ nodes: [findArchivistPreset("kerplunk-archivist-xyo-network"), findDivinerPreset("beta-location-diviner-xyo-network")],
122
+ schema: NetworkSchema,
123
+ slug: "kerplunk"
124
+ },
125
+ {
126
+ name: "Main",
127
+ nodes: [findArchivistPreset("main-archivist-xyo-network"), findDivinerPreset("location-diviner-xyo-network")],
128
+ schema: NetworkSchema,
129
+ slug: "main"
130
+ },
131
+ {
132
+ name: "Local",
133
+ nodes: [findArchivistPreset("local-archivist-xyo-network"), findDivinerPreset("local-location-diviner-xyo-network")],
134
+ schema: NetworkSchema,
135
+ slug: "local"
136
+ }
137
+ ];
138
+ var networkPresets = defaultNetworkConfigs;
139
+
140
+ // src/lib/Config/find.ts
141
+ var findNetworkConfig = (slug, configs = defaultNetworkConfigs) => {
142
+ return configs.find((item) => {
143
+ return item.slug === slug;
144
+ });
145
+ };
146
+ var findNetworkPreset = findNetworkConfig;
147
+
148
+ // src/lib/Config/resolveNetworkFromHostname.ts
149
+ var resolveNetworkFromHostName = (fallback = "Kerplunk", siteName) => {
150
+ switch (document.location.hostname) {
151
+ case `${siteName}.xyo.network`:
152
+ return "Main";
153
+ case `beta.${siteName}.xyo.network`:
154
+ return "Kerplunk";
155
+ default:
156
+ return fallback;
157
+ }
158
+ };
159
+
160
+ // src/contexts/Provider/Memory.tsx
161
+ import { jsx } from "react/jsx-runtime";
162
+ var NetworkMemoryProvider = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {
163
+ if (defaultNetworkConfig && defaultNetworkName) {
164
+ console.warn("Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig");
165
+ }
166
+ const resolvedDefaultNetworkConfig = defaultNetworkName ? defaultNetworkConfigs.find((config) => config.name === defaultNetworkName) : void 0;
167
+ const [network, setNetwork] = useState(defaultNetworkConfig ?? resolvedDefaultNetworkConfig ?? defaultNetworkConfigs[0]);
168
+ return /* @__PURE__ */ jsx(NetworkContext.Provider, { value: { network, networks: defaultNetworkConfigs, provided: true, setNetwork }, ...props });
169
+ };
170
+ var NetworkProvider = NetworkMemoryProvider;
171
+
172
+ // src/contexts/Provider/Route.tsx
173
+ import { useCallback, useEffect, useState as useState2 } from "react";
174
+ import { useSearchParams } from "react-router-dom";
175
+
176
+ // src/contexts/use.ts
177
+ import { useContextEx } from "@xyo-network/react-shared";
178
+ var useNetwork = (required = false) => {
179
+ return useContextEx(NetworkContext, "Network", required);
180
+ };
181
+
182
+ // src/contexts/Provider/Route.tsx
183
+ import { jsx as jsx2 } from "react/jsx-runtime";
184
+ var NetworkRouteProviderInner = ({ children }) => {
185
+ const [initialized, setInitialized] = useState2(false);
186
+ const { network, setNetwork } = useNetwork();
187
+ const [params, setParams] = useSearchParams();
188
+ const slug = params.get("network");
189
+ const routeNetwork = slug ? findNetworkConfig(slug) : void 0;
190
+ const setNetworkParam = useCallback(
191
+ (network2) => {
192
+ if (network2) {
193
+ params.set("network", network2.slug);
194
+ setParams(params, { replace: true });
195
+ setNetwork?.(network2);
196
+ } else {
197
+ params.delete("network");
198
+ }
199
+ },
200
+ [params, setParams, setNetwork]
201
+ );
202
+ const setNetworkLocal = useCallback(
203
+ (network2) => {
204
+ setNetworkParam(network2);
205
+ setNetwork?.(network2);
206
+ },
207
+ [setNetworkParam, setNetwork]
208
+ );
209
+ useEffect(() => {
210
+ if (routeNetwork !== network) {
211
+ if (routeNetwork === void 0 && network !== void 0) {
212
+ setNetworkParam(network);
213
+ } else if (routeNetwork) {
214
+ setNetwork?.(routeNetwork);
215
+ }
216
+ }
217
+ setInitialized(true);
218
+ }, [routeNetwork, network, setNetworkParam, setNetwork]);
219
+ return /* @__PURE__ */ jsx2(NetworkContext.Provider, { value: { network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal }, children: initialized ? children : null });
220
+ };
221
+ var NetworkRouteProvider = ({ defaultNetworkConfig, defaultNetworkName, ...props }) => {
222
+ return /* @__PURE__ */ jsx2(NetworkMemoryProvider, { defaultNetworkConfig, defaultNetworkName, children: /* @__PURE__ */ jsx2(NetworkRouteProviderInner, { ...props }) });
223
+ };
224
+
225
+ // src/components/SelectEx/NetworkSelectEx.tsx
226
+ import { jsx as jsx3 } from "react/jsx-runtime";
227
+ var NetworkSelectEx = ({ onChange, responsive = true, ...props }) => {
228
+ const { network, setNetwork, networks } = useNetwork(false);
229
+ const sm = useBreakpoint() === "sm";
230
+ return /* @__PURE__ */ jsx3(
231
+ SelectEx,
232
+ {
233
+ variant: "outlined",
234
+ size: "small",
235
+ value: network?.slug ?? "",
236
+ onChange: (event, child) => {
237
+ if (event.target.value !== network?.slug) {
238
+ onChange?.(event, child);
239
+ setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)));
240
+ }
241
+ },
242
+ ...props,
243
+ children: networks?.map((network2) => {
244
+ return /* @__PURE__ */ jsx3(MenuItem, { value: network2.slug, children: responsive && sm ? network2.name?.[0].toUpperCase() : network2.name }, network2.slug);
245
+ })
246
+ }
247
+ );
248
+ };
249
+ export {
250
+ NetworkContext,
251
+ NetworkMemoryProvider,
252
+ NetworkProvider,
253
+ NetworkRouteProvider,
254
+ NetworkSelectEx,
255
+ archivistPresets,
256
+ archivistUriToName,
257
+ defaultNetworkConfigs,
258
+ divinerPresets,
259
+ findArchivistPreset,
260
+ findDivinerPreset,
261
+ findNetworkConfig,
262
+ findNetworkPreset,
263
+ networkPresets,
264
+ resolveNetworkFromHostName,
265
+ useNetwork
266
+ };
267
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
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'\nimport { findNetworkConfig } from '../../lib'\n\nexport interface NetworkSelectExProps extends SelectExProps<string> {\n responsive?: boolean\n}\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({ onChange, responsive = true, ...props }) => {\n const { network, setNetwork, networks } = useNetwork(false)\n const sm = useBreakpoint() === 'sm'\n return (\n <SelectEx\n variant=\"outlined\"\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'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib'\nimport { NetworkContext } from '../Context'\nimport { NetworkProviderProps } from './Props'\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 { NetworkNodePayload, NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes'\n\nexport interface ArchivistPreset extends NetworkNodePayload {\n explorerMapHashes?: {\n animatedAnswerHashes: string[]\n staticAnswerHash: string\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","export const ExplorerMapHashes = {\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'\n\nexport const archivistUriToName = () => {\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'\nimport { findDivinerPreset } from '../divinerPresets'\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'\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'\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 case `beta.${siteName}.xyo.network`:\n return 'Kerplunk'\n default:\n return fallback\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'\nimport { NetworkContext } from '../Context'\nimport { useNetwork } from '../use'\nimport { NetworkMemoryProvider } from './Memory'\nimport { NetworkProviderProps } from './Props'\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'\nimport { NetworkContextState } from './State'\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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NetworkNames.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/NetworkNames.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAA"}
@@ -0,0 +1,2 @@
1
+ export type NetworkNames = 'Kerplunk' | 'Main' | 'Local';
2
+ //# sourceMappingURL=NetworkNames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NetworkNames.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/NetworkNames.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,sBAAsB,CAAA;AAKpE,eAAO,MAAM,qBAAqB,EAAE,cAAc,EAmBjD,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;IAAwB,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { NetworkPayload } from '@xyo-network/network';
2
+ export declare const defaultNetworkConfigs: NetworkPayload[];
3
+ /** @deprecated use defaultNetworkConfigs instead */
4
+ export declare const networkPresets: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
5
+ name?: string | undefined;
6
+ nodes?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
7
+ docs?: string | undefined;
8
+ name?: string | undefined;
9
+ slug: string;
10
+ type: import("@xyo-network/network").NetworkNodeType;
11
+ uri: string;
12
+ web?: string | undefined;
13
+ } & {
14
+ schema: "network.xyo.network.node";
15
+ })[] | undefined;
16
+ schema: "network.xyo.network";
17
+ slug: string;
18
+ })[];
19
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,sBAAsB,CAAA;AAKpE,eAAO,MAAM,qBAAqB,EAAE,cAAc,EAmBjD,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;IAAwB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/find.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,SAAU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAI7C,CAAA;AAED,gDAAgD;AAChD,eAAO,MAAM,iBAAiB,SAPU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAOI,CAAA"}
@@ -0,0 +1,60 @@
1
+ export declare const findNetworkConfig: (slug: string, configs?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
2
+ name?: string | undefined;
3
+ nodes?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
4
+ docs?: string | undefined;
5
+ name?: string | undefined;
6
+ slug: string;
7
+ type: import("@xyo-network/network").NetworkNodeType;
8
+ uri: string;
9
+ web?: string | undefined;
10
+ } & {
11
+ schema: "network.xyo.network.node";
12
+ })[] | undefined;
13
+ schema: "network.xyo.network";
14
+ slug: string;
15
+ })[]) => (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
16
+ name?: string | undefined;
17
+ nodes?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
18
+ docs?: string | undefined;
19
+ name?: string | undefined;
20
+ slug: string;
21
+ type: import("@xyo-network/network").NetworkNodeType;
22
+ uri: string;
23
+ web?: string | undefined;
24
+ } & {
25
+ schema: "network.xyo.network.node";
26
+ })[] | undefined;
27
+ schema: "network.xyo.network";
28
+ slug: string;
29
+ }) | undefined;
30
+ /** @deprecated use findNetworkConfig instead */
31
+ export declare const findNetworkPreset: (slug: string, configs?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
32
+ name?: string | undefined;
33
+ nodes?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
34
+ docs?: string | undefined;
35
+ name?: string | undefined;
36
+ slug: string;
37
+ type: import("@xyo-network/network").NetworkNodeType;
38
+ uri: string;
39
+ web?: string | undefined;
40
+ } & {
41
+ schema: "network.xyo.network.node";
42
+ })[] | undefined;
43
+ schema: "network.xyo.network";
44
+ slug: string;
45
+ })[]) => (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
46
+ name?: string | undefined;
47
+ nodes?: (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
48
+ docs?: string | undefined;
49
+ name?: string | undefined;
50
+ slug: string;
51
+ type: import("@xyo-network/network").NetworkNodeType;
52
+ uri: string;
53
+ web?: string | undefined;
54
+ } & {
55
+ schema: "network.xyo.network.node";
56
+ })[] | undefined;
57
+ schema: "network.xyo.network";
58
+ slug: string;
59
+ }) | undefined;
60
+ //# sourceMappingURL=find.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/find.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,SAAU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAI7C,CAAA;AAED,gDAAgD;AAChD,eAAO,MAAM,iBAAiB,SAPU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAOI,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,8BAA8B,CAAA"}
@@ -2,4 +2,4 @@ export * from './default';
2
2
  export * from './find';
3
3
  export * from './NetworkNames';
4
4
  export * from './resolveNetworkFromHostname';
5
- //# sourceMappingURL=index.js.map
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveNetworkFromHostname.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/resolveNetworkFromHostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;AAEzC,eAAO,MAAM,0BAA0B,iDAAmD,QAAQ,iBASjG,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NetworkNames } from './NetworkNames';
2
+ export type SiteName = 'explore' | 'node';
3
+ export declare const resolveNetworkFromHostName: (fallback: NetworkNames | undefined, siteName: SiteName) => NetworkNames;
4
+ //# sourceMappingURL=resolveNetworkFromHostname.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveNetworkFromHostname.d.ts","sourceRoot":"","sources":["../../../src/lib/Config/resolveNetworkFromHostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;AAEzC,eAAO,MAAM,0BAA0B,iDAAmD,QAAQ,iBASjG,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExplorerMapHashes.d.ts","sourceRoot":"","sources":["../../src/lib/ExplorerMapHashes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAe7B,CAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const ExplorerMapHashes: {
2
+ animatedAnswerHashes: string[];
3
+ staticAnswerHash: string;
4
+ };
5
+ //# sourceMappingURL=ExplorerMapHashes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExplorerMapHashes.d.ts","sourceRoot":"","sources":["../../src/lib/ExplorerMapHashes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAe7B,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archivistNameToUri.d.ts","sourceRoot":"","sources":["../../src/lib/archivistNameToUri.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,8BAO9B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const archivistUriToName: () => Record<string, string>;
2
+ //# sourceMappingURL=archivistNameToUri.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archivistNameToUri.d.ts","sourceRoot":"","sources":["../../src/lib/archivistNameToUri.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,8BAO9B,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archivistPresets.d.ts","sourceRoot":"","sources":["../../src/lib/archivistPresets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,sBAAsB,CAAA;AAI5E,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,iBAAiB,CAAC,EAAE;QAClB,oBAAoB,EAAE,MAAM,EAAE,CAAA;QAC9B,gBAAgB,EAAE,MAAM,CAAA;KACzB,CAAA;CACF;AAED,eAAO,MAAM,mBAAmB,SAAU,MAAM,oBAM/C,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,EA2B7C,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { NetworkNodePayload } from '@xyo-network/network';
2
+ export interface ArchivistPreset extends NetworkNodePayload {
3
+ explorerMapHashes?: {
4
+ animatedAnswerHashes: string[];
5
+ staticAnswerHash: string;
6
+ };
7
+ }
8
+ export declare const findArchivistPreset: (slug: string) => ArchivistPreset;
9
+ export declare const archivistPresets: ArchivistPreset[];
10
+ //# sourceMappingURL=archivistPresets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archivistPresets.d.ts","sourceRoot":"","sources":["../../src/lib/archivistPresets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,sBAAsB,CAAA;AAI5E,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,iBAAiB,CAAC,EAAE;QAClB,oBAAoB,EAAE,MAAM,EAAE,CAAA;QAC9B,gBAAgB,EAAE,MAAM,CAAA;KACzB,CAAA;CACF;AAED,eAAO,MAAM,mBAAmB,SAAU,MAAM,oBAM/C,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,EA2B7C,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divinerPresets.d.ts","sourceRoot":"","sources":["../../src/lib/divinerPresets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,sBAAsB,CAAA;AAE5E,eAAO,MAAM,iBAAiB,SAAU,MAAM;;;;;;;;;CAM7C,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,kBAAkB,EAyB9C,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { NetworkNodePayload } from '@xyo-network/network';
2
+ export declare const findDivinerPreset: (slug: string) => import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
3
+ docs?: string | undefined;
4
+ name?: string | undefined;
5
+ slug: string;
6
+ type: import("@xyo-network/network").NetworkNodeType;
7
+ uri: string;
8
+ web?: string | undefined;
9
+ } & {
10
+ schema: "network.xyo.network.node";
11
+ };
12
+ export declare const divinerPresets: NetworkNodePayload[];
13
+ //# sourceMappingURL=divinerPresets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divinerPresets.d.ts","sourceRoot":"","sources":["../../src/lib/divinerPresets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,sBAAsB,CAAA;AAE5E,eAAO,MAAM,iBAAiB,SAAU,MAAM;;;;;;;;;CAM7C,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,kBAAkB,EAyB9C,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA"}
@@ -2,4 +2,4 @@ export * from './archivistNameToUri';
2
2
  export * from './archivistPresets';
3
3
  export * from './Config';
4
4
  export * from './divinerPresets';
5
- //# sourceMappingURL=index.js.map
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -11,10 +11,10 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@xylabs/assert": "^2.11.7",
14
- "@xylabs/react-select": "~2.19.1",
15
- "@xylabs/react-shared": "~2.19.1",
16
- "@xyo-network/network": "^2.74.3",
17
- "@xyo-network/react-shared": "~2.63.1"
14
+ "@xylabs/react-select": "^3.1.0-rc.3",
15
+ "@xylabs/react-shared": "^3.1.0-rc.3",
16
+ "@xyo-network/network": "^2.74.4",
17
+ "@xyo-network/react-shared": "~2.64.0-rc.1"
18
18
  },
19
19
  "peerDependencies": {
20
20
  "@mui/icons-material": "^5",
@@ -28,32 +28,40 @@
28
28
  "description": "Common React library for all XYO projects that use React",
29
29
  "devDependencies": {
30
30
  "@storybook/react": "^7.4.3",
31
- "@xylabs/react-flexbox": "~2.19.1",
32
- "@xylabs/ts-scripts-yarn3": "^2.19.12",
33
- "@xylabs/tsconfig-react": "^2.19.12",
31
+ "@xylabs/react-flexbox": "^3.1.0-rc.3",
32
+ "@xylabs/ts-scripts-yarn3": "^3.0.28",
33
+ "@xylabs/tsconfig-react": "^3.0.28",
34
34
  "typescript": "^5.2.2"
35
35
  },
36
- "browser": "dist/esm/index.js",
37
36
  "docs": "dist/docs.json",
38
37
  "exports": {
39
38
  ".": {
40
39
  "node": {
41
- "import": "./dist/esm/index.js",
42
- "require": "./dist/cjs/index.js"
40
+ "import": {
41
+ "types": "./dist/index.d.mts",
42
+ "default": "./dist/index.mjs"
43
+ },
44
+ "require": {
45
+ "types": "./dist/index.d.ts",
46
+ "default": "./dist/index.js"
47
+ }
43
48
  },
44
49
  "browser": {
45
- "import": "./dist/esm/index.js",
46
- "require": "./dist/cjs/index.js"
50
+ "import": {
51
+ "types": "./dist/index.d.mts",
52
+ "default": "./dist/index.mjs"
53
+ },
54
+ "require": {
55
+ "types": "./dist/index.d.ts",
56
+ "default": "./dist/index.js"
57
+ }
47
58
  },
48
- "default": "./dist/esm/index.js"
49
- },
50
- "./dist/docs.json": {
51
- "default": "./dist/docs.json"
59
+ "default": "./dist/index.mjs"
52
60
  },
53
61
  "./package.json": "./package.json"
54
62
  },
55
- "main": "dist/cjs/index.js",
56
- "module": "dist/esm/index.js",
63
+ "main": "dist/index.js",
64
+ "module": "dist/index.mjs",
57
65
  "homepage": "https://xyo.network",
58
66
  "keywords": [
59
67
  "xyo",
@@ -74,6 +82,7 @@
74
82
  "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
75
83
  },
76
84
  "sideEffects": false,
77
- "types": "dist/types/index.d.ts",
78
- "version": "2.63.1"
85
+ "types": "dist/index.d.ts",
86
+ "version": "2.64.0-rc.1",
87
+ "stableVersion": "2.63.1"
79
88
  }
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NetworkSelectEx = void 0;
4
- const tslib_1 = require("tslib");
5
- const jsx_runtime_1 = require("react/jsx-runtime");
6
- const material_1 = require("@mui/material");
7
- const assert_1 = require("@xylabs/assert");
8
- const react_select_1 = require("@xylabs/react-select");
9
- const react_shared_1 = require("@xylabs/react-shared");
10
- const contexts_1 = require("../../contexts");
11
- const lib_1 = require("../../lib");
12
- const NetworkSelectEx = (_a) => {
13
- var _b;
14
- var { onChange, responsive = true } = _a, props = tslib_1.__rest(_a, ["onChange", "responsive"]);
15
- const { network, setNetwork, networks } = (0, contexts_1.useNetwork)(false);
16
- const sm = (0, react_shared_1.useBreakpoint)() === 'sm';
17
- return ((0, jsx_runtime_1.jsx)(react_select_1.SelectEx, Object.assign({ variant: "outlined", size: "small", value: (_b = network === null || network === void 0 ? void 0 : network.slug) !== null && _b !== void 0 ? _b : '', onChange: (event, child) => {
18
- if (event.target.value !== (network === null || network === void 0 ? void 0 : network.slug)) {
19
- onChange === null || onChange === void 0 ? void 0 : onChange(event, child);
20
- setNetwork === null || setNetwork === void 0 ? void 0 : setNetwork((0, assert_1.assertEx)((0, lib_1.findNetworkConfig)(event.target.value, networks)));
21
- }
22
- } }, props, { children: networks === null || networks === void 0 ? void 0 : networks.map((network) => {
23
- var _a;
24
- return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, Object.assign({ value: network.slug }, { children: responsive && sm ? (_a = network.name) === null || _a === void 0 ? void 0 : _a[0].toUpperCase() : network.name }), network.slug));
25
- }) })));
26
- };
27
- exports.NetworkSelectEx = NetworkSelectEx;
28
- //# sourceMappingURL=NetworkSelectEx.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NetworkSelectEx.js","sourceRoot":"","sources":["../../../../src/components/SelectEx/NetworkSelectEx.tsx"],"names":[],"mappings":";;;;;AAAA,4CAAwC;AACxC,2CAAyC;AACzC,uDAA8D;AAC9D,uDAAoD;AAEpD,6CAA2C;AAC3C,mCAA6C;AAMtC,MAAM,eAAe,GAAmC,CAAC,EAAyC,EAAE,EAAE;;QAA7C,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,OAAY,EAAP,KAAK,sBAAvC,0BAAyC,CAAF;IACrG,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAA,qBAAU,EAAC,KAAK,CAAC,CAAA;IAC3D,MAAM,EAAE,GAAG,IAAA,4BAAa,GAAE,KAAK,IAAI,CAAA;IACnC,OAAO,CACL,uBAAC,uBAAQ,kBACP,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE,EAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACzB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAA,EAAE;gBACxC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,EAAE,KAAK,CAAC,CAAA;gBACxB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,IAAA,iBAAQ,EAAC,IAAA,uBAAiB,EAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;aACxE;QACH,CAAC,IACG,KAAK,cAER,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;;YACzB,OAAO,CACL,uBAAC,mBAAQ,kBAAoB,KAAK,EAAE,OAAO,CAAC,IAAI,gBAC7C,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,MAAA,OAAO,CAAC,IAAI,0CAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KADrD,OAAO,CAAC,IAAI,CAEhB,CACZ,CAAA;QACH,CAAC,CAAC,IACO,CACZ,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,eAAe,mBAyB3B"}