@xyo-network/module-abstract 2.75.0 → 2.75.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.
Files changed (88) hide show
  1. package/dist/browser/AbstractModule.d.cts +84 -0
  2. package/dist/browser/AbstractModule.d.cts.map +1 -0
  3. package/dist/browser/AbstractModule.js +16 -182
  4. package/dist/browser/AbstractModule.js.map +1 -1
  5. package/dist/browser/AbstractModuleInstance.d.cts +14 -0
  6. package/dist/browser/AbstractModuleInstance.d.cts.map +1 -0
  7. package/dist/browser/AbstractModuleInstance.js +4 -738
  8. package/dist/browser/AbstractModuleInstance.js.map +1 -1
  9. package/dist/browser/BaseEmitter.d.cts +17 -0
  10. package/dist/browser/BaseEmitter.d.cts.map +1 -0
  11. package/dist/browser/BaseEmitter.js +2 -4
  12. package/dist/browser/BaseEmitter.js.map +1 -1
  13. package/dist/browser/Error.d.cts +15 -0
  14. package/dist/browser/Error.d.cts.map +1 -0
  15. package/dist/browser/Error.js +2 -4
  16. package/dist/browser/Error.js.map +1 -1
  17. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.cts +15 -0
  18. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.cts.map +1 -0
  19. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.js +4 -6
  20. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.js.map +1 -1
  21. package/dist/browser/QueryValidator/QueryValidator.d.cts +8 -0
  22. package/dist/browser/QueryValidator/QueryValidator.d.cts.map +1 -0
  23. package/dist/browser/QueryValidator/SupportedQueryValidator.d.cts +22 -0
  24. package/dist/browser/QueryValidator/SupportedQueryValidator.d.cts.map +1 -0
  25. package/dist/browser/QueryValidator/SupportedQueryValidator.js +3 -5
  26. package/dist/browser/QueryValidator/SupportedQueryValidator.js.map +1 -1
  27. package/dist/browser/QueryValidator/index.d.cts +4 -0
  28. package/dist/browser/QueryValidator/index.d.cts.map +1 -0
  29. package/dist/browser/QueryValidator/index.js +3 -86
  30. package/dist/browser/QueryValidator/index.js.map +1 -1
  31. package/dist/browser/index.d.cts +6 -0
  32. package/dist/browser/index.d.cts.map +1 -0
  33. package/dist/browser/index.js +5 -782
  34. package/dist/browser/index.js.map +1 -1
  35. package/dist/docs.json +42701 -0
  36. package/dist/node/AbstractModule.d.cts +84 -0
  37. package/dist/node/AbstractModule.d.cts.map +1 -0
  38. package/dist/node/AbstractModule.js +240 -56
  39. package/dist/node/AbstractModule.js.map +1 -1
  40. package/dist/node/AbstractModule.mjs +232 -48
  41. package/dist/node/AbstractModule.mjs.map +1 -1
  42. package/dist/node/AbstractModuleInstance.d.cts +14 -0
  43. package/dist/node/AbstractModuleInstance.d.cts.map +1 -0
  44. package/dist/node/AbstractModuleInstance.js +757 -6
  45. package/dist/node/AbstractModuleInstance.js.map +1 -1
  46. package/dist/node/AbstractModuleInstance.mjs +757 -6
  47. package/dist/node/AbstractModuleInstance.mjs.map +1 -1
  48. package/dist/node/BaseEmitter.d.cts +17 -0
  49. package/dist/node/BaseEmitter.d.cts.map +1 -0
  50. package/dist/node/BaseEmitter.js +6 -5
  51. package/dist/node/BaseEmitter.js.map +1 -1
  52. package/dist/node/BaseEmitter.mjs +6 -5
  53. package/dist/node/BaseEmitter.mjs.map +1 -1
  54. package/dist/node/Error.d.cts +15 -0
  55. package/dist/node/Error.d.cts.map +1 -0
  56. package/dist/node/Error.js +6 -5
  57. package/dist/node/Error.js.map +1 -1
  58. package/dist/node/Error.mjs +6 -5
  59. package/dist/node/Error.mjs.map +1 -1
  60. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.cts +15 -0
  61. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.cts.map +1 -0
  62. package/dist/node/QueryValidator/ModuleConfigQueryValidator.js +23 -14
  63. package/dist/node/QueryValidator/ModuleConfigQueryValidator.js.map +1 -1
  64. package/dist/node/QueryValidator/ModuleConfigQueryValidator.mjs +23 -14
  65. package/dist/node/QueryValidator/ModuleConfigQueryValidator.mjs.map +1 -1
  66. package/dist/node/QueryValidator/QueryValidator.d.cts +8 -0
  67. package/dist/node/QueryValidator/QueryValidator.d.cts.map +1 -0
  68. package/dist/node/QueryValidator/QueryValidator.js +2 -0
  69. package/dist/node/QueryValidator/QueryValidator.js.map +1 -1
  70. package/dist/node/QueryValidator/SupportedQueryValidator.d.cts +22 -0
  71. package/dist/node/QueryValidator/SupportedQueryValidator.d.cts.map +1 -0
  72. package/dist/node/QueryValidator/SupportedQueryValidator.js +7 -6
  73. package/dist/node/QueryValidator/SupportedQueryValidator.js.map +1 -1
  74. package/dist/node/QueryValidator/SupportedQueryValidator.mjs +7 -6
  75. package/dist/node/QueryValidator/SupportedQueryValidator.mjs.map +1 -1
  76. package/dist/node/QueryValidator/index.d.cts +4 -0
  77. package/dist/node/QueryValidator/index.d.cts.map +1 -0
  78. package/dist/node/QueryValidator/index.js +100 -7
  79. package/dist/node/QueryValidator/index.js.map +1 -1
  80. package/dist/node/QueryValidator/index.mjs +92 -3
  81. package/dist/node/QueryValidator/index.mjs.map +1 -1
  82. package/dist/node/index.d.cts +6 -0
  83. package/dist/node/index.d.cts.map +1 -0
  84. package/dist/node/index.js +811 -11
  85. package/dist/node/index.js.map +1 -1
  86. package/dist/node/index.mjs +799 -5
  87. package/dist/node/index.mjs.map +1 -1
  88. package/package.json +26 -26
