@xyo-network/diviner 2.50.4 → 2.50.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.
Files changed (72) hide show
  1. package/dist/cjs/AddressChain/Config.js +6 -0
  2. package/dist/cjs/AddressChain/Config.js.map +1 -0
  3. package/dist/cjs/AddressChain/Diviner.js +10 -0
  4. package/dist/cjs/AddressChain/Diviner.js.map +1 -0
  5. package/dist/cjs/AddressChain/MemoryDiviner.js +55 -0
  6. package/dist/cjs/AddressChain/MemoryDiviner.js.map +1 -0
  7. package/dist/cjs/AddressChain/index.js +7 -0
  8. package/dist/cjs/AddressChain/index.js.map +1 -0
  9. package/dist/cjs/AddressHistory/Config.js +6 -0
  10. package/dist/cjs/AddressHistory/Config.js.map +1 -0
  11. package/dist/cjs/AddressHistory/{AddressHistoryDiviner.js → Diviner.js} +1 -1
  12. package/dist/cjs/AddressHistory/Diviner.js.map +1 -0
  13. package/dist/cjs/AddressHistory/{MemoryAddressHistoryDiviner.js → MemoryDiviner.js} +4 -6
  14. package/dist/cjs/AddressHistory/MemoryDiviner.js.map +1 -0
  15. package/dist/cjs/AddressHistory/index.js +3 -2
  16. package/dist/cjs/AddressHistory/index.js.map +1 -1
  17. package/dist/cjs/AddressSpace/MemoryAddressSpaceDiviner.js +15 -4
  18. package/dist/cjs/AddressSpace/MemoryAddressSpaceDiviner.js.map +1 -1
  19. package/dist/docs.json +29381 -15209
  20. package/dist/esm/AddressChain/Config.js +3 -0
  21. package/dist/esm/AddressChain/Config.js.map +1 -0
  22. package/dist/esm/AddressChain/Diviner.js +5 -0
  23. package/dist/esm/AddressChain/Diviner.js.map +1 -0
  24. package/dist/esm/AddressChain/MemoryDiviner.js +40 -0
  25. package/dist/esm/AddressChain/MemoryDiviner.js.map +1 -0
  26. package/dist/esm/AddressChain/index.js +4 -0
  27. package/dist/esm/AddressChain/index.js.map +1 -0
  28. package/dist/esm/AddressHistory/Config.js +3 -0
  29. package/dist/esm/AddressHistory/Config.js.map +1 -0
  30. package/dist/esm/AddressHistory/{AddressHistoryDiviner.js → Diviner.js} +1 -1
  31. package/dist/esm/AddressHistory/Diviner.js.map +1 -0
  32. package/dist/esm/AddressHistory/{MemoryAddressHistoryDiviner.js → MemoryDiviner.js} +3 -5
  33. package/dist/esm/AddressHistory/MemoryDiviner.js.map +1 -0
  34. package/dist/esm/AddressHistory/index.js +3 -2
  35. package/dist/esm/AddressHistory/index.js.map +1 -1
  36. package/dist/esm/AddressSpace/MemoryAddressSpaceDiviner.js +12 -3
  37. package/dist/esm/AddressSpace/MemoryAddressSpaceDiviner.js.map +1 -1
  38. package/dist/types/AddressChain/Config.d.ts +12 -0
  39. package/dist/types/AddressChain/Config.d.ts.map +1 -0
  40. package/dist/types/AddressChain/Diviner.d.ts +19 -0
  41. package/dist/types/AddressChain/Diviner.d.ts.map +1 -0
  42. package/dist/types/AddressChain/MemoryDiviner.d.ts +12 -0
  43. package/dist/types/AddressChain/MemoryDiviner.d.ts.map +1 -0
  44. package/dist/types/AddressChain/index.d.ts +4 -0
  45. package/dist/types/AddressChain/index.d.ts.map +1 -0
  46. package/dist/types/AddressHistory/Config.d.ts +10 -0
  47. package/dist/types/AddressHistory/Config.d.ts.map +1 -0
  48. package/dist/types/AddressHistory/{AddressHistoryDiviner.d.ts → Diviner.d.ts} +1 -1
  49. package/dist/types/AddressHistory/Diviner.d.ts.map +1 -0
  50. package/dist/types/AddressHistory/MemoryDiviner.d.ts +13 -0
  51. package/dist/types/AddressHistory/MemoryDiviner.d.ts.map +1 -0
  52. package/dist/types/AddressHistory/index.d.ts +3 -2
  53. package/dist/types/AddressHistory/index.d.ts.map +1 -1
  54. package/dist/types/AddressSpace/MemoryAddressSpaceDiviner.d.ts +2 -0
  55. package/dist/types/AddressSpace/MemoryAddressSpaceDiviner.d.ts.map +1 -1
  56. package/package.json +19 -19
  57. package/src/AddressChain/Config.ts +17 -0
  58. package/src/AddressChain/Diviner.ts +18 -0
  59. package/src/AddressChain/MemoryDiviner.ts +49 -0
  60. package/src/AddressChain/index.ts +3 -0
  61. package/src/AddressHistory/Config.ts +15 -0
  62. package/src/AddressHistory/{MemoryAddressHistoryDiviner.ts → MemoryDiviner.ts} +5 -18
  63. package/src/AddressHistory/index.ts +3 -2
  64. package/src/AddressSpace/MemoryAddressSpaceDiviner.ts +14 -4
  65. package/dist/cjs/AddressHistory/AddressHistoryDiviner.js.map +0 -1
  66. package/dist/cjs/AddressHistory/MemoryAddressHistoryDiviner.js.map +0 -1
  67. package/dist/esm/AddressHistory/AddressHistoryDiviner.js.map +0 -1
  68. package/dist/esm/AddressHistory/MemoryAddressHistoryDiviner.js.map +0 -1
  69. package/dist/types/AddressHistory/AddressHistoryDiviner.d.ts.map +0 -1
  70. package/dist/types/AddressHistory/MemoryAddressHistoryDiviner.d.ts +0 -20
  71. package/dist/types/AddressHistory/MemoryAddressHistoryDiviner.d.ts.map +0 -1
  72. /package/src/AddressHistory/{AddressHistoryDiviner.ts → Diviner.ts} +0 -0
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AddressChainDivinerConfigSchema = void 0;
4
+ const Diviner_1 = require("./Diviner");
5
+ exports.AddressChainDivinerConfigSchema = `${Diviner_1.AddressChainSchema}.config`;
6
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/AddressChain/Config.ts"],"names":[],"mappings":";;;AAGA,uCAA8C;AAGjC,QAAA,+BAA+B,GAAoC,GAAG,4BAAkB,SAAS,CAAA"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isAddressChainQueryPayload = exports.isAddressChainPayload = exports.AddressChainQuerySchema = exports.AddressChainSchema = void 0;
4
+ exports.AddressChainSchema = 'network.xyo.diviner.address.chain';
5
+ exports.AddressChainQuerySchema = 'network.xyo.diviner.address.chain.query';
6
+ const isAddressChainPayload = (x) => (x === null || x === void 0 ? void 0 : x.schema) === exports.AddressChainSchema;
7
+ exports.isAddressChainPayload = isAddressChainPayload;
8
+ const isAddressChainQueryPayload = (x) => (x === null || x === void 0 ? void 0 : x.schema) === exports.AddressChainQuerySchema;
9
+ exports.isAddressChainQueryPayload = isAddressChainQueryPayload;
10
+ //# sourceMappingURL=Diviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../src/AddressChain/Diviner.ts"],"names":[],"mappings":";;;AAMa,QAAA,kBAAkB,GAAuB,mCAAmC,CAAA;AAG5E,QAAA,uBAAuB,GAA4B,yCAAyC,CAAA;AAGlG,MAAM,qBAAqB,GAAG,CAAC,CAAqB,EAA4B,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,MAAK,0BAAkB,CAAA;AAA7G,QAAA,qBAAqB,yBAAwF;AAGnH,MAAM,0BAA0B,GAAG,CAAC,CAAqB,EAAiC,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,MAAK,+BAAuB,CAAA;AAA5H,QAAA,0BAA0B,8BAAkG"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryAddressChainDiviner = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const assert_1 = require("@xylabs/assert");
6
+ const archivist_1 = require("@xyo-network/archivist");
7
+ const archivist_wrapper_1 = require("@xyo-network/archivist-wrapper");
8
+ const boundwitness_wrapper_1 = require("@xyo-network/boundwitness-wrapper");
9
+ const AbstractDiviner_1 = require("../AbstractDiviner");
10
+ const Config_1 = require("./Config");
11
+ // This diviner returns the most recent boundwitness signed by the address that can be found
12
+ // if multiple broken chains are found, all the heads are returned
13
+ class MemoryAddressChainDiviner extends AbstractDiviner_1.AbstractDiviner {
14
+ static create(params) {
15
+ const _super = Object.create(null, {
16
+ create: { get: () => super.create }
17
+ });
18
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
+ return (yield _super.create.call(this, params));
20
+ });
21
+ }
22
+ divine(payloads) {
23
+ var _a, _b, _c;
24
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
25
+ const result = [];
26
+ (0, assert_1.assertEx)(!(payloads === null || payloads === void 0 ? void 0 : payloads.length), 'MemoryAddressChainDiviner.divine does not allow payloads to be sent');
27
+ const archivists = (_b = (_a = (yield this.resolve({ query: [[archivist_1.ArchivistGetQuerySchema]] }))) === null || _a === void 0 ? void 0 : _a.map((archivist) => new archivist_wrapper_1.ArchivistWrapper(archivist))) !== null && _b !== void 0 ? _b : [];
28
+ let currentHash = this.config.startHash;
29
+ while (currentHash && result.length < ((_c = this.config.maxResults) !== null && _c !== void 0 ? _c : 1000)) {
30
+ const bwPayload = yield this.archivistFindHash(archivists, currentHash);
31
+ const bw = boundwitness_wrapper_1.BoundWitnessWrapper.parse(bwPayload);
32
+ if (bw) {
33
+ result.push(bw);
34
+ currentHash = bw.prev(this.config.address);
35
+ }
36
+ }
37
+ return result;
38
+ });
39
+ }
40
+ archivistFindHash(archivists, hash) {
41
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
42
+ let index = 0;
43
+ if (archivists[index]) {
44
+ const result = (yield archivists[index].get([hash])).pop();
45
+ if (result) {
46
+ return result;
47
+ }
48
+ index++;
49
+ }
50
+ });
51
+ }
52
+ }
53
+ exports.MemoryAddressChainDiviner = MemoryAddressChainDiviner;
54
+ MemoryAddressChainDiviner.configSchema = Config_1.AddressChainDivinerConfigSchema;
55
+ //# sourceMappingURL=MemoryDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryDiviner.js","sourceRoot":"","sources":["../../../src/AddressChain/MemoryDiviner.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,sDAAgE;AAChE,sEAAiE;AAEjE,4EAAuE;AAIvE,wDAAmE;AACnE,qCAAqF;AAGrF,4FAA4F;AAC5F,kEAAkE;AAElE,MAAa,yBAA0B,SAAQ,iCAAyD;IAGtG,MAAM,CAAgB,MAAM,CAAC,MAAyD;;;;;YACpF,OAAO,CAAC,MAAM,OAAM,MAAM,YAAC,MAAM,CAAC,CAA8B,CAAA;QAClE,CAAC;KAAA;IAEK,MAAM,CAAC,QAAuB;;;YAClC,MAAM,MAAM,GAAiB,EAAE,CAAA;YAC/B,IAAA,iBAAQ,EAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAA,EAAE,qEAAqE,CAAC,CAAA;YAClG,MAAM,UAAU,GAAG,MAAA,MAAA,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,mCAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,0CAAE,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,oCAAgB,CAAC,SAAS,CAAC,CAAC,mCAAI,EAAE,CAAA;YAC1I,IAAI,WAAW,GAAkB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAA;YACtD,OAAO,WAAW,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,MAAA,IAAI,CAAC,MAAM,CAAC,UAAU,mCAAI,IAAI,CAAC,EAAE;gBACtE,MAAM,SAAS,GAAgC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;gBACpG,MAAM,EAAE,GAAoC,0CAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChF,IAAI,EAAE,EAAE;oBACN,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;oBACf,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;iBAC3C;aACF;YACD,OAAO,MAAM,CAAA;;KACd;IAEa,iBAAiB,CAAC,UAA8B,EAAE,IAAY;;YAC1E,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;gBACrB,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAqB,CAAA;gBAC7E,IAAI,MAAM,EAAE;oBACV,OAAO,MAAM,CAAA;iBACd;gBACD,KAAK,EAAE,CAAA;aACR;QACH,CAAC;KAAA;;AAhCH,8DAiCC;AAhCiB,sCAAY,GAAG,wCAA+B,CAAA"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./Config"), exports);
5
+ tslib_1.__exportStar(require("./Diviner"), exports);
6
+ tslib_1.__exportStar(require("./MemoryDiviner"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/AddressChain/index.ts"],"names":[],"mappings":";;;AAAA,mDAAwB;AACxB,oDAAyB;AACzB,0DAA+B"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AddressHistoryDivinerConfigSchema = void 0;
4
+ const Diviner_1 = require("./Diviner");
5
+ exports.AddressHistoryDivinerConfigSchema = `${Diviner_1.AddressHistorySchema}.config`;
6
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/AddressHistory/Config.ts"],"names":[],"mappings":";;;AAGA,uCAAgD;AAGnC,QAAA,iCAAiC,GAAsC,GAAG,8BAAoB,SAAS,CAAA"}
@@ -7,4 +7,4 @@ const isAddressHistoryPayload = (x) => (x === null || x === void 0 ? void 0 : x.
7
7
  exports.isAddressHistoryPayload = isAddressHistoryPayload;
8
8
  const isAddressHistoryQueryPayload = (x) => (x === null || x === void 0 ? void 0 : x.schema) === exports.AddressHistoryQuerySchema;
9
9
  exports.isAddressHistoryQueryPayload = isAddressHistoryQueryPayload;
10
- //# sourceMappingURL=AddressHistoryDiviner.js.map
10
+ //# sourceMappingURL=Diviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../src/AddressHistory/Diviner.ts"],"names":[],"mappings":";;;AAMa,QAAA,oBAAoB,GAAyB,qCAAqC,CAAA;AAGlF,QAAA,yBAAyB,GAA8B,2CAA2C,CAAA;AAGxG,MAAM,uBAAuB,GAAG,CAAC,CAAqB,EAA8B,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,MAAK,4BAAoB,CAAA;AAAnH,QAAA,uBAAuB,2BAA4F;AAGzH,MAAM,4BAA4B,GAAG,CAAC,CAAqB,EAAmC,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,MAAK,iCAAyB,CAAA;AAAlI,QAAA,4BAA4B,gCAAsG"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoryAddressHistoryDiviner = exports.MemoryAddressHistoryDivinerConfigSchema = void 0;
3
+ exports.MemoryAddressHistoryDiviner = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const assert_1 = require("@xylabs/assert");
6
6
  const archivist_1 = require("@xyo-network/archivist");
@@ -9,8 +9,7 @@ const boundwitness_model_1 = require("@xyo-network/boundwitness-model");
9
9
  const boundwitness_wrapper_1 = require("@xyo-network/boundwitness-wrapper");
10
10
  const payload_wrapper_1 = require("@xyo-network/payload-wrapper");
11
11
  const AbstractDiviner_1 = require("../AbstractDiviner");
12
- const AddressHistoryDiviner_1 = require("./AddressHistoryDiviner");
13
- exports.MemoryAddressHistoryDivinerConfigSchema = `${AddressHistoryDiviner_1.AddressHistorySchema}.memory.config`;
12
+ const Config_1 = require("./Config");
14
13
  // This diviner returns the most recent boundwitness signed by the address that can be found
15
14
  // if multiple broken chains are found, all the heads are returned
16
15
  class MemoryAddressHistoryDiviner extends AbstractDiviner_1.AbstractDiviner {
@@ -34,7 +33,6 @@ class MemoryAddressHistoryDiviner extends AbstractDiviner_1.AbstractDiviner {
34
33
  })))).flat();
