memfs 4.1.0-next.2 → 4.1.0-next.3
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/README.md +5 -4
- package/demo/runkit.js +5 -0
- package/lib/Dirent.js +1 -0
- package/lib/Dirent.js.map +1 -0
- package/lib/Stats.js +2 -2
- package/lib/Stats.js.map +1 -0
- package/lib/__tests__/util.js +1 -0
- package/lib/__tests__/util.js.map +1 -0
- package/lib/cas/types.js +1 -0
- package/lib/cas/types.js.map +1 -0
- package/lib/constants.js +1 -0
- package/lib/constants.js.map +1 -0
- package/lib/consts/AMODE.js +1 -0
- package/lib/consts/AMODE.js.map +1 -0
- package/lib/consts/FLAG.d.ts +6 -0
- package/lib/consts/FLAG.js +1 -0
- package/lib/consts/FLAG.js.map +1 -0
- package/lib/crud/__tests__/matryoshka.test.d.ts +1 -0
- package/lib/crud/__tests__/matryoshka.test.js +69 -0
- package/lib/crud/__tests__/matryoshka.test.js.map +1 -0
- package/lib/crud/__tests__/testCrudfs.d.ts +6 -0
- package/lib/crud/__tests__/testCrudfs.js +279 -0
- package/lib/crud/__tests__/testCrudfs.js.map +1 -0
- package/lib/crud/types.d.ts +7 -0
- package/lib/crud/types.js +1 -0
- package/lib/crud/types.js.map +1 -0
- package/lib/crud/util.d.ts +2 -0
- package/lib/crud/util.js +11 -0
- package/lib/crud/util.js.map +1 -0
- package/lib/crud-to-cas/CrudCas.js +10 -17
- package/lib/crud-to-cas/CrudCas.js.map +1 -0
- package/lib/crud-to-cas/__tests__/CrudCas.test.js +29 -116
- package/lib/crud-to-cas/__tests__/CrudCas.test.js.map +1 -0
- package/lib/crud-to-cas/__tests__/testCasfs.d.ts +9 -0
- package/lib/crud-to-cas/__tests__/testCasfs.js +109 -0
- package/lib/crud-to-cas/__tests__/testCasfs.js.map +1 -0
- package/lib/crud-to-cas/index.d.ts +1 -0
- package/lib/crud-to-cas/index.js +6 -0
- package/lib/crud-to-cas/index.js.map +1 -0
- package/lib/crud-to-cas/util.js +1 -0
- package/lib/crud-to-cas/util.js.map +1 -0
- package/lib/encoding.js +1 -0
- package/lib/encoding.js.map +1 -0
- package/lib/fsa/types.js +1 -0
- package/lib/fsa/types.js.map +1 -0
- package/lib/fsa-to-crud/FsaCrud.d.ts +1 -0
- package/lib/fsa-to-crud/FsaCrud.js +36 -54
- package/lib/fsa-to-crud/FsaCrud.js.map +1 -0
- package/lib/fsa-to-crud/__tests__/FsaCrud.test.js +3 -280
- package/lib/fsa-to-crud/__tests__/FsaCrud.test.js.map +1 -0
- package/lib/fsa-to-crud/index.d.ts +1 -0
- package/lib/fsa-to-crud/index.js +6 -0
- package/lib/fsa-to-crud/index.js.map +1 -0
- package/lib/fsa-to-crud/util.d.ts +5 -2
- package/lib/fsa-to-crud/util.js +10 -8
- package/lib/fsa-to-crud/util.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeCore.d.ts +3 -2
- package/lib/fsa-to-node/FsaNodeCore.js +61 -22
- package/lib/fsa-to-node/FsaNodeCore.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeDirent.js +1 -0
- package/lib/fsa-to-node/FsaNodeDirent.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeFs.d.ts +14 -2
- package/lib/fsa-to-node/FsaNodeFs.js +97 -82
- package/lib/fsa-to-node/FsaNodeFs.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeFsOpenFile.js +4 -11
- package/lib/fsa-to-node/FsaNodeFsOpenFile.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeReadStream.js +4 -11
- package/lib/fsa-to-node/FsaNodeReadStream.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeStats.js +1 -0
- package/lib/fsa-to-node/FsaNodeStats.js.map +1 -0
- package/lib/fsa-to-node/FsaNodeWriteStream.js +7 -14
- package/lib/fsa-to-node/FsaNodeWriteStream.js.map +1 -0
- package/lib/fsa-to-node/__tests__/FsaNodeFs.test.js +107 -93
- package/lib/fsa-to-node/__tests__/FsaNodeFs.test.js.map +1 -0
- package/lib/fsa-to-node/__tests__/util.test.js +4 -0
- package/lib/fsa-to-node/__tests__/util.test.js.map +1 -0
- package/lib/fsa-to-node/constants.js +1 -0
- package/lib/fsa-to-node/constants.js.map +1 -0
- package/lib/fsa-to-node/index.js +1 -0
- package/lib/fsa-to-node/index.js.map +1 -0
- package/lib/fsa-to-node/json.js +1 -0
- package/lib/fsa-to-node/json.js.map +1 -0
- package/lib/fsa-to-node/types.js +1 -0
- package/lib/fsa-to-node/types.js.map +1 -0
- package/lib/fsa-to-node/util.js +5 -10
- package/lib/fsa-to-node/util.js.map +1 -0
- package/lib/fsa-to-node/worker/FsaNodeSyncAdapterWorker.js +3 -10
- package/lib/fsa-to-node/worker/FsaNodeSyncAdapterWorker.js.map +1 -0
- package/lib/fsa-to-node/worker/FsaNodeSyncWorker.js +23 -30
- package/lib/fsa-to-node/worker/FsaNodeSyncWorker.js.map +1 -0
- package/lib/fsa-to-node/worker/SyncMessenger.js +3 -10
- package/lib/fsa-to-node/worker/SyncMessenger.js.map +1 -0
- package/lib/fsa-to-node/worker/constants.js +1 -0
- package/lib/fsa-to-node/worker/constants.js.map +1 -0
- package/lib/fsa-to-node/worker/types.js +1 -0
- package/lib/fsa-to-node/worker/types.js.map +1 -0
- package/lib/index.js +5 -3
- package/lib/index.js.map +1 -0
- package/lib/internal/buffer.js +1 -0
- package/lib/internal/buffer.js.map +1 -0
- package/lib/internal/errors.js +1 -0
- package/lib/internal/errors.js.map +1 -0
- package/lib/node/FileHandle.js +1 -0
- package/lib/node/FileHandle.js.map +1 -0
- package/lib/node/FsPromises.d.ts +86 -0
- package/lib/node/FsPromises.js +54 -0
- package/lib/node/FsPromises.js.map +1 -0
- package/lib/node/constants.js +2 -1
- package/lib/node/constants.js.map +1 -0
- package/lib/node/lists/fsCallbackApiList.d.ts +2 -0
- package/lib/node/lists/fsCallbackApiList.js +47 -0
- package/lib/node/lists/fsCallbackApiList.js.map +1 -0
- package/lib/node/lists/fsCommonObjectsList.d.ts +2 -0
- package/lib/node/lists/fsCommonObjectsList.js +19 -0
- package/lib/node/lists/fsCommonObjectsList.js.map +1 -0
- package/lib/node/lists/fsSynchronousApiList.d.ts +2 -0
- package/lib/node/lists/fsSynchronousApiList.js +46 -0
- package/lib/node/lists/fsSynchronousApiList.js.map +1 -0
- package/lib/node/options.js +1 -0
- package/lib/node/options.js.map +1 -0
- package/lib/node/types/{callback.d.ts → FsCallbackApi.d.ts} +49 -40
- package/lib/node/types/{callback.js → FsCallbackApi.js} +1 -0
- package/lib/node/types/FsCallbackApi.js.map +1 -0
- package/lib/node/types/FsCommonObjects.d.ts +4 -4
- package/lib/node/types/FsCommonObjects.js +1 -0
- package/lib/node/types/FsCommonObjects.js.map +1 -0
- package/lib/node/types/{promises.d.ts → FsPromisesApi.d.ts} +11 -0
- package/lib/node/types/{promises.js → FsPromisesApi.js} +1 -0
- package/lib/node/types/FsPromisesApi.js.map +1 -0
- package/lib/node/types/FsSynchronousApi.d.ts +64 -58
- package/lib/node/types/FsSynchronousApi.js +1 -0
- package/lib/node/types/FsSynchronousApi.js.map +1 -0
- package/lib/node/types/index.d.ts +2 -2
- package/lib/node/types/index.js +1 -0
- package/lib/node/types/index.js.map +1 -0
- package/lib/node/types/misc.d.ts +20 -0
- package/lib/node/types/misc.js +1 -0
- package/lib/node/types/misc.js.map +1 -0
- package/lib/node/types/options.d.ts +62 -0
- package/lib/node/types/options.js +1 -0
- package/lib/node/types/options.js.map +1 -0
- package/lib/node/util.d.ts +2 -1
- package/lib/node/util.js +30 -1
- package/lib/node/util.js.map +1 -0
- package/lib/node-to-crud/NodeCrud.d.ts +22 -0
- package/lib/node-to-crud/NodeCrud.js +235 -0
- package/lib/node-to-crud/NodeCrud.js.map +1 -0
- package/lib/node-to-crud/__tests__/FsaCrud.test.d.ts +1 -0
- package/lib/node-to-crud/__tests__/FsaCrud.test.js +18 -0
- package/lib/node-to-crud/__tests__/FsaCrud.test.js.map +1 -0
- package/lib/node-to-crud/index.d.ts +1 -0
- package/lib/node-to-crud/index.js +6 -0
- package/lib/node-to-crud/index.js.map +1 -0
- package/lib/node-to-fsa/NodeFileSystemDirectoryHandle.d.ts +3 -2
- package/lib/node-to-fsa/NodeFileSystemDirectoryHandle.js +24 -55
- package/lib/node-to-fsa/NodeFileSystemDirectoryHandle.js.map +1 -0
- package/lib/node-to-fsa/NodeFileSystemFileHandle.js +5 -12
- package/lib/node-to-fsa/NodeFileSystemFileHandle.js.map +1 -0
- package/lib/node-to-fsa/NodeFileSystemHandle.js +3 -10
- package/lib/node-to-fsa/NodeFileSystemHandle.js.map +1 -0
- package/lib/node-to-fsa/NodeFileSystemSyncAccessHandle.js +8 -15
- package/lib/node-to-fsa/NodeFileSystemSyncAccessHandle.js.map +1 -0
- package/lib/node-to-fsa/NodeFileSystemWritableFileStream.js +11 -18
- package/lib/node-to-fsa/NodeFileSystemWritableFileStream.js.map +1 -0
- package/lib/node-to-fsa/NodePermissionStatus.js +1 -0
- package/lib/node-to-fsa/NodePermissionStatus.js.map +1 -0
- package/lib/node-to-fsa/__tests__/NodeFileSystemDirectoryHandle.test.js +75 -134
- package/lib/node-to-fsa/__tests__/NodeFileSystemDirectoryHandle.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/NodeFileSystemFileHandle.test.js +16 -23
- package/lib/node-to-fsa/__tests__/NodeFileSystemFileHandle.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/NodeFileSystemHandle.test.js +5 -12
- package/lib/node-to-fsa/__tests__/NodeFileSystemHandle.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/NodeFileSystemSyncAccessHandle.test.js +15 -22
- package/lib/node-to-fsa/__tests__/NodeFileSystemSyncAccessHandle.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/NodeFileSystemWritableFileStream.test.js +8 -15
- package/lib/node-to-fsa/__tests__/NodeFileSystemWritableFileStream.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/scenarios.test.js +3 -10
- package/lib/node-to-fsa/__tests__/scenarios.test.js.map +1 -0
- package/lib/node-to-fsa/__tests__/util.test.js +5 -0
- package/lib/node-to-fsa/__tests__/util.test.js.map +1 -0
- package/lib/node-to-fsa/index.js +6 -18
- package/lib/node-to-fsa/index.js.map +1 -0
- package/lib/node-to-fsa/types.d.ts +5 -2
- package/lib/node-to-fsa/types.js +1 -0
- package/lib/node-to-fsa/types.js.map +1 -0
- package/lib/node-to-fsa/util.js +3 -0
- package/lib/node-to-fsa/util.js.map +1 -0
- package/lib/node.js +1 -0
- package/lib/node.js.map +1 -0
- package/lib/process.js +1 -0
- package/lib/process.js.map +1 -0
- package/lib/setImmediate.js +1 -0
- package/lib/setImmediate.js.map +1 -0
- package/lib/setTimeoutUnref.js +1 -0
- package/lib/setTimeoutUnref.js.map +1 -0
- package/lib/volume-localstorage.js +1 -0
- package/lib/volume-localstorage.js.map +1 -0
- package/lib/volume.d.ts +15 -7
- package/lib/volume.js +20 -16
- package/lib/volume.js.map +1 -0
- package/lib/webfs/index.js +1 -0
- package/lib/webfs/index.js.map +1 -0
- package/package.json +60 -26
- package/lib/getBigInt.js +0 -5
- package/lib/node/promises.d.ts +0 -2
- package/lib/node/promises.js +0 -86
|
@@ -1,17 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.CrudCas = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
13
5
|
const util_1 = require("./util");
|
|
14
|
-
const normalizeErrors = (code) => __awaiter(void 0, void 0, void 0, function* () {
|
|
6
|
+
const normalizeErrors = (code) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
15
7
|
try {
|
|
16
8
|
return yield code();
|
|
17
9
|
}
|
|
@@ -30,15 +22,15 @@ class CrudCas {
|
|
|
30
22
|
constructor(crud, options) {
|
|
31
23
|
this.crud = crud;
|
|
32
24
|
this.options = options;
|
|
33
|
-
this.put = (blob) => __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
this.put = (blob) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
34
26
|
const digest = yield this.options.hash(blob);
|
|
35
27
|
const [collection, resource] = (0, util_1.hashToLocation)(digest);
|
|
36
28
|
yield this.crud.put(collection, resource, blob);
|
|
37
29
|
return digest;
|
|
38
30
|
});
|
|
39
|
-
this.get = (hash, options) => __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
this.get = (hash, options) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
40
32
|
const [collection, resource] = (0, util_1.hashToLocation)(hash);
|
|
41
|
-
return yield normalizeErrors(() => __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
return yield normalizeErrors(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
42
34
|
const blob = yield this.crud.get(collection, resource);
|
|
43
35
|
if (!(options === null || options === void 0 ? void 0 : options.skipVerification)) {
|
|
44
36
|
const digest = yield this.options.hash(blob);
|
|
@@ -48,18 +40,19 @@ class CrudCas {
|
|
|
48
40
|
return blob;
|
|
49
41
|
}));
|
|
50
42
|
});
|
|
51
|
-
this.del = (hash, silent) => __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
this.del = (hash, silent) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
52
44
|
const [collection, resource] = (0, util_1.hashToLocation)(hash);
|
|
53
|
-
yield normalizeErrors(() => __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
yield normalizeErrors(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
54
46
|
return yield this.crud.del(collection, resource, silent);
|
|
55
47
|
}));
|
|
56
48
|
});
|
|
57
|
-
this.info = (hash) => __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
this.info = (hash) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
58
50
|
const [collection, resource] = (0, util_1.hashToLocation)(hash);
|
|
59
|
-
return yield normalizeErrors(() => __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
return yield normalizeErrors(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
60
52
|
return yield this.crud.info(collection, resource);
|
|
61
53
|
}));
|
|
62
54
|
});
|
|
63
55
|
}
|
|
64
56
|
}
|
|
65
57
|
exports.CrudCas = CrudCas;
|
|
58
|
+
//# sourceMappingURL=CrudCas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CrudCas.js","sourceRoot":"","sources":["../../src/crud-to-cas/CrudCas.ts"],"names":[],"mappings":";;;;AAAA,iCAAwC;AAQxC,MAAM,eAAe,GAAG,CAAU,IAAsB,EAAc,EAAE;IACtE,IAAI;QACF,OAAO,MAAM,IAAI,EAAE,CAAC;KACrB;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YACtC,QAAQ,KAAK,CAAC,IAAI,EAAE;gBAClB,KAAK,kBAAkB,CAAC;gBACxB,KAAK,oBAAoB;oBACvB,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;aACzD;SACF;QACD,MAAM,KAAK,CAAC;KACb;AACH,CAAC,CAAA,CAAC;AAEF,MAAa,OAAO;IAClB,YAA+B,IAAa,EAAqB,OAAuB;QAAzD,SAAI,GAAJ,IAAI,CAAS;QAAqB,YAAO,GAAP,OAAO,CAAgB;QAExE,QAAG,GAAG,CAAO,IAAgB,EAAmB,EAAE;YAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAA,qBAAc,EAAC,MAAM,CAAC,CAAC;YACtD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAA,CAAC;QAEc,QAAG,GAAG,CAAO,IAAY,EAAE,OAAuB,EAAuB,EAAE;YACzF,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;YACpD,OAAO,MAAM,eAAe,CAAC,GAAS,EAAE;gBACtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACvD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,CAAA,EAAE;oBAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC7C,IAAI,IAAI,KAAK,MAAM;wBAAE,MAAM,IAAI,YAAY,CAAC,mCAAmC,EAAE,WAAW,CAAC,CAAC;iBAC/F;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAA,CAAC;QAEc,QAAG,GAAG,CAAO,IAAY,EAAE,MAAgB,EAAiB,EAAE;YAC5E,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;YACpD,MAAM,eAAe,CAAC,GAAS,EAAE;gBAC/B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAA,CAAC;QAEc,SAAI,GAAG,CAAO,IAAY,EAA6B,EAAE;YACvE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;YACpD,OAAO,MAAM,eAAe,CAAC,GAAS,EAAE;gBACtC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YACpD,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAA,CAAC;IAjCyF,CAAC;CAkC7F;AAnCD,0BAmCC"}
|
|
@@ -1,125 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const thingies_1 = require("thingies");
|
|
13
|
-
const crypto_1 = require("crypto");
|
|
14
3
|
const __1 = require("../..");
|
|
15
4
|
const util_1 = require("../../__tests__/util");
|
|
16
5
|
const node_to_fsa_1 = require("../../node-to-fsa");
|
|
17
6
|
const FsaCrud_1 = require("../../fsa-to-crud/FsaCrud");
|
|
18
7
|
const CrudCas_1 = require("../CrudCas");
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
8
|
+
const testCasfs_1 = require("./testCasfs");
|
|
9
|
+
const NodeCrud_1 = require("../../node-to-crud/NodeCrud");
|
|
10
|
+
(0, util_1.onlyOnNode20)('CrudCas on FsaCrud', () => {
|
|
11
|
+
const setup = () => {
|
|
12
|
+
const fs = (0, __1.memfs)();
|
|
13
|
+
const fsa = new node_to_fsa_1.NodeFileSystemDirectoryHandle(fs, '/', { mode: 'readwrite' });
|
|
14
|
+
const crud = new FsaCrud_1.FsaCrud(fsa);
|
|
15
|
+
const cas = new CrudCas_1.CrudCas(crud, { hash: testCasfs_1.hash });
|
|
16
|
+
return { fs, fsa, crud, cas, snapshot: () => fs.__vol.toJSON() };
|
|
17
|
+
};
|
|
18
|
+
(0, testCasfs_1.testCasfs)(setup);
|
|
24
19
|
});
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
const buf = Buffer.from(str);
|
|
34
|
-
return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
|
|
35
|
-
};
|
|
36
|
-
(0, util_1.onlyOnNode20)('CrudCas', () => {
|
|
37
|
-
describe('.put()', () => {
|
|
38
|
-
test('can store a blob', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
39
|
-
const blob = b('hello world');
|
|
40
|
-
const { cas, snapshot } = setup();
|
|
41
|
-
const hash = yield cas.put(blob);
|
|
42
|
-
expect(hash).toBe('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed');
|
|
43
|
-
expect(snapshot()).toMatchSnapshot();
|
|
44
|
-
}));
|
|
45
|
-
});
|
|
46
|
-
describe('.get()', () => {
|
|
47
|
-
test('can retrieve existing blob', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
|
-
const blob = b('hello world');
|
|
49
|
-
const { cas } = setup();
|
|
50
|
-
const hash = yield cas.put(blob);
|
|
51
|
-
const blob2 = yield cas.get(hash);
|
|
52
|
-
expect(blob2).toStrictEqual(blob);
|
|
53
|
-
}));
|
|
54
|
-
test('throws if blob does not exist', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
55
|
-
const blob = b('hello world 2');
|
|
56
|
-
const { cas } = setup();
|
|
57
|
-
const hash = yield cas.put(blob);
|
|
58
|
-
const [, err] = yield (0, thingies_1.of)(cas.get('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
59
|
-
expect(err).toBeInstanceOf(DOMException);
|
|
60
|
-
expect(err.name).toBe('BlobNotFound');
|
|
61
|
-
}));
|
|
62
|
-
test('throws if blob contents does not match the hash', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
63
|
-
const blob = b('hello world');
|
|
64
|
-
const { cas, crud } = setup();
|
|
65
|
-
const hash = yield cas.put(blob);
|
|
66
|
-
const location = (0, util_2.hashToLocation)(hash);
|
|
67
|
-
yield crud.put(location[0], location[1], b('hello world!'));
|
|
68
|
-
const [, err] = yield (0, thingies_1.of)(cas.get(hash));
|
|
69
|
-
expect(err).toBeInstanceOf(DOMException);
|
|
70
|
-
expect(err.name).toBe('Integrity');
|
|
71
|
-
}));
|
|
72
|
-
test('does not throw if integrity check is skipped', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
-
const blob = b('hello world');
|
|
74
|
-
const { cas, crud } = setup();
|
|
75
|
-
const hash = yield cas.put(blob);
|
|
76
|
-
const location = (0, util_2.hashToLocation)(hash);
|
|
77
|
-
yield crud.put(location[0], location[1], b('hello world!'));
|
|
78
|
-
const blob2 = yield cas.get(hash, { skipVerification: true });
|
|
79
|
-
expect(blob2).toStrictEqual(b('hello world!'));
|
|
80
|
-
}));
|
|
81
|
-
});
|
|
82
|
-
describe('.info()', () => {
|
|
83
|
-
test('can retrieve existing blob info', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
84
|
-
const blob = b('hello world');
|
|
85
|
-
const { cas } = setup();
|
|
86
|
-
const hash = yield cas.put(blob);
|
|
87
|
-
const info = yield cas.info(hash);
|
|
88
|
-
expect(info.size).toBe(11);
|
|
89
|
-
}));
|
|
90
|
-
test('throws if blob does not exist', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
91
|
-
const blob = b('hello world 2');
|
|
92
|
-
const { cas } = setup();
|
|
93
|
-
const hash = yield cas.put(blob);
|
|
94
|
-
const [, err] = yield (0, thingies_1.of)(cas.info('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
95
|
-
expect(err).toBeInstanceOf(DOMException);
|
|
96
|
-
expect(err.name).toBe('BlobNotFound');
|
|
97
|
-
}));
|
|
98
|
-
});
|
|
99
|
-
describe('.del()', () => {
|
|
100
|
-
test('can delete an existing blob', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
101
|
-
const blob = b('hello world');
|
|
102
|
-
const { cas } = setup();
|
|
103
|
-
const hash = yield cas.put(blob);
|
|
104
|
-
const info = yield cas.info(hash);
|
|
105
|
-
yield cas.del(hash);
|
|
106
|
-
const [, err] = yield (0, thingies_1.of)(cas.info(hash));
|
|
107
|
-
expect(err).toBeInstanceOf(DOMException);
|
|
108
|
-
expect(err.name).toBe('BlobNotFound');
|
|
109
|
-
}));
|
|
110
|
-
test('throws if blob does not exist', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
111
|
-
const blob = b('hello world 2');
|
|
112
|
-
const { cas } = setup();
|
|
113
|
-
const hash = yield cas.put(blob);
|
|
114
|
-
const [, err] = yield (0, thingies_1.of)(cas.del('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
115
|
-
expect(err).toBeInstanceOf(DOMException);
|
|
116
|
-
expect(err.name).toBe('BlobNotFound');
|
|
117
|
-
}));
|
|
118
|
-
test('does not throw if "silent" flag is provided', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
119
|
-
const blob = b('hello world 2');
|
|
120
|
-
const { cas } = setup();
|
|
121
|
-
const hash = yield cas.put(blob);
|
|
122
|
-
yield cas.del('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed', true);
|
|
123
|
-
}));
|
|
124
|
-
});
|
|
20
|
+
(0, util_1.onlyOnNode20)('CrudCas on NodeCrud at root', () => {
|
|
21
|
+
const setup = () => {
|
|
22
|
+
const fs = (0, __1.memfs)();
|
|
23
|
+
const crud = new NodeCrud_1.NodeCrud({ fs: fs.promises, dir: '/' });
|
|
24
|
+
const cas = new CrudCas_1.CrudCas(crud, { hash: testCasfs_1.hash });
|
|
25
|
+
return { fs, crud, cas, snapshot: () => fs.__vol.toJSON() };
|
|
26
|
+
};
|
|
27
|
+
(0, testCasfs_1.testCasfs)(setup);
|
|
125
28
|
});
|
|
29
|
+
(0, util_1.onlyOnNode20)('CrudCas on NodeCrud at in sub-folder', () => {
|
|
30
|
+
const setup = () => {
|
|
31
|
+
const fs = (0, __1.memfs)({ '/a/b/c': null });
|
|
32
|
+
const crud = new NodeCrud_1.NodeCrud({ fs: fs.promises, dir: '/a/b/c' });
|
|
33
|
+
const cas = new CrudCas_1.CrudCas(crud, { hash: testCasfs_1.hash });
|
|
34
|
+
return { fs, crud, cas, snapshot: () => fs.__vol.toJSON() };
|
|
35
|
+
};
|
|
36
|
+
(0, testCasfs_1.testCasfs)(setup);
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=CrudCas.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CrudCas.test.js","sourceRoot":"","sources":["../../../src/crud-to-cas/__tests__/CrudCas.test.ts"],"names":[],"mappings":";;AAAA,6BAA8B;AAC9B,+CAAoD;AACpD,mDAAkE;AAClE,uDAAoD;AACpD,wCAAqC;AACrC,2CAA8C;AAC9C,0DAAuD;AAEvD,IAAA,mBAAY,EAAC,oBAAoB,EAAE,GAAG,EAAE;IACtC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,EAAE,GAAG,IAAA,SAAK,GAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,2CAA6B,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,IAAI,iBAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,iBAAO,CAAC,IAAI,EAAE,EAAE,IAAI,EAAJ,gBAAI,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAO,EAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;IAC1E,CAAC,CAAC;IACF,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,IAAA,mBAAY,EAAC,6BAA6B,EAAE,GAAG,EAAE;IAC/C,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,EAAE,GAAG,IAAA,SAAK,GAAE,CAAC;QACnB,MAAM,IAAI,GAAG,IAAI,mBAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,iBAAO,CAAC,IAAI,EAAE,EAAE,IAAI,EAAJ,gBAAI,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAO,EAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;IACrE,CAAC,CAAC;IACF,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,IAAA,mBAAY,EAAC,sCAAsC,EAAE,GAAG,EAAE;IACxD,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,EAAE,GAAG,IAAA,SAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,mBAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,IAAI,iBAAO,CAAC,IAAI,EAAE,EAAE,IAAI,EAAJ,gBAAI,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAO,EAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;IACrE,CAAC,CAAC;IACF,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CasApi } from '../../cas/types';
|
|
2
|
+
import type { CrudApi } from '../../crud/types';
|
|
3
|
+
export declare const hash: (blob: Uint8Array) => Promise<string>;
|
|
4
|
+
export type Setup = () => {
|
|
5
|
+
cas: CasApi;
|
|
6
|
+
crud: CrudApi;
|
|
7
|
+
snapshot: () => Record<string, string | null>;
|
|
8
|
+
};
|
|
9
|
+
export declare const testCasfs: (setup: Setup) => void;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.testCasfs = exports.hash = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const thingies_1 = require("thingies");
|
|
6
|
+
const crypto_1 = require("crypto");
|
|
7
|
+
const util_1 = require("../util");
|
|
8
|
+
const hash = (blob) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
9
|
+
const shasum = (0, crypto_1.createHash)('sha1');
|
|
10
|
+
shasum.update(blob);
|
|
11
|
+
return shasum.digest('hex');
|
|
12
|
+
});
|
|
13
|
+
exports.hash = hash;
|
|
14
|
+
const b = (str) => {
|
|
15
|
+
const buf = Buffer.from(str);
|
|
16
|
+
return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
|
|
17
|
+
};
|
|
18
|
+
const testCasfs = (setup) => {
|
|
19
|
+
describe('.put()', () => {
|
|
20
|
+
test('can store a blob', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
+
const blob = b('hello world');
|
|
22
|
+
const { cas, snapshot } = setup();
|
|
23
|
+
const hash = yield cas.put(blob);
|
|
24
|
+
expect(hash).toBe('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed');
|
|
25
|
+
expect(snapshot()).toMatchSnapshot();
|
|
26
|
+
}));
|
|
27
|
+
});
|
|
28
|
+
describe('.get()', () => {
|
|
29
|
+
test('can retrieve existing blob', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
30
|
+
const blob = b('hello world');
|
|
31
|
+
const { cas } = setup();
|
|
32
|
+
const hash = yield cas.put(blob);
|
|
33
|
+
const blob2 = yield cas.get(hash);
|
|
34
|
+
expect(blob2).toStrictEqual(blob);
|
|
35
|
+
}));
|
|
36
|
+
test('throws if blob does not exist', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
37
|
+
const blob = b('hello world 2');
|
|
38
|
+
const { cas } = setup();
|
|
39
|
+
const hash = yield cas.put(blob);
|
|
40
|
+
const [, err] = yield (0, thingies_1.of)(cas.get('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
41
|
+
expect(err).toBeInstanceOf(DOMException);
|
|
42
|
+
expect(err.name).toBe('BlobNotFound');
|
|
43
|
+
}));
|
|
44
|
+
test('throws if blob contents does not match the hash', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
+
const blob = b('hello world');
|
|
46
|
+
const { cas, crud } = setup();
|
|
47
|
+
const hash = yield cas.put(blob);
|
|
48
|
+
const location = (0, util_1.hashToLocation)(hash);
|
|
49
|
+
yield crud.put(location[0], location[1], b('hello world!'));
|
|
50
|
+
const [, err] = yield (0, thingies_1.of)(cas.get(hash));
|
|
51
|
+
expect(err).toBeInstanceOf(DOMException);
|
|
52
|
+
expect(err.name).toBe('Integrity');
|
|
53
|
+
}));
|
|
54
|
+
test('does not throw if integrity check is skipped', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
55
|
+
const blob = b('hello world');
|
|
56
|
+
const { cas, crud } = setup();
|
|
57
|
+
const hash = yield cas.put(blob);
|
|
58
|
+
const location = (0, util_1.hashToLocation)(hash);
|
|
59
|
+
yield crud.put(location[0], location[1], b('hello world!'));
|
|
60
|
+
const blob2 = yield cas.get(hash, { skipVerification: true });
|
|
61
|
+
expect(blob2).toStrictEqual(b('hello world!'));
|
|
62
|
+
}));
|
|
63
|
+
});
|
|
64
|
+
describe('.info()', () => {
|
|
65
|
+
test('can retrieve existing blob info', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
66
|
+
const blob = b('hello world');
|
|
67
|
+
const { cas } = setup();
|
|
68
|
+
const hash = yield cas.put(blob);
|
|
69
|
+
const info = yield cas.info(hash);
|
|
70
|
+
expect(info.size).toBe(11);
|
|
71
|
+
}));
|
|
72
|
+
test('throws if blob does not exist', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
const blob = b('hello world 2');
|
|
74
|
+
const { cas } = setup();
|
|
75
|
+
const hash = yield cas.put(blob);
|
|
76
|
+
const [, err] = yield (0, thingies_1.of)(cas.info('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
77
|
+
expect(err).toBeInstanceOf(DOMException);
|
|
78
|
+
expect(err.name).toBe('BlobNotFound');
|
|
79
|
+
}));
|
|
80
|
+
});
|
|
81
|
+
describe('.del()', () => {
|
|
82
|
+
test('can delete an existing blob', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
83
|
+
const blob = b('hello world');
|
|
84
|
+
const { cas } = setup();
|
|
85
|
+
const hash = yield cas.put(blob);
|
|
86
|
+
const info = yield cas.info(hash);
|
|
87
|
+
yield cas.del(hash);
|
|
88
|
+
const [, err] = yield (0, thingies_1.of)(cas.info(hash));
|
|
89
|
+
expect(err).toBeInstanceOf(DOMException);
|
|
90
|
+
expect(err.name).toBe('BlobNotFound');
|
|
91
|
+
}));
|
|
92
|
+
test('throws if blob does not exist', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
93
|
+
const blob = b('hello world 2');
|
|
94
|
+
const { cas } = setup();
|
|
95
|
+
const hash = yield cas.put(blob);
|
|
96
|
+
const [, err] = yield (0, thingies_1.of)(cas.del('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'));
|
|
97
|
+
expect(err).toBeInstanceOf(DOMException);
|
|
98
|
+
expect(err.name).toBe('BlobNotFound');
|
|
99
|
+
}));
|
|
100
|
+
test('does not throw if "silent" flag is provided', () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
101
|
+
const blob = b('hello world 2');
|
|
102
|
+
const { cas } = setup();
|
|
103
|
+
const hash = yield cas.put(blob);
|
|
104
|
+
yield cas.del('2aae6c35c94fcfb415dbe95f408b9ce91ee846ed', true);
|
|
105
|
+
}));
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
exports.testCasfs = testCasfs;
|
|
109
|
+
//# sourceMappingURL=testCasfs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testCasfs.js","sourceRoot":"","sources":["../../../src/crud-to-cas/__tests__/testCasfs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { CrudCas, CrudCasOptions } from './CrudCas';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CrudCas = void 0;
|
|
4
|
+
var CrudCas_1 = require("./CrudCas");
|
|
5
|
+
Object.defineProperty(exports, "CrudCas", { enumerable: true, get: function () { return CrudCas_1.CrudCas; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/crud-to-cas/index.ts"],"names":[],"mappings":";;;AAAA,qCAAoD;AAA3C,kGAAA,OAAO,OAAA"}
|
package/lib/crud-to-cas/util.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/crud-to-cas/util.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,CAAC,IAAY,EAAc,EAAE;IACzD,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE;QAAE,MAAM,IAAI,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC3C,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB"}
|
package/lib/encoding.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.js","sourceRoot":"","sources":["../src/encoding.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAC3C,4CAA4C;AAK/B,QAAA,aAAa,GAAmB,MAAM,CAAC;AAEpD,SAAgB,cAAc,CAAC,QAA4B;IACzD,IAAI,QAAQ,IAAI,CAAC,eAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,gCAAgC,EAAE,QAAQ,CAAC,CAAC;AACvH,CAAC;AAFD,wCAEC;AAED,SAAgB,aAAa,CAAC,GAAW,EAAE,QAA4B;IACrE,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,qBAAa;QAAE,OAAO,GAAG,CAAC,CAAC,QAAQ;IACjE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,eAAM,CAAC,GAAG,CAAC,CAAC,CAAC,oBAAoB;IACvE,OAAO,IAAI,eAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB;AAC/D,CAAC;AAJD,sCAIC"}
|
package/lib/fsa/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/fsa/types.ts"],"names":[],"mappings":""}
|
|
@@ -11,4 +11,5 @@ export declare class FsaCrud implements crud.CrudApi {
|
|
|
11
11
|
readonly info: (collection: crud.CrudCollection, id?: string) => Promise<crud.CrudResourceInfo>;
|
|
12
12
|
readonly drop: (collection: crud.CrudCollection, silent?: boolean) => Promise<void>;
|
|
13
13
|
readonly list: (collection: crud.CrudCollection) => Promise<crud.CrudCollectionEntry[]>;
|
|
14
|
+
readonly from: (collection: crud.CrudCollection) => Promise<crud.CrudApi>;
|
|
14
15
|
}
|
|
@@ -1,28 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
12
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
13
|
-
var m = o[Symbol.asyncIterator], i;
|
|
14
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
15
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
16
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
3
|
exports.FsaCrud = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
20
5
|
const util_1 = require("../node-to-fsa/util");
|
|
21
|
-
const util_2 = require("
|
|
6
|
+
const util_2 = require("../crud/util");
|
|
7
|
+
const util_3 = require("./util");
|
|
22
8
|
class FsaCrud {
|
|
23
9
|
constructor(root) {
|
|
24
10
|
this.root = root;
|
|
25
|
-
this.put = (collection, id, data, options) => __awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
this.put = (collection, id, data, options) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
26
12
|
(0, util_2.assertType)(collection, 'put', 'crudfs');
|
|
27
13
|
(0, util_1.assertName)(id, 'put', 'crudfs');
|
|
28
14
|
const [dir] = yield this.getDir(collection, true);
|
|
@@ -31,7 +17,7 @@ class FsaCrud {
|
|
|
31
17
|
case 'exists': {
|
|
32
18
|
try {
|
|
33
19
|
file = yield dir.getFileHandle(id, { create: false });
|
|
34
|
-
throw
|
|
20
|
+
throw (0, util_3.newExistsError)();
|
|
35
21
|
}
|
|
36
22
|
catch (e) {
|
|
37
23
|
if (e.name !== 'NotFoundError')
|
|
@@ -46,7 +32,7 @@ class FsaCrud {
|
|
|
46
32
|
}
|
|
47
33
|
catch (e) {
|
|
48
34
|
if (e.name === 'NotFoundError')
|
|
49
|
-
throw
|
|
35
|
+
throw (0, util_3.newMissingError)();
|
|
50
36
|
throw e;
|
|
51
37
|
}
|
|
52
38
|
break;
|
|
@@ -59,7 +45,7 @@ class FsaCrud {
|
|
|
59
45
|
yield writable.write(data);
|
|
60
46
|
yield writable.close();
|
|
61
47
|
});
|
|
62
|
-
this.get = (collection, id) => __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
this.get = (collection, id) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
63
49
|
(0, util_2.assertType)(collection, 'get', 'crudfs');
|
|
64
50
|
(0, util_1.assertName)(id, 'get', 'crudfs');
|
|
65
51
|
const [, file] = yield this.getFile(collection, id);
|
|
@@ -67,7 +53,7 @@ class FsaCrud {
|
|
|
67
53
|
const buffer = yield blob.arrayBuffer();
|
|
68
54
|
return new Uint8Array(buffer);
|
|
69
55
|
});
|
|
70
|
-
this.del = (collection, id, silent) => __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
this.del = (collection, id, silent) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
71
57
|
(0, util_2.assertType)(collection, 'del', 'crudfs');
|
|
72
58
|
(0, util_1.assertName)(id, 'del', 'crudfs');
|
|
73
59
|
try {
|
|
@@ -79,7 +65,7 @@ class FsaCrud {
|
|
|
79
65
|
throw error;
|
|
80
66
|
}
|
|
81
67
|
});
|
|
82
|
-
this.info = (collection, id) => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
this.info = (collection, id) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
83
69
|
(0, util_2.assertType)(collection, 'info', 'crudfs');
|
|
84
70
|
if (id) {
|
|
85
71
|
(0, util_1.assertName)(id, 'info', 'crudfs');
|
|
@@ -100,7 +86,7 @@ class FsaCrud {
|
|
|
100
86
|
};
|
|
101
87
|
}
|
|
102
88
|
});
|
|
103
|
-
this.drop = (collection, silent) => __awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
this.drop = (collection, silent) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
104
90
|
var _a, e_1, _b, _c;
|
|
105
91
|
(0, util_2.assertType)(collection, 'drop', 'crudfs');
|
|
106
92
|
try {
|
|
@@ -111,16 +97,11 @@ class FsaCrud {
|
|
|
111
97
|
else {
|
|
112
98
|
const root = yield this.root;
|
|
113
99
|
try {
|
|
114
|
-
for (var _d = true, _e = __asyncValues(root.keys()), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
100
|
+
for (var _d = true, _e = tslib_1.__asyncValues(root.keys()), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
|
|
115
101
|
_c = _f.value;
|
|
116
102
|
_d = false;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
yield root.removeEntry(name, { recursive: true });
|
|
120
|
-
}
|
|
121
|
-
finally {
|
|
122
|
-
_d = true;
|
|
123
|
-
}
|
|
103
|
+
const name = _c;
|
|
104
|
+
yield root.removeEntry(name, { recursive: true });
|
|
124
105
|
}
|
|
125
106
|
}
|
|
126
107
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
@@ -137,32 +118,27 @@ class FsaCrud {
|
|
|
137
118
|
throw error;
|
|
138
119
|
}
|
|
139
120
|
});
|
|
140
|
-
this.list = (collection) => __awaiter(this, void 0, void 0, function* () {
|
|
121
|
+
this.list = (collection) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
141
122
|
var _g, e_2, _h, _j;
|
|
142
123
|
(0, util_2.assertType)(collection, 'drop', 'crudfs');
|
|
143
124
|
const [dir] = yield this.getDir(collection, false);
|
|
144
125
|
const entries = [];
|
|
145
126
|
try {
|
|
146
|
-
for (var _k = true, _l = __asyncValues(dir.entries()), _m; _m = yield _l.next(), _g = _m.done, !_g;) {
|
|
127
|
+
for (var _k = true, _l = tslib_1.__asyncValues(dir.entries()), _m; _m = yield _l.next(), _g = _m.done, !_g; _k = true) {
|
|
147
128
|
_j = _m.value;
|
|
148
129
|
_k = false;
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
else if (handle.kind === 'directory') {
|
|
158
|
-
entries.push({
|
|
159
|
-
type: 'collection',
|
|
160
|
-
id,
|
|
161
|
-
});
|
|
162
|
-
}
|
|
130
|
+
const [id, handle] = _j;
|
|
131
|
+
if (handle.kind === 'file') {
|
|
132
|
+
entries.push({
|
|
133
|
+
type: 'resource',
|
|
134
|
+
id,
|
|
135
|
+
});
|
|
163
136
|
}
|
|
164
|
-
|
|
165
|
-
|
|
137
|
+
else if (handle.kind === 'directory') {
|
|
138
|
+
entries.push({
|
|
139
|
+
type: 'collection',
|
|
140
|
+
id,
|
|
141
|
+
});
|
|
166
142
|
}
|
|
167
143
|
}
|
|
168
144
|
}
|
|
@@ -175,9 +151,14 @@ class FsaCrud {
|
|
|
175
151
|
}
|
|
176
152
|
return entries;
|
|
177
153
|
});
|
|
154
|
+
this.from = (collection) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
155
|
+
(0, util_2.assertType)(collection, 'from', 'crudfs');
|
|
156
|
+
const [dir] = yield this.getDir(collection, true);
|
|
157
|
+
return new FsaCrud(dir);
|
|
158
|
+
});
|
|
178
159
|
}
|
|
179
160
|
getDir(collection, create) {
|
|
180
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
161
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
181
162
|
let parent = undefined;
|
|
182
163
|
let dir = yield this.root;
|
|
183
164
|
try {
|
|
@@ -190,13 +171,13 @@ class FsaCrud {
|
|
|
190
171
|
}
|
|
191
172
|
catch (error) {
|
|
192
173
|
if (error.name === 'NotFoundError')
|
|
193
|
-
throw
|
|
174
|
+
throw (0, util_3.newFolder404Error)(collection);
|
|
194
175
|
throw error;
|
|
195
176
|
}
|
|
196
177
|
});
|
|
197
178
|
}
|
|
198
179
|
getFile(collection, id) {
|
|
199
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
180
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
200
181
|
const [dir] = yield this.getDir(collection, false);
|
|
201
182
|
try {
|
|
202
183
|
const file = yield dir.getFileHandle(id, { create: false });
|
|
@@ -204,10 +185,11 @@ class FsaCrud {
|
|
|
204
185
|
}
|
|
205
186
|
catch (error) {
|
|
206
187
|
if (error.name === 'NotFoundError')
|
|
207
|
-
throw
|
|
188
|
+
throw (0, util_3.newFile404Error)(collection, id);
|
|
208
189
|
throw error;
|
|
209
190
|
}
|
|
210
191
|
});
|
|
211
192
|
}
|
|
212
193
|
}
|
|
213
194
|
exports.FsaCrud = FsaCrud;
|
|
195
|
+
//# sourceMappingURL=FsaCrud.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FsaCrud.js","sourceRoot":"","sources":["../../src/fsa-to-crud/FsaCrud.ts"],"names":[],"mappings":"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"}
|