@xyo-network/react-standard-node 2.81.10 → 2.82.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/dist/browser/components/ActiveStandardNode.d.cts +1 -0
  2. package/dist/browser/components/ActiveStandardNode.d.cts.map +1 -1
  3. package/dist/browser/components/ActiveStandardNode.d.mts +1 -0
  4. package/dist/browser/components/ActiveStandardNode.d.mts.map +1 -1
  5. package/dist/browser/components/ActiveStandardNode.d.ts +1 -0
  6. package/dist/browser/components/ActiveStandardNode.d.ts.map +1 -1
  7. package/dist/browser/components/index.d.cts +1 -1
  8. package/dist/browser/components/index.d.cts.map +1 -1
  9. package/dist/browser/components/index.d.mts +1 -1
  10. package/dist/browser/components/index.d.mts.map +1 -1
  11. package/dist/browser/components/index.d.ts +1 -1
  12. package/dist/browser/components/index.d.ts.map +1 -1
  13. package/dist/browser/contexts/StandardRemoteNodes/Context.d.cts +1 -1
  14. package/dist/browser/contexts/StandardRemoteNodes/Context.d.mts +1 -1
  15. package/dist/browser/contexts/StandardRemoteNodes/Context.d.ts +1 -1
  16. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.cts +2 -1
  17. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.cts.map +1 -1
  18. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.mts +2 -1
  19. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.mts.map +1 -1
  20. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.ts +2 -1
  21. package/dist/browser/contexts/StandardRemoteNodes/Providers.d.ts.map +1 -1
  22. package/dist/browser/contexts/StandardRemoteNodes/index.d.cts +4 -4
  23. package/dist/browser/contexts/StandardRemoteNodes/index.d.cts.map +1 -1
  24. package/dist/browser/contexts/StandardRemoteNodes/index.d.mts +4 -4
  25. package/dist/browser/contexts/StandardRemoteNodes/index.d.mts.map +1 -1
  26. package/dist/browser/contexts/StandardRemoteNodes/index.d.ts +4 -4
  27. package/dist/browser/contexts/StandardRemoteNodes/index.d.ts.map +1 -1
  28. package/dist/browser/contexts/StandardRemoteNodes/use.d.cts +1 -1
  29. package/dist/browser/contexts/StandardRemoteNodes/use.d.cts.map +1 -1
  30. package/dist/browser/contexts/StandardRemoteNodes/use.d.mts +1 -1
  31. package/dist/browser/contexts/StandardRemoteNodes/use.d.mts.map +1 -1
  32. package/dist/browser/contexts/StandardRemoteNodes/use.d.ts +1 -1
  33. package/dist/browser/contexts/StandardRemoteNodes/use.d.ts.map +1 -1
  34. package/dist/browser/contexts/index.d.cts +1 -1
  35. package/dist/browser/contexts/index.d.mts +1 -1
  36. package/dist/browser/contexts/index.d.ts +1 -1
  37. package/dist/browser/hooks/index.d.cts +1 -1
  38. package/dist/browser/hooks/index.d.mts +1 -1
  39. package/dist/browser/hooks/index.d.ts +1 -1
  40. package/dist/browser/index.cjs +184 -100
  41. package/dist/browser/index.cjs.map +1 -1
  42. package/dist/browser/index.d.cts +4 -4
  43. package/dist/browser/index.d.mts +4 -4
  44. package/dist/browser/index.d.ts +4 -4
  45. package/dist/browser/{index.js → index.mjs} +179 -103
  46. package/dist/browser/index.mjs.map +1 -0
  47. package/dist/browser/lib/Builders/index.d.cts +3 -3
  48. package/dist/browser/lib/Builders/index.d.mts +3 -3
  49. package/dist/browser/lib/Builders/index.d.ts +3 -3
  50. package/dist/browser/lib/index.d.cts +4 -4
  51. package/dist/browser/lib/index.d.mts +4 -4
  52. package/dist/browser/lib/index.d.ts +4 -4
  53. package/dist/neutral/components/ActiveStandardNode.d.cts +1 -0
  54. package/dist/neutral/components/ActiveStandardNode.d.cts.map +1 -1
  55. package/dist/neutral/components/ActiveStandardNode.d.mts +1 -0
  56. package/dist/neutral/components/ActiveStandardNode.d.mts.map +1 -1
  57. package/dist/neutral/components/ActiveStandardNode.d.ts +1 -0
  58. package/dist/neutral/components/ActiveStandardNode.d.ts.map +1 -1
  59. package/dist/neutral/components/index.d.cts +1 -1
  60. package/dist/neutral/components/index.d.cts.map +1 -1
  61. package/dist/neutral/components/index.d.mts +1 -1
  62. package/dist/neutral/components/index.d.mts.map +1 -1
  63. package/dist/neutral/components/index.d.ts +1 -1
  64. package/dist/neutral/components/index.d.ts.map +1 -1
  65. package/dist/neutral/contexts/StandardRemoteNodes/Context.d.cts +1 -1
  66. package/dist/neutral/contexts/StandardRemoteNodes/Context.d.mts +1 -1
  67. package/dist/neutral/contexts/StandardRemoteNodes/Context.d.ts +1 -1
  68. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.cts +2 -1
  69. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.cts.map +1 -1
  70. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.mts +2 -1
  71. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.mts.map +1 -1
  72. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.ts +2 -1
  73. package/dist/neutral/contexts/StandardRemoteNodes/Providers.d.ts.map +1 -1
  74. package/dist/neutral/contexts/StandardRemoteNodes/index.d.cts +4 -4
  75. package/dist/neutral/contexts/StandardRemoteNodes/index.d.cts.map +1 -1
  76. package/dist/neutral/contexts/StandardRemoteNodes/index.d.mts +4 -4
  77. package/dist/neutral/contexts/StandardRemoteNodes/index.d.mts.map +1 -1
  78. package/dist/neutral/contexts/StandardRemoteNodes/index.d.ts +4 -4
  79. package/dist/neutral/contexts/StandardRemoteNodes/index.d.ts.map +1 -1
  80. package/dist/neutral/contexts/StandardRemoteNodes/use.d.cts +1 -1
  81. package/dist/neutral/contexts/StandardRemoteNodes/use.d.cts.map +1 -1
  82. package/dist/neutral/contexts/StandardRemoteNodes/use.d.mts +1 -1
  83. package/dist/neutral/contexts/StandardRemoteNodes/use.d.mts.map +1 -1
  84. package/dist/neutral/contexts/StandardRemoteNodes/use.d.ts +1 -1
  85. package/dist/neutral/contexts/StandardRemoteNodes/use.d.ts.map +1 -1
  86. package/dist/neutral/contexts/index.d.cts +1 -1
  87. package/dist/neutral/contexts/index.d.mts +1 -1
  88. package/dist/neutral/contexts/index.d.ts +1 -1
  89. package/dist/neutral/hooks/index.d.cts +1 -1
  90. package/dist/neutral/hooks/index.d.mts +1 -1
  91. package/dist/neutral/hooks/index.d.ts +1 -1
  92. package/dist/neutral/index.cjs +184 -100
  93. package/dist/neutral/index.cjs.map +1 -1
  94. package/dist/neutral/index.d.cts +4 -4
  95. package/dist/neutral/index.d.mts +4 -4
  96. package/dist/neutral/index.d.ts +4 -4
  97. package/dist/neutral/{index.js → index.mjs} +179 -103
  98. package/dist/neutral/index.mjs.map +1 -0
  99. package/dist/neutral/lib/Builders/index.d.cts +3 -3
  100. package/dist/neutral/lib/Builders/index.d.mts +3 -3
  101. package/dist/neutral/lib/Builders/index.d.ts +3 -3
  102. package/dist/neutral/lib/index.d.cts +4 -4
  103. package/dist/neutral/lib/index.d.mts +4 -4
  104. package/dist/neutral/lib/index.d.ts +4 -4
  105. package/dist/node/components/ActiveStandardNode.d.cts +1 -0
  106. package/dist/node/components/ActiveStandardNode.d.cts.map +1 -1
  107. package/dist/node/components/ActiveStandardNode.d.mts +1 -0
  108. package/dist/node/components/ActiveStandardNode.d.mts.map +1 -1
  109. package/dist/node/components/ActiveStandardNode.d.ts +1 -0
  110. package/dist/node/components/ActiveStandardNode.d.ts.map +1 -1
  111. package/dist/node/components/index.d.cts +1 -1
  112. package/dist/node/components/index.d.cts.map +1 -1
  113. package/dist/node/components/index.d.mts +1 -1
  114. package/dist/node/components/index.d.mts.map +1 -1
  115. package/dist/node/components/index.d.ts +1 -1
  116. package/dist/node/components/index.d.ts.map +1 -1
  117. package/dist/node/contexts/StandardRemoteNodes/Context.d.cts +1 -1
  118. package/dist/node/contexts/StandardRemoteNodes/Context.d.mts +1 -1
  119. package/dist/node/contexts/StandardRemoteNodes/Context.d.ts +1 -1
  120. package/dist/node/contexts/StandardRemoteNodes/Providers.d.cts +2 -1
  121. package/dist/node/contexts/StandardRemoteNodes/Providers.d.cts.map +1 -1
  122. package/dist/node/contexts/StandardRemoteNodes/Providers.d.mts +2 -1
  123. package/dist/node/contexts/StandardRemoteNodes/Providers.d.mts.map +1 -1
  124. package/dist/node/contexts/StandardRemoteNodes/Providers.d.ts +2 -1
  125. package/dist/node/contexts/StandardRemoteNodes/Providers.d.ts.map +1 -1
  126. package/dist/node/contexts/StandardRemoteNodes/index.d.cts +4 -4
  127. package/dist/node/contexts/StandardRemoteNodes/index.d.cts.map +1 -1
  128. package/dist/node/contexts/StandardRemoteNodes/index.d.mts +4 -4
  129. package/dist/node/contexts/StandardRemoteNodes/index.d.mts.map +1 -1
  130. package/dist/node/contexts/StandardRemoteNodes/index.d.ts +4 -4
  131. package/dist/node/contexts/StandardRemoteNodes/index.d.ts.map +1 -1
  132. package/dist/node/contexts/StandardRemoteNodes/use.d.cts +1 -1
  133. package/dist/node/contexts/StandardRemoteNodes/use.d.cts.map +1 -1
  134. package/dist/node/contexts/StandardRemoteNodes/use.d.mts +1 -1
  135. package/dist/node/contexts/StandardRemoteNodes/use.d.mts.map +1 -1
  136. package/dist/node/contexts/StandardRemoteNodes/use.d.ts +1 -1
  137. package/dist/node/contexts/StandardRemoteNodes/use.d.ts.map +1 -1
  138. package/dist/node/contexts/index.d.cts +1 -1
  139. package/dist/node/contexts/index.d.mts +1 -1
  140. package/dist/node/contexts/index.d.ts +1 -1
  141. package/dist/node/hooks/index.d.cts +1 -1
  142. package/dist/node/hooks/index.d.mts +1 -1
  143. package/dist/node/hooks/index.d.ts +1 -1
  144. package/dist/node/index.cjs +187 -106
  145. package/dist/node/index.cjs.map +1 -1
  146. package/dist/node/index.d.cts +4 -4
  147. package/dist/node/index.d.mts +4 -4
  148. package/dist/node/index.d.ts +4 -4
  149. package/dist/node/{index.js → index.mjs} +182 -109
  150. package/dist/node/index.mjs.map +1 -0
  151. package/dist/node/lib/Builders/index.d.cts +3 -3
  152. package/dist/node/lib/Builders/index.d.mts +3 -3
  153. package/dist/node/lib/Builders/index.d.ts +3 -3
  154. package/dist/node/lib/index.d.cts +4 -4
  155. package/dist/node/lib/index.d.mts +4 -4
  156. package/dist/node/lib/index.d.ts +4 -4
  157. package/package.json +29 -29
  158. package/src/components/ActiveStandardNode.tsx +3 -4
  159. package/src/components/index.ts +1 -1
  160. package/src/contexts/StandardRemoteNodes/Context.ts +1 -1
  161. package/src/contexts/StandardRemoteNodes/Providers.tsx +12 -11
  162. package/src/contexts/StandardRemoteNodes/index.ts +4 -4
  163. package/src/contexts/StandardRemoteNodes/{use.tsx → use.ts} +1 -1
  164. package/src/contexts/index.ts +1 -1
  165. package/src/hooks/index.ts +1 -1
  166. package/src/hooks/useActiveNodeAddress.ts +1 -1
  167. package/src/index.ts +4 -4
  168. package/src/lib/Builders/MemoryNodeBuilder.ts +2 -2
  169. package/src/lib/Builders/index.ts +3 -3
  170. package/src/lib/ModuleAccountPaths.ts +1 -1
  171. package/src/lib/buildNodes.ts +5 -5
  172. package/src/lib/index.ts +4 -4
  173. package/dist/browser/index.js.map +0 -1
  174. package/dist/neutral/index.js.map +0 -1
  175. package/dist/node/index.js.map +0 -1