35
34
  const bwRecords = this.buildWrapperRecords(bwLists);
36
35
  const chains = Object.values(this.buildAddressChains(this.config.address, bwRecords));
37
- console.log(`Chains: ${JSON.stringify(chains, null, 2)}`);
38
36
  //return the heads of each chain (get the last bw on each chain)
39
37
  return chains.map((chain) => (0, assert_1.assertEx)(payload_wrapper_1.PayloadWrapper.unwrap(chain.shift())));
40
38
  });
@@ -71,5 +69,5 @@ class MemoryAddressHistoryDiviner extends AbstractDiviner_1.AbstractDiviner {
71
69
  }
72
70
  }
73
71
  exports.MemoryAddressHistoryDiviner = MemoryAddressHistoryDiviner;
74
- MemoryAddressHistoryDiviner.configSchema = exports.MemoryAddressHistoryDivinerConfigSchema;
75
- //# sourceMappingURL=MemoryAddressHistoryDiviner.js.map
72
+ MemoryAddressHistoryDiviner.configSchema = Config_1.AddressHistoryDivinerConfigSchema;
73
+ //# sourceMappingURL=MemoryDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryDiviner.js","sourceRoot":"","sources":["../../../src/AddressHistory/MemoryDiviner.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./AddressHistoryDiviner"), exports);
5
- tslib_1.__exportStar(require("./MemoryAddressHistoryDiviner"), exports);
4
+ tslib_1.__exportStar(require("./Config"), exports);
5
+ tslib_1.__exportStar(require("./Diviner"), exports);
6
+ tslib_1.__exportStar(require("./MemoryDiviner"), exports);
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/AddressHistory/index.ts"],"names":[],"mappings":";;;AAAA,kEAAuC;AACvC,wEAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/AddressHistory/index.ts"],"names":[],"mappings":";;;AAAA,mDAAwB;AACxB,oDAAyB;AACzB,0DAA+B"}
@@ -24,14 +24,14 @@ class MemoryAddressSpaceDiviner extends AbstractDiviner_1.AbstractDiviner {
24
24
  });
