@xyo-network/xl1-rpc 1.9.0 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/dist/neutral/index.mjs +519 -501
  2. package/dist/neutral/index.mjs.map +1 -1
  3. package/dist/neutral/provider/client/MemoryXyoClient.d.ts +2 -2
  4. package/dist/neutral/provider/client/MemoryXyoClient.d.ts.map +1 -1
  5. package/dist/neutral/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts +1 -1
  6. package/dist/neutral/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +1 -1
  7. package/dist/neutral/provider/{provider → connection}/HttpRpcXyoConnection.d.ts +2 -0
  8. package/dist/neutral/provider/connection/HttpRpcXyoConnection.d.ts.map +1 -0
  9. package/dist/neutral/provider/{provider → connection}/XyoConnection.d.ts +4 -2
  10. package/dist/neutral/provider/connection/XyoConnection.d.ts.map +1 -0
  11. package/dist/neutral/provider/connection/index.d.ts.map +1 -0
  12. package/dist/neutral/provider/connection/spec/XyoConnection.d.ts.map +1 -0
  13. package/dist/neutral/provider/datalake/AbstractXyoDataLake.d.ts +10 -0
  14. package/dist/neutral/provider/datalake/AbstractXyoDataLake.d.ts.map +1 -0
  15. package/dist/neutral/provider/datalake/ArchivistXyoDataLake.d.ts +11 -0
  16. package/dist/neutral/provider/datalake/ArchivistXyoDataLake.d.ts.map +1 -0
  17. package/dist/neutral/provider/datalake/HttpXyoDataLake.d.ts +20 -0
  18. package/dist/neutral/provider/datalake/HttpXyoDataLake.d.ts.map +1 -0
  19. package/dist/neutral/provider/datalake/index.d.ts +4 -0
  20. package/dist/neutral/provider/datalake/index.d.ts.map +1 -0
  21. package/dist/neutral/provider/gateway/Abstract.d.ts +13 -0
  22. package/dist/neutral/provider/gateway/Abstract.d.ts.map +1 -0
  23. package/dist/neutral/provider/gateway/MemoryXyoGateway.d.ts.map +1 -0
  24. package/dist/neutral/provider/gateway/index.d.ts.map +1 -0
  25. package/dist/neutral/provider/gateway/spec/MemoryXyoGateway.spec.d.ts.map +1 -0
  26. package/dist/neutral/provider/index.d.ts +3 -2
  27. package/dist/neutral/provider/index.d.ts.map +1 -1
  28. package/dist/neutral/provider/network/MemoryXyoNetwork.d.ts +3 -3
  29. package/dist/neutral/provider/network/MemoryXyoNetwork.d.ts.map +1 -1
  30. package/dist/neutral/provider/network/lib/StatusNetworks.d.ts +3 -3
  31. package/dist/neutral/provider/network/lib/StatusNetworks.d.ts.map +1 -1
  32. package/dist/neutral/transport/post-message/LegacyPostMessageRpcTransport.d.ts +15 -0
  33. package/dist/neutral/transport/post-message/LegacyPostMessageRpcTransport.d.ts.map +1 -0
  34. package/dist/neutral/transport/post-message/index.d.ts +1 -1
  35. package/dist/neutral/transport/post-message/index.d.ts.map +1 -1
  36. package/dist/neutral/transport/post-message/resolveData.d.ts +13 -0
  37. package/dist/neutral/transport/post-message/resolveData.d.ts.map +1 -0
  38. package/dist/neutral/types/XyoGatewayRpc.d.ts +1 -1
  39. package/dist/neutral/types/XyoGatewayRpc.d.ts.map +1 -1
  40. package/dist/node/index-node.mjs +550 -530
  41. package/dist/node/index-node.mjs.map +1 -1
  42. package/dist/node/provider/client/MemoryXyoClient.d.ts +2 -2
  43. package/dist/node/provider/client/MemoryXyoClient.d.ts.map +1 -1
  44. package/dist/node/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts +1 -1
  45. package/dist/node/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +1 -1
  46. package/dist/node/provider/{provider → connection}/HttpRpcXyoConnection.d.ts +2 -0
  47. package/dist/node/provider/connection/HttpRpcXyoConnection.d.ts.map +1 -0
  48. package/dist/node/provider/{provider → connection}/XyoConnection.d.ts +4 -2
  49. package/dist/node/provider/connection/XyoConnection.d.ts.map +1 -0
  50. package/dist/node/provider/connection/index.d.ts.map +1 -0
  51. package/dist/node/provider/connection/spec/XyoConnection.d.ts.map +1 -0
  52. package/dist/node/provider/datalake/AbstractXyoDataLake.d.ts +10 -0
  53. package/dist/node/provider/datalake/AbstractXyoDataLake.d.ts.map +1 -0
  54. package/dist/node/provider/datalake/ArchivistXyoDataLake.d.ts +11 -0
  55. package/dist/node/provider/datalake/ArchivistXyoDataLake.d.ts.map +1 -0
  56. package/dist/node/provider/datalake/HttpXyoDataLake.d.ts +20 -0
  57. package/dist/node/provider/datalake/HttpXyoDataLake.d.ts.map +1 -0
  58. package/dist/node/provider/datalake/index.d.ts +4 -0
  59. package/dist/node/provider/datalake/index.d.ts.map +1 -0
  60. package/dist/node/provider/gateway/Abstract.d.ts +13 -0
  61. package/dist/node/provider/gateway/Abstract.d.ts.map +1 -0
  62. package/dist/node/provider/gateway/MemoryXyoGateway.d.ts.map +1 -0
  63. package/dist/node/provider/gateway/index.d.ts.map +1 -0
  64. package/dist/node/provider/gateway/spec/MemoryXyoGateway.spec.d.ts.map +1 -0
  65. package/dist/node/provider/index.d.ts +3 -2
  66. package/dist/node/provider/index.d.ts.map +1 -1
  67. package/dist/node/provider/network/MemoryXyoNetwork.d.ts +3 -3
  68. package/dist/node/provider/network/MemoryXyoNetwork.d.ts.map +1 -1
  69. package/dist/node/provider/network/lib/StatusNetworks.d.ts +3 -3
  70. package/dist/node/provider/network/lib/StatusNetworks.d.ts.map +1 -1
  71. package/dist/node/transport/post-message/LegacyPostMessageRpcTransport.d.ts +15 -0
  72. package/dist/node/transport/post-message/LegacyPostMessageRpcTransport.d.ts.map +1 -0
  73. package/dist/node/transport/post-message/index.d.ts +1 -1
  74. package/dist/node/transport/post-message/index.d.ts.map +1 -1
  75. package/dist/node/transport/post-message/resolveData.d.ts +13 -0
  76. package/dist/node/transport/post-message/resolveData.d.ts.map +1 -0
  77. package/dist/node/types/XyoGatewayRpc.d.ts +1 -1
  78. package/dist/node/types/XyoGatewayRpc.d.ts.map +1 -1
  79. package/package.json +37 -36
  80. package/src/provider/client/MemoryXyoClient.ts +3 -3
  81. package/src/provider/client/PermissionsStore/getPermissionsStoreFromTransport.ts +1 -1
  82. package/src/provider/client/spec/MemoryXyoClient.spec.ts +17 -10
  83. package/src/provider/{provider → connection}/HttpRpcXyoConnection.ts +10 -3
  84. package/src/provider/{provider → connection}/XyoConnection.ts +7 -2
  85. package/src/provider/{provider → connection}/spec/XyoConnection.ts +1 -0
  86. package/src/provider/datalake/AbstractXyoDataLake.ts +38 -0
  87. package/src/provider/datalake/ArchivistXyoDataLake.ts +26 -0
  88. package/src/provider/datalake/HttpXyoDataLake.ts +105 -0
  89. package/src/provider/datalake/index.ts +3 -0
  90. package/src/provider/gateway/Abstract.ts +47 -0
  91. package/src/provider/{host → gateway}/spec/MemoryXyoGateway.spec.ts +7 -3
  92. package/src/provider/index.ts +3 -2
  93. package/src/provider/network/MemoryXyoNetwork.ts +4 -3
  94. package/src/provider/network/lib/StatusNetworks.ts +9 -9
  95. package/src/provider/signer/spec/RpcEngineXyoSigner.spec.ts +2 -1
  96. package/src/transport/post-message/LegacyPostMessageRpcTransport.ts +117 -0
  97. package/src/transport/post-message/helpers.ts +1 -1
  98. package/src/transport/post-message/index.ts +1 -1
  99. package/src/transport/post-message/resolveData.ts +30 -0
  100. package/src/types/XyoGatewayRpc.ts +2 -2
  101. package/src/types/global.d.ts +1 -1
  102. package/dist/neutral/provider/host/Abstract.d.ts +0 -15
  103. package/dist/neutral/provider/host/Abstract.d.ts.map +0 -1
  104. package/dist/neutral/provider/host/MemoryXyoGateway.d.ts.map +0 -1
  105. package/dist/neutral/provider/host/index.d.ts.map +0 -1
  106. package/dist/neutral/provider/host/spec/MemoryXyoGateway.spec.d.ts.map +0 -1
  107. package/dist/neutral/provider/provider/HttpRpcXyoConnection.d.ts.map +0 -1
  108. package/dist/neutral/provider/provider/XyoConnection.d.ts.map +0 -1
  109. package/dist/neutral/provider/provider/index.d.ts.map +0 -1
  110. package/dist/neutral/provider/provider/spec/XyoConnection.d.ts.map +0 -1
  111. package/dist/neutral/transport/post-message/PostMessageRpcTransport.d.ts +0 -12
  112. package/dist/neutral/transport/post-message/PostMessageRpcTransport.d.ts.map +0 -1
  113. package/dist/node/provider/host/Abstract.d.ts +0 -15
  114. package/dist/node/provider/host/Abstract.d.ts.map +0 -1
  115. package/dist/node/provider/host/MemoryXyoGateway.d.ts.map +0 -1
  116. package/dist/node/provider/host/index.d.ts.map +0 -1
  117. package/dist/node/provider/host/spec/MemoryXyoGateway.spec.d.ts.map +0 -1
  118. package/dist/node/provider/provider/HttpRpcXyoConnection.d.ts.map +0 -1
  119. package/dist/node/provider/provider/XyoConnection.d.ts.map +0 -1
  120. package/dist/node/provider/provider/index.d.ts.map +0 -1
  121. package/dist/node/provider/provider/spec/XyoConnection.d.ts.map +0 -1
  122. package/dist/node/transport/post-message/PostMessageRpcTransport.d.ts +0 -12
  123. package/dist/node/transport/post-message/PostMessageRpcTransport.d.ts.map +0 -1
  124. package/src/provider/host/Abstract.ts +0 -42
  125. package/src/transport/post-message/PostMessageRpcTransport.ts +0 -73
  126. /package/dist/neutral/provider/{provider → connection}/index.d.ts +0 -0
  127. /package/dist/neutral/provider/{provider → connection}/spec/XyoConnection.d.ts +0 -0
  128. /package/dist/neutral/provider/{host → gateway}/MemoryXyoGateway.d.ts +0 -0
  129. /package/dist/neutral/provider/{host → gateway}/index.d.ts +0 -0
  130. /package/dist/neutral/provider/{host → gateway}/spec/MemoryXyoGateway.spec.d.ts +0 -0
  131. /package/dist/node/provider/{provider → connection}/index.d.ts +0 -0
  132. /package/dist/node/provider/{provider → connection}/spec/XyoConnection.d.ts +0 -0
  133. /package/dist/node/provider/{host → gateway}/MemoryXyoGateway.d.ts +0 -0
  134. /package/dist/node/provider/{host → gateway}/index.d.ts +0 -0
  135. /package/dist/node/provider/{host → gateway}/spec/MemoryXyoGateway.spec.d.ts +0 -0
  136. /package/src/provider/{provider → connection}/index.ts +0 -0
  137. /package/src/provider/{host → gateway}/MemoryXyoGateway.ts +0 -0
  138. /package/src/provider/{host → gateway}/index.ts +0 -0
