@xyo-network/api 2.33.0-rc.6 → 2.33.0-rc.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"XyoRemoteArchivist.d.ts","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAA+B,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AACxG,OAAO,EAAE,eAAe,EAAyD,MAAM,2BAA2B,CAAA;AAClH,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AAGpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AA4BrE,uFAAuF;AACvF,qBAAa,kBAAmB,SAAQ,YAAY,CAAC,wBAAwB,CAAC;IAC5E,IAAW,GAAG,oCAEb;IAEe,OAAO;IAIvB,IAAW,OAAO,uBAEjB;IAEY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE;;;;;;IAgBpB,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BxD,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAejG"}
1
+ {"version":3,"file":"XyoRemoteArchivist.d.ts","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAA+B,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AACxG,OAAO,EAAE,eAAe,EAAkF,MAAM,2BAA2B,CAAA;AAC3I,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AAGpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAErE,uFAAuF;AACvF,qBAAa,kBAAmB,SAAQ,YAAY,CAAC,wBAAwB,CAAC;IAC5E,IAAW,GAAG,oCAEb;IAEe,OAAO;IAIvB,IAAW,OAAO,uBAEjB;IAEY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE;;;;;;IAoBpB,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IA2BxD,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAmBjG"}
@@ -7,25 +7,6 @@ const archivist_1 = require("@xyo-network/archivist");
7
7
  const boundwitness_1 = require("@xyo-network/boundwitness");
8
8
  const payload_1 = require("@xyo-network/payload");
9
9
  const RemoteArchivistError_1 = require("./RemoteArchivistError");
10
- const dump = (obj) => {
11
- const cache = [];
12
- return JSON.stringify(obj, (key, value) => {
13
- if (typeof value === 'object' && value !== null) {
14
- // Duplicate reference found, discard key
15
- if (cache.includes(value)) {
16
- return '[circular]';
17
- }
18
- // Store value in our collection
19
- cache.push(value);
20
- }
21
- return value;
22
- }, 2);
23
- };
24
- const handleError = (tag, ex) => {
25
- const error = ex;
26
- console.log(`Error: ${error.message}`);
27
- throw error;
28
- };
29
10
  /** @description Archivist Context that connects to a remote archivist using the API */