25
25
  }
26
26
  divine(payloads) {
27
- var _a, _b;
28
27
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
29
28
  (0, assert_1.assertEx)(!(payloads === null || payloads === void 0 ? void 0 : payloads.length), 'MemoryAddressSpaceDiviner.divine does not allow payloads to be sent');
30
- const archivists = (_b = (_a = (yield this.resolve({ query: [[archivist_1.ArchivistGetQuerySchema]] }))) === null || _a === void 0 ? void 0 : _a.map((archivist) => new archivist_wrapper_1.ArchivistWrapper(archivist))) !== null && _b !== void 0 ? _b : [];
29
+ const archivists = yield this.archivists();
31
30
  (0, assert_1.assertEx)(archivists.length > 0, 'Did not find any archivists');
32
31
  const bwLists = (yield Promise.all(archivists.map((archivist) => tslib_1.__awaiter(this, void 0, void 0, function* () {
33
- const all = yield archivist.all();
34
- return all.filter((payload) => payload.schema === boundwitness_model_1.XyoBoundWitnessSchema);
32
+ var _a, _b;
33
+ const all = yield ((_a = archivist.all) === null || _a === void 0 ? void 0 : _a.call(archivist));
34
+ return (_b = all === null || all === void 0 ? void 0 : all.filter((payload) => payload.schema === boundwitness_model_1.XyoBoundWitnessSchema)) !== null && _b !== void 0 ? _b : [];
35
35
  })))).flat();
36
36
  const addresses = new Set(bwLists
37
37
  .map((bw) => bw.addresses)
@@ -40,6 +40,17 @@ class MemoryAddressSpaceDiviner extends AbstractDiviner_1.AbstractDiviner {
40
40
  return [...addresses].map((address) => new payload_builder_1.XyoPayloadBuilder({ schema: address_payload_plugin_1.AddressSchema }).fields({ address }).build());
41
41
  });
42
42
  }
