@helia/unixfs 1.4.1 → 1.4.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 (54) hide show
  1. package/README.md +43 -0
  2. package/dist/index.min.js +1 -1
  3. package/dist/src/commands/cat.js.map +1 -1
  4. package/dist/src/commands/chmod.js.map +1 -1
  5. package/dist/src/commands/cp.js.map +1 -1
  6. package/dist/src/commands/ls.js.map +1 -1
  7. package/dist/src/commands/mkdir.js.map +1 -1
  8. package/dist/src/commands/rm.js.map +1 -1
  9. package/dist/src/commands/stat.js.map +1 -1
  10. package/dist/src/commands/touch.js.map +1 -1
  11. package/dist/src/commands/utils/add-link.d.ts +1 -1
  12. package/dist/src/commands/utils/add-link.d.ts.map +1 -1
  13. package/dist/src/commands/utils/add-link.js.map +1 -1
  14. package/dist/src/commands/utils/cid-to-directory.js.map +1 -1
  15. package/dist/src/commands/utils/cid-to-pblink.js.map +1 -1
  16. package/dist/src/commands/utils/constants.d.ts.map +1 -1
  17. package/dist/src/commands/utils/constants.js.map +1 -1
  18. package/dist/src/commands/utils/consumable-hash.js.map +1 -1
  19. package/dist/src/commands/utils/dir-sharded.js.map +1 -1
  20. package/dist/src/commands/utils/hamt-utils.d.ts +1 -1
  21. package/dist/src/commands/utils/hamt-utils.d.ts.map +1 -1
  22. package/dist/src/commands/utils/hamt-utils.js.map +1 -1
  23. package/dist/src/commands/utils/is-over-shard-threshold.d.ts +1 -1
  24. package/dist/src/commands/utils/is-over-shard-threshold.d.ts.map +1 -1
  25. package/dist/src/commands/utils/is-over-shard-threshold.js.map +1 -1
  26. package/dist/src/commands/utils/persist.js.map +1 -1
  27. package/dist/src/commands/utils/remove-link.d.ts +1 -1
  28. package/dist/src/commands/utils/remove-link.d.ts.map +1 -1
  29. package/dist/src/commands/utils/remove-link.js.map +1 -1
  30. package/dist/src/commands/utils/resolve.d.ts +1 -1
  31. package/dist/src/commands/utils/resolve.d.ts.map +1 -1
  32. package/dist/src/commands/utils/resolve.js.map +1 -1
  33. package/dist/src/index.d.ts +15 -15
  34. package/dist/src/index.d.ts.map +1 -1
  35. package/dist/src/utils/glob-source.d.ts.map +1 -1
  36. package/dist/src/utils/glob-source.js +5 -4
  37. package/dist/src/utils/glob-source.js.map +1 -1
  38. package/dist/src/utils/to-mtime.d.ts +4 -0
  39. package/dist/src/utils/to-mtime.d.ts.map +1 -0
  40. package/dist/src/utils/to-mtime.js +42 -0
  41. package/dist/src/utils/to-mtime.js.map +1 -0
  42. package/dist/src/utils/url-source.js.map +1 -1
  43. package/dist/typedoc-urls.json +25 -1
  44. package/package.json +10 -14
  45. package/src/commands/stat.ts +1 -1
  46. package/src/commands/utils/add-link.ts +1 -1
  47. package/src/commands/utils/constants.ts +0 -1
  48. package/src/commands/utils/hamt-utils.ts +1 -1
  49. package/src/commands/utils/is-over-shard-threshold.ts +1 -1
  50. package/src/commands/utils/remove-link.ts +1 -2
  51. package/src/commands/utils/resolve.ts +1 -1
  52. package/src/index.ts +15 -15
  53. package/src/utils/glob-source.ts +5 -4
  54. package/src/utils/to-mtime.ts +57 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"glob-source.d.ts","sourceRoot":"","sources":["../../../src/utils/glob-source.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAEjE,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;IAC9C,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,KAAK,EAAE,SAAS,GAAG,SAAS,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAwB,UAAU,CAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,qBAAqB,CAuCxH"}