@@ -1,101 +1,78 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/engine/requestSchemas.ts
5
2
  var requestSchemas = {};
6
3
 
7
4
  // src/engine/rpcMethodHandlersFromRunner.ts
8
- var rpcMethodHandlersFromRunner = /* @__PURE__ */ __name((runner) => {
9
- return {
10
- xyoRunner_broadcastTransaction: /* @__PURE__ */ __name((params) => runner.broadcastTransaction(...params ?? []), "xyoRunner_broadcastTransaction")
11
- };
12
- }, "rpcMethodHandlersFromRunner");
5
+ var rpcMethodHandlersFromRunner = (runner) => {
6
+ return { xyoRunner_broadcastTransaction: (params) => runner.broadcastTransaction(...params ?? []) };
7
+ };
13
8
 
14
9
  // src/engine/rpcMethodHandlersFromSigner.ts
15
- var rpcMethodHandlersFromSigner = /* @__PURE__ */ __name((signer) => {
10
+ var rpcMethodHandlersFromSigner = (signer) => {
16
11
  return {
17
- xyoSigner_address: /* @__PURE__ */ __name((params) => signer.address(...params ?? []), "xyoSigner_address"),
18
- xyoSigner_createSignedTransaction: /* @__PURE__ */ __name((params) => signer.createSignedTransaction(...params ?? []), "xyoSigner_createSignedTransaction"),
19
- xyoSigner_signTransaction: /* @__PURE__ */ __name((params) => signer.signTransaction(...params ?? []), "xyoSigner_signTransaction")
12
+ xyoSigner_address: (params) => signer.address(...params ?? []),
13
+ xyoSigner_createSignedTransaction: (params) => signer.createSignedTransaction(...params ?? []),
14
+ xyoSigner_signTransaction: (params) => signer.signTransaction(...params ?? [])
20
15
  };
21
- }, "rpcMethodHandlersFromSigner");
16
+ };
22
17
 
23
18
  // src/engine/rpcMethodHandlersFromViewer.ts
24
- var rpcMethodHandlersFromViewer = /* @__PURE__ */ __name((viewer) => {
19
+ var rpcMethodHandlersFromViewer = (viewer) => {
25
20
  return {
26
- xyoViewer_accountBalance: /* @__PURE__ */ __name((params) => viewer.accountBalance(...params ?? []), "xyoViewer_accountBalance"),
27
- xyoViewer_accountHistory: /* @__PURE__ */ __name((params) => viewer.accountHistory(...params ?? []), "xyoViewer_accountHistory"),
28
- xyoViewer_blockByHash: /* @__PURE__ */ __name((params) => viewer.blockByHash(...params ?? []), "xyoViewer_blockByHash"),
29
- xyoViewer_blockByNumber: /* @__PURE__ */ __name((params) => viewer.blockByNumber(...params ?? []), "xyoViewer_blockByNumber"),
30
- xyoViewer_blocksByHash: /* @__PURE__ */ __name((params) => viewer.blocksByHash(...params ?? []), "xyoViewer_blocksByHash"),
31
- xyoViewer_chainId: /* @__PURE__ */ __name((params) => viewer.chainId(...params ?? []), "xyoViewer_chainId"),
32
- xyoViewer_currentBlock: /* @__PURE__ */ __name((params) => viewer.currentBlock(...params ?? []), "xyoViewer_currentBlock"),
33
- xyoViewer_currentBlockHash: /* @__PURE__ */ __name((params) => viewer.currentBlockHash(...params ?? []), "xyoViewer_currentBlockHash"),
34
- xyoViewer_currentBlockNumber: /* @__PURE__ */ __name((params) => viewer.currentBlockNumber(...params ?? []), "xyoViewer_currentBlockNumber"),
35
- xyoViewer_transactionByBlockHashAndIndex: /* @__PURE__ */ __name((params) => viewer.transactionByBlockHashAndIndex(...params ?? []), "xyoViewer_transactionByBlockHashAndIndex"),
36
- xyoViewer_transactionByBlockNumberAndIndex: /* @__PURE__ */ __name((params) => viewer.transactionByBlockNumberAndIndex(...params ?? []), "xyoViewer_transactionByBlockNumberAndIndex"),
37
- xyoViewer_transactionByHash: /* @__PURE__ */ __name((params) => viewer.transactionByHash(...params ?? []), "xyoViewer_transactionByHash")
21
+ xyoViewer_accountBalance: (params) => viewer.accountBalance(...params ?? []),
22
+ xyoViewer_accountHistory: (params) => viewer.accountHistory(...params ?? []),
23
+ xyoViewer_blockByHash: (params) => viewer.blockByHash(...params ?? []),
24
+ xyoViewer_blockByNumber: (params) => viewer.blockByNumber(...params ?? []),
25
+ xyoViewer_blocksByHash: (params) => viewer.blocksByHash(...params ?? []),
26
+ xyoViewer_chainId: (params) => viewer.chainId(...params ?? []),
27
+ xyoViewer_currentBlock: (params) => viewer.currentBlock(...params ?? []),
28
+ xyoViewer_currentBlockHash: (params) => viewer.currentBlockHash(...params ?? []),
29
+ xyoViewer_currentBlockNumber: (params) => viewer.currentBlockNumber(...params ?? []),
30
+ xyoViewer_transactionByBlockHashAndIndex: (params) => viewer.transactionByBlockHashAndIndex(...params ?? []),
31
+ xyoViewer_transactionByBlockNumberAndIndex: (params) => viewer.transactionByBlockNumberAndIndex(...params ?? []),
32
+ xyoViewer_transactionByHash: (params) => viewer.transactionByHash(...params ?? [])
38
33
  };
39
- }, "rpcMethodHandlersFromViewer");
34
+ };
40
35
 
41
36
  // src/engine/rpcMethodHandlersFromProvider.ts
42
- var rpcMethodHandlersFromProvider = /* @__PURE__ */ __name((provider) => {
43
- const { runner, signer, viewer } = provider;
44
- let result = {
45
- xyoProvider_send: /* @__PURE__ */ __name((params) => provider.send(...params ?? []), "xyoProvider_send")
46
- };
47
- if (runner) result = {
48
- ...result,
49
- ...rpcMethodHandlersFromRunner(runner)
50
- };
51
- if (signer) result = {
52
- ...result,
53
- ...rpcMethodHandlersFromSigner(signer)
54
- };
55
- if (viewer) result = {
56
- ...result,
57
- ...rpcMethodHandlersFromViewer(viewer)
58
- };
37
+ var rpcMethodHandlersFromProvider = (provider) => {
38
+ const {
39
+ runner,
40
+ signer,
41
+ viewer
42
+ } = provider;
43
+ let result = { xyoProvider_send: (params) => provider.send(...params ?? []) };
44
+ if (runner) result = { ...result, ...rpcMethodHandlersFromRunner(runner) };
45
+ if (signer) result = { ...result, ...rpcMethodHandlersFromSigner(signer) };
46
+ if (viewer) result = { ...result, ...rpcMethodHandlersFromViewer(viewer) };
59
47
  return result;
60
- }, "rpcMethodHandlersFromProvider");
48
+ };
61
49
 
62
50
  // src/provider/client/MemoryXyoClient.ts
