memfs 4.36.2 → 4.36.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.
Files changed (67) hide show
  1. package/README.md +6 -10
  2. package/lib/fsa-to-node/FsaNodeReadStream.d.ts +2 -2
  3. package/lib/fsa-to-node/FsaNodeReadStream.js +2 -2
  4. package/lib/fsa-to-node/FsaNodeReadStream.js.map +1 -1
  5. package/lib/fsa-to-node/FsaNodeWriteStream.d.ts +1 -1
  6. package/lib/fsa-to-node/FsaNodeWriteStream.js +2 -2
  7. package/lib/fsa-to-node/FsaNodeWriteStream.js.map +1 -1
  8. package/lib/fsa-to-node/worker/FsaNodeSyncAdapterWorker.js +1 -1
  9. package/lib/fsa-to-node/worker/FsaNodeSyncAdapterWorker.js.map +1 -1
  10. package/package.json +5 -4
  11. package/lib/cas/types.d.ts +0 -10
  12. package/lib/cas/types.js +0 -3
  13. package/lib/cas/types.js.map +0 -1
  14. package/lib/crud/types.d.ts +0 -83
  15. package/lib/crud/types.js +0 -3
  16. package/lib/crud/types.js.map +0 -1
  17. package/lib/crud/util.d.ts +0 -2
  18. package/lib/crud/util.js +0 -11
  19. package/lib/crud/util.js.map +0 -1
  20. package/lib/crud-to-cas/CrudCas.d.ts +0 -10
  21. package/lib/crud-to-cas/CrudCas.js +0 -15
  22. package/lib/crud-to-cas/CrudCas.js.map +0 -1
  23. package/lib/crud-to-cas/CrudCasBase.d.ts +0 -14
  24. package/lib/crud-to-cas/CrudCasBase.js +0 -58
  25. package/lib/crud-to-cas/CrudCasBase.js.map +0 -1
  26. package/lib/crud-to-cas/index.d.ts +0 -1
  27. package/lib/crud-to-cas/index.js +0 -6
  28. package/lib/crud-to-cas/index.js.map +0 -1
  29. package/lib/crud-to-cas/util.d.ts +0 -2
  30. package/lib/crud-to-cas/util.js +0 -13
  31. package/lib/crud-to-cas/util.js.map +0 -1
  32. package/lib/fsa-to-crud/FsaCrud.d.ts +0 -16
  33. package/lib/fsa-to-crud/FsaCrud.js +0 -211
  34. package/lib/fsa-to-crud/FsaCrud.js.map +0 -1
  35. package/lib/fsa-to-crud/index.d.ts +0 -1
  36. package/lib/fsa-to-crud/index.js +0 -6
  37. package/lib/fsa-to-crud/index.js.map +0 -1
  38. package/lib/fsa-to-crud/util.d.ts +0 -5
  39. package/lib/fsa-to-crud/util.js +0 -12
  40. package/lib/fsa-to-crud/util.js.map +0 -1
  41. package/lib/node-to-crud/NodeCrud.d.ts +0 -23
  42. package/lib/node-to-crud/NodeCrud.js +0 -253
  43. package/lib/node-to-crud/NodeCrud.js.map +0 -1
  44. package/lib/node-to-crud/index.d.ts +0 -1
  45. package/lib/node-to-crud/index.js +0 -6
  46. package/lib/node-to-crud/index.js.map +0 -1
  47. package/lib/thingies/Defer.d.ts +0 -17
  48. package/lib/thingies/Defer.js +0 -25
  49. package/lib/thingies/Defer.js.map +0 -1
  50. package/lib/thingies/concurrency.d.ts +0 -3
  51. package/lib/thingies/concurrency.js +0 -42
  52. package/lib/thingies/concurrency.js.map +0 -1
  53. package/lib/thingies/go.d.ts +0 -3
  54. package/lib/thingies/go.js +0 -9
  55. package/lib/thingies/go.js.map +0 -1
  56. package/lib/thingies/index.d.ts +0 -4
  57. package/lib/thingies/index.js +0 -8
  58. package/lib/thingies/index.js.map +0 -1
  59. package/lib/thingies/of.d.ts +0 -10
  60. package/lib/thingies/of.js +0 -22
  61. package/lib/thingies/of.js.map +0 -1
  62. package/lib/thingies/types.d.ts +0 -1
  63. package/lib/thingies/types.js +0 -3
  64. package/lib/thingies/types.js.map +0 -1
  65. package/lib/webfs/index.d.ts +0 -1
  66. package/lib/webfs/index.js +0 -22
  67. package/lib/webfs/index.js.map +0 -1
