@xyo-network/react-chain-network 1.6.0 → 1.6.2
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/index.mjs +127 -267
- package/dist/browser/index.mjs.map +1 -1
- package/dist/types/components/menu/MenuItem.d.ts +1 -1
- package/dist/types/components/menu/MenuItem.d.ts.map +1 -1
- package/dist/types/components/status/NetworkStatus.d.ts +7 -0
- package/dist/types/components/status/NetworkStatus.d.ts.map +1 -0
- package/dist/types/components/status/index.d.ts +1 -0
- package/dist/types/components/status/index.d.ts.map +1 -1
- package/dist/types/context/network/Provider.d.ts +1 -1
- package/dist/types/context/network/Provider.d.ts.map +1 -1
- package/dist/types/context/network/context.d.ts +12 -12
- package/dist/types/context/network/state.d.ts +2 -2
- package/dist/types/context/network/state.d.ts.map +1 -1
- package/dist/types/context/network/use.d.ts +4 -4
- package/dist/types/context/network/use.d.ts.map +1 -1
- package/dist/types/hooks/index.d.ts +3 -0
- package/dist/types/hooks/index.d.ts.map +1 -0
- package/dist/types/hooks/provider/index.d.ts +6 -0
- package/dist/types/hooks/provider/index.d.ts.map +1 -0
- package/dist/types/hooks/provider/useActiveNetworkCurrentBlock.d.ts +2 -0
- package/dist/types/hooks/provider/useActiveNetworkCurrentBlock.d.ts.map +1 -0
- package/dist/types/hooks/provider/useActiveNetworkHostViewer.d.ts +2 -0
- package/dist/types/hooks/provider/useActiveNetworkHostViewer.d.ts.map +1 -0
- package/dist/types/hooks/provider/useActiveNetworkNetwork.d.ts +2 -0
- package/dist/types/hooks/provider/useActiveNetworkNetwork.d.ts.map +1 -0
- package/dist/types/hooks/provider/useActiveNetworkRunner.d.ts +2 -0
- package/dist/types/hooks/provider/useActiveNetworkRunner.d.ts.map +1 -0
- package/dist/types/hooks/provider/useActiveNetworkViewer.d.ts +2 -0
- package/dist/types/hooks/provider/useActiveNetworkViewer.d.ts.map +1 -0
- package/dist/types/hooks/status/index.d.ts +2 -0
- package/dist/types/hooks/status/index.d.ts.map +1 -0
- package/dist/types/hooks/status/usePollNetworkStatus.d.ts +3 -0
- package/dist/types/hooks/status/usePollNetworkStatus.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -3
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +14 -24
- package/src/components/menu/MenuItem.tsx +1 -1
- package/src/components/status/NetworkStatus.tsx +21 -0
- package/src/components/status/index.ts +1 -0
- package/src/context/network/Provider.tsx +4 -4
- package/src/context/network/state.ts +2 -3
- package/src/context/network/use.ts +1 -1
- package/src/hooks/index.ts +2 -0
- package/src/hooks/provider/index.ts +5 -0
- package/src/hooks/provider/useActiveNetworkCurrentBlock.ts +10 -0
- package/src/hooks/provider/useActiveNetworkHostViewer.ts +9 -0
- package/src/hooks/provider/useActiveNetworkNetwork.ts +9 -0
- package/src/hooks/provider/useActiveNetworkRunner.ts +10 -0
- package/src/hooks/provider/useActiveNetworkViewer.ts +9 -0
- package/src/hooks/status/index.ts +1 -0
- package/src/hooks/status/usePollNetworkStatus.ts +41 -0
- package/src/index.ts +1 -3
- package/dist/browser/XL1_Logo_Icon_Localhost-2ZA6P5DV.svg +0 -1
- package/dist/browser/XL1_Logo_Icon_Mainnet-OLUPYV7Q.svg +0 -1
- package/dist/browser/XL1_Logo_Icon_Testnet-HCQCTXVQ.svg +0 -1
- package/dist/types/helpers/Networks.d.ts +0 -6
- package/dist/types/helpers/Networks.d.ts.map +0 -1
- package/dist/types/helpers/getNetworkNode.d.ts +0 -2
- package/dist/types/helpers/getNetworkNode.d.ts.map +0 -1
- package/dist/types/helpers/getNetworkNodes.d.ts +0 -3
- package/dist/types/helpers/getNetworkNodes.d.ts.map +0 -1
- package/dist/types/helpers/index.d.ts +0 -4
- package/dist/types/helpers/index.d.ts.map +0 -1
- package/dist/types/helpers/initNetworkNode.d.ts +0 -4
- package/dist/types/helpers/initNetworkNode.d.ts.map +0 -1
- package/dist/types/helpers/manifest/index.d.ts +0 -2
- package/dist/types/helpers/manifest/index.d.ts.map +0 -1
- package/dist/types/helpers/manifest/networkManifest.d.ts +0 -6
- package/dist/types/helpers/manifest/networkManifest.d.ts.map +0 -1
- package/dist/types/images/icons/index.d.ts +0 -5
- package/dist/types/images/icons/index.d.ts.map +0 -1
- package/dist/types/images/icons/local/index.d.ts +0 -5
- package/dist/types/images/icons/local/index.d.ts.map +0 -1
- package/dist/types/images/icons/mainnet/index.d.ts +0 -5
- package/dist/types/images/icons/mainnet/index.d.ts.map +0 -1
- package/dist/types/images/icons/sequence/index.d.ts +0 -5
- package/dist/types/images/icons/sequence/index.d.ts.map +0 -1
- package/dist/types/images/icons/xyoColorLogo.d.ts +0 -5
- package/dist/types/images/icons/xyoColorLogo.d.ts.map +0 -1
- package/dist/types/images/index.d.ts +0 -2
- package/dist/types/images/index.d.ts.map +0 -1
- package/dist/types/models/Bootstrap.d.ts +0 -42
- package/dist/types/models/Bootstrap.d.ts.map +0 -1
- package/dist/types/models/index.d.ts +0 -2
- package/dist/types/models/index.d.ts.map +0 -1
- package/dist/types/provider/NetworkProvider.d.ts +0 -47
- package/dist/types/provider/NetworkProvider.d.ts.map +0 -1
- package/dist/types/provider/index.d.ts +0 -2
- package/dist/types/provider/index.d.ts.map +0 -1
- package/src/helpers/Networks.ts +0 -40
- package/src/helpers/getNetworkNode.ts +0 -11
- package/src/helpers/getNetworkNodes.ts +0 -7
- package/src/helpers/index.ts +0 -3
- package/src/helpers/initNetworkNode.ts +0 -15
- package/src/helpers/manifest/index.ts +0 -1
- package/src/helpers/manifest/network.json +0 -17
- package/src/helpers/manifest/networkManifest.ts +0 -8
- package/src/images/icons/index.ts +0 -4
- package/src/images/icons/local/XL1_Logo_Icon_Localhost.svg +0 -1
- package/src/images/icons/local/index.tsx +0 -15
- package/src/images/icons/mainnet/XL1_Logo_Icon_Mainnet.svg +0 -1
- package/src/images/icons/mainnet/index.tsx +0 -15
- package/src/images/icons/sequence/XL1_Logo_Icon_Testnet.svg +0 -1
- package/src/images/icons/sequence/index.tsx +0 -15
- package/src/images/icons/xyoColorLogo.tsx +0 -54
- package/src/images/index.ts +0 -1
- package/src/models/Bootstrap.ts +0 -51
- package/src/models/index.ts +0 -1
- package/src/provider/NetworkProvider.ts +0 -176
- package/src/provider/index.ts +0 -1
package/dist/browser/index.mjs
CHANGED
|
@@ -3,7 +3,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
3
3
|
|
|
4
4
|
// src/components/menu/Avatar.tsx
|
|
5
5
|
import { Avatar } from "@mui/material";
|
|
6
|
-
import
|
|
6
|
+
import React3 from "react";
|
|
7
7
|
|
|
8
8
|
// src/context/network/context.ts
|
|
9
9
|
import { createContextEx } from "@xylabs/react-shared";
|
|
@@ -12,120 +12,8 @@ var ChainNetworkContext = createContextEx();
|
|
|
12
12
|
// src/context/network/Provider.tsx
|
|
13
13
|
import { ErrorRender } from "@xylabs/react-error";
|
|
14
14
|
import { usePromise } from "@xylabs/react-promise";
|
|
15
|
-
import
|
|
16
|
-
|
|
17
|
-
// src/helpers/getNetworkNodes.ts
|
|
18
|
-
var networkNodeMap = /* @__PURE__ */ new Map();
|
|
19
|
-
var getNetworkNodes = /* @__PURE__ */ __name(() => {
|
|
20
|
-
return networkNodeMap;
|
|
21
|
-
}, "getNetworkNodes");
|
|
22
|
-
|
|
23
|
-
// src/helpers/getNetworkNode.ts
|
|
24
|
-
import { ManifestWrapper } from "@xyo-network/manifest-wrapper";
|
|
25
|
-
import { ModuleFactoryLocator } from "@xyo-network/module-factory-locator";
|
|
26
|
-
import { HDWallet } from "@xyo-network/wallet";
|
|
27
|
-
|
|
28
|
-
// src/helpers/manifest/network.json
|
|
29
|
-
var network_default = {
|
|
30
|
-
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
31
|
-
nodes: [
|
|
32
|
-
{
|
|
33
|
-
config: {
|
|
34
|
-
accountPath: "44'/60'/1",
|
|
35
|
-
name: "Network",
|
|
36
|
-
schema: "network.xyo.node.config"
|
|
37
|
-
},
|
|
38
|
-
modules: {
|
|
39
|
-
private: [],
|
|
40
|
-
public: []
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
],
|
|
44
|
-
schema: "network.xyo.manifest"
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
// src/helpers/manifest/networkManifest.ts
|
|
48
|
-
var NetworkNodeManifest = network_default;
|
|
49
|
-
|
|
50
|
-
// src/helpers/getNetworkNode.ts
|
|
51
|
-
var getNetworkNode = /* @__PURE__ */ __name(async () => {
|
|
52
|
-
const wrapper = new ManifestWrapper(NetworkNodeManifest, await HDWallet.random(), new ModuleFactoryLocator());
|
|
53
|
-
const [node] = await wrapper.loadNodes();
|
|
54
|
-
return node;
|
|
55
|
-
}, "getNetworkNode");
|
|
56
|
-
|
|
57
|
-
// src/helpers/initNetworkNode.ts
|
|
58
|
-
var initNetworkNode = /* @__PURE__ */ __name(async (activeNetwork) => {
|
|
59
|
-
const networkNodeMap2 = getNetworkNodes();
|
|
60
|
-
if (networkNodeMap2.has(activeNetwork.url)) return networkNodeMap2.get(activeNetwork.url);
|
|
61
|
-
const activeNetworkNode = await getNetworkNode();
|
|
62
|
-
networkNodeMap2.set(activeNetwork.url, activeNetworkNode);
|
|
63
|
-
return activeNetworkNode;
|
|
64
|
-
}, "initNetworkNode");
|
|
65
|
-
|
|
66
|
-
// src/images/icons/local/index.tsx
|
|
67
|
-
import { SvgIcon } from "@mui/material";
|
|
68
|
-
import React from "react";
|
|
69
|
-
import LocalNetworkSvg from "./XL1_Logo_Icon_Localhost-2ZA6P5DV.svg?react";
|
|
70
|
-
import { default as default2 } from "./XL1_Logo_Icon_Localhost-2ZA6P5DV.svg?raw";
|
|
71
|
-
|
|
72
|
-
// src/images/icons/mainnet/index.tsx
|
|
73
|
-
import { SvgIcon as SvgIcon2 } from "@mui/material";
|
|
74
|
-
import React2 from "react";
|
|
75
|
-
import MainNetworkSvg from "./XL1_Logo_Icon_Mainnet-OLUPYV7Q.svg?react";
|
|
76
|
-
import { default as default3 } from "./XL1_Logo_Icon_Mainnet-OLUPYV7Q.svg?raw";
|
|
77
|
-
|
|
78
|
-
// src/images/icons/sequence/index.tsx
|
|
79
|
-
import { SvgIcon as SvgIcon3 } from "@mui/material";
|
|
80
|
-
import React3 from "react";
|
|
81
|
-
import SequenceNetworkSvg from "./XL1_Logo_Icon_Testnet-HCQCTXVQ.svg?react";
|
|
82
|
-
import { default as default4 } from "./XL1_Logo_Icon_Testnet-HCQCTXVQ.svg?raw";
|
|
83
|
-
|
|
84
|
-
// src/models/Bootstrap.ts
|
|
85
|
-
import { AsObjectFactory } from "@xylabs/object";
|
|
86
|
-
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
87
|
-
var NetworkBootstrapSchema = "network.xyo.network.bootstrap";
|
|
88
|
-
var isNetworkBootstrap = isPayloadOfSchemaType(NetworkBootstrapSchema);
|
|
89
|
-
var asOptionalNetwork = AsObjectFactory.createOptional(isNetworkBootstrap);
|
|
90
|
-
|
|
91
|
-
// src/helpers/Networks.ts
|
|
92
|
-
var MainNetwork = {
|
|
93
|
-
description: "Main Network for XYO Layer 1",
|
|
94
|
-
icon: default3,
|
|
95
|
-
id: "mainnet",
|
|
96
|
-
name: "Mainnet",
|
|
97
|
-
schema: NetworkBootstrapSchema,
|
|
98
|
-
symbol: "XL1",
|
|
99
|
-
url: "https://api.chain.xyo.network",
|
|
100
|
-
explorerUrl: "https://explore.xyo.network"
|
|
101
|
-
};
|
|
102
|
-
var SequenceNetwork = {
|
|
103
|
-
description: "Test Network for XYO Layer 1",
|
|
104
|
-
icon: default4,
|
|
105
|
-
id: "sequence",
|
|
106
|
-
name: "Sequence",
|
|
107
|
-
schema: NetworkBootstrapSchema,
|
|
108
|
-
symbol: "XL1",
|
|
109
|
-
url: "https://beta.api.chain.xyo.network",
|
|
110
|
-
explorerUrl: "https://beta.explore.xyo.network"
|
|
111
|
-
};
|
|
112
|
-
var LocalNetwork = {
|
|
113
|
-
description: "Local Node",
|
|
114
|
-
icon: default2,
|
|
115
|
-
id: "local",
|
|
116
|
-
name: "Local",
|
|
117
|
-
schema: NetworkBootstrapSchema,
|
|
118
|
-
symbol: "XL1",
|
|
119
|
-
url: "http://localhost:8080",
|
|
120
|
-
explorerUrl: "http://localhost:3000"
|
|
121
|
-
};
|
|
122
|
-
var DefaultNetworks = [
|
|
123
|
-
MainNetwork,
|
|
124
|
-
SequenceNetwork,
|
|
125
|
-
LocalNetwork
|
|
126
|
-
];
|
|
127
|
-
|
|
128
|
-
// src/context/network/Provider.tsx
|
|
15
|
+
import { SequenceNetwork } from "@xyo-network/chain-network-model";
|
|
16
|
+
import React, { useCallback, useMemo, useState } from "react";
|
|
129
17
|
var ChainNetworkProvider = /* @__PURE__ */ __name(({ children, getActiveNetwork, networks, setActiveNetwork: setActiveNetworkExternal }) => {
|
|
130
18
|
const [activeNetwork, setActiveNetwork] = useState();
|
|
131
19
|
const [error, setError] = useState();
|
|
@@ -166,29 +54,29 @@ var ChainNetworkProvider = /* @__PURE__ */ __name(({ children, getActiveNetwork,
|
|
|
166
54
|
networks,
|
|
167
55
|
provided: true,
|
|
168
56
|
updateActiveNetwork,
|
|
169
|
-
|
|
57
|
+
chainNetworkError: error ?? activeNetworkError
|
|
170
58
|
}), [
|
|
171
59
|
activeNetwork,
|
|
172
60
|
networks,
|
|
173
61
|
updateActiveNetwork
|
|
174
62
|
]);
|
|
175
|
-
return /* @__PURE__ */
|
|
63
|
+
return /* @__PURE__ */ React.createElement(ChainNetworkContext, {
|
|
176
64
|
value
|
|
177
|
-
}, /* @__PURE__ */
|
|
65
|
+
}, /* @__PURE__ */ React.createElement(ErrorRender, {
|
|
178
66
|
error: error ?? activeNetworkError,
|
|
179
|
-
scope: "
|
|
67
|
+
scope: "ChainNetworkProvider"
|
|
180
68
|
}), children);
|
|
181
69
|
}, "ChainNetworkProvider");
|
|
182
70
|
|
|
183
71
|
// src/context/network/use.ts
|
|
184
72
|
import { useContextEx } from "@xylabs/react-shared";
|
|
185
|
-
var useChainNetwork = /* @__PURE__ */ __name((required = true) => useContextEx(ChainNetworkContext, "
|
|
73
|
+
var useChainNetwork = /* @__PURE__ */ __name((required = true) => useContextEx(ChainNetworkContext, "ChainNetwork", required), "useChainNetwork");
|
|
186
74
|
|
|
187
75
|
// src/components/menu/Icon.tsx
|
|
188
76
|
import { Icon } from "@mui/material";
|
|
189
|
-
import
|
|
77
|
+
import React2 from "react";
|
|
190
78
|
var NetworkIcon = /* @__PURE__ */ __name(({ icon, ...props }) => {
|
|
191
|
-
return /* @__PURE__ */
|
|
79
|
+
return /* @__PURE__ */ React2.createElement(Icon, {
|
|
192
80
|
sx: {
|
|
193
81
|
display: "inline-flex",
|
|
194
82
|
alignItems: "center",
|
|
@@ -205,7 +93,7 @@ var NetworkIcon = /* @__PURE__ */ __name(({ icon, ...props }) => {
|
|
|
205
93
|
|
|
206
94
|
// src/components/menu/Avatar.tsx
|
|
207
95
|
var NetworkAvatar = /* @__PURE__ */ __name(({ icon, name, ...props }) => {
|
|
208
|
-
return /* @__PURE__ */
|
|
96
|
+
return /* @__PURE__ */ React3.createElement(Avatar, {
|
|
209
97
|
sx: {
|
|
210
98
|
backgroundColor: "white",
|
|
211
99
|
height: 30,
|
|
@@ -213,13 +101,13 @@ var NetworkAvatar = /* @__PURE__ */ __name(({ icon, name, ...props }) => {
|
|
|
213
101
|
},
|
|
214
102
|
alt: name,
|
|
215
103
|
...props
|
|
216
|
-
}, /* @__PURE__ */
|
|
104
|
+
}, /* @__PURE__ */ React3.createElement(NetworkIcon, {
|
|
217
105
|
icon
|
|
218
106
|
}));
|
|
219
107
|
}, "NetworkAvatar");
|
|
220
108
|
var ActiveNetworkAvatar = /* @__PURE__ */ __name((props) => {
|
|
221
109
|
const { activeNetwork } = useChainNetwork();
|
|
222
|
-
return /* @__PURE__ */
|
|
110
|
+
return /* @__PURE__ */ React3.createElement(NetworkAvatar, {
|
|
223
111
|
icon: activeNetwork?.icon,
|
|
224
112
|
name: activeNetwork?.name,
|
|
225
113
|
...props
|
|
@@ -229,47 +117,47 @@ var ActiveNetworkAvatar = /* @__PURE__ */ __name((props) => {
|
|
|
229
117
|
// src/components/menu/MenuItem.tsx
|
|
230
118
|
import { ListItemText } from "@mui/material";
|
|
231
119
|
import { ActiveMenuItem } from "@xyo-network/react-chain-shared";
|
|
232
|
-
import
|
|
120
|
+
import React4 from "react";
|
|
233
121
|
var NetworkMenuItem = /* @__PURE__ */ __name(({ active, network, onClick, updateActiveNetwork, ...props }) => {
|
|
234
122
|
const handleClick = /* @__PURE__ */ __name((event) => {
|
|
235
123
|
if (network === void 0) throw new Error("Network is undefined");
|
|
236
124
|
updateActiveNetwork?.(network.id);
|
|
237
125
|
onClick?.(event);
|
|
238
126
|
}, "handleClick");
|
|
239
|
-
return /* @__PURE__ */
|
|
127
|
+
return /* @__PURE__ */ React4.createElement(ActiveMenuItem, {
|
|
240
128
|
title: network?.name,
|
|
241
129
|
disableRipple: true,
|
|
242
130
|
onClick: handleClick,
|
|
243
131
|
active,
|
|
244
132
|
...props
|
|
245
|
-
}, /* @__PURE__ */
|
|
133
|
+
}, /* @__PURE__ */ React4.createElement(NetworkAvatar, {
|
|
246
134
|
icon: network?.icon,
|
|
247
135
|
name: network?.name
|
|
248
|
-
}), /* @__PURE__ */
|
|
136
|
+
}), /* @__PURE__ */ React4.createElement(ListItemText, null, network?.name));
|
|
249
137
|
}, "NetworkMenuItem");
|
|
250
138
|
|
|
251
139
|
// src/components/status/Alert.tsx
|
|
252
140
|
import { Alert, AlertTitle, Button as Button2 } from "@mui/material";
|
|
253
|
-
import
|
|
141
|
+
import React6, { useMemo as useMemo2, useState as useState2 } from "react";
|
|
254
142
|
|
|
255
143
|
// src/components/status/Dialog.tsx
|
|
256
144
|
import { Button, Dialog, DialogActions, DialogContent, DialogTitle, List, ListItem, Typography } from "@mui/material";
|
|
257
|
-
import
|
|
145
|
+
import React5 from "react";
|
|
258
146
|
var NetworkStatusDialog = /* @__PURE__ */ __name(({ updates, ...props }) => {
|
|
259
|
-
return /* @__PURE__ */
|
|
147
|
+
return /* @__PURE__ */ React5.createElement(Dialog, props, /* @__PURE__ */ React5.createElement(DialogTitle, null, "Recent Status Updates"), /* @__PURE__ */ React5.createElement(DialogContent, null, /* @__PURE__ */ React5.createElement(List, null, updates.map(({ start, end, update }) => /* @__PURE__ */ React5.createElement(ListItem, {
|
|
260
148
|
key: start + update,
|
|
261
149
|
sx: {
|
|
262
150
|
flexDirection: "column",
|
|
263
151
|
alignItems: "start",
|
|
264
152
|
pl: 0
|
|
265
153
|
}
|
|
266
|
-
}, /* @__PURE__ */
|
|
154
|
+
}, /* @__PURE__ */ React5.createElement(Typography, null, update), /* @__PURE__ */ React5.createElement(Typography, {
|
|
267
155
|
gutterBottom: true,
|
|
268
156
|
sx: {
|
|
269
157
|
opacity: 0.75,
|
|
270
158
|
fontSize: ".8333rem"
|
|
271
159
|
}
|
|
272
|
-
}, "Start:", " ", new Date(start).toLocaleString(), " ", /* @__PURE__ */
|
|
160
|
+
}, "Start:", " ", new Date(start).toLocaleString(), " ", /* @__PURE__ */ React5.createElement("br", null), "End:", " ", new Date(end).toLocaleString()))))), /* @__PURE__ */ React5.createElement(DialogActions, null, /* @__PURE__ */ React5.createElement(Button, {
|
|
273
161
|
onClick: /* @__PURE__ */ __name((e) => props.onClose?.(e, "backdropClick"), "onClick"),
|
|
274
162
|
color: "primary",
|
|
275
163
|
variant: "outlined"
|
|
@@ -299,158 +187,130 @@ var NetworkStatusAlert = /* @__PURE__ */ __name(({ status, ...props }) => {
|
|
|
299
187
|
}, [
|
|
300
188
|
status
|
|
301
189
|
]);
|
|
302
|
-
return /* @__PURE__ */
|
|
190
|
+
return /* @__PURE__ */ React6.createElement(Alert, {
|
|
303
191
|
severity,
|
|
304
192
|
...props
|
|
305
|
-
}, /* @__PURE__ */
|
|
193
|
+
}, /* @__PURE__ */ React6.createElement(AlertTitle, null, status?.description), status?.updates && status.updates.length > 0 && /* @__PURE__ */ React6.createElement(React6.Fragment, null, /* @__PURE__ */ React6.createElement(Button2, {
|
|
306
194
|
color: severity,
|
|
307
195
|
variant: "outlined",
|
|
308
196
|
size: "small",
|
|
309
197
|
onClick: /* @__PURE__ */ __name(() => setOpen(true), "onClick")
|
|
310
|
-
}, "Updates"), /* @__PURE__ */
|
|
198
|
+
}, "Updates"), /* @__PURE__ */ React6.createElement(NetworkStatusDialog, {
|
|
311
199
|
open,
|
|
312
200
|
onClose: handleClose,
|
|
313
201
|
updates: status.updates
|
|
314
202
|
})));
|
|
315
203
|
}, "NetworkStatusAlert");
|
|
316
204
|
|
|
317
|
-
// src/
|
|
318
|
-
import
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
import {
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
revokePermissions(_permissions) {
|
|
412
|
-
throw new Error("Method not implemented.");
|
|
413
|
-
}
|
|
414
|
-
signTransaction(_transaction) {
|
|
415
|
-
throw new Error("Method not implemented.");
|
|
416
|
-
}
|
|
417
|
-
switchChain(_chain) {
|
|
418
|
-
throw new Error("Method not implemented.");
|
|
419
|
-
}
|
|
420
|
-
transactionByBlockHashAndIndex(_blockHash, _transactionIndex) {
|
|
421
|
-
throw new Error("Method not implemented.");
|
|
422
|
-
}
|
|
423
|
-
transactionByBlockNumberAndIndex(_blockNumber, _transactionIndex) {
|
|
424
|
-
throw new Error("Method not implemented.");
|
|
425
|
-
}
|
|
426
|
-
transactionByHash(_transactionHash) {
|
|
427
|
-
throw new Error("Method not implemented.");
|
|
428
|
-
}
|
|
429
|
-
async getFinalizedArchivist() {
|
|
430
|
-
const bridge = this.bridge;
|
|
431
|
-
const mod = assertEx(await bridge.resolve(FINALIZED_ARCHIVIST), () => `${FINALIZED_ARCHIVIST} not found`);
|
|
432
|
-
return assertEx(asArchivistInstance(mod), () => `${FINALIZED_ARCHIVIST} is not an archivist`);
|
|
433
|
-
}
|
|
434
|
-
};
|
|
205
|
+
// src/components/status/NetworkStatus.tsx
|
|
206
|
+
import React7 from "react";
|
|
207
|
+
|
|
208
|
+
// src/hooks/provider/useActiveNetworkCurrentBlock.ts
|
|
209
|
+
import { useCurrentBlockBase } from "@xyo-network/react-chain-provider";
|
|
210
|
+
var useActiveNetworkCurrentBlock = /* @__PURE__ */ __name((refresh = 1) => {
|
|
211
|
+
const { activeNetwork } = useChainNetwork();
|
|
212
|
+
const currentBlock = useCurrentBlockBase(refresh, activeNetwork?.id, activeNetwork?.url);
|
|
213
|
+
return currentBlock;
|
|
214
|
+
}, "useActiveNetworkCurrentBlock");
|
|
215
|
+
|
|
216
|
+
// src/hooks/provider/useActiveNetworkHostViewer.ts
|
|
217
|
+
import { useHostViewerBase } from "@xyo-network/react-chain-provider";
|
|
218
|
+
var useActiveNetworkHostViewer = /* @__PURE__ */ __name(() => {
|
|
219
|
+
const { activeNetwork } = useChainNetwork();
|
|
220
|
+
const hostViewer = useHostViewerBase(activeNetwork?.id);
|
|
221
|
+
return hostViewer;
|
|
222
|
+
}, "useActiveNetworkHostViewer");
|
|
223
|
+
|
|
224
|
+
// src/hooks/provider/useActiveNetworkNetwork.ts
|
|
225
|
+
import { useNetworkBase } from "@xyo-network/react-chain-provider";
|
|
226
|
+
var useActiveNetworkNetwork = /* @__PURE__ */ __name(() => {
|
|
227
|
+
const { activeNetwork } = useChainNetwork();
|
|
228
|
+
const network = useNetworkBase(activeNetwork?.id);
|
|
229
|
+
return network;
|
|
230
|
+
}, "useActiveNetworkNetwork");
|
|
231
|
+
|
|
232
|
+
// src/hooks/provider/useActiveNetworkRunner.ts
|
|
233
|
+
import { useRunnerBase } from "@xyo-network/react-chain-provider";
|
|
234
|
+
var useActiveNetworkRunner = /* @__PURE__ */ __name(() => {
|
|
235
|
+
const { activeNetwork } = useChainNetwork();
|
|
236
|
+
const runner = useRunnerBase(activeNetwork?.url);
|
|
237
|
+
return runner;
|
|
238
|
+
}, "useActiveNetworkRunner");
|
|
239
|
+
|
|
240
|
+
// src/hooks/provider/useActiveNetworkViewer.ts
|
|
241
|
+
import { useViewerBase } from "@xyo-network/react-chain-provider";
|
|
242
|
+
var useActiveNetworkViewer = /* @__PURE__ */ __name(() => {
|
|
243
|
+
const { activeNetwork } = useChainNetwork();
|
|
244
|
+
const viewer = useViewerBase(activeNetwork?.id, activeNetwork?.url);
|
|
245
|
+
return viewer;
|
|
246
|
+
}, "useActiveNetworkViewer");
|
|
247
|
+
|
|
248
|
+
// src/hooks/status/usePollNetworkStatus.ts
|
|
249
|
+
import { delay } from "@xylabs/delay";
|
|
250
|
+
import { isUndefined } from "@xylabs/typeof";
|
|
251
|
+
import { useEffect, useState as useState3 } from "react";
|
|
252
|
+
var STATUS_CHECK_INTERVAL = 1e4;
|
|
253
|
+
var usePollNetworkStatus = /* @__PURE__ */ __name(() => {
|
|
254
|
+
const network = useActiveNetworkNetwork();
|
|
255
|
+
const [networkStatus, setNetworkStatus] = useState3();
|
|
256
|
+
const [networkStatusError, setNetworkStatusError] = useState3();
|
|
257
|
+
useEffect(() => {
|
|
258
|
+
let checkNetwork = true;
|
|
259
|
+
void (async () => {
|
|
260
|
+
if (isUndefined(network)) return;
|
|
261
|
+
while (checkNetwork) {
|
|
262
|
+
try {
|
|
263
|
+
const response = await network.status();
|
|
264
|
+
setNetworkStatus(response);
|
|
265
|
+
setNetworkStatusError(void 0);
|
|
266
|
+
} catch (error) {
|
|
267
|
+
console.error("Error fetching network status:", error);
|
|
268
|
+
setNetworkStatus(void 0);
|
|
269
|
+
setNetworkStatusError(error);
|
|
270
|
+
}
|
|
271
|
+
await delay(STATUS_CHECK_INTERVAL);
|
|
272
|
+
}
|
|
273
|
+
})();
|
|
274
|
+
return () => {
|
|
275
|
+
checkNetwork = false;
|
|
276
|
+
};
|
|
277
|
+
}, [
|
|
278
|
+
network
|
|
279
|
+
]);
|
|
280
|
+
return [
|
|
281
|
+
networkStatus,
|
|
282
|
+
networkStatusError
|
|
283
|
+
];
|
|
284
|
+
}, "usePollNetworkStatus");
|
|
285
|
+
|
|
286
|
+
// src/components/status/NetworkStatus.tsx
|
|
287
|
+
var validNetworkStates = /* @__PURE__ */ new Set([
|
|
288
|
+
"online",
|
|
289
|
+
"unknown"
|
|
290
|
+
]);
|
|
291
|
+
var NetworkStatus = /* @__PURE__ */ __name(({ children, ...props }) => {
|
|
292
|
+
const [networkStatus] = usePollNetworkStatus();
|
|
293
|
+
const showStatus = networkStatus && !validNetworkStates.has(networkStatus.state);
|
|
294
|
+
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, showStatus && /* @__PURE__ */ React7.createElement(NetworkStatusAlert, {
|
|
295
|
+
status: networkStatus,
|
|
296
|
+
...props
|
|
297
|
+
}), children);
|
|
298
|
+
}, "NetworkStatus");
|
|
435
299
|
export {
|
|
436
300
|
ActiveNetworkAvatar,
|
|
437
301
|
ChainNetworkContext,
|
|
438
302
|
ChainNetworkProvider,
|
|
439
|
-
DefaultNetworks,
|
|
440
|
-
FINALIZED_ARCHIVIST,
|
|
441
|
-
LocalNetwork,
|
|
442
|
-
MainNetwork,
|
|
443
303
|
NetworkAvatar,
|
|
444
|
-
NetworkBootstrapSchema,
|
|
445
304
|
NetworkIcon,
|
|
446
305
|
NetworkMenuItem,
|
|
447
|
-
|
|
306
|
+
NetworkStatus,
|
|
448
307
|
NetworkStatusAlert,
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
useChainNetwork
|
|
308
|
+
useActiveNetworkCurrentBlock,
|
|
309
|
+
useActiveNetworkHostViewer,
|
|
310
|
+
useActiveNetworkNetwork,
|
|
311
|
+
useActiveNetworkRunner,
|
|
312
|
+
useActiveNetworkViewer,
|
|
313
|
+
useChainNetwork,
|
|
314
|
+
usePollNetworkStatus
|
|
455
315
|
};
|
|
456
316
|
//# sourceMappingURL=index.mjs.map
|