43
+ archivists() {
44
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
45
+ if (this.config.archivists) {
46
+ return yield this.resolve({ address: this.config.archivists });
47
+ }
48
+ else {
49
+ //get all reachable archivists
50
+ return (yield this.resolve({ query: [[archivist_1.ArchivistGetQuerySchema]] })).map((archivist) => new archivist_wrapper_1.ArchivistWrapper(archivist));
51
+ }
52
+ });
53
+ }
43
54
  }
44
55
  exports.MemoryAddressSpaceDiviner = MemoryAddressSpaceDiviner;
45
56
  MemoryAddressSpaceDiviner.configSchema = exports.MemoryAddressSpaceDivinerConfigSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryAddressSpaceDiviner.js","sourceRoot":"","sources":["../../../src/AddressSpace/MemoryAddressSpaceDiviner.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,gFAAmE;AACnE,sDAAgE;AAChE,sEAAiE;AACjE,wEAAwF;AAGxF,kEAAgE;AAGhE,wDAAmE;AACnE,+DAA+E;AAGlE,QAAA,qCAAqC,GAA0C,GAAG,wCAAkB,gBAAgB,CAAA;AAUjI;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iCAA+D;IAG5G,MAAM,CAAgB,MAAM,CAAC,MAA+D;;;;;YAC1F,OAAO,CAAC,MAAM,OAAM,MAAM,YAAC,MAAM,CAAC,CAA8B,CAAA;QAClE,CAAC;KAAA;IAEK,MAAM,CAAC,QAAuB;;;YAClC,IAAA,iBAAQ,EAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAA,EAAE,qEAAqE,CAAC,CAAA;YAClG,MAAM,UAAU,GAAG,MAAA,MAAA,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,mCAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,0CAAE,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,oCAAgB,CAAC,SAAS,CAAC,CAAC,mCAAI,EAAE,CAAA;YAC1I,IAAA,iBAAQ,EAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,6BAA6B,CAAC,CAAA;YAC9D,MAAM,OAAO,GAAG,CACd,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CAAC,CAAO,SAAS,EAAE,EAAE;gBACjC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAA;gBACjC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,0CAAqB,CAAsB,CAAA;YAC/F,CAAC,CAAA,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAA;YACR,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,OAAO;iBACJ,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;iBACzB,IAAI,EAAE;iBACN,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAC3C,CAAA;YACD,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,mCAAiB,CAAC,EAAE,MAAM,EAAE,sCAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;;KACrH;;AA1BH,8DA2BC;AA1BiB,sCAAY,GAAG,6CAAqC,CAAA"}