@@ -0,0 +1,84 @@
1
+ import { AccountInstance } from '@xyo-network/account-model';
2
+ import { ArchivistInstance } from '@xyo-network/archivist-model';
3
+ import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
4
+ import { BoundWitness } from '@xyo-network/boundwitness-model';
5
+ import { ModuleManifestPayload } from '@xyo-network/manifest-model';
6
+ import { AddressPreviousHashPayload, CreatableModule, CreatableModuleFactory, IndividualArchivistConfig, Module, ModuleConfig, ModuleDescriptionPayload, ModuleEventData, ModuleFilter, ModuleFilterOptions, ModuleInstance, ModuleParams, ModuleQueryBase, ModuleQueryHandlerResult, ModuleQueryResult, SchemaString } from '@xyo-network/module-model';
7
+ import { CompositeModuleResolver } from '@xyo-network/module-resolver';
8
+ import { ModuleError, Payload, Query } from '@xyo-network/payload-model';
9
+ import { Promisable, PromiseEx } from '@xyo-network/promise';
10
+ import { WalletInstance } from '@xyo-network/wallet-model';
11
+ import { BaseEmitter } from './BaseEmitter';
12
+ import { Queryable } from './QueryValidator';
13
+ export declare abstract class AbstractModule<TParams extends ModuleParams = ModuleParams, TEventData extends ModuleEventData = ModuleEventData> extends BaseEmitter<TParams, TEventData> implements Module<TParams, TEventData> {
14
+ static configSchemas: string[];
15
+ static enableLazyLoad: boolean;
16
+ protected static privateConstructorKey: string;
17
+ readonly downResolver: Omit<CompositeModuleResolver, 'resolve'>;
18
+ readonly upResolver: Omit<CompositeModuleResolver, 'resolve>'>;
19
+ protected _account: AccountInstance | undefined;
20
+ protected readonly _baseModuleQueryAccountPaths: Record<ModuleQueryBase['schema'], string>;
21
+ protected readonly _queryAccounts: Record<ModuleQueryBase['schema'], AccountInstance | undefined>;
22
+ protected _startPromise: Promisable<boolean> | undefined;
23
+ protected _started: Promisable<boolean> | undefined;
24
+ protected readonly moduleConfigQueryValidator: Queryable;
25
+ protected readonly supportedQueryValidator: Queryable;
26
+ private _busyCount;
27
+ constructor(privateConstructorKey: string, params: TParams, account: AccountInstance);
28
+ static get configSchema(): string;
29
+ get account(): AccountInstance;
30
+ get address(): string;
31
+ get allowAnonymous(): boolean;
32
+ get config(): TParams['config'];
33
+ get ephemeralQueryAccountEnabled(): boolean;
34
+ get queries(): string[];
35
+ get queryAccountPaths(): Readonly<Record<Query['schema'], string | undefined>>;
36
+ get queryAccounts(): Readonly<Record<Query['schema'], AccountInstance | undefined>>;
37
+ get timestamp(): boolean;
38
+ protected abstract get _queryAccountPaths(): Record<Query['schema'], string>;
39
+ static _getRootFunction(funcName: string): any;
40
+ static _noOverride(functionName: string): void;
41
+ static create<TModule extends ModuleInstance>(this: CreatableModule<TModule>, params?: Omit<TModule['params'], 'config'> & {
42
+ config?: TModule['params']['config'];
43
+ }): Promise<TModule>;
44
+ static determineAccount({ account, accountDerivationPath, wallet, }: {
45
+ account?: AccountInstance | 'random';
46
+ accountDerivationPath?: string;
47
+ wallet?: WalletInstance;
48
+ }): Promise<AccountInstance>;
49
+ static factory<TModule extends ModuleInstance>(this: CreatableModule<TModule>, params?: Omit<TModule['params'], 'config'> & {
50
+ config?: TModule['params']['config'];
51
+ }): CreatableModuleFactory<TModule>;
52
+ _getRootFunction(funcName: string): any;
53
+ _noOverride(functionName: string): void;
54
+ busy<R>(closure: () => Promise<R>): Promise<R>;
55
+ emit<TEventName extends keyof TEventData = keyof TEventData, TEventArgs extends TEventData[TEventName] = TEventData[TEventName]>(eventName: TEventName, eventArgs: TEventArgs): Promise<void>;
56
+ previousHash(): Promisable<string | undefined>;
57
+ query<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
58
+ queryable<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): boolean;
59
+ resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
60
+ resolve<T extends ModuleInstance = ModuleInstance>(nameOrAddress: string, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
61
+ start(_timeout?: number): Promisable<boolean>;
62
+ started(notStartedAction?: 'error' | 'throw' | 'warn' | 'log' | 'none', tryStart?: boolean): Promise<boolean>;
63
+ stop(_timeout?: number): Promise<boolean>;
64
+ protected bindHashes(hashes: string[], schema: SchemaString[], account?: AccountInstance): PromiseEx<unknown, AccountInstance>;
65
+ protected bindHashesInternal(hashes: string[], schema: SchemaString[], account?: AccountInstance): Promise<BoundWitness>;
66
+ protected bindQuery<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance): PromiseEx<[QueryBoundWitness, Payload[], Payload[]], AccountInstance>;
67
+ protected bindQueryInternal<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance): Promise<[QueryBoundWitness, Payload[], Payload[]]>;
68
+ protected bindQueryResult<T extends Query>(query: T, payloads: Payload[], additionalWitnesses?: AccountInstance[], errors?: ModuleError[]): Promise<ModuleQueryResult>;
69
+ protected commitArchivist: () => Promise<ArchivistInstance | undefined>;
70
+ protected describeHandler(): Promise<ModuleDescriptionPayload>;
71
+ protected discoverHandler(): Promisable<Payload[]>;
72
+ protected getArchivist(kind: keyof IndividualArchivistConfig): Promise<ArchivistInstance | undefined>;
73
+ protected initializeQueryAccounts(): Promise<void>;
74
+ protected manifestHandler(_ignoreAddresses?: string[]): Promisable<ModuleManifestPayload>;
75
+ protected moduleAddressHandler(): Promisable<AddressPreviousHashPayload[]>;
76
+ protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryHandlerResult>;
77
+ protected readArchivist: () => Promise<ArchivistInstance | undefined>;
78
+ protected startHandler(): Promise<boolean>;
79
+ protected stopHandler(_timeout?: number): Promisable<boolean>;
80
+ protected subscribeHandler(): void;
81
+ protected validateConfig(config?: unknown, parents?: string[]): boolean;
82
+ protected writeArchivist: () => Promise<ArchivistInstance | undefined>;
83
+ }
84
+ //# sourceMappingURL=AbstractModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/AbstractModule.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
8
  var __export = (target, all) => {
8
9
  for (var name in all)
@@ -17,6 +18,12 @@ var __copyProps = (to, from, except, desc) => {
17
18
  return to;
18
19
  };
19
20
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var __publicField = (obj, key, value) => {
22
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
23
+ return value;
24
+ };
25
+
26
+ // src/AbstractModule.ts
20
27
  var AbstractModule_exports = {};
21
28
  __export(AbstractModule_exports, {
22
29
  AbstractModule: () => AbstractModule
@@ -28,27 +35,189 @@ var import_lodash = require("@xylabs/lodash");
28
35
  var import_account = require("@xyo-network/account");
29
36
  var import_address_payload_plugin = require("@xyo-network/address-payload-plugin");
30
37
  var import_archivist_model = require("@xyo-network/archivist-model");
31
- var import_boundwitness_builder = require("@xyo-network/boundwitness-builder");
38
+ var import_boundwitness_builder3 = require("@xyo-network/boundwitness-builder");
32
39
  var import_config_payload_plugin = require("@xyo-network/config-payload-plugin");
33
- var import_core = require("@xyo-network/core");
40
+ var import_core2 = require("@xyo-network/core");
34
41
  var import_error = require("@xyo-network/error");
35
42
  var import_manifest_model = require("@xyo-network/manifest-model");
36
43
  var import_module_model = require("@xyo-network/module-model");
37
44
  var import_module_resolver = require("@xyo-network/module-resolver");
38
- var import_payload_builder = require("@xyo-network/payload-builder");
45
+ var import_payload_builder2 = require("@xyo-network/payload-builder");
39
46
  var import_promise = require("@xyo-network/promise");
40
47
  var import_query_payload_plugin = require("@xyo-network/query-payload-plugin");
41
48
  var import_shared = require("@xyo-network/shared");
42
- var import_BaseEmitter = require("./BaseEmitter");
43
- var import_Error = require("./Error");
44
- var import_QueryValidator = require("./QueryValidator");
45
- class AbstractModule extends import_BaseEmitter.BaseEmitter {
46
- static {
47
- __name(this, "AbstractModule");
48
- }
49
- static configSchemas;
50
- static enableLazyLoad = false;
51
- static privateConstructorKey = Date.now().toString();
49
+
50
+ // src/BaseEmitter.ts
51
+ var import_core = require("@xyo-network/core");
52
+ var import_module_events = require("@xyo-network/module-events");
53
+ var _BaseEmitter = class _BaseEmitter extends import_core.Base {
54
+ //just here to query types
55
+ eventData = {};
56
+ events;
57
+ constructor(params) {
58
+ super(params);
59
+ this.events = new import_module_events.Events();
60
+ }
61
+ clearListeners(eventNames) {
62
+ return this.events.clearListeners(eventNames);
63
+ }
64
+ emit(eventName, eventArgs) {
65
+ return this.events.emit(eventName, eventArgs);
66
+ }
67
+ emitSerial(eventName, eventArgs) {
68
+ return this.events.emitSerial(eventName, eventArgs);
69
+ }
70
+ listenerCount(eventNames) {
71
+ return this.events.listenerCount(eventNames);
72
+ }
73
+ off(eventNames, listener) {
74
+ return this.events.off(eventNames, listener);
75
+ }
76
+ offAny(listener) {
77
+ return this.events.offAny(listener);
78
+ }
79
+ on(eventNames, listener) {
80
+ return this.events.on(eventNames, listener);
81
+ }
82
+ onAny(listener) {
83
+ return this.events.onAny(listener);
84
+ }
85
+ once(eventName, listener) {
86
+ return this.events.once(eventName, listener);
87
+ }
88
+ };
89
+ __name(_BaseEmitter, "BaseEmitter");
90
+ var BaseEmitter = _BaseEmitter;
91
+
92
+ // src/Error.ts
93
+ var import_payload_builder = require("@xyo-network/payload-builder");
94
+ var import_payload_model = require("@xyo-network/payload-model");
95
+ var _ModuleErrorBuilder = class _ModuleErrorBuilder extends import_payload_builder.PayloadBuilder {
96
+ _message;
97
+ _name;
98
+ _query;
99
+ _sources;
100
+ constructor() {
101
+ super({
102
+ schema: import_payload_model.ModuleErrorSchema
103
+ });
104
+ }
105
+ build() {
106
+ return {
107
+ message: this._message,
108
+ name: this._name,
109
+ query: this._query,
110
+ schema: import_payload_model.ModuleErrorSchema,
111
+ sources: this._sources
112
+ };
113
+ }
114
+ message(message) {
115
+ this._message = message;
116
+ return this;
117
+ }
118
+ name(name) {
119
+ this._name = name;
120
+ return this;
121
+ }
122
+ query(query) {
123
+ this._query = query;
124
+ return this;
125
+ }
126
+ sources(sources) {
127
+ this._sources = sources;
128
+ return this;
129
+ }
130
+ };
131
+ __name(_ModuleErrorBuilder, "ModuleErrorBuilder");
132
+ var ModuleErrorBuilder = _ModuleErrorBuilder;
133
+
134
+ // src/QueryValidator/ModuleConfigQueryValidator.ts
135
+ var import_boundwitness_builder = require("@xyo-network/boundwitness-builder");
136
+ var delimiter = "";
137
+ var _ModuleConfigQueryValidator = class _ModuleConfigQueryValidator {
138
+ allowed = {};
139
+ disallowed = {};
140
+ hasAllowedRules;
141
+ hasDisallowedRules;
142
+ hasRules;
143
+ constructor(config) {
144
+ var _a, _b, _c, _d;
145
+ if ((_a = config == null ? void 0 : config.security) == null ? void 0 : _a.allowed) {
146
+ Object.entries((_b = config.security) == null ? void 0 : _b.allowed).forEach(([schema, addresses]) => {
147
+ this.allowed[schema] = addresses.map(toAddressesString);
148
+ });
149
+ }
150
+ if ((_c = config == null ? void 0 : config.security) == null ? void 0 : _c.disallowed) {
151
+ Object.entries((_d = config.security) == null ? void 0 : _d.disallowed).forEach(([schema, addresses]) => {
152
+ this.disallowed[schema] = addresses.map(toAddressesString);
153
+ });
154
+ }
155
+ this.hasAllowedRules = Object.keys(this.allowed).length > 0;
156
+ this.hasDisallowedRules = Object.keys(this.disallowed).length > 0;
157
+ this.hasRules = this.hasAllowedRules || this.hasDisallowedRules;
158
+ }
159
+ queryable = async (query, payloads) => {
160
+ if (!this.hasRules)
161
+ return true;
162
+ const addresses = query.addresses;
163
+ if (!addresses.length)
164
+ return false;
165
+ const wrapper = import_boundwitness_builder.QueryBoundWitnessWrapper.parseQuery(query, payloads);
166
+ const schema = (await wrapper.getQuery()).schema;
167
+ return this.queryAllowed(schema, addresses) && !this.queryDisallowed(schema, addresses);
168
+ };
169
+ queryAllowed = (schema, addresses) => {
170
+ var _a, _b;
171
+ if (!this.hasAllowedRules)
172
+ return true;
173
+ if (addresses.length > 1) {
174
+ const signatories = toAddressesString(addresses);
175
+ const validCosigners = (_b = (_a = this.allowed) == null ? void 0 : _a[schema]) == null ? void 0 : _b.includes(signatories);
176
+ if (validCosigners)
177
+ return true;
178
+ }
179
+ return addresses.every((address) => {
180
+ var _a2, _b2;
181
+ return ((_b2 = (_a2 = this.allowed) == null ? void 0 : _a2[schema]) == null ? void 0 : _b2.includes(address)) || false;
182
+ });
183
+ };
184
+ queryDisallowed = (schema, addresses) => {
185
+ if (!this.hasDisallowedRules)
186
+ return false;
187
+ return addresses.some((address) => {
188
+ var _a, _b;
189
+ return (_b = (_a = this.disallowed) == null ? void 0 : _a[schema]) == null ? void 0 : _b.includes(address);
190
+ });
191
+ };
192
+ };
193
+ __name(_ModuleConfigQueryValidator, "ModuleConfigQueryValidator");
194
+ var ModuleConfigQueryValidator = _ModuleConfigQueryValidator;
195
+ var toAddressesString = /* @__PURE__ */ __name((addresses) => {
196
+ return Array.isArray(addresses) ? addresses.sort().map((address) => address.toLowerCase()).join(delimiter) : addresses.toLowerCase();
197
+ }, "toAddressesString");
198
+
199
+ // src/QueryValidator/SupportedQueryValidator.ts
200
+ var import_boundwitness_builder2 = require("@xyo-network/boundwitness-builder");
201
+ var isQuerySupportedByModule = /* @__PURE__ */ __name(async (mod, query, payloads) => {
202
+ const wrapper = import_boundwitness_builder2.QueryBoundWitnessWrapper.parseQuery(query, payloads);
203
+ const schema = (await wrapper.getQuery()).schema;
204
+ return mod.queries.includes(schema);
205
+ }, "isQuerySupportedByModule");
206
+ var _SupportedQueryValidator = class _SupportedQueryValidator {
207
+ mod;
208
+ constructor(mod) {
209
+ this.mod = mod;
210
+ this.queryable = (query, payloads) => {
211
+ return isQuerySupportedByModule(this.mod, query, payloads);
212
+ };
213
+ }
214
+ queryable;
215
+ };
216
+ __name(_SupportedQueryValidator, "SupportedQueryValidator");
217
+ var SupportedQueryValidator = _SupportedQueryValidator;
218
+
219
+ // src/AbstractModule.ts
220
+ var _AbstractModule = class _AbstractModule extends BaseEmitter {
52
221
  downResolver = new import_module_resolver.CompositeModuleResolver();
53
222
  upResolver = new import_module_resolver.CompositeModuleResolver();
54
223
  _account = void 0;
@@ -72,14 +241,14 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
72
241
  supportedQueryValidator;
73
242
  _busyCount = 0;
74
243
  constructor(privateConstructorKey, params, account) {
75
- (0, import_assert.assertEx)(AbstractModule.privateConstructorKey === privateConstructorKey, "Use create function instead of constructor");
244
+ (0, import_assert.assertEx)(_AbstractModule.privateConstructorKey === privateConstructorKey, "Use create function instead of constructor");
76
245
  const mutatedParams = {
77
246
  ...params
78
247
  };
79
248
  super(mutatedParams);
80
249
  this._account = account;
81
- this.supportedQueryValidator = new import_QueryValidator.SupportedQueryValidator(this).queryable;
82
- this.moduleConfigQueryValidator = new import_QueryValidator.ModuleConfigQueryValidator(mutatedParams?.config).queryable;
250
+ this.supportedQueryValidator = new SupportedQueryValidator(this).queryable;
251
+ this.moduleConfigQueryValidator = new ModuleConfigQueryValidator(mutatedParams == null ? void 0 : mutatedParams.config).queryable;
83
252
  }
84
253
  static get configSchema() {
85
254
  return this.configSchemas[0];
@@ -91,7 +260,8 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
91
260
  return this.account.address;
92
261
  }
93
262
  get allowAnonymous() {
94
- return !!this.config.security?.allowAnonymous;
263
+ var _a;
264
+ return !!((_a = this.config.security) == null ? void 0 : _a.allowAnonymous);
95
265
  }
96
266
  get config() {
97
267
  return this.params.config;
@@ -133,36 +303,37 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
133
303
  (0, import_assert.assertEx)(thisFunc === rootFunc, `Override not allowed for [${functionName}] - override ${functionName}Handler instead`);
134
304
  }
135
305
  static async create(params) {
306
+ var _a, _b, _c, _d;
136
307
  this._noOverride("create");
137
308
  if (!this.configSchemas || this.configSchemas.length === 0) {
138
- throw Error(`Missing configSchema [${params?.config?.schema}][${this.name}]`);
309
+ throw Error(`Missing configSchema [${(_a = params == null ? void 0 : params.config) == null ? void 0 : _a.schema}][${this.name}]`);
139
310
  }
140
311
  const { account, config, wallet } = params ?? {};
141
312
  const { accountDerivationPath } = config ?? {};
142
- (0, import_assert.assertEx)(!(!!account && !!wallet), `Specifying both {account} and {wallet} are not allowed [${config?.schema}] [${account === "random" ? "random" : account?.address}, ${wallet?.address}]`);
143
- const schema = params?.config?.schema ?? this.configSchema;
313
+ (0, import_assert.assertEx)(!(!!account && !!wallet), `Specifying both {account} and {wallet} are not allowed [${config == null ? void 0 : config.schema}] [${account === "random" ? "random" : account == null ? void 0 : account.address}, ${wallet == null ? void 0 : wallet.address}]`);
314
+ const schema = ((_b = params == null ? void 0 : params.config) == null ? void 0 : _b.schema) ?? this.configSchema;
144
315
  const allowedSchemas = this.configSchemas;
145
316
  (0, import_assert.assertEx)(allowedSchemas.filter((allowedSchema) => allowedSchema === schema).length > 0, `Bad Config Schema [Received ${schema}] [Expected ${JSON.stringify(allowedSchemas)}]`);
146
317
  const mutatedConfig = {
147
- ...params?.config,
318
+ ...params == null ? void 0 : params.config,
148
319
  schema
149
320
  };
150
- params?.logger?.debug(`config: ${JSON.stringify(mutatedConfig, null, 2)}`);
321
+ (_c = params == null ? void 0 : params.logger) == null ? void 0 : _c.debug(`config: ${JSON.stringify(mutatedConfig, null, 2)}`);
151
322
  const mutatedParams = {
152
323
  ...params,
153
324
  config: mutatedConfig
154
325
  };
155
- const activeLogger = params?.logger ?? AbstractModule.defaultLogger;
156
- const generatedAccount = await AbstractModule.determineAccount({
326
+ const activeLogger = (params == null ? void 0 : params.logger) ?? _AbstractModule.defaultLogger;
327
+ const generatedAccount = await _AbstractModule.determineAccount({
157
328
  account,
158
329
  accountDerivationPath,
159
330
  wallet
160
331
  });
161
332
  const address = generatedAccount.address;
162
333
  mutatedParams.logger = activeLogger ? new import_shared.IdLogger(activeLogger, () => `0x${address}`) : void 0;
163
- const newModule = new this(AbstractModule.privateConstructorKey, mutatedParams, generatedAccount);
164
- if (!AbstractModule.enableLazyLoad) {
165
- await newModule.start?.();
334
+ const newModule = new this(_AbstractModule.privateConstructorKey, mutatedParams, generatedAccount);
335
+ if (!_AbstractModule.enableLazyLoad) {
336
+ await ((_d = newModule.start) == null ? void 0 : _d.call(newModule));
166
337
  }
167
338
  return newModule;
168
339
  }
@@ -236,11 +407,11 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
236
407
  throw Error(`Anonymous Queries not allowed, but running anyway [${this.config.name}], [${this.address}]`);
237
408
  }
238
409
  }
239
- resultPayloads.push(...await this.queryHandler((0, import_assert.assertEx)(import_boundwitness_builder.QueryBoundWitnessWrapper.unwrap(query)), payloads, queryConfig));
410
+ resultPayloads.push(...await this.queryHandler((0, import_assert.assertEx)(import_boundwitness_builder3.QueryBoundWitnessWrapper.unwrap(query)), payloads, queryConfig));
240
411
  } catch (ex) {
241
412
  await (0, import_error.handleErrorAsync)(ex, async (error) => {
242
- errorPayloads.push(new import_Error.ModuleErrorBuilder().sources([
243
- await import_core.PayloadHasher.hashAsync(query)
413
+ errorPayloads.push(new ModuleErrorBuilder().sources([
414
+ await import_core2.PayloadHasher.hashAsync(query)
244
415
  ]).name(this.config.name ?? "<Unknown>").query(query.schema).message(error.message).build());
245
416
  });
246
417
  }
@@ -267,7 +438,7 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
267
438
  queryable(query, payloads, queryConfig) {
268
439
  if (!this.started("warn"))
269
440
  return false;
270
- const configValidator = queryConfig ? new import_QueryValidator.ModuleConfigQueryValidator(Object.assign({}, this.config, queryConfig)).queryable : this.moduleConfigQueryValidator;
441
+ const configValidator = queryConfig ? new ModuleConfigQueryValidator(Object.assign({}, this.config, queryConfig)).queryable : this.moduleConfigQueryValidator;
271
442
  const validators = [
272
443
  this.supportedQueryValidator,
273
444
  configValidator
@@ -275,7 +446,7 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
275
446
  return validators.every((validator) => validator(query, payloads));
276
447
  }
277
448
  async resolve(nameOrAddressOrFilter, options) {
278
- const direction = options?.direction ?? "all";
449
+ const direction = (options == null ? void 0 : options.direction) ?? "all";
279
450
  const up = direction === "up" || direction === "all";
280
451
  const down = direction === "down" || direction === "all";
281
452
  switch (typeof nameOrAddressOrFilter) {
@@ -302,13 +473,15 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
302
473
  }
303
474
  if (!started) {
304
475
  this._started = (async () => {
476
+ var _a, _b, _c;
305
477
  if (tryStart) {
306
478
  try {
307
479
  await this.start();
308
480
  return true;
309
481
  } catch (ex) {
310
482
  (0, import_error.handleError)(ex, (error) => {
311
- this.logger?.warn(`Autostart of Module Failed: ${error.message})`);
483
+ var _a2;
484
+ (_a2 = this.logger) == null ? void 0 : _a2.warn(`Autostart of Module Failed: ${error.message})`);
312
485
  this._started = void 0;
313
486
  });
314
487
  }
@@ -317,16 +490,16 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
317
490
  case "throw":
318
491
  throw Error(`Module not Started [${this.address}]`);
319
492
  case "warn":
320
- this.logger?.warn("Module not started");
493
+ (_a = this.logger) == null ? void 0 : _a.warn("Module not started");
321
494
  break;
322
495
  case "error":
323
- this.logger?.error("Module not started");
496
+ (_b = this.logger) == null ? void 0 : _b.error("Module not started");
324
497
  break;
325
498
  case "none":
326
499
  break;
327
500
  case "log":
328
501
  default: {
329
- this.logger?.log("Module not started");
502
+ (_c = this.logger) == null ? void 0 : _c.log("Module not started");
330
503
  break;
331
504
  }
332
505
  }
@@ -349,32 +522,33 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
349
522
  bindHashes(hashes, schema, account) {
350
523
  const promise = new import_promise.PromiseEx((resolve) => {
351
524
  const result = this.bindHashesInternal(hashes, schema, account);
352
- resolve?.(result);
525
+ resolve == null ? void 0 : resolve(result);
353
526
  return result;
354
527
  }, account);
355
528
  return promise;
356
529
  }
357
530
  async bindHashesInternal(hashes, schema, account) {
358
- const builder = new import_boundwitness_builder.BoundWitnessBuilder().hashes(hashes, schema).witness(this.account);
531
+ var _a;
532
+ const builder = new import_boundwitness_builder3.BoundWitnessBuilder().hashes(hashes, schema).witness(this.account);
359
533
  const result = (await (account ? builder.witness(account) : builder).build())[0];
360
- this.logger?.debug(`result: ${JSON.stringify(result, null, 2)}`);
534
+ (_a = this.logger) == null ? void 0 : _a.debug(`result: ${JSON.stringify(result, null, 2)}`);
361
535
  return result;
362
536
  }
363
537
  bindQuery(query, payloads, account) {
364
538
  const promise = new import_promise.PromiseEx(async (resolve) => {
365
539
  const result = await this.bindQueryInternal(query, payloads, account);
366
- resolve?.(result);
540
+ resolve == null ? void 0 : resolve(result);
367
541
  return result;
368
542
  }, account);
369
543
  return promise;
370
544
  }
371
545
  async bindQueryInternal(query, payloads, account) {
372
- const builder = new import_boundwitness_builder.QueryBoundWitnessBuilder().payloads(payloads).witness(this.account).query(query);
546
+ const builder = new import_boundwitness_builder3.QueryBoundWitnessBuilder().payloads(payloads).witness(this.account).query(query);
373
547
  const result = await (account ? builder.witness(account) : builder).build();
374
548
  return result;
375
549
  }
376
550
  async bindQueryResult(query, payloads, additionalWitnesses = [], errors) {
377
- const builder = new import_boundwitness_builder.BoundWitnessBuilder().payloads(payloads).errors(errors);
551
+ const builder = new import_boundwitness_builder3.BoundWitnessBuilder().payloads(payloads).errors(errors);
378
552
  const queryWitnessAccount = this.queryAccounts[query.schema];
379
553
  const witnesses = [
380
554
  this.account,
@@ -391,31 +565,33 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
391
565
  }
392
566
  commitArchivist = () => this.getArchivist("commit");
393
567
  async describeHandler() {
568
+ var _a;
394
569
  const description = {
395
570
  address: this.address,
396
571
  queries: this.queries,
397
572
  schema: import_module_model.ModuleDescriptionSchema
398
573
  };
399
- if (this.config?.name) {
574
+ if ((_a = this.config) == null ? void 0 : _a.name) {
400
575
  description.name = this.config.name;
401
576
  }
402
577
  const discover = await this.discoverHandler();
403
- description.children = (0, import_lodash.compact)(discover?.map((payload) => {
578
+ description.children = (0, import_lodash.compact)((discover == null ? void 0 : discover.map((payload) => {
404
579
  const address = payload.schema === import_address_payload_plugin.AddressSchema ? payload.address : void 0;
405
580
  return address != this.address ? address : void 0;
406
- }) ?? []);
581
+ })) ?? []);
407
582
  return description;
408
583
  }
409
584
  discoverHandler() {
585
+ var _a;
410
586
  const config = this.config;
411
- const address = new import_payload_builder.PayloadBuilder({
587
+ const address = new import_payload_builder2.PayloadBuilder({
412
588
  schema: import_address_payload_plugin.AddressSchema
413
589
  }).fields({
414
590
  address: this.address,
415
- name: this.config?.name
591
+ name: (_a = this.config) == null ? void 0 : _a.name
416
592
  }).build();
417
593
  const queries = this.queries.map((query) => {
418
- return new import_payload_builder.PayloadBuilder({
594
+ return new import_payload_builder2.PayloadBuilder({
419
595
  schema: import_query_payload_plugin.QuerySchema
420
596
  }).fields({
421
597
  query
@@ -433,24 +609,26 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
433
609
  ]);
434
610
  }
435
611
  async getArchivist(kind) {
612
+ var _a, _b;
436
613
  if (!this.config.archivist)
437
614
  return void 0;
438
- const filter = typeof this.config.archivist === "string" || this.config.archivist instanceof String ? this.config.archivist : this.config?.archivist?.[kind];
615
+ const filter = typeof this.config.archivist === "string" || this.config.archivist instanceof String ? this.config.archivist : (_b = (_a = this.config) == null ? void 0 : _a.archivist) == null ? void 0 : _b[kind];
439
616
  const resolved = await this.upResolver.resolve(filter);
440
617
  return (0, import_archivist_model.asArchivistInstance)(resolved);
441
618
  }
442
619
  async initializeQueryAccounts() {
620
+ var _a, _b;
443
621
  const paths = Object.values(this.queryAccountPaths).filter(import_exists.exists);
444
622
  const distinctPaths = new Set(paths);
445
- (0, import_assert.assertEx)(distinctPaths.size === paths.length, `${this.config?.name ? this.config.name + ": " : ""}Duplicate query account paths`);
623
+ (0, import_assert.assertEx)(distinctPaths.size === paths.length, `${((_a = this.config) == null ? void 0 : _a.name) ? this.config.name + ": " : ""}Duplicate query account paths`);
446
624
  const wallet = this.account;
447
- if (wallet?.derivePath) {
625
+ if (wallet == null ? void 0 : wallet.derivePath) {
448
626
  for (const key in this.queryAccountPaths) {
449
627
  if (Object.prototype.hasOwnProperty.call(this.queryAccountPaths, key)) {
450
628
  const query = key;
451
629
  const queryAccountPath = this.queryAccountPaths[query];
452
630
  if (queryAccountPath) {
453
- this._queryAccounts[query] = await wallet.derivePath?.(queryAccountPath);
631
+ this._queryAccounts[query] = await ((_b = wallet.derivePath) == null ? void 0 : _b.call(wallet, queryAccountPath));
454
632
  }
455
633
  }
456
634
  }
@@ -512,7 +690,7 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
512
690
  }
513
691
  async queryHandler(query, payloads, queryConfig) {
514
692
  await this.started("throw");
515
- const wrapper = import_boundwitness_builder.QueryBoundWitnessWrapper.parseQuery(query, payloads);
693
+ const wrapper = import_boundwitness_builder3.QueryBoundWitnessWrapper.parseQuery(query, payloads);
516
694
  const queryPayload = await wrapper.getQuery();
517
695
  (0, import_assert.assertEx)(this.queryable(query, payloads, queryConfig));
518
696
  const resultPayloads = [];
@@ -558,9 +736,10 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
558
736
  }
559
737
  validateConfig(config, parents = []) {
560
738
  return Object.entries(config ?? this.config ?? {}).reduce((valid, [key, value]) => {
739
+ var _a, _b;
561
740
  switch (typeof value) {
562
741
  case "function":
563
- this.logger?.warn(`Fields of type function not allowed in config [${parents?.join(".")}.${key}]`);
742
+ (_a = this.logger) == null ? void 0 : _a.warn(`Fields of type function not allowed in config [${parents == null ? void 0 : parents.join(".")}.${key}]`);
564
743
  return false;
565
744
  case "object": {
566
745
  if (Array.isArray(value)) {
@@ -572,7 +751,7 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
572
751
  }, true) && valid;
573
752
  }
574
753
  if (!(0, import_module_model.serializableField)(value)) {
575
- this.logger?.warn(`Fields that are not serializable to JSON are not allowed in config [${parents?.join(".")}.${key}]`);
754
+ (_b = this.logger) == null ? void 0 : _b.warn(`Fields that are not serializable to JSON are not allowed in config [${parents == null ? void 0 : parents.join(".")}.${key}]`);
576
755
  return false;
577
756
  }
578
757
  return value ? this.validateConfig(value, [
@@ -586,7 +765,12 @@ class AbstractModule extends import_BaseEmitter.BaseEmitter {
586
765
  }, true);
587
766
  }
588
767
  writeArchivist = () => this.getArchivist("write");
589
- }
768
+ };
769
+ __name(_AbstractModule, "AbstractModule");
770
+ __publicField(_AbstractModule, "configSchemas");
771
+ __publicField(_AbstractModule, "enableLazyLoad", false);
772
+ __publicField(_AbstractModule, "privateConstructorKey", Date.now().toString());
773
+ var AbstractModule = _AbstractModule;
590
774
  // Annotate the CommonJS export names for ESM import in node:
591
775
  0 && (module.exports = {
592
776
  AbstractModule