@xyo-network/bridge-module-resolver 2.67.0-rc.1 → 2.67.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/ModuleResolver.js +7 -3
- package/dist/cjs/ModuleResolver.js.map +1 -1
- package/dist/cjs/ProxyModule.js +7 -5
- package/dist/cjs/ProxyModule.js.map +1 -1
- package/dist/esm/ModuleResolver.js +7 -3
- package/dist/esm/ModuleResolver.js.map +1 -1
- package/dist/esm/ProxyModule.js +8 -5
- package/dist/esm/ProxyModule.js.map +1 -1
- package/dist/types/ModuleResolver.d.ts +1 -0
- package/dist/types/ModuleResolver.d.ts.map +1 -1
- package/dist/types/ProxyModule.d.ts +48 -41
- package/dist/types/ProxyModule.d.ts.map +1 -1
- package/package.json +20 -20
- package/src/ModuleResolver.ts +8 -4
- package/src/ProxyModule.ts +13 -10
|
@@ -23,6 +23,7 @@ class BridgeModuleResolver extends module_1.CompositeModuleResolver {
|
|
|
23
23
|
super();
|
|
24
24
|
this.bridge = bridge;
|
|
25
25
|
this.wrapperAccount = wrapperAccount;
|
|
26
|
+
this.primed = this.resolveRemoteModules();
|
|
26
27
|
this.resolvedModules = {};
|
|
27
28
|
}
|
|
28
29
|
get isModuleResolver() {
|
|
@@ -65,6 +66,8 @@ class BridgeModuleResolver extends module_1.CompositeModuleResolver {
|
|
|
65
66
|
resolve(nameOrAddressOrFilter) {
|
|
66
67
|
var _a;
|
|
67
68
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
69
|
+
yield this.primed;
|
|
70
|
+
yield this.resolveRemoteModules();
|
|
68
71
|
if (typeof nameOrAddressOrFilter === 'string') {
|
|
69
72
|
const result = (_a = (yield this.resolveByAddress(nameOrAddressOrFilter))) !== null && _a !== void 0 ? _a : (yield this.resolveByName(nameOrAddressOrFilter));
|
|
70
73
|
return result;
|
|
@@ -89,10 +92,10 @@ class BridgeModuleResolver extends module_1.CompositeModuleResolver {
|
|
|
89
92
|
return yield cached;
|
|
90
93
|
this.resolvedModules[targetAddress] =
|
|
91
94
|
(_a = this.resolvedModules[targetAddress]) !== null && _a !== void 0 ? _a : ((address) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
//discover it to set the config in the bridge
|
|
96
|
+
yield this.bridge.targetDiscover(address);
|
|
92
97
|
const mod = new ProxyModule_1.ProxyModule({ address, bridge: this.bridge, config: { schema: ProxyModule_1.ProxyModuleConfigSchema } });
|
|
93
98
|
try {
|
|
94
|
-
//discover it to set the config in the bridge
|
|
95
|
-
yield this.bridge.targetDiscover(address);
|
|
96
99
|
if ((0, archivist_model_1.isArchivistModule)(mod)) {
|
|
97
100
|
return archivist_wrapper_1.ArchivistWrapper.wrap(mod, this.wrapperAccount);
|
|
98
101
|
}
|
|
@@ -122,7 +125,8 @@ class BridgeModuleResolver extends module_1.CompositeModuleResolver {
|
|
|
122
125
|
}
|
|
123
126
|
resolveByName(name) {
|
|
124
127
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
|
|
128
|
+
const modules = yield this.currentResolvedModules();
|
|
129
|
+
return Object.values(modules)
|
|
126
130
|
.filter((module) => module.config.name === name)
|
|
127
131
|
.pop();
|
|
128
132
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleResolver.js","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":";;;;AACA,gFAAmF;AACnF,kEAAgE;AAChE,sEAAiE;AAEjE,kDAAqD;AACrD,8DAA4D;AAC5D,8CAAgD;AAChD,gDAA4E;AAU5E,wDAAsD;AACtD,4DAAuD;AACvD,oDAAyE;AACzE,8DAA4D;AAC5D,kEAA6D;AAC7D,qEAAoC;AAEpC,+CAAuF;AAEvF,MAAa,oBAAqB,SAAQ,gCAAuB;
|
|
1
|
+
{"version":3,"file":"ModuleResolver.js","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/ProxyModule.js
CHANGED
|
@@ -9,18 +9,20 @@ const module_1 = require("@xyo-network/module");
|
|
|
9
9
|
const compact_1 = tslib_1.__importDefault(require("lodash/compact"));
|
|
10
10
|
exports.ProxyModuleConfigSchema = 'network.xyo.module.proxy.config';
|
|
11
11
|
class ProxyModule extends module_1.BaseEmitter {
|
|
12
|
-
constructor(
|
|
13
|
-
super(
|
|
12
|
+
constructor(proxyParams) {
|
|
13
|
+
super({ config: proxyParams.bridge.targetConfig(proxyParams.address) });
|
|
14
|
+
this.proxyParams = proxyParams;
|
|
14
15
|
this.upResolver = new module_1.CompositeModuleResolver();
|
|
15
16
|
}
|
|
16
17
|
get address() {
|
|
17
|
-
return this.
|
|
18
|
+
return this.proxyParams.address.toLowerCase();
|
|
18
19
|
}
|
|
19
20
|
get bridge() {
|
|
20
|
-
return this.
|
|
21
|
+
return this.proxyParams.bridge;
|
|
21
22
|
}
|
|
22
23
|
get config() {
|
|
23
|
-
|
|
24
|
+
const config = this.bridge.targetConfig(this.address);
|
|
25
|
+
return config;
|
|
24
26
|
}
|
|
25
27
|
get downResolver() {
|
|
26
28
|
return this.bridge.targetDownResolver(this.address);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,gFAAmF;AAGnF,gEAA0F;AAC1F,
|
|
1
|
+
{"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,gFAAmF;AAGnF,gEAA0F;AAC1F,gDAY4B;AAG5B,qEAAoC;AAGvB,QAAA,uBAAuB,GAA4B,iCAAiC,CAAA;AAYjG,MAAa,WAAY,SAAQ,oBAA0C;IAGzE,YAAmB,WAA8B;QAC/C,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QADtD,gBAAW,GAAX,WAAW,CAAmB;QAFxC,eAAU,GAAG,IAAI,gCAAuB,EAAE,CAAA;IAInD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;IAC/C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAA;IAChC,CAAC;IAED,IAAI,MAAM;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACrD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAED,mBAAmB;QACjB,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC;IAEK,QAAQ;;;YACZ,MAAM,WAAW,GAAsB;gBACrC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAA;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBACpB,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;aACpC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;YAEtC,WAAW,CAAC,QAAQ,GAAG,IAAA,iBAAO,EAC5B,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACxB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,sCAAa,CAAC,CAAC,CAAE,OAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;gBAClG,OAAO,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;YACtD,CAAC,CAAC,mCAAI,EAAE,CACT,CAAA;YAED,OAAO,WAAW,CAAA;;KACnB;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;IACrC,CAAC;IAED,QAAQ;;QACN,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,IAAI,mCAAI,WAAW,CAAA;QAC5C,OAAO,EAAE,MAAM,kBAAI,IAAI,IAAK,IAAI,CAAC,MAAM,CAAE,EAAE,MAAM,EAAE,sCAAqB,EAAE,CAAA;IAC5E,CAAC;IAED,aAAa;QACX,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC;IAED,YAAY;QACV,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC;IAEK,KAAK,CAAkD,KAAQ,EAAE,QAAoB;;YACzF,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,qBAAqB,CAAC,CAAA;YAC5G,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3E,OAAO,MAAM,CAAA;QACf,CAAC;KAAA;IAEK,SAAS,CAAC,KAAwB,EAAE,QAAoB,EAAE,WAA0B;;YACxF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QACtF,CAAC;KAAA;IAKK,OAAO,CACX,qBAA6C,EAC7C,OAA6B;;YAE7B,IAAI,OAAO,qBAAqB,KAAK,QAAQ,EAAE;gBAC7C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAA;aACrF;iBAAM;gBACL,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAA;aACrF;QACH,CAAC;KAAA;CACF;AA7FD,kCA6FC"}
|
|
@@ -15,6 +15,7 @@ import { ProxyModule, ProxyModuleConfigSchema } from './ProxyModule';
|
|
|
15
15
|
export class BridgeModuleResolver extends CompositeModuleResolver {
|
|
16
16
|
bridge;
|
|
17
17
|
wrapperAccount;
|
|
18
|
+
primed = this.resolveRemoteModules();
|
|
18
19
|
remoteAddresses;
|
|
19
20
|
resolvedModules = {};
|
|
20
21
|
// TODO: Allow optional ctor param for supplying address for nested Nodes
|
|
@@ -58,6 +59,8 @@ export class BridgeModuleResolver extends CompositeModuleResolver {
|
|
|
58
59
|
throw new Error('Method not implemented.');
|
|
59
60
|
}
|
|
60
61
|
async resolve(nameOrAddressOrFilter) {
|
|
62
|
+
await this.primed;
|
|
63
|
+
await this.resolveRemoteModules();
|
|
61
64
|
if (typeof nameOrAddressOrFilter === 'string') {
|
|
62
65
|
const result = (await this.resolveByAddress(nameOrAddressOrFilter)) ?? (await this.resolveByName(nameOrAddressOrFilter));
|
|
63
66
|
return result;
|
|
@@ -80,10 +83,10 @@ export class BridgeModuleResolver extends CompositeModuleResolver {
|
|
|
80
83
|
this.resolvedModules[targetAddress] =
|
|
81
84
|
this.resolvedModules[targetAddress] ??
|
|
82
85
|
(async (address) => {
|
|
86
|
+
//discover it to set the config in the bridge
|
|
87
|
+
await this.bridge.targetDiscover(address);
|
|
83
88
|
const mod = new ProxyModule({ address, bridge: this.bridge, config: { schema: ProxyModuleConfigSchema } });
|
|
84
89
|
try {
|
|
85
|
-
//discover it to set the config in the bridge
|
|
86
|
-
await this.bridge.targetDiscover(address);
|
|
87
90
|
if (isArchivistModule(mod)) {
|
|
88
91
|
return ArchivistWrapper.wrap(mod, this.wrapperAccount);
|
|
89
92
|
}
|
|
@@ -111,7 +114,8 @@ export class BridgeModuleResolver extends CompositeModuleResolver {
|
|
|
111
114
|
return await this.resolvedModules[targetAddress];
|
|
112
115
|
}
|
|
113
116
|
async resolveByName(name) {
|
|
114
|
-
|
|
117
|
+
const modules = await this.currentResolvedModules();
|
|
118
|
+
return Object.values(modules)
|
|
115
119
|
.filter((module) => module.config.name === name)
|
|
116
120
|
.pop();
|
|
117
121
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleResolver.js","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAU5E,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,OAAO,MAAM,gBAAgB,CAAA;AAEpC,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAqB,MAAM,eAAe,CAAA;AAEvF,MAAM,OAAO,oBAAqB,SAAQ,uBAAuB;
|
|
1
|
+
{"version":3,"file":"ModuleResolver.js","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/ProxyModule.js
CHANGED
|
@@ -5,18 +5,21 @@ import { BaseEmitter, CompositeModuleResolver, } from '@xyo-network/module';
|
|
|
5
5
|
import compact from 'lodash/compact';
|
|
6
6
|
export const ProxyModuleConfigSchema = 'network.xyo.module.proxy.config';
|
|
7
7
|
export class ProxyModule extends BaseEmitter {
|
|
8
|
+
proxyParams;
|
|
8
9
|
upResolver = new CompositeModuleResolver();
|
|
9
|
-
constructor(
|
|
10
|
-
super(
|
|
10
|
+
constructor(proxyParams) {
|
|
11
|
+
super({ config: proxyParams.bridge.targetConfig(proxyParams.address) });
|
|
12
|
+
this.proxyParams = proxyParams;
|
|
11
13
|
}
|
|
12
14
|
get address() {
|
|
13
|
-
return this.
|
|
15
|
+
return this.proxyParams.address.toLowerCase();
|
|
14
16
|
}
|
|
15
17
|
get bridge() {
|
|
16
|
-
return this.
|
|
18
|
+
return this.proxyParams.bridge;
|
|
17
19
|
}
|
|
18
20
|
get config() {
|
|
19
|
-
|
|
21
|
+
const config = this.bridge.targetConfig(this.address);
|
|
22
|
+
return config;
|
|
20
23
|
}
|
|
21
24
|
get downResolver() {
|
|
22
25
|
return this.bridge.targetDownResolver(this.address);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAkB,aAAa,EAAE,MAAM,qCAAqC,CAAA;AAGnF,OAAO,EAAE,qBAAqB,EAAyB,MAAM,6BAA6B,CAAA;AAC1F,OAAO,EAEL,WAAW,EACX,uBAAuB,
|
|
1
|
+
{"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { Module, ModuleFilter, ModuleInstance, ModuleResolver } from '@xyo-netwo
|
|
|
5
5
|
export declare class BridgeModuleResolver extends CompositeModuleResolver implements ModuleResolver {
|
|
6
6
|
protected readonly bridge: BridgeModule;
|
|
7
7
|
protected wrapperAccount: AccountInstance;
|
|
8
|
+
private primed;
|
|
8
9
|
private remoteAddresses?;
|
|
9
10
|
private resolvedModules;
|
|
10
11
|
constructor(bridge: BridgeModule, wrapperAccount: AccountInstance);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleResolver.d.ts","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAI5D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAIxD,OAAO,EAAE,uBAAuB,EAAiB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAEL,MAAM,EACN,YAAY,EACZ,cAAc,EACd,cAAc,EAGf,MAAM,2BAA2B,CAAA;AAUlC,qBAAa,oBAAqB,SAAQ,uBAAwB,YAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"ModuleResolver.d.ts","sourceRoot":"","sources":["../../src/ModuleResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAI5D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAIxD,OAAO,EAAE,uBAAuB,EAAiB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAEL,MAAM,EACN,YAAY,EACZ,cAAc,EACd,cAAc,EAGf,MAAM,2BAA2B,CAAA;AAUlC,qBAAa,oBAAqB,SAAQ,uBAAwB,YAAW,cAAc;IAQvF,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY;IACvC,SAAS,CAAC,cAAc,EAAE,eAAe;IAR3C,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,eAAe,CAAC,CAAmB;IAC3C,OAAO,CAAC,eAAe,CAA8C;gBAKhD,MAAM,EAAE,YAAY,EAC7B,cAAc,EAAE,eAAe;IAK3C,IAAa,gBAAgB,IAAI,OAAO,CAEvC;IAEQ,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IACzB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAK9B,sBAAsB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAW/F,kBAAkB;IAmBf,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAInC,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;YAcpE,gBAAgB;YAoDhB,aAAa;YAOb,cAAc;YAUd,oBAAoB;YAiBpB,6BAA6B;YAI7B,0BAA0B;YAI1B,2BAA2B;CAG1C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
|
|
2
2
|
import { BridgeModule } from '@xyo-network/bridge-model';
|
|
3
3
|
import { ModuleManifestPayload } from '@xyo-network/manifest-model';
|
|
4
|
-
import { AddressPreviousHashPayload, BaseEmitter, CompositeModuleResolver,
|
|
4
|
+
import { AddressPreviousHashPayload, BaseEmitter, CompositeModuleResolver, ModuleConfig, ModuleDescription, ModuleEventData, ModuleFilter, ModuleFilterOptions, ModuleInstance, ModuleParams, ModuleQueryResult } from '@xyo-network/module';
|
|
5
5
|
import { Payload } from '@xyo-network/payload-model';
|
|
6
6
|
import { Promisable } from '@xyo-network/promise';
|
|
7
7
|
export type ProxyModuleConfigSchema = 'network.xyo.module.proxy.config';
|
|
@@ -13,46 +13,53 @@ export type ProxyModuleParams = ModuleParams<TProxyModuleConfig, {
|
|
|
13
13
|
address: string;
|
|
14
14
|
bridge: BridgeModule;
|
|
15
15
|
}>;
|
|
16
|
-
export declare class ProxyModule extends BaseEmitter<
|
|
16
|
+
export declare class ProxyModule extends BaseEmitter<ModuleParams, ModuleEventData> implements ModuleInstance<ModuleParams, ModuleEventData> {
|
|
17
|
+
proxyParams: ProxyModuleParams;
|
|
17
18
|
readonly upResolver: CompositeModuleResolver;
|
|
18
|
-
constructor(
|
|
19
|
+
constructor(proxyParams: ProxyModuleParams);
|
|
19
20
|
get address(): string;
|
|
20
|
-
get bridge(): BridgeModule<import("@xyo-network/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
readonly
|
|
30
|
-
readonly
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
readonly
|
|
43
|
-
readonly
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
schema
|
|
53
|
-
|
|
54
|
-
schema
|
|
55
|
-
|
|
21
|
+
get bridge(): BridgeModule<import("@xyo-network/core").BaseParamsFields & {
|
|
22
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
23
|
+
accountDerivationPath?: string | undefined;
|
|
24
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
25
|
+
readonly archivist?: import("@xyo-network/module").ArchivistModuleConfig | undefined;
|
|
26
|
+
readonly name?: string | undefined;
|
|
27
|
+
readonly paging?: Record<string, {
|
|
28
|
+
size?: number | undefined;
|
|
29
|
+
}> | undefined;
|
|
30
|
+
readonly schema: string;
|
|
31
|
+
readonly security?: {
|
|
32
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
33
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
34
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
35
|
+
} | undefined;
|
|
36
|
+
readonly storeQueries?: boolean | undefined;
|
|
37
|
+
} & Omit<Omit<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
38
|
+
readonly archivist?: import("@xyo-network/module").ArchivistModuleConfig | undefined;
|
|
39
|
+
readonly name?: string | undefined;
|
|
40
|
+
readonly paging?: Record<string, {
|
|
41
|
+
size?: number | undefined;
|
|
42
|
+
}> | undefined;
|
|
43
|
+
readonly schema: "network.xyo.bridge.config";
|
|
44
|
+
readonly security?: {
|
|
45
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
46
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
47
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
48
|
+
} | undefined;
|
|
49
|
+
readonly storeQueries?: boolean | undefined;
|
|
50
|
+
} & Omit<{
|
|
51
|
+
discoverCache?: true | import("@xyo-network/bridge-model").CacheConfig | undefined;
|
|
52
|
+
schema: "network.xyo.bridge.config";
|
|
53
|
+
}, "schema"> & {
|
|
54
|
+
schema: "network.xyo.bridge.config";
|
|
55
|
+
}, "schema"> & {
|
|
56
|
+
schema: string;
|
|
57
|
+
}, "schema"> & {
|
|
58
|
+
schema: string;
|
|
59
|
+
};
|
|
60
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
61
|
+
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
62
|
+
}, ModuleEventData>;
|
|
56
63
|
get config(): ModuleConfig;
|
|
57
64
|
get downResolver(): import("@xyo-network/module").ModuleResolver;
|
|
58
65
|
get queries(): string[];
|
|
@@ -64,7 +71,7 @@ export declare class ProxyModule extends BaseEmitter<ProxyModuleParams, ModuleEv
|
|
|
64
71
|
previousHash(): Promise<string | undefined>;
|
|
65
72
|
query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>;
|
|
66
73
|
queryable(query: QueryBoundWitness, payloads?: Payload[], queryConfig?: ModuleConfig): Promise<boolean>;
|
|
67
|
-
resolve(filter?: ModuleFilter, options?: ModuleFilterOptions): Promise<
|
|
68
|
-
resolve(nameOrAddress: string, options?: ModuleFilterOptions): Promise<
|
|
74
|
+
resolve(filter?: ModuleFilter, options?: ModuleFilterOptions): Promise<ModuleInstance[]>;
|
|
75
|
+
resolve(nameOrAddress: string, options?: ModuleFilterOptions): Promise<ModuleInstance | undefined>;
|
|
69
76
|
}
|
|
70
77
|
//# sourceMappingURL=ProxyModule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyModule.d.ts","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAyB,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAC1F,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,uBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"ProxyModule.d.ts","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAyB,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAC1F,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,MAAM,uBAAuB,GAAG,iCAAiC,CAAA;AACvE,eAAO,MAAM,uBAAuB,EAAE,uBAA2D,CAAA;AAEjG,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC;IAAE,MAAM,EAAE,uBAAuB,CAAA;CAAE,CAAC,CAAA;AAElF,MAAM,MAAM,iBAAiB,GAAG,YAAY,CAC1C,kBAAkB,EAClB;IACE,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,YAAY,CAAA;CACrB,CACF,CAAA;AAED,qBAAa,WAAY,SAAQ,WAAW,CAAC,YAAY,EAAE,eAAe,CAAE,YAAW,cAAc,CAAC,YAAY,EAAE,eAAe,CAAC;IAG/G,WAAW,EAAE,iBAAiB;IAFjD,QAAQ,CAAC,UAAU,0BAAgC;gBAEhC,WAAW,EAAE,iBAAiB;IAIjD,IAAI,OAAO,WAEV;IAED,IAAI,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAET;IAED,IAAI,MAAM,IAAI,YAAY,CAGzB;IAED,IAAI,YAAY,iDAEf;IAED,IAAI,OAAO,aAEV;IAED,mBAAmB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAIpD,QAAQ,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAqB5C,QAAQ,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;IAIjC,QAAQ,IAAI,UAAU,CAAC,qBAAqB,CAAC;IAK7C,aAAa,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAItD,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIrC,KAAK,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAMlH,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAK7G,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACxF,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;CAWnG"}
|
package/package.json
CHANGED
|
@@ -11,25 +11,25 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/assert": "^2.9.3",
|
|
14
|
-
"@xyo-network/account-model": "~2.67.0-rc.
|
|
15
|
-
"@xyo-network/address-payload-plugin": "~2.67.0-rc.
|
|
16
|
-
"@xyo-network/archivist-model": "~2.67.0-rc.
|
|
17
|
-
"@xyo-network/archivist-wrapper": "~2.67.0-rc.
|
|
18
|
-
"@xyo-network/boundwitness-builder": "~2.67.0-rc.
|
|
19
|
-
"@xyo-network/bridge-model": "~2.67.0-rc.
|
|
20
|
-
"@xyo-network/diviner": "~2.67.0-rc.
|
|
21
|
-
"@xyo-network/diviner-model": "~2.67.0-rc.
|
|
22
|
-
"@xyo-network/error": "~2.67.0-rc.
|
|
23
|
-
"@xyo-network/manifest-model": "~2.67.0-rc.
|
|
24
|
-
"@xyo-network/module": "~2.67.0-rc.
|
|
25
|
-
"@xyo-network/module-model": "~2.67.0-rc.
|
|
26
|
-
"@xyo-network/node-model": "~2.67.0-rc.
|
|
27
|
-
"@xyo-network/node-wrapper": "~2.67.0-rc.
|
|
28
|
-
"@xyo-network/payload-model": "~2.67.0-rc.
|
|
29
|
-
"@xyo-network/promise": "~2.67.0-rc.
|
|
30
|
-
"@xyo-network/sentinel": "~2.67.0-rc.
|
|
31
|
-
"@xyo-network/witness-model": "~2.67.0-rc.
|
|
32
|
-
"@xyo-network/witness-wrapper": "~2.67.0-rc.
|
|
14
|
+
"@xyo-network/account-model": "~2.67.0-rc.2",
|
|
15
|
+
"@xyo-network/address-payload-plugin": "~2.67.0-rc.2",
|
|
16
|
+
"@xyo-network/archivist-model": "~2.67.0-rc.2",
|
|
17
|
+
"@xyo-network/archivist-wrapper": "~2.67.0-rc.2",
|
|
18
|
+
"@xyo-network/boundwitness-builder": "~2.67.0-rc.2",
|
|
19
|
+
"@xyo-network/bridge-model": "~2.67.0-rc.2",
|
|
20
|
+
"@xyo-network/diviner": "~2.67.0-rc.2",
|
|
21
|
+
"@xyo-network/diviner-model": "~2.67.0-rc.2",
|
|
22
|
+
"@xyo-network/error": "~2.67.0-rc.2",
|
|
23
|
+
"@xyo-network/manifest-model": "~2.67.0-rc.2",
|
|
24
|
+
"@xyo-network/module": "~2.67.0-rc.2",
|
|
25
|
+
"@xyo-network/module-model": "~2.67.0-rc.2",
|
|
26
|
+
"@xyo-network/node-model": "~2.67.0-rc.2",
|
|
27
|
+
"@xyo-network/node-wrapper": "~2.67.0-rc.2",
|
|
28
|
+
"@xyo-network/payload-model": "~2.67.0-rc.2",
|
|
29
|
+
"@xyo-network/promise": "~2.67.0-rc.2",
|
|
30
|
+
"@xyo-network/sentinel": "~2.67.0-rc.2",
|
|
31
|
+
"@xyo-network/witness-model": "~2.67.0-rc.2",
|
|
32
|
+
"@xyo-network/witness-wrapper": "~2.67.0-rc.2",
|
|
33
33
|
"lodash": "^4.17.21"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
@@ -70,6 +70,6 @@
|
|
|
70
70
|
},
|
|
71
71
|
"sideEffects": false,
|
|
72
72
|
"types": "dist/types/index.d.ts",
|
|
73
|
-
"version": "2.67.0-rc.
|
|
73
|
+
"version": "2.67.0-rc.2",
|
|
74
74
|
"stableVersion": "2.66.9"
|
|
75
75
|
}
|
package/src/ModuleResolver.ts
CHANGED
|
@@ -26,6 +26,7 @@ import compact from 'lodash/compact'
|
|
|
26
26
|
import { ProxyModule, ProxyModuleConfigSchema, ProxyModuleParams } from './ProxyModule'
|
|
27
27
|
|
|
28
28
|
export class BridgeModuleResolver extends CompositeModuleResolver implements ModuleResolver {
|
|
29
|
+
private primed = this.resolveRemoteModules()
|
|
29
30
|
private remoteAddresses?: Promise<string[]>
|
|
30
31
|
private resolvedModules: Record<string, Promise<ModuleInstance>> = {}
|
|
31
32
|
|
|
@@ -85,6 +86,8 @@ export class BridgeModuleResolver extends CompositeModuleResolver implements Mod
|
|
|
85
86
|
override async resolve(filter?: ModuleFilter): Promise<ModuleInstance[]>
|
|
86
87
|
override async resolve(nameOrAddress: string): Promise<ModuleInstance | undefined>
|
|
87
88
|
override async resolve(nameOrAddressOrFilter?: ModuleFilter | string): Promise<ModuleInstance | ModuleInstance[] | undefined> {
|
|
89
|
+
await this.primed
|
|
90
|
+
await this.resolveRemoteModules()
|
|
88
91
|
if (typeof nameOrAddressOrFilter === 'string') {
|
|
89
92
|
const result: ModuleInstance | undefined =
|
|
90
93
|
(await this.resolveByAddress(nameOrAddressOrFilter)) ?? (await this.resolveByName(nameOrAddressOrFilter))
|
|
@@ -110,12 +113,12 @@ export class BridgeModuleResolver extends CompositeModuleResolver implements Mod
|
|
|
110
113
|
this.resolvedModules[targetAddress] =
|
|
111
114
|
this.resolvedModules[targetAddress] ??
|
|
112
115
|
(async (address: string) => {
|
|
116
|
+
//discover it to set the config in the bridge
|
|
117
|
+
await this.bridge.targetDiscover(address)
|
|
118
|
+
|
|
113
119
|
const mod: Module = new ProxyModule({ address, bridge: this.bridge, config: { schema: ProxyModuleConfigSchema } } as ProxyModuleParams)
|
|
114
120
|
|
|
115
121
|
try {
|
|
116
|
-
//discover it to set the config in the bridge
|
|
117
|
-
await this.bridge.targetDiscover(address)
|
|
118
|
-
|
|
119
122
|
if (isArchivistModule(mod)) {
|
|
120
123
|
return ArchivistWrapper.wrap(mod, this.wrapperAccount)
|
|
121
124
|
}
|
|
@@ -148,7 +151,8 @@ export class BridgeModuleResolver extends CompositeModuleResolver implements Mod
|
|
|
148
151
|
}
|
|
149
152
|
|
|
150
153
|
private async resolveByName(name: string): Promise<ModuleInstance | undefined> {
|
|
151
|
-
|
|
154
|
+
const modules = await this.currentResolvedModules()
|
|
155
|
+
return Object.values(modules)
|
|
152
156
|
.filter((module) => module.config.name === name)
|
|
153
157
|
.pop()
|
|
154
158
|
}
|
package/src/ProxyModule.ts
CHANGED
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
AddressPreviousHashPayload,
|
|
8
8
|
BaseEmitter,
|
|
9
9
|
CompositeModuleResolver,
|
|
10
|
-
Module,
|
|
11
10
|
ModuleConfig,
|
|
12
11
|
ModuleDescription,
|
|
13
12
|
ModuleEventData,
|
|
@@ -34,23 +33,24 @@ export type ProxyModuleParams = ModuleParams<
|
|
|
34
33
|
}
|
|
35
34
|
>
|
|
36
35
|
|
|
37
|
-
export class ProxyModule extends BaseEmitter<
|
|
36
|
+
export class ProxyModule extends BaseEmitter<ModuleParams, ModuleEventData> implements ModuleInstance<ModuleParams, ModuleEventData> {
|
|
38
37
|
readonly upResolver = new CompositeModuleResolver()
|
|
39
38
|
|
|
40
|
-
constructor(
|
|
41
|
-
super(
|
|
39
|
+
constructor(public proxyParams: ProxyModuleParams) {
|
|
40
|
+
super({ config: proxyParams.bridge.targetConfig(proxyParams.address) })
|
|
42
41
|
}
|
|
43
42
|
|
|
44
43
|
get address() {
|
|
45
|
-
return this.
|
|
44
|
+
return this.proxyParams.address.toLowerCase()
|
|
46
45
|
}
|
|
47
46
|
|
|
48
47
|
get bridge() {
|
|
49
|
-
return this.
|
|
48
|
+
return this.proxyParams.bridge
|
|
50
49
|
}
|
|
51
50
|
|
|
52
51
|
get config(): ModuleConfig {
|
|
53
|
-
|
|
52
|
+
const config = this.bridge.targetConfig(this.address)
|
|
53
|
+
return config
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
get downResolver() {
|
|
@@ -114,9 +114,12 @@ export class ProxyModule extends BaseEmitter<ProxyModuleParams, ModuleEventData>
|
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
/* Resolves a filter from the perspective of the module, including through the parent/gateway module */
|
|
117
|
-
resolve(filter?: ModuleFilter, options?: ModuleFilterOptions): Promise<
|
|
118
|
-
resolve(nameOrAddress: string, options?: ModuleFilterOptions): Promise<
|
|
119
|
-
async resolve(
|
|
117
|
+
resolve(filter?: ModuleFilter, options?: ModuleFilterOptions): Promise<ModuleInstance[]>
|
|
118
|
+
resolve(nameOrAddress: string, options?: ModuleFilterOptions): Promise<ModuleInstance | undefined>
|
|
119
|
+
async resolve(
|
|
120
|
+
nameOrAddressOrFilter?: ModuleFilter | string,
|
|
121
|
+
options?: ModuleFilterOptions,
|
|
122
|
+
): Promise<ModuleInstance | ModuleInstance[] | undefined> {
|
|
120
123
|
if (typeof nameOrAddressOrFilter === 'string') {
|
|
121
124
|
return await this.bridge.targetResolve(this.address, nameOrAddressOrFilter, options)
|
|
122
125
|
} else {
|