30
11
  class XyoRemoteArchivist extends archivist_1.XyoArchivist {
31
12
  get api() {
@@ -42,21 +23,26 @@ class XyoRemoteArchivist extends archivist_1.XyoArchivist {
42
23
  get(hashes) {
43
24
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
44
25
  return yield Promise.all(hashes.map((hash) => tslib_1.__awaiter(this, void 0, void 0, function* () {
45
- var _a;
26
+ var _a, _b;
46
27
  try {
47
- const [payloads, { error }] = yield this.api.archive(this.archive).payload.hash(hash).get('tuple');
48
- if (error === null || error === void 0 ? void 0 : error.length) {
49
- throw new RemoteArchivistError_1.RemoteArchivistError('get', error);
28
+ const [payloads, response, error] = yield this.api.archive(this.archive).payload.hash(hash).get('tuple');
29
+ if ((error === null || error === void 0 ? void 0 : error.status) >= 400) {
30
+ throw new RemoteArchivistError_1.RemoteArchivistError('get', `${error.statusText} [${error.status}]`);
31
+ }
32
+ if ((_a = response === null || response === void 0 ? void 0 : response.error) === null || _a === void 0 ? void 0 : _a.length) {
33
+ throw new RemoteArchivistError_1.RemoteArchivistError('get', response === null || response === void 0 ? void 0 : response.error);
50
34
  }
51
- return (_a = payloads === null || payloads === void 0 ? void 0 : payloads.pop()) !== null && _a !== void 0 ? _a : null;
35
+ return (_b = payloads === null || payloads === void 0 ? void 0 : payloads.pop()) !== null && _b !== void 0 ? _b : null;
52
36
  }
53
37
  catch (ex) {
54
- return handleError('get', ex);
38
+ console.error(ex);
39
+ throw ex;
55
40
  }
56
41
  })));
57
42
  });
58
43
  }
59
44
  insert(payloads) {
45
+ var _a;
60
46
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
47
  try {
62
48
  const boundwitnesses = payloads.filter((payload) => payload.schema === boundwitness_1.XyoBoundWitnessSchema);
@@ -68,42 +54,43 @@ class XyoRemoteArchivist extends archivist_1.XyoArchivist {
68
54
  });
69
55
  });
70
56
  const [boundwitness] = yield this.bindPayloads(payloads);
71
- const payloadResult = yield this.api.archive(this.archive).payload.post(payloads, 'tuple');
72
- console.log(`payloadResult: ${dump(payloadResult)}`);
73
- const [, { error: payloadError }, apiResult] = payloadResult;
74
- if (apiResult.status >= 400) {
75
- throw new RemoteArchivistError_1.RemoteArchivistError('insert', payloadError);
57
+ const bwWithMeta = Object.assign(Object.assign({}, boundwitness), { _payloads: payloads });
58
+ const bwResult = yield this.api.archive(this.archive).block.post([bwWithMeta], 'tuple');
59
+ const [, response, error] = bwResult;
60
+ if ((error === null || error === void 0 ? void 0 : error.status) >= 400) {
61
+ throw new RemoteArchivistError_1.RemoteArchivistError('insert', `${error.statusText} [${error.status}]`);
76
62
  }
77
- if (payloadError === null || payloadError === void 0 ? void 0 : payloadError.length) {
78
- throw new RemoteArchivistError_1.RemoteArchivistError('insert', payloadError);
79
- }
80
- const bwResult = yield this.api.archive(this.archive).block.post([boundwitness], 'tuple');
81
- const [, { error: bwError }] = bwResult;
82
- if (bwError === null || bwError === void 0 ? void 0 : bwError.length) {
83
- throw new RemoteArchivistError_1.RemoteArchivistError('insert', bwError);
63
+ if ((_a = response === null || response === void 0 ? void 0 : response.error) === null || _a === void 0 ? void 0 : _a.length) {
64
+ throw new RemoteArchivistError_1.RemoteArchivistError('insert', response === null || response === void 0 ? void 0 : response.error);
84
65
  }
85
66
  return boundwitness;
86
67
  }
87
68
  catch (ex) {
88
- return handleError('insert', ex);
69
+ console.error(ex);
70
+ throw ex;
89
71
  }
90
72
  });
91
73
  }
92
74
  find(filter) {
75
+ var _a;
93
76
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
94
77
  try {
95
78
  const [payloads = [], { error: payloadError }] = yield this.api.archive(this.archive).payload.find(filter, 'tuple');
96
79
  if (payloadError === null || payloadError === void 0 ? void 0 : payloadError.length) {
97
80
  throw new RemoteArchivistError_1.RemoteArchivistError('find', payloadError, 'payloads');
98
81
  }
99
- const [blocks = [], { error: blockError }] = yield this.api.archive(this.archive).block.find(filter, 'tuple');
100
- if (blockError === null || blockError === void 0 ? void 0 : blockError.length) {
101
- throw new RemoteArchivistError_1.RemoteArchivistError('find', blockError, 'blocks');
82
+ const [blocks = [], response, error] = yield this.api.archive(this.archive).block.find(filter, 'tuple');
83
+ if ((error === null || error === void 0 ? void 0 : error.status) >= 400) {
84
+ throw new RemoteArchivistError_1.RemoteArchivistError('find', `${error.statusText} [${error.status}]`);
85
+ }
86
+ if ((_a = response === null || response === void 0 ? void 0 : response.error) === null || _a === void 0 ? void 0 : _a.length) {
87
+ throw new RemoteArchivistError_1.RemoteArchivistError('find', response === null || response === void 0 ? void 0 : response.error);
102
88
  }
103
89
  return payloads.concat(blocks);
104
90
  }
105
91
  catch (ex) {
106
- return handleError('find', ex);
92
+ console.error(ex);
93
+ throw ex;
107
94
  }
108
95
  });
