@xyo-network/react-chain-network 1.20.4 → 1.20.5
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.
- package/dist/browser/hooks/provider/index.d.ts +0 -4
- package/dist/browser/hooks/provider/index.d.ts.map +1 -1
- package/dist/browser/hooks/provider/useViewerInPage.d.ts +7 -4
- package/dist/browser/hooks/provider/useViewerInPage.d.ts.map +1 -1
- package/dist/browser/hooks/status/usePollNetworkStatus.d.ts.map +1 -1
- package/dist/browser/index.d.ts +1 -0
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.mjs +129 -151
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/story/NetworkGatewayDecorators.d.ts +5 -0
- package/dist/browser/story/NetworkGatewayDecorators.d.ts.map +1 -0
- package/dist/browser/story/index.d.ts +2 -0
- package/dist/browser/story/index.d.ts.map +1 -0
- package/package.json +10 -10
- package/src/hooks/provider/UseViewerInPageV2.stories.tsx +5 -14
- package/src/hooks/provider/index.ts +0 -4
- package/src/hooks/provider/useViewerInPage.ts +11 -33
- package/src/hooks/status/usePollNetworkStatus.ts +2 -3
- package/src/index.ts +1 -0
- package/src/story/NetworkGatewayDecorators.tsx +44 -0
- package/src/story/index.ts +1 -0
- package/dist/browser/hooks/provider/useActiveNetworkCurrentBlock.d.ts +0 -101
- package/dist/browser/hooks/provider/useActiveNetworkCurrentBlock.d.ts.map +0 -1
- package/dist/browser/hooks/provider/useActiveNetworkNetwork.d.ts +0 -2
- package/dist/browser/hooks/provider/useActiveNetworkNetwork.d.ts.map +0 -1
- package/dist/browser/hooks/provider/useActiveNetworkRunner.d.ts +0 -2
- package/dist/browser/hooks/provider/useActiveNetworkRunner.d.ts.map +0 -1
- package/dist/browser/hooks/provider/useViewerInWallet.d.ts +0 -7
- package/dist/browser/hooks/provider/useViewerInWallet.d.ts.map +0 -1
- package/src/hooks/provider/UseViewerInPage.stories.tsx +0 -129
- package/src/hooks/provider/useActiveNetworkCurrentBlock.ts +0 -26
- package/src/hooks/provider/useActiveNetworkNetwork.ts +0 -10
- package/src/hooks/provider/useActiveNetworkRunner.ts +0 -11
- package/src/hooks/provider/useViewerInWallet.ts +0 -14
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export * from './useActiveNetworkCurrentBlock.ts';
|
|
2
|
-
export * from './useActiveNetworkNetwork.ts';
|
|
3
|
-
export * from './useActiveNetworkRunner.ts';
|
|
4
1
|
export * from './useRpcBroadcastListener.ts';
|
|
5
2
|
export * from './useViewerInPage.ts';
|
|
6
|
-
export * from './useViewerInWallet.ts';
|
|
7
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/provider/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/provider/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import type { NetworkBootstrap } from '@xyo-network/xl1-sdk';
|
|
2
1
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Finds the appropriate viewer based on network settings and available gateways
|
|
3
|
+
*
|
|
4
|
+
* Specifically, if the network settings indicate that the network should be proxied, it will attempt to use the wallet viewer.
|
|
5
|
+
* If the wallet viewer is not available, it will fall back to the in-page viewer and log a warning. If the network should not
|
|
6
|
+
* be proxied, it will use the in-page viewer.
|
|
5
7
|
*/
|
|
6
|
-
export declare const useViewerInPage: (
|
|
8
|
+
export declare const useViewerInPage: () => import("@xyo-network/xl1-sdk").XyoViewer | undefined;
|
|
9
|
+
/** @deprecated - use useViewerInPage instead */
|
|
7
10
|
export declare const useViewerInPageV2: () => import("@xyo-network/xl1-sdk").XyoViewer | undefined;
|
|
8
11
|
//# sourceMappingURL=useViewerInPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useViewerInPage.d.ts","sourceRoot":"","sources":["../../../../src/hooks/provider/useViewerInPage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useViewerInPage.d.ts","sourceRoot":"","sources":["../../../../src/hooks/provider/useViewerInPage.ts"],"names":[],"mappings":"AAeA;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,4DAuB3B,CAAA;AACD,gDAAgD;AAChD,eAAO,MAAM,iBAAiB,4DAAkB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePollNetworkStatus.d.ts","sourceRoot":"","sources":["../../../../src/hooks/status/usePollNetworkStatus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePollNetworkStatus.d.ts","sourceRoot":"","sources":["../../../../src/hooks/status/usePollNetworkStatus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAKzD,eAAO,MAAM,oBAAoB,+DA+BhC,CAAA"}
|
package/dist/browser/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
package/dist/browser/index.mjs
CHANGED
|
@@ -5,12 +5,74 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
5
5
|
import { Box, Button, Drawer, Pagination, Stack as Stack3, Typography as Typography3 } from "@mui/material";
|
|
6
6
|
import React6, { useState as useState7 } from "react";
|
|
7
7
|
|
|
8
|
-
// src/hooks/provider/
|
|
9
|
-
import {
|
|
8
|
+
// src/hooks/provider/useRpcBroadcastListener.ts
|
|
9
|
+
import { isJsonRpcRequest, isJsonRpcResponse } from "@metamask/utils";
|
|
10
|
+
import { isDefined, isString } from "@xylabs/sdk-js";
|
|
11
|
+
import { useEffect, useState } from "react";
|
|
12
|
+
var parseRpcCall = /* @__PURE__ */ __name((acc, event) => {
|
|
13
|
+
if (isJsonRpcResponse(event.rpcCall)) {
|
|
14
|
+
const castedEvent = event;
|
|
15
|
+
acc[castedEvent.rpcCall.id].result = castedEvent;
|
|
16
|
+
} else if (isJsonRpcRequest(event.rpcCall)) {
|
|
17
|
+
const castedEvent = event;
|
|
18
|
+
acc[castedEvent.rpcCall.id].request = castedEvent;
|
|
19
|
+
} else {
|
|
20
|
+
console.error("Unknown RPC call type", event);
|
|
21
|
+
}
|
|
22
|
+
acc[event.rpcCall.id].source = event.source;
|
|
23
|
+
return acc;
|
|
24
|
+
}, "parseRpcCall");
|
|
25
|
+
var useRpcBroadcastListener = /* @__PURE__ */ __name(() => {
|
|
26
|
+
const [events, setEvents] = useState({});
|
|
27
|
+
const clearEvents = /* @__PURE__ */ __name(() => setEvents({}), "clearEvents");
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
const listener = /* @__PURE__ */ __name((e) => {
|
|
30
|
+
if ("detail" in e) {
|
|
31
|
+
const { detail } = e ?? {};
|
|
32
|
+
if (isString(detail)) {
|
|
33
|
+
try {
|
|
34
|
+
const parsedDetail = JSON.parse(detail);
|
|
35
|
+
const { data: rpcCall, source } = parsedDetail;
|
|
36
|
+
const broadcastedRpcCall = {
|
|
37
|
+
rpcCall,
|
|
38
|
+
source,
|
|
39
|
+
timestamp: Date.now()
|
|
40
|
+
};
|
|
41
|
+
setEvents((prev) => {
|
|
42
|
+
const { id } = broadcastedRpcCall.rpcCall;
|
|
43
|
+
const newState = {
|
|
44
|
+
...prev
|
|
45
|
+
};
|
|
46
|
+
if (isDefined(newState[id])) {
|
|
47
|
+
parseRpcCall(newState, broadcastedRpcCall);
|
|
48
|
+
} else {
|
|
49
|
+
newState[id] = {};
|
|
50
|
+
parseRpcCall(newState, broadcastedRpcCall);
|
|
51
|
+
}
|
|
52
|
+
return newState;
|
|
53
|
+
});
|
|
54
|
+
} catch (err) {
|
|
55
|
+
console.error(err);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}, "listener");
|
|
60
|
+
globalThis.addEventListener("xyo:broadcast-rpc-request", listener);
|
|
61
|
+
globalThis.addEventListener("xyo:broadcast-rpc-response", listener);
|
|
62
|
+
return () => {
|
|
63
|
+
globalThis.removeEventListener("xyo:broadcast-rpc-request", listener);
|
|
64
|
+
globalThis.removeEventListener("xyo:broadcast-rpc-response", listener);
|
|
65
|
+
};
|
|
66
|
+
}, []);
|
|
67
|
+
return {
|
|
68
|
+
events,
|
|
69
|
+
clearEvents
|
|
70
|
+
};
|
|
71
|
+
}, "useRpcBroadcastListener");
|
|
10
72
|
|
|
11
73
|
// src/hooks/provider/useViewerInPage.ts
|
|
12
|
-
import { isDefined as
|
|
13
|
-
import {
|
|
74
|
+
import { isDefined as isDefined3, isNull, isUndefined } from "@xylabs/sdk-js";
|
|
75
|
+
import { useProvidedGateway } from "@xyo-network/react-chain-provider";
|
|
14
76
|
|
|
15
77
|
// src/context/ActiveGatewayProvider.tsx
|
|
16
78
|
import { GatewayProvider, InPageGatewaysProvider } from "@xyo-network/react-chain-provider";
|
|
@@ -23,9 +85,9 @@ var ChainNetworkContext = createContextEx();
|
|
|
23
85
|
// src/context/network/Provider.tsx
|
|
24
86
|
import { ErrorRender } from "@xylabs/react-error";
|
|
25
87
|
import { usePromise } from "@xylabs/react-promise";
|
|
26
|
-
import { isDefined } from "@xylabs/sdk-js";
|
|
88
|
+
import { isDefined as isDefined2 } from "@xylabs/sdk-js";
|
|
27
89
|
import { MainNetwork } from "@xyo-network/xl1-sdk";
|
|
28
|
-
import React, { useCallback as useCallback2, useMemo, useState as
|
|
90
|
+
import React, { useCallback as useCallback2, useMemo, useState as useState3 } from "react";
|
|
29
91
|
|
|
30
92
|
// src/context/network/settings/defaultChainNetworkSettings.ts
|
|
31
93
|
import { LocalNetwork } from "@xyo-network/xl1-sdk";
|
|
@@ -36,9 +98,9 @@ var defaultChainNetworkSettings = {
|
|
|
36
98
|
};
|
|
37
99
|
|
|
38
100
|
// src/context/network/settings/useChainNetworkSettings.ts
|
|
39
|
-
import { useCallback, useState } from "react";
|
|
101
|
+
import { useCallback, useState as useState2 } from "react";
|
|
40
102
|
var useChainNetworkSettings = /* @__PURE__ */ __name((defaults = defaultChainNetworkSettings) => {
|
|
41
|
-
const [
|
|
103
|
+
const [networkSettings2, setNetworkSettings] = useState2(defaults);
|
|
42
104
|
const updateNetworkSettings = useCallback((networkId, settings) => {
|
|
43
105
|
setNetworkSettings((prevSettings) => ({
|
|
44
106
|
...prevSettings,
|
|
@@ -49,16 +111,16 @@ var useChainNetworkSettings = /* @__PURE__ */ __name((defaults = defaultChainNet
|
|
|
49
111
|
}));
|
|
50
112
|
}, []);
|
|
51
113
|
return {
|
|
52
|
-
networkSettings,
|
|
114
|
+
networkSettings: networkSettings2,
|
|
53
115
|
updateNetworkSettings
|
|
54
116
|
};
|
|
55
117
|
}, "useChainNetworkSettings");
|
|
56
118
|
|
|
57
119
|
// src/context/network/Provider.tsx
|
|
58
120
|
var ChainNetworkProvider = /* @__PURE__ */ __name(({ children, getActiveNetwork, networkSettings: networkSettingsProp = defaultChainNetworkSettings, networks, setActiveNetwork: setActiveNetworkExternal }) => {
|
|
59
|
-
const [activeNetwork, setActiveNetwork] =
|
|
60
|
-
const [error, setError] =
|
|
61
|
-
const { networkSettings, updateNetworkSettings } = useChainNetworkSettings(networkSettingsProp);
|
|
121
|
+
const [activeNetwork, setActiveNetwork] = useState3();
|
|
122
|
+
const [error, setError] = useState3();
|
|
123
|
+
const { networkSettings: networkSettings2, updateNetworkSettings } = useChainNetworkSettings(networkSettingsProp);
|
|
62
124
|
const [resolvedActiveNetwork, activeNetworkError] = usePromise(async () => {
|
|
63
125
|
if (!networks) return;
|
|
64
126
|
const activeNetwork2 = await getActiveNetwork?.();
|
|
@@ -72,8 +134,8 @@ var ChainNetworkProvider = /* @__PURE__ */ __name(({ children, getActiveNetwork,
|
|
|
72
134
|
}, [
|
|
73
135
|
networks
|
|
74
136
|
]);
|
|
75
|
-
const [previousResolvedActiveNetwork, setPreviousResolvedActiveNetwork] =
|
|
76
|
-
if (
|
|
137
|
+
const [previousResolvedActiveNetwork, setPreviousResolvedActiveNetwork] = useState3(resolvedActiveNetwork);
|
|
138
|
+
if (isDefined2(resolvedActiveNetwork) && resolvedActiveNetwork !== previousResolvedActiveNetwork) {
|
|
77
139
|
setActiveNetwork(resolvedActiveNetwork);
|
|
78
140
|
setPreviousResolvedActiveNetwork(resolvedActiveNetwork);
|
|
79
141
|
}
|
|
@@ -95,14 +157,14 @@ var ChainNetworkProvider = /* @__PURE__ */ __name(({ children, getActiveNetwork,
|
|
|
95
157
|
networks,
|
|
96
158
|
provided: true,
|
|
97
159
|
updateActiveNetwork,
|
|
98
|
-
networkSettings,
|
|
160
|
+
networkSettings: networkSettings2,
|
|
99
161
|
updateNetworkSettings,
|
|
100
162
|
chainNetworkError: error ?? activeNetworkError
|
|
101
163
|
}), [
|
|
102
164
|
activeNetwork,
|
|
103
165
|
activeNetworkError,
|
|
104
166
|
error,
|
|
105
|
-
|
|
167
|
+
networkSettings2,
|
|
106
168
|
networks,
|
|
107
169
|
updateActiveNetwork,
|
|
108
170
|
updateNetworkSettings
|
|
@@ -130,33 +192,17 @@ var ActiveGatewayProvider = /* @__PURE__ */ __name(({ account, children }) => {
|
|
|
130
192
|
}, "ActiveGatewayProvider");
|
|
131
193
|
|
|
132
194
|
// src/hooks/provider/useViewerInPage.ts
|
|
133
|
-
var shouldProxy = /* @__PURE__ */ __name((
|
|
134
|
-
return
|
|
195
|
+
var shouldProxy = /* @__PURE__ */ __name((networkSettings2, networkId) => {
|
|
196
|
+
return isDefined3(networkId) && isDefined3(networkSettings2[networkId]) && networkSettings2[networkId].proxy;
|
|
135
197
|
}, "shouldProxy");
|
|
136
|
-
var useViewerInPage = /* @__PURE__ */ __name((
|
|
137
|
-
|
|
138
|
-
const { activeNetwork, networkSettings } = useChainNetwork();
|
|
139
|
-
networkBootstrap = isDefined2(networkOverride) ? networkOverride : activeNetwork;
|
|
140
|
-
const httpRpcViewer = useHttpRpcViewer(networkBootstrap);
|
|
141
|
-
const [walletRpcViewer] = useViewerFromWallet(networkBootstrap?.id);
|
|
142
|
-
if (isUndefined(walletRpcViewer)) return;
|
|
143
|
-
if (shouldProxy(networkSettings, networkBootstrap?.id)) {
|
|
144
|
-
if (isNull(walletRpcViewer)) {
|
|
145
|
-
console.warn(`Network ${networkBootstrap?.id} is set to proxy but no wallet viewer is available, falling back to HTTP RPC viewer`);
|
|
146
|
-
return httpRpcViewer;
|
|
147
|
-
}
|
|
148
|
-
return walletRpcViewer;
|
|
149
|
-
}
|
|
150
|
-
return httpRpcViewer;
|
|
151
|
-
}, "useViewerInPage");
|
|
152
|
-
var useViewerInPageV2 = /* @__PURE__ */ __name(() => {
|
|
153
|
-
const { networkSettings, activeNetwork } = useChainNetwork();
|
|
198
|
+
var useViewerInPage = /* @__PURE__ */ __name(() => {
|
|
199
|
+
const { networkSettings: networkSettings2, activeNetwork } = useChainNetwork();
|
|
154
200
|
const { gateways } = useProvidedGateway();
|
|
155
201
|
const { inPageGateway, walletGateway } = gateways;
|
|
156
202
|
const inPageViewer = inPageGateway?.connection?.viewer;
|
|
157
203
|
const walletViewer = walletGateway?.connection?.viewer;
|
|
158
204
|
if (isUndefined(walletGateway)) return;
|
|
159
|
-
if (shouldProxy(
|
|
205
|
+
if (shouldProxy(networkSettings2, activeNetwork?.id)) {
|
|
160
206
|
if (isNull(walletGateway)) {
|
|
161
207
|
console.warn(`Network ${activeNetwork?.id} is set to proxy but no wallet viewer is available, falling back to HTTP RPC viewer`);
|
|
162
208
|
return inPageViewer;
|
|
@@ -164,119 +210,16 @@ var useViewerInPageV2 = /* @__PURE__ */ __name(() => {
|
|
|
164
210
|
return walletViewer;
|
|
165
211
|
}
|
|
166
212
|
return inPageViewer;
|
|
167
|
-
}, "
|
|
168
|
-
|
|
169
|
-
// src/hooks/provider/useActiveNetworkCurrentBlock.ts
|
|
170
|
-
var useActiveNetworkCurrentBlock = /* @__PURE__ */ __name((refresh = 1, viewer) => {
|
|
171
|
-
const currentBlock = useCurrentBlock(refresh, viewer);
|
|
172
|
-
return currentBlock;
|
|
173
|
-
}, "useActiveNetworkCurrentBlock");
|
|
174
|
-
var useActiveNetworkCurrentBlockInPage = /* @__PURE__ */ __name((refresh = 1) => {
|
|
175
|
-
const viewer = useViewerInPage();
|
|
176
|
-
const currentBlock = useCurrentBlock(refresh, viewer);
|
|
177
|
-
return currentBlock;
|
|
178
|
-
}, "useActiveNetworkCurrentBlockInPage");
|
|
179
|
-
var useActiveNetworkCurrentBlockInWallet = /* @__PURE__ */ __name((refresh = 1) => {
|
|
180
|
-
const [viewer] = useViewerFromWallet2();
|
|
181
|
-
const currentBlock = useCurrentBlock(refresh, viewer);
|
|
182
|
-
return currentBlock;
|
|
183
|
-
}, "useActiveNetworkCurrentBlockInWallet");
|
|
184
|
-
|
|
185
|
-
// src/hooks/provider/useActiveNetworkNetwork.ts
|
|
186
|
-
import { useNetwork } from "@xyo-network/react-chain-provider";
|
|
187
|
-
var useActiveNetworkNetwork = /* @__PURE__ */ __name(() => {
|
|
188
|
-
const { activeNetwork } = useChainNetwork();
|
|
189
|
-
const network = useNetwork(activeNetwork?.id);
|
|
190
|
-
return network;
|
|
191
|
-
}, "useActiveNetworkNetwork");
|
|
192
|
-
|
|
193
|
-
// src/hooks/provider/useActiveNetworkRunner.ts
|
|
194
|
-
import { useHttpRpcRunner } from "@xyo-network/react-chain-provider";
|
|
195
|
-
var useActiveNetworkRunner = /* @__PURE__ */ __name(() => {
|
|
196
|
-
const { activeNetwork } = useChainNetwork();
|
|
197
|
-
const runner = useHttpRpcRunner(activeNetwork?.url);
|
|
198
|
-
return runner;
|
|
199
|
-
}, "useActiveNetworkRunner");
|
|
200
|
-
|
|
201
|
-
// src/hooks/provider/useRpcBroadcastListener.ts
|
|
202
|
-
import { isJsonRpcRequest, isJsonRpcResponse } from "@metamask/utils";
|
|
203
|
-
import { isDefined as isDefined3, isString } from "@xylabs/sdk-js";
|
|
204
|
-
import { useEffect, useState as useState3 } from "react";
|
|
205
|
-
var parseRpcCall = /* @__PURE__ */ __name((acc, event) => {
|
|
206
|
-
if (isJsonRpcResponse(event.rpcCall)) {
|
|
207
|
-
const castedEvent = event;
|
|
208
|
-
acc[castedEvent.rpcCall.id].result = castedEvent;
|
|
209
|
-
} else if (isJsonRpcRequest(event.rpcCall)) {
|
|
210
|
-
const castedEvent = event;
|
|
211
|
-
acc[castedEvent.rpcCall.id].request = castedEvent;
|
|
212
|
-
} else {
|
|
213
|
-
console.error("Unknown RPC call type", event);
|
|
214
|
-
}
|
|
215
|
-
acc[event.rpcCall.id].source = event.source;
|
|
216
|
-
return acc;
|
|
217
|
-
}, "parseRpcCall");
|
|
218
|
-
var useRpcBroadcastListener = /* @__PURE__ */ __name(() => {
|
|
219
|
-
const [events, setEvents] = useState3({});
|
|
220
|
-
const clearEvents = /* @__PURE__ */ __name(() => setEvents({}), "clearEvents");
|
|
221
|
-
useEffect(() => {
|
|
222
|
-
const listener = /* @__PURE__ */ __name((e) => {
|
|
223
|
-
if ("detail" in e) {
|
|
224
|
-
const { detail } = e ?? {};
|
|
225
|
-
if (isString(detail)) {
|
|
226
|
-
try {
|
|
227
|
-
const parsedDetail = JSON.parse(detail);
|
|
228
|
-
const { data: rpcCall, source } = parsedDetail;
|
|
229
|
-
const broadcastedRpcCall = {
|
|
230
|
-
rpcCall,
|
|
231
|
-
source,
|
|
232
|
-
timestamp: Date.now()
|
|
233
|
-
};
|
|
234
|
-
setEvents((prev) => {
|
|
235
|
-
const { id } = broadcastedRpcCall.rpcCall;
|
|
236
|
-
const newState = {
|
|
237
|
-
...prev
|
|
238
|
-
};
|
|
239
|
-
if (isDefined3(newState[id])) {
|
|
240
|
-
parseRpcCall(newState, broadcastedRpcCall);
|
|
241
|
-
} else {
|
|
242
|
-
newState[id] = {};
|
|
243
|
-
parseRpcCall(newState, broadcastedRpcCall);
|
|
244
|
-
}
|
|
245
|
-
return newState;
|
|
246
|
-
});
|
|
247
|
-
} catch (err) {
|
|
248
|
-
console.error(err);
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
}, "listener");
|
|
253
|
-
globalThis.addEventListener("xyo:broadcast-rpc-request", listener);
|
|
254
|
-
globalThis.addEventListener("xyo:broadcast-rpc-response", listener);
|
|
255
|
-
return () => {
|
|
256
|
-
globalThis.removeEventListener("xyo:broadcast-rpc-request", listener);
|
|
257
|
-
globalThis.removeEventListener("xyo:broadcast-rpc-response", listener);
|
|
258
|
-
};
|
|
259
|
-
}, []);
|
|
260
|
-
return {
|
|
261
|
-
events,
|
|
262
|
-
clearEvents
|
|
263
|
-
};
|
|
264
|
-
}, "useRpcBroadcastListener");
|
|
265
|
-
|
|
266
|
-
// src/hooks/provider/useViewerInWallet.ts
|
|
267
|
-
import { useHttpRpcViewer as useHttpRpcViewer2 } from "@xyo-network/react-chain-provider";
|
|
268
|
-
var useViewerInWallet = /* @__PURE__ */ __name(() => {
|
|
269
|
-
const { activeNetwork } = useChainNetwork();
|
|
270
|
-
const walletViewer = useHttpRpcViewer2(activeNetwork?.url);
|
|
271
|
-
return walletViewer;
|
|
272
|
-
}, "useViewerInWallet");
|
|
213
|
+
}, "useViewerInPage");
|
|
214
|
+
var useViewerInPageV2 = useViewerInPage;
|
|
273
215
|
|
|
274
216
|
// src/hooks/status/usePollNetworkStatus.ts
|
|
275
217
|
import { delay, isUndefined as isUndefined2 } from "@xylabs/sdk-js";
|
|
218
|
+
import { useNetworkFromGateway } from "@xyo-network/react-chain-provider";
|
|
276
219
|
import { useEffect as useEffect2, useState as useState4 } from "react";
|
|
277
220
|
var STATUS_CHECK_INTERVAL = 1e4;
|
|
278
221
|
var usePollNetworkStatus = /* @__PURE__ */ __name(() => {
|
|
279
|
-
const network =
|
|
222
|
+
const network = useNetworkFromGateway();
|
|
280
223
|
const [networkStatus, setNetworkStatus] = useState4();
|
|
281
224
|
const [networkStatusError, setNetworkStatusError] = useState4();
|
|
282
225
|
useEffect2(() => {
|
|
@@ -761,6 +704,44 @@ var defaultBroadcastConfig = {
|
|
|
761
704
|
request: true,
|
|
762
705
|
response: true
|
|
763
706
|
};
|
|
707
|
+
|
|
708
|
+
// src/story/NetworkGatewayDecorators.tsx
|
|
709
|
+
import { LocalNetwork as LocalNetwork2, MainNetwork as MainNetwork2, SequenceNetwork } from "@xyo-network/xl1-sdk";
|
|
710
|
+
import React13 from "react";
|
|
711
|
+
var AvailableNetworks = [
|
|
712
|
+
MainNetwork2,
|
|
713
|
+
SequenceNetwork,
|
|
714
|
+
LocalNetwork2
|
|
715
|
+
];
|
|
716
|
+
var networkSettings = {
|
|
717
|
+
[LocalNetwork2.id]: {
|
|
718
|
+
proxy: true
|
|
719
|
+
}
|
|
720
|
+
};
|
|
721
|
+
var getActiveMainnetNetwork = /* @__PURE__ */ __name(async () => await Promise.resolve(AvailableNetworks[0]), "getActiveMainnetNetwork");
|
|
722
|
+
var MainnetNetworkGatewayDecorator = /* @__PURE__ */ __name((Story, args) => {
|
|
723
|
+
return /* @__PURE__ */ React13.createElement(ChainNetworkProvider, {
|
|
724
|
+
networks: AvailableNetworks,
|
|
725
|
+
networkSettings,
|
|
726
|
+
getActiveNetwork: getActiveMainnetNetwork
|
|
727
|
+
}, /* @__PURE__ */ React13.createElement(ActiveGatewayProvider, null, /* @__PURE__ */ React13.createElement(Story, args)));
|
|
728
|
+
}, "MainnetNetworkGatewayDecorator");
|
|
729
|
+
var getActiveSequenceNetwork = /* @__PURE__ */ __name(async () => await Promise.resolve(AvailableNetworks[1]), "getActiveSequenceNetwork");
|
|
730
|
+
var SequenceNetworkGatewayDecorator = /* @__PURE__ */ __name((Story, args) => {
|
|
731
|
+
return /* @__PURE__ */ React13.createElement(ChainNetworkProvider, {
|
|
732
|
+
networks: AvailableNetworks,
|
|
733
|
+
networkSettings,
|
|
734
|
+
getActiveNetwork: getActiveSequenceNetwork
|
|
735
|
+
}, /* @__PURE__ */ React13.createElement(ActiveGatewayProvider, null, /* @__PURE__ */ React13.createElement(Story, args)));
|
|
736
|
+
}, "SequenceNetworkGatewayDecorator");
|
|
737
|
+
var getActiveLocalNetwork = /* @__PURE__ */ __name(async () => await Promise.resolve(AvailableNetworks[2]), "getActiveLocalNetwork");
|
|
738
|
+
var LocalNetworkGatewayDecorator = /* @__PURE__ */ __name((Story, args) => {
|
|
739
|
+
return /* @__PURE__ */ React13.createElement(ChainNetworkProvider, {
|
|
740
|
+
networks: AvailableNetworks,
|
|
741
|
+
networkSettings,
|
|
742
|
+
getActiveNetwork: getActiveLocalNetwork
|
|
743
|
+
}, /* @__PURE__ */ React13.createElement(ActiveGatewayProvider, null, /* @__PURE__ */ React13.createElement(Story, args)));
|
|
744
|
+
}, "LocalNetworkGatewayDecorator");
|
|
764
745
|
export {
|
|
765
746
|
ActiveGatewayProvider,
|
|
766
747
|
ActiveNetworkAvatar,
|
|
@@ -770,24 +751,21 @@ export {
|
|
|
770
751
|
BroadcastedRpcCallsDrawerWithEvents,
|
|
771
752
|
ChainNetworkContext,
|
|
772
753
|
ChainNetworkProvider,
|
|
754
|
+
LocalNetworkGatewayDecorator,
|
|
755
|
+
MainnetNetworkGatewayDecorator,
|
|
773
756
|
NetworkAvatar,
|
|
774
757
|
NetworkIcon,
|
|
775
758
|
NetworkMenuItem,
|
|
776
759
|
NetworkStatus,
|
|
777
760
|
NetworkStatusAlert,
|
|
761
|
+
SequenceNetworkGatewayDecorator,
|
|
778
762
|
defaultBroadcastConfig,
|
|
779
763
|
defaultChainNetworkSettings,
|
|
780
|
-
useActiveNetworkCurrentBlock,
|
|
781
|
-
useActiveNetworkCurrentBlockInPage,
|
|
782
|
-
useActiveNetworkCurrentBlockInWallet,
|
|
783
|
-
useActiveNetworkNetwork,
|
|
784
|
-
useActiveNetworkRunner,
|
|
785
764
|
useChainNetwork,
|
|
786
765
|
useChainNetworkSettings,
|
|
787
766
|
usePollNetworkStatus,
|
|
788
767
|
useRpcBroadcastListener,
|
|
789
768
|
useViewerInPage,
|
|
790
|
-
useViewerInPageV2
|
|
791
|
-
useViewerInWallet
|
|
769
|
+
useViewerInPageV2
|
|
792
770
|
};
|
|
793
771
|
//# sourceMappingURL=index.mjs.map
|