@xyo-network/filesystem-archivist 2.72.8 → 2.73.0
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/{types/FilesystemArchivist.d.ts → index.d.mts} +11 -9
- package/dist/index.d.ts +39 -0
- package/dist/index.js +130 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +104 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +39 -26
- package/src/FilesystemArchivist.ts +1 -1
- package/tsup.config.ts +16 -0
- package/dist/cjs/FilesystemArchivist.js +0 -96
- package/dist/cjs/FilesystemArchivist.js.map +0 -1
- package/dist/cjs/index.js +0 -5
- package/dist/cjs/index.js.map +0 -1
- package/dist/docs.json +0 -27782
- package/dist/esm/FilesystemArchivist.js +0 -80
- package/dist/esm/FilesystemArchivist.js.map +0 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +0 -1
- package/dist/types/FilesystemArchivist.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.d.ts.map +0 -1
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import { AbstractArchivist } from '@xyo-network/abstract
|
|
2
|
-
import { ArchivistConfig,
|
|
1
|
+
import { AbstractArchivist } from '@xyo-network/archivist-abstract';
|
|
2
|
+
import { ArchivistConfig, ArchivistParams, ArchivistInstance } from '@xyo-network/archivist-model';
|
|
3
3
|
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
4
4
|
import { AnyConfigSchema } from '@xyo-network/module';
|
|
5
5
|
import { Payload } from '@xyo-network/payload-model';
|
|
6
6
|
import { PromisableArray } from '@xyo-network/promise';
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
interface FileSystemArchivistData {
|
|
8
9
|
payloads: Payload[];
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
type FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config';
|
|
12
|
+
declare const FilesystemArchivistConfigSchema: FilesystemArchivistConfigSchema;
|
|
13
|
+
type FilesystemArchivistConfig = ArchivistConfig<{
|
|
13
14
|
filePath?: string;
|
|
14
15
|
schema: FilesystemArchivistConfigSchema;
|
|
15
16
|
}>;
|
|
16
|
-
|
|
17
|
+
type FilesystemArchivistParams = ArchivistParams<AnyConfigSchema<FilesystemArchivistConfig>>;
|
|
17
18
|
/** @description Currently only a read-only archivist that loads payloads from filesystem
|
|
18
19
|
* but allows for future expansion to read/write
|
|
19
20
|
*/
|
|
20
|
-
|
|
21
|
+
declare class FilesystemArchivist<TParams extends FilesystemArchivistParams = FilesystemArchivistParams> extends AbstractArchivist<TParams> implements ArchivistInstance {
|
|
21
22
|
static configSchemas: "network.xyo.archivist.filesystem.config"[];
|
|
22
23
|
private _memoryArchivist?;
|
|
23
24
|
get filePath(): string;
|
|
@@ -34,4 +35,5 @@ export declare class FilesystemArchivist<TParams extends FilesystemArchivistPara
|
|
|
34
35
|
protected startHandler(): Promise<boolean>;
|
|
35
36
|
private rawJsonFromFile;
|
|
36
37
|
}
|
|
37
|
-
|
|
38
|
+
|
|
39
|
+
export { FileSystemArchivistData, FilesystemArchivist, FilesystemArchivistConfig, FilesystemArchivistConfigSchema, FilesystemArchivistParams };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { AbstractArchivist } from '@xyo-network/archivist-abstract';
|
|
2
|
+
import { ArchivistConfig, ArchivistParams, ArchivistInstance } from '@xyo-network/archivist-model';
|
|
3
|
+
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
4
|
+
import { AnyConfigSchema } from '@xyo-network/module';
|
|
5
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
6
|
+
import { PromisableArray } from '@xyo-network/promise';
|
|
7
|
+
|
|
8
|
+
interface FileSystemArchivistData {
|
|
9
|
+
payloads: Payload[];
|
|
10
|
+
}
|
|
11
|
+
type FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config';
|
|
12
|
+
declare const FilesystemArchivistConfigSchema: FilesystemArchivistConfigSchema;
|
|
13
|
+
type FilesystemArchivistConfig = ArchivistConfig<{
|
|
14
|
+
filePath?: string;
|
|
15
|
+
schema: FilesystemArchivistConfigSchema;
|
|
16
|
+
}>;
|
|
17
|
+
type FilesystemArchivistParams = ArchivistParams<AnyConfigSchema<FilesystemArchivistConfig>>;
|
|
18
|
+
/** @description Currently only a read-only archivist that loads payloads from filesystem
|
|
19
|
+
* but allows for future expansion to read/write
|
|
20
|
+
*/
|
|
21
|
+
declare class FilesystemArchivist<TParams extends FilesystemArchivistParams = FilesystemArchivistParams> extends AbstractArchivist<TParams> implements ArchivistInstance {
|
|
22
|
+
static configSchemas: "network.xyo.archivist.filesystem.config"[];
|
|
23
|
+
private _memoryArchivist?;
|
|
24
|
+
get filePath(): string;
|
|
25
|
+
get queries(): string[];
|
|
26
|
+
private get memoryArchivist();
|
|
27
|
+
private static dataFromRawJson;
|
|
28
|
+
private static payloadsFromRawPayloads;
|
|
29
|
+
protected allHandler(): PromisableArray<Payload>;
|
|
30
|
+
protected clearHandler(): void | Promise<void>;
|
|
31
|
+
protected commitHandler(): Promise<BoundWitness[]>;
|
|
32
|
+
protected deleteHandler(hashes: string[]): PromisableArray<string>;
|
|
33
|
+
protected getHandler(hashes: string[]): Promise<Payload[]>;
|
|
34
|
+
protected insertHandler(payloads: Payload[]): Promise<Payload[]>;
|
|
35
|
+
protected startHandler(): Promise<boolean>;
|
|
36
|
+
private rawJsonFromFile;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { FileSystemArchivistData, FilesystemArchivist, FilesystemArchivistConfig, FilesystemArchivistConfigSchema, FilesystemArchivistParams };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/index.ts
|
|
22
|
+
var src_exports = {};
|
|
23
|
+
__export(src_exports, {
|
|
24
|
+
FilesystemArchivist: () => FilesystemArchivist,
|
|
25
|
+
FilesystemArchivistConfigSchema: () => FilesystemArchivistConfigSchema
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(src_exports);
|
|
28
|
+
|
|
29
|
+
// src/FilesystemArchivist.ts
|
|
30
|
+
var import_promises = require("fs/promises");
|
|
31
|
+
var import_assert = require("@xylabs/assert");
|
|
32
|
+
var import_account = require("@xyo-network/account");
|
|
33
|
+
var import_archivist_abstract = require("@xyo-network/archivist-abstract");
|
|
34
|
+
var import_archivist_model = require("@xyo-network/archivist-model");
|
|
35
|
+
var import_error = require("@xyo-network/error");
|
|
36
|
+
var import_memory_archivist = require("@xyo-network/memory-archivist");
|
|
37
|
+
var import_module = require("@xyo-network/module");
|
|
38
|
+
var import_payload_wrapper = require("@xyo-network/payload-wrapper");
|
|
39
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
40
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
41
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
42
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
43
|
+
else
|
|
44
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
45
|
+
if (d = decorators[i])
|
|
46
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
47
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
48
|
+
}
|
|
49
|
+
__name(_ts_decorate, "_ts_decorate");
|
|
50
|
+
var FilesystemArchivistConfigSchema = "network.xyo.archivist.filesystem.config";
|
|
51
|
+
var FilesystemArchivist = class FilesystemArchivist2 extends import_archivist_abstract.AbstractArchivist {
|
|
52
|
+
static {
|
|
53
|
+
__name(this, "FilesystemArchivist");
|
|
54
|
+
}
|
|
55
|
+
static configSchemas = [
|
|
56
|
+
FilesystemArchivistConfigSchema
|
|
57
|
+
];
|
|
58
|
+
_memoryArchivist;
|
|
59
|
+
get filePath() {
|
|
60
|
+
return this.config?.filePath ?? "archivist.xyo.json";
|
|
61
|
+
}
|
|
62
|
+
get queries() {
|
|
63
|
+
return [
|
|
64
|
+
import_archivist_model.ArchivistAllQuerySchema,
|
|
65
|
+
import_archivist_model.ArchivistCommitQuerySchema,
|
|
66
|
+
...super.queries
|
|
67
|
+
];
|
|
68
|
+
}
|
|
69
|
+
get memoryArchivist() {
|
|
70
|
+
return (0, import_assert.assertEx)(this._memoryArchivist);
|
|
71
|
+
}
|
|
72
|
+
static dataFromRawJson(rawJson) {
|
|
73
|
+
const data = JSON.parse(rawJson);
|
|
74
|
+
(0, import_assert.assertEx)(typeof data === "object", "Archivist Data must be object");
|
|
75
|
+
(0, import_assert.assertEx)(Array.isArray(data.payloads), 'Archivist Data "payloads" field must be array of payloads');
|
|
76
|
+
data.payloads = this.payloadsFromRawPayloads(data.payloads);
|
|
77
|
+
return data;
|
|
78
|
+
}
|
|
79
|
+
static payloadsFromRawPayloads(rawPayloads) {
|
|
80
|
+
return rawPayloads.map((payload) => import_payload_wrapper.PayloadWrapper.wrap(payload).payload());
|
|
81
|
+
}
|
|
82
|
+
allHandler() {
|
|
83
|
+
return this.memoryArchivist.all();
|
|
84
|
+
}
|
|
85
|
+
clearHandler() {
|
|
86
|
+
return this.memoryArchivist.clear();
|
|
87
|
+
}
|
|
88
|
+
async commitHandler() {
|
|
89
|
+
return await this.memoryArchivist.commit();
|
|
90
|
+
}
|
|
91
|
+
deleteHandler(hashes) {
|
|
92
|
+
return this.memoryArchivist.delete(hashes);
|
|
93
|
+
}
|
|
94
|
+
async getHandler(hashes) {
|
|
95
|
+
return await this.memoryArchivist.get(hashes);
|
|
96
|
+
}
|
|
97
|
+
async insertHandler(payloads) {
|
|
98
|
+
return await this.memoryArchivist.insert(payloads);
|
|
99
|
+
}
|
|
100
|
+
async startHandler() {
|
|
101
|
+
await super.startHandler();
|
|
102
|
+
this._memoryArchivist = await import_memory_archivist.MemoryArchivist.create({
|
|
103
|
+
account: await import_account.HDWallet.random()
|
|
104
|
+
});
|
|
105
|
+
try {
|
|
106
|
+
const data = FilesystemArchivist2.dataFromRawJson(await this.rawJsonFromFile());
|
|
107
|
+
await this._memoryArchivist.insert(data.payloads);
|
|
108
|
+
} catch (ex) {
|
|
109
|
+
(0, import_error.handleError)(ex, (error) => {
|
|
110
|
+
this.logger?.error(error.message);
|
|
111
|
+
});
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
return true;
|
|
115
|
+
}
|
|
116
|
+
async rawJsonFromFile() {
|
|
117
|
+
return await (0, import_promises.readFile)(this.filePath, {
|
|
118
|
+
encoding: "utf8"
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
FilesystemArchivist = _ts_decorate([
|
|
123
|
+
(0, import_module.creatableModule)()
|
|
124
|
+
], FilesystemArchivist);
|
|
125
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
126
|
+
0 && (module.exports = {
|
|
127
|
+
FilesystemArchivist,
|
|
128
|
+
FilesystemArchivistConfigSchema
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/FilesystemArchivist.ts"],"sourcesContent":["export * from './FilesystemArchivist'\n","import { readFile } from 'node:fs/promises'\n\nimport { assertEx } from '@xylabs/assert'\nimport { HDWallet } from '@xyo-network/account'\nimport { AbstractArchivist } from '@xyo-network/archivist-abstract'\nimport {\n ArchivistAllQuerySchema,\n ArchivistCommitQuerySchema,\n ArchivistConfig,\n ArchivistInstance,\n ArchivistParams,\n} from '@xyo-network/archivist-model'\nimport { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { handleError } from '@xyo-network/error'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { AnyConfigSchema, creatableModule } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { PromisableArray } from '@xyo-network/promise'\n\nexport interface FileSystemArchivistData {\n payloads: Payload[]\n}\n\nexport type FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config'\nexport const FilesystemArchivistConfigSchema: FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config'\n\nexport type FilesystemArchivistConfig = ArchivistConfig<{\n filePath?: string\n schema: FilesystemArchivistConfigSchema\n}>\n\nexport type FilesystemArchivistParams = ArchivistParams<AnyConfigSchema<FilesystemArchivistConfig>>\n\n/** @description Currently only a read-only archivist that loads payloads from filesystem\n * but allows for future expansion to read/write\n */\n@creatableModule()\nexport class FilesystemArchivist<TParams extends FilesystemArchivistParams = FilesystemArchivistParams>\n extends AbstractArchivist<TParams>\n implements ArchivistInstance\n{\n static override configSchemas = [FilesystemArchivistConfigSchema]\n\n private _memoryArchivist?: MemoryArchivist\n\n get filePath() {\n return this.config?.filePath ?? 'archivist.xyo.json'\n }\n\n override get queries() {\n return [ArchivistAllQuerySchema, ArchivistCommitQuerySchema, ...super.queries]\n }\n\n private get memoryArchivist() {\n return assertEx(this._memoryArchivist)\n }\n\n private static dataFromRawJson(rawJson: string) {\n const data: FileSystemArchivistData = JSON.parse(rawJson)\n assertEx(typeof data === 'object', 'Archivist Data must be object')\n assertEx(Array.isArray(data.payloads), 'Archivist Data \"payloads\" field must be array of payloads')\n data.payloads = this.payloadsFromRawPayloads(data.payloads)\n return data\n }\n\n private static payloadsFromRawPayloads(rawPayloads: Payload[]) {\n //validation should be done in here. I don't believe parse does much validation yet.\n return rawPayloads.map((payload) => PayloadWrapper.wrap(payload).payload())\n }\n\n protected override allHandler(): PromisableArray<Payload> {\n return this.memoryArchivist.all()\n }\n\n protected override clearHandler(): void | Promise<void> {\n return this.memoryArchivist.clear()\n }\n\n protected override async commitHandler(): Promise<BoundWitness[]> {\n return await this.memoryArchivist.commit()\n }\n\n protected override deleteHandler(hashes: string[]): PromisableArray<string> {\n return this.memoryArchivist.delete(hashes)\n }\n\n protected override async getHandler(hashes: string[]): Promise<Payload[]> {\n return await this.memoryArchivist.get(hashes)\n }\n\n protected override async insertHandler(payloads: Payload[]): Promise<Payload[]> {\n return await this.memoryArchivist.insert(payloads)\n }\n\n protected override async startHandler() {\n await super.startHandler()\n this._memoryArchivist = await MemoryArchivist.create({ account: await HDWallet.random() })\n try {\n const data = FilesystemArchivist.dataFromRawJson(await this.rawJsonFromFile())\n await this._memoryArchivist.insert(data.payloads)\n } catch (ex) {\n handleError(ex, (error) => {\n this.logger?.error(error.message)\n })\n return false\n }\n return true\n }\n\n private async rawJsonFromFile() {\n return await readFile(this.filePath, { encoding: 'utf8' })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;ACAA,sBAAyB;AAEzB,oBAAyB;AACzB,qBAAyB;AACzB,gCAAkC;AAClC,6BAMO;AAEP,mBAA4B;AAC5B,8BAAgC;AAChC,oBAAiD;AAEjD,6BAA+B;;;;;;;;;;;;AAQxB,IAAMA,kCAAmE;AAahF,IAAaC,sBAAN,MAAAA,6BACGC,4CAAAA;SAAAA;;;EAGR,OAAgBC,gBAAgB;IAACH;;EAEzBI;EAER,IAAIC,WAAW;AACb,WAAO,KAAKC,QAAQD,YAAY;EAClC;EAEA,IAAaE,UAAU;AACrB,WAAO;MAACC;MAAyBC;SAA+B,MAAMF;;EACxE;EAEA,IAAYG,kBAAkB;AAC5B,eAAOC,wBAAS,KAAKP,gBAAgB;EACvC;EAEA,OAAeQ,gBAAgBC,SAAiB;AAC9C,UAAMC,OAAgCC,KAAKC,MAAMH,OAAAA;AACjDF,gCAAS,OAAOG,SAAS,UAAU,+BAAA;AACnCH,gCAASM,MAAMC,QAAQJ,KAAKK,QAAQ,GAAG,2DAAA;AACvCL,SAAKK,WAAW,KAAKC,wBAAwBN,KAAKK,QAAQ;AAC1D,WAAOL;EACT;EAEA,OAAeM,wBAAwBC,aAAwB;AAE7D,WAAOA,YAAYC,IAAI,CAACC,YAAYC,sCAAeC,KAAKF,OAAAA,EAASA,QAAO,CAAA;EAC1E;EAEmBG,aAAuC;AACxD,WAAO,KAAKhB,gBAAgBiB,IAAG;EACjC;EAEmBC,eAAqC;AACtD,WAAO,KAAKlB,gBAAgBmB,MAAK;EACnC;EAEA,MAAyBC,gBAAyC;AAChE,WAAO,MAAM,KAAKpB,gBAAgBqB,OAAM;EAC1C;EAEmBC,cAAcC,QAA2C;AAC1E,WAAO,KAAKvB,gBAAgBwB,OAAOD,MAAAA;EACrC;EAEA,MAAyBE,WAAWF,QAAsC;AACxE,WAAO,MAAM,KAAKvB,gBAAgB0B,IAAIH,MAAAA;EACxC;EAEA,MAAyBI,cAAclB,UAAyC;AAC9E,WAAO,MAAM,KAAKT,gBAAgB4B,OAAOnB,QAAAA;EAC3C;EAEA,MAAyBoB,eAAe;AACtC,UAAM,MAAMA,aAAAA;AACZ,SAAKnC,mBAAmB,MAAMoC,wCAAgBC,OAAO;MAAEC,SAAS,MAAMC,wBAASC,OAAM;IAAG,CAAA;AACxF,QAAI;AACF,YAAM9B,OAAOb,qBAAoBW,gBAAgB,MAAM,KAAKiC,gBAAe,CAAA;AAC3E,YAAM,KAAKzC,iBAAiBkC,OAAOxB,KAAKK,QAAQ;IAClD,SAAS2B,IAAI;AACXC,oCAAYD,IAAI,CAACE,UAAAA;AACf,aAAKC,QAAQD,MAAMA,MAAME,OAAO;MAClC,CAAA;AACA,aAAO;IACT;AACA,WAAO;EACT;EAEA,MAAcL,kBAAkB;AAC9B,WAAO,UAAMM,0BAAS,KAAK9C,UAAU;MAAE+C,UAAU;IAAO,CAAA;EAC1D;AACF;AA3EanD,sBAAAA,aAAAA;MADZoD,+BAAAA;GACYpD,mBAAAA;","names":["FilesystemArchivistConfigSchema","FilesystemArchivist","AbstractArchivist","configSchemas","_memoryArchivist","filePath","config","queries","ArchivistAllQuerySchema","ArchivistCommitQuerySchema","memoryArchivist","assertEx","dataFromRawJson","rawJson","data","JSON","parse","Array","isArray","payloads","payloadsFromRawPayloads","rawPayloads","map","payload","PayloadWrapper","wrap","allHandler","all","clearHandler","clear","commitHandler","commit","deleteHandler","hashes","delete","getHandler","get","insertHandler","insert","startHandler","MemoryArchivist","create","account","HDWallet","random","rawJsonFromFile","ex","handleError","error","logger","message","readFile","encoding","creatableModule"]}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/FilesystemArchivist.ts
|
|
5
|
+
import { readFile } from "node:fs/promises";
|
|
6
|
+
import { assertEx } from "@xylabs/assert";
|
|
7
|
+
import { HDWallet } from "@xyo-network/account";
|
|
8
|
+
import { AbstractArchivist } from "@xyo-network/archivist-abstract";
|
|
9
|
+
import { ArchivistAllQuerySchema, ArchivistCommitQuerySchema } from "@xyo-network/archivist-model";
|
|
10
|
+
import { handleError } from "@xyo-network/error";
|
|
11
|
+
import { MemoryArchivist } from "@xyo-network/memory-archivist";
|
|
12
|
+
import { creatableModule } from "@xyo-network/module";
|
|
13
|
+
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
14
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
15
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
16
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
17
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
18
|
+
else
|
|
19
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
20
|
+
if (d = decorators[i])
|
|
21
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
+
}
|
|
24
|
+
__name(_ts_decorate, "_ts_decorate");
|
|
25
|
+
var FilesystemArchivistConfigSchema = "network.xyo.archivist.filesystem.config";
|
|
26
|
+
var FilesystemArchivist = class FilesystemArchivist2 extends AbstractArchivist {
|
|
27
|
+
static {
|
|
28
|
+
__name(this, "FilesystemArchivist");
|
|
29
|
+
}
|
|
30
|
+
static configSchemas = [
|
|
31
|
+
FilesystemArchivistConfigSchema
|
|
32
|
+
];
|
|
33
|
+
_memoryArchivist;
|
|
34
|
+
get filePath() {
|
|
35
|
+
return this.config?.filePath ?? "archivist.xyo.json";
|
|
36
|
+
}
|
|
37
|
+
get queries() {
|
|
38
|
+
return [
|
|
39
|
+
ArchivistAllQuerySchema,
|
|
40
|
+
ArchivistCommitQuerySchema,
|
|
41
|
+
...super.queries
|
|
42
|
+
];
|
|
43
|
+
}
|
|
44
|
+
get memoryArchivist() {
|
|
45
|
+
return assertEx(this._memoryArchivist);
|
|
46
|
+
}
|
|
47
|
+
static dataFromRawJson(rawJson) {
|
|
48
|
+
const data = JSON.parse(rawJson);
|
|
49
|
+
assertEx(typeof data === "object", "Archivist Data must be object");
|
|
50
|
+
assertEx(Array.isArray(data.payloads), 'Archivist Data "payloads" field must be array of payloads');
|
|
51
|
+
data.payloads = this.payloadsFromRawPayloads(data.payloads);
|
|
52
|
+
return data;
|
|
53
|
+
}
|
|
54
|
+
static payloadsFromRawPayloads(rawPayloads) {
|
|
55
|
+
return rawPayloads.map((payload) => PayloadWrapper.wrap(payload).payload());
|
|
56
|
+
}
|
|
57
|
+
allHandler() {
|
|
58
|
+
return this.memoryArchivist.all();
|
|
59
|
+
}
|
|
60
|
+
clearHandler() {
|
|
61
|
+
return this.memoryArchivist.clear();
|
|
62
|
+
}
|
|
63
|
+
async commitHandler() {
|
|
64
|
+
return await this.memoryArchivist.commit();
|
|
65
|
+
}
|
|
66
|
+
deleteHandler(hashes) {
|
|
67
|
+
return this.memoryArchivist.delete(hashes);
|
|
68
|
+
}
|
|
69
|
+
async getHandler(hashes) {
|
|
70
|
+
return await this.memoryArchivist.get(hashes);
|
|
71
|
+
}
|
|
72
|
+
async insertHandler(payloads) {
|
|
73
|
+
return await this.memoryArchivist.insert(payloads);
|
|
74
|
+
}
|
|
75
|
+
async startHandler() {
|
|
76
|
+
await super.startHandler();
|
|
77
|
+
this._memoryArchivist = await MemoryArchivist.create({
|
|
78
|
+
account: await HDWallet.random()
|
|
79
|
+
});
|
|
80
|
+
try {
|
|
81
|
+
const data = FilesystemArchivist2.dataFromRawJson(await this.rawJsonFromFile());
|
|
82
|
+
await this._memoryArchivist.insert(data.payloads);
|
|
83
|
+
} catch (ex) {
|
|
84
|
+
handleError(ex, (error) => {
|
|
85
|
+
this.logger?.error(error.message);
|
|
86
|
+
});
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
return true;
|
|
90
|
+
}
|
|
91
|
+
async rawJsonFromFile() {
|
|
92
|
+
return await readFile(this.filePath, {
|
|
93
|
+
encoding: "utf8"
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
FilesystemArchivist = _ts_decorate([
|
|
98
|
+
creatableModule()
|
|
99
|
+
], FilesystemArchivist);
|
|
100
|
+
export {
|
|
101
|
+
FilesystemArchivist,
|
|
102
|
+
FilesystemArchivistConfigSchema
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/FilesystemArchivist.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\n\nimport { assertEx } from '@xylabs/assert'\nimport { HDWallet } from '@xyo-network/account'\nimport { AbstractArchivist } from '@xyo-network/archivist-abstract'\nimport {\n ArchivistAllQuerySchema,\n ArchivistCommitQuerySchema,\n ArchivistConfig,\n ArchivistInstance,\n ArchivistParams,\n} from '@xyo-network/archivist-model'\nimport { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { handleError } from '@xyo-network/error'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { AnyConfigSchema, creatableModule } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { PromisableArray } from '@xyo-network/promise'\n\nexport interface FileSystemArchivistData {\n payloads: Payload[]\n}\n\nexport type FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config'\nexport const FilesystemArchivistConfigSchema: FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config'\n\nexport type FilesystemArchivistConfig = ArchivistConfig<{\n filePath?: string\n schema: FilesystemArchivistConfigSchema\n}>\n\nexport type FilesystemArchivistParams = ArchivistParams<AnyConfigSchema<FilesystemArchivistConfig>>\n\n/** @description Currently only a read-only archivist that loads payloads from filesystem\n * but allows for future expansion to read/write\n */\n@creatableModule()\nexport class FilesystemArchivist<TParams extends FilesystemArchivistParams = FilesystemArchivistParams>\n extends AbstractArchivist<TParams>\n implements ArchivistInstance\n{\n static override configSchemas = [FilesystemArchivistConfigSchema]\n\n private _memoryArchivist?: MemoryArchivist\n\n get filePath() {\n return this.config?.filePath ?? 'archivist.xyo.json'\n }\n\n override get queries() {\n return [ArchivistAllQuerySchema, ArchivistCommitQuerySchema, ...super.queries]\n }\n\n private get memoryArchivist() {\n return assertEx(this._memoryArchivist)\n }\n\n private static dataFromRawJson(rawJson: string) {\n const data: FileSystemArchivistData = JSON.parse(rawJson)\n assertEx(typeof data === 'object', 'Archivist Data must be object')\n assertEx(Array.isArray(data.payloads), 'Archivist Data \"payloads\" field must be array of payloads')\n data.payloads = this.payloadsFromRawPayloads(data.payloads)\n return data\n }\n\n private static payloadsFromRawPayloads(rawPayloads: Payload[]) {\n //validation should be done in here. I don't believe parse does much validation yet.\n return rawPayloads.map((payload) => PayloadWrapper.wrap(payload).payload())\n }\n\n protected override allHandler(): PromisableArray<Payload> {\n return this.memoryArchivist.all()\n }\n\n protected override clearHandler(): void | Promise<void> {\n return this.memoryArchivist.clear()\n }\n\n protected override async commitHandler(): Promise<BoundWitness[]> {\n return await this.memoryArchivist.commit()\n }\n\n protected override deleteHandler(hashes: string[]): PromisableArray<string> {\n return this.memoryArchivist.delete(hashes)\n }\n\n protected override async getHandler(hashes: string[]): Promise<Payload[]> {\n return await this.memoryArchivist.get(hashes)\n }\n\n protected override async insertHandler(payloads: Payload[]): Promise<Payload[]> {\n return await this.memoryArchivist.insert(payloads)\n }\n\n protected override async startHandler() {\n await super.startHandler()\n this._memoryArchivist = await MemoryArchivist.create({ account: await HDWallet.random() })\n try {\n const data = FilesystemArchivist.dataFromRawJson(await this.rawJsonFromFile())\n await this._memoryArchivist.insert(data.payloads)\n } catch (ex) {\n handleError(ex, (error) => {\n this.logger?.error(error.message)\n })\n return false\n }\n return true\n }\n\n private async rawJsonFromFile() {\n return await readFile(this.filePath, { encoding: 'utf8' })\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AAEzB,SAASC,gBAAgB;AACzB,SAASC,gBAAgB;AACzB,SAASC,yBAAyB;AAClC,SACEC,yBACAC,kCAIK;AAEP,SAASC,mBAAmB;AAC5B,SAASC,uBAAuB;AAChC,SAA0BC,uBAAuB;AAEjD,SAASC,sBAAsB;;;;;;;;;;;;AAQxB,IAAMC,kCAAmE;AAahF,IAAaC,sBAAN,MAAAA,6BACGC,kBAAAA;SAAAA;;;EAGR,OAAgBC,gBAAgB;IAACH;;EAEzBI;EAER,IAAIC,WAAW;AACb,WAAO,KAAKC,QAAQD,YAAY;EAClC;EAEA,IAAaE,UAAU;AACrB,WAAO;MAACC;MAAyBC;SAA+B,MAAMF;;EACxE;EAEA,IAAYG,kBAAkB;AAC5B,WAAOC,SAAS,KAAKP,gBAAgB;EACvC;EAEA,OAAeQ,gBAAgBC,SAAiB;AAC9C,UAAMC,OAAgCC,KAAKC,MAAMH,OAAAA;AACjDF,aAAS,OAAOG,SAAS,UAAU,+BAAA;AACnCH,aAASM,MAAMC,QAAQJ,KAAKK,QAAQ,GAAG,2DAAA;AACvCL,SAAKK,WAAW,KAAKC,wBAAwBN,KAAKK,QAAQ;AAC1D,WAAOL;EACT;EAEA,OAAeM,wBAAwBC,aAAwB;AAE7D,WAAOA,YAAYC,IAAI,CAACC,YAAYC,eAAeC,KAAKF,OAAAA,EAASA,QAAO,CAAA;EAC1E;EAEmBG,aAAuC;AACxD,WAAO,KAAKhB,gBAAgBiB,IAAG;EACjC;EAEmBC,eAAqC;AACtD,WAAO,KAAKlB,gBAAgBmB,MAAK;EACnC;EAEA,MAAyBC,gBAAyC;AAChE,WAAO,MAAM,KAAKpB,gBAAgBqB,OAAM;EAC1C;EAEmBC,cAAcC,QAA2C;AAC1E,WAAO,KAAKvB,gBAAgBwB,OAAOD,MAAAA;EACrC;EAEA,MAAyBE,WAAWF,QAAsC;AACxE,WAAO,MAAM,KAAKvB,gBAAgB0B,IAAIH,MAAAA;EACxC;EAEA,MAAyBI,cAAclB,UAAyC;AAC9E,WAAO,MAAM,KAAKT,gBAAgB4B,OAAOnB,QAAAA;EAC3C;EAEA,MAAyBoB,eAAe;AACtC,UAAM,MAAMA,aAAAA;AACZ,SAAKnC,mBAAmB,MAAMoC,gBAAgBC,OAAO;MAAEC,SAAS,MAAMC,SAASC,OAAM;IAAG,CAAA;AACxF,QAAI;AACF,YAAM9B,OAAOb,qBAAoBW,gBAAgB,MAAM,KAAKiC,gBAAe,CAAA;AAC3E,YAAM,KAAKzC,iBAAiBkC,OAAOxB,KAAKK,QAAQ;IAClD,SAAS2B,IAAI;AACXC,kBAAYD,IAAI,CAACE,UAAAA;AACf,aAAKC,QAAQD,MAAMA,MAAME,OAAO;MAClC,CAAA;AACA,aAAO;IACT;AACA,WAAO;EACT;EAEA,MAAcL,kBAAkB;AAC9B,WAAO,MAAMM,SAAS,KAAK9C,UAAU;MAAE+C,UAAU;IAAO,CAAA;EAC1D;AACF;AA3EanD,sBAAAA,aAAAA;EADZoD,gBAAAA;GACYpD,mBAAAA;","names":["readFile","assertEx","HDWallet","AbstractArchivist","ArchivistAllQuerySchema","ArchivistCommitQuerySchema","handleError","MemoryArchivist","creatableModule","PayloadWrapper","FilesystemArchivistConfigSchema","FilesystemArchivist","AbstractArchivist","configSchemas","_memoryArchivist","filePath","config","queries","ArchivistAllQuerySchema","ArchivistCommitQuerySchema","memoryArchivist","assertEx","dataFromRawJson","rawJson","data","JSON","parse","Array","isArray","payloads","payloadsFromRawPayloads","rawPayloads","map","payload","PayloadWrapper","wrap","allHandler","all","clearHandler","clear","commitHandler","commit","deleteHandler","hashes","delete","getHandler","get","insertHandler","insert","startHandler","MemoryArchivist","create","account","HDWallet","random","rawJsonFromFile","ex","handleError","error","logger","message","readFile","encoding","creatableModule"]}
|
package/package.json
CHANGED
|
@@ -10,45 +10,59 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xylabs/assert": "^2.
|
|
14
|
-
"@xyo-network/
|
|
15
|
-
"@xyo-network/
|
|
16
|
-
"@xyo-network/archivist-model": "~2.
|
|
17
|
-
"@xyo-network/boundwitness-model": "~2.
|
|
18
|
-
"@xyo-network/error": "~2.
|
|
19
|
-
"@xyo-network/memory-archivist": "~2.
|
|
20
|
-
"@xyo-network/module": "~2.
|
|
21
|
-
"@xyo-network/payload-model": "~2.
|
|
22
|
-
"@xyo-network/payload-wrapper": "~2.
|
|
23
|
-
"@xyo-network/promise": "~2.
|
|
13
|
+
"@xylabs/assert": "^2.10.7",
|
|
14
|
+
"@xyo-network/account": "~2.73.0",
|
|
15
|
+
"@xyo-network/archivist-abstract": "~2.73.0",
|
|
16
|
+
"@xyo-network/archivist-model": "~2.73.0",
|
|
17
|
+
"@xyo-network/boundwitness-model": "~2.73.0",
|
|
18
|
+
"@xyo-network/error": "~2.73.0",
|
|
19
|
+
"@xyo-network/memory-archivist": "~2.73.0",
|
|
20
|
+
"@xyo-network/module": "~2.73.0",
|
|
21
|
+
"@xyo-network/payload-model": "~2.73.0",
|
|
22
|
+
"@xyo-network/payload-wrapper": "~2.73.0",
|
|
23
|
+
"@xyo-network/promise": "~2.73.0"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@xylabs/ts-scripts-yarn3": "^2.19.
|
|
27
|
-
"@xylabs/tsconfig": "^2.19.
|
|
26
|
+
"@xylabs/ts-scripts-yarn3": "^2.19.5",
|
|
27
|
+
"@xylabs/tsconfig": "^2.19.5",
|
|
28
|
+
"publint": "^0.2.2",
|
|
29
|
+
"tsup": "^7.2.0",
|
|
28
30
|
"typescript": "^5.2.2"
|
|
29
31
|
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"package-compile": "tsup && publint",
|
|
34
|
+
"package-recompile": "tsup && publint"
|
|
35
|
+
},
|
|
30
36
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
31
|
-
"browser": "dist/esm/index.js",
|
|
32
37
|
"docs": "dist/docs.json",
|
|
38
|
+
"types": "dist/index.d.ts",
|
|
33
39
|
"exports": {
|
|
34
40
|
".": {
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
},
|
|
39
|
-
"browser": {
|
|
40
|
-
"import": "./dist/esm/index.js",
|
|
41
|
-
"require": "./dist/cjs/index.js"
|
|
41
|
+
"require": {
|
|
42
|
+
"types": "./dist/index.d.ts",
|
|
43
|
+
"default": "./dist/index.js"
|
|
42
44
|
},
|
|
43
|
-
"
|
|
45
|
+
"import": {
|
|
46
|
+
"types": "./dist/index.d.mts",
|
|
47
|
+
"default": "./dist/index.mjs"
|
|
48
|
+
}
|
|
44
49
|
},
|
|
45
50
|
"./dist/docs.json": {
|
|
46
51
|
"default": "./dist/docs.json"
|
|
47
52
|
},
|
|
53
|
+
"./cjs": {
|
|
54
|
+
"default": "./dist/index.js"
|
|
55
|
+
},
|
|
56
|
+
"./docs": {
|
|
57
|
+
"default": "./dist/docs.json"
|
|
58
|
+
},
|
|
59
|
+
"./esm": {
|
|
60
|
+
"default": "./dist/index.mjs"
|
|
61
|
+
},
|
|
48
62
|
"./package.json": "./package.json"
|
|
49
63
|
},
|
|
50
|
-
"main": "dist/
|
|
51
|
-
"module": "dist/
|
|
64
|
+
"main": "dist/index.js",
|
|
65
|
+
"module": "dist/index.mjs",
|
|
52
66
|
"homepage": "https://xyo.network",
|
|
53
67
|
"license": "LGPL-3.0",
|
|
54
68
|
"publishConfig": {
|
|
@@ -59,6 +73,5 @@
|
|
|
59
73
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
60
74
|
},
|
|
61
75
|
"sideEffects": false,
|
|
62
|
-
"
|
|
63
|
-
"version": "2.72.8"
|
|
76
|
+
"version": "2.73.0"
|
|
64
77
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { readFile } from 'node:fs/promises'
|
|
2
2
|
|
|
3
3
|
import { assertEx } from '@xylabs/assert'
|
|
4
|
-
import { AbstractArchivist } from '@xyo-network/abstract-archivist'
|
|
5
4
|
import { HDWallet } from '@xyo-network/account'
|
|
5
|
+
import { AbstractArchivist } from '@xyo-network/archivist-abstract'
|
|
6
6
|
import {
|
|
7
7
|
ArchivistAllQuerySchema,
|
|
8
8
|
ArchivistCommitQuerySchema,
|
package/tsup.config.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from 'tsup'
|
|
2
|
+
|
|
3
|
+
// eslint-disable-next-line import/no-default-export
|
|
4
|
+
export default defineConfig({
|
|
5
|
+
bundle: true,
|
|
6
|
+
cjsInterop: true,
|
|
7
|
+
clean: true,
|
|
8
|
+
dts: {
|
|
9
|
+
entry: ['src/index.ts'],
|
|
10
|
+
},
|
|
11
|
+
entry: ['src/index.ts'],
|
|
12
|
+
format: ['cjs', 'esm'],
|
|
13
|
+
sourcemap: true,
|
|
14
|
+
splitting: false,
|
|
15
|
+
tsconfig: 'tsconfig.json',
|
|
16
|
+
})
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var FilesystemArchivist_1;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.FilesystemArchivist = exports.FilesystemArchivistConfigSchema = void 0;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const promises_1 = require("node:fs/promises");
|
|
7
|
-
const assert_1 = require("@xylabs/assert");
|
|
8
|
-
const abstract_archivist_1 = require("@xyo-network/abstract-archivist");
|
|
9
|
-
const account_1 = require("@xyo-network/account");
|
|
10
|
-
const archivist_model_1 = require("@xyo-network/archivist-model");
|
|
11
|
-
const error_1 = require("@xyo-network/error");
|
|
12
|
-
const memory_archivist_1 = require("@xyo-network/memory-archivist");
|
|
13
|
-
const module_1 = require("@xyo-network/module");
|
|
14
|
-
const payload_wrapper_1 = require("@xyo-network/payload-wrapper");
|
|
15
|
-
exports.FilesystemArchivistConfigSchema = 'network.xyo.archivist.filesystem.config';
|
|
16
|
-
/** @description Currently only a read-only archivist that loads payloads from filesystem
|
|
17
|
-
* but allows for future expansion to read/write
|
|
18
|
-
*/
|
|
19
|
-
let FilesystemArchivist = exports.FilesystemArchivist = FilesystemArchivist_1 = class FilesystemArchivist extends abstract_archivist_1.AbstractArchivist {
|
|
20
|
-
get filePath() {
|
|
21
|
-
var _a, _b;
|
|
22
|
-
return (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.filePath) !== null && _b !== void 0 ? _b : 'archivist.xyo.json';
|
|
23
|
-
}
|
|
24
|
-
get queries() {
|
|
25
|
-
return [archivist_model_1.ArchivistAllQuerySchema, archivist_model_1.ArchivistCommitQuerySchema, ...super.queries];
|
|
26
|
-
}
|
|
27
|
-
get memoryArchivist() {
|
|
28
|
-
return (0, assert_1.assertEx)(this._memoryArchivist);
|
|
29
|
-
}
|
|
30
|
-
static dataFromRawJson(rawJson) {
|
|
31
|
-
const data = JSON.parse(rawJson);
|
|
32
|
-
(0, assert_1.assertEx)(typeof data === 'object', 'Archivist Data must be object');
|
|
33
|
-
(0, assert_1.assertEx)(Array.isArray(data.payloads), 'Archivist Data "payloads" field must be array of payloads');
|
|
34
|
-
data.payloads = this.payloadsFromRawPayloads(data.payloads);
|
|
35
|
-
return data;
|
|
36
|
-
}
|
|
37
|
-
static payloadsFromRawPayloads(rawPayloads) {
|
|
38
|
-
//validation should be done in here. I don't believe parse does much validation yet.
|
|
39
|
-
return rawPayloads.map((payload) => payload_wrapper_1.PayloadWrapper.wrap(payload).payload());
|
|
40
|
-
}
|
|
41
|
-
allHandler() {
|
|
42
|
-
return this.memoryArchivist.all();
|
|
43
|
-
}
|
|
44
|
-
clearHandler() {
|
|
45
|
-
return this.memoryArchivist.clear();
|
|
46
|
-
}
|
|
47
|
-
commitHandler() {
|
|
48
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
return yield this.memoryArchivist.commit();
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
deleteHandler(hashes) {
|
|
53
|
-
return this.memoryArchivist.delete(hashes);
|
|
54
|
-
}
|
|
55
|
-
getHandler(hashes) {
|
|
56
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
return yield this.memoryArchivist.get(hashes);
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
insertHandler(payloads) {
|
|
61
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
return yield this.memoryArchivist.insert(payloads);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
startHandler() {
|
|
66
|
-
const _super = Object.create(null, {
|
|
67
|
-
startHandler: { get: () => super.startHandler }
|
|
68
|
-
});
|
|
69
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
70
|
-
yield _super.startHandler.call(this);
|
|
71
|
-
this._memoryArchivist = yield memory_archivist_1.MemoryArchivist.create({ account: yield account_1.HDWallet.random() });
|
|
72
|
-
try {
|
|
73
|
-
const data = FilesystemArchivist_1.dataFromRawJson(yield this.rawJsonFromFile());
|
|
74
|
-
yield this._memoryArchivist.insert(data.payloads);
|
|
75
|
-
}
|
|
76
|
-
catch (ex) {
|
|
77
|
-
(0, error_1.handleError)(ex, (error) => {
|
|
78
|
-
var _a;
|
|
79
|
-
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.error(error.message);
|
|
80
|
-
});
|
|
81
|
-
return false;
|
|
82
|
-
}
|
|
83
|
-
return true;
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
rawJsonFromFile() {
|
|
87
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
88
|
-
return yield (0, promises_1.readFile)(this.filePath, { encoding: 'utf8' });
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
FilesystemArchivist.configSchemas = [exports.FilesystemArchivistConfigSchema];
|
|
93
|
-
exports.FilesystemArchivist = FilesystemArchivist = FilesystemArchivist_1 = tslib_1.__decorate([
|
|
94
|
-
(0, module_1.creatableModule)()
|
|
95
|
-
], FilesystemArchivist);
|
|
96
|
-
//# sourceMappingURL=FilesystemArchivist.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilesystemArchivist.js","sourceRoot":"","sources":["../../src/FilesystemArchivist.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
DELETED
package/dist/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,gEAAqC"}
|