109
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"XyoRemoteArchivist.js","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,sDAAwG;AACxG,4DAAkH;AAClH,kDAAoE;AAEpE,iEAA6D;AAG7D,MAAM,IAAI,GAAG,CAAC,GAAY,EAAE,EAAE;IAC5B,MAAM,KAAK,GAAc,EAAE,CAAA;IAC3B,OAAO,IAAI,CAAC,SAAS,CACnB,GAAG,EACH,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACb,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YAC/C,yCAAyC;YACzC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACzB,OAAO,YAAY,CAAA;aACpB;YAED,gCAAgC;YAChC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SAClB;QACD,OAAO,KAAK,CAAA;IACd,CAAC,EACD,CAAC,CACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAW,EAAE,EAAE;IAC/C,MAAM,KAAK,GAAG,EAAW,CAAA;IACzB,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACtC,MAAM,KAAK,CAAA;AACb,CAAC,CAAA;AAED,uFAAuF;AACvF,MAAa,kBAAmB,SAAQ,wBAAsC;IAC5E,IAAW,GAAG;;QACZ,OAAO,IAAA,iBAAQ,EAAC,MAAA,IAAI,CAAC,MAAM,0CAAE,GAAG,EAAE,iBAAiB,CAAC,CAAA;IACtD,CAAC;IAEe,OAAO;QACrB,OAAO,CAAC,uCAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,IAAW,OAAO;;QAChB,OAAO,MAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,CAAA;IAC7B,CAAC;IAEY,GAAG,CAAC,MAAgB;;YAC/B,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,MAAM,CAAC,GAAG,CAAC,CAAO,IAAI,EAAE,EAAE;;gBACxB,IAAI;oBACF,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;oBAClG,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAE;wBACjB,MAAM,IAAI,2CAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;qBAC7C;oBACD,OAAO,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,EAAE,mCAAI,IAAI,CAAA;iBAC/B;gBAAC,OAAO,EAAE,EAAE;oBACX,OAAO,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;iBAC9B;YACH,CAAC,CAAA,CAAC,CACH,CAAA;QACH,CAAC;KAAA;IAEY,MAAM,CAAC,QAAsB;;YACxC,IAAI;gBACF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,oCAAqB,CAAqC,CAAA;gBACjI,cAAc,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBACtC,YAAY,CAAC,SAAS;wBACpB,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;4BAC1B,MAAM,IAAI,GAAG,IAAI,2BAAiB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAA;4BAChD,OAAO,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;wBACnD,CAAC,CAAC,CAAA;gBACN,CAAC,CAAC,CAAA;gBACF,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;gBACxD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;gBAC1F,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;gBACpD,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,SAAS,CAAC,GAAG,aAAa,CAAA;gBAC5D,IAAI,SAAS,CAAC,MAAM,IAAI,GAAG,EAAE;oBAC3B,MAAM,IAAI,2CAAoB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;iBACvD;gBACD,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,EAAE;oBACxB,MAAM,IAAI,2CAAoB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;iBACvD;gBACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAA;gBACzF,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAA;gBACvC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;oBACnB,MAAM,IAAI,2CAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;iBAClD;gBACD,OAAO,YAAY,CAAA;aACpB;YAAC,OAAO,EAAE,EAAE;gBACX,OAAO,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;aACjC;QACH,CAAC;KAAA;IAEY,IAAI,CAAoC,MAA4B;;YAC/E,IAAI;gBACF,MAAM,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBACnH,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,EAAE;oBACxB,MAAM,IAAI,2CAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;iBACjE;gBACD,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAC7G,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAE;oBACtB,MAAM,IAAI,2CAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;iBAC7D;gBACD,OAAO,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAQ,CAAA;aACtC;YAAC,OAAO,EAAE,EAAE;gBACX,OAAO,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;aAC/B;QACH,CAAC;KAAA;CACF;AA3ED,gDA2EC"}
1
+ {"version":3,"file":"XyoRemoteArchivist.js","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":"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"}