@xyo-network/archivist 2.26.3 → 2.26.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.
- package/dist/cjs/XyoArchivistConfig.d.ts +1 -3
- package/dist/cjs/XyoArchivistConfig.d.ts.map +1 -1
- package/dist/cjs/XyoArchivistConfig.js.map +1 -1
- package/dist/cjs/XyoMemoryArchivist.d.ts +3 -5
- package/dist/cjs/XyoMemoryArchivist.d.ts.map +1 -1
- package/dist/cjs/XyoMemoryArchivist.js +2 -2
- package/dist/cjs/XyoMemoryArchivist.js.map +1 -1
- package/dist/docs.json +372 -596
- package/dist/esm/XyoArchivistConfig.d.ts +1 -3
- package/dist/esm/XyoArchivistConfig.d.ts.map +1 -1
- package/dist/esm/XyoArchivistConfig.js.map +1 -1
- package/dist/esm/XyoMemoryArchivist.d.ts +3 -5
- package/dist/esm/XyoMemoryArchivist.d.ts.map +1 -1
- package/dist/esm/XyoMemoryArchivist.js +2 -2
- package/dist/esm/XyoMemoryArchivist.js.map +1 -1
- package/package.json +6 -6
- package/src/XyoArchivistConfig.ts +0 -2
- package/src/XyoMemoryArchivist.ts +5 -8
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { XyoAccount } from '@xyo-network/account';
|
|
2
1
|
import { XyoModuleConfig } from '@xyo-network/module';
|
|
3
2
|
import { XyoPayload } from '@xyo-network/payload';
|
|
4
3
|
import { XyoArchivist, XyoArchivistQueryPayload } from './XyoArchivist';
|
|
@@ -10,7 +9,6 @@ export interface XyoArchivistParents {
|
|
|
10
9
|
export declare type XyoArchivistConfig<T extends XyoPayload = XyoPayload, M extends XyoArchivist = XyoArchivist<XyoArchivistQueryPayload<T>>> = XyoModuleConfig<{
|
|
11
10
|
/** @field address of one or more parent archivists to read from */
|
|
12
11
|
parents?: XyoArchivistParents;
|
|
13
|
-
account?: XyoAccount;
|
|
14
12
|
cacheParentReads?: boolean;
|
|
15
13
|
/** @field address of archivist to write through to */
|
|
16
14
|
writeThrough?: string;
|
|
@@ -19,7 +17,7 @@ export declare class XyoArchivistConfigWrapper<C extends XyoArchivistConfig = Xy
|
|
|
19
17
|
protected config?: C;
|
|
20
18
|
constructor(config?: C);
|
|
21
19
|
get parents(): XyoArchivistParents | undefined;
|
|
22
|
-
get account(): XyoAccount | undefined;
|
|
20
|
+
get account(): import("@xyo-network/account").XyoAccount | undefined;
|
|
23
21
|
get writeThrough(): string | undefined;
|
|
24
22
|
get cacheParentReads(): boolean | undefined;
|
|
25
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoArchivistConfig.d.ts","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"XyoArchivistConfig.d.ts","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAEvE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;CACzD;AAED,oBAAY,kBAAkB,CAC5B,CAAC,SAAS,UAAU,GAAG,UAAU,EACjC,CAAC,SAAS,YAAY,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAChE,eAAe,CACjB;IACE,mEAAmE;IACnE,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,CAAC,EACL,CAAC,CACF,CAAA;AAED,qBAAa,yBAAyB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;IACtF,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACR,MAAM,CAAC,EAAE,CAAC;IAItB,IAAW,OAAO,oCAEjB;IAED,IAAW,OAAO,0DAEjB;IAED,IAAW,YAAY,uBAEtB;IAED,IAAW,gBAAgB,wBAE1B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoArchivistConfig.js","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"XyoArchivistConfig.js","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAyBA,MAAM,OAAO,yBAAyB;IAC1B,MAAM,CAAI;IACpB,YAAY,MAAU;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,CAAA;IAClC,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACtC,CAAC;CACF"}
|
|
@@ -9,13 +9,13 @@ export declare type XyoMemoryArchivistConfig = XyoArchivistConfig<{
|
|
|
9
9
|
schema: 'network.xyo.module.config.archivist.memory';
|
|
10
10
|
max?: number;
|
|
11
11
|
}>;
|
|
12
|
-
export declare class XyoMemoryArchivist
|
|
12
|
+
export declare class XyoMemoryArchivist extends XyoAbstractArchivist<XyoArchivistQueryPayload, XyoMemoryArchivistConfig> {
|
|
13
13
|
query<Q>(_query: Q): Promisable<[XyoBoundWitness, XyoPayload<{
|
|
14
14
|
schema: string;
|
|
15
15
|
}>[]]>;
|
|
16
16
|
get max(): number;
|
|
17
17
|
private cache;
|
|
18
|
-
constructor(config:
|
|
18
|
+
constructor(config: XyoMemoryArchivistConfig);
|
|
19
19
|
delete(hashes: string[]): PromisableArray<boolean>;
|
|
20
20
|
clear(): void | Promise<void>;
|
|
21
21
|
getFromParents(hash: string): Promise<XyoPayload<{
|
|
@@ -25,8 +25,6 @@ export declare class XyoMemoryArchivist<Q extends XyoArchivistQueryPayload = Xyo
|
|
|
25
25
|
insert(payloads: XyoPayload[]): PromisableArray<XyoPayload>;
|
|
26
26
|
find<R extends XyoPayload = XyoPayload>(query: XyoPayloadFindQuery): PromisableArray<R>;
|
|
27
27
|
all(): Promise<XyoPayload[]> | XyoPayload[];
|
|
28
|
-
commit(): Promise<
|
|
29
|
-
schema: string;
|
|
30
|
-
}>[] | undefined)[]>;
|
|
28
|
+
commit(): Promise<XyoPayload[]>;
|
|
31
29
|
}
|
|
32
30
|
//# sourceMappingURL=XyoMemoryArchivist.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoMemoryArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAA;AACnF,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,oBAAY,wBAAwB,GAAG,kBAAkB,CAAC;IACxD,MAAM,EAAE,4CAA4C,CAAA;IACpD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAC,CAAA;AAEF,qBAAa,
|
|
1
|
+
{"version":3,"file":"XyoMemoryArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAA;AACnF,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,oBAAY,wBAAwB,GAAG,kBAAkB,CAAC;IACxD,MAAM,EAAE,4CAA4C,CAAA;IACpD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAC,CAAA;AAEF,qBAAa,kBAAmB,SAAQ,oBAAoB,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAC9G,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC,CAAC;IAGpF,IAAW,GAAG,WAEb;IAED,OAAO,CAAC,KAAK,CAA8B;gBAE/B,MAAM,EAAE,wBAAwB;IAKrC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC;IAMlD,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvB,cAAc,CAAC,IAAI,EAAE,MAAM;;;IAY3B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;IAQ3D,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;IAS3D,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,KAAK,EAAE,mBAAmB,GAAG,eAAe,CAAC,CAAC,CAAC;IAUvF,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE;IAIrC,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAW7C"}
|
|
@@ -59,9 +59,9 @@ export class XyoMemoryArchivist extends XyoAbstractArchivist {
|
|
|
59
59
|
const payloads = assertEx(await this.all(), 'Nothing to commit');
|
|
60
60
|
const builder = new XyoBoundWitnessBuilder();
|
|
61
61
|
const block = builder.payloads(payloads).witness(account).build();
|
|
62
|
-
|
|
62
|
+
await Promise.allSettled(compact(Object.values(this.parents?.commit ?? [])?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))));
|
|
63
63
|
await this.clear();
|
|
64
|
-
return
|
|
64
|
+
return payloads;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
//# sourceMappingURL=XyoMemoryArchivist.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoMemoryArchivist.js","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAmB,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AACnF,OAAO,EAAc,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAEpE,OAAO,OAAO,MAAM,gBAAgB,CAAA;AACpC,OAAO,QAAQ,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAUjD,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"XyoMemoryArchivist.js","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -10,11 +10,11 @@
|
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@xylabs/sdk-js": "^2.6.6",
|
|
13
|
-
"@xyo-network/account": "^2.26.
|
|
14
|
-
"@xyo-network/boundwitness": "^2.26.
|
|
15
|
-
"@xyo-network/module": "^2.26.
|
|
16
|
-
"@xyo-network/payload": "^2.26.
|
|
17
|
-
"@xyo-network/promisable": "^2.26.
|
|
13
|
+
"@xyo-network/account": "^2.26.6",
|
|
14
|
+
"@xyo-network/boundwitness": "^2.26.6",
|
|
15
|
+
"@xyo-network/module": "^2.26.6",
|
|
16
|
+
"@xyo-network/payload": "^2.26.6",
|
|
17
|
+
"@xyo-network/promisable": "^2.26.6",
|
|
18
18
|
"lodash": "^4.17.21",
|
|
19
19
|
"lru-cache": "^7.14.0",
|
|
20
20
|
"tslib": "^2.4.0"
|
|
@@ -56,5 +56,5 @@
|
|
|
56
56
|
},
|
|
57
57
|
"sideEffects": false,
|
|
58
58
|
"types": "dist/esm/index.d.ts",
|
|
59
|
-
"version": "2.26.
|
|
59
|
+
"version": "2.26.6"
|
|
60
60
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { XyoAccount } from '@xyo-network/account'
|
|
2
1
|
import { XyoModuleConfig } from '@xyo-network/module'
|
|
3
2
|
import { XyoPayload } from '@xyo-network/payload'
|
|
4
3
|
|
|
@@ -17,7 +16,6 @@ export type XyoArchivistConfig<
|
|
|
17
16
|
{
|
|
18
17
|
/** @field address of one or more parent archivists to read from */
|
|
19
18
|
parents?: XyoArchivistParents
|
|
20
|
-
account?: XyoAccount
|
|
21
19
|
cacheParentReads?: boolean
|
|
22
20
|
/** @field address of archivist to write through to */
|
|
23
21
|
writeThrough?: string
|
|
@@ -15,10 +15,7 @@ export type XyoMemoryArchivistConfig = XyoArchivistConfig<{
|
|
|
15
15
|
max?: number
|
|
16
16
|
}>
|
|
17
17
|
|
|
18
|
-
export class XyoMemoryArchivist<
|
|
19
|
-
Q extends XyoArchivistQueryPayload = XyoArchivistQueryPayload,
|
|
20
|
-
C extends XyoMemoryArchivistConfig = XyoMemoryArchivistConfig,
|
|
21
|
-
> extends XyoAbstractArchivist<Q, C> {
|
|
18
|
+
export class XyoMemoryArchivist extends XyoAbstractArchivist<XyoArchivistQueryPayload, XyoMemoryArchivistConfig> {
|
|
22
19
|
query<Q>(_query: Q): Promisable<[XyoBoundWitness, XyoPayload<{ schema: string }>[]]> {
|
|
23
20
|
throw new Error('Method not implemented.')
|
|
24
21
|
}
|
|
@@ -28,7 +25,7 @@ export class XyoMemoryArchivist<
|
|
|
28
25
|
|
|
29
26
|
private cache: LruCache<string, XyoPayload>
|
|
30
27
|
|
|
31
|
-
constructor(config:
|
|
28
|
+
constructor(config: XyoMemoryArchivistConfig) {
|
|
32
29
|
super(config)
|
|
33
30
|
this.cache = new LruCache<string, XyoPayload>({ max: this.max })
|
|
34
31
|
}
|
|
@@ -86,15 +83,15 @@ export class XyoMemoryArchivist<
|
|
|
86
83
|
return this.cache.dump().map((value) => value[1].value)
|
|
87
84
|
}
|
|
88
85
|
|
|
89
|
-
public async commit() {
|
|
86
|
+
public async commit(): Promise<XyoPayload[]> {
|
|
90
87
|
const account = assertEx(this.account, 'Account is required for commit')
|
|
91
88
|
const payloads = assertEx(await this.all(), 'Nothing to commit')
|
|
92
89
|
const builder = new XyoBoundWitnessBuilder<XyoBoundWitness, XyoPayload>()
|
|
93
90
|
const block = builder.payloads(payloads).witness(account).build()
|
|
94
|
-
|
|
91
|
+
await Promise.allSettled(
|
|
95
92
|
compact(Object.values(this.parents?.commit ?? [])?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))),
|
|
96
93
|
)
|
|
97
94
|
await this.clear()
|
|
98
|
-
return
|
|
95
|
+
return payloads
|
|
99
96
|
}
|
|
100
97
|
}
|