@@ -1,8 +1,11 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
9
  var __export = (target, all) => {
7
10
  for (var name in all)
8
11
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -15,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
15
18
  }
16
19
  return to;
17
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
18
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
30
 
20
31
  // src/index.ts
@@ -42,7 +53,7 @@ module.exports = __toCommonJS(src_exports);
42
53
  var import_react_async_effect = require("@xylabs/react-async-effect");
43
54
  var import_react_network2 = require("@xyo-network/react-network");
44
55
  var import_react_node2 = require("@xyo-network/react-node");
45
- var import_react3 = require("react");
56
+ var import_react3 = __toESM(require("react"), 1);
46
57
 
47
58
  // src/contexts/StandardRemoteNodes/Context.ts
48
59
  var import_react_shared = require("@xyo-network/react-shared");
@@ -52,7 +63,7 @@ var StandardNodesContext = (0, import_react_shared.createContextEx)();
52
63
  var import_react_promise = require("@xylabs/react-promise");
53
64
  var import_react_shared6 = require("@xyo-network/react-shared");
54
65
  var import_react_wallet = require("@xyo-network/react-wallet");
55
- var import_react = require("react");
66
+ var import_react = __toESM(require("react"), 1);
56
67
 
57
68
  // src/lib/Builders/MemoryNodeBuilder.ts
58
69
  var import_archivist_memory = require("@xyo-network/archivist-memory");
@@ -64,13 +75,15 @@ var import_react_shared4 = require("@xyo-network/react-shared");
64
75
  // src/lib/Builders/SentinelBuilder.ts
65
76
  var import_react_shared2 = require("@xyo-network/react-shared");
66
77
  var import_sentinel_memory = require("@xyo-network/sentinel-memory");
67
- var SentinelBuilder = class {
78
+ var _SentinelBuilder = class _SentinelBuilder {
79
+ config;
80
+ account;
81
+ _sentinel;
68
82
  constructor(config, account) {
69
83
  this.config = config;
70
84
  this.account = account;
71
85
  (0, import_react_shared2.assertDefinedEx)(config, "config was not defined");
72
86
  }
73
- _sentinel;
74
87
  get sentinel() {
75
88
  return (0, import_react_shared2.assertDefinedEx)(this._sentinel, "this._sentinel not defined upon create");
76
89
  }
@@ -90,20 +103,25 @@ var SentinelBuilder = class {
90
103
  };
91
104
  }
92
105
  };
106
+ __name(_SentinelBuilder, "SentinelBuilder");
107
+ var SentinelBuilder = _SentinelBuilder;
93
108
 
94
109
  // src/lib/Builders/StorageArchivistBuilder.ts
95
110
  var import_archivist_model = require("@xyo-network/archivist-model");
96
111
  var import_archivist_storage = require("@xyo-network/archivist-storage");
97
112
  var import_node_model = require("@xyo-network/node-model");
98
113
  var import_react_shared3 = require("@xyo-network/react-shared");