package/README.md CHANGED
@@ -15,15 +15,12 @@ npm i memfs
15
15
 
16
16
  ## Resources
17
17
 
18
- - Documentation
19
- - [In-memory Node.js `fs` API](./docs/node/index.md)
20
- - [In-memory browser File System (Access) API](./docs/fsa/fsa.md)
21
- - [`fs` to File System (Access) API adapter](./docs/fsa/fs-to-fsa.md)
22
- - [File System (Access) API to `fs` adapter](./docs/fsa/fsa-to-fs.md)
23
- - `experimental` [`crudfs` a CRUD-like file system abstraction](./docs/crudfs/index.md)
24
- - `experimental` [`casfs` Content Addressable Storage file system abstraction](./docs/casfs/index.md)
25
- - [Directory `snapshot` utility](./docs/snapshot/index.md)
26
- - [`print` directory tree to terminal](./docs/print/index.md)
18
+ - [In-memory Node.js `fs` API](./docs/node/index.md)
19
+ - [In-memory browser File System (Access) API](./docs/fsa/fsa.md)
20
+ - [`fs` to File System (Access) API adapter](./docs/fsa/fs-to-fsa.md)
21
+ - [File System (Access) API to `fs` adapter](./docs/fsa/fsa-to-fs.md)
22
+ - [Directory `snapshot` utility](./docs/snapshot/index.md)
23
+ - [`print` directory tree to terminal](./docs/print/index.md)
27
24
  - [Code reference](https://streamich.github.io/memfs/)
28
25
  - [Test coverage](https://streamich.github.io/memfs/coverage/lcov-report/)
29
26
 
@@ -34,7 +31,6 @@ npm i memfs
34
31
  - [Git on in-memory file system](demo/git/README.md)
35
32
  - [`fs` in browser, creates a `.tar` file in real folder](demo/fsa-to-node-zipfile/README.md)
36
33
  - [`fs` in browser, synchronous API, writes to real folder](demo/fsa-to-node-sync-tests/README.md)
37
- - [`crudfs` and `casfs` in browser and Node.js interoperability](demo/crud-and-cas/README.md)
38
34
 
39
35
  ## See also
40
36
 
@@ -1,5 +1,5 @@
1
1
  import { Readable } from 'stream';
2
- import { Defer } from '../thingies/Defer';
2
+ import { Defer } from 'thingies/lib/Defer';
3
3
  import type { FsaNodeFsOpenFile } from './FsaNodeFsOpenFile';
4
4
  import type { IReadStream } from '../node/types/misc';
5
5
  import type { IReadStreamOptions } from '../node/types/options';
@@ -12,7 +12,7 @@ export declare class FsaNodeReadStream extends Readable implements IReadStream {
12
12
  protected __pending__: boolean;
13
13
  protected __closed__: boolean;
14
14
  protected __bytes__: number;
15
- protected readonly __mutex__: <T = unknown>(code: import("../thingies/types").Code<T>) => Promise<T>;
15
+ protected readonly __mutex__: <T = unknown>(code: import("thingies").Code<T>) => Promise<T>;
16
16
  protected readonly __file__: Defer<FsaNodeFsOpenFile>;
17
17
  constructor(fs: FsaNodeFs, handle: Promise<FsaNodeFsOpenFile>, path: string, options: IReadStreamOptions);
18
18
  private __read__;
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FsaNodeReadStream = void 0;
4
4
  const stream_1 = require("stream");
5
- const Defer_1 = require("../thingies/Defer");
6
- const concurrency_1 = require("../thingies/concurrency");
5
+ const Defer_1 = require("thingies/lib/Defer");
6
+ const concurrency_1 = require("thingies/lib/concurrency");
7
7
  class FsaNodeReadStream extends stream_1.Readable {
8
8
  constructor(fs, handle, path, options) {
9
9
  super();
@@ -1 +1 @@
1
- {"version":3,"file":"FsaNodeReadStream.js","sourceRoot":"","sources":["../../src/fsa-to-node/FsaNodeReadStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FsaNodeReadStream.js","sourceRoot":"","sources":["../../src/fsa-to-node/FsaNodeReadStream.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export declare class FsaNodeWriteStream extends Writable implements IWriteStream
31
31
  protected __closed__: boolean;
32
32
  protected __bytes__: number;
33
33
  protected readonly __stream__: Promise<IFileSystemWritableFileStream>;
34
- protected readonly __mutex__: <T = unknown>(code: import("../thingies/types").Code<T>) => Promise<T>;
34
+ protected readonly __mutex__: <T = unknown>(code: import("thingies").Code<T>) => Promise<T>;
35
35
  constructor(handle: Promise<FsaNodeFsOpenFile>, path: string, options: IWriteStreamOptions);
36
36
  private ___write___;
37
37
  private __close__;
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FsaNodeWriteStream = void 0;
4
4
  const stream_1 = require("stream");
5
- const Defer_1 = require("../thingies/Defer");
6
- const concurrency_1 = require("../thingies/concurrency");
5
+ const Defer_1 = require("thingies/lib/Defer");
6
+ const concurrency_1 = require("thingies/lib/concurrency");
7
7
  const util_1 = require("../node/util");
8
8
  const queueMicrotask_1 = require("../queueMicrotask");
9
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FsaNodeWriteStream.js","sourceRoot":"","sources":["../../src/fsa-to-node/FsaNodeWriteStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FsaNodeWriteStream.js","sourceRoot":"","sources":["../../src/fsa-to-node/FsaNodeWriteStream.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FsaNodeSyncAdapterWorker = void 0;
4
- const Defer_1 = require("../../thingies/Defer");
4
+ const Defer_1 = require("thingies/lib/Defer");
5
5
  const SyncMessenger_1 = require("./SyncMessenger");
6
6
  const json_1 = require("../json");
7
7
  let rootId = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"FsaNodeSyncAdapterWorker.js","sourceRoot":"","sources":["../../../src/fsa-to-node/worker/FsaNodeSyncAdapterWorker.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAE7C,mDAAgD;AAChD,kCAA2C;AAa3C,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,MAAa,wBAAwB;IAC5B,MAAM,CAAC,KAAK,CAAC,KAAK,CACvB,GAAW,EACX,GAA6E;QAE7E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,aAAK,EAA4B,CAAC;QACrD,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;QAClB,IAAI,SAAS,GAA8B,SAAS,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC;QACvB,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE;YACrB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO;YACjC,MAAM,GAAG,GAAG,IAAwB,CAAC;YACrC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAA6B,CAAC;YAChD,QAAQ,IAAI,EAAE,CAAC;gBACb,0CAAkC,CAAC,CAAC,CAAC;oBACnC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAA2B,CAAC;oBAC5C,SAAS,GAAG,IAAI,6BAAa,CAAC,GAAG,CAAC,CAAC;oBACnC,MAAM,cAAc,GAA4B,2CAAmC,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC7F,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;oBACnC,MAAM;gBACR,CAAC;gBACD,6CAAqC,CAAC,CAAC,CAAC;oBACtC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,GAA8B,CAAC;oBAClD,IAAI,EAAE,KAAK,MAAM;wBAAE,OAAO;oBAC1B,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC,SAAU,EAAE,IAAI,CAAC,CAAC;oBAC/D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBACxB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QACF,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,YACqB,SAAwB,EACxB,IAAoC;QADpC,cAAS,GAAT,SAAS,CAAe;QACxB,SAAI,GAAJ,IAAI,CAAgC;IACtD,CAAC;IAEG,IAAI,CACT,MAAS,EACT,OAAgD;QAEhD,MAAM,OAAO,GAA4B,2CAAmC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,cAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,cAAO,CAAC,MAAM,CAAC,eAAe,CAAY,CAAC;QAChE,QAAQ,IAAI,EAAE,CAAC;YACb;gBACE,OAAO,IAAW,CAAC;YACrB;gBACE,MAAM,IAAI,CAAC;YACb,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA3DD,4DA2DC"}
1
+ {"version":3,"file":"FsaNodeSyncAdapterWorker.js","sourceRoot":"","sources":["../../../src/fsa-to-node/worker/FsaNodeSyncAdapterWorker.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAE3C,mDAAgD;AAChD,kCAA2C;AAa3C,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,MAAa,wBAAwB;IAC5B,MAAM,CAAC,KAAK,CAAC,KAAK,CACvB,GAAW,EACX,GAA6E;QAE7E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,aAAK,EAA4B,CAAC;QACrD,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;QAClB,IAAI,SAAS,GAA8B,SAAS,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC;QACvB,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE;YACrB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO;YACjC,MAAM,GAAG,GAAG,IAAwB,CAAC;YACrC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAA6B,CAAC;YAChD,QAAQ,IAAI,EAAE,CAAC;gBACb,0CAAkC,CAAC,CAAC,CAAC;oBACnC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAA2B,CAAC;oBAC5C,SAAS,GAAG,IAAI,6BAAa,CAAC,GAAG,CAAC,CAAC;oBACnC,MAAM,cAAc,GAA4B,2CAAmC,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC7F,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;oBACnC,MAAM;gBACR,CAAC;gBACD,6CAAqC,CAAC,CAAC,CAAC;oBACtC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,GAA8B,CAAC;oBAClD,IAAI,EAAE,KAAK,MAAM;wBAAE,OAAO;oBAC1B,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC,SAAU,EAAE,IAAI,CAAC,CAAC;oBAC/D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBACxB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QACF,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,YACqB,SAAwB,EACxB,IAAoC;QADpC,cAAS,GAAT,SAAS,CAAe;QACxB,SAAI,GAAJ,IAAI,CAAgC;IACtD,CAAC;IAEG,IAAI,CACT,MAAS,EACT,OAAgD;QAEhD,MAAM,OAAO,GAA4B,2CAAmC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,cAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,cAAO,CAAC,MAAM,CAAC,eAAe,CAAY,CAAC;QAChE,QAAQ,IAAI,EAAE,CAAC;YACb;gBACE,OAAO,IAAW,CAAC;YACrB;gBACE,MAAM,IAAI,CAAC;YACb,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA3DD,4DA2DC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memfs",
3
- "version": "4.36.2",
3
+ "version": "4.36.3",
4
4
  "description": "In-memory file-system with Node's fs API.",
5
5
  "keywords": [
6
6
  "fs",
@@ -124,9 +124,10 @@
124
124
  }
125
125
  },
126
126
  "dependencies": {
127
- "@jsonjoy.com/json-pack": "^1.0.3",
128
- "@jsonjoy.com/util": "^1.3.0",
129
- "tree-dump": "^1.0.1",
127
+ "@jsonjoy.com/json-pack": "^1.11.0",
128
+ "@jsonjoy.com/util": "^1.9.0",
129
+ "thingies": "^2.5.0",
130
+ "tree-dump": "^1.0.3",
130
131
  "tslib": "^2.0.0"
131
132
  },
132
133
  "devDependencies": {
@@ -1,10 +0,0 @@
1
- import type { CrudResourceInfo } from '../crud/types';
2
- export interface CasApi<Hash> {
3
- put(blob: Uint8Array): Promise<Hash>;
4
- get(hash: Hash, options?: CasGetOptions): Promise<Uint8Array>;
5
- del(hash: Hash, silent?: boolean): Promise<void>;
6
- info(hash: Hash): Promise<CrudResourceInfo>;
7
- }
8
- export interface CasGetOptions {
9
- skipVerification?: boolean;
10
- }
package/lib/cas/types.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cas/types.ts"],"names":[],"mappings":""}
@@ -1,83 +0,0 @@
1
- export interface CrudApi {
2
- /**
3
- * Creates a new resource, or overwrites an existing one.
4
- *
5
- * @param collection Type of the resource, collection name.
6
- * @param id Id of the resource, document name.
7
- * @param data Blob content of the resource.
8
- * @param options Write behavior options.
9
- */
10
- put: (collection: CrudCollection, id: string, data: Uint8Array, options?: CrudPutOptions) => Promise<void>;
11
- /**
12
- * Retrieves the content of a resource.
13
- *
14
- * @param collection Type of the resource, collection name.
15
- * @param id Id of the resource, document name.
16
- * @returns Blob content of the resource.
17
- */
18
- get: (collection: CrudCollection, id: string) => Promise<Uint8Array>;
19
- /**
20
- * Deletes a resource.
21
- *
22
- * @param collection Type of the resource, collection name.
23
- * @param id Id of the resource, document name.
24
- * @param silent When true, does not throw an error if the collection or
25
- * resource does not exist. Default is false.
26
- */
27
- del: (collection: CrudCollection, id: string, silent?: boolean) => Promise<void>;
28
- /**
29
- * Fetches information about a resource.
30
- *
31
- * @param collection Type of the resource, collection name.
32
- * @param id Id of the resource, document name, if any.
33
- * @returns Information about the resource.
34
- */
35
- info: (collection: CrudCollection, id?: string) => Promise<CrudResourceInfo>;
36
- /**
37
- * Deletes all resources of a collection, and deletes recursively all sub-collections.
38
- *
39
- * @param collection Type of the resource, collection name.
40
- * @param silent When true, does not throw an error if the collection or
41
- * resource does not exist. Default is false.
42
- */
43
- drop: (collection: CrudCollection, silent?: boolean) => Promise<void>;
44
- /**
45
- * Iterates over all resources of a collection.
46
- *
47
- * @param collection Type of the resource, collection name.
48
- * @returns Iterator of resources of the given type.
49
- */
50
- scan: (collection: CrudCollection) => AsyncIterableIterator<CrudCollectionEntry>;
51
- /**
52
- * Fetches a list of resources of a collection, and sub-collections.
53
- *
54
- * @param collection Type of the resource, collection name.
55
- * @returns List of resources of the given type, and sub-types.
56
- */
57
- list: (collection: CrudCollection) => Promise<CrudCollectionEntry[]>;
58
- /**
59
- * Creates a new CrudApi instance, with the given collection as root.
60
- *
61
- * @param collection Type of the resource, collection name.
62
- * @returns A new CrudApi instance, with the given collection as root.
63
- */
64
- from: (collection: CrudCollection) => Promise<CrudApi>;
65
- }
66
- export type CrudCollection = string[];
67
- export interface CrudPutOptions {
68
- throwIf?: 'exists' | 'missing';
69
- }
70
- export interface CrudCollectionEntry {
71
- /** Kind of the resource, type or item. */
72
- type: 'resource' | 'collection';
73
- /** Name of the resource. */
74
- id: string;
75
- }
76
- export interface CrudResourceInfo extends CrudCollectionEntry {
77
- /** Size of the resource in bytes. */
78
- size?: number;
79
- /** Timestamp when the resource last modified. */
80
- modified?: number;
81
- /** Timestamp when the resource was created. */
82
- created?: number;
83
- }
package/lib/crud/types.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/crud/types.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import { CrudCollection } from './types';
2
- export declare const assertType: (type: CrudCollection, method: string, klass: string) => void;
package/lib/crud/util.js DELETED
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertType = void 0;
4
- const util_1 = require("../node-to-fsa/util");
5
- const assertType = (type, method, klass) => {
6
- const length = type.length;
7
- for (let i = 0; i < length; i++)
8
- (0, util_1.assertName)(type[i], method, klass);
9
- };
10
- exports.assertType = assertType;
11
- //# sourceMappingURL=util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/crud/util.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AAE1C,MAAM,UAAU,GAAG,CAAC,IAAoB,EAAE,MAAc,EAAE,KAAa,EAAQ,EAAE;IACtF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE;QAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC;AAHW,QAAA,UAAU,cAGrB"}
@@ -1,10 +0,0 @@
1
- import { CrudCasBase } from './CrudCasBase';
2
- import type { CrudApi } from '../crud/types';
3
- export interface CrudCasOptions {
4
- hash: (blob: Uint8Array) => Promise<string>;
5
- }
6
- export declare class CrudCas extends CrudCasBase<string> {
7
- protected readonly crud: CrudApi;
8
- protected readonly options: CrudCasOptions;
9
- constructor(crud: CrudApi, options: CrudCasOptions);
10
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CrudCas = void 0;
4
- const util_1 = require("./util");
5
- const CrudCasBase_1 = require("./CrudCasBase");
6
- const hashEqual = (h1, h2) => h1 === h2;
7
- class CrudCas extends CrudCasBase_1.CrudCasBase {
8
- constructor(crud, options) {
9
- super(crud, options.hash, util_1.hashToLocation, hashEqual);
10
- this.crud = crud;
11
- this.options = options;
12
- }
13
- }
14
- exports.CrudCas = CrudCas;
15
- //# sourceMappingURL=CrudCas.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CrudCas.js","sourceRoot":"","sources":["../../src/crud-to-cas/CrudCas.ts"],"names":[],"mappings":";;;AAAA,iCAAwC;AACxC,+CAA4C;AAO5C,MAAM,SAAS,GAAG,CAAC,EAAU,EAAE,EAAU,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;AAExD,MAAa,OAAQ,SAAQ,yBAAmB;IAC9C,YACqB,IAAa,EACb,OAAuB;QAE1C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,qBAAc,EAAE,SAAS,CAAC,CAAC;QAHlC,SAAI,GAAJ,IAAI,CAAS;QACb,YAAO,GAAP,OAAO,CAAgB;IAG5C,CAAC;CACF;AAPD,0BAOC"}
@@ -1,14 +0,0 @@
1
- import type { CasApi, CasGetOptions } from '../cas/types';
2
- import type { CrudApi, CrudResourceInfo } from '../crud/types';
3
- import type { FsLocation } from '../fsa-to-node/types';
4
- export declare class CrudCasBase<Hash> implements CasApi<Hash> {
5
- protected readonly crud: CrudApi;
6
- protected readonly hash: (blob: Uint8Array) => Promise<Hash>;
7
- protected readonly hash2Loc: (hash: Hash) => FsLocation;
8
- protected readonly hashEqual: (h1: Hash, h2: Hash) => boolean;
9
- constructor(crud: CrudApi, hash: (blob: Uint8Array) => Promise<Hash>, hash2Loc: (hash: Hash) => FsLocation, hashEqual: (h1: Hash, h2: Hash) => boolean);
10
- readonly put: (blob: Uint8Array) => Promise<Hash>;
11
- readonly get: (hash: Hash, options?: CasGetOptions) => Promise<Uint8Array>;
12
- readonly del: (hash: Hash, silent?: boolean) => Promise<void>;
13
- readonly info: (hash: Hash) => Promise<CrudResourceInfo>;
14
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CrudCasBase = void 0;
4
- const normalizeErrors = async (code) => {
5
- try {
6
- return await code();
7
- }
8
- catch (error) {
9
- if (error && typeof error === 'object') {
10
- switch (error.name) {
11
- case 'ResourceNotFound':
12
- case 'CollectionNotFound':
13
- throw new DOMException(error.message, 'BlobNotFound');
14
- }
15
- }
16
- throw error;
17
- }
18
- };
19
- class CrudCasBase {
20
- constructor(crud, hash, hash2Loc, hashEqual) {
21
- this.crud = crud;
22
- this.hash = hash;
23
- this.hash2Loc = hash2Loc;
24
- this.hashEqual = hashEqual;
25
- this.put = async (blob) => {
26
- const digest = await this.hash(blob);
27
- const [collection, resource] = this.hash2Loc(digest);
28
- await this.crud.put(collection, resource, blob);
29
- return digest;
30
- };
31
- this.get = async (hash, options) => {
32
- const [collection, resource] = this.hash2Loc(hash);
33
- return await normalizeErrors(async () => {
34
- const blob = await this.crud.get(collection, resource);
35
- if (!(options === null || options === void 0 ? void 0 : options.skipVerification)) {
36
- const digest = await this.hash(blob);
37
- if (!this.hashEqual(digest, hash))
38
- throw new DOMException('Blob contents does not match hash', 'Integrity');
39
- }
40
- return blob;
41
- });
42
- };
43
- this.del = async (hash, silent) => {
44
- const [collection, resource] = this.hash2Loc(hash);
45
- await normalizeErrors(async () => {
46
- return await this.crud.del(collection, resource, silent);
47
- });
48
- };
49
- this.info = async (hash) => {
50
- const [collection, resource] = this.hash2Loc(hash);
51
- return await normalizeErrors(async () => {
52
- return await this.crud.info(collection, resource);
53
- });
54
- };
55
- }
56
- }
57
- exports.CrudCasBase = CrudCasBase;
58
- //# sourceMappingURL=CrudCasBase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CrudCasBase.js","sourceRoot":"","sources":["../../src/crud-to-cas/CrudCasBase.ts"],"names":[],"mappings":";;;AAIA,MAAM,eAAe,GAAG,KAAK,EAAK,IAAsB,EAAc,EAAE;IACtE,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,kBAAkB,CAAC;gBACxB,KAAK,oBAAoB;oBACvB,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,MAAa,WAAW;IACtB,YACqB,IAAa,EACb,IAAyC,EACzC,QAAoC,EACpC,SAA0C;QAH1C,SAAI,GAAJ,IAAI,CAAS;QACb,SAAI,GAAJ,IAAI,CAAqC;QACzC,aAAQ,GAAR,QAAQ,CAA4B;QACpC,cAAS,GAAT,SAAS,CAAiC;QAG/C,QAAG,GAAG,KAAK,EAAE,IAAgB,EAAiB,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QAEc,QAAG,GAAG,KAAK,EAAE,IAAU,EAAE,OAAuB,EAAuB,EAAE;YACvF,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,OAAO,MAAM,eAAe,CAAC,KAAK,IAAI,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,CAAC;oBAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;wBAAE,MAAM,IAAI,YAAY,CAAC,mCAAmC,EAAE,WAAW,CAAC,CAAC;gBAC9G,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEc,QAAG,GAAG,KAAK,EAAE,IAAU,EAAE,MAAgB,EAAiB,EAAE;YAC1E,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,eAAe,CAAC,KAAK,IAAI,EAAE;gBAC/B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEc,SAAI,GAAG,KAAK,EAAE,IAAU,EAA6B,EAAE;YACrE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,OAAO,MAAM,eAAe,CAAC,KAAK,IAAI,EAAE;gBACtC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IAjCC,CAAC;CAkCL;AAxCD,kCAwCC"}
@@ -1 +0,0 @@
1
- export { CrudCas, CrudCasOptions } from './CrudCas';
@@ -1,6 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/crud-to-cas/index.ts"],"names":[],"mappings":";;;AAAA,qCAAoD;AAA3C,kGAAA,OAAO,OAAA"}
@@ -1,2 +0,0 @@
1
- import type { FsLocation } from '../fsa-to-node/types';
2
- export declare const hashToLocation: (hash: string) => FsLocation;
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hashToLocation = void 0;
4
- const hashToLocation = (hash) => {
5
- if (hash.length < 20)
6
- throw new TypeError('Hash is too short');
7
- const lastTwo = hash.slice(-2);
8
- const twoBeforeLastTwo = hash.slice(-4, -2);
9
- const folder = [lastTwo, twoBeforeLastTwo];
10
- return [folder, hash];
11
- };
12
- exports.hashToLocation = hashToLocation;
13
- //# sourceMappingURL=util.js.map
@@ -1 +0,0 @@
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"}
@@ -1,16 +0,0 @@
1
- import type * as crud from '../crud/types';
2
- import type * as fsa from '../fsa/types';
3
- export declare class FsaCrud implements crud.CrudApi {
4
- protected readonly root: fsa.IFileSystemDirectoryHandle | Promise<fsa.IFileSystemDirectoryHandle>;
5
- constructor(root: fsa.IFileSystemDirectoryHandle | Promise<fsa.IFileSystemDirectoryHandle>);
6
- protected getDir(collection: crud.CrudCollection, create: boolean): Promise<[dir: fsa.IFileSystemDirectoryHandle, parent: fsa.IFileSystemDirectoryHandle | undefined]>;
7
- protected getFile(collection: crud.CrudCollection, id: string): Promise<[dir: fsa.IFileSystemDirectoryHandle, file: fsa.IFileSystemFileHandle]>;
8
- readonly put: (collection: crud.CrudCollection, id: string, data: Uint8Array, options?: crud.CrudPutOptions) => Promise<void>;
9
- readonly get: (collection: crud.CrudCollection, id: string) => Promise<Uint8Array>;
10
- readonly del: (collection: crud.CrudCollection, id: string, silent?: boolean) => Promise<void>;
11
- readonly info: (collection: crud.CrudCollection, id?: string) => Promise<crud.CrudResourceInfo>;
12
- readonly drop: (collection: crud.CrudCollection, silent?: boolean) => Promise<void>;
13
- readonly scan: (collection: crud.CrudCollection) => AsyncIterableIterator<crud.CrudCollectionEntry>;
14
- readonly list: (collection: crud.CrudCollection) => Promise<crud.CrudCollectionEntry[]>;
15
- readonly from: (collection: crud.CrudCollection) => Promise<crud.CrudApi>;
16
- }