@xyo-network/bridge-pub-sub 2.101.2 → 2.101.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts +8 -1
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts.map +1 -1
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts +8 -1
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts.map +1 -1
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts +8 -1
- package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts.map +1 -1
- package/dist/browser/PubSubBridge.d.cts +8 -2
- package/dist/browser/PubSubBridge.d.cts.map +1 -1
- package/dist/browser/PubSubBridge.d.mts +8 -2
- package/dist/browser/PubSubBridge.d.mts.map +1 -1
- package/dist/browser/PubSubBridge.d.ts +8 -2
- package/dist/browser/PubSubBridge.d.ts.map +1 -1
- package/dist/browser/PubSubBridgeModuleResolver.d.cts +13 -0
- package/dist/browser/PubSubBridgeModuleResolver.d.cts.map +1 -1
- package/dist/browser/PubSubBridgeModuleResolver.d.mts +13 -0
- package/dist/browser/PubSubBridgeModuleResolver.d.mts.map +1 -1
- package/dist/browser/PubSubBridgeModuleResolver.d.ts +13 -0
- package/dist/browser/PubSubBridgeModuleResolver.d.ts.map +1 -1
- package/dist/browser/index.cjs +106 -20
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +102 -16
- package/dist/browser/index.js.map +1 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts +8 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts.map +1 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts +8 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts.map +1 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts +8 -1
- package/dist/neutral/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts.map +1 -1
- package/dist/neutral/PubSubBridge.d.cts +8 -2
- package/dist/neutral/PubSubBridge.d.cts.map +1 -1
- package/dist/neutral/PubSubBridge.d.mts +8 -2
- package/dist/neutral/PubSubBridge.d.mts.map +1 -1
- package/dist/neutral/PubSubBridge.d.ts +8 -2
- package/dist/neutral/PubSubBridge.d.ts.map +1 -1
- package/dist/neutral/PubSubBridgeModuleResolver.d.cts +13 -0
- package/dist/neutral/PubSubBridgeModuleResolver.d.cts.map +1 -1
- package/dist/neutral/PubSubBridgeModuleResolver.d.mts +13 -0
- package/dist/neutral/PubSubBridgeModuleResolver.d.mts.map +1 -1
- package/dist/neutral/PubSubBridgeModuleResolver.d.ts +13 -0
- package/dist/neutral/PubSubBridgeModuleResolver.d.ts.map +1 -1
- package/dist/neutral/index.cjs +106 -20
- package/dist/neutral/index.cjs.map +1 -1
- package/dist/neutral/index.js +102 -16
- package/dist/neutral/index.js.map +1 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts +8 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts.map +1 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts +8 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts.map +1 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts +8 -1
- package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts.map +1 -1
- package/dist/node/PubSubBridge.d.cts +8 -2
- package/dist/node/PubSubBridge.d.cts.map +1 -1
- package/dist/node/PubSubBridge.d.mts +8 -2
- package/dist/node/PubSubBridge.d.mts.map +1 -1
- package/dist/node/PubSubBridge.d.ts +8 -2
- package/dist/node/PubSubBridge.d.ts.map +1 -1
- package/dist/node/PubSubBridgeModuleResolver.d.cts +13 -0
- package/dist/node/PubSubBridgeModuleResolver.d.cts.map +1 -1
- package/dist/node/PubSubBridgeModuleResolver.d.mts +13 -0
- package/dist/node/PubSubBridgeModuleResolver.d.mts.map +1 -1
- package/dist/node/PubSubBridgeModuleResolver.d.ts +13 -0
- package/dist/node/PubSubBridgeModuleResolver.d.ts.map +1 -1
- package/dist/node/index.cjs +107 -20
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +103 -16
- package/dist/node/index.js.map +1 -1
- package/package.json +20 -20
- package/src/AsyncQueryBus/ModuleProxy/ModuleProxy.ts +50 -1
- package/src/PubSubBridge.ts +57 -3
- package/src/PubSubBridgeModuleResolver.ts +10 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Address } from '@xylabs/hex';
|
|
2
2
|
import { AbstractBridge } from '@xyo-network/abstract-bridge';
|
|
3
3
|
import { BridgeExposeOptions, BridgeModule, BridgeUnexposeOptions } from '@xyo-network/bridge-model';
|
|
4
|
-
import { ModuleIdentifier, ModuleInstance } from '@xyo-network/module-model';
|
|
4
|
+
import { ModuleFilter, ModuleFilterOptions, ModuleIdentifier, ModuleInstance } from '@xyo-network/module-model';
|
|
5
5
|
import { Schema } from '@xyo-network/payload-model';
|
|
6
6
|
import { LRUCache } from 'lru-cache';
|
|
7
7
|
import { AsyncQueryBusClient, AsyncQueryBusHost } from './AsyncQueryBus';
|
|
@@ -19,7 +19,6 @@ export declare class PubSubBridge<TParams extends PubSubBridgeParams = PubSubBri
|
|
|
19
19
|
private _busHost?;
|
|
20
20
|
private _discoverRootsMutex;
|
|
21
21
|
private _resolver?;
|
|
22
|
-
private _roots?;
|
|
23
22
|
get resolver(): PubSubBridgeModuleResolver;
|
|
24
23
|
protected get moduleName(): string;
|
|
25
24
|
connect(id: ModuleIdentifier, maxDepth?: number): Promise<Address | undefined>;
|
|
@@ -28,6 +27,13 @@ export declare class PubSubBridge<TParams extends PubSubBridgeParams = PubSubBri
|
|
|
28
27
|
exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promise<ModuleInstance[]>;
|
|
29
28
|
exposedHandler(): Address[];
|
|
30
29
|
getRoots(force?: boolean): Promise<ModuleInstance[]>;
|
|
30
|
+
/** @deprecated do not pass undefined. If trying to get all, pass '*' */
|
|
31
|
+
resolve(): Promise<ModuleInstance[]>;
|
|
32
|
+
resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
33
|
+
resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
34
|
+
resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
|
|
35
|
+
/** @deprecated use '*' if trying to resolve all */
|
|
36
|
+
resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
31
37
|
startHandler(): Promise<boolean>;
|
|
32
38
|
unexposeHandler(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<ModuleInstance[]>;
|
|
33
39
|
protected busClient(): AsyncQueryBusClient<import("./AsyncQueryBus").AsyncQueryBusClientParams> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubBridge.d.ts","sourceRoot":"","sources":["../../src/PubSubBridge.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"PubSubBridge.d.ts","sourceRoot":"","sources":["../../src/PubSubBridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { AbstractBridgeModuleResolver, BridgeModuleResolverParams } from '@xyo-network/abstract-bridge';
|
|
2
2
|
import { ModuleFilterOptions, ModuleIdentifier, ModuleInstance } from '@xyo-network/module-model';
|
|
3
|
+
import { LRUCache } from 'lru-cache';
|
|
3
4
|
import { AsyncQueryBusClient } from './AsyncQueryBus';
|
|
4
5
|
export interface PubSubBridgeModuleResolverParams extends BridgeModuleResolverParams {
|
|
5
6
|
busClient: AsyncQueryBusClient;
|
|
6
7
|
}
|
|
7
8
|
export declare class PubSubBridgeModuleResolver extends AbstractBridgeModuleResolver<PubSubBridgeModuleResolverParams> {
|
|
9
|
+
protected _resolvedCache: LRUCache<Lowercase<string>, ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
10
|
+
account?: import("@xyo-network/account").AccountInstance | "random" | undefined;
|
|
11
|
+
addToResolvers?: boolean | undefined;
|
|
12
|
+
allowNameResolution?: boolean | undefined;
|
|
13
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
14
|
+
schema: "network.xyo.module.config";
|
|
15
|
+
}, "schema"> & {
|
|
16
|
+
schema: string;
|
|
17
|
+
};
|
|
18
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
19
|
+
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
20
|
+
}, import("@xyo-network/module-model").ModuleEventData<object>>, unknown>;
|
|
8
21
|
resolveHandler<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
9
22
|
}
|
|
10
23
|
//# sourceMappingURL=PubSubBridgeModuleResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AACrJ,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,mBAAmB,EAA4D,MAAM,iBAAiB,CAAA;AAE/G,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,SAAS,EAAE,mBAAmB,CAAA;CAC/B;AAED,qBAAa,0BAA2B,SAAQ,4BAA4B,CAAC,gCAAgC,CAAC;IAC5G,SAAS,CAAC,cAAc;;;;;;;;;;;8EAAuD;IAEhE,cAAc,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CA8C/I"}
|
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { AbstractBridgeModuleResolver, BridgeModuleResolverParams } from '@xyo-network/abstract-bridge';
|
|
2
2
|
import { ModuleFilterOptions, ModuleIdentifier, ModuleInstance } from '@xyo-network/module-model';
|
|
3
|
+
import { LRUCache } from 'lru-cache';
|
|
3
4
|
import { AsyncQueryBusClient } from './AsyncQueryBus';
|
|
4
5
|
export interface PubSubBridgeModuleResolverParams extends BridgeModuleResolverParams {
|
|
5
6
|
busClient: AsyncQueryBusClient;
|
|
6
7
|
}
|
|
7
8
|
export declare class PubSubBridgeModuleResolver extends AbstractBridgeModuleResolver<PubSubBridgeModuleResolverParams> {
|
|
9
|
+
protected _resolvedCache: LRUCache<Lowercase<string>, ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
10
|
+
account?: import("@xyo-network/account").AccountInstance | "random" | undefined;
|
|
11
|
+
addToResolvers?: boolean | undefined;
|
|
12
|
+
allowNameResolution?: boolean | undefined;
|
|
13
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
14
|
+
schema: "network.xyo.module.config";
|
|
15
|
+
}, "schema"> & {
|
|
16
|
+
schema: string;
|
|
17
|
+
};
|
|
18
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
19
|
+
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
20
|
+
}, import("@xyo-network/module-model").ModuleEventData<object>>, unknown>;
|
|
8
21
|
resolveHandler<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
9
22
|
}
|
|
10
23
|
//# sourceMappingURL=PubSubBridgeModuleResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AACrJ,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,mBAAmB,EAA4D,MAAM,iBAAiB,CAAA;AAE/G,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,SAAS,EAAE,mBAAmB,CAAA;CAC/B;AAED,qBAAa,0BAA2B,SAAQ,4BAA4B,CAAC,gCAAgC,CAAC;IAC5G,SAAS,CAAC,cAAc;;;;;;;;;;;8EAAuD;IAEhE,cAAc,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CA8C/I"}
|
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { AbstractBridgeModuleResolver, BridgeModuleResolverParams } from '@xyo-network/abstract-bridge';
|
|
2
2
|
import { ModuleFilterOptions, ModuleIdentifier, ModuleInstance } from '@xyo-network/module-model';
|
|
3
|
+
import { LRUCache } from 'lru-cache';
|
|
3
4
|
import { AsyncQueryBusClient } from './AsyncQueryBus';
|
|
4
5
|
export interface PubSubBridgeModuleResolverParams extends BridgeModuleResolverParams {
|
|
5
6
|
busClient: AsyncQueryBusClient;
|
|
6
7
|
}
|
|
7
8
|
export declare class PubSubBridgeModuleResolver extends AbstractBridgeModuleResolver<PubSubBridgeModuleResolverParams> {
|
|
9
|
+
protected _resolvedCache: LRUCache<Lowercase<string>, ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
10
|
+
account?: import("@xyo-network/account").AccountInstance | "random" | undefined;
|
|
11
|
+
addToResolvers?: boolean | undefined;
|
|
12
|
+
allowNameResolution?: boolean | undefined;
|
|
13
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
14
|
+
schema: "network.xyo.module.config";
|
|
15
|
+
}, "schema"> & {
|
|
16
|
+
schema: string;
|
|
17
|
+
};
|
|
18
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
19
|
+
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
20
|
+
}, import("@xyo-network/module-model").ModuleEventData<object>>, unknown>;
|
|
8
21
|
resolveHandler<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T[]>;
|
|
9
22
|
}
|
|
10
23
|
//# sourceMappingURL=PubSubBridgeModuleResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"PubSubBridgeModuleResolver.d.ts","sourceRoot":"","sources":["../../src/PubSubBridgeModuleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAsB,MAAM,8BAA8B,CAAA;AAG3H,OAAO,EAAsD,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AACrJ,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,mBAAmB,EAA4D,MAAM,iBAAiB,CAAA;AAE/G,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,SAAS,EAAE,mBAAmB,CAAA;CAC/B;AAED,qBAAa,0BAA2B,SAAQ,4BAA4B,CAAC,gCAAgC,CAAC;IAC5G,SAAS,CAAC,cAAc;;;;;;;;;;;8EAAuD;IAEhE,cAAc,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CA8C/I"}
|
package/dist/node/index.cjs
CHANGED
|
@@ -673,7 +673,10 @@ __name(_AsyncQueryBusModuleHost, "AsyncQueryBusModuleHost");
|
|
|
673
673
|
var AsyncQueryBusModuleHost = _AsyncQueryBusModuleHost;
|
|
674
674
|
|
|
675
675
|
// src/AsyncQueryBus/ModuleProxy/ModuleProxy.ts
|
|
676
|
+
var import_assert4 = require("@xylabs/assert");
|
|
677
|
+
var import_hex = require("@xylabs/hex");
|
|
676
678
|
var import_abstract_bridge = require("@xyo-network/abstract-bridge");
|
|
679
|
+
var import_module_model3 = require("@xyo-network/module-model");
|
|
677
680
|
var _AsyncQueryBusModuleProxy = class _AsyncQueryBusModuleProxy extends import_abstract_bridge.AbstractModuleProxy {
|
|
678
681
|
constructor(params) {
|
|
679
682
|
_AsyncQueryBusModuleProxy.createCount = _AsyncQueryBusModuleProxy.createCount + 1;
|
|
@@ -685,6 +688,34 @@ var _AsyncQueryBusModuleProxy = class _AsyncQueryBusModuleProxy extends import_a
|
|
|
685
688
|
async proxyQueryHandler(query, payloads) {
|
|
686
689
|
return await this.params.busClient.send(this.address, query, payloads);
|
|
687
690
|
}
|
|
691
|
+
async resolve(idOrFilter = "*", options = {}) {
|
|
692
|
+
const config = {
|
|
693
|
+
address: this.address,
|
|
694
|
+
dead: this.dead,
|
|
695
|
+
downResolver: this.downResolver,
|
|
696
|
+
logger: this.logger,
|
|
697
|
+
module: this,
|
|
698
|
+
transformers: this.moduleIdentifierTransformers,
|
|
699
|
+
upResolver: this.upResolver
|
|
700
|
+
};
|
|
701
|
+
if (idOrFilter === "*") {
|
|
702
|
+
return (await import_module_model3.ResolveHelper.resolve(config, idOrFilter, options)).filter((mod) => mod.address !== this.address);
|
|
703
|
+
}
|
|
704
|
+
switch (typeof idOrFilter) {
|
|
705
|
+
case "string": {
|
|
706
|
+
const parts = idOrFilter.split(":");
|
|
707
|
+
const first = (0, import_assert4.assertEx)(parts.shift(), () => "Missing first");
|
|
708
|
+
const address = (0, import_hex.isAddress)(first) ? first : this.childAddressByName(first);
|
|
709
|
+
return this.params.host.resolve(address);
|
|
710
|
+
}
|
|
711
|
+
case "object": {
|
|
712
|
+
return (await import_module_model3.ResolveHelper.resolve(config, idOrFilter, options)).filter((mod) => mod.address !== this.address);
|
|
713
|
+
}
|
|
714
|
+
default: {
|
|
715
|
+
return (await import_module_model3.ResolveHelper.resolve(config, idOrFilter, options)).filter((mod) => mod.address !== this.address);
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
}
|
|
688
719
|
async startHandler() {
|
|
689
720
|
return await super.startHandler();
|
|
690
721
|
}
|
|
@@ -700,25 +731,30 @@ var PubSubBridgeSchema = "network.xyo.bridge.pubsub";
|
|
|
700
731
|
var PubSubBridgeConfigSchema = `${PubSubBridgeSchema}.config`;
|
|
701
732
|
|
|
702
733
|
// src/PubSubBridge.ts
|
|
703
|
-
var
|
|
734
|
+
var import_assert6 = require("@xylabs/assert");
|
|
704
735
|
var import_exists = require("@xylabs/exists");
|
|
705
736
|
var import_forget2 = require("@xylabs/forget");
|
|
737
|
+
var import_hex3 = require("@xylabs/hex");
|
|
706
738
|
var import_object3 = require("@xylabs/object");
|
|
707
739
|
var import_abstract_bridge3 = require("@xyo-network/abstract-bridge");
|
|
708
740
|
var import_address_payload_plugin = require("@xyo-network/address-payload-plugin");
|
|
709
|
-
var
|
|
741
|
+
var import_module_model5 = require("@xyo-network/module-model");
|
|
710
742
|
var import_node_model = require("@xyo-network/node-model");
|
|
711
743
|
var import_payload_model = require("@xyo-network/payload-model");
|
|
712
744
|
var import_async_mutex2 = require("async-mutex");
|
|
713
745
|
|
|
714
746
|
// src/PubSubBridgeModuleResolver.ts
|
|
715
|
-
var
|
|
716
|
-
var
|
|
747
|
+
var import_assert5 = require("@xylabs/assert");
|
|
748
|
+
var import_hex2 = require("@xylabs/hex");
|
|
717
749
|
var import_abstract_bridge2 = require("@xyo-network/abstract-bridge");
|
|
718
750
|
var import_account = require("@xyo-network/account");
|
|
719
751
|
var import_config_payload_plugin = require("@xyo-network/config-payload-plugin");
|
|
720
|
-
var
|
|
752
|
+
var import_module_model4 = require("@xyo-network/module-model");
|
|
753
|
+
var import_lru_cache3 = require("lru-cache");
|
|
721
754
|
var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends import_abstract_bridge2.AbstractBridgeModuleResolver {
|
|
755
|
+
_resolvedCache = new import_lru_cache3.LRUCache({
|
|
756
|
+
max: 1e3
|
|
757
|
+
});
|
|
722
758
|
async resolveHandler(id, options) {
|
|
723
759
|
var _a, _b;
|
|
724
760
|
const parentResult = await super.resolveHandler(id, options);
|
|
@@ -727,17 +763,27 @@ var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends impo
|
|
|
727
763
|
}
|
|
728
764
|
const idParts = id.split(":");
|
|
729
765
|
const firstPart = idParts.shift();
|
|
730
|
-
(0,
|
|
766
|
+
(0, import_assert5.assertEx)((0, import_hex2.isAddress)(firstPart), () => `Invalid module address: ${firstPart}`);
|
|
731
767
|
const remainderParts = idParts.join(":");
|
|
768
|
+
const cachedMod = this._resolvedCache.get(firstPart);
|
|
769
|
+
if (cachedMod) {
|
|
770
|
+
const result2 = idParts.length <= 0 ? cachedMod : cachedMod.resolve(remainderParts, {
|
|
771
|
+
...options,
|
|
772
|
+
maxDepth: ((options == null ? void 0 : options.maxDepth) ?? 5) - 1
|
|
773
|
+
});
|
|
774
|
+
return result2 ? [
|
|
775
|
+
result2
|
|
776
|
+
] : [];
|
|
777
|
+
}
|
|
732
778
|
const account = import_account.Account.randomSync();
|
|
733
779
|
const finalParams = {
|
|
734
780
|
account,
|
|
735
781
|
archiving: this.params.archiving,
|
|
736
782
|
busClient: this.params.busClient,
|
|
737
783
|
config: {
|
|
738
|
-
schema:
|
|
784
|
+
schema: import_module_model4.ModuleConfigSchema
|
|
739
785
|
},
|
|
740
|
-
host: this
|
|
786
|
+
host: this,
|
|
741
787
|
moduleAddress: firstPart,
|
|
742
788
|
onQuerySendFinished: this.params.onQuerySendFinished,
|
|
743
789
|
onQuerySendStarted: this.params.onQuerySendStarted
|
|
@@ -747,16 +793,16 @@ var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends impo
|
|
|
747
793
|
const state = await proxy.state();
|
|
748
794
|
if (state) {
|
|
749
795
|
const configSchema = (_a = state.find((payload) => payload.schema === import_config_payload_plugin.ConfigSchema)) == null ? void 0 : _a.config;
|
|
750
|
-
const config = (0,
|
|
796
|
+
const config = (0, import_assert5.assertEx)(state.find((payload) => payload.schema === configSchema), () => "Unable to locate config");
|
|
751
797
|
proxy.setConfig(config);
|
|
752
798
|
}
|
|
753
799
|
}
|
|
754
800
|
await ((_b = proxy.start) == null ? void 0 : _b.call(proxy));
|
|
755
801
|
const wrapped = (0, import_abstract_bridge2.wrapModuleWithType)(proxy, account);
|
|
756
|
-
const instance = (0,
|
|
802
|
+
const instance = (0, import_assert5.assertEx)((0, import_module_model4.asModuleInstance)(wrapped, {}), () => `Failed to asModuleInstance [${id}]`);
|
|
757
803
|
proxy.upResolver.add(instance);
|
|
758
804
|
proxy.downResolver.add(instance);
|
|
759
|
-
this.
|
|
805
|
+
this._resolvedCache.set(instance.address, instance);
|
|
760
806
|
const result = remainderParts.length > 0 ? await proxy.resolve(remainderParts, options) : instance;
|
|
761
807
|
return result ? [
|
|
762
808
|
result
|
|
@@ -789,7 +835,6 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
789
835
|
_busHost;
|
|
790
836
|
_discoverRootsMutex = new import_async_mutex2.Mutex();
|
|
791
837
|
_resolver;
|
|
792
|
-
_roots;
|
|
793
838
|
get resolver() {
|
|
794
839
|
this._resolver = this._resolver ?? new PubSubBridgeModuleResolver({
|
|
795
840
|
archiving: {
|
|
@@ -797,7 +842,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
797
842
|
resolveArchivists: this.resolveArchivingArchivists.bind(this)
|
|
798
843
|
},
|
|
799
844
|
bridge: this,
|
|
800
|
-
busClient: (0,
|
|
845
|
+
busClient: (0, import_assert6.assertEx)(this.busClient(), () => "busClient not configured"),
|
|
801
846
|
onQuerySendFinished: (args) => {
|
|
802
847
|
(0, import_forget2.forget)(this.emit("querySendFinished", {
|
|
803
848
|
module: this,
|
|
@@ -819,7 +864,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
819
864
|
return this.modName ?? moduleName;
|
|
820
865
|
}
|
|
821
866
|
async connect(id, maxDepth = 5) {
|
|
822
|
-
const transformedId = (0,
|
|
867
|
+
const transformedId = (0, import_assert6.assertEx)(await import_module_model5.ResolveHelper.transformModuleIdentifier(id), () => `Unable to transform module identifier: ${id}`);
|
|
823
868
|
const existingInstance = await this.resolve(transformedId);
|
|
824
869
|
if (existingInstance) {
|
|
825
870
|
return existingInstance.address;
|
|
@@ -828,7 +873,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
828
873
|
return await this.connectInstance(instance, maxDepth);
|
|
829
874
|
}
|
|
830
875
|
async disconnect(id) {
|
|
831
|
-
const transformedId = (0,
|
|
876
|
+
const transformedId = (0, import_assert6.assertEx)(await import_module_model5.ResolveHelper.transformModuleIdentifier(id), () => `Unable to transform module identifier: ${id}`);
|
|
832
877
|
const instance = await this.resolve(transformedId);
|
|
833
878
|
if (instance) {
|
|
834
879
|
this.downResolver.remove(instance.address);
|
|
@@ -839,7 +884,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
839
884
|
var _a, _b;
|
|
840
885
|
const { maxDepth = 5 } = options ?? {};
|
|
841
886
|
console.log(`exposeChild: ${mod.address} ${mod == null ? void 0 : mod.id} ${maxDepth}`);
|
|
842
|
-
const host = (0,
|
|
887
|
+
const host = (0, import_assert6.assertEx)(this.busHost(), () => "Not configured as a host");
|
|
843
888
|
host.expose(mod);
|
|
844
889
|
const children = maxDepth > 0 ? await ((_a = mod.publicChildren) == null ? void 0 : _a.call(mod)) ?? [] : [];
|
|
845
890
|
this.logger.log(`childrenToExpose [${mod.id}][${mod.address}]: ${(0, import_object3.toJsonString)(children.map((child) => child.id))}`);
|
|
@@ -857,7 +902,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
857
902
|
}
|
|
858
903
|
async exposeHandler(address, options) {
|
|
859
904
|
const { required = true } = options ?? {};
|
|
860
|
-
const mod = await (0,
|
|
905
|
+
const mod = await (0, import_module_model5.resolveAddressToInstanceUp)(this, address);
|
|
861
906
|
console.log(`exposeHandler: ${address} ${mod == null ? void 0 : mod.id}`);
|
|
862
907
|
if (required && !mod) {
|
|
863
908
|
throw new Error(`Unable to find required module: ${address}`);
|
|
@@ -880,7 +925,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
880
925
|
const rootAddresses = (await Promise.all((this.config.roots ?? []).map((id) => {
|
|
881
926
|
var _a;
|
|
882
927
|
try {
|
|
883
|
-
return
|
|
928
|
+
return import_module_model5.ResolveHelper.transformModuleIdentifier(id);
|
|
884
929
|
} catch (ex) {
|
|
885
930
|
(_a = this.logger) == null ? void 0 : _a.warn("Unable to transform module identifier:", id, ex);
|
|
886
931
|
return;
|
|
@@ -903,6 +948,48 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
903
948
|
return this._roots;
|
|
904
949
|
});
|
|
905
950
|
}
|
|
951
|
+
// eslint-disable-next-line complexity
|
|
952
|
+
async resolve(idOrFilter = "*", options = {}) {
|
|
953
|
+
var _a;
|
|
954
|
+
const roots = this._roots ?? [];
|
|
955
|
+
const workingSet = options.direction === "up" ? [
|
|
956
|
+
this
|
|
957
|
+
] : [
|
|
958
|
+
...roots,
|
|
959
|
+
this
|
|
960
|
+
];
|
|
961
|
+
if (idOrFilter === "*") {
|
|
962
|
+
const remainingDepth = (options.maxDepth ?? 1) - 1;
|
|
963
|
+
return remainingDepth <= 0 ? workingSet : [
|
|
964
|
+
...workingSet,
|
|
965
|
+
...(await Promise.all(roots.map((mod) => mod.resolve("*", {
|
|
966
|
+
...options,
|
|
967
|
+
maxDepth: remainingDepth
|
|
968
|
+
})))).flat()
|
|
969
|
+
];
|
|
970
|
+
}
|
|
971
|
+
switch (typeof idOrFilter) {
|
|
972
|
+
case "string": {
|
|
973
|
+
const parts = idOrFilter.split(":");
|
|
974
|
+
const first = (0, import_assert6.assertEx)(parts.shift(), () => "Missing first part");
|
|
975
|
+
const firstInstance = (0, import_hex3.isAddress)(first) ? await (0, import_module_model5.resolveAddressToInstance)(this, first, void 0, [], options.direction) : (_a = this._roots) == null ? void 0 : _a.find((mod) => mod.id === first);
|
|
976
|
+
return parts.length === 0 ? firstInstance : firstInstance == null ? void 0 : firstInstance.resolve(parts.join(":"), options);
|
|
977
|
+
}
|
|
978
|
+
case "object": {
|
|
979
|
+
const results = [];
|
|
980
|
+
if ((0, import_module_model5.isAddressModuleFilter)(idOrFilter)) {
|
|
981
|
+
for (const mod of workingSet) {
|
|
982
|
+
if (mod.modName && idOrFilter.address.includes(mod.address))
|
|
983
|
+
results.push(mod);
|
|
984
|
+
}
|
|
985
|
+
}
|
|
986
|
+
return results;
|
|
987
|
+
}
|
|
988
|
+
default: {
|
|
989
|
+
return;
|
|
990
|
+
}
|
|
991
|
+
}
|
|
992
|
+
}
|
|
906
993
|
async startHandler() {
|
|
907
994
|
var _a;
|
|
908
995
|
(_a = this.busHost()) == null ? void 0 : _a.start();
|
|
@@ -911,7 +998,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
911
998
|
async unexposeHandler(id, options) {
|
|
912
999
|
var _a;
|
|
913
1000
|
const { maxDepth = 2, required = true } = options ?? {};
|
|
914
|
-
const host = (0,
|
|
1001
|
+
const host = (0, import_assert6.assertEx)(this.busHost(), () => "Not configured as a host");
|
|
915
1002
|
const module2 = await host.unexpose(id, required);
|
|
916
1003
|
if (module2) {
|
|
917
1004
|
const children = maxDepth > 0 ? await ((_a = module2.publicChildren) == null ? void 0 : _a.call(module2)) ?? [] : [];
|
|
@@ -988,7 +1075,7 @@ __publicField(_PubSubBridge, "configSchemas", [
|
|
|
988
1075
|
__publicField(_PubSubBridge, "defaultConfigSchema", PubSubBridgeConfigSchema);
|
|
989
1076
|
var PubSubBridge = _PubSubBridge;
|
|
990
1077
|
PubSubBridge = _ts_decorate([
|
|
991
|
-
(0,
|
|
1078
|
+
(0, import_module_model5.creatableModule)()
|
|
992
1079
|
], PubSubBridge);
|
|
993
1080
|
// Annotate the CommonJS export names for ESM import in node:
|
|
994
1081
|
0 && (module.exports = {
|