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

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"}
@@ -3,25 +3,6 @@ import { XyoArchivist, XyoArchivistFindQuerySchema } from '@xyo-network/archivis
3
3
  import { XyoBoundWitnessSchema } from '@xyo-network/boundwitness';
4
4
  import { XyoPayloadWrapper } from '@xyo-network/payload';
5
5
  import { RemoteArchivistError } from './RemoteArchivistError';
6
- const dump = (obj) => {
7
- const cache = [];
8
- return JSON.stringify(obj, (key, value) => {
9
- if (typeof value === 'object' && value !== null) {
10
- // Duplicate reference found, discard key
11
- if (cache.includes(value)) {
12
- return '[circular]';
13
- }
14
- // Store value in our collection
15
- cache.push(value);
16
- }
17
- return value;
18
- }, 2);
19
- };
20
- const handleError = (tag, ex) => {
21
- const error = ex;
22
- console.log(`Error: ${error.message}`);
23
- throw error;
24
- };
25
6
  /** @description Archivist Context that connects to a remote archivist using the API */
26
7
  export class XyoRemoteArchivist extends XyoArchivist {
27
8
  get api() {
@@ -36,14 +17,18 @@ export class XyoRemoteArchivist extends XyoArchivist {
36
17
  async get(hashes) {
37
18
  return await Promise.all(hashes.map(async (hash) => {
38
19
  try {
39
- const [payloads, { error }] = await this.api.archive(this.archive).payload.hash(hash).get('tuple');
40
- if (error?.length) {
41
- throw new RemoteArchivistError('get', error);
20
+ const [payloads, response, error] = await this.api.archive(this.archive).payload.hash(hash).get('tuple');
21
+ if (error?.status >= 400) {
22
+ throw new RemoteArchivistError('get', `${error.statusText} [${error.status}]`);
23
+ }
24
+ if (response?.error?.length) {
25
+ throw new RemoteArchivistError('get', response?.error);
42
26
  }
43
27
  return payloads?.pop() ?? null;
44
28
  }
45
29
  catch (ex) {
46
- return handleError('get', ex);
30
+ console.error(ex);
31
+ throw ex;
47
32
  }
48
33
  }));
49
34
  }
@@ -58,24 +43,20 @@ export class XyoRemoteArchivist extends XyoArchivist {
58
43
  });
59
44
  });
60
45
  const [boundwitness] = await this.bindPayloads(payloads);
61
- const payloadResult = await this.api.archive(this.archive).payload.post(payloads, 'tuple');
62
- console.log(`payloadResult: ${dump(payloadResult)}`);
63
- const [, { error: payloadError }, apiResult] = payloadResult;
64
- if (apiResult.status >= 400) {
65
- throw new RemoteArchivistError('insert', payloadError);
46
+ const bwWithMeta = { ...boundwitness, _payloads: payloads };
47
+ const bwResult = await this.api.archive(this.archive).block.post([bwWithMeta], 'tuple');
48
+ const [, response, error] = bwResult;
49
+ if (error?.status >= 400) {
50
+ throw new RemoteArchivistError('insert', `${error.statusText} [${error.status}]`);
66
51
  }
67
- if (payloadError?.length) {
68
- throw new RemoteArchivistError('insert', payloadError);
69
- }
70
- const bwResult = await this.api.archive(this.archive).block.post([boundwitness], 'tuple');
71
- const [, { error: bwError }] = bwResult;
72
- if (bwError?.length) {
73
- throw new RemoteArchivistError('insert', bwError);
52
+ if (response?.error?.length) {
53
+ throw new RemoteArchivistError('insert', response?.error);
74
54
  }
75
55
  return boundwitness;
76
56
  }
77
57
  catch (ex) {
78
- return handleError('insert', ex);
58
+ console.error(ex);
59
+ throw ex;
79
60
  }
80
61
  }
81
62
  async find(filter) {
@@ -84,14 +65,18 @@ export class XyoRemoteArchivist extends XyoArchivist {
84
65
  if (payloadError?.length) {
85
66
  throw new RemoteArchivistError('find', payloadError, 'payloads');
86
67
  }
87
- const [blocks = [], { error: blockError }] = await this.api.archive(this.archive).block.find(filter, 'tuple');
88
- if (blockError?.length) {
89
- throw new RemoteArchivistError('find', blockError, 'blocks');
68
+ const [blocks = [], response, error] = await this.api.archive(this.archive).block.find(filter, 'tuple');
69
+ if (error?.status >= 400) {
70
+ throw new RemoteArchivistError('find', `${error.statusText} [${error.status}]`);
71
+ }
72
+ if (response?.error?.length) {
73
+ throw new RemoteArchivistError('find', response?.error);
90
74
  }
91
75
  return payloads.concat(blocks);
92
76
  }
93
77
  catch (ex) {
94
- return handleError('find', ex);
78
+ console.error(ex);
79
+ throw ex;
95
80
  }
96
81
  }
97
82
  }
@@ -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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"}
package/package.json CHANGED
@@ -10,12 +10,12 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "@xylabs/sdk-js": "^2.6.7",
13
- "@xyo-network/account": "^2.33.0-rc.6",
14
- "@xyo-network/archivist": "^2.33.0-rc.6",
15
- "@xyo-network/boundwitness": "^2.33.0-rc.6",
16
- "@xyo-network/core": "^2.33.0-rc.6",
17
- "@xyo-network/payload": "^2.33.0-rc.6",
18
- "@xyo-network/schema-payload-plugin": "^2.33.0-rc.6",
13
+ "@xyo-network/account": "^2.33.0-rc.8",
14
+ "@xyo-network/archivist": "^2.33.0-rc.8",
15
+ "@xyo-network/boundwitness": "^2.33.0-rc.8",
16
+ "@xyo-network/core": "^2.33.0-rc.8",
17
+ "@xyo-network/payload": "^2.33.0-rc.8",
18
+ "@xyo-network/schema-payload-plugin": "^2.33.0-rc.8",
19
19
  "axios": "^0.27.2",
20
20
  "pako": "^2.0.4",
21
21
  "tslib": "^2.4.0"
@@ -57,6 +57,6 @@
57
57
  },