63
51
  var MemoryXyoClient = class {
64
- static {
65
- __name(this, "MemoryXyoClient");
66
- }
67
52
  gateways;
68
- permissionsProvider;
69
- constructor(gateways, permissionsProvider) {
53
+ permissions;
54
+ constructor(gateways, permissions) {
70
55
  this.gateways = gateways;
71
- this.permissionsProvider = permissionsProvider;
56
+ this.permissions = permissions;
72
57
  }
73
58
  };
74
59
 
75
60
  // src/provider/client/PermissionsStore/getPermissionsStoreFromTransport.ts
76
- var getPermissionsStoreFromTransport = /* @__PURE__ */ __name((transport) => {
61
+ var getPermissionsStoreFromTransport = (_transport) => {
77
62
  throw new Error("Not implemented");
78
- }, "getPermissionsStoreFromTransport");
63
+ };
79
64
 
80
65
  // src/provider/client/PermissionsStore/MemoryPermissionsStore.ts
81
66
  var MemoryPermissionsStore = class {
82
- static {
83
- __name(this, "MemoryPermissionsStore");
84
- }
85
67
  _store = /* @__PURE__ */ new Map();
86
68
  getPermissions() {
87
- return [
88
- ...this._store.values()
89
- ];
69
+ return [...this._store.values()];
90
70
  }
91
71
  requestPermissions(permissions) {
92
72
  const now = Date.now();
93
73
  for (const perm of permissions) {
94
74
  const key = this.getKey(perm);
95
- this._store.set(key, {
96
- ...perm,
97
- date: now
98
- });
75
+ this._store.set(key, { ...perm, date: now });
99
76
  }
100
77
  return true;
101
78
  }
@@ -111,132 +88,9 @@ var MemoryPermissionsStore = class {
111
88
  }
112
89
  };
113
90
 
114
- // src/provider/host/Abstract.ts
115
- import { assertEx } from "@xylabs/assert";
116
- var AbstractXyoGateway = class {
117
- static {
118
- __name(this, "AbstractXyoGateway");
119
- }
120
- activeConnection() {
121
- throw new Error("Deprecated method not implemented.");
122
- }
123
- addConnection(_config) {
124
- throw new Error("Deprecated method not implemented.");
125
- }
126
- connections() {
127
- throw new Error("Deprecated method not implemented.");
128
- }
129
- getPermissions() {
130
- throw new Error("Deprecated method not implemented.");
131
- }
132
- requestPermissions(_permissions) {
133
- throw new Error("Deprecated method not implemented.");
134
- }
135
- revokePermissions(_permissions) {
136
- throw new Error("Deprecated method not implemented.");
137
- }
138
- async submitTransaction(elevatedPayloads, additionalPayloads) {
139
- const connection = await this.connection();
140
- assertEx(connection.submitTransaction, () => "Active connection does not support transaction submission");
141
- const tx = await connection.submitTransaction?.(elevatedPayloads, additionalPayloads);
142
- return assertEx(tx, () => "Transaction submission failed");
143
- }
144
- };
145
-
146
- // src/provider/host/MemoryXyoGateway.ts
147
- var MemoryXyoGateway = class extends AbstractXyoGateway {
148
- static {
149
- __name(this, "MemoryXyoGateway");
150
- }
151
- _connection;
152
- _signer;
153
- constructor(signer, connection) {
154
- super();
155
- this._signer = signer;
156
- this._connection = connection;
157
- }
158
- connection() {
159
- return this._connection;
160
- }
161
- signer() {
162
- return this._signer;
163
- }
164
- };
165
-
166
- // src/provider/network/MemoryXyoNetwork.ts
167
- import { isUndefined } from "@xylabs/typeof";
168
- import { isNetworkStatus } from "@xyo-network/xl1-protocol";
169
- import axios from "axios";
170
-
171
- // src/provider/network/lib/FailedNetworkStatusPayloads.ts
172
- import { NetworkStatusSchema } from "@xyo-network/xl1-protocol";
173
- var unknownStatus = {
174
- description: "Unknown Network Status",
175
- schema: NetworkStatusSchema,
176
- state: "unknown"
177
- };
178
- var errorStatus = {
179
- description: "Error Fetching Network Status",
180
- schema: NetworkStatusSchema,
181
- state: "unknown"
182
- };
183
-
184
- // src/provider/network/lib/StatusNetworks.ts
185
- var MainNetworkStats = {
186
- id: "mainnet",
187
- statusUrl: "https://xyo.network/chain-network-status-mainnet.json"
188
- };
189
- var SequenceNetworkStats = {
190
- id: "sequence",
191
- statusUrl: "https://beta.xyo.network/chain-network-status-sequence.json"
192
- };
193
- var LocalNetworkStats = {
194
- id: "local",
195
- statusUrl: "http://localhost:3002/chain-network-status-local.json"
196
- };
197
- var StatusNetworks = {
198
- mainnet: MainNetworkStats,
199
- sequence: SequenceNetworkStats,
200
- local: LocalNetworkStats
201
- };
202
-
203
- // src/provider/network/MemoryXyoNetwork.ts
204
- var MemoryXyoNetwork = class {
205
- static {
206
- __name(this, "MemoryXyoNetwork");
207
- }
208
- _networkId;
209
- constructor(networkId) {
210
- this._networkId = networkId;
211
- }
212
- async status() {
213
- const statusNetwork = StatusNetworks[this._networkId];
214
- if (isUndefined(statusNetwork)) {
215
- throw new Error(`Unknown status network ID: ${this._networkId}`);
216
- }
217
- return await this.makeRequest(statusNetwork.statusUrl);
218
- }
219
- async makeRequest(url) {
220
- try {
221
- const response = await axios.get(url);
222
- if (isNetworkStatus(response.data)) {
223
- return response.data;
224
- } else {
225
- if (response.status === 200) {
226
- console.error("Unknown network status response:", response.data);
227
- return unknownStatus;
228
- }
229
- return errorStatus;
230
- }
231
- } catch (error) {
232
- console.error("Error fetching network status:", error);
233
- return errorStatus;
234
- }
235
- }
236
- };
237
-
238
- // src/provider/provider/HttpRpcXyoConnection.ts
239
- import { isDefined as isDefined2 } from "@xylabs/typeof";
91
+ // src/provider/connection/HttpRpcXyoConnection.ts
92
+ import { isDefined as isDefined3, isString } from "@xylabs/typeof";
93
+ import { isDataLakeProvider as isDataLakeProvider2 } from "@xyo-network/xl1-protocol";
240
94
 
241
95
  // src/transport/HttpRpcTransport.ts
242
96
  import { AxiosJson } from "@xylabs/axios";
@@ -246,22 +100,10 @@ import { v4 } from "uuid";
246
100
 
247
101
  // src/types/ErrorCodes.ts
248
102
  var JsonRpcErrorCodes = {
249
- InternalError: {
250
- code: -32603,
251
- message: "Internal JSON-RPC error (unexpected exception)."
252
- },
253
- InvalidParams: {
254
- code: -32602,
255
- message: "Invalid method parameter(s)."
256
- },
257
- InvalidRequest: {
258
- code: -32600,
259
- message: "The JSON sent is not a valid Request object."
260
- },
261
- MethodNotFound: {
262
- code: -32601,
263
- message: "The method does not exist or is not available."
264
- }
103
+ InternalError: { code: -32603, message: "Internal JSON-RPC error (unexpected exception)." },
104
+ InvalidParams: { code: -32602, message: "Invalid method parameter(s)." },
105
+ InvalidRequest: { code: -32600, message: "The JSON sent is not a valid Request object." },
106
+ MethodNotFound: { code: -32601, message: "The method does not exist or is not available." }
265
107
  };
266
108
 
267
109
  // src/types/JsonRpc.ts
@@ -279,7 +121,11 @@ var AddressToStringSchema = z.string().toLowerCase().regex(CompiledAddressRegEx)
279
121
  var AddressFromStringSchema = z.string().toLowerCase().regex(CompiledAddressRegEx).transform((v) => toAddress(v));
280
122
 
281
123
  // src/types/schema/common/BigIntSchema.ts
282
- import { asHex, hexToBigInt, toHex } from "@xylabs/hex";
124
+ import {
125
+ asHex,
126
+ hexToBigInt,
127
+ toHex
128
+ } from "@xylabs/hex";
283
129
  import { HexRegEx } from "@xyo-network/payload-wrapper";
284
130
  import { z as z2 } from "zod";
285
131
  var CompiledHexRegEx = new RegExp(HexRegEx);
@@ -324,14 +170,8 @@ var LocalSequenceFromStringSchema = z5.string().regex(LocalSequenceRegex).transf
324
170
  var QualifiedSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.qualifiedSequenceBytes, SequenceConstants.qualifiedSequenceBytes));
325
171
  var QualifiedSequenceToStringSchema = z5.string().regex(QualifiedSequenceRegex);
326
172
  var QualifiedSequenceFromStringSchema = z5.string().regex(QualifiedSequenceRegex).transform((v) => toHex3(v));
327
- var SequenceToStringSchema = z5.union([
328
- LocalSequenceToStringSchema,
329
- QualifiedSequenceToStringSchema
330
- ]);
331
- var SequenceFromStringSchema = z5.union([
332
- LocalSequenceFromStringSchema,
333
- QualifiedSequenceFromStringSchema
334
- ]);
173
+ var SequenceToStringSchema = z5.union([LocalSequenceToStringSchema, QualifiedSequenceToStringSchema]);
174
+ var SequenceFromStringSchema = z5.union([LocalSequenceFromStringSchema, QualifiedSequenceFromStringSchema]);
335
175
 
336
176
  // src/types/schema/common/StorageMetaSchema.ts
