@helia/unixfs 1.0.1 → 1.0.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/dist/index.min.js +1 -1
- package/dist/src/commands/add.d.ts +9 -0
- package/dist/src/commands/add.d.ts.map +1 -0
- package/dist/src/commands/add.js +24 -0
- package/dist/src/commands/add.js.map +1 -0
- package/dist/src/commands/utils/hamt-utils.d.ts.map +1 -1
- package/dist/src/commands/utils/hamt-utils.js +3 -2
- package/dist/src/commands/utils/hamt-utils.js.map +1 -1
- package/dist/src/index.d.ts +331 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +53 -2
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/add.ts +34 -0
- package/src/commands/utils/hamt-utils.ts +3 -3
- package/src/index.ts +381 -3
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CID } from 'multiformats/cid';
|
|
2
|
+
import type { Blockstore } from 'interface-blockstore';
|
|
3
|
+
import { ByteStream, DirectoryCandidate, FileCandidate, ImportCandidateStream, ImporterOptions, ImportResult } from 'ipfs-unixfs-importer';
|
|
4
|
+
export declare function addAll(source: ImportCandidateStream, blockstore: Blockstore, options?: Partial<ImporterOptions>): AsyncGenerator<ImportResult, void, unknown>;
|
|
5
|
+
export declare function addBytes(bytes: Uint8Array, blockstore: Blockstore, options?: Partial<ImporterOptions>): Promise<CID>;
|
|
6
|
+
export declare function addByteStream(bytes: ByteStream, blockstore: Blockstore, options?: Partial<ImporterOptions>): Promise<CID>;
|
|
7
|
+
export declare function addFile(file: FileCandidate, blockstore: Blockstore, options?: Partial<ImporterOptions>): Promise<CID>;
|
|
8
|
+
export declare function addDirectory(dir: Partial<DirectoryCandidate>, blockstore: Blockstore, options?: Partial<ImporterOptions>): Promise<CID>;
|
|
9
|
+
//# sourceMappingURL=add.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAiC,qBAAqB,EAA6B,eAAe,EAAc,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEhN,wBAAwB,MAAM,CAAE,MAAM,EAAE,qBAAqB,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAE1K;AAED,wBAAsB,QAAQ,CAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAI/H;AAED,wBAAsB,aAAa,CAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIpI;AAED,wBAAsB,OAAO,CAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIhI;AAED,wBAAsB,YAAY,CAAE,GAAG,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAOlJ"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { importBytes, importByteStream, importDirectory, importer, importFile } from 'ipfs-unixfs-importer';
|
|
2
|
+
export async function* addAll(source, blockstore, options = {}) {
|
|
3
|
+
yield* importer(source, blockstore, options);
|
|
4
|
+
}
|
|
5
|
+
export async function addBytes(bytes, blockstore, options = {}) {
|
|
6
|
+
const { cid } = await importBytes(bytes, blockstore, options);
|
|
7
|
+
return cid;
|
|
8
|
+
}
|
|
9
|
+
export async function addByteStream(bytes, blockstore, options = {}) {
|
|
10
|
+
const { cid } = await importByteStream(bytes, blockstore, options);
|
|
11
|
+
return cid;
|
|
12
|
+
}
|
|
13
|
+
export async function addFile(file, blockstore, options = {}) {
|
|
14
|
+
const { cid } = await importFile(file, blockstore, options);
|
|
15
|
+
return cid;
|
|
16
|
+
}
|
|
17
|
+
export async function addDirectory(dir, blockstore, options = {}) {
|
|
18
|
+
const { cid } = await importDirectory({
|
|
19
|
+
...dir,
|
|
20
|
+
path: dir.path ?? '-'
|
|
21
|
+
}, blockstore, options);
|
|
22
|
+
return cid;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiD,WAAW,EAAE,gBAAgB,EAAyB,eAAe,EAAE,QAAQ,EAAmB,UAAU,EAAgB,MAAM,sBAAsB,CAAA;AAEhN,MAAM,CAAC,KAAK,SAAU,CAAC,CAAC,MAAM,CAAE,MAA6B,EAAE,UAAsB,EAAE,UAAoC,EAAE;IAC3H,KAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,KAAiB,EAAE,UAAsB,EAAE,UAAoC,EAAE;IAC/G,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IAE7D,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAE,KAAiB,EAAE,UAAsB,EAAE,UAAoC,EAAE;IACpH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IAElE,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAE,IAAmB,EAAE,UAAsB,EAAE,UAAoC,EAAE;IAChH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IAE3D,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAE,GAAgC,EAAE,UAAsB,EAAE,UAAoC,EAAE;IAClI,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,eAAe,CAAC;QACpC,GAAG,GAAG;QACN,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,GAAG;KACtB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IAEvB,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hamt-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/utils/hamt-utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,MAAM,EAEP,MAAM,eAAe,CAAA;AAKtB,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAMpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAKxD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,mBAAmB,WAAkB,MAAM,cAAc,UAAU,UAAU,OAAO,GAAG,CAAC,WAAW,0BAA0B,KAAG,QAAQ,gBAAgB,CA6BpK,CAAA;AAED,eAAO,MAAM,iBAAiB,eAAsB,UAAU,SAAS,MAAM,EAAE,cAAc,OAAO,GAAG,CAAC,gBAAgB,OAAO,GAAG,CAAC,oBAAoB,MAAM,WAAW,YAAY,KAAG,QAAQ,OAAO,GAAG,CAAC,CAWzM,CAAA;AAED,eAAO,MAAM,wBAAwB,UAAiB,MAAM,EAAE,KAAG,QAAQ,OAAO,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"hamt-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/utils/hamt-utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,MAAM,EAEP,MAAM,eAAe,CAAA;AAKtB,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAMpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAKxD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,mBAAmB,WAAkB,MAAM,cAAc,UAAU,UAAU,OAAO,GAAG,CAAC,WAAW,0BAA0B,KAAG,QAAQ,gBAAgB,CA6BpK,CAAA;AAED,eAAO,MAAM,iBAAiB,eAAsB,UAAU,SAAS,MAAM,EAAE,cAAc,OAAO,GAAG,CAAC,gBAAgB,OAAO,GAAG,CAAC,oBAAoB,MAAM,WAAW,YAAY,KAAG,QAAQ,OAAO,GAAG,CAAC,CAWzM,CAAA;AAED,eAAO,MAAM,wBAAwB,UAAiB,MAAM,EAAE,KAAG,QAAQ,OAAO,GAAG,CAAC,CA8BnF,CAAA;AAED,eAAO,MAAM,oBAAoB,eAAsB,UAAU,SAAS,MAAM,EAAE,UAAU,OAAO,GAAG,CAAC,cAAc,OAAO,GAAG,CAAC,WAAW,YAAY,KAAG,QAAQ,IAAI,CA2BrK,CAAA;AAED,eAAO,MAAM,QAAQ,aAAc,MAAM,KAAG,MAM3C,CAAA;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,YAAY,SAAgB,SAAS,QAAQ,MAAM,cAAc,UAAU,WAAW,YAAY,KAAG,QAAQ,eAAe,EAAE,CAsG1I,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,WAAW,eAAsB,UAAU,YAAY,MAAM;IAAE,MAAM,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,CAAC,WAAW,kBAAkB,KAAG,QAAQ,YAAY,CA2BtK,CAAA"}
|
|
@@ -58,6 +58,7 @@ export const recreateInitialHamtLevel = async (links) => {
|
|
|
58
58
|
bits: bucket._options.bits
|
|
59
59
|
}, bucket, pos);
|
|
60
60
|
bucket._putObjectAt(pos, subBucket);
|
|
61
|
+
return;
|
|
61
62
|
}
|
|
62
63
|
await bucket.put(linkName.substring(2), {
|
|
63
64
|
size: link.Tsize,
|
|
@@ -80,6 +81,7 @@ export const addLinksToHamtBucket = async (blockstore, links, bucket, rootBucket
|
|
|
80
81
|
}, bucket, pos);
|
|
81
82
|
bucket._putObjectAt(pos, subBucket);
|
|
82
83
|
await addLinksToHamtBucket(blockstore, node.Links, subBucket, rootBucket, options);
|
|
84
|
+
return;
|
|
83
85
|
}
|
|
84
86
|
await rootBucket.put(linkName.substring(2), {
|
|
85
87
|
size: link.Tsize,
|
|
@@ -148,7 +150,7 @@ export const generatePath = async (root, name, blockstore, options) => {
|
|
|
148
150
|
// found subshard
|
|
149
151
|
log(`Found subshard ${segment.prefix}`);
|
|
150
152
|
const block = await blockstore.get(link.Hash);
|
|
151
|
-
const node = dagPB.decode(block);
|
|
153
|
+
const node = segment.node = dagPB.decode(block);
|
|
152
154
|
// subshard hasn't been loaded, descend to the next level of the HAMT
|
|
153
155
|
if (path[i + 1] == null) {
|
|
154
156
|
log(`Loaded new subshard ${segment.prefix}`);
|
|
@@ -170,7 +172,6 @@ export const generatePath = async (root, name, blockstore, options) => {
|
|
|
170
172
|
}
|
|
171
173
|
// add intermediate links to bucket
|
|
172
174
|
await addLinksToHamtBucket(blockstore, node.Links, segment.bucket, rootBucket, options);
|
|
173
|
-
segment.node = node;
|
|
174
175
|
}
|
|
175
176
|
await rootBucket.put(name, true);
|
|
176
177
|
path.reverse();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hamt-utils.js","sourceRoot":"","sources":["../../../../src/commands/utils/hamt-utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hamt-utils.js","sourceRoot":"","sources":["../../../../src/commands/utils/hamt-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,43 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
*
|
|
4
|
+
* `@helia/unixfs` is an implementation of a {@link https://github.com/ipfs/specs/blob/main/UNIXFS.md UnixFS filesystem} compatible with {@link https://github.com/ipfs/helia Helia}.
|
|
5
|
+
*
|
|
6
|
+
* See the {@link UnixFS UnixFS interface} for all available operations.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { createHelia } from 'helia'
|
|
12
|
+
* import { unixfs } from '@helia/unixfs'
|
|
13
|
+
*
|
|
14
|
+
* const helia = createHelia({
|
|
15
|
+
* // ... helia config
|
|
16
|
+
* })
|
|
17
|
+
* const fs = unixfs(helia)
|
|
18
|
+
*
|
|
19
|
+
* // create an empty dir and a file, then add the file to the dir
|
|
20
|
+
* const emptyDirCid = await fs.addDirectory()
|
|
21
|
+
* const fileCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
22
|
+
* const updateDirCid = await fs.cp(fileCid, emptyDirCid, 'foo.txt')
|
|
23
|
+
*
|
|
24
|
+
* // or doing the same thing as a stream
|
|
25
|
+
* for await (const entry of fs.addAll([{
|
|
26
|
+
* path: 'foo.txt',
|
|
27
|
+
* content: Uint8Array.from([0, 1, 2, 3])
|
|
28
|
+
* }])) {
|
|
29
|
+
* console.info(entry)
|
|
30
|
+
* }
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
1
33
|
import type { CID, Version } from 'multiformats/cid';
|
|
2
34
|
import type { Blockstore } from 'interface-blockstore';
|
|
3
35
|
import type { AbortOptions } from '@libp2p/interfaces';
|
|
4
36
|
import type { Mtime } from 'ipfs-unixfs';
|
|
5
37
|
import type { UnixFSEntry } from 'ipfs-unixfs-exporter';
|
|
38
|
+
import type { ByteStream, DirectoryCandidate, FileCandidate, ImportCandidateStream, ImporterOptions, ImportResult } from 'ipfs-unixfs-importer';
|
|
6
39
|
export interface UnixFSComponents {
|
|
7
40
|
blockstore: Blockstore;
|
|
8
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Options to pass to the cat command
|
|
44
|
+
*/
|
|
9
45
|
export interface CatOptions extends AbortOptions {
|
|
46
|
+
/**
|
|
47
|
+
* Start reading the file at this offset
|
|
48
|
+
*/
|
|
10
49
|
offset?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Stop reading the file after this many bytes
|
|
52
|
+
*/
|
|
11
53
|
length?: number;
|
|
54
|
+
/**
|
|
55
|
+
* An optional path to allow reading files inside directories
|
|
56
|
+
*/
|
|
12
57
|
path?: string;
|
|
13
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Options to pass to the chmod command
|
|
61
|
+
*/
|
|
14
62
|
export interface ChmodOptions extends AbortOptions {
|
|
63
|
+
/**
|
|
64
|
+
* If the target of the operation is a directory and this is true,
|
|
65
|
+
* apply the new mode to all directory contents
|
|
66
|
+
*/
|
|
15
67
|
recursive: boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Optional path to set the mode on directory contents
|
|
70
|
+
*/
|
|
16
71
|
path?: string;
|
|
72
|
+
/**
|
|
73
|
+
* DAGs with a root block larger than this value will be sharded. Blocks
|
|
74
|
+
* smaller than this value will be regular UnixFS directories.
|
|
75
|
+
*/
|
|
17
76
|
shardSplitThresholdBytes: number;
|
|
18
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Options to pass to the cp command
|
|
80
|
+
*/
|
|
19
81
|
export interface CpOptions extends AbortOptions {
|
|
82
|
+
/**
|
|
83
|
+
* If true, allow overwriting existing directory entries (default: false)
|
|
84
|
+
*/
|
|
20
85
|
force: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* DAGs with a root block larger than this value will be sharded. Blocks
|
|
88
|
+
* smaller than this value will be regular UnixFS directories.
|
|
89
|
+
*/
|
|
21
90
|
shardSplitThresholdBytes: number;
|
|
22
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Options to pass to the ls command
|
|
94
|
+
*/
|
|
23
95
|
export interface LsOptions extends AbortOptions {
|
|
96
|
+
/**
|
|
97
|
+
* Optional path to list subdirectory contents if the target CID resolves to
|
|
98
|
+
* a directory
|
|
99
|
+
*/
|
|
24
100
|
path?: string;
|
|
101
|
+
/**
|
|
102
|
+
* Start reading the directory entries at this offset
|
|
103
|
+
*/
|
|
25
104
|
offset?: number;
|
|
105
|
+
/**
|
|
106
|
+
* Stop reading the directory contents after this many directory entries
|
|
107
|
+
*/
|
|
26
108
|
length?: number;
|
|
27
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* Options to pass to the mkdir command
|
|
112
|
+
*/
|
|
28
113
|
export interface MkdirOptions extends AbortOptions {
|
|
114
|
+
/**
|
|
115
|
+
* The CID version to create the new directory with - defaults to the same
|
|
116
|
+
* version as the containing directory
|
|
117
|
+
*/
|
|
29
118
|
cidVersion: Version;
|
|
119
|
+
/**
|
|
120
|
+
* If true, allow overwriting existing directory entries (default: false)
|
|
121
|
+
*/
|
|
30
122
|
force: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* An optional mode to set on the new directory
|
|
125
|
+
*/
|
|
31
126
|
mode?: number;
|
|
127
|
+
/**
|
|
128
|
+
* An optional mtime to set on the new directory
|
|
129
|
+
*/
|
|
32
130
|
mtime?: Mtime;
|
|
131
|
+
/**
|
|
132
|
+
* DAGs with a root block larger than this value will be sharded. Blocks
|
|
133
|
+
* smaller than this value will be regular UnixFS directories.
|
|
134
|
+
*/
|
|
33
135
|
shardSplitThresholdBytes: number;
|
|
34
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Options to pass to the rm command
|
|
139
|
+
*/
|
|
35
140
|
export interface RmOptions extends AbortOptions {
|
|
141
|
+
/**
|
|
142
|
+
* DAGs with a root block larger than this value will be sharded. Blocks
|
|
143
|
+
* smaller than this value will be regular UnixFS directories.
|
|
144
|
+
*/
|
|
36
145
|
shardSplitThresholdBytes: number;
|
|
37
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Options to pass to the stat command
|
|
149
|
+
*/
|
|
38
150
|
export interface StatOptions extends AbortOptions {
|
|
151
|
+
/**
|
|
152
|
+
* An optional path to allow statting paths inside directories
|
|
153
|
+
*/
|
|
39
154
|
path?: string;
|
|
40
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Statistics relating to a UnixFS DAG
|
|
158
|
+
*/
|
|
41
159
|
export interface UnixFSStats {
|
|
42
160
|
/**
|
|
43
161
|
* The file or directory CID
|
|
@@ -82,22 +200,234 @@ export interface UnixFSStats {
|
|
|
82
200
|
*/
|
|
83
201
|
unixfs?: import('ipfs-unixfs').UnixFS;
|
|
84
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* Options to pass to the touch command
|
|
205
|
+
*/
|
|
85
206
|
export interface TouchOptions extends AbortOptions {
|
|
207
|
+
/**
|
|
208
|
+
* Optional mtime to set on the DAG root, defaults to the current time
|
|
209
|
+
*/
|
|
86
210
|
mtime?: Mtime;
|
|
211
|
+
/**
|
|
212
|
+
* Optional path to set mtime on directory contents
|
|
213
|
+
*/
|
|
87
214
|
path?: string;
|
|
215
|
+
/**
|
|
216
|
+
* If the DAG is a directory and this is true, update the mtime on all contents
|
|
217
|
+
*/
|
|
88
218
|
recursive: boolean;
|
|
219
|
+
/**
|
|
220
|
+
* DAGs with a root block larger than this value will be sharded. Blocks
|
|
221
|
+
* smaller than this value will be regular UnixFS directories.
|
|
222
|
+
*/
|
|
89
223
|
shardSplitThresholdBytes: number;
|
|
90
224
|
}
|
|
225
|
+
/**
|
|
226
|
+
* The UnixFS interface provides familiar filesystem operations to make working with
|
|
227
|
+
* UnixFS DAGs simple and intuitive.
|
|
228
|
+
*/
|
|
91
229
|
export interface UnixFS {
|
|
230
|
+
/**
|
|
231
|
+
* Add all files and directories from the passed stream. This method wraps the
|
|
232
|
+
* `importer` export from the `ipfs-unixfs-importer` module - please see the docs
|
|
233
|
+
* for input/output types.
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
*
|
|
237
|
+
* ```typescript
|
|
238
|
+
* const source = [{
|
|
239
|
+
* path: './foo.txt',
|
|
240
|
+
* content: Uint8Array.from([0, 1, 2, 3])
|
|
241
|
+
* }, {
|
|
242
|
+
* path: './bar.txt',
|
|
243
|
+
* content: Uint8Array.from([4, 5, 6, 7])
|
|
244
|
+
* }]
|
|
245
|
+
*
|
|
246
|
+
* for await (const entry of fs.import(source)) {
|
|
247
|
+
* console.info(entry)
|
|
248
|
+
* }
|
|
249
|
+
* ```
|
|
250
|
+
*/
|
|
251
|
+
addAll: (source: ImportCandidateStream, options?: Partial<ImporterOptions>) => AsyncIterable<ImportResult>;
|
|
252
|
+
/**
|
|
253
|
+
* Add a single `Uint8Array` to your Helia node as a file.
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
*
|
|
257
|
+
* ```typescript
|
|
258
|
+
* const cid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
259
|
+
*
|
|
260
|
+
* console.info(cid)
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
addBytes: (bytes: Uint8Array, options?: Partial<ImporterOptions>) => Promise<CID>;
|
|
264
|
+
/**
|
|
265
|
+
* Add a stream of `Uint8Array` to your Helia node as a file.
|
|
266
|
+
*
|
|
267
|
+
* @example
|
|
268
|
+
*
|
|
269
|
+
* ```typescript
|
|
270
|
+
* import fs from 'node:fs'
|
|
271
|
+
*
|
|
272
|
+
* const stream = fs.createReadStream('./foo.txt')
|
|
273
|
+
* const cid = await fs.addByteStream(stream)
|
|
274
|
+
*
|
|
275
|
+
* console.info(cid)
|
|
276
|
+
* ```
|
|
277
|
+
*/
|
|
278
|
+
addByteStream: (bytes: ByteStream, options?: Partial<ImporterOptions>) => Promise<CID>;
|
|
279
|
+
/**
|
|
280
|
+
* Add a file to your Helia node with optional metadata.
|
|
281
|
+
*
|
|
282
|
+
* @example
|
|
283
|
+
*
|
|
284
|
+
* ```typescript
|
|
285
|
+
* const cid = await fs.addFile({
|
|
286
|
+
* path: './foo.txt'
|
|
287
|
+
* content: Uint8Array.from([0, 1, 2, 3]),
|
|
288
|
+
* mode: 0x755,
|
|
289
|
+
* mtime: {
|
|
290
|
+
* secs: 10n,
|
|
291
|
+
* nsecs: 0
|
|
292
|
+
* }
|
|
293
|
+
* })
|
|
294
|
+
*
|
|
295
|
+
* console.info(cid)
|
|
296
|
+
* ```
|
|
297
|
+
*/
|
|
298
|
+
addFile: (file: FileCandidate, options?: Partial<ImporterOptions>) => Promise<CID>;
|
|
299
|
+
/**
|
|
300
|
+
* Add a directory to your Helia node.
|
|
301
|
+
*
|
|
302
|
+
* @example
|
|
303
|
+
*
|
|
304
|
+
* ```typescript
|
|
305
|
+
* const cid = await fs.addDirectory()
|
|
306
|
+
*
|
|
307
|
+
* console.info(cid)
|
|
308
|
+
* ```
|
|
309
|
+
*/
|
|
310
|
+
addDirectory: (dir?: Partial<DirectoryCandidate>, options?: Partial<ImporterOptions>) => Promise<CID>;
|
|
311
|
+
/**
|
|
312
|
+
* Retrieve the contents of a file from your Helia node.
|
|
313
|
+
*
|
|
314
|
+
* @example
|
|
315
|
+
*
|
|
316
|
+
* ```typescript
|
|
317
|
+
* for await (const buf of fs.cat(cid)) {
|
|
318
|
+
* console.info(buf)
|
|
319
|
+
* }
|
|
320
|
+
* ```
|
|
321
|
+
*/
|
|
92
322
|
cat: (cid: CID, options?: Partial<CatOptions>) => AsyncIterable<Uint8Array>;
|
|
93
|
-
|
|
323
|
+
/**
|
|
324
|
+
* Change the permissions on a file or directory in a DAG
|
|
325
|
+
*
|
|
326
|
+
* @example
|
|
327
|
+
*
|
|
328
|
+
* ```typescript
|
|
329
|
+
* const beforeCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
330
|
+
* const beforeStats = await fs.stat(beforeCid)
|
|
331
|
+
*
|
|
332
|
+
* const afterCid = await fs.chmod(cid, 0x755)
|
|
333
|
+
* const afterStats = await fs.stat(afterCid)
|
|
334
|
+
*
|
|
335
|
+
* console.info(beforeCid, beforeStats)
|
|
336
|
+
* console.info(afterCid, afterStats)
|
|
337
|
+
* ```
|
|
338
|
+
*/
|
|
339
|
+
chmod: (cid: CID, mode: number, options?: Partial<ChmodOptions>) => Promise<CID>;
|
|
340
|
+
/**
|
|
341
|
+
* Add a file or directory to a target directory.
|
|
342
|
+
*
|
|
343
|
+
* @example
|
|
344
|
+
*
|
|
345
|
+
* ```typescript
|
|
346
|
+
* const fileCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
347
|
+
* const directoryCid = await fs.addDirectory()
|
|
348
|
+
*
|
|
349
|
+
* const updatedCid = await fs.cp(fileCid, directoryCid, 'foo.txt')
|
|
350
|
+
*
|
|
351
|
+
* console.info(updatedCid)
|
|
352
|
+
* ```
|
|
353
|
+
*/
|
|
94
354
|
cp: (source: CID, target: CID, name: string, options?: Partial<CpOptions>) => Promise<CID>;
|
|
355
|
+
/**
|
|
356
|
+
* List directory contents.
|
|
357
|
+
*
|
|
358
|
+
* @example
|
|
359
|
+
*
|
|
360
|
+
* ```typescript
|
|
361
|
+
* for await (const entry of fs.ls(directoryCid)) {
|
|
362
|
+
* console.info(etnry)
|
|
363
|
+
* }
|
|
364
|
+
* ```
|
|
365
|
+
*/
|
|
95
366
|
ls: (cid: CID, options?: Partial<LsOptions>) => AsyncIterable<UnixFSEntry>;
|
|
367
|
+
/**
|
|
368
|
+
* Make a new directory under an existing directory.
|
|
369
|
+
*
|
|
370
|
+
* @example
|
|
371
|
+
*
|
|
372
|
+
* ```typescript
|
|
373
|
+
* const directoryCid = await fs.addDirectory()
|
|
374
|
+
*
|
|
375
|
+
* const updatedCid = await fs.mkdir(directoryCid, 'new-dir')
|
|
376
|
+
*
|
|
377
|
+
* console.info(updatedCid)
|
|
378
|
+
* ```
|
|
379
|
+
*/
|
|
96
380
|
mkdir: (cid: CID, dirname: string, options?: Partial<MkdirOptions>) => Promise<CID>;
|
|
381
|
+
/**
|
|
382
|
+
* Remove a file or directory from an existing directory.
|
|
383
|
+
*
|
|
384
|
+
* @example
|
|
385
|
+
*
|
|
386
|
+
* ```typescript
|
|
387
|
+
* const directoryCid = await fs.addDirectory()
|
|
388
|
+
* const updatedCid = await fs.mkdir(directoryCid, 'new-dir')
|
|
389
|
+
*
|
|
390
|
+
* const finalCid = await fs.rm(updatedCid, 'new-dir')
|
|
391
|
+
*
|
|
392
|
+
* console.info(finalCid)
|
|
393
|
+
* ```
|
|
394
|
+
*/
|
|
97
395
|
rm: (cid: CID, path: string, options?: Partial<RmOptions>) => Promise<CID>;
|
|
396
|
+
/**
|
|
397
|
+
* Return statistics about a UnixFS DAG.
|
|
398
|
+
*
|
|
399
|
+
* @example
|
|
400
|
+
*
|
|
401
|
+
* ```typescript
|
|
402
|
+
* const fileCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
403
|
+
*
|
|
404
|
+
* const stats = await fs.stat(fileCid)
|
|
405
|
+
*
|
|
406
|
+
* console.info(stats)
|
|
407
|
+
* ```
|
|
408
|
+
*/
|
|
98
409
|
stat: (cid: CID, options?: Partial<StatOptions>) => Promise<UnixFSStats>;
|
|
410
|
+
/**
|
|
411
|
+
* Update the mtime of a UnixFS DAG
|
|
412
|
+
*
|
|
413
|
+
* @example
|
|
414
|
+
*
|
|
415
|
+
* ```typescript
|
|
416
|
+
* const beforeCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
417
|
+
* const beforeStats = await fs.stat(beforeCid)
|
|
418
|
+
*
|
|
419
|
+
* const afterCid = await fs.touch(beforeCid)
|
|
420
|
+
* const afterStats = await fs.stat(afterCid)
|
|
421
|
+
*
|
|
422
|
+
* console.info(beforeCid, beforeStats)
|
|
423
|
+
* console.info(afterCid, afterStats)
|
|
424
|
+
* ```
|
|
425
|
+
*/
|
|
99
426
|
touch: (cid: CID, options?: Partial<TouchOptions>) => Promise<CID>;
|
|
100
427
|
}
|
|
428
|
+
/**
|
|
429
|
+
* Create a {@link UnixFS} instance for use with {@link https://github.com/ipfs/helia Helia}
|
|
430
|
+
*/
|
|
101
431
|
export declare function unixfs(helia: {
|
|
102
432
|
blockstore: Blockstore;
|
|
103
433
|
}): UnixFS;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,3 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
*
|
|
4
|
+
* `@helia/unixfs` is an implementation of a {@link https://github.com/ipfs/specs/blob/main/UNIXFS.md UnixFS filesystem} compatible with {@link https://github.com/ipfs/helia Helia}.
|
|
5
|
+
*
|
|
6
|
+
* See the {@link UnixFS UnixFS interface} for all available operations.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { createHelia } from 'helia'
|
|
12
|
+
* import { unixfs } from '@helia/unixfs'
|
|
13
|
+
*
|
|
14
|
+
* const helia = createHelia({
|
|
15
|
+
* // ... helia config
|
|
16
|
+
* })
|
|
17
|
+
* const fs = unixfs(helia)
|
|
18
|
+
*
|
|
19
|
+
* // create an empty dir and a file, then add the file to the dir
|
|
20
|
+
* const emptyDirCid = await fs.addDirectory()
|
|
21
|
+
* const fileCid = await fs.addBytes(Uint8Array.from([0, 1, 2, 3]))
|
|
22
|
+
* const updateDirCid = await fs.cp(fileCid, emptyDirCid, 'foo.txt')
|
|
23
|
+
*
|
|
24
|
+
* // or doing the same thing as a stream
|
|
25
|
+
* for await (const entry of fs.addAll([{
|
|
26
|
+
* path: 'foo.txt',
|
|
27
|
+
* content: Uint8Array.from([0, 1, 2, 3])
|
|
28
|
+
* }])) {
|
|
29
|
+
* console.info(entry)
|
|
30
|
+
* }
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
import { addAll, addBytes, addByteStream, addDirectory, addFile } from './commands/add.js';
|
|
1
34
|
import { cat } from './commands/cat.js';
|
|
2
35
|
import { mkdir } from './commands/mkdir.js';
|
|
3
36
|
import { cp } from './commands/cp.js';
|
|
@@ -10,11 +43,26 @@ class DefaultUnixFS {
|
|
|
10
43
|
constructor(components) {
|
|
11
44
|
this.components = components;
|
|
12
45
|
}
|
|
46
|
+
async *addAll(source, options = {}) {
|
|
47
|
+
yield* addAll(source, this.components.blockstore, options);
|
|
48
|
+
}
|
|
49
|
+
async addBytes(bytes, options = {}) {
|
|
50
|
+
return await addBytes(bytes, this.components.blockstore, options);
|
|
51
|
+
}
|
|
52
|
+
async addByteStream(bytes, options = {}) {
|
|
53
|
+
return await addByteStream(bytes, this.components.blockstore, options);
|
|
54
|
+
}
|
|
55
|
+
async addFile(file, options = {}) {
|
|
56
|
+
return await addFile(file, this.components.blockstore, options);
|
|
57
|
+
}
|
|
58
|
+
async addDirectory(dir = {}, options = {}) {
|
|
59
|
+
return await addDirectory(dir, this.components.blockstore, options);
|
|
60
|
+
}
|
|
13
61
|
async *cat(cid, options = {}) {
|
|
14
62
|
yield* cat(cid, this.components.blockstore, options);
|
|
15
63
|
}
|
|
16
|
-
async chmod(
|
|
17
|
-
return await chmod(
|
|
64
|
+
async chmod(cid, mode, options = {}) {
|
|
65
|
+
return await chmod(cid, mode, this.components.blockstore, options);
|
|
18
66
|
}
|
|
19
67
|
async cp(source, target, name, options = {}) {
|
|
20
68
|
return await cp(source, target, name, this.components.blockstore, options);
|
|
@@ -35,6 +83,9 @@ class DefaultUnixFS {
|
|
|
35
83
|
return await touch(cid, this.components.blockstore, options);
|
|
36
84
|
}
|
|
37
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Create a {@link UnixFS} instance for use with {@link https://github.com/ipfs/helia Helia}
|
|
88
|
+
*/
|
|
38
89
|
export function unixfs(helia) {
|
|
39
90
|
return new DefaultUnixFS(helia);
|
|
40
91
|
}
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|