@xyo-network/module-abstract 2.104.0 → 2.105.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/AbstractModule.d.cts +1 -8
- package/dist/browser/AbstractModule.d.cts.map +1 -1
- package/dist/browser/AbstractModule.d.mts +1 -8
- package/dist/browser/AbstractModule.d.mts.map +1 -1
- package/dist/browser/AbstractModule.d.ts +1 -8
- package/dist/browser/AbstractModule.d.ts.map +1 -1
- package/dist/browser/index.cjs +15 -84
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +15 -84
- package/dist/browser/index.js.map +1 -1
- package/dist/neutral/AbstractModule.d.cts +1 -8
- package/dist/neutral/AbstractModule.d.cts.map +1 -1
- package/dist/neutral/AbstractModule.d.mts +1 -8
- package/dist/neutral/AbstractModule.d.mts.map +1 -1
- package/dist/neutral/AbstractModule.d.ts +1 -8
- package/dist/neutral/AbstractModule.d.ts.map +1 -1
- package/dist/neutral/index.cjs +15 -84
- package/dist/neutral/index.cjs.map +1 -1
- package/dist/neutral/index.js +15 -84
- package/dist/neutral/index.js.map +1 -1
- package/dist/node/AbstractModule.d.cts +1 -8
- package/dist/node/AbstractModule.d.cts.map +1 -1
- package/dist/node/AbstractModule.d.mts +1 -8
- package/dist/node/AbstractModule.d.mts.map +1 -1
- package/dist/node/AbstractModule.d.ts +1 -8
- package/dist/node/AbstractModule.d.ts.map +1 -1
- package/dist/node/index.cjs +16 -89
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +16 -89
- package/dist/node/index.js.map +1 -1
- package/package.json +21 -20
- package/src/AbstractModule.ts +5 -64
|
@@ -5,7 +5,7 @@ import { AccountInstance } from '@xyo-network/account-model';
|
|
|
5
5
|
import { ArchivistInstance } from '@xyo-network/archivist-model';
|
|
6
6
|
import { BoundWitness, QueryBoundWitness } from '@xyo-network/boundwitness-model';
|
|
7
7
|
import { ModuleManifestPayload } from '@xyo-network/manifest-model';
|
|
8
|
-
import { AddressPayload, AddressPreviousHashPayload, ArchivingModuleConfig, AttachableModuleInstance, CreatableModule, CreatableModuleFactory, Labels, Module, ModuleConfig, ModuleDescriptionPayload, ModuleDetailsError, ModuleEventData, ModuleParams,
|
|
8
|
+
import { AddressPayload, AddressPreviousHashPayload, ArchivingModuleConfig, AttachableModuleInstance, CreatableModule, CreatableModuleFactory, Labels, Module, ModuleConfig, ModuleDescriptionPayload, ModuleDetailsError, ModuleEventData, ModuleParams, ModuleQueryHandlerResult, ModuleQueryResult, ModuleResolverInstance, ModuleStatus, ObjectResolverPriority } from '@xyo-network/module-model';
|
|
9
9
|
import { ModuleError, Payload, Query, Schema, WithMeta } from '@xyo-network/payload-model';
|
|
10
10
|
import { WalletInstance } from '@xyo-network/wallet-model';
|
|
11
11
|
import { LRUCache } from 'lru-cache';
|
|
@@ -21,14 +21,12 @@ export declare abstract class AbstractModule<TParams extends ModuleParams = Modu
|
|
|
21
21
|
static readonly uniqueName: string;
|
|
22
22
|
protected static privateConstructorKey: string;
|
|
23
23
|
protected _account: AccountInstance | undefined;
|
|
24
|
-
protected readonly _baseModuleQueryAccountPaths: Record<ModuleQueries['schema'], string>;
|
|
25
24
|
protected _cachedManifests: LRUCache<number, (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/manifest-model").ModuleManifest & {
|
|
26
25
|
schema: "network.xyo.module.manifest";
|
|
27
26
|
}) | (import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/manifest-model").ModuleManifest & {
|
|
28
27
|
schema: "network.xyo.node.manifest";
|
|
29
28
|
}), unknown>;
|
|
30
29
|
protected _lastError?: ModuleDetailsError;
|
|
31
|
-
protected readonly _queryAccounts: Record<ModuleQueries['schema'], AccountInstance | undefined>;
|
|
32
30
|
protected _startPromise: Promisable<boolean> | undefined;
|
|
33
31
|
protected _started: Promisable<boolean> | undefined;
|
|
34
32
|
protected readonly moduleConfigQueryValidator: Queryable;
|
|
@@ -52,15 +50,11 @@ export declare abstract class AbstractModule<TParams extends ModuleParams = Modu
|
|
|
52
50
|
get modName(): string | undefined;
|
|
53
51
|
get priority(): ObjectResolverPriority;
|
|
54
52
|
get queries(): Schema[];
|
|
55
|
-
get queryAccountPaths(): Readonly<Record<Query['schema'], string | undefined>>;
|
|
56
|
-
get queryAccounts(): Readonly<Record<Query['schema'], AccountInstance | undefined>>;
|
|
57
53
|
get status(): ModuleStatus;
|
|
58
54
|
get timestamp(): boolean;
|
|
59
|
-
protected get baseModuleQueryAccountPaths(): Record<ModuleQueries['schema'], string>;
|
|
60
55
|
protected set status(value: ModuleStatus);
|
|
61
56
|
abstract get downResolver(): ModuleResolverInstance;
|
|
62
57
|
abstract get upResolver(): ModuleResolverInstance;
|
|
63
|
-
protected abstract get _queryAccountPaths(): Record<Query['schema'], string>;
|
|
64
58
|
static _getRootFunction(funcName: string): any;
|
|
65
59
|
static _noOverride(functionName: string): void;
|
|
66
60
|
static create<TModule extends AttachableModuleInstance>(this: CreatableModule<TModule>, params?: Omit<TModule['params'], 'config'> & {
|
|
@@ -96,7 +90,6 @@ export declare abstract class AbstractModule<TParams extends ModuleParams = Modu
|
|
|
96
90
|
protected generateDescribe(): Promise<ModuleDescriptionPayload>;
|
|
97
91
|
/** @deprecated use archivistInstance() instead */
|
|
98
92
|
protected getArchivist(): Promise<ArchivistInstance | undefined>;
|
|
99
|
-
protected initializeQueryAccounts(): Promise<void>;
|
|
100
93
|
protected isAllowedArchivingQuery(schema: Schema): boolean;
|
|
101
94
|
protected manifestHandler(_maxDepth?: number, _ignoreAddresses?: Address[]): Promisable<ModuleManifestPayload>;
|
|
102
95
|
protected moduleAddressHandler(): Promisable<(AddressPreviousHashPayload | AddressPayload)[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/AbstractModule.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,EAA2B,MAAM,EAAY,MAAM,gBAAgB,CAAA;AAE1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAuB,MAAM,8BAA8B,CAAA;AAErF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAGjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EACL,cAAc,EACd,0BAA0B,EAG1B,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,sBAAsB,EAGtB,MAAM,EACN,MAAM,EAGN,YAAY,EAEZ,wBAAwB,EAExB,kBAAkB,EAClB,eAAe,EAGf,YAAY,
|
|
1
|
+
{"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/AbstractModule.ts"],"names":[],"mappings":"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"}
|
package/dist/neutral/index.cjs
CHANGED
|
@@ -196,32 +196,27 @@ var ModuleConfigQueryValidator = class {
|
|
|
196
196
|
this.hasDisallowedRules = Object.keys(this.disallowed).length > 0;
|
|
197
197
|
this.hasRules = this.hasAllowedRules || this.hasDisallowedRules;
|
|
198
198
|
}
|
|
199
|
-
queryable = async (query, payloads) => {
|
|
200
|
-
if (!this.hasRules)
|
|
201
|
-
return true;
|
|
199
|
+
queryable = /* @__PURE__ */ __name(async (query, payloads) => {
|
|
200
|
+
if (!this.hasRules) return true;
|
|
202
201
|
const addresses = query.addresses;
|
|
203
|
-
if (addresses.length === 0)
|
|
204
|
-
return false;
|
|
202
|
+
if (addresses.length === 0) return false;
|
|
205
203
|
const wrapper = await import_boundwitness_wrapper.QueryBoundWitnessWrapper.parseQuery(query, payloads);
|
|
206
204
|
const schema = (await wrapper.getQuery()).schema;
|
|
207
205
|
return this.queryAllowed(schema, addresses) && !this.queryDisallowed(schema, addresses);
|
|
208
|
-
};
|
|
209
|
-
queryAllowed = (schema, addresses) => {
|
|
210
|
-
if (!this.hasAllowedRules)
|
|
211
|
-
return true;
|
|
206
|
+
}, "queryable");
|
|
207
|
+
queryAllowed = /* @__PURE__ */ __name((schema, addresses) => {
|
|
208
|
+
if (!this.hasAllowedRules) return true;
|
|
212
209
|
if (addresses.length > 1) {
|
|
213
210
|
const signatories = toAddressesString(addresses);
|
|
214
211
|
const validCosigners = this.allowed?.[schema]?.includes(signatories);
|
|
215
|
-
if (validCosigners)
|
|
216
|
-
return true;
|
|
212
|
+
if (validCosigners) return true;
|
|
217
213
|
}
|
|
218
214
|
return addresses.every((address) => this.allowed?.[schema]?.includes(address) || false);
|
|
219
|
-
};
|
|
220
|
-
queryDisallowed = (schema, addresses) => {
|
|
221
|
-
if (!this.hasDisallowedRules)
|
|
222
|
-
return false;
|
|
215
|
+
}, "queryAllowed");
|
|
216
|
+
queryDisallowed = /* @__PURE__ */ __name((schema, addresses) => {
|
|
217
|
+
if (!this.hasDisallowedRules) return false;
|
|
223
218
|
return addresses.some((address) => this.disallowed?.[schema]?.includes(address));
|
|
224
|
-
};
|
|
219
|
+
}, "queryDisallowed");
|
|
225
220
|
};
|
|
226
221
|
var toAddressesString = /* @__PURE__ */ __name((addresses) => {
|
|
227
222
|
return Array.isArray(addresses) ? addresses.sort().map((address) => address.toLowerCase()).join(delimiter) : addresses.toLowerCase();
|
|
@@ -264,24 +259,12 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
264
259
|
static uniqueName = (0, import_object2.globallyUnique)("AbstractModule", _AbstractModule, "xyo");
|
|
265
260
|
static privateConstructorKey = Date.now().toString();
|
|
266
261
|
_account = void 0;
|
|
267
|
-
_baseModuleQueryAccountPaths = {
|
|
268
|
-
[import_module_model.ModuleAddressQuerySchema]: "1",
|
|
269
|
-
[import_module_model.ModuleManifestQuerySchema]: "5",
|
|
270
|
-
[import_module_model.ModuleStateQuerySchema]: "6",
|
|
271
|
-
[import_module_model.ModuleSubscribeQuerySchema]: "3"
|
|
272
|
-
};
|
|
273
262
|
//cache manifest based on maxDepth
|
|
274
263
|
_cachedManifests = new import_lru_cache.LRUCache({
|
|
275
264
|
max: 10,
|
|
276
265
|
ttl: 1e3 * 60 * 5
|
|
277
266
|
});
|
|
278
267
|
_lastError;
|
|
279
|
-
_queryAccounts = {
|
|
280
|
-
[import_module_model.ModuleAddressQuerySchema]: void 0,
|
|
281
|
-
[import_module_model.ModuleManifestQuerySchema]: void 0,
|
|
282
|
-
[import_module_model.ModuleStateQuerySchema]: void 0,
|
|
283
|
-
[import_module_model.ModuleSubscribeQuerySchema]: void 0
|
|
284
|
-
};
|
|
285
268
|
_startPromise = void 0;
|
|
286
269
|
_started = void 0;
|
|
287
270
|
moduleConfigQueryValidator;
|
|
@@ -351,24 +334,12 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
351
334
|
import_module_model.ModuleStateQuerySchema
|
|
352
335
|
];
|
|
353
336
|
}
|
|
354
|
-
get queryAccountPaths() {
|
|
355
|
-
return {
|
|
356
|
-
...this._baseModuleQueryAccountPaths,
|
|
357
|
-
...this._queryAccountPaths
|
|
358
|
-
};
|
|
359
|
-
}
|
|
360
|
-
get queryAccounts() {
|
|
361
|
-
return this._queryAccounts;
|
|
362
|
-
}
|
|
363
337
|
get status() {
|
|
364
338
|
return this._status;
|
|
365
339
|
}
|
|
366
340
|
get timestamp() {
|
|
367
341
|
return this.config.timestamp ?? false;
|
|
368
342
|
}
|
|
369
|
-
get baseModuleQueryAccountPaths() {
|
|
370
|
-
return this._baseModuleQueryAccountPaths;
|
|
371
|
-
}
|
|
372
343
|
set status(value) {
|
|
373
344
|
if (this._status !== "dead") {
|
|
374
345
|
this._status = value;
|
|
@@ -514,8 +485,7 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
514
485
|
if (this.dead) {
|
|
515
486
|
return false;
|
|
516
487
|
}
|
|
517
|
-
if (!await this.started("warn"))
|
|
518
|
-
return false;
|
|
488
|
+
if (!await this.started("warn")) return false;
|
|
519
489
|
const configValidator = queryConfig ? new ModuleConfigQueryValidator(Object.assign({}, this.config, queryConfig)).queryable : this.moduleConfigQueryValidator;
|
|
520
490
|
const validators = [
|
|
521
491
|
this.supportedQueryValidator,
|
|
@@ -653,10 +623,8 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
653
623
|
}
|
|
654
624
|
async bindQueryResult(query, payloads, additionalWitnesses = [], errors) {
|
|
655
625
|
const builder = new import_boundwitness_builder.BoundWitnessBuilder().payloads(payloads).errors(errors).sourceQuery(query.$hash);
|
|
656
|
-
const queryWitnessAccount = this.queryAccounts[query.schema];
|
|
657
626
|
const witnesses = [
|
|
658
627
|
this.account,
|
|
659
|
-
queryWitnessAccount,
|
|
660
628
|
...additionalWitnesses
|
|
661
629
|
].filter(import_exists.exists);
|
|
662
630
|
builder.signers(witnesses);
|
|
@@ -715,23 +683,6 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
715
683
|
async getArchivist() {
|
|
716
684
|
return await this.archivistInstance();
|
|
717
685
|
}
|
|
718
|
-
async initializeQueryAccounts() {
|
|
719
|
-
const paths = Object.values(this.queryAccountPaths).filter(import_exists.exists);
|
|
720
|
-
const distinctPaths = new Set(paths);
|
|
721
|
-
(0, import_assert2.assertEx)(distinctPaths.size === paths.length, () => `${this.modName ? this.modName + ": " : ""}Duplicate query account paths`);
|
|
722
|
-
const wallet = this.account;
|
|
723
|
-
if (wallet?.derivePath) {
|
|
724
|
-
for (const key in this.queryAccountPaths) {
|
|
725
|
-
if (Object.prototype.hasOwnProperty.call(this.queryAccountPaths, key)) {
|
|
726
|
-
const query = key;
|
|
727
|
-
const queryAccountPath = this.queryAccountPaths[query];
|
|
728
|
-
if (queryAccountPath) {
|
|
729
|
-
this._queryAccounts[query] = await wallet.derivePath?.(queryAccountPath);
|
|
730
|
-
}
|
|
731
|
-
}
|
|
732
|
-
}
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
686
|
isAllowedArchivingQuery(schema) {
|
|
736
687
|
const queries = this.archiving?.queries;
|
|
737
688
|
if (queries) {
|
|
@@ -743,24 +694,6 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
743
694
|
throw new Error("Not supported");
|
|
744
695
|
}
|
|
745
696
|
moduleAddressHandler() {
|
|
746
|
-
const queryAccounts = Object.entries(this.queryAccounts).filter((value) => {
|
|
747
|
-
return (0, import_exists.exists)(value[1]);
|
|
748
|
-
}).map(([name2, account]) => {
|
|
749
|
-
const address2 = account.address;
|
|
750
|
-
const previousHash2 = account.previousHash;
|
|
751
|
-
return [
|
|
752
|
-
{
|
|
753
|
-
address: address2,
|
|
754
|
-
name: name2,
|
|
755
|
-
schema: import_module_model.AddressSchema
|
|
756
|
-
},
|
|
757
|
-
{
|
|
758
|
-
address: address2,
|
|
759
|
-
previousHash: previousHash2,
|
|
760
|
-
schema: import_module_model.AddressPreviousHashSchema
|
|
761
|
-
}
|
|
762
|
-
];
|
|
763
|
-
});
|
|
764
697
|
const address = this.address;
|
|
765
698
|
const name = this.modName;
|
|
766
699
|
const previousHash = this.address;
|
|
@@ -782,8 +715,7 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
782
715
|
};
|
|
783
716
|
return [
|
|
784
717
|
moduleAccount,
|
|
785
|
-
moduleAccountPreviousHash
|
|
786
|
-
...queryAccounts.flat()
|
|
718
|
+
moduleAccountPreviousHash
|
|
787
719
|
];
|
|
788
720
|
}
|
|
789
721
|
async queryHandler(query, payloads, queryConfig) {
|
|
@@ -817,7 +749,7 @@ var AbstractModule = class _AbstractModule extends BaseEmitter {
|
|
|
817
749
|
}
|
|
818
750
|
async startHandler() {
|
|
819
751
|
this.validateConfig();
|
|
820
|
-
await
|
|
752
|
+
await Promise.resolve();
|
|
821
753
|
this._started = true;
|
|
822
754
|
return true;
|
|
823
755
|
}
|
|
@@ -1080,8 +1012,7 @@ var AbstractModuleInstance = class _AbstractModuleInstance extends AbstractModul
|
|
|
1080
1012
|
}
|
|
1081
1013
|
async resolveArchivingArchivists() {
|
|
1082
1014
|
const archivists = this.archiving?.archivists;
|
|
1083
|
-
if (!archivists)
|
|
1084
|
-
return [];
|
|
1015
|
+
if (!archivists) return [];
|
|
1085
1016
|
const resolved = await Promise.all(archivists.map((archivist) => this.resolve(archivist)));
|
|
1086
1017
|
return (0, import_lodash2.compact)(resolved.map((mod) => (0, import_archivist_model2.asArchivistInstance)(mod)));
|
|
1087
1018
|
}
|