@xyo-network/react-network 7.4.2 → 7.5.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.
@@ -2,9 +2,9 @@ import type { Meta } from '@storybook/react-vite';
2
2
  import type { NetworkSelectExProps } from './NetworkSelectEx.tsx';
3
3
  import { NetworkSelectEx } from './NetworkSelectEx.tsx';
4
4
  declare const StorybookEntry: Meta<typeof NetworkSelectEx>;
5
- declare const Default: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, NetworkSelectExProps>;
6
- declare const WithMemoryProvider: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, NetworkSelectExProps>;
7
- declare const WithRouteProvider: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, NetworkSelectExProps>;
5
+ declare const Default: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, NetworkSelectExProps>;
6
+ declare const WithMemoryProvider: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, NetworkSelectExProps>;
7
+ declare const WithRouteProvider: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, NetworkSelectExProps>;
8
8
  export { Default, WithMemoryProvider, WithRouteProvider, };
9
9
  export default StorybookEntry;
10
10
  //# sourceMappingURL=NetworkSelectEx.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkSelectEx.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectEx/NetworkSelectEx.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,QAAA,MAAM,cAAc,EAKf,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;AAiEjC,QAAA,MAAM,OAAO,0JAAoB,CAAA;AAGjC,QAAA,MAAM,kBAAkB,0JAAsC,CAAA;AAG9D,QAAA,MAAM,iBAAiB,0JAAqC,CAAA;AAG5D,OAAO,EACL,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,GAC/C,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"NetworkSelectEx.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectEx/NetworkSelectEx.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,QAAA,MAAM,cAAc,EAKf,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;AAiEjC,QAAA,MAAM,OAAO,mHAAoB,CAAA;AAGjC,QAAA,MAAM,kBAAkB,mHAAsC,CAAA;AAG9D,QAAA,MAAM,iBAAiB,mHAAqC,CAAA;AAG5D,OAAO,EACL,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,GAC/C,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,13 +1,13 @@
1
1
  import type { Meta } from '@storybook/react-vite';
2
2
  import React from 'react';
3
3
  declare const StorybookEntry: Meta;
4
- declare const Default: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
4
+ declare const Default: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
5
5
  children?: React.ReactNode | undefined;
6
6
  }>;
7
- declare const DefaultNetworkName: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
7
+ declare const DefaultNetworkName: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
8
8
  children?: React.ReactNode | undefined;
9
9
  }>;
