@helia/car 4.1.3 → 4.2.0-34d3ecd7
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/index.min.js.map +4 -4
- package/dist/src/car.d.ts.map +1 -1
- package/dist/src/car.js +4 -3
- package/dist/src/car.js.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/package.json +24 -31
- package/src/car.ts +4 -3
- package/src/index.ts +3 -3
- package/dist/typedoc-urls.json +0 -20
package/dist/src/car.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"car.d.ts","sourceRoot":"","sources":["../../src/car.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"car.d.ts","sourceRoot":"","sources":["../../src/car.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAUrC,OAAO,KAAK,EAAE,aAAa,EAAE,GAAG,IAAI,YAAY,EAAE,gBAAgB,EAAqC,MAAM,YAAY,CAAA;AACzH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAU,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AA2BtD,qBAAa,GAAI,YAAW,YAAY;;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAe;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG;IAK3C,MAAM,CAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,eAAe,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOhI,MAAM,CAAE,IAAI,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoF7G,MAAM,CAAE,IAAI,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC;CA4E5G"}
|
package/dist/src/car.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CarWriter } from '@ipld/car';
|
|
2
2
|
import drain from 'it-drain';
|
|
3
3
|
import map from 'it-map';
|
|
4
|
+
import toBuffer from 'it-to-buffer';
|
|
4
5
|
import { createUnsafe } from 'multiformats/block';
|
|
5
6
|
import defer from 'p-defer';
|
|
6
7
|
import PQueue from 'p-queue';
|
|
@@ -15,7 +16,7 @@ export class Car {
|
|
|
15
16
|
this.log = components.logger.forComponent('helia:car');
|
|
16
17
|
}
|
|
17
18
|
async import(reader, options) {
|
|
18
|
-
await drain(this.components.blockstore.putMany(map(reader.blocks(), ({ cid, bytes }) => ({ cid,
|
|
19
|
+
await drain(this.components.blockstore.putMany(map(reader.blocks(), ({ cid, bytes }) => ({ cid, bytes })), options));
|
|
19
20
|
}
|
|
20
21
|
async export(root, writer, options) {
|
|
21
22
|
const deferred = defer();
|
|
@@ -119,7 +120,7 @@ export class Car {
|
|
|
119
120
|
return;
|
|
120
121
|
}
|
|
121
122
|
const codec = await this.components.getCodec(cid.code);
|
|
122
|
-
const bytes = await this.components.blockstore.get(cid, options);
|
|
123
|
+
const bytes = await toBuffer(this.components.blockstore.get(cid, options));
|
|
123
124
|
// we are recursively traversing the dag
|
|
124
125
|
const decodedBlock = createUnsafe({ bytes, cid, codec });
|
|
125
126
|
for await (const nextCid of strategy.traverse(cid, decodedBlock)) {
|
|
@@ -139,7 +140,7 @@ export class Car {
|
|
|
139
140
|
return;
|
|
140
141
|
}
|
|
141
142
|
const codec = await this.components.getCodec(cid.code);
|
|
142
|
-
const bytes = await this.components.blockstore.get(cid, options);
|
|
143
|
+
const bytes = await toBuffer(this.components.blockstore.get(cid, options));
|
|
143
144
|
// Mark as processed
|
|
144
145
|
options?.blockFilter?.add(cid.multihash.bytes);
|
|
145
146
|
// Write to CAR
|
package/dist/src/car.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"car.js","sourceRoot":"","sources":["../../src/car.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,GAAG,MAAM,QAAQ,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,MAAM,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AAiCpE,MAAM,OAAO,GAAG;IACG,UAAU,CAAe;IACzB,GAAG,CAAQ;IAE5B,YAAa,UAAyB,EAAE,IAAS;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,MAAiC,EAAE,OAAqE;QACpH,MAAM,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAC5C,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"car.js","sourceRoot":"","sources":["../../src/car.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -76,10 +76,10 @@
|
|
|
76
76
|
* ```
|
|
77
77
|
*/
|
|
78
78
|
import type { CodecLoader } from '@helia/interface';
|
|
79
|
-
import type { PutManyBlocksProgressEvents, GetBlockProgressEvents } from '@helia/interface/blocks';
|
|
79
|
+
import type { PutManyBlocksProgressEvents, GetBlockProgressEvents, ProviderOptions } from '@helia/interface/blocks';
|
|
80
80
|
import type { CarWriter, CarReader } from '@ipld/car';
|
|
81
81
|
import type { AbortOptions, ComponentLogger } from '@libp2p/interface';
|
|
82
|
-
import type { Filter } from '@libp2p/utils
|
|
82
|
+
import type { Filter } from '@libp2p/utils';
|
|
83
83
|
import type { Blockstore } from 'interface-blockstore';
|
|
84
84
|
import type { BlockView } from 'multiformats/block/interface';
|
|
85
85
|
import type { CID } from 'multiformats/cid';
|
|
@@ -119,7 +119,7 @@ export interface ExportStrategy {
|
|
|
119
119
|
}
|
|
120
120
|
export * from './export-strategies/index.js';
|
|
121
121
|
export * from './traversal-strategies/index.js';
|
|
122
|
-
export interface ExportCarOptions extends AbortOptions, ProgressOptions<GetBlockProgressEvents
|
|
122
|
+
export interface ExportCarOptions extends AbortOptions, ProgressOptions<GetBlockProgressEvents>, ProviderOptions {
|
|
123
123
|
/**
|
|
124
124
|
* If true, the blockstore will not do any network requests.
|
|
125
125
|
*
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helia/car",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0-34d3ecd7",
|
|
4
4
|
"description": "Import/export car files from Helia",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/ipfs/helia/tree/main/packages/car#readme",
|
|
@@ -32,13 +32,6 @@
|
|
|
32
32
|
"import": "./dist/src/index.js"
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
|
-
"eslintConfig": {
|
|
36
|
-
"extends": "ipfs",
|
|
37
|
-
"parserOptions": {
|
|
38
|
-
"project": true,
|
|
39
|
-
"sourceType": "module"
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
35
|
"scripts": {
|
|
43
36
|
"clean": "aegir clean",
|
|
44
37
|
"lint": "aegir lint",
|
|
@@ -54,33 +47,33 @@
|
|
|
54
47
|
"test:electron-main": "aegir test -t electron-main"
|
|
55
48
|
},
|
|
56
49
|
"dependencies": {
|
|
57
|
-
"@helia/interface": "
|
|
58
|
-
"@ipld/car": "^5.
|
|
59
|
-
"@ipld/dag-pb": "^4.1.
|
|
60
|
-
"@libp2p/interface": "^
|
|
61
|
-
"@libp2p/utils": "^
|
|
62
|
-
"interface-blockstore": "^
|
|
63
|
-
"ipfs-unixfs": "^
|
|
64
|
-
"it-drain": "^3.0.
|
|
65
|
-
"it-map": "^3.1.
|
|
66
|
-
"
|
|
50
|
+
"@helia/interface": "5.4.0-34d3ecd7",
|
|
51
|
+
"@ipld/car": "^5.4.2",
|
|
52
|
+
"@ipld/dag-pb": "^4.1.5",
|
|
53
|
+
"@libp2p/interface": "^3.0.2",
|
|
54
|
+
"@libp2p/utils": "^7.0.5",
|
|
55
|
+
"interface-blockstore": "^6.0.1",
|
|
56
|
+
"ipfs-unixfs": "^12.0.0",
|
|
57
|
+
"it-drain": "^3.0.10",
|
|
58
|
+
"it-map": "^3.1.4",
|
|
59
|
+
"it-to-buffer": "^4.0.10",
|
|
60
|
+
"multiformats": "^13.4.1",
|
|
67
61
|
"p-defer": "^4.0.1",
|
|
68
|
-
"p-queue": "^
|
|
62
|
+
"p-queue": "^9.0.0",
|
|
69
63
|
"progress-events": "^1.0.1"
|
|
70
64
|
},
|
|
71
65
|
"devDependencies": {
|
|
72
|
-
"@helia/mfs": "
|
|
73
|
-
"@helia/unixfs": "
|
|
74
|
-
"@ipld/dag-cbor": "^9.2.
|
|
75
|
-
"@libp2p/logger": "^
|
|
76
|
-
"aegir": "^47.0.
|
|
77
|
-
"blockstore-core": "^
|
|
78
|
-
"datastore-core": "^
|
|
79
|
-
"ipfs-unixfs-importer": "^
|
|
80
|
-
"it-foreach": "^2.1.
|
|
81
|
-
"it-length": "^3.0.
|
|
82
|
-
"
|
|
83
|
-
"sinon": "^20.0.0"
|
|
66
|
+
"@helia/mfs": "5.1.0-34d3ecd7",
|
|
67
|
+
"@helia/unixfs": "5.1.0-34d3ecd7",
|
|
68
|
+
"@ipld/dag-cbor": "^9.2.5",
|
|
69
|
+
"@libp2p/logger": "^6.0.5",
|
|
70
|
+
"aegir": "^47.0.22",
|
|
71
|
+
"blockstore-core": "^6.0.2",
|
|
72
|
+
"datastore-core": "^11.0.2",
|
|
73
|
+
"ipfs-unixfs-importer": "^16.0.1",
|
|
74
|
+
"it-foreach": "^2.1.4",
|
|
75
|
+
"it-length": "^3.0.9",
|
|
76
|
+
"sinon": "^21.0.0"
|
|
84
77
|
},
|
|
85
78
|
"sideEffects": false
|
|
86
79
|
}
|
package/src/car.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CarWriter } from '@ipld/car'
|
|
2
2
|
import drain from 'it-drain'
|
|
3
3
|
import map from 'it-map'
|
|
4
|
+
import toBuffer from 'it-to-buffer'
|
|
4
5
|
import { createUnsafe } from 'multiformats/block'
|
|
5
6
|
import defer from 'p-defer'
|
|
6
7
|
import PQueue from 'p-queue'
|
|
@@ -50,7 +51,7 @@ export class Car implements CarInterface {
|
|
|
50
51
|
|
|
51
52
|
async import (reader: Pick<CarReader, 'blocks'>, options?: AbortOptions & ProgressOptions<PutManyBlocksProgressEvents>): Promise<void> {
|
|
52
53
|
await drain(this.components.blockstore.putMany(
|
|
53
|
-
map(reader.blocks(), ({ cid, bytes }) => ({ cid,
|
|
54
|
+
map(reader.blocks(), ({ cid, bytes }) => ({ cid, bytes })),
|
|
54
55
|
options
|
|
55
56
|
))
|
|
56
57
|
}
|
|
@@ -169,7 +170,7 @@ export class Car implements CarInterface {
|
|
|
169
170
|
}
|
|
170
171
|
|
|
171
172
|
const codec = await this.components.getCodec(cid.code)
|
|
172
|
-
const bytes = await this.components.blockstore.get(cid, options)
|
|
173
|
+
const bytes = await toBuffer(this.components.blockstore.get(cid, options))
|
|
173
174
|
|
|
174
175
|
// we are recursively traversing the dag
|
|
175
176
|
const decodedBlock = createUnsafe({ bytes, cid, codec })
|
|
@@ -193,7 +194,7 @@ export class Car implements CarInterface {
|
|
|
193
194
|
}
|
|
194
195
|
|
|
195
196
|
const codec = await this.components.getCodec(cid.code)
|
|
196
|
-
const bytes = await this.components.blockstore.get(cid, options)
|
|
197
|
+
const bytes = await toBuffer(this.components.blockstore.get(cid, options))
|
|
197
198
|
|
|
198
199
|
// Mark as processed
|
|
199
200
|
options?.blockFilter?.add(cid.multihash.bytes)
|
package/src/index.ts
CHANGED
|
@@ -78,10 +78,10 @@
|
|
|
78
78
|
|
|
79
79
|
import { Car as CarClass } from './car.js'
|
|
80
80
|
import type { CodecLoader } from '@helia/interface'
|
|
81
|
-
import type { PutManyBlocksProgressEvents, GetBlockProgressEvents } from '@helia/interface/blocks'
|
|
81
|
+
import type { PutManyBlocksProgressEvents, GetBlockProgressEvents, ProviderOptions } from '@helia/interface/blocks'
|
|
82
82
|
import type { CarWriter, CarReader } from '@ipld/car'
|
|
83
83
|
import type { AbortOptions, ComponentLogger } from '@libp2p/interface'
|
|
84
|
-
import type { Filter } from '@libp2p/utils
|
|
84
|
+
import type { Filter } from '@libp2p/utils'
|
|
85
85
|
import type { Blockstore } from 'interface-blockstore'
|
|
86
86
|
import type { BlockView } from 'multiformats/block/interface'
|
|
87
87
|
import type { CID } from 'multiformats/cid'
|
|
@@ -127,7 +127,7 @@ export interface ExportStrategy {
|
|
|
127
127
|
export * from './export-strategies/index.js'
|
|
128
128
|
export * from './traversal-strategies/index.js'
|
|
129
129
|
|
|
130
|
-
export interface ExportCarOptions extends AbortOptions, ProgressOptions<GetBlockProgressEvents
|
|
130
|
+
export interface ExportCarOptions extends AbortOptions, ProgressOptions<GetBlockProgressEvents>, ProviderOptions {
|
|
131
131
|
|
|
132
132
|
/**
|
|
133
133
|
* If true, the blockstore will not do any network requests.
|
package/dist/typedoc-urls.json
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"BlockExporter": "https://ipfs.github.io/helia/classes/_helia_car.BlockExporter.html",
|
|
3
|
-
"CIDPath": "https://ipfs.github.io/helia/classes/_helia_car.CIDPath.html",
|
|
4
|
-
"GraphSearch": "https://ipfs.github.io/helia/classes/_helia_car.GraphSearch.html",
|
|
5
|
-
"SubgraphExporter": "https://ipfs.github.io/helia/classes/_helia_car.SubgraphExporter.html",
|
|
6
|
-
"UnixFSExporter": "https://ipfs.github.io/helia/classes/_helia_car.UnixFSExporter.html",
|
|
7
|
-
"UnixFSPath": "https://ipfs.github.io/helia/classes/_helia_car.UnixFSPath.html",
|
|
8
|
-
"Car": "https://ipfs.github.io/helia/interfaces/_helia_car.Car.html",
|
|
9
|
-
".:Car": "https://ipfs.github.io/helia/interfaces/_helia_car.Car.html",
|
|
10
|
-
"CarComponents": "https://ipfs.github.io/helia/interfaces/_helia_car.CarComponents.html",
|
|
11
|
-
".:CarComponents": "https://ipfs.github.io/helia/interfaces/_helia_car.CarComponents.html",
|
|
12
|
-
"ExportCarOptions": "https://ipfs.github.io/helia/interfaces/_helia_car.ExportCarOptions.html",
|
|
13
|
-
".:ExportCarOptions": "https://ipfs.github.io/helia/interfaces/_helia_car.ExportCarOptions.html",
|
|
14
|
-
"ExportStrategy": "https://ipfs.github.io/helia/interfaces/_helia_car.ExportStrategy.html",
|
|
15
|
-
".:ExportStrategy": "https://ipfs.github.io/helia/interfaces/_helia_car.ExportStrategy.html",
|
|
16
|
-
"TraversalStrategy": "https://ipfs.github.io/helia/interfaces/_helia_car.TraversalStrategy.html",
|
|
17
|
-
".:TraversalStrategy": "https://ipfs.github.io/helia/interfaces/_helia_car.TraversalStrategy.html",
|
|
18
|
-
"car": "https://ipfs.github.io/helia/functions/_helia_car.car.html",
|
|
19
|
-
".:car": "https://ipfs.github.io/helia/functions/_helia_car.car.html"
|
|
20
|
-
}
|