@xyo-network/archivist 2.32.0-rc.3 → 2.32.0-rc.4
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.
- package/dist/cjs/XyoStorageArchivist.d.ts.map +1 -1
- package/dist/cjs/XyoStorageArchivist.js +4 -6
- package/dist/cjs/XyoStorageArchivist.js.map +1 -1
- package/dist/docs.json +212 -212
- package/dist/esm/XyoStorageArchivist.d.ts.map +1 -1
- package/dist/esm/XyoStorageArchivist.js +4 -6
- package/dist/esm/XyoStorageArchivist.js.map +1 -1
- package/package.json +5 -5
- package/src/XyoCookieArchivist.spec.ts +9 -0
- package/src/XyoStorageArchivist.spec.ts +14 -0
- package/src/XyoStorageArchivist.ts +4 -6
- package/src/test.spec.test/index.ts +1 -0
- package/src/test.spec.test/testArchivist.ts +48 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoStorageArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoStorageArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAUjE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,oBAAY,+BAA+B,GAAG,6CAA6C,CAAA;AAC3F,eAAO,MAAM,+BAA+B,EAAE,+BAA+E,CAAA;AAE7H,oBAAY,yBAAyB,GAAG,kBAAkB,CAAC;IACzD,MAAM,EAAE,+BAA+B,CAAA;IACvC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAQF,qBAAa,mBAAoB,SAAQ,YAAY,CAAC,yBAAyB,CAAC;IAC9E,IAAW,IAAI,iCAEd;IAED,IAAW,SAAS,WAEnB;IAED,IAAW,UAAU,WAEpB;IAED,IAAW,YAAY,WAEtB;IAEe,OAAO;IAWvB,OAAO,CAAC,OAAO,CAAW;gBAEd,MAAM,CAAC,EAAE,sBAAsB,CAAC,yBAAyB,CAAC;IAK/D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC;IAWzC,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;IAarD,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAoBxD,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAc/D,GAAG,IAAI,eAAe,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"XyoStorageArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoStorageArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAUjE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,oBAAY,+BAA+B,GAAG,6CAA6C,CAAA;AAC3F,eAAO,MAAM,+BAA+B,EAAE,+BAA+E,CAAA;AAE7H,oBAAY,yBAAyB,GAAG,kBAAkB,CAAC;IACzD,MAAM,EAAE,+BAA+B,CAAA;IACvC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAQF,qBAAa,mBAAoB,SAAQ,YAAY,CAAC,yBAAyB,CAAC;IAC9E,IAAW,IAAI,iCAEd;IAED,IAAW,SAAS,WAEnB;IAED,IAAW,UAAU,WAEpB;IAED,IAAW,YAAY,WAEtB;IAEe,OAAO;IAWvB,OAAO,CAAC,OAAO,CAAW;gBAEd,MAAM,CAAC,EAAE,sBAAsB,CAAC,yBAAyB,CAAC;IAK/D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC;IAWzC,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;IAarD,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAoBxD,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAc/D,GAAG,IAAI,eAAe,CAAC,UAAU,CAAC;IAQ5B,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;CAmBhD"}
|
|
@@ -60,8 +60,8 @@ export class XyoStorageArchivist extends XyoArchivist {
|
|
|
60
60
|
async get(hashes) {
|
|
61
61
|
try {
|
|
62
62
|
return await Promise.all(hashes.map(async (hash) => {
|
|
63
|
-
const
|
|
64
|
-
return
|
|
63
|
+
const value = this.storage.get(hash);
|
|
64
|
+
return value ?? (await this.getFromParents(hash)) ?? null;
|
|
65
65
|
}));
|
|
66
66
|
}
|
|
67
67
|
catch (ex) {
|
|
@@ -75,7 +75,7 @@ export class XyoStorageArchivist extends XyoArchivist {
|
|
|
75
75
|
const hash = wrapper.hash;
|
|
76
76
|
const value = JSON.stringify(wrapper.payload);
|
|
77
77
|
assertEx(value.length < this.maxEntrySize, `Payload too large [${wrapper.hash}, ${value.length}]`);
|
|
78
|
-
this.storage.set(hash,
|
|
78
|
+
this.storage.set(hash, wrapper.payload);
|
|
79
79
|
return wrapper.payload;
|
|
80
80
|
});
|
|
81
81
|
const boundwitness = this.bindPayloads(storedPayloads);
|
|
@@ -104,9 +104,7 @@ export class XyoStorageArchivist extends XyoArchivist {
|
|
|
104
104
|
}
|
|
105
105
|
all() {
|
|
106
106
|
try {
|
|
107
|
-
return Object.entries(this.storage.getAll())
|
|
108
|
-
.filter(([key]) => key.startsWith(`${this.namespace}-`))
|
|
109
|
-
.map(([, value]) => JSON.parse(value));
|
|
107
|
+
return Object.entries(this.storage.getAll()).map(([, value]) => value);
|
|
110
108
|
}
|
|
111
109
|
catch (ex) {
|
|
112
110
|
throw new StorageArchivistError('all', ex, 'unexpected');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoStorageArchivist.js","sourceRoot":"","sources":["../../src/XyoStorageArchivist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAc,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAEpE,OAAO,OAAO,MAAM,gBAAgB,CAAA;AACpC,OAAO,KAAoB,MAAM,QAAQ,CAAA;AAIzC,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,EAC7B,2BAA2B,EAE3B,6BAA6B,GAC9B,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAI7C,MAAM,CAAC,MAAM,+BAA+B,GAAoC,6CAA6C,CAAA;AAU7H,MAAM,qBAAsB,SAAQ,KAAK;IACvC,YAAY,MAAc,EAAE,KAAqB,EAAE,OAAgB;QACjE,KAAK,CAAC,sBAAsB,MAAM,WAAW,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAClG,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAAuC;IAC9E,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,OAAO,CAAA;IACrC,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,SAAS,CAAA;IAC5C,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,CAAA;IACxC,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,KAAK,CAAA;IACzC,CAAC;IAEe,OAAO;QACrB,OAAO;YACL,0BAA0B;YAC1B,6BAA6B;YAC7B,4BAA4B;YAC5B,2BAA2B;YAC3B,6BAA6B;YAC7B,GAAG,KAAK,CAAC,OAAO,EAAE;SACnB,CAAA;IACH,CAAC;IAEO,OAAO,CAAW;IAE1B,YAAY,MAA0D;QACpE,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC,CAAA;QAC7D,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC3D,CAAC;IAEM,MAAM,CAAC,MAAgB;QAC5B,IAAI;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACzB,OAAO,IAAI,CAAA;YACb,CAAC,CAAC,CAAA;SACH;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,EAAE,EAAE,YAAY,CAAC,CAAA;SAC5D;IACH,CAAC;IAEe,KAAK;QACnB,IAAI;YACF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;SACrB;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,IAAI,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,CAAC,CAAA;SAC3D;IACH,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,MAAgB;QAC/B,IAAI;YACF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACxB,MAAM,
|
|
1
|
+
{"version":3,"file":"XyoStorageArchivist.js","sourceRoot":"","sources":["../../src/XyoStorageArchivist.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@xylabs/sdk-js": "^2.6.7",
|
|
13
|
-
"@xyo-network/boundwitness": "^2.32.0-rc.
|
|
14
|
-
"@xyo-network/module": "^2.32.0-rc.
|
|
15
|
-
"@xyo-network/payload": "^2.32.0-rc.
|
|
16
|
-
"@xyo-network/promisable": "^2.32.0-rc.
|
|
13
|
+
"@xyo-network/boundwitness": "^2.32.0-rc.4",
|
|
14
|
+
"@xyo-network/module": "^2.32.0-rc.4",
|
|
15
|
+
"@xyo-network/payload": "^2.32.0-rc.4",
|
|
16
|
+
"@xyo-network/promisable": "^2.32.0-rc.4",
|
|
17
17
|
"js-cookie": "^3.0.1",
|
|
18
18
|
"lodash": "^4.17.21",
|
|
19
19
|
"lru-cache": "^7.14.0",
|
|
@@ -57,6 +57,6 @@
|
|
|
57
57
|
},
|
|
58
58
|
"sideEffects": false,
|
|
59
59
|
"types": "dist/esm/index.d.ts",
|
|
60
|
-
"version": "2.32.0-rc.
|
|
60
|
+
"version": "2.32.0-rc.4",
|
|
61
61
|
"stableVersion": "2.31.5"
|
|
62
62
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jest-environment jsdom
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { testArchivistAll, testArchivistRoundTrip } from './test.spec.test'
|
|
6
|
+
import { XyoCookieArchivist } from './XyoCookieArchivist'
|
|
7
|
+
|
|
8
|
+
testArchivistRoundTrip(new XyoCookieArchivist({ namespace: 'test' }), 'cookie')
|
|
9
|
+
testArchivistAll(new XyoCookieArchivist({ namespace: 'test' }), 'cookie')
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jest-environment jsdom
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { testArchivistAll, testArchivistRoundTrip } from './test.spec.test'
|
|
6
|
+
import { XyoStorageArchivist } from './XyoStorageArchivist'
|
|
7
|
+
|
|
8
|
+
testArchivistRoundTrip(new XyoStorageArchivist({ namespace: 'test', type: 'local' }), 'local')
|
|
9
|
+
testArchivistRoundTrip(new XyoStorageArchivist({ namespace: 'test', type: 'session' }), 'session')
|
|
10
|
+
testArchivistRoundTrip(new XyoStorageArchivist({ namespace: 'test', type: 'page' }), 'page')
|
|
11
|
+
|
|
12
|
+
testArchivistAll(new XyoStorageArchivist({ namespace: 'test', type: 'local' }), 'local')
|
|
13
|
+
testArchivistAll(new XyoStorageArchivist({ namespace: 'test', type: 'session' }), 'session')
|
|
14
|
+
testArchivistAll(new XyoStorageArchivist({ namespace: 'test', type: 'page' }), 'page')
|
|
@@ -94,8 +94,8 @@ export class XyoStorageArchivist extends XyoArchivist<XyoStorageArchivistConfig>
|
|
|
94
94
|
try {
|
|
95
95
|
return await Promise.all(
|
|
96
96
|
hashes.map(async (hash) => {
|
|
97
|
-
const
|
|
98
|
-
return
|
|
97
|
+
const value = this.storage.get(hash)
|
|
98
|
+
return value ?? (await this.getFromParents(hash)) ?? null
|
|
99
99
|
}),
|
|
100
100
|
)
|
|
101
101
|
} catch (ex) {
|
|
@@ -110,7 +110,7 @@ export class XyoStorageArchivist extends XyoArchivist<XyoStorageArchivistConfig>
|
|
|
110
110
|
const hash = wrapper.hash
|
|
111
111
|
const value = JSON.stringify(wrapper.payload)
|
|
112
112
|
assertEx(value.length < this.maxEntrySize, `Payload too large [${wrapper.hash}, ${value.length}]`)
|
|
113
|
-
this.storage.set(hash,
|
|
113
|
+
this.storage.set(hash, wrapper.payload)
|
|
114
114
|
return wrapper.payload
|
|
115
115
|
})
|
|
116
116
|
const boundwitness = this.bindPayloads(storedPayloads)
|
|
@@ -139,9 +139,7 @@ export class XyoStorageArchivist extends XyoArchivist<XyoStorageArchivistConfig>
|
|
|
139
139
|
|
|
140
140
|
public all(): PromisableArray<XyoPayload> {
|
|
141
141
|
try {
|
|
142
|
-
return Object.entries(this.storage.getAll())
|
|
143
|
-
.filter(([key]) => key.startsWith(`${this.namespace}-`))
|
|
144
|
-
.map(([, value]) => JSON.parse(value))
|
|
142
|
+
return Object.entries(this.storage.getAll()).map(([, value]) => value)
|
|
145
143
|
} catch (ex) {
|
|
146
144
|
throw new StorageArchivistError('all', ex, 'unexpected')
|
|
147
145
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './testArchivist'
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jest-environment jsdom
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { delay } from '@xylabs/delay'
|
|
6
|
+
import { XyoPayload, XyoPayloadWrapper } from '@xyo-network/payload'
|
|
7
|
+
|
|
8
|
+
import { XyoArchivist } from '../XyoArchivist'
|
|
9
|
+
import { XyoArchivistWrapper } from '../XyoArchivistWrapper'
|
|
10
|
+
|
|
11
|
+
export const testArchivistRoundTrip = (archivist: XyoArchivist, name: string) => {
|
|
12
|
+
test(`XyoArchivist [${name}]`, async () => {
|
|
13
|
+
const idPayload: XyoPayload<{ salt: string }> = {
|
|
14
|
+
salt: 'test',
|
|
15
|
+
schema: 'network.xyo.id',
|
|
16
|
+
}
|
|
17
|
+
const payloadWrapper = new XyoPayloadWrapper(idPayload)
|
|
18
|
+
const archivistWrapper = new XyoArchivistWrapper(archivist)
|
|
19
|
+
const insertResult = await archivistWrapper.insert([idPayload])
|
|
20
|
+
expect(insertResult).toBeDefined()
|
|
21
|
+
expect(insertResult.payload_hashes.find((hash) => hash === payloadWrapper.hash)).toBeDefined()
|
|
22
|
+
const getResult = await archivistWrapper.get([payloadWrapper.hash])
|
|
23
|
+
expect(getResult).toBeDefined()
|
|
24
|
+
expect(getResult.length).toBe(1)
|
|
25
|
+
const gottenPayload = getResult[0]
|
|
26
|
+
if (gottenPayload) {
|
|
27
|
+
const gottenPayloadWrapper = new XyoPayloadWrapper(gottenPayload)
|
|
28
|
+
expect(gottenPayloadWrapper.hash).toBe(payloadWrapper.hash)
|
|
29
|
+
}
|
|
30
|
+
})
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export const testArchivistAll = (archivist: XyoArchivist, name: string) => {
|
|
34
|
+
test(`XyoArchivist [${name}]`, async () => {
|
|
35
|
+
const idPayload = {
|
|
36
|
+
salt: 'test',
|
|
37
|
+
schema: 'network.xyo.id',
|
|
38
|
+
}
|
|
39
|
+
const archivistWrapper = new XyoArchivistWrapper(archivist)
|
|
40
|
+
for (let x = 0; x < 10; x++) {
|
|
41
|
+
await archivistWrapper.insert([{ ...idPayload, salt: Date.now().toString() } as XyoPayload<{ salt: string }>])
|
|
42
|
+
await delay(10)
|
|
43
|
+
}
|
|
44
|
+
const getResult = await archivistWrapper.all()
|
|
45
|
+
expect(getResult).toBeDefined()
|
|
46
|
+
expect(getResult.length).toBe(11)
|
|
47
|
+
})
|
|
48
|
+
}
|