10
- declare const DefaultNetworkConfig: import(".store/storybook-virtual-a067dd1507/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
10
+ declare const DefaultNetworkConfig: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, import("./Props.ts").NetworkProviderProps & {
11
11
  children?: React.ReactNode | undefined;
12
12
  }>;
13
13
  export default StorybookEntry;
@@ -1,9 +1,13 @@
1
- import type { NetworkPayload } from '@xyo-network/network';
1
+ import type { NetworkPayload, NetworkSchema } from '@xyo-network/network';
2
2
  import type { NetworkNames } from '../../lib/index.ts';
3
3
  export interface NetworkProviderProps {
4
4
  /** @deprecated use defaultNetworkConfig instead */
5
- defaultNetwork?: NetworkPayload;
6
- defaultNetworkConfig?: NetworkPayload;
5
+ defaultNetwork?: (Omit<NetworkPayload, 'schema'> & {
6
+ schema: NetworkSchema;
7
+ });
8
+ defaultNetworkConfig?: (Omit<NetworkPayload, 'schema'> & {
9
+ schema: NetworkSchema;
10
+ });
7
11
  defaultNetworkName?: NetworkNames;
8
12
  }
9
13
  //# sourceMappingURL=Props.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Props.d.ts","sourceRoot":"","sources":["../../../../src/contexts/Provider/Props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,oBAAoB,CAAC,EAAE,cAAc,CAAA;IACrC,kBAAkB,CAAC,EAAE,YAAY,CAAA;CAClC"}
1
+ {"version":3,"file":"Props.d.ts","sourceRoot":"","sources":["../../../../src/contexts/Provider/Props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG;QAAE,MAAM,EAAE,aAAa,CAAA;KAAE,CAAC,CAAA;IAC7E,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG;QAAE,MAAM,EAAE,aAAa,CAAA;KAAE,CAAC,CAAA;IACnF,kBAAkB,CAAC,EAAE,YAAY,CAAA;CAClC"}
@@ -1,15 +1,19 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+
1
4
  // src/components/SelectEx/NetworkSelectEx.tsx
2
5
  import { MenuItem } from "@mui/material";
3
6
  import { assertEx } from "@xylabs/assert";
4
7
  import { SelectEx } from "@xylabs/react-select";
5
8
  import { useBreakpoint } from "@xylabs/react-shared";
9
+ import React3 from "react";
6
10
 
7
11
  // src/contexts/Context.ts
8
12
  import { createContextEx } from "@xylabs/react-shared";
9
13
  var NetworkContext = createContextEx();
10
14
 
11
15
  // src/contexts/Provider/Memory.tsx
12
- import { useMemo, useState } from "react";
16
+ import React, { useMemo, useState } from "react";
13
17
 
14
18
  // src/lib/archivistPresets.ts
15
19
  import { NetworkNodeSchema } from "@xyo-network/network";
@@ -33,11 +37,11 @@ var ExplorerMapHashes = {
33
37
  };
34
38
 
35
39
  // src/lib/archivistPresets.ts
36
- var findArchivistPreset = (slug) => {
40
+ var findArchivistPreset = /* @__PURE__ */ __name((slug) => {
37
41
  return archivistPresets.find((item) => {
38
42
  return item.slug === slug;
39
43
  }) ?? archivistPresets[0];
40
- };
44
+ }, "findArchivistPreset");
41
45
  var archivistPresets = [
42
46
  {
43
47
  docs: "https://beta.archivist.xyo.network/api",
@@ -68,25 +72,25 @@ var archivistPresets = [
68
72
  ];
69
73
 
70
74
  // src/lib/archivistNameToUri.ts
71
- var archivistUriToName = () => {
75
+ var archivistUriToName = /* @__PURE__ */ __name(() => {
72
76
  return archivistPresets.reduce((acc, { name, uri }) => {
73
77
  if (name) {
74
78
  acc[uri] = name;
75
79
  }
76
80
  return acc;
77
81
  }, {});
78
- };
82
+ }, "archivistUriToName");
79
83
 
80
84
  // src/lib/Config/default.ts
81
85
  import { NetworkSchema } from "@xyo-network/network";
82
86
 
83
87
  // src/lib/divinerPresets.ts
84
88
  import { NetworkNodeSchema as NetworkNodeSchema2 } from "@xyo-network/network";
85
- var findDivinerPreset = (slug) => {
89
+ var findDivinerPreset = /* @__PURE__ */ __name((slug) => {
86
90
  return divinerPresets.find((item) => {
87
91
  return item.slug === slug;
88
92
  }) ?? divinerPresets[0];
89
- };
93
+ }, "findDivinerPreset");
90
94
  var divinerPresets = [
91
95
  {
92
96
  name: "XYO Location (beta)",
@@ -118,25 +122,37 @@ var divinerPresets = [
118
122
  var defaultNetworkConfigs = [
119
123
  {
120
124
  name: "Kerplunk",
121
- nodes: [findArchivistPreset("kerplunk-archivist-xyo-network"), findDivinerPreset("beta-location-diviner-xyo-network")],
125
+ nodes: [
126
+ findArchivistPreset("kerplunk-archivist-xyo-network"),
127
+ findDivinerPreset("beta-location-diviner-xyo-network")
128
+ ],
122
129
  schema: NetworkSchema,
123
130
  slug: "kerplunk"
124
131
  },
125
132
  {
126
133
  name: "Main",
127
- nodes: [findArchivistPreset("main-archivist-xyo-network"), findDivinerPreset("location-diviner-xyo-network")],
134
+ nodes: [
135
+ findArchivistPreset("main-archivist-xyo-network"),
136
+ findDivinerPreset("location-diviner-xyo-network")
137
+ ],
128
138
  schema: NetworkSchema,
129
139
  slug: "main"
130
140
  },
131
141
  {
132
142
  name: "Local",
133
- nodes: [findArchivistPreset("local-archivist-xyo-network"), findDivinerPreset("local-location-diviner-xyo-network")],
143
+ nodes: [
144
+ findArchivistPreset("local-archivist-xyo-network"),
145
+ findDivinerPreset("local-location-diviner-xyo-network")
146
+ ],
134
147
  schema: NetworkSchema,
135
148
  slug: "local"
136
149
  },
137
150
  {
138
151
  name: "Custom",
139
- nodes: [findArchivistPreset("kerplunk-archivist-xyo-network"), findDivinerPreset("beta-location-diviner-xyo-network")],
152
+ nodes: [
153
+ findArchivistPreset("kerplunk-archivist-xyo-network"),
154
+ findDivinerPreset("beta-location-diviner-xyo-network")
155
+ ],
140
156
  schema: NetworkSchema,
141
157
  slug: "custom"
142
158
  }
@@ -144,15 +160,15 @@ var defaultNetworkConfigs = [
144
160
  var networkPresets = defaultNetworkConfigs;
145
161
 
146
162
  // src/lib/Config/find.ts
147
- var findNetworkConfig = (slug, configs = defaultNetworkConfigs) => {
163
+ var findNetworkConfig = /* @__PURE__ */ __name((slug, configs = defaultNetworkConfigs) => {
148
164
  return configs.find((item) => {
149
165
  return item.slug === slug;
150
166
  });
151
- };
167
+ }, "findNetworkConfig");
152
168
  var findNetworkPreset = findNetworkConfig;
153
169
 
154
170
  // src/lib/Config/resolveNetworkFromHostname.ts
155
- var resolveNetworkFromHostName = (fallback = "Kerplunk", siteName) => {
171
+ var resolveNetworkFromHostName = /* @__PURE__ */ __name((fallback = "Kerplunk", siteName) => {
156
172
  switch (document.location.hostname) {
157
173
  case `${siteName}.xyo.network`: {
158
174
  return "Main";
@@ -164,15 +180,10 @@ var resolveNetworkFromHostName = (fallback = "Kerplunk", siteName) => {
164
180
  return fallback;
165
181
  }
166
182
  }
167
- };
183
+ }, "resolveNetworkFromHostName");
168
184
 
169
185
  // src/contexts/Provider/Memory.tsx
170
- import { jsx } from "react/jsx-runtime";
171
- var NetworkMemoryProvider = ({
172
- defaultNetworkConfig,
173
- defaultNetworkName,
174
- ...props
175
- }) => {
186
+ var NetworkMemoryProvider = /* @__PURE__ */ __name(({ defaultNetworkConfig, defaultNetworkName, ...props }) => {
176
187
  if (defaultNetworkConfig && defaultNetworkName) {
177
188
  console.warn("Both defaultNetworkConfig and defaultNetworkName were passed to provider. Falling back to defaultNetworkConfig");
178
189
  }
@@ -183,47 +194,55 @@ var NetworkMemoryProvider = ({
183
194
  networks: defaultNetworkConfigs,
184
195
  provided: true,
185
196
  setNetwork
186
- }), [network, setNetwork]);
187
- return /* @__PURE__ */ jsx(NetworkContext, { value, ...props });
188
- };
197
+ }), [
198
+ network,
199
+ setNetwork
200
+ ]);
201
+ return /* @__PURE__ */ React.createElement(NetworkContext, {
202
+ value,
203
+ ...props
204
+ });
205
+ }, "NetworkMemoryProvider");
189
206
  var NetworkProvider = NetworkMemoryProvider;
190
207
 
191
208
  // src/contexts/Provider/Route.tsx
192
- import { useCallback, useEffect } from "react";
209
+ import React2, { useCallback, useEffect } from "react";
193
210
  import { useSearchParams } from "react-router-dom";
194
211
 
195
212
  // src/contexts/use.ts
196
213
  import { useContextEx } from "@xylabs/react-shared";
197
- var useNetwork = (required = false) => {
214
+ var useNetwork = /* @__PURE__ */ __name((required = false) => {
198
215
  return useContextEx(NetworkContext, "Network", required);
199
- };
216
+ }, "useNetwork");
200
217
 
201
218
  // src/contexts/Provider/Route.tsx
202
- import { jsx as jsx2 } from "react/jsx-runtime";
203
- var NetworkRouteProviderInner = ({ children }) => {
219
+ var NetworkRouteProviderInner = /* @__PURE__ */ __name(({ children }) => {
204
220
  const { network, setNetwork } = useNetwork();
205
221
  const [params, setParams] = useSearchParams();
206
222
  const slug = params.get("network");
207
223
  const routeNetwork = slug ? findNetworkConfig(slug) : void 0;
208
- const setNetworkParam = useCallback(
209
- (network2) => {
210
- if (network2) {
211
- params.set("network", network2.slug);
212
- setParams(params, { replace: true });
213
- setNetwork?.(network2);
214
- } else {
215
- params.delete("network");
216
- }
217
- },
218
- [params, setParams, setNetwork]
219
- );
220
- const setNetworkLocal = useCallback(
221
- (network2) => {
222
- setNetworkParam(network2);
224
+ const setNetworkParam = useCallback((network2) => {
225
+ if (network2) {
226
+ params.set("network", network2.slug);
227
+ setParams(params, {
228
+ replace: true
229
+ });
223
230
  setNetwork?.(network2);
224
- },
225
- [setNetworkParam, setNetwork]
226
- );
231
+ } else {
232
+ params.delete("network");
233
+ }
234
+ }, [
235
+ params,
236
+ setParams,
237
+ setNetwork
238
+ ]);
239
+ const setNetworkLocal = useCallback((network2) => {
240
+ setNetworkParam(network2);
241
+ setNetwork?.(network2);
242
+ }, [
243
+ setNetworkParam,
244
+ setNetwork
245
+ ]);
227
246
  useEffect(() => {
228
247
  if (routeNetwork !== network) {
229
248
  if (routeNetwork === void 0 && network !== void 0) {
@@ -232,61 +251,50 @@ var NetworkRouteProviderInner = ({ children }) => {
232
251
  setNetwork?.(routeNetwork);
233
252
  }
234
253
  }
235
- }, [routeNetwork, network, setNetworkParam, setNetwork]);
236
- return /* @__PURE__ */ jsx2(
237
- NetworkContext,
238
- {
239
- value: {
240
- network,
241
- networks: defaultNetworkConfigs,
242
- provided: true,
243
- setNetwork: setNetworkLocal
244
- },
245
- children: network ? children : null
254
+ }, [
255
+ routeNetwork,
256
+ network,
257
+ setNetworkParam,
258
+ setNetwork
259
+ ]);
260
+ return /* @__PURE__ */ React2.createElement(NetworkContext, {
261
+ value: {
262
+ network,
263
+ networks: defaultNetworkConfigs,
264
+ provided: true,
265
+ setNetwork: setNetworkLocal
246
266
  }
247
- );
248
- };
249
- var NetworkRouteProvider = ({
250
- defaultNetworkConfig,
251
- defaultNetworkName,
252
- ...props
253
- }) => {
254
- return /* @__PURE__ */ jsx2(NetworkMemoryProvider, { defaultNetworkConfig, defaultNetworkName, children: /* @__PURE__ */ jsx2(NetworkRouteProviderInner, { ...props }) });
255
- };
267
+ }, network ? children : null);
268
+ }, "NetworkRouteProviderInner");
269
+ var NetworkRouteProvider = /* @__PURE__ */ __name(({ defaultNetworkConfig, defaultNetworkName, ...props }) => {
270
+ return /* @__PURE__ */ React2.createElement(NetworkMemoryProvider, {
271
+ defaultNetworkConfig,
272
+ defaultNetworkName
273
+ }, /* @__PURE__ */ React2.createElement(NetworkRouteProviderInner, props));
274
+ }, "NetworkRouteProvider");
256
275
 
257
276
  // src/components/SelectEx/NetworkSelectEx.tsx
258
- import { jsx as jsx3 } from "react/jsx-runtime";
259
- var NetworkSelectEx = ({
260
- onChange,
261
- variant = "outlined",
262
- responsive = true,
263
- ...props
264
- }) => {
265
- const {
266
- network,
267
- setNetwork,
268
- networks
269
- } = useNetwork(false);
277
+ var NetworkSelectEx = /* @__PURE__ */ __name(({ onChange, variant = "outlined", responsive = true, ...props }) => {
278
+ const { network, setNetwork, networks } = useNetwork(false);
270
279
  const sm = useBreakpoint() === "sm";
271
- return /* @__PURE__ */ jsx3(
272
- SelectEx,
273
- {
274
- variant,
275
- size: "small",
276
- value: network?.slug ?? "",
277
- onChange: (event, child) => {
278
- if (event.target.value !== network?.slug) {
279
- onChange?.(event, child);
280
- setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)));
281
- }
282
- },
283
- ...props,
284
- children: networks?.map((network2) => {
285
- return /* @__PURE__ */ jsx3(MenuItem, { value: network2.slug, children: responsive && sm ? network2.name?.[0].toUpperCase() : network2.name }, network2.slug);
286
- })
287
- }
288
- );
289
- };
280
+ return /* @__PURE__ */ React3.createElement(SelectEx, {
281
+ variant,
282
+ size: "small",
283
+ value: network?.slug ?? "",
284
+ onChange: /* @__PURE__ */ __name((event, child) => {
285
+ if (event.target.value !== network?.slug) {
286
+ onChange?.(event, child);
287
+ setNetwork?.(assertEx(findNetworkConfig(event.target.value, networks)));
288
+ }
289
+ }, "onChange"),
290
+ ...props
291
+ }, networks?.map((network2) => {
292
+ return /* @__PURE__ */ React3.createElement(MenuItem, {
293
+ key: network2.slug,
294
+ value: network2.slug
295
+ }, responsive && sm ? network2.name?.[0].toUpperCase() : network2.name);
296
+ }));
297
+ }, "NetworkSelectEx");
290
298
  export {
291
299
  NetworkContext,
292
300
  NetworkMemoryProvider,
@@ -1 +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 type { SelectExProps } from '@xylabs/react-select'\nimport { SelectEx } from '@xylabs/react-select'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useNetwork } from '../../contexts/index.ts'\nimport { findNetworkConfig } from '../../lib/index.ts'\n\nexport type NetworkSelectExProps = Omit<SelectExProps<string>, 'variant'>\n & Partial<SelectExProps<string>> & {\n responsive?: boolean\n }\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({\n onChange, variant = 'outlined', responsive = true, ...props\n}) => {\n const {\n network, setNetwork, networks,\n } = 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 '@xylabs/react-shared'\n\nimport type { NetworkContextState } from './State.ts'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import type { PropsWithChildren } from 'react'\nimport React, { useMemo, useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib/index.ts'\nimport { NetworkContext } from '../Context.ts'\nimport type { NetworkContextState } from '../State.ts'\nimport type { NetworkProviderProps } from './Props.ts'\n\nexport const NetworkMemoryProvider: React.FC<PropsWithChildren<NetworkProviderProps>> = ({\n defaultNetworkConfig, defaultNetworkName, ...props\n}) => {\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 const value: NetworkContextState = useMemo(() => ({\n network, networks: defaultNetworkConfigs, provided: true, setNetwork,\n }), [network, setNetwork])\n\n return <NetworkContext value={value} {...props} />\n}\n\n/** @deprecated use NetworkMemoryProvider instead */\nexport const NetworkProvider = NetworkMemoryProvider\n","import type { Hash } from '@xylabs/hex'\nimport type { NetworkNodePayload } from '@xyo-network/network'\nimport { NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes.ts'\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 type { 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 ] as Hash[],\n staticAnswerHash: 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5' as Hash,\n}\n","import { archivistPresets } from './archivistPresets.ts'\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 type { NetworkPayload } from '@xyo-network/network'\nimport { NetworkSchema } from '@xyo-network/network'\n\nimport { findArchivistPreset } from '../archivistPresets.ts'\nimport { findDivinerPreset } from '../divinerPresets.ts'\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 name: 'Custom',\n nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'custom',\n },\n]\n\n/** @deprecated use defaultNetworkConfigs instead */\nexport const networkPresets = defaultNetworkConfigs\n","import type { NetworkNodePayload } from '@xyo-network/network'\nimport { 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.ts'\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 type { NetworkNames } from './NetworkNames.ts'\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 type { NetworkPayload } from '@xyo-network/network'\nimport type { PropsWithChildren } from 'react'\nimport React, { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.ts'\nimport { NetworkContext } from '../Context.ts'\nimport { useNetwork } from '../use.ts'\nimport { NetworkMemoryProvider } from './Memory.tsx'\nimport type { NetworkProviderProps } from './Props.ts'\n\nconst NetworkRouteProviderInner: React.FC<PropsWithChildren> = ({ children }) => {\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 !== undefined) {\n // if the route has a selection and it is different from memory, update memory\n setNetwork?.(routeNetwork)\n }\n }\n }, [routeNetwork, network, setNetworkParam, setNetwork])\n\n return (\n <NetworkContext value={{\n network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal,\n }}\n >\n {network ? children : null}\n </NetworkContext>\n )\n}\n\nexport const NetworkRouteProvider: React.FC<PropsWithChildren<NetworkProviderProps>> = ({\n defaultNetworkConfig, defaultNetworkName, ...props\n}) => {\n return (\n <NetworkMemoryProvider defaultNetworkConfig={defaultNetworkConfig} defaultNetworkName={defaultNetworkName}>\n <NetworkRouteProviderInner {...props} />\n </NetworkMemoryProvider>\n )\n}\n","import { useContextEx } from '@xylabs/react-shared'\n\nimport { NetworkContext } from './Context.ts'\nimport type { NetworkContextState } from './State.ts'\n\nexport const useNetwork = (required = false) => {\n return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)\n}\n"],"mappings":";AAAA,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AAEzB,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;;;ACJ9B,SAAS,uBAAuB;AAIzB,IAAM,iBAAiB,gBAAqC;;;ACHnE,SAAgB,SAAS,gBAAgB;;;ACCzC,SAAS,yBAAyB;;;ACD3B,IAAM,oBAA8E;AAAA,EACzF,sBAAsB;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,kBAAkB;AACpB;;;ADHO,IAAM,sBAAsB,CAAC,SAAiB;AACnD,SACE,iBAAiB,KAAK,CAAC,SAAS;AAC9B,WAAO,KAAK,SAAS;AAAA,EACvB,CAAC,KAAK,iBAAiB,CAAC;AAE5B;AAEO,IAAM,mBAAsC;AAAA,EACjD;AAAA,IACE,MAAM;AAAA,IACN,mBAAmB;AAAA,IACnB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,mBAAmB;AAAA,IACnB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AACF;;;AE9CO,IAAM,qBAAqB,MAAM;AAEtC,SAAO,iBAAiB,OAA+B,CAAC,KAAK,EAAE,MAAM,IAAI,MAAM;AAC7E,QAAI,MAAM;AACR,UAAI,GAAG,IAAI;AAAA,IACb;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AACP;;;ACTA,SAAS,qBAAqB;;;ACA9B,SAAS,qBAAAA,0BAAyB;AAE3B,IAAM,oBAAoB,CAAC,SAAiB;AACjD,SACE,eAAe,KAAK,CAAC,SAAS;AAC5B,WAAO,KAAK,SAAS;AAAA,EACvB,CAAC,KAAK,eAAe,CAAC;AAE1B;AAEO,IAAM,iBAAuC;AAAA,EAClD;AAAA,IACE,MAAM;AAAA,IACN,QAAQA;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,EACP;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQA;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,EACP;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQA;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,EACP;AACF;;;AD9BO,IAAM,wBAA0C;AAAA,EACrD;AAAA,IACE,MAAM;AAAA,IACN,OAAO,CAAC,oBAAoB,gCAAgC,GAAG,kBAAkB,mCAAmC,CAAC;AAAA,IACrH,QAAQ;AAAA,IACR,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,OAAO,CAAC,oBAAoB,4BAA4B,GAAG,kBAAkB,8BAA8B,CAAC;AAAA,IAC5G,QAAQ;AAAA,IACR,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,OAAO,CAAC,oBAAoB,6BAA6B,GAAG,kBAAkB,oCAAoC,CAAC;AAAA,IACnH,QAAQ;AAAA,IACR,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,OAAO,CAAC,oBAAoB,gCAAgC,GAAG,kBAAkB,mCAAmC,CAAC;AAAA,IACrH,QAAQ;AAAA,IACR,MAAM;AAAA,EACR;AACF;AAGO,IAAM,iBAAiB;;;AEhCvB,IAAM,oBAAoB,CAAC,MAAc,UAAU,0BAA0B;AAClF,SAAO,QAAQ,KAAK,CAAC,SAAS;AAC5B,WAAO,KAAK,SAAS;AAAA,EACvB,CAAC;AACH;AAGO,IAAM,oBAAoB;;;ACL1B,IAAM,6BAA6B,CAAC,WAAyB,YAAY,aAAuB;AACrG,UAAQ,SAAS,SAAS,UAAU;AAAA,IAClC,KAAK,GAAG,QAAQ,gBAAgB;AAC9B,aAAO;AAAA,IACT;AAAA,IACA,KAAK,QAAQ,QAAQ,gBAAgB;AACnC,aAAO;AAAA,IACT;AAAA,IACA,SAAS;AACP,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;APOS;AAfF,IAAM,wBAA2E,CAAC;AAAA,EACvF;AAAA,EAAsB;AAAA,EAAoB,GAAG;AAC/C,MAAM;AACJ,MAAI,wBAAwB,oBAAoB;AAC9C,YAAQ,KAAK,gHAAgH;AAAA,EAC/H;AAEA,QAAM,+BAA+B,qBAAqB,sBAAsB,KAAK,YAAU,OAAO,SAAS,kBAAkB,IAAI;AAErI,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,wBAAwB,gCAAgC,sBAAsB,CAAC,CAAC;AAEvH,QAAM,QAA6B,QAAQ,OAAO;AAAA,IAChD;AAAA,IAAS,UAAU;AAAA,IAAuB,UAAU;AAAA,IAAM;AAAA,EAC5D,IAAI,CAAC,SAAS,UAAU,CAAC;AAEzB,SAAO,oBAAC,kBAAe,OAAe,GAAG,OAAO;AAClD;AAGO,IAAM,kBAAkB;;;AQzB/B,SAAgB,aAAa,iBAAiB;AAC9C,SAAS,uBAAuB;;;ACHhC,SAAS,oBAAoB;AAKtB,IAAM,aAAa,CAAC,WAAW,UAAU;AAC9C,SAAO,aAAkC,gBAAgB,WAAW,QAAQ;AAC9E;;;ADiDI,gBAAAC,YAAA;AA7CJ,IAAM,4BAAyD,CAAC,EAAE,SAAS,MAAM;AAC/E,QAAM,EAAE,SAAS,WAAW,IAAI,WAAW;AAE3C,QAAM,CAAC,QAAQ,SAAS,IAAI,gBAAgB;AAE5C,QAAM,OAAO,OAAO,IAAI,SAAS;AACjC,QAAM,eAAe,OAAO,kBAAkB,IAAI,IAAI;AAGtD,QAAM,kBAAkB;AAAA,IACtB,CAACC,aAA6B;AAC5B,UAAIA,UAAS;AACX,eAAO,IAAI,WAAWA,SAAQ,IAAI;AAClC,kBAAU,QAAQ,EAAE,SAAS,KAAK,CAAC;AACnC,qBAAaA,QAAO;AAAA,MACtB,OAAO;AACL,eAAO,OAAO,SAAS;AAAA,MACzB;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,WAAW,UAAU;AAAA,EAChC;AAGA,QAAM,kBAAkB;AAAA,IACtB,CAACA,aAA4B;AAC3B,sBAAgBA,QAAO;AACvB,mBAAaA,QAAO;AAAA,IACtB;AAAA,IACA,CAAC,iBAAiB,UAAU;AAAA,EAC9B;AAGA,YAAU,MAAM;AACd,QAAI,iBAAiB,SAAS;AAC5B,UAAI,iBAAiB,UAAa,YAAY,QAAW;AAEvD,wBAAgB,OAAO;AAAA,MACzB,WAAW,iBAAiB,QAAW;AAErC,qBAAa,YAAY;AAAA,MAC3B;AAAA,IACF;AAAA,EACF,GAAG,CAAC,cAAc,SAAS,iBAAiB,UAAU,CAAC;AAEvD,SACE,gBAAAD;AAAA,IAAC;AAAA;AAAA,MAAe,OAAO;AAAA,QACrB;AAAA,QAAS,UAAU;AAAA,QAAuB,UAAU;AAAA,QAAM,YAAY;AAAA,MACxE;AAAA,MAEG,oBAAU,WAAW;AAAA;AAAA,EACxB;AAEJ;AAEO,IAAM,uBAA0E,CAAC;AAAA,EACtF;AAAA,EAAsB;AAAA,EAAoB,GAAG;AAC/C,MAAM;AACJ,SACE,gBAAAA,KAAC,yBAAsB,sBAA4C,oBACjE,0BAAAA,KAAC,6BAA2B,GAAG,OAAO,GACxC;AAEJ;;;AVpCU,gBAAAE,YAAA;AAtBH,IAAM,kBAAkD,CAAC;AAAA,EAC9D;AAAA,EAAU,UAAU;AAAA,EAAY,aAAa;AAAA,EAAM,GAAG;AACxD,MAAM;AACJ,QAAM;AAAA,IACJ;AAAA,IAAS;AAAA,IAAY;AAAA,EACvB,IAAI,WAAW,KAAK;AACpB,QAAM,KAAK,cAAc,MAAM;AAC/B,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,MAAK;AAAA,MACL,OAAO,SAAS,QAAQ;AAAA,MACxB,UAAU,CAAC,OAAO,UAAU;AAC1B,YAAI,MAAM,OAAO,UAAU,SAAS,MAAM;AACxC,qBAAW,OAAO,KAAK;AACvB,uBAAa,SAAS,kBAAkB,MAAM,OAAO,OAAO,QAAQ,CAAC,CAAC;AAAA,QACxE;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH,oBAAU,IAAI,CAACC,aAAY;AAC1B,eACE,gBAAAD,KAAC,YAA4B,OAAOC,SAAQ,MACzC,wBAAc,KAAKA,SAAQ,OAAO,CAAC,EAAE,YAAY,IAAIA,SAAQ,QADjDA,SAAQ,IAEvB;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;","names":["NetworkNodeSchema","jsx","network","jsx","network"]}
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 type { SelectExProps } from '@xylabs/react-select'\nimport { SelectEx } from '@xylabs/react-select'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useNetwork } from '../../contexts/index.ts'\nimport { findNetworkConfig } from '../../lib/index.ts'\n\nexport type NetworkSelectExProps = Omit<SelectExProps<string>, 'variant'>\n & Partial<SelectExProps<string>> & {\n responsive?: boolean\n }\n\nexport const NetworkSelectEx: React.FC<NetworkSelectExProps> = ({\n onChange, variant = 'outlined', responsive = true, ...props\n}) => {\n const {\n network, setNetwork, networks,\n } = 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 '@xylabs/react-shared'\n\nimport type { NetworkContextState } from './State.ts'\n\nexport const NetworkContext = createContextEx<NetworkContextState>()\n","import type { PropsWithChildren } from 'react'\nimport React, { useMemo, useState } from 'react'\n\nimport { defaultNetworkConfigs } from '../../lib/index.ts'\nimport { NetworkContext } from '../Context.ts'\nimport type { NetworkContextState } from '../State.ts'\nimport type { NetworkProviderProps } from './Props.ts'\n\nexport const NetworkMemoryProvider: React.FC<PropsWithChildren<NetworkProviderProps>> = ({\n defaultNetworkConfig, defaultNetworkName, ...props\n}) => {\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 const value: NetworkContextState = useMemo(() => ({\n network, networks: defaultNetworkConfigs, provided: true, setNetwork,\n }), [network, setNetwork])\n\n return <NetworkContext value={value} {...props} />\n}\n\n/** @deprecated use NetworkMemoryProvider instead */\nexport const NetworkProvider = NetworkMemoryProvider\n","import type { Hash } from '@xylabs/sdk-js'\nimport type { NetworkNodePayload } from '@xyo-network/network'\nimport { NetworkNodeSchema } from '@xyo-network/network'\n\nimport { ExplorerMapHashes } from './ExplorerMapHashes.ts'\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 type { Hash } from '@xylabs/sdk-js'\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 ] as Hash[],\n staticAnswerHash: 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5' as Hash,\n}\n","import { archivistPresets } from './archivistPresets.ts'\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 type { NetworkPayload } from '@xyo-network/network'\nimport { NetworkSchema } from '@xyo-network/network'\n\nimport { findArchivistPreset } from '../archivistPresets.ts'\nimport { findDivinerPreset } from '../divinerPresets.ts'\n\nexport const defaultNetworkConfigs: (Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema })[] = [\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 name: 'Custom',\n nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],\n schema: NetworkSchema,\n slug: 'custom',\n },\n]\n\n/** @deprecated use defaultNetworkConfigs instead */\nexport const networkPresets = defaultNetworkConfigs\n","import type { NetworkNodePayload } from '@xyo-network/network'\nimport { 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.ts'\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 type { NetworkNames } from './NetworkNames.ts'\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 type { NetworkPayload, NetworkSchema } from '@xyo-network/network'\nimport type { PropsWithChildren } from 'react'\nimport React, { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { defaultNetworkConfigs, findNetworkConfig } from '../../lib/index.ts'\nimport { NetworkContext } from '../Context.ts'\nimport { useNetwork } from '../use.ts'\nimport { NetworkMemoryProvider } from './Memory.tsx'\nimport type { NetworkProviderProps } from './Props.ts'\n\nconst NetworkRouteProviderInner: React.FC<PropsWithChildren> = ({ children }) => {\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?: Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema }) => {\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: Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema }) => {\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 !== undefined) {\n // if the route has a selection and it is different from memory, update memory\n setNetwork?.(routeNetwork)\n }\n }\n }, [routeNetwork, network, setNetworkParam, setNetwork])\n\n return (\n <NetworkContext value={{\n network, networks: defaultNetworkConfigs, provided: true, setNetwork: setNetworkLocal,\n }}\n >\n {network ? children : null}\n </NetworkContext>\n )\n}\n\nexport const NetworkRouteProvider: React.FC<PropsWithChildren<NetworkProviderProps>> = ({\n defaultNetworkConfig, defaultNetworkName, ...props\n}) => {\n return (\n <NetworkMemoryProvider defaultNetworkConfig={defaultNetworkConfig} defaultNetworkName={defaultNetworkName}>\n <NetworkRouteProviderInner {...props} />\n </NetworkMemoryProvider>\n )\n}\n","import { useContextEx } from '@xylabs/react-shared'\n\nimport { NetworkContext } from './Context.ts'\nimport type { NetworkContextState } from './State.ts'\n\nexport const useNetwork = (required = false) => {\n return useContextEx<NetworkContextState>(NetworkContext, 'Network', required)\n}\n"],"mappings":"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","names":["MenuItem","assertEx","SelectEx","useBreakpoint","React","createContextEx","NetworkContext","React","useMemo","useState","NetworkNodeSchema","ExplorerMapHashes","animatedAnswerHashes","staticAnswerHash","findArchivistPreset","slug","archivistPresets","find","item","docs","explorerMapHashes","ExplorerMapHashes","name","schema","NetworkNodeSchema","type","uri","archivistUriToName","archivistPresets","reduce","acc","name","uri","NetworkSchema","NetworkNodeSchema","findDivinerPreset","slug","divinerPresets","find","item","name","schema","NetworkNodeSchema","type","uri","web","defaultNetworkConfigs","name","nodes","findArchivistPreset","findDivinerPreset","schema","NetworkSchema","slug","networkPresets","findNetworkConfig","slug","configs","defaultNetworkConfigs","find","item","findNetworkPreset","resolveNetworkFromHostName","fallback","siteName","document","location","hostname","NetworkMemoryProvider","defaultNetworkConfig","defaultNetworkName","props","console","warn","resolvedDefaultNetworkConfig","defaultNetworkConfigs","find","config","name","undefined","network","setNetwork","useState","value","useMemo","networks","provided","NetworkContext","NetworkProvider","React","useCallback","useEffect","useSearchParams","useContextEx","useNetwork","required","useContextEx","NetworkContext","NetworkRouteProviderInner","children","network","setNetwork","useNetwork","params","setParams","useSearchParams","slug","get","routeNetwork","findNetworkConfig","undefined","setNetworkParam","useCallback","set","replace","delete","setNetworkLocal","useEffect","React","NetworkContext","value","networks","defaultNetworkConfigs","provided","NetworkRouteProvider","defaultNetworkConfig","defaultNetworkName","props","NetworkMemoryProvider","NetworkSelectEx","onChange","variant","responsive","props","network","setNetwork","networks","useNetwork","sm","useBreakpoint","React","SelectEx","size","value","slug","event","child","target","assertEx","findNetworkConfig","map","MenuItem","key","name","toUpperCase"]}
@@ -1,5 +1,10 @@
1
1
  import type { NetworkPayload } from '@xyo-network/network';
2
- export declare const defaultNetworkConfigs: NetworkPayload[];
2
+ import { NetworkSchema } from '@xyo-network/network';
3
+ export declare const defaultNetworkConfigs: (Omit<NetworkPayload, 'schema'> & {
4
+ schema: NetworkSchema;
5
+ })[];
3
6
  /** @deprecated use defaultNetworkConfigs instead */
4
- export declare const networkPresets: NetworkPayload[];
7
+ export declare const networkPresets: (Omit<NetworkPayload, "schema"> & {
8
+ schema: NetworkSchema;
9
+ })[];
5
10
  //# sourceMappingURL=default.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/lib/Config/default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAM1D,eAAO,MAAM,qBAAqB,EAAE,cAAc,EAyBjD,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,cAAc,kBAAwB,CAAA"}
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/lib/Config/default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAKpD,eAAO,MAAM,qBAAqB,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC,EAyB/F,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,cAAc;YA5BqD,aAAa;IA4B1C,CAAA"}
@@ -1,4 +1,12 @@
1
- export declare const findNetworkConfig: (slug: string, configs?: import("@xyo-network/network").NetworkPayload[]) => import("@xyo-network/network").NetworkPayload | undefined;
1
+ export declare const findNetworkConfig: (slug: string, configs?: (Omit<import("@xyo-network/network").NetworkPayload, "schema"> & {
2
+ schema: import("@xyo-network/network").NetworkSchema;
3
+ })[]) => (Omit<import("@xyo-network/network").NetworkPayload, "schema"> & {
4
+ schema: import("@xyo-network/network").NetworkSchema;
5
+ }) | undefined;
2
6
  /** @deprecated use findNetworkConfig instead */
3
- export declare const findNetworkPreset: (slug: string, configs?: import("@xyo-network/network").NetworkPayload[]) => import("@xyo-network/network").NetworkPayload | undefined;
7
+ export declare const findNetworkPreset: (slug: string, configs?: (Omit<import("@xyo-network/network").NetworkPayload, "schema"> & {
8
+ schema: import("@xyo-network/network").NetworkSchema;
9
+ })[]) => (Omit<import("@xyo-network/network").NetworkPayload, "schema"> & {
10
+ schema: import("@xyo-network/network").NetworkSchema;
11
+ }) | undefined;
4
12
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../../src/lib/Config/find.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,yDAA+B,8DAI9E,CAAA;AAED,gDAAgD;AAChD,eAAO,MAAM,iBAAiB,SAPU,MAAM,yHAOI,CAAA"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../../src/lib/Config/find.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE;;IAA+B;;cAI9E,CAAA;AAED,gDAAgD;AAChD,eAAO,MAAM,iBAAiB,SAPU,MAAM;;;;cAOI,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { Hash } from '@xylabs/hex';
1
+ import type { Hash } from '@xylabs/sdk-js';
2
2
  export declare const ExplorerMapHashes: {
3
3
  animatedAnswerHashes: Hash[];
4
4
  staticAnswerHash: Hash;
@@ -1 +1 @@
1
- {"version":3,"file":"ExplorerMapHashes.d.ts","sourceRoot":"","sources":["../../../src/lib/ExplorerMapHashes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,eAAO,MAAM,iBAAiB,EAAE;IAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;IAAC,gBAAgB,EAAE,IAAI,CAAA;CAerF,CAAA"}
1
+ {"version":3,"file":"ExplorerMapHashes.d.ts","sourceRoot":"","sources":["../../../src/lib/ExplorerMapHashes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC1C,eAAO,MAAM,iBAAiB,EAAE;IAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;IAAC,gBAAgB,EAAE,IAAI,CAAA;CAerF,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { Hash } from '@xylabs/hex';
1
+ import type { Hash } from '@xylabs/sdk-js';
2
2
  import type { NetworkNodePayload } from '@xyo-network/network';
3
3
  export type ArchivistPreset = NetworkNodePayload & {
4
4
  explorerMapHashes?: {
@@ -1 +1 @@
1
- {"version":3,"file":"archivistPresets.d.ts","sourceRoot":"","sources":["../../../src/lib/archivistPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAK9D,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG;IACjD,iBAAiB,CAAC,EAAE;QAClB,oBAAoB,EAAE,IAAI,EAAE,CAAA;QAC5B,gBAAgB,EAAE,IAAI,CAAA;KACvB,CAAA;CACF,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,oBAM/C,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,EA2B7C,CAAA"}
1
+ {"version":3,"file":"archivistPresets.d.ts","sourceRoot":"","sources":["../../../src/lib/archivistPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAK9D,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG;IACjD,iBAAiB,CAAC,EAAE;QAClB,oBAAoB,EAAE,IAAI,EAAE,CAAA;QAC5B,gBAAgB,EAAE,IAAI,CAAA;KACvB,CAAA;CACF,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,oBAM/C,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,EA2B7C,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-network",
3
- "version": "7.4.2",
3
+ "version": "7.5.0",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -43,37 +43,40 @@
43
43
  "src"
44
44
  ],
45
45
  "dependencies": {
46
- "@xylabs/assert": "~5.0.50",
47
- "@xylabs/hex": "~5.0.50",
48
- "@xylabs/react-select": "~7.1.8",
49
- "@xylabs/react-shared": "~7.1.8",
50
- "@xyo-network/network": "~5.2.17",
51
- "react-router-dom": "^7.10.0"
46
+ "@xylabs/assert": "~5.0.64",
47
+ "@xylabs/hex": "~5.0.64",
48
+ "@xylabs/react-select": "~7.1.9",
49
+ "@xylabs/react-shared": "~7.1.9",
50
+ "@xylabs/sdk-js": "~5.0.64",
51
+ "@xyo-network/network": "~5.3.2",
52
+ "react-router-dom": "^7.13.0"
52
53
  },
53
54
  "devDependencies": {
54
- "@mui/icons-material": "~7.3.6",
55
- "@mui/material": "~7.3.6",
56
- "@storybook/react-vite": "~10.1.4",
57
- "@types/react": "^19.2.7",
58
- "@xylabs/react-flexbox": "~7.1.8",
59
- "@xylabs/ts-scripts-yarn3": "~7.2.8",
60
- "@xylabs/tsconfig": "~7.2.8",
61
- "@xylabs/tsconfig-dom": "~7.2.8",
62
- "@xylabs/tsconfig-react": "~7.2.8",
63
- "react": "^19.2.1",
64
- "react-dom": "^19.2.1",
65
- "storybook": "~10.1.4",
55
+ "@mui/icons-material": "~7.3.7",
56
+ "@mui/material": "~7.3.7",
57
+ "@storybook/react-vite": "~10.2.1",
58
+ "@types/react": "^19.2.10",
59
+ "@xylabs/react-flexbox": "~7.1.9",
60
+ "@xylabs/ts-scripts-yarn3": "~7.3.2",
61
+ "@xylabs/tsconfig": "~7.3.2",
62
+ "@xylabs/tsconfig-dom": "~7.3.2",
63
+ "@xylabs/tsconfig-react": "~7.3.2",
64
+ "react": "^19.2.4",
65
+ "react-dom": "^19.2.4",
66
+ "storybook": "~10.2.1",
66
67
  "typescript": "^5.9.3",
67
- "vite": "~7.2.6"
68
+ "vite": "~7.3.1",
69
+ "zod": "^4.3.6"
68
70
  },
69
71
  "peerDependencies": {
70
72
  "@mui/icons-material": ">=6 <8",
71
73
  "@mui/material": ">=6 <8",
72
74
  "react": "^19",
73
- "react-dom": "^19"
75
+ "react-dom": "^19",
76
+ "zod": "^4"
74
77
  },
75
78
  "publishConfig": {
76
79
  "access": "public"
77
80
  },
78
81
  "docs": "dist/docs.json"
79
- }
82
+ }
@@ -1,10 +1,10 @@
1
- import type { NetworkPayload } from '@xyo-network/network'
1
+ import type { NetworkPayload, NetworkSchema } from '@xyo-network/network'
2
2
 
3
3
  import type { NetworkNames } from '../../lib/index.ts'
4
4
 
5
5
  export interface NetworkProviderProps {
6
6
  /** @deprecated use defaultNetworkConfig instead */
7
- defaultNetwork?: NetworkPayload
8
- defaultNetworkConfig?: NetworkPayload
7
+ defaultNetwork?: (Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema })
8
+ defaultNetworkConfig?: (Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema })
9
9
  defaultNetworkName?: NetworkNames
10
10
  }
@@ -1,4 +1,4 @@
1
- import type { NetworkPayload } from '@xyo-network/network'
1
+ import type { NetworkPayload, NetworkSchema } from '@xyo-network/network'
2
2
  import type { PropsWithChildren } from 'react'
3
3
  import React, { useCallback, useEffect } from 'react'
4
4
  import { useSearchParams } from 'react-router-dom'
@@ -19,7 +19,7 @@ const NetworkRouteProviderInner: React.FC<PropsWithChildren> = ({ children }) =>
19
19
 
20
20
  // update the network stored in the route
21
21
  const setNetworkParam = useCallback(
22
- (network?: NetworkPayload) => {
22
+ (network?: Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema }) => {
23
23
  if (network) {
24
24
  params.set('network', network.slug)
25
25
  setParams(params, { replace: true })
@@ -33,7 +33,7 @@ const NetworkRouteProviderInner: React.FC<PropsWithChildren> = ({ children }) =>
33
33
 
34
34
  // if the network is actively changed, update both memory and route
35
35
  const setNetworkLocal = useCallback(
36
- (network: NetworkPayload) => {
36
+ (network: Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema }) => {
37
37
  setNetworkParam(network)
38
38
  setNetwork?.(network)
39
39
  },
@@ -4,7 +4,7 @@ import { NetworkSchema } from '@xyo-network/network'
4
4
  import { findArchivistPreset } from '../archivistPresets.ts'
5
5
  import { findDivinerPreset } from '../divinerPresets.ts'
6
6
 
7
- export const defaultNetworkConfigs: NetworkPayload[] = [
7
+ export const defaultNetworkConfigs: (Omit<NetworkPayload, 'schema'> & { schema: NetworkSchema })[] = [
8
8
  {
9
9
  name: 'Kerplunk',
10
10
  nodes: [findArchivistPreset('kerplunk-archivist-xyo-network'), findDivinerPreset('beta-location-diviner-xyo-network')],
@@ -1,4 +1,4 @@
1
- import type { Hash } from '@xylabs/hex'
1
+ import type { Hash } from '@xylabs/sdk-js'
2
2
  export const ExplorerMapHashes: { animatedAnswerHashes: Hash[]; staticAnswerHash: Hash } = {
3
3
  animatedAnswerHashes: [
4
4
  '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',
@@ -1,4 +1,4 @@
1
- import type { Hash } from '@xylabs/hex'
1
+ import type { Hash } from '@xylabs/sdk-js'
2
2
  import type { NetworkNodePayload } from '@xyo-network/network'
3
3
  import { NetworkNodeSchema } from '@xyo-network/network'
4
4