337
177
  var StorageMetaSchema = z6.object({
@@ -341,9 +181,7 @@ var StorageMetaSchema = z6.object({
341
181
  });
342
182
 
343
183
  // src/types/schema/common/PayloadSchema.ts
344
- var PayloadSchema = z7.object({
345
- schema: z7.string()
346
- }).passthrough();
184
+ var PayloadSchema = z7.object({ schema: z7.string() }).passthrough();
347
185
  var PayloadWithStorageMetaSchema = PayloadSchema.extend(StorageMetaSchema.shape).passthrough();
348
186
 
349
187
  // src/types/schema/common/BoundWitnessSchema.ts
@@ -358,18 +196,14 @@ var BoundWitnessMetaSchema = z8.object({
358
196
  $destination: AddressToStringSchema.optional(),
359
197
  $sourceQuery: HashToStringSchema.optional()
360
198
  });
361
- var UnsignedBoundWitnessSchema = PayloadSchema.extend({
362
- schema: z8.literal(BoundWitnessSchema)
363
- }).merge(BoundWitnessRequiredFieldsSchema).merge(BoundWitnessMetaSchema).passthrough();
364
- var UnsignedBoundWitnessWithStorageMetaSchema = PayloadWithStorageMetaSchema.extend({
365
- schema: z8.literal(BoundWitnessSchema)
366
- }).merge(BoundWitnessRequiredFieldsSchema).merge(BoundWitnessMetaSchema).passthrough();
367
- var SignedBoundWitnessSchema = UnsignedBoundWitnessSchema.extend({
368
- $signatures: z8.array(HexToStringSchema)
369
- }).passthrough();
370
- var SignedBoundWitnessWithStorageMetaSchema = UnsignedBoundWitnessWithStorageMetaSchema.extend({
371
- $signatures: z8.array(HexToStringSchema)
372
- }).passthrough();
199
+ var UnsignedBoundWitnessSchema = PayloadSchema.extend({ schema: z8.literal(BoundWitnessSchema) }).merge(BoundWitnessRequiredFieldsSchema).merge(BoundWitnessMetaSchema).passthrough();
200
+ var UnsignedBoundWitnessWithStorageMetaSchema = PayloadWithStorageMetaSchema.extend({ schema: z8.literal(BoundWitnessSchema) }).merge(BoundWitnessRequiredFieldsSchema).merge(BoundWitnessMetaSchema).passthrough();
201
+ var SignedBoundWitnessSchema = UnsignedBoundWitnessSchema.extend(
202
+ { $signatures: z8.array(HexToStringSchema) }
203
+ ).passthrough();
204
+ var SignedBoundWitnessWithStorageMetaSchema = UnsignedBoundWitnessWithStorageMetaSchema.extend(
205
+ { $signatures: z8.array(HexToStringSchema) }
206
+ ).passthrough();
373
207
 
374
208
  // src/types/schema/common/BlockBoundWitnessSchema.ts
375
209
  var BlockNumberSchema = z9.number().int().nonnegative();
@@ -409,16 +243,9 @@ import { z as z12 } from "zod";
409
243
 
410
244
  // src/types/schema/common/TransactionBoundWitnessSchema.ts
411
245
  import z11 from "zod";
412
- var BlockStartSchema = z11.object({
413
- nbf: BlockNumberSchema
414
- });
415
- var BlockEndSchema = z11.object({
416
- exp: BlockNumberSchema
417
- });
418
- var BlockDurationSchema = z11.object({
419
- nbf: BlockNumberSchema,
420
- exp: BlockNumberSchema
421
- });
246
+ var BlockStartSchema = z11.object({ nbf: BlockNumberSchema });
247
+ var BlockEndSchema = z11.object({ exp: BlockNumberSchema });
248
+ var BlockDurationSchema = z11.object({ nbf: BlockNumberSchema, exp: BlockNumberSchema });
422
249
  var TransactionFeesSchema = z11.object({
423
250
  fees: z11.object({
424
251
  base: HexToStringSchema,
@@ -427,9 +254,7 @@ var TransactionFeesSchema = z11.object({
427
254
  priority: HexToStringSchema
428
255
  })
429
256
  });
430
- var TransactionBoundWitnessFields = z11.object({
431
- chain: AddressToStringSchema
432
- });
257
+ var TransactionBoundWitnessFields = z11.object({ chain: AddressToStringSchema });
433
258
  var TransactionBoundWitnessSchema = UnsignedBoundWitnessSchema.merge(BlockDurationSchema).merge(TransactionFeesSchema).merge(TransactionBoundWitnessFields).passthrough();
434
259
  var SignedTransactionBoundWitnessSchema = SignedBoundWitnessSchema.merge(BlockDurationSchema).merge(TransactionFeesSchema).merge(TransactionBoundWitnessFields).passthrough();
435
260
 
@@ -493,12 +318,8 @@ import { z as z15 } from "zod";
493
318
  var XyoRunnerRpcSchemas = {
494
319
  xyoRunner_broadcastTransaction: {
495
320
  params: {
496
- to: z15.tuple([
497
- SignedHydratedTransactionSchema
498
- ]),
499
- from: z15.tuple([
500
- SignedHydratedTransactionSchema
501
- ])
321
+ to: z15.tuple([SignedHydratedTransactionSchema]),
322
+ from: z15.tuple([SignedHydratedTransactionSchema])
502
323
  },
503
324
  result: {
504
325
  to: HashToStringSchema,
@@ -548,12 +369,8 @@ var XyoSignerRpcSchemas = {
548
369
  },
549
370
  xyoSigner_signTransaction: {
550
371
  params: {
551
- to: z16.tuple([
552
- HydratedTransactionSchema
553
- ]),
554
- from: z16.tuple([
555
- HydratedTransactionSchema
556
- ])
372
+ to: z16.tuple([HydratedTransactionSchema]),
373
+ from: z16.tuple([HydratedTransactionSchema])
557
374
  },
558
375
  result: {
559
376
  to: SignedHydratedTransactionSchema,
@@ -568,32 +385,14 @@ var XyoViewerRpcSchemas = {
568
385
  xyoViewer_accountBalance: {
569
386
  params: {
570
387
  to: z17.union([
571
- z17.tuple([
572
- AddressToStringSchema
573
- ]),
574
- z17.tuple([
575
- AddressToStringSchema,
576
- z17.number()
577
- ]),
578
- z17.tuple([
579
- AddressToStringSchema,
580
- z17.number(),
581
- z17.boolean()
582
- ])
388
+ z17.tuple([AddressToStringSchema]),
389
+ z17.tuple([AddressToStringSchema, z17.number()]),
390
+ z17.tuple([AddressToStringSchema, z17.number(), z17.boolean()])
583
391
  ]),
584
392
  from: z17.union([
585
- z17.tuple([
586
- AddressToStringSchema
587
- ]),
588
- z17.tuple([
589
- AddressToStringSchema,
590
- z17.number()
591
- ]),
592
- z17.tuple([
593
- AddressToStringSchema,
594
- z17.number(),
595
- z17.boolean()
596
- ])
393
+ z17.tuple([AddressToStringSchema]),
394
+ z17.tuple([AddressToStringSchema, z17.number()]),
395
+ z17.tuple([AddressToStringSchema, z17.number(), z17.boolean()])
597
396
  ])
598
397
  },
599
398
  result: {
@@ -604,32 +403,14 @@ var XyoViewerRpcSchemas = {
604
403
  xyoViewer_accountHistory: {
605
404
  params: {
606
405
  to: z17.union([
607
- z17.tuple([
608
- AddressToStringSchema
609
- ]),
610
- z17.tuple([
611
- AddressToStringSchema,
612
- z17.number()
613
- ]),
614
- z17.tuple([
615
- AddressToStringSchema,
616
- z17.number(),
617
- z17.boolean()
618
- ])
406
+ z17.tuple([AddressToStringSchema]),
407
+ z17.tuple([AddressToStringSchema, z17.number()]),
408
+ z17.tuple([AddressToStringSchema, z17.number(), z17.boolean()])
619
409
  ]),
620
410
  from: z17.union([
621
- z17.tuple([
622
- AddressToStringSchema
623
- ]),
624
- z17.tuple([
625
- AddressToStringSchema,
626
- z17.number()
627
- ]),
628
- z17.tuple([
629
- AddressToStringSchema,
630
- z17.number(),
631
- z17.boolean()
632
- ])
411
+ z17.tuple([AddressToStringSchema]),
412
+ z17.tuple([AddressToStringSchema, z17.number()]),
413
+ z17.tuple([AddressToStringSchema, z17.number(), z17.boolean()])
633
414
  ])
634
415
  },
635
416
  result: {
@@ -639,12 +420,8 @@ var XyoViewerRpcSchemas = {
639
420
  },
640
421
  xyoViewer_blockByHash: {
641
422
  params: {
642
- to: z17.tuple([
643
- HashToStringSchema
644
- ]),
645
- from: z17.tuple([
646
- HashFromStringSchema
647
- ])
423
+ to: z17.tuple([HashToStringSchema]),
424
+ from: z17.tuple([HashFromStringSchema])
648
425
  },
649
426
  result: {
650
427
  to: SignedHydratedBlockSchema,
@@ -653,12 +430,8 @@ var XyoViewerRpcSchemas = {
653
430
  },
654
431
  xyoViewer_blockByNumber: {
655
432
  params: {
656
- to: z17.tuple([
657
- z17.number()
658
- ]),
659
- from: z17.tuple([
660
- z17.number()
661
- ])
433
+ to: z17.tuple([z17.number()]),
434
+ from: z17.tuple([z17.number()])
662
435
  },
663
436
  result: {
664
437
  to: SignedHydratedBlockSchema,
@@ -667,14 +440,8 @@ var XyoViewerRpcSchemas = {
667
440
  },
668
441
  xyoViewer_blocksByHash: {
669
442
  params: {
670
- to: z17.tuple([
671
- HashToStringSchema,
672
- z17.number().optional()
673
- ]),
674
- from: z17.tuple([
675
- HashFromStringSchema,
676
- z17.number().optional()
677
- ])
443
+ to: z17.tuple([HashToStringSchema, z17.number().optional()]),
444
+ from: z17.tuple([HashFromStringSchema, z17.number().optional()])
678
445
  },
679
446
  result: {
680
447
  to: z17.array(SignedHydratedBlockSchema),
@@ -723,14 +490,8 @@ var XyoViewerRpcSchemas = {
723
490
  },
724
491
  xyoViewer_transactionByBlockHashAndIndex: {
725
492
  params: {
726
- to: z17.tuple([
727
- HashToStringSchema,
728
- z17.number()
729
- ]),
730
- from: z17.tuple([
731
- HashFromStringSchema,
732
- z17.number()
733
- ])
493
+ to: z17.tuple([HashToStringSchema, z17.number()]),
494
+ from: z17.tuple([HashFromStringSchema, z17.number()])
734
495
  },
735
496
  result: {
736
497
  to: SignedHydratedTransactionSchema.nullable(),
@@ -739,14 +500,8 @@ var XyoViewerRpcSchemas = {
739
500
  },
740
501
  xyoViewer_transactionByBlockNumberAndIndex: {
741
502
  params: {
742
- to: z17.tuple([
743
- z17.number(),
744
- z17.number()
745
- ]),
746
- from: z17.tuple([
747
- z17.number(),
748
- z17.number()
749
- ])
503
+ to: z17.tuple([z17.number(), z17.number()]),
504
+ from: z17.tuple([z17.number(), z17.number()])
750
505
  },
751
506
  result: {
752
507
  to: SignedHydratedTransactionSchema.nullable(),
@@ -755,12 +510,8 @@ var XyoViewerRpcSchemas = {
755
510
  },
756
511
  xyoViewer_transactionByHash: {
757
512
  params: {
758
- to: z17.tuple([
759
- HashToStringSchema
760
- ]),
761
- from: z17.tuple([
762
- HashFromStringSchema
763
- ])
513
+ to: z17.tuple([HashToStringSchema]),
514
+ from: z17.tuple([HashFromStringSchema])
764
515
  },
765
516
  result: {
766
517
  to: SignedHydratedTransactionSchema.nullable(),
@@ -779,55 +530,40 @@ var AllRpcSchemas = {
779
530
 
780
531
  // src/types/schema/createRequestSchema.ts
781
532
  import { z as z18 } from "zod";
782
- var createRequestSchema = /* @__PURE__ */ __name((methodName, paramsSchema = z18.undefined()) => z18.object({
783
- id: z18.union([
784
- z18.string(),
785
- z18.number()
786
- ]),
533
+ var createRequestSchema = (methodName, paramsSchema = z18.undefined()) => z18.object({
534
+ id: z18.union([z18.string(), z18.number()]),
787
535
  jsonrpc: z18.literal(jsonrpc),
788
536
  method: z18.literal(methodName),
789
537
  params: paramsSchema
790
- }), "createRequestSchema");
538
+ });
791
539
 
792
540
  // src/types/schema/createResponseSchema.ts
793
541
  import { z as z19 } from "zod";
794
- var createResponseSchema = /* @__PURE__ */ __name((resultSchema = z19.undefined()) => z19.object({
795
- id: z19.union([
796
- z19.string(),
797
- z19.number()
798
- ]),
542
+ var createResponseSchema = (resultSchema = z19.undefined()) => z19.object({
543
+ id: z19.union([z19.string(), z19.number()]),
799
544
  jsonrpc: z19.literal(jsonrpc),
800
545
  result: resultSchema
801
- }), "createResponseSchema");
546
+ });
802
547
 
803
548
  // src/types/schema/XyoGatewayRpcSchemas.ts
804
549
  import { z as z20 } from "zod";
805
550
  var ChainConnectionSchema = z20.object({
806
- chainId: z20.union([
807
- z20.string(),
808
- z20.custom()
809
- ]).optional(),
551
+ chainId: z20.union([z20.string(), z20.custom()]).optional(),
810
552
  name: z20.string(),
811
553
  url: z20.string()
812
554
  });
813
- var CaveatTypesSchema = z20.enum([
814
- "chain",
815
- "expiration",
816
- "filteredResponse",
817
- "rateLimit"
818
- ]);
555
+ var CaveatTypesSchema = z20.enum(["chain", "expiration", "filteredResponse", "rateLimit"]);
819
556
  var CaveatsSchema = z20.object({
820
557
  type: CaveatTypesSchema,
821
558
  value: z20.unknown()
559
+ // JsonValue is usually unknown, adjust if you have a stricter type
822
560
  });
823
561
  var PermissionSchema = z20.object({
824
562
  capability: z20.string(),
825
563
  caveats: CaveatsSchema.array().optional(),
826
564
  invoker: z20.string()
827
565
  });
828
- var InvokerPermissionSchema = PermissionSchema.extend({
829
- date: z20.number().optional()
830
- });
566
+ var InvokerPermissionSchema = PermissionSchema.extend({ date: z20.number().optional() });
831
567
  var XyoGatewayRpcSchemas = {
832
568
  /*
833
569
  xyoGateway_addConnection: {
@@ -893,8 +629,12 @@ var XyoGatewayRpcSchemas = {
893
629
  */
894
630
  xyoGateway_submitTransaction: {
895
631
  params: {
896
- from: z20.array(HydratedTransactionSchema),
897
- to: z20.array(HydratedTransactionSchema)
632
+ from: z20.array(
633
+ HydratedTransactionSchema
634
+ ),
635
+ to: z20.array(
636
+ HydratedTransactionSchema
637
+ )
898
638
  },
899
639
  result: {
900
640
  from: BlockBoundWitnessSchema,
@@ -905,9 +645,6 @@ var XyoGatewayRpcSchemas = {
905
645
 
906
646
  // src/transport/HttpRpcTransport.ts
907
647
  var HttpRpcTransport = class {
908
- static {
909
- __name(this, "HttpRpcTransport");
910
- }
911
648
  _rpcUrl;
912
649
  _schemas;
913
650
  constructor(rpcUrl, schemas) {
@@ -948,9 +685,6 @@ var HttpRpcTransport = class {
948
685
  import { isObject } from "@xylabs/typeof";
949
686
  import { v4 as v42 } from "uuid";
950
687
  var MemoryRpcTransport = class {
951
- static {
952
- __name(this, "MemoryRpcTransport");
953
- }
954
688
  _rpcEngine;
955
689
  _schemas;
956
690
  requestSchemas = {};
@@ -983,35 +717,45 @@ var MemoryRpcTransport = class {
983
717
  }
984
718
  };
985
719
 
986
- // src/transport/post-message/PostMessageRpcTransport.ts
720
+ // src/transport/post-message/LegacyPostMessageRpcTransport.ts
721
+ import {
722
+ isJsonRpcError,
723
+ isJsonRpcSuccess
724
+ } from "@metamask/utils";
987
725
  import { isDefined } from "@xylabs/typeof";
988
726
  import { v4 as v43 } from "uuid";
989
727
 
990
728
  // src/transport/post-message/helpers.ts
991
- var isRpcError = /* @__PURE__ */ __name((data) => {
729
+ var isRpcError = (data) => {
992
730
  return data && typeof data === "object" && "error" in data && data.error;
993
- }, "isRpcError");
731
+ };
994
732
 
995
- // src/transport/post-message/SessionEnvelope.ts
996
- var buildSessionMessageRequest = /* @__PURE__ */ __name((data, destination) => {
997
- const request = {
998
- data,
999
- destination,
1000
- sessionId: globalThis.xyo.walletExtensionId() ?? ""
1001
- };
1002
- return request;
1003
- }, "buildSessionMessageRequest");
733
+ // src/transport/post-message/resolveData.ts
734
+ var hasMatchingId = (eventData, targetId) => {
735
+ return eventData?.id === targetId ? { legacyEventData: eventData } : false;
736
+ };
737
+ var hasMatchingNestedId = (eventData, targetId) => {
738
+ return eventData?.data?.id === targetId ? { eventData: eventData.data } : false;
739
+ };
740
+ var resolvedEvent = (event, targetId) => {
741
+ return hasMatchingId(event.data, targetId) || hasMatchingNestedId(event.data, targetId);
742
+ };
1004
743
 
1005
- // src/transport/post-message/PostMessageRpcTransport.ts
1006
- var PostMessageRpcTransport = class {
1007
- static {
1008
- __name(this, "PostMessageRpcTransport");
1009
- }
744
+ // src/transport/post-message/LegacyPostMessageRpcTransport.ts
745
+ var isValidBaseRpcEvent = (data) => {
746
+ return !!(data && typeof data === "object" && "jsonrpc" in data && data.jsonrpc === "2.0" && "method" in data && typeof data.method === "string" && "id" in data && typeof data.id === "string");
747
+ };
748
+ var isRpcResponse = (data, targetId) => {
749
+ return isValidBaseRpcEvent(data) && (isDefined(targetId) ? data.id === targetId : true) && "result" in data && Array.isArray(data.result);
750
+ };
751
+ var LegacyPostMessageRpcTransport = class {
1010
752
  destination;
1011
753
  schemas;
1012
- constructor(defaultDestination, schemas = XyoGatewayRpcSchemas) {
754
+ sessionId;
755
+ constructor(defaultDestination, schemas = XyoGatewayRpcSchemas, sessionId) {
1013
756
  this.schemas = schemas;
1014
757
  this.destination = defaultDestination;
758
+ this.sessionId = sessionId;
1015
759
  }
1016
760
  async sendRequest(method, params) {
1017
761
  const id = v43();
@@ -1026,72 +770,234 @@ var PostMessageRpcTransport = class {
1026
770
  body.params = isDefined(params) && isDefined(schemas[method]) ? schemas[method].params.to.parse(params) : params;
1027
771
  return await new Promise((resolve, reject) => {
1028
772
  const id2 = body.id;
1029
- const handler = /* @__PURE__ */ __name((event) => {
773
+ const handler = (event) => {
1030
774
  if (event.origin !== globalThis.window.origin) return;
1031
- if (event.data.id !== id2) return;
775
+ if (!isRpcResponse(event.data, id2)) return;
776
+ const data = resolvedEvent(event, id2);
777
+ if (data === false) return;
1032
778
  globalThis.removeEventListener("message", handler);
1033
- if (event.data.result.some(isRpcError)) {
1034
- reject(event.data.result[0]);
1035
- } else {
1036
- resolve(event.data.result[0]);
779
+ if (data.legacyEventData) {
780
+ if (data.legacyEventData.result.some(isRpcError)) {
781
+ reject(data.legacyEventData.result[0]);
782
+ } else {
783
+ resolve(data.legacyEventData.result[0]);
784
+ }
785
+ return;
786
+ }
787
+ if (data.eventData) {
788
+ if (isJsonRpcError(data.eventData)) {
789
+ reject(data.eventData);
790
+ return;
791
+ }
792
+ if (isJsonRpcSuccess(data.eventData)) {
793
+ resolve(data.eventData);
794
+ return;
795
+ }
796
+ reject(new Error("Unexpected response format"));
1037
797
  }
1038
- }, "handler");
798
+ };
1039
799
  globalThis.addEventListener("message", handler);
1040
- globalThis.postMessage(buildSessionMessageRequest(body, this.destination), globalThis.location.origin);
800
+ globalThis.postMessage(
801
+ {
802
+ data: body,
803
+ destination: this.destination,
804
+ sessionId: this.sessionId
805
+ },
806
+ globalThis.location.origin
807
+ );
808
+ });
809
+ }
810
+ };
811
+ var PostMessageRpcTransport = LegacyPostMessageRpcTransport;
812
+
813
+ // src/transport/post-message/SessionEnvelope.ts
814
+ var buildSessionMessageRequest = (data, destination) => {
815
+ const request = {
816
+ data,
817
+ destination,
818
+ sessionId: globalThis.xyo.walletExtensionId() ?? ""
819
+ };
820
+ return request;
821
+ };
822
+
823
+ // src/provider/datalake/AbstractXyoDataLake.ts
824
+ import { ObjectHasher } from "@xyo-network/hash";
825
+ import { PayloadBuilder } from "@xyo-network/payload-builder";
826
+ import { isAnyPayload } from "@xyo-network/payload-model";
827
+ import {
828
+ isHashPayload
829
+ } from "@xyo-network/xl1-protocol";
830
+ var AbstractXyoDataLake = class {
831
+ async fetch(hashes, maxDepth = 10) {
832
+ const results = await this.get(hashes);
833
+ if (maxDepth > 0) {
834
+ const hashPayloads = results.filter(isHashPayload);
835
+ const otherPayloads = results.filter((item) => !isHashPayload(item));
836
+ const found = await this.fetch(hashPayloads.map((item) => item.hash), maxDepth - 1);
837
+ const foundHashes = await Promise.all(found.map(async (item) => isAnyPayload(item) ? await PayloadBuilder.hash(item) : ObjectHasher.hashBytes(item)));
838
+ const notFound = hashPayloads.filter((item) => !foundHashes.includes(item.hash));
839
+ return [...otherPayloads, ...found, ...notFound];
840
+ }
841
+ return results;
842
+ }
843
+ async trace(hash) {
844
+ const [result] = await this.get([hash]);
845
+ if (isHashPayload(result)) {
846
+ const [payload, route] = await this.trace(result.hash);
847
+ return [payload, [result, ...route]];
848
+ }
849
+ return [result, []];
850
+ }
851
+ };
852
+
853
+ // src/provider/datalake/ArchivistXyoDataLake.ts
854
+ import { assertEx } from "@xylabs/assert";
855
+ import { isAnyPayload as isAnyPayload2 } from "@xyo-network/payload-model";
856
+ var ArchivistXyoDataLake = class extends AbstractXyoDataLake {
857
+ _archivist;
858
+ constructor(archivist) {
859
+ super();
860
+ this._archivist = archivist;
861
+ }
862
+ async add(items) {
863
+ const payloads = items.filter(isAnyPayload2);
864
+ assertEx(payloads.length === items.length, () => "Some items are not payloads");
865
+ return await this._archivist.insert(payloads);
866
+ }
867
+ async get(hashes) {
868
+ return await this._archivist.get(hashes);
869
+ }
870
+ };
871
+
872
+ // src/provider/datalake/HttpXyoDataLake.ts
873
+ import { assertEx as assertEx2 } from "@xylabs/assert";
874
+ import { AxiosJson as AxiosJson2 } from "@xylabs/axios";
875
+ import { exists } from "@xylabs/exists";
876
+ import { isArrayBuffer, isDefined as isDefined2 } from "@xylabs/typeof";
877
+ import { isAnyPayload as isAnyPayload3 } from "@xyo-network/payload-model";
878
+ import { isHashPayload as isHashPayload2 } from "@xyo-network/xl1-protocol";
879
+ import { Axios } from "axios";
880
+ var HttpXyoDataLake = class extends AbstractXyoDataLake {
881
+ _axiosGet;
882
+ _axiosInsertBlob;
883
+ _axiosInsertJson;
884
+ _endpoint;
885
+ constructor(endpoint) {
886
+ super();
887
+ this._endpoint = endpoint;
888
+ this._axiosInsertJson = new AxiosJson2({ baseURL: endpoint });
889
+ this._axiosInsertBlob = new Axios({ baseURL: endpoint, headers: { "Content-Type": "application/octet-stream", "Accept": "application/octet-stream" } });
890
+ this._axiosGet = new Axios({ baseURL: endpoint, headers: { "Content-Type": "application/json", "Accept": "application/octet-stream, application/json" } });
891
+ }
892
+ get endpoint() {
893
+ return this._endpoint;
894
+ }
895
+ async add(items) {
896
+ const results = [];
897
+ for (const item of items) {
898
+ if (isAnyPayload3(item)) {
899
+ const result = await this.addPayload(item);
900
+ if (isAnyPayload3(result)) {
901
+ results.push(result);
902
+ } else if (isDefined2(result)) {
903
+ assertEx2(false, () => "Expected result to be a Payload");
904
+ }
905
+ } else if (isArrayBuffer(item)) {
906
+ const result = await this.addArrayBuffer(item);
907
+ if (isAnyPayload3(result)) {
908
+ results.push(result);
909
+ } else if (isDefined2(result)) {
910
+ assertEx2(false, () => "Expected result to be a Payload");
911
+ }
912
+ }
913
+ }
914
+ return results;
915
+ }
916
+ async get(hashes) {
917
+ return (await Promise.all(hashes.map(async (hash) => {
918
+ return await this.getOne(hash);
919
+ }))).filter(exists);
920
+ }
921
+ async addArrayBuffer(item) {
922
+ const result = await this._axiosInsertBlob.post("/insert", item);
923
+ if (result.status < 200 || result.status >= 300) {
924
+ throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`);
925
+ }
926
+ if (!isArrayBuffer(result.data)) {
927
+ throw new Error("Invalid response from server (expected a ArrayBuffer)");
928
+ }
929
+ return result.data;
930
+ }
931
+ async addPayload(item) {
932
+ const result = await this._axiosInsertJson.post("/insert", item);
933
+ if (result.status < 200 || result.status >= 300) {
934
+ throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`);
935
+ }
936
+ if (!isAnyPayload3(result.data)) {
937
+ throw new Error("Invalid response from server (expected a Payload)");
938
+ }
939
+ return result.data;
940
+ }
941
+ async fetchOne(hash, maxDepth = Number.MAX_SAFE_INTEGER) {
942
+ if (maxDepth <= 0) {
943
+ return void 0;
944
+ }
945
+ const result = await this.getOne(hash);
946
+ if (isHashPayload2(result)) {
947
+ return await this.fetchOne(result.hash, maxDepth - 1);
948
+ }
949
+ return result;
950
+ }
951
+ getOne(hash) {
952
+ return this._axiosGet.get(`/get/${hash}`).then((response) => {
953
+ if (response.status < 200 || response.status >= 300) {
954
+ throw new Error(`Failed to get item [${response.status}]: ${response.statusText}`);
955
+ }
956
+ if (!isAnyPayload3(response.data)) {
957
+ throw new Error("Invalid response from server (expected a Payload)");
958
+ }
959
+ return response.data;
1041
960
  });
1042
961
  }
1043
962
  };
1044
963
 
1045
964
  // src/provider/runner/JsonRpcXyoRunner.ts
1046
965
  var JsonRpcXyoRunner = class {
1047
- static {
1048
- __name(this, "JsonRpcXyoRunner");
1049
- }
1050
966
  transport;
1051
967
  constructor(transport) {
1052
968
  this.transport = transport;
1053
969
  }
1054
970
  async broadcastTransaction(transaction) {
1055
- return await this.transport.sendRequest("xyoRunner_broadcastTransaction", [
1056
- transaction
1057
- ]);
971
+ return await this.transport.sendRequest("xyoRunner_broadcastTransaction", [transaction]);
1058
972
  }
1059
973
  };
1060
974
 
1061
975
  // src/provider/runner/MemoryXyoRunner.ts
1062
976
  import { MemoryArchivist } from "@xyo-network/archivist-memory";
1063
- import { PayloadBuilder } from "@xyo-network/payload-builder";
977
+ import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/payload-builder";
1064
978
  import { flattenHydratedTransaction } from "@xyo-network/xl1-protocol-sdk";
1065
979
  var MemoryXyoRunner = class {
1066
- static {
1067
- __name(this, "MemoryXyoRunner");
1068
- }
1069
980
  _archivist;
1070
981
  async broadcastTransaction(transaction) {
1071
982
  const archivist = await this.getArchivist();
1072
983
  await archivist.insert(flattenHydratedTransaction(transaction));
1073
- return await PayloadBuilder.hash(transaction[0]);
984
+ return await PayloadBuilder2.hash(transaction[0]);
1074
985
  }
1075
986
  async getArchivist() {
1076
987
  if (!this._archivist) {
1077
- this._archivist = await MemoryArchivist.create({
1078
- account: "random"
1079
- });
988
+ this._archivist = await MemoryArchivist.create({ account: "random" });
1080
989
  }
1081
990
  return this._archivist;
1082
991
  }
1083
992
  };
1084
993
 
1085
994
  // src/provider/runner/NodeXyoRunner.ts
1086
- import { assertEx as assertEx2 } from "@xylabs/assert";
995
+ import { assertEx as assertEx3 } from "@xylabs/assert";
1087
996
  import { asArchivistInstance } from "@xyo-network/archivist-model";
1088
- import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/payload-builder";
997
+ import { PayloadBuilder as PayloadBuilder3 } from "@xyo-network/payload-builder";
1089
998
  import { PayloadBundleSchema } from "@xyo-network/payload-model";
1090
999
  import { flattenHydratedTransaction as flattenHydratedTransaction2 } from "@xyo-network/xl1-protocol-sdk";
1091
1000
  var NodeXyoRunner = class {
1092
- static {
1093
- __name(this, "NodeXyoRunner");
1094
- }
1095
1001
  // TODO: Make configurable with defaults
1096
1002
  node;
1097
1003
  pendingArchivistPath = "XYOChain:Pending:PendingTransactions";
@@ -1102,33 +1008,28 @@ var NodeXyoRunner = class {
1102
1008
  async broadcastTransaction(transaction) {
1103
1009
  const flattened = flattenHydratedTransaction2(transaction);
1104
1010
  const pendingArchivist = await this.getPendingArchivist();
1105
- const txHash = await PayloadBuilder2.hash(transaction[0]);
1011
+ const txHash = await PayloadBuilder3.hash(transaction[0]);
1106
1012
  const payloadBundle = {
1107
1013
  schema: PayloadBundleSchema,
1108
1014
  payloads: flattened,
1109
1015
  root: txHash
1110
1016
  };
1111
- await pendingArchivist.insert([
1112
- payloadBundle
1113
- ]);
1017
+ await pendingArchivist.insert([payloadBundle]);
1114
1018
  return txHash;
1115
1019
  }
1116
- getArchivist = /* @__PURE__ */ __name(async (identifier) => {
1020
+ getArchivist = async (identifier) => {
1117
1021
  const archivist = await this.node.resolve(identifier);
1118
- return assertEx2(asArchivistInstance(archivist), () => `Error: Could not resolve ${identifier} to an archivist instance`);
1119
- }, "getArchivist");
1120
- getPendingArchivist = /* @__PURE__ */ __name(async () => {
1022
+ return assertEx3(asArchivistInstance(archivist), () => `Error: Could not resolve ${identifier} to an archivist instance`);
1023
+ };
1024
+ getPendingArchivist = async () => {
1121
1025
  if (this._pendingArchivist) return this._pendingArchivist;
1122
1026
  this._pendingArchivist = await this.getArchivist(this.pendingArchivistPath);
1123
- return assertEx2(this._pendingArchivist, () => `Error: Could not resolve pending archivist at ${this.pendingArchivistPath}`);
1124
- }, "getPendingArchivist");
1027
+ return assertEx3(this._pendingArchivist, () => `Error: Could not resolve pending archivist at ${this.pendingArchivistPath}`);
1028
+ };
1125
1029
  };
1126
1030
 
1127
1031
  // src/provider/signer/JsonRpcXyoSigner.ts
1128
1032
  var RpcXyoSigner = class {
1129
- static {
1130
- __name(this, "RpcXyoSigner");
1131
- }
1132
1033
  transport;
1133
1034
  constructor(transport) {
1134
1035
  this.transport = transport;
@@ -1152,17 +1053,11 @@ var RpcXyoSigner = class {
1152
1053
  }
1153
1054
  };
1154
1055
  var JsonRpcXyoSigner = class extends RpcXyoSigner {
1155
- static {
1156
- __name(this, "JsonRpcXyoSigner");
1157
- }
1158
1056
  };
1159
1057
 
1160
1058
  // src/provider/signer/MemoryXyoSigner.ts
1161
1059
  import { buildTransaction } from "@xyo-network/xl1-protocol-sdk";
1162
1060
  var MemoryXyoSigner = class {
1163
- static {
1164
- __name(this, "MemoryXyoSigner");
1165
- }
1166
1061
  _account;
1167
1062
  constructor(account) {
1168
1063
  this._account = account;
@@ -1172,7 +1067,16 @@ var MemoryXyoSigner = class {
1172
1067
  }
1173
1068
  async createSignedTransaction(chain, elevatedPayloads, additionalPayloads, nbf, exp, fees, from) {
1174
1069
  const fromAddress = from ?? this._account.address;
1175
- const transaction = await buildTransaction(chain, elevatedPayloads, additionalPayloads, this._account, nbf, exp, fromAddress, fees);
1070
+ const transaction = await buildTransaction(
1071
+ chain,
1072
+ elevatedPayloads,
1073
+ additionalPayloads,
1074
+ this._account,
1075
+ nbf,
1076
+ exp,
1077
+ fromAddress,
1078
+ fees
1079
+ );
1176
1080
  return transaction[0];
1177
1081
  }
1178
1082
  signTransaction(_tx) {
@@ -1182,38 +1086,24 @@ var MemoryXyoSigner = class {
1182
1086
 
1183
1087
  // src/provider/viewer/JsonRpcXyoViewer.ts
1184
1088
  var JsonRpcXyoViewer = class {
1185
- static {
1186
- __name(this, "JsonRpcXyoViewer");
1187
- }
1188
1089
  transport;
1189
1090
  constructor(transport) {
1190
1091
  this.transport = transport;
1191
1092
  }
1192
1093
  async accountBalance(address) {
1193
- return await this.transport.sendRequest("xyoViewer_accountBalance", [
1194
- address
1195
- ]);
1094
+ return await this.transport.sendRequest("xyoViewer_accountBalance", [address]);
1196
1095
  }
1197
1096
  async accountHistory(address) {
1198
- return await this.transport.sendRequest("xyoViewer_accountBalance", [
1199
- address
1200
- ]);
1097
+ return await this.transport.sendRequest("xyoViewer_accountBalance", [address]);
1201
1098
  }
1202
1099
  async blockByHash(hash) {
1203
- return await this.transport.sendRequest("xyoViewer_blockByHash", [
1204
- hash
1205
- ]);
1100
+ return await this.transport.sendRequest("xyoViewer_blockByHash", [hash]);
1206
1101
  }
1207
1102
  async blockByNumber(blockNumber) {
1208
- return await this.transport.sendRequest("xyoViewer_blockByNumber", [
1209
- blockNumber
1210
- ]);
1103
+ return await this.transport.sendRequest("xyoViewer_blockByNumber", [blockNumber]);
1211
1104
  }
1212
1105
  async blocksByHash(hash, limit) {
1213
- return await this.transport.sendRequest("xyoViewer_blocksByHash", [
1214
- hash,
1215
- limit
1216
- ]);
1106
+ return await this.transport.sendRequest("xyoViewer_blocksByHash", [hash, limit]);
1217
1107
  }
1218
1108
  async chainId() {
1219
1109
  return await this.transport.sendRequest("xyoViewer_chainId");
@@ -1228,34 +1118,23 @@ var JsonRpcXyoViewer = class {
1228
1118
  return await this.transport.sendRequest("xyoViewer_currentBlockNumber");
1229
1119
  }
1230
1120
  async transactionByBlockHashAndIndex(blockHash, transactionIndex) {
1231
- return await this.transport.sendRequest("xyoViewer_transactionByBlockHashAndIndex", [
1232
- blockHash,
1233
- transactionIndex
1234
- ]);
1121
+ return await this.transport.sendRequest("xyoViewer_transactionByBlockHashAndIndex", [blockHash, transactionIndex]);
1235
1122
  }
1236
1123
  async transactionByBlockNumberAndIndex(blockNumber, transactionIndex) {
1237
- return await this.transport.sendRequest("xyoViewer_transactionByBlockNumberAndIndex", [
1238
- blockNumber,
1239
- transactionIndex
1240
- ]);
1124
+ return await this.transport.sendRequest("xyoViewer_transactionByBlockNumberAndIndex", [blockNumber, transactionIndex]);
1241
1125
  }
1242
1126
  async transactionByHash(transactionHash) {
1243
- return await this.transport.sendRequest("xyoViewer_transactionByHash", [
1244
- transactionHash
1245
- ]);
1127
+ return await this.transport.sendRequest("xyoViewer_transactionByHash", [transactionHash]);
1246
1128
  }
1247
1129
  };
1248
1130
 
1249
- // src/provider/provider/XyoConnection.ts
1250
- import { assertEx as assertEx3 } from "@xylabs/assert";
1251
- import { PayloadBuilder as PayloadBuilder3 } from "@xyo-network/payload-builder";
1252
- import { isAnyPayload } from "@xyo-network/payload-model";
1131
+ // src/provider/connection/XyoConnection.ts
1132
+ import { assertEx as assertEx4 } from "@xylabs/assert";
1133
+ import { PayloadBuilder as PayloadBuilder4 } from "@xyo-network/payload-builder";
1134
+ import { isAnyPayload as isAnyPayload4 } from "@xyo-network/payload-model";
1253
1135
  import { defaultTransactionFees, isDataLakeProvider } from "@xyo-network/xl1-protocol";
1254
1136
  import { HydratedTransactionWrapper } from "@xyo-network/xl1-wrappers";
1255
1137
  var XyoConnection = class {
1256
- static {
1257
- __name(this, "XyoConnection");
1258
- }
1259
1138
  _network;
1260
1139
  _runner;
1261
1140
  _signer;
@@ -1274,6 +1153,7 @@ var XyoConnection = class {
1274
1153
  get runner() {
1275
1154
  return this._runner;
1276
1155
  }
1156
+ /** @deprecated use signer from gateway instead */
1277
1157
  get signer() {
1278
1158
  return this._signer;
1279
1159
  }
@@ -1293,10 +1173,17 @@ var XyoConnection = class {
1293
1173
  fees
1294
1174
  }))[0];
1295
1175
  }
1296
- async submitTransaction(elevatedPayloads, additionalPayloads, { chain, exp, fees, from, nbf } = {}) {
1297
- const viewer = assertEx3(this.viewer, () => "No viewer available");
1298
- const signer = assertEx3(this.signer, () => "No signer available");
1299
- const runner = assertEx3(this.runner, () => "No runner available");
1176
+ /** @deprecated use addPayloadsToChain from gateway instead */
1177
+ async submitTransaction(elevatedPayloads, additionalPayloads, {
1178
+ chain,
1179
+ exp,
1180
+ fees,
1181
+ from,
1182
+ nbf
1183
+ } = {}) {
1184
+ const viewer = assertEx4(this.viewer, () => "No viewer available");
1185
+ const signer = assertEx4(this.signer, () => "No signer available");
1186
+ const runner = assertEx4(this.runner, () => "No runner available");
1300
1187
  const storage = this.storage;
1301
1188
  const chainResolved = chain ?? await viewer.chainId();
1302
1189
  if (chainResolved === void 0) throw new Error("Failed to determine chain");
@@ -1305,59 +1192,190 @@ var XyoConnection = class {
1305
1192
  const feesResolved = fees ?? defaultTransactionFees;
1306
1193
  const fromResolved = from ?? await signer.address();
1307
1194
  if (fromResolved === void 0) throw new Error("Failed to determine from address");
1308
- const signedTransaction = assertEx3(await signer.createSignedTransaction(chainResolved, elevatedPayloads, additionalPayloads, nbfResolved, expResolved, feesResolved, fromResolved), () => "Failed to create transaction");
1195
+ const signedTransaction = assertEx4(await signer.createSignedTransaction(
1196
+ chainResolved,
1197
+ elevatedPayloads,
1198
+ additionalPayloads,
1199
+ nbfResolved,
1200
+ expResolved,
1201
+ feesResolved,
1202
+ fromResolved
1203
+ ), () => "Failed to create transaction");
1309
1204
  const hydratedTransaction = [
1310
- await PayloadBuilder3.addStorageMeta(signedTransaction),
1311
- await PayloadBuilder3.addStorageMeta(elevatedPayloads)
1205
+ await PayloadBuilder4.addStorageMeta(signedTransaction),
1206
+ await PayloadBuilder4.addStorageMeta(elevatedPayloads)
1312
1207
  ];
1313
1208
  if (isDataLakeProvider(storage)) {
1314
1209
  const wrapper = await HydratedTransactionWrapper.parse(hydratedTransaction);
1315
- await storage.add(Object.values(wrapper.externalPayloads).filter(isAnyPayload));
1210
+ await storage.add(Object.values(wrapper.externalPayloads).filter(isAnyPayload4));
1316
1211
  }
1317
- assertEx3(await runner.broadcastTransaction(hydratedTransaction), () => "Failed to broadcast transaction");
1212
+ assertEx4(await runner.broadcastTransaction(hydratedTransaction), () => "Failed to broadcast transaction");
1318
1213
  return hydratedTransaction;
1319
1214
  }
1320
1215
  };
1321
1216
 
1322
- // src/provider/provider/HttpRpcXyoConnection.ts
1217
+ // src/provider/connection/HttpRpcXyoConnection.ts
1323
1218
  var HttpRpcXyoConnection = class extends XyoConnection {
1324
- static {
1325
- __name(this, "HttpRpcXyoConnection");
1326
- }
1327
1219
  constructor(params) {
1328
- const { account, endpoint } = params;
1329
- const signer = isDefined2(account) ? new MemoryXyoSigner(account) : void 0;
1330
- const transport = new HttpRpcTransport(endpoint, {
1331
- ...XyoRunnerRpcSchemas,
1332
- ...XyoViewerRpcSchemas
1333
- });
1220
+ const {
1221
+ account,
1222
+ endpoint,
1223
+ storage: storageParam
1224
+ } = params;
1225
+ const signer = isDefined3(account) ? new MemoryXyoSigner(account) : void 0;
1226
+ const transport = new HttpRpcTransport(endpoint, { ...XyoRunnerRpcSchemas, ...XyoViewerRpcSchemas });
1334
1227
  const runner = new JsonRpcXyoRunner(transport);
1335
1228
  const viewer = new JsonRpcXyoViewer(transport);
1229
+ const storage = isDataLakeProvider2(storageParam) ? storageParam : isString(storageParam) ? new HttpXyoDataLake(storageParam) : void 0;
1336
1230
  super({
1337
1231
  signer,
1338
1232
  runner,
1339
- viewer
1233
+ viewer,
1234
+ storage
1340
1235
  });
1341
1236
  }
1342
1237
  };
1343
1238
  var RpcXyoConnection = class extends HttpRpcXyoConnection {
1344
- static {
1345
- __name(this, "RpcXyoConnection");
1239
+ };
1240
+
1241
+ // src/provider/gateway/Abstract.ts
1242
+ import { assertEx as assertEx5 } from "@xylabs/assert";
1243
+ import { PayloadBuilder as PayloadBuilder5 } from "@xyo-network/payload-builder";
1244
+ import { buildUnsignedTransaction } from "@xyo-network/xl1-protocol-sdk";
1245
+ var AbstractXyoGateway = class {
1246
+ async addPayloadsToChain(onChain, offChain) {
1247
+ const connection = await this.connection();
1248
+ const viewer = assertEx5(connection.viewer, () => "No viewer available on connection");
1249
+ const signer = await this.signer();
1250
+ const chainId = await viewer.chainId();
1251
+ const nbf = await viewer.currentBlockNumber();
1252
+ const tx = await buildUnsignedTransaction(chainId, onChain, offChain, nbf, nbf + 1e3, await signer.address());
1253
+ const hash = await this.addTransactionToChain(tx);
1254
+ return [hash, tx];
1255
+ }
1256
+ async addTransactionToChain(tx) {
1257
+ const connection = await this.connection();
1258
+ const signer = await this.signer();
1259
+ const runner = assertEx5(connection.runner, () => "No runner available on connection");
1260
+ const signedTx = await signer.signTransaction(tx);
1261
+ return await runner.broadcastTransaction(
1262
+ [
1263
+ await PayloadBuilder5.addStorageMeta(signedTx[0]),
1264
+ await PayloadBuilder5.addStorageMeta(signedTx[1])
1265
+ ]
1266
+ );
1267
+ }
1268
+ /** @deprecated use addPayloadsToChain instead */
1269
+ async submitTransaction(elevatedPayloads, additionalPayloads) {
1270
+ const connection = await this.connection();
1271
+ assertEx5(connection.submitTransaction, () => "Active connection does not support transaction submission");
1272
+ const tx = await connection.submitTransaction?.(elevatedPayloads, additionalPayloads);
1273
+ return assertEx5(tx, () => "Transaction submission failed");
1274
+ }
1275
+ };
1276
+
1277
+ // src/provider/gateway/MemoryXyoGateway.ts
1278
+ var MemoryXyoGateway = class extends AbstractXyoGateway {
1279
+ _connection;
1280
+ _signer;
1281
+ constructor(signer, connection) {
1282
+ super();
1283
+ this._signer = signer;
1284
+ this._connection = connection;
1285
+ }
1286
+ connection() {
1287
+ return this._connection;
1288
+ }
1289
+ signer() {
1290
+ return this._signer;
1291
+ }
1292
+ };
1293
+
1294
+ // src/provider/network/MemoryXyoNetwork.ts
1295
+ import { isUndefined } from "@xylabs/typeof";
1296
+ import { isNetworkStatus } from "@xyo-network/xl1-protocol";
1297
+ import axios from "axios";
1298
+
1299
+ // src/provider/network/lib/FailedNetworkStatusPayloads.ts
1300
+ import { NetworkStatusSchema } from "@xyo-network/xl1-protocol";
1301
+ var unknownStatus = {
1302
+ description: "Unknown Network Status",
1303
+ schema: NetworkStatusSchema,
1304
+ state: "unknown"
1305
+ };
1306
+ var errorStatus = {
1307
+ description: "Error Fetching Network Status",
1308
+ schema: NetworkStatusSchema,
1309
+ state: "unknown"
1310
+ };
1311
+
1312
+ // src/provider/network/lib/StatusNetworks.ts
1313
+ var MainNetworkStats = {
1314
+ id: "mainnet",
1315
+ statusUrl: "https://xyo.network/chain-network-status-mainnet.json"
1316
+ };
1317
+ var SequenceNetworkStats = {
1318
+ id: "sequence",
1319
+ statusUrl: "https://beta.xyo.network/chain-network-status-sequence.json"
1320
+ };
1321
+ var LocalNetworkStats = {
1322
+ id: "local",
1323
+ statusUrl: "http://localhost:3002/chain-network-status-local.json"
1324
+ };
1325
+ var StatusNetworks = {
1326
+ ["mainnet"]: MainNetworkStats,
1327
+ ["sequence"]: SequenceNetworkStats,
1328
+ ["local"]: LocalNetworkStats
1329
+ };
1330
+
1331
+ // src/provider/network/MemoryXyoNetwork.ts
1332
+ var MemoryXyoNetwork = class {
1333
+ _networkId;
1334
+ constructor(networkId) {
1335
+ this._networkId = networkId;
1336
+ }
1337
+ async status() {
1338
+ const statusNetwork = StatusNetworks[this._networkId];
1339
+ if (isUndefined(statusNetwork)) {
1340
+ throw new Error(`Unknown status network ID: ${this._networkId}`);
1341
+ }
1342
+ return await this.makeRequest(statusNetwork.statusUrl);
1343
+ }
1344
+ async makeRequest(url) {
1345
+ try {
1346
+ const response = await axios.get(url);
1347
+ if (isNetworkStatus(response.data)) {
1348
+ return response.data;
1349
+ } else {
1350
+ if (response.status === 200) {
1351
+ console.error("Unknown network status response:", response.data);
1352
+ return unknownStatus;
1353
+ }
1354
+ return errorStatus;
1355
+ }
1356
+ } catch (error) {
1357
+ console.error("Error fetching network status:", error);
1358
+ return errorStatus;
1359
+ }
1346
1360
  }
1347
1361
  };
1348
1362
  export {
1363
+ AbstractXyoDataLake,
1349
1364
  AbstractXyoGateway,
1350
1365
  AllRpcSchemas,
1366
+ ArchivistXyoDataLake,
1351
1367
  CaveatTypesSchema,
1352
1368
  CaveatsSchema,
1353
1369
  ChainConnectionSchema,
1354
1370
  HttpRpcTransport,
1355
1371
  HttpRpcXyoConnection,
1372
+ HttpXyoDataLake,
1356
1373
  InvokerPermissionSchema,
1357
1374
  JsonRpcErrorCodes,
1358
1375
  JsonRpcXyoRunner,
1359
1376
  JsonRpcXyoSigner,
1360
1377
  JsonRpcXyoViewer,
1378
+ LegacyPostMessageRpcTransport,
1361
1379
  MemoryPermissionsStore,
1362
1380
  MemoryRpcTransport,
1363
1381
  MemoryXyoClient,