@xyo-network/bridge-pub-sub 2.94.16 → 2.94.18
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/AsyncQueryBusBase.d.cts +7 -72
- package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.cts.map +1 -1
- package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.mts +7 -72
- package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.mts.map +1 -1
- package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.ts +7 -72
- package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.ts.map +1 -1
- package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.cts.map +1 -1
- package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.mts.map +1 -1
- package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.ts.map +1 -1
- package/dist/browser/index.cjs +64 -118
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +60 -114
- package/dist/browser/index.js.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.cts +7 -72
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.cts.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.mts +7 -72
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.mts.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.ts +7 -72
- package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.ts.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.cts.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.mts.map +1 -1
- package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.ts.map +1 -1
- package/dist/node/index.cjs +69 -122
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +65 -118
- package/dist/node/index.js.map +1 -1
- package/package.json +18 -18
- package/src/AsyncQueryBus/AsyncQueryBusBase.ts +58 -101
- package/src/AsyncQueryBus/AsyncQueryBusHost.ts +8 -5
|
@@ -2,30 +2,24 @@ import { Address } from '@xylabs/hex';
|
|
|
2
2
|
import { Base } from '@xylabs/object';
|
|
3
3
|
import { ArchivistInstance } from '@xyo-network/archivist-model';
|
|
4
4
|
import { DivinerInstance } from '@xyo-network/diviner-model';
|
|
5
|
-
import { ModuleConfig } from '@xyo-network/module-model';
|
|
5
|
+
import { ModuleConfig, ModuleInstance } from '@xyo-network/module-model';
|
|
6
6
|
import { LRUCache } from 'lru-cache';
|
|
7
7
|
import { AsyncQueryBusParams } from './model';
|
|
8
8
|
export declare class AsyncQueryBusBase<TParams extends AsyncQueryBusParams = AsyncQueryBusParams> extends Base<TParams> {
|
|
9
9
|
protected _lastState?: LRUCache<Address, number>;
|
|
10
10
|
protected _targetConfigs: Record<Address, ModuleConfig>;
|
|
11
11
|
protected _targetQueries: Record<Address, string[]>;
|
|
12
|
-
private
|
|
13
|
-
private _lastQueriesDivinerAttempt?;
|
|
14
|
-
private _lastResponsesArchivistAttempt?;
|
|
15
|
-
private _lastResponsesDivinerAttempt?;
|
|
12
|
+
private _lastResolveAttempt;
|
|
16
13
|
private _queriesArchivist?;
|
|
17
|
-
private _queriesArchivistMutex;
|
|
18
14
|
private _queriesDiviner?;
|
|
19
|
-
private _queriesDivinerMutex;
|
|
20
15
|
private _reResolveDelay;
|
|
16
|
+
private _resolveMutex;
|
|
21
17
|
private _responsesArchivist?;
|
|
22
|
-
private _responsesArchivistMutex;
|
|
23
18
|
private _responsesDiviner?;
|
|
24
|
-
private _responsesDivinerMutex;
|
|
25
19
|
constructor(params: TParams);
|
|
26
20
|
get config(): TParams['config'];
|
|
27
21
|
get pollFrequencyConfig(): number;
|
|
28
|
-
get resolver(): import("@xyo-network/module-model").ModuleResolver<
|
|
22
|
+
get resolver(): import("@xyo-network/module-model").ModuleResolver<ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
29
23
|
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
30
24
|
addToResolvers?: boolean | undefined;
|
|
31
25
|
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 & {
|
|
@@ -84,37 +78,7 @@ export declare class AsyncQueryBusBase<TParams extends AsyncQueryBusParams = Asy
|
|
|
84
78
|
schema: "network.xyo.boundwitness";
|
|
85
79
|
}, "schema"> & {
|
|
86
80
|
schema: "network.xyo.boundwitness";
|
|
87
|
-
}, import("@xyo-network/diviner-model").DivinerModuleEventData
|
|
88
|
-
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
89
|
-
addToResolvers?: boolean | undefined;
|
|
90
|
-
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 & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
|
|
91
|
-
schema: "network.xyo.diviner.config";
|
|
92
|
-
}, "schema"> & {
|
|
93
|
-
schema: "network.xyo.diviner.config";
|
|
94
|
-
}, "schema"> & {
|
|
95
|
-
schema: string;
|
|
96
|
-
};
|
|
97
|
-
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
98
|
-
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
99
|
-
}, {
|
|
100
|
-
schema: string;
|
|
101
|
-
} & import("@xyo-network/payload-model").PayloadFields, {
|
|
102
|
-
schema: string;
|
|
103
|
-
} & import("@xyo-network/payload-model").PayloadFields, import("@xyo-network/diviner-model").DivinerModuleEventData<import("@xyo-network/module-model").ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
104
|
-
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
105
|
-
addToResolvers?: boolean | undefined;
|
|
106
|
-
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 & {
|
|
107
|
-
schema: "network.xyo.module.config";
|
|
108
|
-
}, "schema"> & {
|
|
109
|
-
schema: string;
|
|
110
|
-
};
|
|
111
|
-
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
112
|
-
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
113
|
-
}, import("@xyo-network/module-model").ModuleEventData<object>>, {
|
|
114
|
-
schema: string;
|
|
115
|
-
} & import("@xyo-network/payload-model").PayloadFields, {
|
|
116
|
-
schema: string;
|
|
117
|
-
} & import("@xyo-network/payload-model").PayloadFields>> | undefined>;
|
|
81
|
+
}, import("@xyo-network/diviner-model").DivinerModuleEventData>>;
|
|
118
82
|
responsesArchivist(): Promise<ArchivistInstance<import("@xylabs/object").BaseParamsFields & {
|
|
119
83
|
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
120
84
|
addToResolvers?: boolean | undefined;
|
|
@@ -155,37 +119,7 @@ export declare class AsyncQueryBusBase<TParams extends AsyncQueryBusParams = Asy
|
|
|
155
119
|
schema: "network.xyo.diviner.boundwitness.query";
|
|
156
120
|
}, import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
157
121
|
schema: "network.xyo.boundwitness";
|
|
158
|
-
}, import("@xyo-network/diviner-model").DivinerModuleEventData
|
|
159
|
-
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
160
|
-
addToResolvers?: boolean | undefined;
|
|
161
|
-
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 & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
|
|
162
|
-
schema: "network.xyo.diviner.config";
|
|
163
|
-
}, "schema"> & {
|
|
164
|
-
schema: "network.xyo.diviner.config";
|
|
165
|
-
}, "schema"> & {
|
|
166
|
-
schema: string;
|
|
167
|
-
};
|
|
168
|
-
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
169
|
-
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
170
|
-
}, {
|
|
171
|
-
schema: string;
|
|
172
|
-
} & import("@xyo-network/payload-model").PayloadFields, {
|
|
173
|
-
schema: string;
|
|
174
|
-
} & import("@xyo-network/payload-model").PayloadFields, import("@xyo-network/diviner-model").DivinerModuleEventData<import("@xyo-network/module-model").ModuleInstance<import("@xylabs/object").BaseParamsFields & {
|
|
175
|
-
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
176
|
-
addToResolvers?: boolean | undefined;
|
|
177
|
-
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 & {
|
|
178
|
-
schema: "network.xyo.module.config";
|
|
179
|
-
}, "schema"> & {
|
|
180
|
-
schema: string;
|
|
181
|
-
};
|
|
182
|
-
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
183
|
-
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
|
|
184
|
-
}, import("@xyo-network/module-model").ModuleEventData<object>>, {
|
|
185
|
-
schema: string;
|
|
186
|
-
} & import("@xyo-network/payload-model").PayloadFields, {
|
|
187
|
-
schema: string;
|
|
188
|
-
} & import("@xyo-network/payload-model").PayloadFields>> | undefined>;
|
|
122
|
+
}, import("@xyo-network/diviner-model").DivinerModuleEventData>>;
|
|
189
123
|
/**
|
|
190
124
|
* Commit the internal state of the process. This is similar
|
|
191
125
|
* to a transaction completion in a database and should only be called
|
|
@@ -200,5 +134,6 @@ export declare class AsyncQueryBusBase<TParams extends AsyncQueryBusParams = Asy
|
|
|
200
134
|
* preemptions, reboots, etc.
|
|
201
135
|
*/
|
|
202
136
|
protected retrieveState(address: Address): Promise<number>;
|
|
137
|
+
private resolve;
|
|
203
138
|
}
|
|
204
139
|
//# sourceMappingURL=AsyncQueryBusBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncQueryBusBase.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusBase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AsyncQueryBusBase.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,IAAI,EAAa,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAuB,MAAM,8BAA8B,CAAA;AAGrF,OAAO,EAAE,eAAe,EAAqB,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAoB,cAAc,EAAkD,MAAM,2BAA2B,CAAA;AAE1I,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAE7C,qBAAa,iBAAiB,CAAC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,CAAE,SAAQ,IAAI,CAAC,OAAO,CAAC;IAC7G,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAChD,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAK;IAC5D,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAK;IAExD,OAAO,CAAC,mBAAmB,CAAuC;IAClE,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,eAAe,CAAC,CAAgG;IACxH,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,mBAAmB,CAAC,CAAmB;IAC/C,OAAO,CAAC,iBAAiB,CAAC,CAA2F;gBAEzG,MAAM,EAAE,OAAO;IAI3B,IAAI,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,CAE9B;IAED,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,IAAI,QAAQ;;;;;;;;;;qEAEX;IAED;;OAEG;IACH,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAInD;IAEK,gBAAgB;;;;;;;;;;;;;;;;;;IAUhB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUd,kBAAkB;;;;;;;;;;;;;;;;;;IAUlB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;IAUtB;;;;;;;OAOG;cACa,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IAQ/D;;;OAGG;cACa,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;YAclD,OAAO;CAqBtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,EAAyB,MAAM,2BAA2B,CAAA;AAEzI,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAEjD,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,qBAAa,iBAAiB,CAAC,OAAO,SAAS,uBAAuB,GAAG,uBAAuB,CAAE,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IAClI,SAAS,CAAC,iBAAiB,yBAAqB;IAChD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,OAAO,CAAC,CAAQ;gBAEZ,MAAM,EAAE,OAAO;IAI3B,IAAI,gBAAgB,2BAEnB;IAED,IAAI,yBAAyB,IAAI,MAAM,CAEtC;IAED,IAAI,OAAO,YAEV;IAEK,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,aAAa;;;;;;;;;;;IAepD,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAanD,KAAK;IAOL,IAAI;IAQE,QAAQ,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,UAAO;;;;;;;;;;;IAWpD,SAAS,CAAC,eAAe,gBAAuB,cAAc,SAAS,SAAS,iBAAiB,CAAC,mBAyDjG;IAED;;;OAGG;IACH,SAAS,CAAC,oBAAoB,YAAmB,OAAO;;;;;;sBAuBvD;IAED;;;OAGG;IACH,OAAO,CAAC,IAAI;IAcZ;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAsB7B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,EAAyB,MAAM,2BAA2B,CAAA;AAEzI,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAEjD,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,qBAAa,iBAAiB,CAAC,OAAO,SAAS,uBAAuB,GAAG,uBAAuB,CAAE,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IAClI,SAAS,CAAC,iBAAiB,yBAAqB;IAChD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,OAAO,CAAC,CAAQ;gBAEZ,MAAM,EAAE,OAAO;IAI3B,IAAI,gBAAgB,2BAEnB;IAED,IAAI,yBAAyB,IAAI,MAAM,CAEtC;IAED,IAAI,OAAO,YAEV;IAEK,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,aAAa;;;;;;;;;;;IAepD,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAanD,KAAK;IAOL,IAAI;IAQE,QAAQ,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,UAAO;;;;;;;;;;;IAWpD,SAAS,CAAC,eAAe,gBAAuB,cAAc,SAAS,SAAS,iBAAiB,CAAC,mBAyDjG;IAED;;;OAGG;IACH,SAAS,CAAC,oBAAoB,YAAmB,OAAO;;;;;;sBAuBvD;IAED;;;OAGG;IACH,OAAO,CAAC,IAAI;IAcZ;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAsB7B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"AsyncQueryBusHost.d.ts","sourceRoot":"","sources":["../../../src/AsyncQueryBus/AsyncQueryBusHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEhG,OAAO,EAAwC,gBAAgB,EAAE,cAAc,EAAyB,MAAM,2BAA2B,CAAA;AAEzI,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAEjD,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,qBAAa,iBAAiB,CAAC,OAAO,SAAS,uBAAuB,GAAG,uBAAuB,CAAE,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IAClI,SAAS,CAAC,iBAAiB,yBAAqB;IAChD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,OAAO,CAAC,CAAQ;gBAEZ,MAAM,EAAE,OAAO;IAI3B,IAAI,gBAAgB,2BAEnB;IAED,IAAI,yBAAyB,IAAI,MAAM,CAEtC;IAED,IAAI,OAAO,YAEV;IAEK,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,aAAa;;;;;;;;;;;IAepD,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAanD,KAAK;IAOL,IAAI;IAQE,QAAQ,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,UAAO;;;;;;;;;;;IAWpD,SAAS,CAAC,eAAe,gBAAuB,cAAc,SAAS,SAAS,iBAAiB,CAAC,mBAyDjG;IAED;;;OAGG;IACH,SAAS,CAAC,oBAAoB,YAAmB,OAAO;;;;;;sBAuBvD;IAED;;;OAGG;IACH,OAAO,CAAC,IAAI;IAcZ;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAsB7B;CACF"}
|
package/dist/node/index.cjs
CHANGED
|
@@ -47,7 +47,7 @@ __name(_AbstractModuleHost, "AbstractModuleHost");
|
|
|
47
47
|
var AbstractModuleHost = _AbstractModuleHost;
|
|
48
48
|
|
|
49
49
|
// src/AsyncQueryBus/AsyncQueryBusClient.ts
|
|
50
|
-
var
|
|
50
|
+
var import_assert2 = require("@xylabs/assert");
|
|
51
51
|
var import_delay = require("@xylabs/delay");
|
|
52
52
|
var import_forget = require("@xylabs/forget");
|
|
53
53
|
var import_timer = require("@xylabs/timer");
|
|
@@ -57,28 +57,24 @@ var import_payload_builder = require("@xyo-network/payload-builder");
|
|
|
57
57
|
var import_lru_cache2 = require("lru-cache");
|
|
58
58
|
|
|
59
59
|
// src/AsyncQueryBus/AsyncQueryBusBase.ts
|
|
60
|
+
var import_assert = require("@xylabs/assert");
|
|
60
61
|
var import_object2 = require("@xylabs/object");
|
|
61
62
|
var import_archivist_model = require("@xyo-network/archivist-model");
|
|
62
63
|
var import_diviner_model = require("@xyo-network/diviner-model");
|
|
64
|
+
var import_module_model = require("@xyo-network/module-model");
|
|
63
65
|
var import_async_mutex = require("async-mutex");
|
|
64
66
|
var import_lru_cache = require("lru-cache");
|
|
65
67
|
var _AsyncQueryBusBase = class _AsyncQueryBusBase extends import_object2.Base {
|
|
66
68
|
_lastState;
|
|
67
69
|
_targetConfigs = {};
|
|
68
70
|
_targetQueries = {};
|
|
69
|
-
|
|
70
|
-
_lastQueriesDivinerAttempt;
|
|
71
|
-
_lastResponsesArchivistAttempt;
|
|
72
|
-
_lastResponsesDivinerAttempt;
|
|
71
|
+
_lastResolveAttempt = {};
|
|
73
72
|
_queriesArchivist;
|
|
74
|
-
_queriesArchivistMutex = new import_async_mutex.Mutex();
|
|
75
73
|
_queriesDiviner;
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
_reResolveDelay = 1e3 * 5;
|
|
75
|
+
_resolveMutex = new import_async_mutex.Mutex();
|
|
78
76
|
_responsesArchivist;
|
|
79
|
-
_responsesArchivistMutex = new import_async_mutex.Mutex();
|
|
80
77
|
_responsesDiviner;
|
|
81
|
-
_responsesDivinerMutex = new import_async_mutex.Mutex();
|
|
82
78
|
constructor(params) {
|
|
83
79
|
super(params);
|
|
84
80
|
}
|
|
@@ -104,96 +100,24 @@ var _AsyncQueryBusBase = class _AsyncQueryBusBase extends import_object2.Base {
|
|
|
104
100
|
return this._lastState;
|
|
105
101
|
}
|
|
106
102
|
async queriesArchivist() {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
return this._queriesArchivist;
|
|
111
|
-
}
|
|
112
|
-
if (Date.now() - (this._lastQueriesArchivistAttempt ?? 0) < this._reResolveDelay) {
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
this._lastQueriesArchivistAttempt = Date.now();
|
|
116
|
-
const resolved = await this.resolver.resolve((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.queries) == null ? void 0 : _c.archivist);
|
|
117
|
-
if (resolved) {
|
|
118
|
-
const typedResolve = (0, import_archivist_model.asArchivistInstance)(resolved);
|
|
119
|
-
if (typedResolve) {
|
|
120
|
-
return typedResolve;
|
|
121
|
-
} else {
|
|
122
|
-
(_h = this.logger) == null ? void 0 : _h.warn(`Unable to resolve queriesArchivist as correct type [${(_f = (_e = (_d = this.config) == null ? void 0 : _d.intersect) == null ? void 0 : _e.queries) == null ? void 0 : _f.archivist}][${(_g = resolved == null ? void 0 : resolved.constructor) == null ? void 0 : _g.name}]: ${(0, import_object2.toJsonString)(resolved)}`);
|
|
123
|
-
}
|
|
124
|
-
} else {
|
|
125
|
-
(_l = this.logger) == null ? void 0 : _l.log(`Unable to resolve queriesArchivist [${(_k = (_j = (_i = this.config) == null ? void 0 : _i.intersect) == null ? void 0 : _j.queries) == null ? void 0 : _k.archivist}]`);
|
|
126
|
-
}
|
|
127
|
-
});
|
|
103
|
+
var _a, _b, _c;
|
|
104
|
+
this._queriesArchivist = this._queriesArchivist ?? await this.resolve((0, import_assert.assertEx)((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.queries) == null ? void 0 : _c.archivist, () => "No queries Archivist defined"), import_archivist_model.isArchivistInstance);
|
|
105
|
+
return this._queriesArchivist;
|
|
128
106
|
}
|
|
129
107
|
async queriesDiviner() {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
return this._queriesDiviner;
|
|
134
|
-
}
|
|
135
|
-
if (Date.now() - (this._lastQueriesDivinerAttempt ?? 0) < this._reResolveDelay) {
|
|
136
|
-
return;
|
|
137
|
-
}
|
|
138
|
-
this._lastQueriesDivinerAttempt = Date.now();
|
|
139
|
-
const resolved = await this.resolver.resolve((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.queries) == null ? void 0 : _c.boundWitnessDiviner);
|
|
140
|
-
if (resolved) {
|
|
141
|
-
const typedResolve = (0, import_diviner_model.asDivinerInstance)(resolved);
|
|
142
|
-
if (typedResolve) {
|
|
143
|
-
return typedResolve;
|
|
144
|
-
} else {
|
|
145
|
-
(_h = this.logger) == null ? void 0 : _h.warn(`Unable to resolve queriesDiviner as correct type [${(_f = (_e = (_d = this.config) == null ? void 0 : _d.intersect) == null ? void 0 : _e.queries) == null ? void 0 : _f.boundWitnessDiviner}][${(_g = resolved == null ? void 0 : resolved.constructor) == null ? void 0 : _g.name}]: ${(0, import_object2.toJsonString)(resolved)}`);
|
|
146
|
-
}
|
|
147
|
-
} else {
|
|
148
|
-
(_l = this.logger) == null ? void 0 : _l.log(`Unable to resolve queriesDiviner [${(_k = (_j = (_i = this.config) == null ? void 0 : _i.intersect) == null ? void 0 : _j.queries) == null ? void 0 : _k.boundWitnessDiviner}]`);
|
|
149
|
-
}
|
|
150
|
-
});
|
|
108
|
+
var _a, _b, _c;
|
|
109
|
+
this._queriesDiviner = this._queriesDiviner ?? await this.resolve((0, import_assert.assertEx)((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.queries) == null ? void 0 : _c.boundWitnessDiviner, () => "No queries Diviner defined"), import_diviner_model.isDivinerInstance);
|
|
110
|
+
return this._queriesDiviner;
|
|
151
111
|
}
|
|
152
112
|
async responsesArchivist() {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
return this._responsesArchivist;
|
|
157
|
-
}
|
|
158
|
-
if (Date.now() - (this._lastResponsesArchivistAttempt ?? 0) < this._reResolveDelay) {
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
161
|
-
this._lastResponsesArchivistAttempt = Date.now();
|
|
162
|
-
const resolved = await this.resolver.resolve((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.responses) == null ? void 0 : _c.archivist);
|
|
163
|
-
if (resolved) {
|
|
164
|
-
const typedResolve = (0, import_archivist_model.asArchivistInstance)(resolved);
|
|
165
|
-
if (typedResolve) {
|
|
166
|
-
return typedResolve;
|
|
167
|
-
} else {
|
|
168
|
-
(_h = this.logger) == null ? void 0 : _h.warn(`Unable to resolve responseArchivist as correct type [${(_f = (_e = (_d = this.config) == null ? void 0 : _d.intersect) == null ? void 0 : _e.responses) == null ? void 0 : _f.archivist}][${(_g = resolved == null ? void 0 : resolved.constructor) == null ? void 0 : _g.name}]: ${(0, import_object2.toJsonString)(resolved)}`);
|
|
169
|
-
}
|
|
170
|
-
} else {
|
|
171
|
-
(_l = this.logger) == null ? void 0 : _l.log(`Unable to resolve responseArchivist [${(_k = (_j = (_i = this.config) == null ? void 0 : _i.intersect) == null ? void 0 : _j.responses) == null ? void 0 : _k.archivist}]`);
|
|
172
|
-
}
|
|
173
|
-
});
|
|
113
|
+
var _a, _b, _c;
|
|
114
|
+
this._responsesArchivist = this._responsesArchivist ?? await this.resolve((0, import_assert.assertEx)((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.responses) == null ? void 0 : _c.archivist, () => "No responses Archivist defined"), import_archivist_model.isArchivistInstance);
|
|
115
|
+
return this._responsesArchivist;
|
|
174
116
|
}
|
|
175
117
|
async responsesDiviner() {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
return this._responsesDiviner;
|
|
180
|
-
}
|
|
181
|
-
if (Date.now() - (this._lastResponsesDivinerAttempt ?? 0) < this._reResolveDelay) {
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
this._lastResponsesDivinerAttempt = Date.now();
|
|
185
|
-
const resolved = await this.resolver.resolve((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.responses) == null ? void 0 : _c.boundWitnessDiviner);
|
|
186
|
-
if (resolved) {
|
|
187
|
-
const typedResolve = (0, import_diviner_model.asDivinerInstance)(resolved);
|
|
188
|
-
if (typedResolve) {
|
|
189
|
-
return typedResolve;
|
|
190
|
-
} else {
|
|
191
|
-
(_h = this.logger) == null ? void 0 : _h.warn(`Unable to resolve responsesDiviner as correct type [${(_f = (_e = (_d = this.config) == null ? void 0 : _d.intersect) == null ? void 0 : _e.responses) == null ? void 0 : _f.boundWitnessDiviner}][${(_g = resolved == null ? void 0 : resolved.constructor) == null ? void 0 : _g.name}]: ${(0, import_object2.toJsonString)(resolved)}`);
|
|
192
|
-
}
|
|
193
|
-
} else {
|
|
194
|
-
(_l = this.logger) == null ? void 0 : _l.log(`Unable to resolve responsesDiviner [${(_k = (_j = (_i = this.config) == null ? void 0 : _i.intersect) == null ? void 0 : _j.responses) == null ? void 0 : _k.boundWitnessDiviner}]`);
|
|
195
|
-
}
|
|
196
|
-
});
|
|
118
|
+
var _a, _b, _c;
|
|
119
|
+
this._responsesDiviner = this._responsesDiviner ?? await this.resolve((0, import_assert.assertEx)((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.responses) == null ? void 0 : _c.boundWitnessDiviner, () => "No responses Diviner defined"), import_diviner_model.isDivinerInstance);
|
|
120
|
+
return this._responsesDiviner;
|
|
197
121
|
}
|
|
198
122
|
/**
|
|
199
123
|
* Commit the internal state of the process. This is similar
|
|
@@ -225,6 +149,28 @@ var _AsyncQueryBusBase = class _AsyncQueryBusBase extends import_object2.Base {
|
|
|
225
149
|
return state;
|
|
226
150
|
}
|
|
227
151
|
}
|
|
152
|
+
async resolve(id, typeCheck) {
|
|
153
|
+
return await this._resolveMutex.runExclusive(async () => {
|
|
154
|
+
var _a, _b, _c;
|
|
155
|
+
if (this._queriesArchivist) {
|
|
156
|
+
return this._queriesArchivist;
|
|
157
|
+
}
|
|
158
|
+
if (Date.now() - (this._lastResolveAttempt[id] ?? 0) < this._reResolveDelay) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
this._lastResolveAttempt[id] = Date.now();
|
|
162
|
+
const resolved = await (0, import_module_model.resolveModuleIdentifier)(this.resolver, id);
|
|
163
|
+
if (resolved) {
|
|
164
|
+
if (typeCheck(resolved)) {
|
|
165
|
+
return resolved;
|
|
166
|
+
} else {
|
|
167
|
+
(_b = this.logger) == null ? void 0 : _b.warn(`Unable to resolve responsesDiviner as correct type [${id}][${(_a = resolved == null ? void 0 : resolved.constructor) == null ? void 0 : _a.name}]: ${resolved.id}`);
|
|
168
|
+
}
|
|
169
|
+
} else {
|
|
170
|
+
(_c = this.logger) == null ? void 0 : _c.debug(`Unable to resolve queriesArchivist [${id}] [${await (0, import_module_model.traceModuleIdentifier)(this.resolver, id)}]`);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
}
|
|
228
174
|
};
|
|
229
175
|
__name(_AsyncQueryBusBase, "AsyncQueryBusBase");
|
|
230
176
|
var AsyncQueryBusBase = _AsyncQueryBusBase;
|
|
@@ -284,7 +230,7 @@ var _AsyncQueryBusClient = class _AsyncQueryBusClient extends AsyncQueryBusBase
|
|
|
284
230
|
...query,
|
|
285
231
|
$meta
|
|
286
232
|
});
|
|
287
|
-
const queryArchivist = (0,
|
|
233
|
+
const queryArchivist = (0, import_assert2.assertEx)(await this.queriesArchivist(), () => {
|
|
288
234
|
var _a2, _b2, _c2;
|
|
289
235
|
return `Unable to contact queriesArchivist [${(_c2 = (_b2 = (_a2 = this.config) == null ? void 0 : _a2.intersect) == null ? void 0 : _b2.queries) == null ? void 0 : _c2.archivist}]`;
|
|
290
236
|
});
|
|
@@ -421,11 +367,11 @@ var AsyncQueryBusClient = _AsyncQueryBusClient;
|
|
|
421
367
|
|
|
422
368
|
// src/AsyncQueryBus/AsyncQueryBusHost.ts
|
|
423
369
|
var import_array = require("@xylabs/array");
|
|
424
|
-
var
|
|
370
|
+
var import_assert3 = require("@xylabs/assert");
|
|
425
371
|
var import_timer2 = require("@xylabs/timer");
|
|
426
372
|
var import_boundwitness_model2 = require("@xyo-network/boundwitness-model");
|
|
427
373
|
var import_diviner_boundwitness_model2 = require("@xyo-network/diviner-boundwitness-model");
|
|
428
|
-
var
|
|
374
|
+
var import_module_model2 = require("@xyo-network/module-model");
|
|
429
375
|
var import_payload_builder2 = require("@xyo-network/payload-builder");
|
|
430
376
|
var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
431
377
|
_exposedAddresses = /* @__PURE__ */ new Set();
|
|
@@ -447,14 +393,14 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
447
393
|
async expose(id, options) {
|
|
448
394
|
var _a;
|
|
449
395
|
const { failOnAlreadyExposed, required = true } = options ?? {};
|
|
450
|
-
const module2 = (0,
|
|
396
|
+
const module2 = (0, import_module_model2.asModuleInstance)(await this.resolver.resolve(id, {
|
|
451
397
|
maxDepth: 10
|
|
452
398
|
}));
|
|
453
399
|
if (!module2 && required) {
|
|
454
400
|
throw new Error(`Unable to resolve module to expose [${id}]`);
|
|
455
401
|
}
|
|
456
402
|
if (module2) {
|
|
457
|
-
(0,
|
|
403
|
+
(0, import_assert3.assertEx)(!failOnAlreadyExposed || !this._exposedAddresses.has(module2.address), () => `Address already exposed: ${id} [${module2.address}]`);
|
|
458
404
|
this._exposedAddresses.add(module2.address);
|
|
459
405
|
this._exposeOptions[module2.address] = {
|
|
460
406
|
...options
|
|
@@ -469,7 +415,7 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
469
415
|
...((_a = this.config) == null ? void 0 : _a.listeningModules) ?? [],
|
|
470
416
|
...this.exposedAddresses.values()
|
|
471
417
|
];
|
|
472
|
-
const mods = await Promise.all(exposedModules.map(async (exposedModule) => (0,
|
|
418
|
+
const mods = await Promise.all(exposedModules.map(async (exposedModule) => (0, import_assert3.assertEx)((0, import_module_model2.asModuleInstance)(await this.resolver.resolve(exposedModule, {
|
|
473
419
|
maxDepth: 10
|
|
474
420
|
})), () => `Unable to resolve listeningModule [${exposedModule}]`)));
|
|
475
421
|
return mods;
|
|
@@ -490,11 +436,11 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
490
436
|
}
|
|
491
437
|
async unexpose(id, validate = true) {
|
|
492
438
|
var _a;
|
|
493
|
-
const module2 = (0,
|
|
439
|
+
const module2 = (0, import_module_model2.asModuleInstance)(await this.resolver.resolve(id, {
|
|
494
440
|
maxDepth: 10
|
|
495
441
|
}));
|
|
496
442
|
if (module2) {
|
|
497
|
-
(0,
|
|
443
|
+
(0, import_assert3.assertEx)(!validate || this._exposedAddresses.has(module2.address), () => `Address not exposed [${module2.address}][${module2.id}]`);
|
|
498
444
|
this._exposedAddresses.delete(module2.address);
|
|
499
445
|
delete this._exposeOptions[module2.address];
|
|
500
446
|
(_a = this.logger) == null ? void 0 : _a.debug(`${module2.address} [${module2.id}] unexposed`);
|
|
@@ -504,11 +450,11 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
504
450
|
callLocalModule = async (localModule, query) => {
|
|
505
451
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
506
452
|
const localModuleName = localModule.config.name ?? localModule.address;
|
|
507
|
-
const queryArchivist = (0,
|
|
453
|
+
const queryArchivist = (0, import_assert3.assertEx)(await this.queriesArchivist(), () => {
|
|
508
454
|
var _a2, _b2, _c2;
|
|
509
455
|
return `Unable to contact queriesArchivist [${(_c2 = (_b2 = (_a2 = this.config) == null ? void 0 : _a2.intersect) == null ? void 0 : _b2.queries) == null ? void 0 : _c2.archivist}]`;
|
|
510
456
|
});
|
|
511
|
-
const responsesArchivist = (0,
|
|
457
|
+
const responsesArchivist = (0, import_assert3.assertEx)(await this.responsesArchivist(), () => {
|
|
512
458
|
var _a2, _b2, _c2;
|
|
513
459
|
return `Unable to contact responsesArchivist [${(_c2 = (_b2 = (_a2 = this.config) == null ? void 0 : _a2.intersect) == null ? void 0 : _b2.queries) == null ? void 0 : _c2.archivist}]`;
|
|
514
460
|
});
|
|
@@ -530,7 +476,7 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
530
476
|
(_c = this.logger) == null ? void 0 : _c.debug(`Issuing query ${querySchema2} (${queryHash}) addressed to module: ${localModuleName}`);
|
|
531
477
|
const response = await localModule.query(query, queryPayloads, {
|
|
532
478
|
allowedQueries: (_d = this._exposeOptions[localModule.address]) == null ? void 0 : _d.allowedQueries,
|
|
533
|
-
schema:
|
|
479
|
+
schema: import_module_model2.ModuleConfigSchema
|
|
534
480
|
});
|
|
535
481
|
const [bw, payloads, errors] = response;
|
|
536
482
|
(_e = this.logger) == null ? void 0 : _e.debug(`Replying to query ${queryHash} addressed to module: ${localModuleName}`);
|
|
@@ -559,8 +505,9 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
559
505
|
*/
|
|
560
506
|
findQueriesToAddress = async (address) => {
|
|
561
507
|
var _a, _b, _c, _d;
|
|
562
|
-
const
|
|
563
|
-
|
|
508
|
+
const queriesDivinerId = (0, import_assert3.assertEx)((_c = (_b = (_a = this.config) == null ? void 0 : _a.intersect) == null ? void 0 : _b.queries) == null ? void 0 : _c.boundWitnessDiviner, () => "No queries Diviner defined");
|
|
509
|
+
const queriesBoundWitnessDiviner = await this.queriesDiviner();
|
|
510
|
+
if (queriesBoundWitnessDiviner) {
|
|
564
511
|
const timestamp = await this.retrieveState(address);
|
|
565
512
|
const destination = [
|
|
566
513
|
address
|
|
@@ -573,7 +520,7 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
573
520
|
sort: "asc",
|
|
574
521
|
timestamp
|
|
575
522
|
};
|
|
576
|
-
const result = await
|
|
523
|
+
const result = await queriesBoundWitnessDiviner.divine([
|
|
577
524
|
divinerQuery
|
|
578
525
|
]);
|
|
579
526
|
const queries = result.filter(import_boundwitness_model2.isQueryBoundWitnessWithMeta);
|
|
@@ -581,7 +528,7 @@ var _AsyncQueryBusHost = class _AsyncQueryBusHost extends AsyncQueryBusBase {
|
|
|
581
528
|
await this.commitState(address, nextState);
|
|
582
529
|
return queries;
|
|
583
530
|
} else {
|
|
584
|
-
(_d = this.logger) == null ? void 0 : _d.warn(`Unable to resolve
|
|
531
|
+
(_d = this.logger) == null ? void 0 : _d.warn(`Unable to resolve queriesBoundWitnessDiviner [${queriesDivinerId}] [${await (0, import_module_model2.traceModuleIdentifier)(this.resolver, queriesDivinerId)}]`);
|
|
585
532
|
}
|
|
586
533
|
};
|
|
587
534
|
/**
|
|
@@ -680,18 +627,18 @@ var PubSubBridgeSchema = "network.xyo.bridge.pubsub";
|
|
|
680
627
|
var PubSubBridgeConfigSchema = `${PubSubBridgeSchema}.config`;
|
|
681
628
|
|
|
682
629
|
// src/PubSubBridge.ts
|
|
683
|
-
var
|
|
630
|
+
var import_assert5 = require("@xylabs/assert");
|
|
684
631
|
var import_exists = require("@xylabs/exists");
|
|
685
632
|
var import_abstract_bridge3 = require("@xyo-network/abstract-bridge");
|
|
686
|
-
var
|
|
633
|
+
var import_module_model4 = require("@xyo-network/module-model");
|
|
687
634
|
|
|
688
635
|
// src/PubSubBridgeModuleResolver.ts
|
|
689
|
-
var
|
|
636
|
+
var import_assert4 = require("@xylabs/assert");
|
|
690
637
|
var import_hex = require("@xylabs/hex");
|
|
691
638
|
var import_abstract_bridge2 = require("@xyo-network/abstract-bridge");
|
|
692
639
|
var import_account = require("@xyo-network/account");
|
|
693
640
|
var import_config_payload_plugin = require("@xyo-network/config-payload-plugin");
|
|
694
|
-
var
|
|
641
|
+
var import_module_model3 = require("@xyo-network/module-model");
|
|
695
642
|
var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends import_abstract_bridge2.AbstractBridgeModuleResolver {
|
|
696
643
|
async resolveHandler(id, options) {
|
|
697
644
|
var _a, _b;
|
|
@@ -701,14 +648,14 @@ var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends impo
|
|
|
701
648
|
}
|
|
702
649
|
const idParts = id.split(":");
|
|
703
650
|
const firstPart = idParts.shift();
|
|
704
|
-
(0,
|
|
651
|
+
(0, import_assert4.assertEx)((0, import_hex.isAddress)(firstPart), () => `Invalid module address: ${firstPart}`);
|
|
705
652
|
const remainderParts = idParts.join(":");
|
|
706
653
|
const account = import_account.Account.randomSync();
|
|
707
654
|
const params = {
|
|
708
655
|
account,
|
|
709
656
|
busClient: this.params.busClient,
|
|
710
657
|
config: {
|
|
711
|
-
schema:
|
|
658
|
+
schema: import_module_model3.ModuleConfigSchema
|
|
712
659
|
},
|
|
713
660
|
host: this.params.bridge,
|
|
714
661
|
moduleAddress: firstPart
|
|
@@ -718,13 +665,13 @@ var _PubSubBridgeModuleResolver = class _PubSubBridgeModuleResolver extends impo
|
|
|
718
665
|
const state = await proxy.state();
|
|
719
666
|
if (state) {
|
|
720
667
|
const configSchema = (_a = state.find((payload) => payload.schema === import_config_payload_plugin.ConfigSchema)) == null ? void 0 : _a.config;
|
|
721
|
-
const config = (0,
|
|
668
|
+
const config = (0, import_assert4.assertEx)(state.find((payload) => payload.schema === configSchema), () => "Unable to locate config");
|
|
722
669
|
proxy.setConfig(config);
|
|
723
670
|
}
|
|
724
671
|
}
|
|
725
672
|
await ((_b = proxy.start) == null ? void 0 : _b.call(proxy));
|
|
726
673
|
const wrapped = (0, import_abstract_bridge2.wrapModuleWithType)(proxy, account);
|
|
727
|
-
const as = (0,
|
|
674
|
+
const as = (0, import_assert4.assertEx)((0, import_module_model3.asModuleInstance)(wrapped, {}), () => `Failed to asModuleInstance [${id}]`);
|
|
728
675
|
proxy.upResolver.add(as);
|
|
729
676
|
proxy.downResolver.add(as);
|
|
730
677
|
this.add(as);
|
|
@@ -759,7 +706,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
759
706
|
get resolver() {
|
|
760
707
|
this._resolver = this._resolver ?? new PubSubBridgeModuleResolver({
|
|
761
708
|
bridge: this,
|
|
762
|
-
busClient: (0,
|
|
709
|
+
busClient: (0, import_assert5.assertEx)(this.busClient(), () => "busClient not configured"),
|
|
763
710
|
wrapperAccount: this.account
|
|
764
711
|
});
|
|
765
712
|
return this._resolver;
|
|
@@ -768,7 +715,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
768
715
|
return `${this.config.name ?? moduleName}`;
|
|
769
716
|
}
|
|
770
717
|
get roots() {
|
|
771
|
-
return (0,
|
|
718
|
+
return (0, import_assert5.assertEx)(this.config.roots, () => "roots not configured");
|
|
772
719
|
}
|
|
773
720
|
async discoverRoots() {
|
|
774
721
|
const rootInstances = (await Promise.all(this.roots.map(async (root) => await this.resolver.resolve(root)))).filter(import_exists.exists);
|
|
@@ -779,7 +726,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
779
726
|
}
|
|
780
727
|
async exposeHandler(id, options) {
|
|
781
728
|
const { maxDepth = 2, direction = "all", required = true } = options ?? {};
|
|
782
|
-
const host = (0,
|
|
729
|
+
const host = (0, import_assert5.assertEx)(this.busHost(), () => "Not configured as a host");
|
|
783
730
|
const module2 = await host.expose(id, {
|
|
784
731
|
required
|
|
785
732
|
});
|
|
@@ -814,7 +761,7 @@ var _PubSubBridge = class _PubSubBridge extends import_abstract_bridge3.Abstract
|
|
|
814
761
|
}
|
|
815
762
|
async unexposeHandler(id, options) {
|
|
816
763
|
const { maxDepth = 2, direction = "all", required = true } = options ?? {};
|
|
817
|
-
const host = (0,
|
|
764
|
+
const host = (0, import_assert5.assertEx)(this.busHost(), () => "Not configured as a host");
|
|
818
765
|
const module2 = await host.unexpose(id, required);
|
|
819
766
|
if (module2) {
|
|
820
767
|
const children = maxDepth > 0 ? await module2.resolve("*", {
|
|
@@ -865,7 +812,7 @@ __publicField(_PubSubBridge, "configSchemas", [
|
|
|
865
812
|
]);
|
|
866
813
|
var PubSubBridge = _PubSubBridge;
|
|
867
814
|
PubSubBridge = _ts_decorate([
|
|
868
|
-
(0,
|
|
815
|
+
(0, import_module_model4.creatableModule)()
|
|
869
816
|
], PubSubBridge);
|
|
870
817
|
// Annotate the CommonJS export names for ESM import in node:
|
|
871
818
|
0 && (module.exports = {
|