@xyo-network/module-abstract 2.65.4 → 2.65.6

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.
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractIndirectModule = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ /* eslint-disable max-lines */
5
6
  const assert_1 = require("@xylabs/assert");
6
7
  const exists_1 = require("@xylabs/exists");
7
8
  const account_1 = require("@xyo-network/account");
@@ -35,15 +36,18 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
35
36
  [module_model_1.ModuleAddressQuerySchema]: '1',
36
37
  [module_model_1.ModuleDescribeQuerySchema]: '4',
37
38
  [module_model_1.ModuleDiscoverQuerySchema]: '2',
39
+ [module_model_1.ModuleManifestQuerySchema]: '5',
38
40
  [module_model_1.ModuleSubscribeQuerySchema]: '3',
39
41
  };
40
42
  this._queryAccounts = {
41
43
  [module_model_1.ModuleAddressQuerySchema]: undefined,
42
44
  [module_model_1.ModuleDescribeQuerySchema]: undefined,
43
45
  [module_model_1.ModuleDiscoverQuerySchema]: undefined,
46
+ [module_model_1.ModuleManifestQuerySchema]: undefined,
44
47
  [module_model_1.ModuleSubscribeQuerySchema]: undefined,
45
48
  };
46
- this._started = false;
49
+ this._started = undefined;
50
+ this._starting = undefined;
47
51
  this._busyCount = 0;
48
52
  this.commitArchivist = () => this.getArchivist('commit');
49
53
  this.readArchivist = () => this.getArchivist('read');
@@ -151,7 +155,7 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
151
155
  query(query, payloads, queryConfig) {
152
156
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
153
157
  return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
154
- this.started('throw');
158
+ yield this.started('throw');
155
159
  const result = yield this.queryHandler((0, assert_1.assertEx)(boundwitness_builder_1.QueryBoundWitnessWrapper.unwrap(query)), payloads, queryConfig);
156
160
  const args = { module: this, payloads, query, result };
157
161
  yield this.emit('moduleQueried', args);
@@ -168,47 +172,83 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
168
172
  const validators = [this.supportedQueryValidator, configValidator];
169
173
  return validators.every((validator) => validator(query, payloads));
170
174
  }
171
- resolve(nameOrAddressOrFilter) {
172
- var _a;
175
+ resolve(nameOrAddressOrFilter, options) {
176
+ var _a, _b;
173
177
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
178
+ const direction = (_a = options === null || options === void 0 ? void 0 : options.direction) !== null && _a !== void 0 ? _a : 'all';
179
+ const up = direction === 'up' || direction === 'all';
180
+ const down = direction === 'down' || direction === 'all';
174
181
  switch (typeof nameOrAddressOrFilter) {
175
182
  case 'string': {
176
- return (_a = (yield this.downResolver.resolve(nameOrAddressOrFilter))) !== null && _a !== void 0 ? _a : (yield this.upResolver.resolve(nameOrAddressOrFilter));
183
+ return ((_b = (down ? yield this.downResolver.resolve(nameOrAddressOrFilter) : undefined)) !== null && _b !== void 0 ? _b : (up ? yield this.upResolver.resolve(nameOrAddressOrFilter) : undefined));
177
184
  }
178
185
  default: {
179
186
  const filter = nameOrAddressOrFilter;
180
- return [...(yield this.downResolver.resolve(filter)), ...(yield this.upResolver.resolve(filter))].filter(module_model_1.duplicateModules);
187
+ return [
188
+ ...(down ? yield this.downResolver.resolve(filter) : []),
189
+ ...(up ? yield this.upResolver.resolve(filter) : []),
190
+ ].filter(module_model_1.duplicateModules);
181
191
  }
182
192
  }
183
193
  });
184
194
  }