1
+ {"version":3,"file":"MemoryAddressSpaceDiviner.js","sourceRoot":"","sources":["../../../src/AddressSpace/MemoryAddressSpaceDiviner.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,gFAAmE;AACnE,sDAAiF;AACjF,sEAAiE;AACjE,wEAAwF;AAGxF,kEAAgE;AAGhE,wDAAmE;AACnE,+DAA+E;AAGlE,QAAA,qCAAqC,GAA0C,GAAG,wCAAkB,gBAAgB,CAAA;AAWjI;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iCAA+D;IAG5G,MAAM,CAAgB,MAAM,CAAC,MAA+D;;;;;YAC1F,OAAO,CAAC,MAAM,OAAM,MAAM,YAAC,MAAM,CAAC,CAA8B,CAAA;QAClE,CAAC;KAAA;IAEK,MAAM,CAAC,QAAuB;;YAClC,IAAA,iBAAQ,EAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAA,EAAE,qEAAqE,CAAC,CAAA;YAClG,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,IAAA,iBAAQ,EAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,6BAA6B,CAAC,CAAA;YAC9D,MAAM,OAAO,GAAG,CACd,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CAAC,CAAO,SAAS,EAAE,EAAE;;gBACjC,MAAM,GAAG,GAAG,MAAM,CAAA,MAAA,SAAS,CAAC,GAAG,yDAAI,CAAA,CAAA;gBACnC,OAAO,MAAC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,0CAAqB,CAAuB,mCAAI,EAAE,CAAA;YACxG,CAAC,CAAA,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAA;YACR,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,OAAO;iBACJ,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;iBACzB,IAAI,EAAE;iBACN,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAC3C,CAAA;YACD,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,mCAAiB,CAAC,EAAE,MAAM,EAAE,sCAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QACtH,CAAC;KAAA;IAEa,UAAU;;YACtB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;gBAC1B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAkB,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAA;aAChF;iBAAM;gBACL,8BAA8B;gBAC9B,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAkB,EAAE,KAAK,EAAE,CAAC,CAAC,mCAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,oCAAgB,CAAC,SAAS,CAAC,CAAC,CAAA;aACzI;QACH,CAAC;KAAA;;AAnCH,8DAoCC;AAnCiB,sCAAY,GAAG,6CAAqC,CAAA"}