58
58
  "sideEffects": false,
59
59
  "types": "dist/esm/index.d.ts",
60
- "version": "2.33.0-rc.6",
60
+ "version": "2.33.0-rc.8",
61
61
  "stableVersion": "2.32.1"
62
62
  }
@@ -1,37 +1,11 @@
1
1
  import { assertEx } from '@xylabs/sdk-js'
2
2
  import { XyoArchivist, XyoArchivistFindQuerySchema, XyoPayloadFindFilter } from '@xyo-network/archivist'
3
- import { XyoBoundWitness, XyoBoundWitnessSchema, XyoBoundWitnessWithPartialMeta } from '@xyo-network/boundwitness'
3
+ import { XyoBoundWitness, XyoBoundWitnessSchema, XyoBoundWitnessWithMeta, XyoBoundWitnessWithPartialMeta } from '@xyo-network/boundwitness'
4
4
  import { XyoPayload, XyoPayloadWrapper } from '@xyo-network/payload'
5
5
 
6
6
  import { RemoteArchivistError } from './RemoteArchivistError'
7
7
  import { XyoRemoteArchivistConfig } from './XyoRemoteArchivistConfig'
8
8
 
9
- const dump = (obj: unknown) => {
10
- const cache: unknown[] = []
11
- return JSON.stringify(
12
- obj,
13
- (key, value) => {
14
- if (typeof value === 'object' && value !== null) {
15
- // Duplicate reference found, discard key
16
- if (cache.includes(value)) {
17
- return '[circular]'
18
- }
19
-
20
- // Store value in our collection
21
- cache.push(value)
22
- }
23
- return value
24
- },
25
- 2,
26
- )
27
- }
28
-
29
- const handleError = (tag: string, ex: unknown) => {
30
- const error = ex as Error
31
- console.log(`Error: ${error.message}`)
32
- throw error
33
- }
34
-
35
9
  /** @description Archivist Context that connects to a remote archivist using the API */