99
- var StorageArchivistBuilder = class {
114
+ var _StorageArchivistBuilder = class _StorageArchivistBuilder {
115
+ config;
116
+ account;
117
+ node;
118
+ _archivist;
119
+ remoteArchivist;
100
120
  constructor(config, account, node) {
101
121
  this.config = config;
102
122
  this.account = account;
103
123
  this.node = node;
104
124
  }
105
- _archivist;
106
- remoteArchivist;
107
125
  get archivist() {
108
126
  return (0, import_react_shared3.assertDefinedEx)(this._archivist, "archivist was not defined upon create");
109
127
  }
@@ -115,7 +133,10 @@ var StorageArchivistBuilder = class {
115
133
  }
116
134
  async buildArchivist() {
117
135
  const config = this.buildConfig();
118
- return await import_archivist_storage.StorageArchivist.create({ account: this.account, config });
136
+ return await import_archivist_storage.StorageArchivist.create({
137
+ account: this.account,
138
+ config
139
+ });
119
140
  }
120
141
  buildConfig() {
121
142
  var _a, _b;
@@ -123,8 +144,12 @@ var StorageArchivistBuilder = class {
123
144
  name: this.config.name,
124
145
  namespace: this.config.namespace,
125
146
  parents: {
126
- commit: this.remoteArchivist ? [(_a = this.remoteArchivist) == null ? void 0 : _a.address] : void 0,
127
- read: this.remoteArchivist ? [(_b = this.remoteArchivist) == null ? void 0 : _b.address] : void 0
147
+ commit: this.remoteArchivist ? [
148
+ (_a = this.remoteArchivist) == null ? void 0 : _a.address
149
+ ] : void 0,
150
+ read: this.remoteArchivist ? [
151
+ (_b = this.remoteArchivist) == null ? void 0 : _b.address
152
+ ] : void 0
128
153
  },
129
154
  schema: import_archivist_storage.StorageArchivistConfigSchema,
130
155
  storeParentReads: true,
@@ -134,10 +159,18 @@ var StorageArchivistBuilder = class {
134
159
  async findParentArchivist() {
135
160
  var _a;
136
161
  const node = (0, import_node_model.asNodeInstance)(this.node, "node not defined");
137
- const [bridge] = await node.resolve({ name: ["RemoteNodeBridge"] }) ?? [];
162
+ const [bridge] = await node.resolve({
163
+ name: [
164
+ "RemoteNodeBridge"
165
+ ]
166
+ }) ?? [];
138
167
  if (bridge) {
139
168
  try {
140
- const [archivist] = await bridge.resolve({ name: ["Archivist"] }) ?? [];
169
+ const [archivist] = await bridge.resolve({
170
+ name: [
171
+ "Archivist"
172
+ ]
173
+ }) ?? [];
141
174
  return (0, import_archivist_model.asArchivistInstance)(archivist);
142
175
  } catch {
143
176
  console.error("Error Resolving Parent Archivist", (_a = this.node) == null ? void 0 : _a.config.name, this.config);
@@ -145,16 +178,24 @@ var StorageArchivistBuilder = class {
145
178
  }
146
179
  }
147
180
  };
181
+ __name(_StorageArchivistBuilder, "StorageArchivistBuilder");
182
+ var StorageArchivistBuilder = _StorageArchivistBuilder;
148
183
 
149
184
  // src/lib/Builders/MemoryNodeBuilder.ts
150
- var MemoryNodeBuilder = class {
185
+ var _MemoryNodeBuilder = class _MemoryNodeBuilder {
151
186
  _node;
152
187
  get node() {
153
188
  return (0, import_react_shared4.assertDefinedEx)(this._node, "this._node was not defined upon create");
154
189
  }
155
190
  static async create({ name, node }, account) {
156
191
  const instance = new this();
157
- const memoryNode = node ?? await import_node_memory.MemoryNode.create({ account, config: { name, schema: import_node_model2.NodeConfigSchema } });
192
+ const memoryNode = node ?? await import_node_memory.MemoryNode.create({
193
+ account,
194
+ config: {
195
+ name,
196
+ schema: import_node_model2.NodeConfigSchema
197
+ }
198
+ });
158
199
  instance._node = memoryNode;
159
200
  return instance;
160
201
  }
@@ -163,12 +204,21 @@ var MemoryNodeBuilder = class {
163
204
  await this.addArchivistStorage(account, moduleName, namespace);
164
205
  }
165
206
  async addArchivistMemory(moduleName, account) {
166
- const config = { name: moduleName, schema: import_archivist_memory.MemoryArchivistConfigSchema };
167
- const memoryArchivist = await import_archivist_memory.MemoryArchivist.create({ account, config });
207
+ const config = {
208
+ name: moduleName,
209
+ schema: import_archivist_memory.MemoryArchivistConfigSchema
210
+ };
211
+ const memoryArchivist = await import_archivist_memory.MemoryArchivist.create({
212
+ account,
213
+ config
214
+ });
168
215
  await this.attach(memoryArchivist, true);
169
216
  }
170
217
  async addArchivistStorage(account, moduleName, namespace) {
171
- const config = { name: moduleName, namespace };
218
+ const config = {
219
+ name: moduleName,
220
+ namespace
221
+ };
172
222
  const { archivist } = await StorageArchivistBuilder.create(config, account, this.node);
173
223
  await this.attach(archivist, true);
174
224
  }
@@ -176,7 +226,14 @@ var MemoryNodeBuilder = class {
176
226
  try {
177
227
  const bridge = await import_bridge_http.HttpBridge.create({
178
228
  account,
179
- config: { name: moduleName, nodeUrl: `${apiDomain}/node`, schema: import_bridge_http.HttpBridgeConfigSchema, security: { allowAnonymous: true } }
229
+ config: {
230
+ name: moduleName,
231
+ nodeUrl: `${apiDomain}/node`,
232
+ schema: import_bridge_http.HttpBridgeConfigSchema,
233
+ security: {
234
+ allowAnonymous: true
235
+ }
236
+ }
180
237
  });
181
238
  await this.attach(bridge, true);
182
239
  } catch (e) {
@@ -189,26 +246,28 @@ var MemoryNodeBuilder = class {
189
246
  return sentinel;
190
247
  }
191
248
  async addWitnesses(pluginSetResolver, witnesses = []) {
192
- await Promise.all(
193
- pluginSetResolver.witnesses().map(async (pluginSet, index) => {
194
- var _a;
195
- const witness = await ((_a = witnesses == null ? void 0 : witnesses[index]) == null ? void 0 : _a.call(witnesses));
196
- if (witness) {
197
- try {
198
- await this.witnessCleanup(witness);
199
- await this.node.register(witness);
200
- await this.node.attach(witness.address, true);
201
- } catch (e) {
202
- console.error("Error attaching witness", JSON.stringify(pluginSet, null, 2), e);
203
- }
249
+ await Promise.all(pluginSetResolver.witnesses().map(async (pluginSet, index) => {
250
+ var _a;
251
+ const witness = await ((_a = witnesses == null ? void 0 : witnesses[index]) == null ? void 0 : _a.call(witnesses));
252
+ if (witness) {
253
+ try {
254
+ await this.witnessCleanup(witness);
255
+ await this.node.register(witness);
256
+ await this.node.attach(witness.address, true);
257
+ } catch (e) {
258
+ console.error("Error attaching witness", JSON.stringify(pluginSet, null, 2), e);
204
259
  }
205
- })
206
- );
260
+ }
261
+ }));
207
262
  }
208
263
  async attach(mod, external, safeAttach) {
209
264
  try {
210
265
  if (safeAttach) {
211
- const existingModule = (await this.node.resolve({ address: [mod.address] })).pop();
266
+ const existingModule = (await this.node.resolve({
267
+ address: [
268
+ mod.address
269
+ ]
270
+ })).pop();
212
271
  if (existingModule) {
213
272
  await this.node.detach(existingModule.address);
214
273
  await this.node.unregister(existingModule);
@@ -222,11 +281,17 @@ var MemoryNodeBuilder = class {
222
281
  }
223
282
  async witnessCleanup(witness) {
224
283
  if ((await this.node.registered()).includes(witness.address)) {
225
- const [existingWitness] = await this.node.resolve({ address: [witness.address] });
284
+ const [existingWitness] = await this.node.resolve({
285
+ address: [
286
+ witness.address
287
+ ]
288
+ });
226
289
  await this.node.unregister(existingWitness);
227
290
  }
228
291
  }
229
292
  };
293
+ __name(_MemoryNodeBuilder, "MemoryNodeBuilder");
294
+ var MemoryNodeBuilder = _MemoryNodeBuilder;
230
295
 
231
296
  // src/lib/buildNodes.ts
232
297
  var import_react_network = require("@xyo-network/react-network");
@@ -259,7 +324,7 @@ var RemoteNodeArchivistOffsetPaths = {
259
324
  };
260
325
 
261
326
  // src/lib/buildNodes.ts
262
- var knownRemoteNodes = () => {
327
+ var knownRemoteNodes = /* @__PURE__ */ __name(() => {
263
328
  const networkNames = import_react_network.defaultNetworkConfigs.map((config) => config.name);
264
329
  return networkNames.map((networkName) => {
265
330
  var _a, _b;
@@ -271,37 +336,38 @@ var knownRemoteNodes = () => {
271
336
  name
272
337
  };
273
338
  });
274
- };
275
- var BuildStandardNodes = async (wallet, onNodeBuilt) => {
339
+ }, "knownRemoteNodes");
340
+ var BuildStandardNodes = /* @__PURE__ */ __name(async (wallet, onNodeBuilt) => {
276
341
  try {
277
- return await Promise.all(
278
- knownRemoteNodes().map(async ({ apiDomain, name }) => {
279
- var _a, _b, _c;
280
- const remoteNodeOffset = RemoteNodeOffsetPaths[name];
281
- const remoteNodeWallet = await ((_a = wallet.derivePath) == null ? void 0 : _a.call(wallet, remoteNodeOffset));
282
- const memoryNodeBuilder = await MemoryNodeBuilder.create({ name }, await ((_b = remoteNodeWallet.derivePath) == null ? void 0 : _b.call(remoteNodeWallet, "0")));
283
- await memoryNodeBuilder.addBridge(apiDomain);
284
- const rootArchivistPath = `${remoteNodeOffset}/${RemoteNodeArchivistOffsetPaths[name][RootStorageArchivist]}`;
285
- const rootArchivistAccount = await ((_c = wallet.derivePath) == null ? void 0 : _c.call(wallet, rootArchivistPath));
286
- await memoryNodeBuilder.addArchivistStorage(rootArchivistAccount, RootStorageArchivist, "root");
287
- const { node } = memoryNodeBuilder;
288
- (0, import_react_shared5.assertDefinedEx)(node, "Memory Node was not built successfully");
289
- onNodeBuilt == null ? void 0 : onNodeBuilt(node);
290
- return node;
291
- })
292
- );
342
+ return await Promise.all(knownRemoteNodes().map(async ({ apiDomain, name }) => {
343
+ var _a, _b, _c;
344
+ const remoteNodeOffset = RemoteNodeOffsetPaths[name];
345
+ const remoteNodeWallet = await ((_a = wallet.derivePath) == null ? void 0 : _a.call(wallet, remoteNodeOffset));
346
+ const memoryNodeBuilder = await MemoryNodeBuilder.create({
347
+ name
348
+ }, await ((_b = remoteNodeWallet.derivePath) == null ? void 0 : _b.call(remoteNodeWallet, "0")));
349
+ await memoryNodeBuilder.addBridge(apiDomain);
350
+ const rootArchivistPath = `${remoteNodeOffset}/${RemoteNodeArchivistOffsetPaths[name][RootStorageArchivist]}`;
351
+ const rootArchivistAccount = await ((_c = wallet.derivePath) == null ? void 0 : _c.call(wallet, rootArchivistPath));
352
+ await memoryNodeBuilder.addArchivistStorage(rootArchivistAccount, RootStorageArchivist, "root");
353
+ const { node } = memoryNodeBuilder;
354
+ (0, import_react_shared5.assertDefinedEx)(node, "Memory Node was not built successfully");
355
+ onNodeBuilt == null ? void 0 : onNodeBuilt(node);
356
+ return node;
357
+ }));
293
358
  } catch (e) {
294
359
  throw new Error(`Error Creating Known Remote Nodes: ${e}`);
295
360
  }
296
- };
361
+ }, "BuildStandardNodes");
297
362
 
298
363
  // src/contexts/StandardRemoteNodes/Providers.tsx
299
- var import_jsx_runtime = require("react/jsx-runtime");
300
- var StandardNodesProvider = ({ children, defaultRemoteNodes, wallet }) => {
364
+ var StandardNodesProvider = /* @__PURE__ */ __name(({ children, defaultRemoteNodes, wallet }) => {
301
365
  const [nodes, setNodes] = (0, import_react.useState)(defaultRemoteNodes);
302
366
  (0, import_react.useEffect)(() => {
303
367
  setNodes(defaultRemoteNodes);
304
- }, [defaultRemoteNodes]);
368
+ }, [
369
+ defaultRemoteNodes
370
+ ]);
305
371
  (0, import_react_promise.usePromise)(async () => {
306
372
  if (wallet) {
307
373
  await BuildStandardNodes(wallet, (node) => {
@@ -309,85 +375,100 @@ var StandardNodesProvider = ({ children, defaultRemoteNodes, wallet }) => {
309
375
  if (nodes2 == null ? void 0 : nodes2.find((existingNode) => existingNode.config.name === node.config.name)) {
310
376
  return;
311
377
  }
312
- return nodes2 ? [...nodes2, node] : [node];
378
+ return nodes2 ? [
379
+ ...nodes2,
380
+ node
381
+ ] : [
382
+ node
383
+ ];
313
384
  });
314
385
  });
315
386
  }
316
- }, [wallet]);
317
- const findAddressByName = (name) => {
387
+ }, [
388
+ wallet
389
+ ]);
390
+ const findAddressByName = /* @__PURE__ */ __name((name) => {
318
391
  var _a;
319
392
  const validNetworkName = (0, import_react_shared6.assertDefinedEx)(name, "name was not defined");
320
393
  return (_a = nodes == null ? void 0 : nodes.find((node) => node.config.name === validNetworkName)) == null ? void 0 : _a.address;
321
- };
322
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
323
- StandardNodesContext.Provider,
324
- {
325
- value: {
326
- findAddressByName,
327
- nodes,
328
- provided: true
329
- },
330
- children
331
- }
332
- );
333
- };
334
- var StandardNodesProviderWithWallet = (props) => {
394
+ }, "findAddressByName");
395
+ const value = (0, import_react.useMemo)(() => ({
396
+ findAddressByName,
397
+ nodes,
398
+ provided: true
399
+ }), [
400
+ findAddressByName,
401
+ nodes
402
+ ]);
403
+ return /* @__PURE__ */ import_react.default.createElement(StandardNodesContext.Provider, {
404
+ value
405
+ }, children);
406
+ }, "StandardNodesProvider");
407
+ var StandardNodesProviderWithWallet = /* @__PURE__ */ __name((props) => {
335
408
  const { activeAccount } = (0, import_react_wallet.useWalletContext)();
336
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StandardNodesProvider, { wallet: activeAccount, ...props });
337
- };
409
+ return /* @__PURE__ */ import_react.default.createElement(StandardNodesProvider, {
410
+ wallet: activeAccount,
411
+ ...props
412
+ });
413
+ }, "StandardNodesProviderWithWallet");
338
414
 
339
- // src/contexts/StandardRemoteNodes/use.tsx
415
+ // src/contexts/StandardRemoteNodes/use.ts
340
416
  var import_react_shared7 = require("@xyo-network/react-shared");
341
- var useStandardNodes = (required = false) => (0, import_react_shared7.useContextEx)(StandardNodesContext, "StandardNodes", required);
417
+ var useStandardNodes = /* @__PURE__ */ __name((required = false) => (0, import_react_shared7.useContextEx)(StandardNodesContext, "StandardNodes", required), "useStandardNodes");
342
418
 
343
419
  // src/hooks/useActiveNodeAddress.ts
344
420
  var import_react_node = require("@xyo-network/react-node");
345
421
  var import_react2 = require("react");
346
- var useActiveNodeAddress = (networkName) => {
422
+ var useActiveNodeAddress = /* @__PURE__ */ __name((networkName) => {
347
423
  const [node] = (0, import_react_node.useProvidedNode)();
348
424
  const { nodes, findAddressByName } = useStandardNodes();
349
425
  const activeNodeAddress = (0, import_react2.useMemo)(() => {
350
426
  if (node && nodes && findAddressByName && networkName) {
351
427
  return findAddressByName(networkName);
352
428
  }
353
- }, [findAddressByName, networkName, node, nodes]);
429
+ }, [
430
+ findAddressByName,
431
+ networkName,
432
+ node,
433
+ nodes
434
+ ]);
354
435
  return activeNodeAddress;
355
- };
436
+ }, "useActiveNodeAddress");
356
437
 
357
438
  // src/components/ActiveStandardNode.tsx
358
- var import_jsx_runtime2 = require("react/jsx-runtime");
359
- var ActiveStandardNode = ({ children, nodeNameOrAddress }) => {
439
+ var ActiveStandardNode = /* @__PURE__ */ __name(({ children, nodeNameOrAddress }) => {
360
440
  const { network } = (0, import_react_network2.useNetwork)();
361
441
  const [node] = (0, import_react_node2.useWeakNodeFromNode)(nodeNameOrAddress);
362
442
  const [activeRemoteNodeAddress, setActiveRemoteNodeAddress] = (0, import_react3.useState)();
363
443
  const { nodes } = useStandardNodes();
364
444
  const selectedNodeAddress = useActiveNodeAddress(network == null ? void 0 : network.name);
365
- (0, import_react_async_effect.useAsyncEffect)(
366
- // eslint-disable-next-line react-hooks/exhaustive-deps
367
- async (mounted) => {
368
- var _a;
369
- const nodeInstance = node == null ? void 0 : node.deref();
370
- if (nodeInstance && selectedNodeAddress) {
371
- try {
372
- if ((_a = await (nodeInstance == null ? void 0 : nodeInstance.attached())) == null ? void 0 : _a.includes(selectedNodeAddress)) {
373
- return;
374
- }
375
- await (nodeInstance == null ? void 0 : nodeInstance.attach(selectedNodeAddress, true));
376
- if (mounted()) {
377
- if (activeRemoteNodeAddress) {
378
- await (nodeInstance == null ? void 0 : nodeInstance.detach(activeRemoteNodeAddress));
379
- }
380
- setActiveRemoteNodeAddress(selectedNodeAddress);
445
+ (0, import_react_async_effect.useAsyncEffect)(async (mounted) => {
446
+ var _a;
447
+ const nodeInstance = node == null ? void 0 : node.deref();
448
+ if (nodeInstance && selectedNodeAddress) {
449
+ try {
450
+ if ((_a = await (nodeInstance == null ? void 0 : nodeInstance.attached())) == null ? void 0 : _a.includes(selectedNodeAddress)) {
451
+ return;
452
+ }
453
+ await (nodeInstance == null ? void 0 : nodeInstance.attach(selectedNodeAddress, true));
454
+ if (mounted()) {
455
+ if (activeRemoteNodeAddress) {
456
+ await (nodeInstance == null ? void 0 : nodeInstance.detach(activeRemoteNodeAddress));
381
457
  }
382
- } catch (e) {
383
- console.error("Error Attaching Selected Node Address", e);
458
+ setActiveRemoteNodeAddress(selectedNodeAddress);
384
459
  }
460
+ } catch (e) {
461
+ console.error("Error Attaching Selected Node Address", e);
385
462
  }
386
- },
387
- [activeRemoteNodeAddress, node, selectedNodeAddress, nodes]
388
- );
389
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children });
390
- };
463
+ }
464
+ }, [
465
+ activeRemoteNodeAddress,
466
+ node,
467
+ selectedNodeAddress,
468
+ nodes
469
+ ]);
470
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, children);
471
+ }, "ActiveStandardNode");
391
472
  // Annotate the CommonJS export names for ESM import in node:
392
473
  0 && (module.exports = {
393
474
  ActiveStandardNode,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/components/ActiveStandardNode.tsx","../../src/contexts/StandardRemoteNodes/Context.ts","../../src/contexts/StandardRemoteNodes/Providers.tsx","../../src/lib/Builders/MemoryNodeBuilder.ts","../../src/lib/Builders/SentinelBuilder.ts","../../src/lib/Builders/StorageArchivistBuilder.ts","../../src/lib/buildNodes.ts","../../src/lib/ModuleNames.ts","../../src/lib/ModuleAccountPaths.ts","../../src/contexts/StandardRemoteNodes/use.tsx","../../src/hooks/useActiveNodeAddress.ts"],"sourcesContent":["export * from './components/index.js'\nexport * from './contexts/index.js'\nexport * from './hooks/index.js'\nexport * from './lib/index.js'\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { useWeakNodeFromNode } from '@xyo-network/react-node'\nimport { useState } from 'react'\n\nimport { useStandardNodes } from '../contexts/index.js'\nimport { useActiveNodeAddress } from '../hooks/index.js'\n\nexport interface ActiveStandardNodeProps extends WithChildren {\n nodeNameOrAddress?: string\n}\n\nexport const ActiveStandardNode: React.FC<ActiveStandardNodeProps> = ({ children, nodeNameOrAddress }) => {\n const { network } = useNetwork()\n const [node] = useWeakNodeFromNode(nodeNameOrAddress)\n const [activeRemoteNodeAddress, setActiveRemoteNodeAddress] = useState<string>()\n const { nodes } = useStandardNodes()\n\n const selectedNodeAddress = useActiveNodeAddress(network?.name)\n\n // Probably needs to rely on node events rather than provider values to ensure its registered\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const nodeInstance = node?.deref()\n if (nodeInstance && selectedNodeAddress) {\n try {\n if ((await nodeInstance?.attached())?.includes(selectedNodeAddress)) {\n return\n }\n await nodeInstance?.attach(selectedNodeAddress, true)\n\n if (mounted()) {\n // cleanup\n if (activeRemoteNodeAddress) {\n await nodeInstance?.detach(activeRemoteNodeAddress)\n }\n setActiveRemoteNodeAddress(selectedNodeAddress)\n }\n } catch (e) {\n console.error('Error Attaching Selected Node Address', e)\n }\n }\n },\n [activeRemoteNodeAddress, node, selectedNodeAddress, nodes],\n )\n\n return <>{children}</>\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { StandardNodesState } from './State.js'\n\nexport const StandardNodesContext = createContextEx<StandardNodesState>()\n","import { usePromise } from '@xylabs/react-promise'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { useWalletContext } from '@xyo-network/react-wallet'\nimport { WalletInstance } from '@xyo-network/wallet-model'\nimport { useEffect, useState } from 'react'\n\nimport { BuildStandardNodes } from '../../lib/index.js'\nimport { StandardNodesContext } from './Context.js'\nimport { StandardNodesState } from './State.js'\n\nexport interface StandardNodesProviderProps extends WithChildren {\n defaultRemoteNodes?: StandardNodesState['nodes']\n wallet?: WalletInstance | null\n}\n\nexport const StandardNodesProvider: React.FC<StandardNodesProviderProps> = ({ children, defaultRemoteNodes, wallet }) => {\n const [nodes, setNodes] = useState<StandardNodesState['nodes']>(defaultRemoteNodes)\n\n useEffect(() => {\n setNodes(defaultRemoteNodes)\n }, [defaultRemoteNodes])\n\n usePromise(async () => {\n if (wallet) {\n await BuildStandardNodes(wallet, (node: MemoryNode) => {\n setNodes((nodes) => {\n if (nodes?.find((existingNode) => existingNode.config.name === node.config.name)) {\n return\n }\n return nodes ? [...nodes, node] : [node]\n })\n })\n }\n }, [wallet])\n\n const findAddressByName = (name?: string) => {\n const validNetworkName = assertDefinedEx(name, 'name was not defined')\n return nodes?.find((node) => node.config.name === validNetworkName)?.address\n }\n\n return (\n <StandardNodesContext.Provider\n value={{\n findAddressByName,\n nodes,\n provided: true,\n }}\n >\n {children}\n </StandardNodesContext.Provider>\n )\n}\n\nexport const StandardNodesProviderWithWallet: React.FC<Omit<StandardNodesProviderProps, 'wallet'>> = (props) => {\n const { activeAccount } = useWalletContext()\n return <StandardNodesProvider wallet={activeAccount} {...props} />\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { MemoryArchivist, MemoryArchivistConfig, MemoryArchivistConfigSchema } from '@xyo-network/archivist-memory'\nimport { HttpBridge, HttpBridgeConfigSchema } from '@xyo-network/bridge-http'\nimport { AttachableModuleInstance } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeConfigSchema } from '@xyo-network/node-model'\nimport { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { SentinelConfig } from '@xyo-network/sentinel-model'\nimport { AttachableWitnessInstance, WitnessModule } from '@xyo-network/witness-model'\n\nimport { SentinelBuilder } from './SentinelBuilder.js'\nimport { StorageArchivistBuilder } from './StorageArchivistBuilder.js'\n\nexport interface MemoryNodeBuilderConfig {\n name?: string\n node?: MemoryNode\n}\n\nexport class MemoryNodeBuilder {\n private _node: MemoryNode | undefined\n\n get node() {\n return assertDefinedEx(this._node, 'this._node was not defined upon create')\n }\n\n static async create({ name, node }: MemoryNodeBuilderConfig, account?: AccountInstance): Promise<MemoryNodeBuilder> {\n const instance = new this()\n\n const memoryNode: MemoryNode = node ?? (await MemoryNode.create({ account, config: { name, schema: NodeConfigSchema } }))\n instance._node = memoryNode\n return instance\n }\n\n /** @deprecated - call specific method that corresponds to a type of archivist (i.e. addArchivistStorage) */\n async addArchivist(account: AccountInstance, moduleName?: string, namespace?: string) {\n await this.addArchivistStorage(account, moduleName, namespace)\n }\n\n async addArchivistMemory(moduleName?: string, account?: AccountInstance) {\n const config: MemoryArchivistConfig = { name: moduleName, schema: MemoryArchivistConfigSchema }\n const memoryArchivist = await MemoryArchivist.create({ account, config })\n\n await this.attach(memoryArchivist, true)\n }\n\n async addArchivistStorage(account: AccountInstance, moduleName?: string, namespace?: string) {\n const config = { name: moduleName, namespace }\n const { archivist } = await StorageArchivistBuilder.create(config, account, this.node)\n\n await this.attach(archivist, true)\n }\n\n async addBridge(apiDomain: string, moduleName = 'RemoteNodeBridge', account?: AccountInstance) {\n try {\n const bridge = await HttpBridge.create({\n account,\n config: { name: moduleName, nodeUrl: `${apiDomain}/node`, schema: HttpBridgeConfigSchema, security: { allowAnonymous: true } },\n })\n await this.attach(bridge, true)\n } catch (e) {\n console.error('Error Creating Bridge', e)\n }\n }\n\n async addSentinel(config: SentinelConfig, account: AccountInstance) {\n const { sentinel } = await SentinelBuilder.create(config, account)\n await this.attach(sentinel, true, true)\n return sentinel\n }\n\n async addWitnesses(pluginSetResolver: PayloadSetPluginResolver, witnesses: (() => Promise<AttachableWitnessInstance>)[] = []) {\n await Promise.all(\n pluginSetResolver.witnesses().map(async (pluginSet, index) => {\n // Pass the prebuilt witness at the same index\n const witness = await witnesses?.[index]?.()\n if (witness) {\n try {\n await this.witnessCleanup(witness)\n await this.node.register(witness)\n await this.node.attach(witness.address, true)\n } catch (e) {\n console.error('Error attaching witness', JSON.stringify(pluginSet, null, 2), e)\n }\n }\n }),\n )\n }\n\n async attach(mod: AttachableModuleInstance, external?: boolean, safeAttach?: boolean) {\n try {\n if (safeAttach) {\n const existingModule = (await this.node.resolve({ address: [mod.address] })).pop()\n if (existingModule) {\n await this.node.detach(existingModule.address)\n await this.node.unregister(existingModule)\n }\n }\n await this.node.register(mod)\n await this.node.attach(mod.address, external)\n } catch (e) {\n throw new Error(`Error adding ${mod.config.name ?? mod.address} to MemoryNode: ${e}`)\n }\n }\n\n private async witnessCleanup(witness: WitnessModule) {\n if ((await this.node.registered()).includes(witness.address)) {\n const [existingWitness] = await this.node.resolve({ address: [witness.address] })\n await this.node.unregister(existingWitness)\n }\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { MemorySentinel, MemorySentinelParams } from '@xyo-network/sentinel-memory'\nimport { SentinelConfig } from '@xyo-network/sentinel-model'\n\nexport class SentinelBuilder {\n private _sentinel: MemorySentinel | undefined\n\n protected constructor(\n private config: SentinelConfig,\n private account: AccountInstance,\n ) {\n assertDefinedEx(config, 'config was not defined')\n }\n\n get sentinel() {\n return assertDefinedEx(this._sentinel, 'this._sentinel not defined upon create')\n }\n\n static async create(config: SentinelConfig, account: AccountInstance): Promise<SentinelBuilder> {\n const instance = new this(config, account)\n instance._sentinel = await instance.buildSentinel()\n return instance\n }\n\n async buildSentinel() {\n const params = this.buildParams()\n return (await MemorySentinel.create(params)) as MemorySentinel\n }\n\n private buildParams(): MemorySentinelParams {\n return {\n account: this.account,\n config: this.config,\n }\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistModule, asArchivistInstance } from '@xyo-network/archivist-model'\nimport { StorageArchivist, StorageArchivistConfig, StorageArchivistConfigSchema } from '@xyo-network/archivist-storage'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { asNodeInstance } from '@xyo-network/node-model'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\n\nexport interface ArchivistBuilderConfig {\n name?: string\n namespace?: string\n}\nexport class StorageArchivistBuilder {\n private _archivist: StorageArchivist | undefined\n private remoteArchivist: ArchivistModule | undefined\n\n protected constructor(\n private config: ArchivistBuilderConfig,\n private account: AccountInstance,\n private node?: MemoryNode,\n ) {}\n\n get archivist() {\n return assertDefinedEx(this._archivist, 'archivist was not defined upon create')\n }\n\n static async create(config: ArchivistBuilderConfig, account: AccountInstance, node: MemoryNode): Promise<StorageArchivistBuilder> {\n const instance = new this(config, account, node)\n instance.remoteArchivist = await instance.findParentArchivist()\n instance._archivist = await instance.buildArchivist()\n return instance\n }\n\n async buildArchivist() {\n const config = this.buildConfig()\n return (await StorageArchivist.create({ account: this.account, config })) as StorageArchivist\n }\n\n buildConfig(): StorageArchivistConfig {\n return {\n name: this.config.name,\n namespace: this.config.namespace,\n parents: {\n commit: this.remoteArchivist ? [this.remoteArchivist?.address] : undefined,\n read: this.remoteArchivist ? [this.remoteArchivist?.address] : undefined,\n },\n schema: StorageArchivistConfigSchema,\n storeParentReads: true,\n type: 'local',\n }\n }\n\n async findParentArchivist() {\n const node = asNodeInstance(this.node, 'node not defined')\n const [bridge] = (await node.resolve({ name: ['RemoteNodeBridge'] })) ?? []\n if (bridge) {\n try {\n const [archivist] = (await bridge.resolve({ name: ['Archivist'] })) ?? []\n return asArchivistInstance(archivist)\n } catch {\n console.error('Error Resolving Parent Archivist', this.node?.config.name, this.config)\n }\n }\n }\n}\n","import { MemoryNode } from '@xyo-network/node-memory'\nimport { defaultNetworkConfigs } from '@xyo-network/react-network'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { MemoryNodeBuilder } from './Builders/index.js'\nimport { RemoteNodeArchivistOffsetPaths, RemoteNodeOffsetPaths } from './ModuleAccountPaths.js'\nimport { RootStorageArchivist } from './ModuleNames.js'\n\nconst knownRemoteNodes = (): { apiDomain: string; name: string }[] => {\n const networkNames = defaultNetworkConfigs.map((config) => config.name)\n return networkNames.map((networkName) => {\n const name = assertDefinedEx<string>(networkName, 'missing name in network config')\n const uri = defaultNetworkConfigs.find((config) => config.name === networkName)?.nodes?.filter((node) => node.type === 'archivist')[0].uri\n const apiDomain = assertDefinedEx<string>(uri, 'missing node type \"archivist\" in network config')\n return {\n apiDomain,\n name,\n }\n })\n}\n\nexport const BuildStandardNodes = async (wallet: WalletInstance, onNodeBuilt?: (node: MemoryNode) => void): Promise<MemoryNode[]> => {\n try {\n return await Promise.all(\n knownRemoteNodes().map(async ({ apiDomain, name }) => {\n const remoteNodeOffset = RemoteNodeOffsetPaths[name]\n const remoteNodeWallet = await wallet.derivePath?.(remoteNodeOffset)\n\n const memoryNodeBuilder = await MemoryNodeBuilder.create({ name }, await remoteNodeWallet.derivePath?.('0'))\n await memoryNodeBuilder.addBridge(apiDomain)\n\n const rootArchivistPath = `${remoteNodeOffset}/${RemoteNodeArchivistOffsetPaths[name][RootStorageArchivist]}`\n const rootArchivistAccount = await wallet.derivePath?.(rootArchivistPath)\n await memoryNodeBuilder.addArchivistStorage(rootArchivistAccount, RootStorageArchivist, 'root')\n\n const { node } = memoryNodeBuilder\n assertDefinedEx(node, 'Memory Node was not built successfully')\n onNodeBuilt?.(node)\n\n return node\n }),\n )\n } catch (e) {\n throw new Error(`Error Creating Known Remote Nodes: ${e}`)\n }\n}\n","export const GlobalNode = 'GlobalNode'\n\nexport const RootStorageArchivist = 'RootStorageArchivist'\n","import { RootStorageArchivist } from './ModuleNames.js'\n\nexport const GlobalNodeOffsetPath = '15'\n\nexport const RemoteNodeOffsetPaths: Record<string, string> = {\n Kerplunk: '112',\n Local: '111',\n Main: '113',\n}\n\nexport const RemoteNodeArchivistOffsetPaths: Record<string, Record<string, string>> = {\n Kerplunk: {\n MemoryNode: '117',\n [RootStorageArchivist]: '119',\n },\n Local: {\n MemoryNode: '114',\n [RootStorageArchivist]: '116',\n },\n Main: {\n MemoryNode: '120',\n [RootStorageArchivist]: '122',\n },\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { StandardNodesContext } from './Context.js'\n\nexport const useStandardNodes = (required = false) => useContextEx(StandardNodesContext, 'StandardNodes', required)\n","import { useProvidedNode } from '@xyo-network/react-node'\nimport { useMemo } from 'react'\n\nimport { useStandardNodes } from '../contexts/index.js'\n\nexport const useActiveNodeAddress = (networkName?: string) => {\n const [node] = useProvidedNode()\n const { nodes, findAddressByName } = useStandardNodes()\n\n const activeNodeAddress = useMemo(() => {\n if (node && nodes && findAddressByName && networkName) {\n return findAddressByName(networkName)\n }\n }, [findAddressByName, networkName, node, nodes])\n\n return activeNodeAddress\n}\n"],"mappings":"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","names":["import_react_network","import_react_node","import_react","import_react_shared","import_node_model","import_react_shared","import_react_shared","import_react_shared","import_react_shared","nodes","import_react_shared","import_react","import_jsx_runtime"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/components/ActiveStandardNode.tsx","../../src/contexts/StandardRemoteNodes/Context.ts","../../src/contexts/StandardRemoteNodes/Providers.tsx","../../src/lib/Builders/MemoryNodeBuilder.ts","../../src/lib/Builders/SentinelBuilder.ts","../../src/lib/Builders/StorageArchivistBuilder.ts","../../src/lib/buildNodes.ts","../../src/lib/ModuleNames.ts","../../src/lib/ModuleAccountPaths.ts","../../src/contexts/StandardRemoteNodes/use.ts","../../src/hooks/useActiveNodeAddress.ts"],"sourcesContent":["export * from './components/index.ts'\nexport * from './contexts/index.ts'\nexport * from './hooks/index.ts'\nexport * from './lib/index.ts'\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { useWeakNodeFromNode } from '@xyo-network/react-node'\nimport React, { useState } from 'react'\n\nimport { useStandardNodes } from '../contexts/index.ts'\nimport { useActiveNodeAddress } from '../hooks/index.ts'\n\nexport interface ActiveStandardNodeProps extends WithChildren {\n nodeNameOrAddress?: string\n}\n\nexport const ActiveStandardNode: React.FC<ActiveStandardNodeProps> = ({ children, nodeNameOrAddress }) => {\n const { network } = useNetwork()\n const [node] = useWeakNodeFromNode(nodeNameOrAddress)\n const [activeRemoteNodeAddress, setActiveRemoteNodeAddress] = useState<string>()\n const { nodes } = useStandardNodes()\n\n const selectedNodeAddress = useActiveNodeAddress(network?.name)\n\n // Probably needs to rely on node events rather than provider values to ensure its registered\n useAsyncEffect(\n async (mounted) => {\n const nodeInstance = node?.deref()\n if (nodeInstance && selectedNodeAddress) {\n try {\n if ((await nodeInstance?.attached())?.includes(selectedNodeAddress)) {\n return\n }\n await nodeInstance?.attach(selectedNodeAddress, true)\n\n if (mounted()) {\n // cleanup\n if (activeRemoteNodeAddress) {\n await nodeInstance?.detach(activeRemoteNodeAddress)\n }\n setActiveRemoteNodeAddress(selectedNodeAddress)\n }\n } catch (e) {\n console.error('Error Attaching Selected Node Address', e)\n }\n }\n },\n [activeRemoteNodeAddress, node, selectedNodeAddress, nodes],\n )\n\n return <>{children}</>\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { StandardNodesState } from './State.ts'\n\nexport const StandardNodesContext = createContextEx<StandardNodesState>()\n","import { usePromise } from '@xylabs/react-promise'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { useWalletContext } from '@xyo-network/react-wallet'\nimport { WalletInstance } from '@xyo-network/wallet-model'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { BuildStandardNodes } from '../../lib/index.ts'\nimport { StandardNodesContext } from './Context.ts'\nimport { StandardNodesState } from './State.ts'\n\nexport interface StandardNodesProviderProps extends WithChildren {\n defaultRemoteNodes?: StandardNodesState['nodes']\n wallet?: WalletInstance | null\n}\n\nexport const StandardNodesProvider: React.FC<StandardNodesProviderProps> = ({ children, defaultRemoteNodes, wallet }) => {\n const [nodes, setNodes] = useState<StandardNodesState['nodes']>(defaultRemoteNodes)\n\n useEffect(() => {\n setNodes(defaultRemoteNodes)\n }, [defaultRemoteNodes])\n\n usePromise(async () => {\n if (wallet) {\n await BuildStandardNodes(wallet, (node: MemoryNode) => {\n setNodes((nodes) => {\n if (nodes?.find(existingNode => existingNode.config.name === node.config.name)) {\n return\n }\n return nodes ? [...nodes, node] : [node]\n })\n })\n }\n }, [wallet])\n\n const findAddressByName = (name?: string) => {\n const validNetworkName = assertDefinedEx(name, 'name was not defined')\n return nodes?.find(node => node.config.name === validNetworkName)?.address\n }\n\n const value = useMemo(() => ({ findAddressByName,\n nodes,\n provided: true }), [findAddressByName,\n nodes])\n\n return (\n <StandardNodesContext.Provider\n value={value}\n >\n {children}\n </StandardNodesContext.Provider>\n )\n}\n\nexport const StandardNodesProviderWithWallet: React.FC<Omit<StandardNodesProviderProps, 'wallet'>> = (props) => {\n const { activeAccount } = useWalletContext()\n return <StandardNodesProvider wallet={activeAccount} {...props} />\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { MemoryArchivist, MemoryArchivistConfig, MemoryArchivistConfigSchema } from '@xyo-network/archivist-memory'\nimport { HttpBridge, HttpBridgeConfigSchema } from '@xyo-network/bridge-http'\nimport { AttachableModuleInstance } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeConfigSchema } from '@xyo-network/node-model'\nimport { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { SentinelConfig } from '@xyo-network/sentinel-model'\nimport { AttachableWitnessInstance, WitnessModule } from '@xyo-network/witness-model'\n\nimport { SentinelBuilder } from './SentinelBuilder.ts'\nimport { StorageArchivistBuilder } from './StorageArchivistBuilder.ts'\n\nexport interface MemoryNodeBuilderConfig {\n name?: string\n node?: MemoryNode\n}\n\nexport class MemoryNodeBuilder {\n private _node: MemoryNode | undefined\n\n get node() {\n return assertDefinedEx(this._node, 'this._node was not defined upon create')\n }\n\n static async create({ name, node }: MemoryNodeBuilderConfig, account?: AccountInstance): Promise<MemoryNodeBuilder> {\n const instance = new this()\n\n const memoryNode: MemoryNode = node ?? (await MemoryNode.create({ account, config: { name, schema: NodeConfigSchema } }))\n instance._node = memoryNode\n return instance\n }\n\n /** @deprecated - call specific method that corresponds to a type of archivist (i.e. addArchivistStorage) */\n async addArchivist(account: AccountInstance, moduleName?: string, namespace?: string) {\n await this.addArchivistStorage(account, moduleName, namespace)\n }\n\n async addArchivistMemory(moduleName?: string, account?: AccountInstance) {\n const config: MemoryArchivistConfig = { name: moduleName, schema: MemoryArchivistConfigSchema }\n const memoryArchivist = await MemoryArchivist.create({ account, config })\n\n await this.attach(memoryArchivist, true)\n }\n\n async addArchivistStorage(account: AccountInstance, moduleName?: string, namespace?: string) {\n const config = { name: moduleName, namespace }\n const { archivist } = await StorageArchivistBuilder.create(config, account, this.node)\n\n await this.attach(archivist, true)\n }\n\n async addBridge(apiDomain: string, moduleName = 'RemoteNodeBridge', account?: AccountInstance) {\n try {\n const bridge = await HttpBridge.create({\n account,\n config: { name: moduleName, nodeUrl: `${apiDomain}/node`, schema: HttpBridgeConfigSchema, security: { allowAnonymous: true } },\n })\n await this.attach(bridge, true)\n } catch (e) {\n console.error('Error Creating Bridge', e)\n }\n }\n\n async addSentinel(config: SentinelConfig, account: AccountInstance) {\n const { sentinel } = await SentinelBuilder.create(config, account)\n await this.attach(sentinel, true, true)\n return sentinel\n }\n\n async addWitnesses(pluginSetResolver: PayloadSetPluginResolver, witnesses: (() => Promise<AttachableWitnessInstance>)[] = []) {\n await Promise.all(\n pluginSetResolver.witnesses().map(async (pluginSet, index) => {\n // Pass the prebuilt witness at the same index\n const witness = await witnesses?.[index]?.()\n if (witness) {\n try {\n await this.witnessCleanup(witness)\n await this.node.register(witness)\n await this.node.attach(witness.address, true)\n } catch (e) {\n console.error('Error attaching witness', JSON.stringify(pluginSet, null, 2), e)\n }\n }\n }),\n )\n }\n\n async attach(mod: AttachableModuleInstance, external?: boolean, safeAttach?: boolean) {\n try {\n if (safeAttach) {\n const existingModule = (await this.node.resolve({ address: [mod.address] })).pop()\n if (existingModule) {\n await this.node.detach(existingModule.address)\n await this.node.unregister(existingModule)\n }\n }\n await this.node.register(mod)\n await this.node.attach(mod.address, external)\n } catch (e) {\n throw new Error(`Error adding ${mod.config.name ?? mod.address} to MemoryNode: ${e}`)\n }\n }\n\n private async witnessCleanup(witness: WitnessModule) {\n if ((await this.node.registered()).includes(witness.address)) {\n const [existingWitness] = await this.node.resolve({ address: [witness.address] })\n await this.node.unregister(existingWitness)\n }\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { MemorySentinel, MemorySentinelParams } from '@xyo-network/sentinel-memory'\nimport { SentinelConfig } from '@xyo-network/sentinel-model'\n\nexport class SentinelBuilder {\n private _sentinel: MemorySentinel | undefined\n\n protected constructor(\n private config: SentinelConfig,\n private account: AccountInstance,\n ) {\n assertDefinedEx(config, 'config was not defined')\n }\n\n get sentinel() {\n return assertDefinedEx(this._sentinel, 'this._sentinel not defined upon create')\n }\n\n static async create(config: SentinelConfig, account: AccountInstance): Promise<SentinelBuilder> {\n const instance = new this(config, account)\n instance._sentinel = await instance.buildSentinel()\n return instance\n }\n\n async buildSentinel() {\n const params = this.buildParams()\n return (await MemorySentinel.create(params)) as MemorySentinel\n }\n\n private buildParams(): MemorySentinelParams {\n return {\n account: this.account,\n config: this.config,\n }\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistModule, asArchivistInstance } from '@xyo-network/archivist-model'\nimport { StorageArchivist, StorageArchivistConfig, StorageArchivistConfigSchema } from '@xyo-network/archivist-storage'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { asNodeInstance } from '@xyo-network/node-model'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\n\nexport interface ArchivistBuilderConfig {\n name?: string\n namespace?: string\n}\nexport class StorageArchivistBuilder {\n private _archivist: StorageArchivist | undefined\n private remoteArchivist: ArchivistModule | undefined\n\n protected constructor(\n private config: ArchivistBuilderConfig,\n private account: AccountInstance,\n private node?: MemoryNode,\n ) {}\n\n get archivist() {\n return assertDefinedEx(this._archivist, 'archivist was not defined upon create')\n }\n\n static async create(config: ArchivistBuilderConfig, account: AccountInstance, node: MemoryNode): Promise<StorageArchivistBuilder> {\n const instance = new this(config, account, node)\n instance.remoteArchivist = await instance.findParentArchivist()\n instance._archivist = await instance.buildArchivist()\n return instance\n }\n\n async buildArchivist() {\n const config = this.buildConfig()\n return (await StorageArchivist.create({ account: this.account, config })) as StorageArchivist\n }\n\n buildConfig(): StorageArchivistConfig {\n return {\n name: this.config.name,\n namespace: this.config.namespace,\n parents: {\n commit: this.remoteArchivist ? [this.remoteArchivist?.address] : undefined,\n read: this.remoteArchivist ? [this.remoteArchivist?.address] : undefined,\n },\n schema: StorageArchivistConfigSchema,\n storeParentReads: true,\n type: 'local',\n }\n }\n\n async findParentArchivist() {\n const node = asNodeInstance(this.node, 'node not defined')\n const [bridge] = (await node.resolve({ name: ['RemoteNodeBridge'] })) ?? []\n if (bridge) {\n try {\n const [archivist] = (await bridge.resolve({ name: ['Archivist'] })) ?? []\n return asArchivistInstance(archivist)\n } catch {\n console.error('Error Resolving Parent Archivist', this.node?.config.name, this.config)\n }\n }\n }\n}\n","import { MemoryNode } from '@xyo-network/node-memory'\nimport { defaultNetworkConfigs } from '@xyo-network/react-network'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { MemoryNodeBuilder } from './Builders/index.ts'\nimport { RemoteNodeArchivistOffsetPaths, RemoteNodeOffsetPaths } from './ModuleAccountPaths.ts'\nimport { RootStorageArchivist } from './ModuleNames.ts'\n\nconst knownRemoteNodes = (): { apiDomain: string; name: string }[] => {\n const networkNames = defaultNetworkConfigs.map(config => config.name)\n return networkNames.map((networkName) => {\n const name = assertDefinedEx<string>(networkName, 'missing name in network config')\n const uri = defaultNetworkConfigs.find(config => config.name === networkName)?.nodes?.filter(node => node.type === 'archivist')[0].uri\n const apiDomain = assertDefinedEx<string>(uri, 'missing node type \"archivist\" in network config')\n return {\n apiDomain,\n name,\n }\n })\n}\n\nexport const BuildStandardNodes = async (wallet: WalletInstance, onNodeBuilt?: (node: MemoryNode) => void): Promise<MemoryNode[]> => {\n try {\n return await Promise.all(\n knownRemoteNodes().map(async ({ apiDomain, name }) => {\n const remoteNodeOffset = RemoteNodeOffsetPaths[name]\n const remoteNodeWallet = await wallet.derivePath?.(remoteNodeOffset)\n\n const memoryNodeBuilder = await MemoryNodeBuilder.create({ name }, await remoteNodeWallet.derivePath?.('0'))\n await memoryNodeBuilder.addBridge(apiDomain)\n\n const rootArchivistPath = `${remoteNodeOffset}/${RemoteNodeArchivistOffsetPaths[name][RootStorageArchivist]}`\n const rootArchivistAccount = await wallet.derivePath?.(rootArchivistPath)\n await memoryNodeBuilder.addArchivistStorage(rootArchivistAccount, RootStorageArchivist, 'root')\n\n const { node } = memoryNodeBuilder\n assertDefinedEx(node, 'Memory Node was not built successfully')\n onNodeBuilt?.(node)\n\n return node\n }),\n )\n } catch (e) {\n throw new Error(`Error Creating Known Remote Nodes: ${e}`)\n }\n}\n","export const GlobalNode = 'GlobalNode'\n\nexport const RootStorageArchivist = 'RootStorageArchivist'\n","import { RootStorageArchivist } from './ModuleNames.ts'\n\nexport const GlobalNodeOffsetPath = '15'\n\nexport const RemoteNodeOffsetPaths: Record<string, string> = {\n Kerplunk: '112',\n Local: '111',\n Main: '113',\n}\n\nexport const RemoteNodeArchivistOffsetPaths: Record<string, Record<string, string>> = {\n Kerplunk: {\n MemoryNode: '117',\n [RootStorageArchivist]: '119',\n },\n Local: {\n MemoryNode: '114',\n [RootStorageArchivist]: '116',\n },\n Main: {\n MemoryNode: '120',\n [RootStorageArchivist]: '122',\n },\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { StandardNodesContext } from './Context.ts'\n\nexport const useStandardNodes = (required = false) => useContextEx(StandardNodesContext, 'StandardNodes', required)\n","import { useProvidedNode } from '@xyo-network/react-node'\nimport { useMemo } from 'react'\n\nimport { useStandardNodes } from '../contexts/index.ts'\n\nexport const useActiveNodeAddress = (networkName?: string) => {\n const [node] = useProvidedNode()\n const { nodes, findAddressByName } = useStandardNodes()\n\n const activeNodeAddress = useMemo(() => {\n if (node && nodes && findAddressByName && networkName) {\n return findAddressByName(networkName)\n }\n }, [findAddressByName, networkName, node, nodes])\n\n return activeNodeAddress\n}\n"],"mappings":"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","names":["import_react_network","import_react_node","import_react","StandardNodesContext","createContextEx","import_react_shared","import_node_model","import_react_shared","import_react_shared","SentinelBuilder","_sentinel","config","account","assertDefinedEx","sentinel","create","instance","buildSentinel","params","buildParams","MemorySentinel","import_react_shared","StorageArchivistBuilder","_archivist","remoteArchivist","config","account","node","archivist","assertDefinedEx","create","instance","findParentArchivist","buildArchivist","buildConfig","StorageArchivist","name","namespace","parents","commit","address","undefined","read","schema","StorageArchivistConfigSchema","storeParentReads","type","asNodeInstance","bridge","resolve","asArchivistInstance","console","error","MemoryNodeBuilder","_node","node","assertDefinedEx","create","name","account","instance","memoryNode","MemoryNode","config","schema","NodeConfigSchema","addArchivist","moduleName","namespace","addArchivistStorage","addArchivistMemory","MemoryArchivistConfigSchema","memoryArchivist","MemoryArchivist","attach","archivist","StorageArchivistBuilder","addBridge","apiDomain","bridge","HttpBridge","nodeUrl","HttpBridgeConfigSchema","security","allowAnonymous","e","console","error","addSentinel","sentinel","SentinelBuilder","addWitnesses","pluginSetResolver","witnesses","Promise","all","map","pluginSet","index","witness","witnessCleanup","register","address","JSON","stringify","mod","external","safeAttach","existingModule","resolve","pop","detach","unregister","Error","registered","includes","existingWitness","import_react_shared","GlobalNode","RootStorageArchivist","GlobalNodeOffsetPath","RemoteNodeOffsetPaths","Kerplunk","Local","Main","RemoteNodeArchivistOffsetPaths","MemoryNode","RootStorageArchivist","knownRemoteNodes","networkNames","defaultNetworkConfigs","map","config","name","networkName","assertDefinedEx","uri","find","nodes","filter","node","type","apiDomain","BuildStandardNodes","wallet","onNodeBuilt","Promise","all","remoteNodeOffset","RemoteNodeOffsetPaths","remoteNodeWallet","derivePath","memoryNodeBuilder","MemoryNodeBuilder","create","addBridge","rootArchivistPath","RemoteNodeArchivistOffsetPaths","RootStorageArchivist","rootArchivistAccount","addArchivistStorage","e","Error","StandardNodesProvider","children","defaultRemoteNodes","wallet","nodes","setNodes","useState","useEffect","usePromise","BuildStandardNodes","node","find","existingNode","config","name","findAddressByName","validNetworkName","assertDefinedEx","address","value","useMemo","provided","React","StandardNodesContext","Provider","StandardNodesProviderWithWallet","props","activeAccount","useWalletContext","import_react_shared","useStandardNodes","required","useContextEx","StandardNodesContext","import_react","useActiveNodeAddress","networkName","node","useProvidedNode","nodes","findAddressByName","useStandardNodes","activeNodeAddress","useMemo","ActiveStandardNode","children","nodeNameOrAddress","network","useNetwork","node","useWeakNodeFromNode","activeRemoteNodeAddress","setActiveRemoteNodeAddress","useState","nodes","useStandardNodes","selectedNodeAddress","useActiveNodeAddress","name","useAsyncEffect","mounted","nodeInstance","deref","attached","includes","attach","detach","e","console","error","React"]}
@@ -1,5 +1,5 @@
1
- export * from './components/index.js';
2
- export * from './contexts/index.js';
3
- export * from './hooks/index.js';
4
- export * from './lib/index.js';
1
+ export * from './components/index.ts';
2
+ export * from './contexts/index.ts';
3
+ export * from './hooks/index.ts';
4
+ export * from './lib/index.ts';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
- export * from './components/index.js';
2
- export * from './contexts/index.js';
3
- export * from './hooks/index.js';
4
- export * from './lib/index.js';
1
+ export * from './components/index.ts';
2
+ export * from './contexts/index.ts';
3
+ export * from './hooks/index.ts';
4
+ export * from './lib/index.ts';
5
5
  //# sourceMappingURL=index.d.ts.map