@xyo-network/api 2.33.0-rc.5 → 2.33.0-rc.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.
@@ -0,0 +1,6 @@
1
+ export declare class RemoteArchivistError extends Error {
2
+ constructor(action: string, error: Error['cause'], message?: string);
3
+ isRemoteArchivistError: boolean;
4
+ static isRemoteArchivistError(error: unknown): RemoteArchivistError | undefined;
5
+ }
6
+ //# sourceMappingURL=RemoteArchivistError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemoteArchivistError.d.ts","sourceRoot":"","sources":["../../../src/Archivist/RemoteArchivistError.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM;IAGnE,sBAAsB,UAAO;IAC7B,MAAM,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,GAAG,SAAS;CAGhF"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RemoteArchivistError = void 0;
4
+ class RemoteArchivistError extends Error {
5
+ constructor(action, error, message) {
6
+ super(`Remote Archivist [${action}] failed${message ? ` (${message})` : ''}`, { cause: error });
7
+ this.isRemoteArchivistError = true;
8
+ }
9
+ static isRemoteArchivistError(error) {
10
+ return error.isRemoteArchivistError ? error : undefined;
11
+ }
12
+ }
13
+ exports.RemoteArchivistError = RemoteArchivistError;
14
+ //# sourceMappingURL=RemoteArchivistError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemoteArchivistError.js","sourceRoot":"","sources":["../../../src/Archivist/RemoteArchivistError.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,MAAc,EAAE,KAAqB,EAAE,OAAgB;QACjE,KAAK,CAAC,qBAAqB,MAAM,WAAW,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAEjG,2BAAsB,GAAG,IAAI,CAAA;IAD7B,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,KAAc;QAC1C,OAAQ,KAA8B,CAAC,sBAAsB,CAAC,CAAC,CAAE,KAA8B,CAAC,CAAC,CAAC,SAAS,CAAA;IAC7G,CAAC;CACF;AARD,oDAQC"}
@@ -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;AAEpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAQrE,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;;;;;;IAiBpB,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAuBxD,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAgBjG"}
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"}
@@ -6,11 +6,26 @@ const sdk_js_1 = require("@xylabs/sdk-js");
6
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
- class RemoteArchivistError extends Error {
10
- constructor(action, error, message) {
11
- super(`Remote Archivist [${action}] failed${message ? ` (${message})` : ''}`, { cause: error });
12
- }
13
- }
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
+ };
14
29
  /** @description Archivist Context that connects to a remote archivist using the API */
15
30
  class XyoRemoteArchivist extends archivist_1.XyoArchivist {
16
31
  get api() {
@@ -31,13 +46,12 @@ class XyoRemoteArchivist extends archivist_1.XyoArchivist {
31
46
  try {
32
47
  const [payloads, { error }] = yield this.api.archive(this.archive).payload.hash(hash).get('tuple');
33
48
  if (error === null || error === void 0 ? void 0 : error.length) {
34
- throw new RemoteArchivistError('get', error);
49
+ throw new RemoteArchivistError_1.RemoteArchivistError('get', error);
35
50
  }
36
51
  return (_a = payloads === null || payloads === void 0 ? void 0 : payloads.pop()) !== null && _a !== void 0 ? _a : null;
37
52
  }
38
53
  catch (ex) {
39
- console.warn(`Error: ${JSON.stringify(ex, null, 2)}`);
40
- throw new RemoteArchivistError('get', ex, 'unexpected');
54
+ return handleError('get', ex);
41
55
  }
42
56
  })));
43
57
  });
@@ -54,16 +68,24 @@ class XyoRemoteArchivist extends archivist_1.XyoArchivist {
54
68
  });
55
69
  });
56
70
  const [boundwitness] = yield this.bindPayloads(payloads);
57
- const result = yield this.api.archive(this.archive).block.post([boundwitness], 'tuple');
58
- const [, { error }] = result;
59
- if (error === null || error === void 0 ? void 0 : error.length) {
60
- throw new RemoteArchivistError('insert', error);
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);
76
+ }
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);
61
84
  }
62
85
  return boundwitness;
63
86
  }
64
87
  catch (ex) {
65
- console.warn(`Error: ${JSON.stringify(ex, null, 2)}`);
66
- throw new RemoteArchivistError('insert', ex, 'unexpected');
88
+ return handleError('insert', ex);
67
89
  }
68
90
  });
69
91
  }
@@ -72,17 +94,16 @@ class XyoRemoteArchivist extends archivist_1.XyoArchivist {
72
94
  try {
73
95
  const [payloads = [], { error: payloadError }] = yield this.api.archive(this.archive).payload.find(filter, 'tuple');
74
96
  if (payloadError === null || payloadError === void 0 ? void 0 : payloadError.length) {
75
- throw new RemoteArchivistError('find', payloadError, 'payloads');
97
+ throw new RemoteArchivistError_1.RemoteArchivistError('find', payloadError, 'payloads');
76
98
  }
77
99
  const [blocks = [], { error: blockError }] = yield this.api.archive(this.archive).block.find(filter, 'tuple');
78
100
  if (blockError === null || blockError === void 0 ? void 0 : blockError.length) {
79
- throw new RemoteArchivistError('find', blockError, 'blocks');
101
+ throw new RemoteArchivistError_1.RemoteArchivistError('find', blockError, 'blocks');
80
102
  }
81
103
  return payloads.concat(blocks);
82
104
  }
83
105
  catch (ex) {
84
- console.warn(`Error: ${JSON.stringify(ex, null, 2)}`);
85
- throw new RemoteArchivistError('find', ex, 'unexpected');
106
+ return handleError('find', ex);
86
107
  }
87
108
  });
88
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"XyoRemoteArchivist.js","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XyoRemoteArchivist.js","sourceRoot":"","sources":["../../../src/Archivist/XyoRemoteArchivist.ts"],"names":[],"mappings":"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"}