185
195
  start(_timeout) {
196
+ var _a;
197
+ //using promise as mutex
198
+ this._starting = (_a = this._starting) !== null && _a !== void 0 ? _a : this.startHandler();
199
+ return this._starting;
200
+ }
201
+ started(notStartedAction = 'log', tryStart = true) {
186
202
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
187
- this.validateConfig();
188
- yield this.initializeQueryAccounts();
189
- this._started = true;
203
+ if (this._started === true) {
204
+ return true;
205
+ }
206
+ if (!this._started) {
207
+ //using promise as mutex
208
+ this._started = (() => tslib_1.__awaiter(this, void 0, void 0, function* () {
209
+ var _a, _b, _c;
210
+ if (tryStart) {
211
+ try {
212
+ yield this.start();
213
+ return true;
214
+ }
215
+ catch (ex) {
216
+ (0, error_1.handleError)(ex, (error) => {
217
+ var _a;
218
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn(`Autostart of Module Failed: ${error.message})`);
219
+ this._started = undefined;
220
+ });
221
+ }
222
+ }
223
+ switch (notStartedAction) {
224
+ case 'throw':
225
+ throw Error(`Module not Started [${this.address}]`);
226
+ case 'warn':
227
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn('Module not started');
228
+ break;
229
+ case 'error':
230
+ (_b = this.logger) === null || _b === void 0 ? void 0 : _b.error('Module not started');
231
+ break;
232
+ case 'none':
233
+ break;
234
+ case 'log':
235
+ default: {
236
+ (_c = this.logger) === null || _c === void 0 ? void 0 : _c.log('Module not started');
237
+ break;
238
+ }
239
+ }
240
+ return false;
241
+ }))();
242
+ }
243
+ return yield this._started;
190
244
  });
191
245
  }
192
- started(notStartedAction) {
193
- var _a, _b, _c;
194
- if (!this._started) {
195
- switch (notStartedAction) {
196
- case 'throw':
197
- throw Error(`Module not Started [${this.address}]`);
198
- case 'warn':
199
- (_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn('Module not started');
200
- break;
201
- case 'error':
202
- (_b = this.logger) === null || _b === void 0 ? void 0 : _b.error('Module not started');
203
- break;
204
- case 'none':
205
- break;
206
- case 'log':
207
- default:
208
- (_c = this.logger) === null || _c === void 0 ? void 0 : _c.log('Module not started');
209
- }
210
- }
211
- return this._started;
246
+ stop(_timeout) {
247
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
248
+ return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
249
+ return yield this.stopHandler();
250
+ }));
251
+ });
212
252
  }
213
253
  bindHashes(hashes, schema, account) {
214
254
  const promise = new promise_1.PromiseEx((resolve) => {
@@ -306,7 +346,8 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
306
346
  });
307
347
  }
308
348
  manifestHandler() {
309
- const name = (0, assert_1.assertEx)(this.config.name, 'Calling manifest on un-named module is not supported');
349
+ var _a;
350
+ const name = (_a = this.config.name) !== null && _a !== void 0 ? _a : 'Anonymous';
310
351
  return { config: Object.assign({ name }, this.config), schema: manifest_model_1.ModuleManifestPayloadSchema };
311
352
  }
312
353
  moduleAddressHandler() {
@@ -334,7 +375,7 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
334
375
  }
335
376
  queryHandler(query, payloads, queryConfig) {
336
377
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
337
- this.started('throw');
378
+ yield this.started('throw');
338
379
  const wrapper = boundwitness_builder_1.QueryBoundWitnessWrapper.parseQuery(query, payloads);
339
380
  if (!this.allowAnonymous) {
340
381
  if (query.addresses.length === 0) {
@@ -348,6 +389,10 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
348
389
  const queryAccount = this.ephemeralQueryAccountEnabled ? yield account_1.HDWallet.random() : undefined;
349
390
  try {
350
391
  switch (queryPayload.schema) {
392
+ case module_model_1.ModuleManifestQuerySchema: {
393
+ resultPayloads.push(yield this.manifestHandler());
394
+ break;
395
+ }
351
396
  case module_model_1.ModuleDiscoverQuerySchema: {
352
397
  resultPayloads.push(...(yield this.discoverHandler()));
353
398
  break;
@@ -382,9 +427,17 @@ class AbstractIndirectModule extends BaseEmitter_1.BaseEmitter {
382
427
  return (yield this.bindQueryResult(queryPayload, resultPayloads, queryAccount ? [queryAccount] : [], errorPayloads))[0];
383
428
  });
384
429
  }
385
- stop(_timeout) {
386
- this._started = false;
387
- return this;
430
+ startHandler() {
431
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
432
+ this.validateConfig();
433
+ yield this.initializeQueryAccounts();
434
+ this._started = true;
435
+ return true;
436
+ });
437
+ }
438
+ stopHandler(_timeout) {
439
+ this._started = undefined;
440
+ return true;
388
441
  }
389
442
  subscribeHandler(_queryAccount) {
390
443
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractIndirectModule.js","sourceRoot":"","sources":["../../src/AbstractIndirectModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractIndirectModule.js","sourceRoot":"","sources":["../../src/AbstractIndirectModule.ts"],"names":[],"mappings":"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"}