1
+ {"version":3,"file":"glob-source.d.ts","sourceRoot":"","sources":["../../../src/utils/glob-source.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAEjE,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;IAC9C,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,KAAK,EAAE,SAAS,GAAG,SAAS,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAwB,UAAU,CAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,qBAAqB,CAuCxH"}
@@ -1,8 +1,9 @@
1
- import fs from 'node:fs';
2
- import fsp from 'node:fs/promises';
3
- import Path from 'node:path';
1
+ import fs from 'fs';
2
+ import fsp from 'fs/promises';
3
+ import Path from 'path';
4
4
  import glob from 'it-glob';
5
5
  import { InvalidParametersError } from '../errors.js';
6
+ import { toMtime } from './to-mtime.js';
6
7
  /**
7
8
  * Create an async iterator that yields paths that match requested glob pattern
8
9
  */
@@ -34,7 +35,7 @@ export async function* globSource(cwd, pattern, options = {}) {
34
35
  path: toPosix(p.replace(cwd, '')),
35
36
  content: stat.isFile() ? fs.createReadStream(p) : undefined,
36
37
  mode,
37
- mtime
38
+ mtime: toMtime(mtime)
38
39
  };
39
40
  }
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"glob-source.js","sourceRoot":"","sources":["../../../src/utils/glob-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,GAAG,MAAM,kBAAkB,CAAA;AAClC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AA2CrD;;GAEG;AACH,MAAM,CAAC,KAAK,SAAU,CAAC,CAAC,UAAU,CAAE,GAAW,EAAE,OAAe,EAAE,UAA6B,EAAE;IAC/F,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,MAAM,IAAI,sBAAsB,CAAC,0BAA0B,CAAC,CAAA;KAC7D;IAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACzB,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;KACvC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;QACpC,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5B,MAAM,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;KACvE,CAAC,CAAA;IAEF,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;QACrD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAE9B,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAEvB,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE;YACjC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;SACjB;QAED,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAEzB,IAAI,OAAO,CAAC,aAAa,KAAK,IAAI,EAAE;YAClC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;SACnB;QAED,MAAM;YACJ,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3D,IAAI;YACJ,KAAK;SACN,CAAA;KACF;AACH,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA"}
1
+ {"version":3,"file":"glob-source.js","sourceRoot":"","sources":["../../../src/utils/glob-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AA2CvC;;GAEG;AACH,MAAM,CAAC,KAAK,SAAU,CAAC,CAAC,UAAU,CAAE,GAAW,EAAE,OAAe,EAAE,UAA6B,EAAE;IAC/F,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,sBAAsB,CAAC,0BAA0B,CAAC,CAAA;IAC9D,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;QACpC,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5B,MAAM,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;KACvE,CAAC,CAAA;IAEF,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAE9B,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAEvB,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAClC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAClB,CAAC;QAED,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAEzB,IAAI,OAAO,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YACnC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACpB,CAAC;QAED,MAAM;YACJ,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3D,IAAI;YACJ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;SACtB,CAAA;IACH,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { Mtime, MtimeLike } from 'ipfs-unixfs';
2
+ export declare function toMtime(mtimeLike: MtimeLike): Mtime;
3
+ export declare function toMtime(mtimeLike?: MtimeLike): Mtime | undefined;
4
+ //# sourceMappingURL=to-mtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-mtime.d.ts","sourceRoot":"","sources":["../../../src/utils/to-mtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEnD,wBAAgB,OAAO,CAAE,SAAS,EAAE,SAAS,GAAG,KAAK,CAAA;AACrD,wBAAgB,OAAO,CAAE,SAAS,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,CAAA"}
@@ -0,0 +1,42 @@
1
+ export function toMtime(mtimeLike) {
2
+ if (mtimeLike == null) {
3
+ return undefined;
4
+ }
5
+ if (isMtime(mtimeLike)) {
6
+ return mtimeLike;
7
+ }
8
+ if (mtimeLike instanceof Date) {
9
+ return dateToTimespec(mtimeLike);
10
+ }
11
+ if (Array.isArray(mtimeLike)) {
12
+ const output = {
13
+ secs: BigInt(mtimeLike[0])
14
+ };
15
+ if (mtimeLike.length > 1) {
16
+ output.nsecs = mtimeLike[1];
17
+ }
18
+ return output;
19
+ }
20
+ if (typeof mtimeLike.Seconds === 'number') {
21
+ const output = {
22
+ secs: BigInt(mtimeLike.Seconds)
23
+ };
24
+ if (mtimeLike.FractionalNanoseconds != null) {
25
+ output.nsecs = mtimeLike.FractionalNanoseconds;
26
+ }
27
+ return output;
28
+ }
29
+ throw new Error('Cannot convert object to mtime');
30
+ }
31
+ function dateToTimespec(date) {
32
+ const ms = date.getTime();
33
+ const secs = Math.floor(ms / 1000);
34
+ return {
35
+ secs: BigInt(secs),
36
+ nsecs: (ms - (secs * 1000)) * 1000
37
+ };
38
+ }
39
+ function isMtime(obj) {
40
+ return typeof obj.secs === 'bigint';
41
+ }
42
+ //# sourceMappingURL=to-mtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-mtime.js","sourceRoot":"","sources":["../../../src/utils/to-mtime.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,OAAO,CAAE,SAAqB;IAC5C,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACtB,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,SAAS,YAAY,IAAI,EAAE,CAAC;QAC9B,OAAO,cAAc,CAAC,SAAS,CAAC,CAAA;IAClC,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAU;YACpB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC3B,CAAA;QAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;QAC7B,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAU;YACpB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;SAChC,CAAA;QAED,IAAI,SAAS,CAAC,qBAAqB,IAAI,IAAI,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,qBAAqB,CAAA;QAChD,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,cAAc,CAAE,IAAU;IACjC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;IAElC,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;QAClB,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI;KACnC,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAE,GAAQ;IACxB,OAAO,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAA;AACrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"url-source.js","sourceRoot":"","sources":["../../../src/utils/url-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,MAAM,UAAU,SAAS,CAAE,GAAQ,EAAE,OAAqB;IACxD,OAAO;QACL,IAAI,EAAE,kBAAkB,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QACtE,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC;KACtC,CAAA;AACH,CAAC;AAED,KAAK,SAAU,CAAC,CAAC,cAAc,CAAE,GAAQ,EAAE,OAAqB;IAC9D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAErD,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE;QACzB,MAAM,IAAI,YAAY,CAAC,mCAAmC,CAAC,CAAA;KAC5D;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IAExC,IAAI;QACF,OAAO,IAAI,EAAE;YACX,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAE3C,IAAI,IAAI,EAAE;gBACR,OAAM;aACP;YAED,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,MAAM,KAAK,CAAA;aACZ;SACF;KACF;YAAS;QACR,MAAM,CAAC,WAAW,EAAE,CAAA;KACrB;AACH,CAAC"}
1
+ {"version":3,"file":"url-source.js","sourceRoot":"","sources":["../../../src/utils/url-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,MAAM,UAAU,SAAS,CAAE,GAAQ,EAAE,OAAqB;IACxD,OAAO;QACL,IAAI,EAAE,kBAAkB,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QACtE,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC;KACtC,CAAA;AACH,CAAC;AAED,KAAK,SAAU,CAAC,CAAC,cAAc,CAAE,GAAQ,EAAE,OAAqB;IAC9D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAErD,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,IAAI,YAAY,CAAC,mCAAmC,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IAExC,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAE3C,IAAI,IAAI,EAAE,CAAC;gBACT,OAAM;YACR,CAAC;YAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAA;IACtB,CAAC;AACH,CAAC"}
@@ -1,30 +1,54 @@
1
1
  {
2
2
  "AlreadyExistsError": "https://ipfs.github.io/helia-unixfs/classes/errors.AlreadyExistsError.html",
3
+ "./errors:AlreadyExistsError": "https://ipfs.github.io/helia-unixfs/classes/errors.AlreadyExistsError.html",
3
4
  "DoesNotExistError": "https://ipfs.github.io/helia-unixfs/classes/errors.DoesNotExistError.html",
5
+ "./errors:DoesNotExistError": "https://ipfs.github.io/helia-unixfs/classes/errors.DoesNotExistError.html",
4
6
  "InvalidPBNodeError": "https://ipfs.github.io/helia-unixfs/classes/errors.InvalidPBNodeError.html",
7
+ "./errors:InvalidPBNodeError": "https://ipfs.github.io/helia-unixfs/classes/errors.InvalidPBNodeError.html",
5
8
  "InvalidParametersError": "https://ipfs.github.io/helia-unixfs/classes/errors.InvalidParametersError.html",
9
+ "./errors:InvalidParametersError": "https://ipfs.github.io/helia-unixfs/classes/errors.InvalidParametersError.html",
6
10
  "NoContentError": "https://ipfs.github.io/helia-unixfs/classes/errors.NoContentError.html",
11
+ "./errors:NoContentError": "https://ipfs.github.io/helia-unixfs/classes/errors.NoContentError.html",
7
12
  "NotADirectoryError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotADirectoryError.html",
13
+ "./errors:NotADirectoryError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotADirectoryError.html",
8
14
  "NotAFileError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotAFileError.html",
15
+ "./errors:NotAFileError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotAFileError.html",
9
16
  "NotUnixFSError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotUnixFSError.html",
17
+ "./errors:NotUnixFSError": "https://ipfs.github.io/helia-unixfs/classes/errors.NotUnixFSError.html",
10
18
  "UnixFSError": "https://ipfs.github.io/helia-unixfs/classes/errors.UnixFSError.html",
19
+ "./errors:UnixFSError": "https://ipfs.github.io/helia-unixfs/classes/errors.UnixFSError.html",
11
20
  "UnknownError": "https://ipfs.github.io/helia-unixfs/classes/errors.UnknownError.html",
12
- "GlobSourceOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index._internal_.GlobSourceOptions.html",
21
+ "./errors:UnknownError": "https://ipfs.github.io/helia-unixfs/classes/errors.UnknownError.html",
13
22
  "AddOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.AddOptions.html",
23
+ ".:AddOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.AddOptions.html",
14
24
  "CatOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.CatOptions.html",
25
+ ".:CatOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.CatOptions.html",
15
26
  "ChmodOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.ChmodOptions.html",
27
+ ".:ChmodOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.ChmodOptions.html",
16
28
  "CpOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.CpOptions.html",
29
+ ".:CpOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.CpOptions.html",
17
30
  "LsOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.LsOptions.html",
31
+ ".:LsOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.LsOptions.html",
18
32
  "MkdirOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.MkdirOptions.html",
33
+ ".:MkdirOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.MkdirOptions.html",
19
34
  "RmOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.RmOptions.html",
35
+ ".:RmOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.RmOptions.html",
20
36
  "StatOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.StatOptions.html",
37
+ ".:StatOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.StatOptions.html",
21
38
  "TouchOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.TouchOptions.html",
39
+ ".:TouchOptions": "https://ipfs.github.io/helia-unixfs/interfaces/index.TouchOptions.html",
22
40
  "UnixFS": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFS.html",
41
+ ".:UnixFS": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFS.html",
23
42
  "UnixFSComponents": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFSComponents.html",
43
+ ".:UnixFSComponents": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFSComponents.html",
24
44
  "UnixFSStats": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFSStats.html",
45
+ ".:UnixFSStats": "https://ipfs.github.io/helia-unixfs/interfaces/index.UnixFSStats.html",
25
46
  "AddEvents": "https://ipfs.github.io/helia-unixfs/types/index.AddEvents.html",
47
+ ".:AddEvents": "https://ipfs.github.io/helia-unixfs/types/index.AddEvents.html",
26
48
  "GetEvents": "https://ipfs.github.io/helia-unixfs/types/index.GetEvents.html",
49
+ ".:GetEvents": "https://ipfs.github.io/helia-unixfs/types/index.GetEvents.html",
27
50
  "globSource": "https://ipfs.github.io/helia-unixfs/functions/index.globSource.html",
28
51
  "unixfs": "https://ipfs.github.io/helia-unixfs/functions/index.unixfs-1.html",
52
+ ".:unixfs": "https://ipfs.github.io/helia-unixfs/functions/index.unixfs-1.html",
29
53
  "urlSource": "https://ipfs.github.io/helia-unixfs/functions/index.urlSource.html"
30
54
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helia/unixfs",
3
- "version": "1.4.1",
3
+ "version": "1.4.3",
4
4
  "description": "A Helia-compatible wrapper for UnixFS",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/ipfs/helia-unixfs/tree/master/packages/unixfs#readme",
@@ -51,6 +51,7 @@
51
51
  "eslintConfig": {
52
52
  "extends": "ipfs",
53
53
  "parserOptions": {
54
+ "project": true,
54
55
  "sourceType": "module"
55
56
  }
56
57
  },
@@ -144,7 +145,6 @@
144
145
  "lint": "aegir lint",
145
146
  "dep-check": "aegir dep-check",
146
147
  "build": "aegir build",
147
- "docs": "aegir docs",
148
148
  "test": "aegir test",
149
149
  "test:chrome": "aegir test -t browser --cov",
150
150
  "test:chrome-webworker": "aegir test -t webworker",
@@ -155,10 +155,10 @@
155
155
  "release": "aegir release"
156
156
  },
157
157
  "dependencies": {
158
- "@helia/interface": "^1.0.0",
158
+ "@helia/interface": "^2.0.0",
159
159
  "@ipld/dag-pb": "^4.0.0",
160
- "@libp2p/interfaces": "^3.3.1",
161
- "@libp2p/logger": "^2.0.6",
160
+ "@libp2p/interface": "^0.1.2",
161
+ "@libp2p/logger": "^3.0.2",
162
162
  "@multiformats/murmur3": "^2.1.2",
163
163
  "hamt-sharding": "^3.0.2",
164
164
  "interface-blockstore": "^5.0.0",
@@ -169,12 +169,12 @@
169
169
  "it-last": "^3.0.1",
170
170
  "it-pipe": "^3.0.1",
171
171
  "merge-options": "^3.0.4",
172
- "multiformats": "^11.0.1",
172
+ "multiformats": "^12.1.1",
173
173
  "progress-events": "^1.0.0",
174
174
  "sparse-array": "^1.3.2"
175
175
  },
176
176
  "devDependencies": {
177
- "aegir": "^39.0.8",
177
+ "aegir": "^41.0.0",
178
178
  "blockstore-core": "^4.0.1",
179
179
  "delay": "^6.0.0",
180
180
  "iso-url": "^1.2.1",
@@ -185,14 +185,10 @@
185
185
  "uint8arrays": "^4.0.3",
186
186
  "wherearewe": "^2.0.1"
187
187
  },
188
- "typedoc": {
189
- "entryPoint": "./src/index.ts"
190
- },
191
188
  "browser": {
192
189
  "./dist/src/utils/glob-source.js": false,
193
- "node:fs": false,
194
- "node:fs/promises": false,
195
- "node:path": false,
196
- "node:url": false
190
+ "fs": false,
191
+ "path": false,
192
+ "url": false
197
193
  }
198
194
  }
@@ -8,7 +8,7 @@ import { InvalidPBNodeError, NotUnixFSError, UnknownError } from '../errors.js'
8
8
  import { resolve } from './utils/resolve.js'
9
9
  import type { StatOptions, UnixFSStats } from '../index.js'
10
10
  import type { Blocks } from '@helia/interface/blocks'
11
- import type { AbortOptions } from '@libp2p/interfaces'
11
+ import type { AbortOptions } from '@libp2p/interface'
12
12
  import type { Mtime } from 'ipfs-unixfs'
13
13
  import type { CID } from 'multiformats/cid'
14
14
 
@@ -19,7 +19,7 @@ import { isOverShardThreshold } from './is-over-shard-threshold.js'
19
19
  import type { Directory } from './cid-to-directory.js'
20
20
  import type { Blocks } from '@helia/interface/blocks'
21
21
  import type { PBNode, PBLink } from '@ipld/dag-pb/interface'
22
- import type { AbortOptions } from '@libp2p/interfaces'
22
+ import type { AbortOptions } from '@libp2p/interface'
23
23
  import type { ImportResult } from 'ipfs-unixfs-importer'
24
24
 
25
25
  const log = logger('helia:unixfs:components:utils:add-link')
@@ -1,2 +1 @@
1
-
2
1
  export const SHARD_SPLIT_THRESHOLD_BYTES = 262144
@@ -15,7 +15,7 @@ import {
15
15
  import { persist } from './persist.js'
16
16
  import type { PersistOptions } from './persist.js'
17
17
  import type { Blocks } from '@helia/interface/blocks'
18
- import type { AbortOptions } from '@libp2p/interfaces'
18
+ import type { AbortOptions } from '@libp2p/interface'
19
19
  import type { Mtime } from 'ipfs-unixfs'
20
20
  import type { ImportResult } from 'ipfs-unixfs-importer'
21
21
  import type { CID, Version } from 'multiformats/cid'
@@ -3,7 +3,7 @@ import { UnixFS } from 'ipfs-unixfs'
3
3
  import { CID_V0, CID_V1 } from './dir-sharded.js'
4
4
  import type { Blocks } from '@helia/interface/blocks'
5
5
  import type { PBNode } from '@ipld/dag-pb'
6
- import type { AbortOptions } from '@libp2p/interfaces'
6
+ import type { AbortOptions } from '@libp2p/interface'
7
7
 
8
8
  /**
9
9
  * Estimate node size only based on DAGLink name and CID byte lengths
@@ -1,4 +1,3 @@
1
-
2
1
  import * as dagPB from '@ipld/dag-pb'
3
2
  import { logger } from '@libp2p/logger'
4
3
  import { UnixFS } from 'ipfs-unixfs'
@@ -14,7 +13,7 @@ import { persist } from './persist.js'
14
13
  import type { Directory } from './cid-to-directory.js'
15
14
  import type { Blocks } from '@helia/interface/blocks'
16
15
  import type { PBNode } from '@ipld/dag-pb'
17
- import type { AbortOptions } from '@libp2p/interfaces'
16
+ import type { AbortOptions } from '@libp2p/interface'
18
17
  import type { CID, Version } from 'multiformats/cid'
19
18
 
20
19
  const log = logger('helia:unixfs:utils:remove-link')
@@ -5,7 +5,7 @@ import { addLink } from './add-link.js'
5
5
  import { cidToDirectory } from './cid-to-directory.js'
6
6
  import { cidToPBLink } from './cid-to-pblink.js'
7
7
  import type { Blocks } from '@helia/interface/blocks'
8
- import type { AbortOptions } from '@libp2p/interfaces'
8
+ import type { AbortOptions } from '@libp2p/interface'
9
9
  import type { CID } from 'multiformats/cid'
10
10
 
11
11
  const log = logger('helia:unixfs:components:utils:resolve')
package/src/index.ts CHANGED
@@ -53,7 +53,7 @@ import { rm } from './commands/rm.js'
53
53
  import { stat } from './commands/stat.js'
54
54
  import { touch } from './commands/touch.js'
55
55
  import type { Blocks, GetBlockProgressEvents, PutBlockProgressEvents } from '@helia/interface/blocks'
56
- import type { AbortOptions } from '@libp2p/interfaces'
56
+ import type { AbortOptions } from '@libp2p/interface'
57
57
  import type { Mtime, UnixFS as IPFSUnixFS } from 'ipfs-unixfs'
58
58
  import type { ExporterProgressEvents, UnixFSEntry } from 'ipfs-unixfs-exporter'
59
59
  import type { ByteStream, DirectoryCandidate, FileCandidate, ImportCandidateStream, ImporterOptions, ImporterProgressEvents, ImportResult } from 'ipfs-unixfs-importer'
@@ -363,7 +363,7 @@ export interface UnixFS {
363
363
  * }
364
364
  * ```
365
365
  */
366
- addAll: (source: ImportCandidateStream, options?: Partial<AddOptions>) => AsyncIterable<ImportResult>
366
+ addAll(source: ImportCandidateStream, options?: Partial<AddOptions>): AsyncIterable<ImportResult>
367
367
 
368
368
  /**
369
369
  * Add a single `Uint8Array` to your Helia node as a file.
@@ -376,7 +376,7 @@ export interface UnixFS {
376
376
  * console.info(cid)
377
377
  * ```
378
378
  */
379
- addBytes: (bytes: Uint8Array, options?: Partial<AddOptions>) => Promise<CID>
379
+ addBytes(bytes: Uint8Array, options?: Partial<AddOptions>): Promise<CID>
380
380
 
381
381
  /**
382
382
  * Add a stream of `Uint8Array` to your Helia node as a file.
@@ -384,7 +384,7 @@ export interface UnixFS {
384
384
  * @example
385
385
  *
386
386
  * ```typescript
387
- * import fs from 'node:fs'
387
+ * import fs from 'fs'
388
388
  *
389
389
  * const stream = fs.createReadStream('./foo.txt')
390
390
  * const cid = await fs.addByteStream(stream)
@@ -392,7 +392,7 @@ export interface UnixFS {
392
392
  * console.info(cid)
393
393
  * ```
394
394
  */
395
- addByteStream: (bytes: ByteStream, options?: Partial<AddOptions>) => Promise<CID>
395
+ addByteStream(bytes: ByteStream, options?: Partial<AddOptions>): Promise<CID>
396
396
 
397
397
  /**
398
398
  * Add a file to your Helia node with optional metadata.
@@ -413,7 +413,7 @@ export interface UnixFS {
413
413
  * console.info(cid)
414
414
  * ```
415
415
  */
416
- addFile: (file: FileCandidate, options?: Partial<AddOptions>) => Promise<CID>
416
+ addFile(file: FileCandidate, options?: Partial<AddOptions>): Promise<CID>
417
417
 
418
418
  /**
419
419
  * Add a directory to your Helia node.
@@ -426,7 +426,7 @@ export interface UnixFS {
426
426
  * console.info(cid)
427
427
  * ```
428
428
  */
429
- addDirectory: (dir?: Partial<DirectoryCandidate>, options?: Partial<AddOptions>) => Promise<CID>
429
+ addDirectory(dir?: Partial<DirectoryCandidate>, options?: Partial<AddOptions>): Promise<CID>
430
430
 
431
431
  /**
432
432
  * Retrieve the contents of a file from your Helia node.
@@ -439,7 +439,7 @@ export interface UnixFS {
439
439
  * }
440
440
  * ```
441
441
  */
442
- cat: (cid: CID, options?: Partial<CatOptions>) => AsyncIterable<Uint8Array>
442
+ cat(cid: CID, options?: Partial<CatOptions>): AsyncIterable<Uint8Array>
443
443
 
444
444
  /**
445
445
  * Change the permissions on a file or directory in a DAG
@@ -457,7 +457,7 @@ export interface UnixFS {
457
457
  * console.info(afterCid, afterStats)
458
458
  * ```
459
459
  */
460
- chmod: (cid: CID, mode: number, options?: Partial<ChmodOptions>) => Promise<CID>
460
+ chmod(cid: CID, mode: number, options?: Partial<ChmodOptions>): Promise<CID>
461
461
 
462
462
  /**
463
463
  * Add a file or directory to a target directory.
@@ -473,7 +473,7 @@ export interface UnixFS {
473
473
  * console.info(updatedCid)
474
474
  * ```
475
475
  */
476
- cp: (source: CID, target: CID, name: string, options?: Partial<CpOptions>) => Promise<CID>
476
+ cp(source: CID, target: CID, name: string, options?: Partial<CpOptions>): Promise<CID>
477
477
 
478
478
  /**
479
479
  * List directory contents.
@@ -486,7 +486,7 @@ export interface UnixFS {
486
486
  * }
487
487
  * ```
488
488
  */
489
- ls: (cid: CID, options?: Partial<LsOptions>) => AsyncIterable<UnixFSEntry>
489
+ ls(cid: CID, options?: Partial<LsOptions>): AsyncIterable<UnixFSEntry>
490
490
 
491
491
  /**
492
492
  * Make a new directory under an existing directory.
@@ -501,7 +501,7 @@ export interface UnixFS {
501
501
  * console.info(updatedCid)
502
502
  * ```
503
503
  */
504
- mkdir: (cid: CID, dirname: string, options?: Partial<MkdirOptions>) => Promise<CID>
504
+ mkdir(cid: CID, dirname: string, options?: Partial<MkdirOptions>): Promise<CID>
505
505
 
506
506
  /**
507
507
  * Remove a file or directory from an existing directory.
@@ -517,7 +517,7 @@ export interface UnixFS {
517
517
  * console.info(finalCid)
518
518
  * ```
519
519
  */
520
- rm: (cid: CID, path: string, options?: Partial<RmOptions>) => Promise<CID>
520
+ rm(cid: CID, path: string, options?: Partial<RmOptions>): Promise<CID>
521
521
 
522
522
  /**
523
523
  * Return statistics about a UnixFS DAG.
@@ -532,7 +532,7 @@ export interface UnixFS {
532
532
  * console.info(stats)
533
533
  * ```
534
534
  */
535
- stat: (cid: CID, options?: Partial<StatOptions>) => Promise<UnixFSStats>
535
+ stat(cid: CID, options?: Partial<StatOptions>): Promise<UnixFSStats>
536
536
 
537
537
  /**
538
538
  * Update the mtime of a UnixFS DAG
@@ -550,7 +550,7 @@ export interface UnixFS {
550
550
  * console.info(afterCid, afterStats)
551
551
  * ```
552
552
  */
553
- touch: (cid: CID, options?: Partial<TouchOptions>) => Promise<CID>
553
+ touch(cid: CID, options?: Partial<TouchOptions>): Promise<CID>
554
554
  }
555
555
 
556
556
  class DefaultUnixFS implements UnixFS {
@@ -1,8 +1,9 @@
1
- import fs from 'node:fs'
2
- import fsp from 'node:fs/promises'
3
- import Path from 'node:path'
1
+ import fs from 'fs'
2
+ import fsp from 'fs/promises'
3
+ import Path from 'path'
4
4
  import glob from 'it-glob'
5
5
  import { InvalidParametersError } from '../errors.js'
6
+ import { toMtime } from './to-mtime.js'
6
7
  import type { MtimeLike } from 'ipfs-unixfs'
7
8
  import type { ImportCandidateStream } from 'ipfs-unixfs-importer'
8
9
 
@@ -84,7 +85,7 @@ export async function * globSource (cwd: string, pattern: string, options: GlobS
84
85
  path: toPosix(p.replace(cwd, '')),
85
86
  content: stat.isFile() ? fs.createReadStream(p) : undefined,
86
87
  mode,
87
- mtime
88
+ mtime: toMtime(mtime)
88
89
  }
89
90
  }
90
91
  }
@@ -0,0 +1,57 @@
1
+ import type { Mtime, MtimeLike } from 'ipfs-unixfs'
2
+
3
+ export function toMtime (mtimeLike: MtimeLike): Mtime
4
+ export function toMtime (mtimeLike?: MtimeLike): Mtime | undefined
5
+ export function toMtime (mtimeLike?: MtimeLike): Mtime | undefined {
6
+ if (mtimeLike == null) {
7
+ return undefined
8
+ }
9
+
10
+ if (isMtime(mtimeLike)) {
11
+ return mtimeLike
12
+ }
13
+
14
+ if (mtimeLike instanceof Date) {
15
+ return dateToTimespec(mtimeLike)
16
+ }
17
+
18
+ if (Array.isArray(mtimeLike)) {
19
+ const output: Mtime = {
20
+ secs: BigInt(mtimeLike[0])
21
+ }
22
+
23
+ if (mtimeLike.length > 1) {
24
+ output.nsecs = mtimeLike[1]
25
+ }
26
+
27
+ return output
28
+ }
29
+
30
+ if (typeof mtimeLike.Seconds === 'number') {
31
+ const output: Mtime = {
32
+ secs: BigInt(mtimeLike.Seconds)
33
+ }
34
+
35
+ if (mtimeLike.FractionalNanoseconds != null) {
36
+ output.nsecs = mtimeLike.FractionalNanoseconds
37
+ }
38
+
39
+ return output
40
+ }
41
+
42
+ throw new Error('Cannot convert object to mtime')
43
+ }
44
+
45
+ function dateToTimespec (date: Date): Mtime {
46
+ const ms = date.getTime()
47
+ const secs = Math.floor(ms / 1000)
48
+
49
+ return {
50
+ secs: BigInt(secs),
51
+ nsecs: (ms - (secs * 1000)) * 1000
52
+ }
53
+ }
54
+
55
+ function isMtime (obj: any): obj is Mtime {
56
+ return typeof obj.secs === 'bigint'
57
+ }