36
10
  export class XyoRemoteArchivist extends XyoArchivist<XyoRemoteArchivistConfig> {
37
11
  public get api() {
@@ -50,13 +24,17 @@ export class XyoRemoteArchivist extends XyoArchivist<XyoRemoteArchivistConfig> {
50
24
  return await Promise.all(
51
25
  hashes.map(async (hash) => {
52
26
  try {
53
- const [payloads, { error }] = await this.api.archive(this.archive).payload.hash(hash).get('tuple')
54
- if (error?.length) {
55
- throw new RemoteArchivistError('get', error)
27
+ const [payloads, response, error] = await this.api.archive(this.archive).payload.hash(hash).get('tuple')
28
+ if (error?.status >= 400) {
29
+ throw new RemoteArchivistError('get', `${error.statusText} [${error.status}]`)
30
+ }
31
+ if (response?.error?.length) {
32
+ throw new RemoteArchivistError('get', response?.error)
56
33
  }
57
34
  return payloads?.pop() ?? null
58
35
  } catch (ex) {
59
- return handleError('get', ex)
36
+ console.error(ex)
37
+ throw ex
60
38
  }
61
39
  }),
62
40
  )
@@ -73,23 +51,19 @@ export class XyoRemoteArchivist extends XyoArchivist<XyoRemoteArchivistConfig> {
73
51
  })
74
52
  })
75
53
  const [boundwitness] = await this.bindPayloads(payloads)
76
- const payloadResult = await this.api.archive(this.archive).payload.post(payloads, 'tuple')
77
- console.log(`payloadResult: ${dump(payloadResult)}`)
78
- const [, { error: payloadError }, apiResult] = payloadResult
79
- if (apiResult.status >= 400) {
80
- throw new RemoteArchivistError('insert', payloadError)
54
+ const bwWithMeta: Partial<XyoBoundWitnessWithMeta> & XyoBoundWitness = { ...boundwitness, _payloads: payloads }
55
+ const bwResult = await this.api.archive(this.archive).block.post([bwWithMeta], 'tuple')
56
+ const [, response, error] = bwResult
57
+ if (error?.status >= 400) {
58
+ throw new RemoteArchivistError('insert', `${error.statusText} [${error.status}]`)
81
59
  }
82
- if (payloadError?.length) {
83
- throw new RemoteArchivistError('insert', payloadError)
84
- }
85
- const bwResult = await this.api.archive(this.archive).block.post([boundwitness], 'tuple')
86
- const [, { error: bwError }] = bwResult
87
- if (bwError?.length) {
88
- throw new RemoteArchivistError('insert', bwError)
60
+ if (response?.error?.length) {
61
+ throw new RemoteArchivistError('insert', response?.error)
89
62
  }
90
63
  return boundwitness
91
64
  } catch (ex) {
92
- return handleError('insert', ex)
65
+ console.error(ex)
66
+ throw ex
93
67
  }
94
68
  }
95
69
 
@@ -99,13 +73,17 @@ export class XyoRemoteArchivist extends XyoArchivist<XyoRemoteArchivistConfig> {
99
73
  if (payloadError?.length) {
100
74
  throw new RemoteArchivistError('find', payloadError, 'payloads')
101
75
  }
102
- const [blocks = [], { error: blockError }] = await this.api.archive(this.archive).block.find(filter, 'tuple')
103
- if (blockError?.length) {
104
- throw new RemoteArchivistError('find', blockError, 'blocks')
76
+ const [blocks = [], response, error] = await this.api.archive(this.archive).block.find(filter, 'tuple')
77
+ if (error?.status >= 400) {
78
+ throw new RemoteArchivistError('find', `${error.statusText} [${error.status}]`)
79
+ }
80
+ if (response?.error?.length) {
81
+ throw new RemoteArchivistError('find', response?.error)
105
82
  }
106
83
  return payloads.concat(blocks) as R[]
107
84
  } catch (ex) {
108
- return handleError('find', ex)
85
+ console.error(ex)
86
+ throw ex
109
87
  }
110
88
  }
111
89
  }