@helia/utils 2.2.5-7676912e → 2.2.5
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 +4 -4
- package/dist/index.min.js.map +3 -3
- package/dist/src/graph-walker.d.ts +2 -30
- package/dist/src/graph-walker.d.ts.map +1 -1
- package/dist/src/graph-walker.js +5 -26
- package/dist/src/graph-walker.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/typedoc-urls.json +18 -0
- package/package.json +2 -2
- package/src/graph-walker.ts +5 -28
- package/src/index.ts +1 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Queue } from '@libp2p/utils';
|
|
2
1
|
import type { CodecLoader } from '@helia/interface';
|
|
3
2
|
import type { Blockstore } from 'interface-blockstore';
|
|
4
3
|
import type { AbortOptions } from 'interface-store';
|
|
@@ -17,36 +16,9 @@ export interface GraphNode<T = unknown, C extends number = number, A extends num
|
|
|
17
16
|
export interface GraphWalker {
|
|
18
17
|
walk<T = any>(cid: CID, options?: WalkOptions<T>): AsyncGenerator<GraphNode<T>>;
|
|
19
18
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
* sibling blocks
|
|
23
|
-
*/
|
|
24
|
-
export declare function depthFirstWalker(init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker;
|
|
25
|
-
/**
|
|
26
|
-
* A breadth-first walker processes sibling blocks before child blocks
|
|
27
|
-
*/
|
|
28
|
-
export declare function breadthFirstWalker(init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker;
|
|
29
|
-
/**
|
|
30
|
-
* A natural order walker processes blocks in the order defined by the codec and
|
|
31
|
-
* does not try to sort them
|
|
32
|
-
*/
|
|
33
|
-
export declare function naturalOrderWalker(init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker;
|
|
34
|
-
interface JobOptions extends AbortOptions {
|
|
35
|
-
cid: CID;
|
|
36
|
-
depth: number;
|
|
37
|
-
path: CID[];
|
|
38
|
-
}
|
|
19
|
+
export declare function depthFirstWalker(components: GraphWalkerComponents, init?: GraphWalkerInit): GraphWalker;
|
|
20
|
+
export declare function breadthFirstWalker(components: GraphWalkerComponents, init?: GraphWalkerInit): GraphWalker;
|
|
39
21
|
export interface WalkOptions<T> extends AbortOptions {
|
|
40
22
|
includeChild?(child: CID, parent: BlockView<T, number, number, 0 | 1>): boolean;
|
|
41
23
|
}
|
|
42
|
-
declare abstract class AbstractGraphWalker {
|
|
43
|
-
private readonly components;
|
|
44
|
-
constructor(components: GraphWalkerComponents, init?: GraphWalkerInit);
|
|
45
|
-
walk<T = any>(cid: CID, options?: WalkOptions<T>): AsyncGenerator<GraphNode<T>>;
|
|
46
|
-
abstract getQueue<T>(): Queue<GraphNode<T> | undefined, JobOptions>;
|
|
47
|
-
}
|
|
48
|
-
export declare class NaturalOrderGraphWalker extends AbstractGraphWalker {
|
|
49
|
-
getQueue<T>(): Queue<GraphNode<T> | undefined, JobOptions>;
|
|
50
|
-
}
|
|
51
|
-
export {};
|
|
52
24
|
//# sourceMappingURL=graph-walker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-walker.d.ts","sourceRoot":"","sources":["../../src/graph-walker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"graph-walker.d.ts","sourceRoot":"","sources":["../../src/graph-walker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3D,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,UAAU,CAAA;IACtB,QAAQ,EAAE,WAAW,CAAA;CACtB;AAED,MAAM,WAAW,eAAe;CAE/B;AAED,MAAM,WAAW,SAAS,CAAE,CAAC,GAAG,OAAO,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,OAAO,GAAG,CAAC,GAAG,CAAC;IACtH,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,EAAE,CAAA;CACZ;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAE,CAAC,GAAG,GAAG,EAAG,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;CAClF;AAED,wBAAgB,gBAAgB,CAAE,UAAU,EAAE,qBAAqB,EAAE,IAAI,GAAE,eAAoB,GAAG,WAAW,CAE5G;AAED,wBAAgB,kBAAkB,CAAE,UAAU,EAAE,qBAAqB,EAAE,IAAI,GAAE,eAAoB,GAAG,WAAW,CAE9G;AAQD,MAAM,WAAW,WAAW,CAAC,CAAC,CAAE,SAAQ,YAAY;IAClD,YAAY,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAA;CAChF"}
|
package/dist/src/graph-walker.js
CHANGED
|
@@ -2,29 +2,15 @@ import { Queue } from '@libp2p/utils';
|
|
|
2
2
|
import filter from 'it-filter';
|
|
3
3
|
import toBuffer from 'it-to-buffer';
|
|
4
4
|
import { createUnsafe } from 'multiformats/block';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
* sibling blocks
|
|
8
|
-
*/
|
|
9
|
-
export function depthFirstWalker(init) {
|
|
10
|
-
return (components) => new DepthFirstGraphWalker(components, init);
|
|
5
|
+
export function depthFirstWalker(components, init = {}) {
|
|
6
|
+
return new DepthFirstGraphWalker(components, init);
|
|
11
7
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
*/
|
|
15
|
-
export function breadthFirstWalker(init) {
|
|
16
|
-
return (components) => new BreadthFirstGraphWalker(components, init);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* A natural order walker processes blocks in the order defined by the codec and
|
|
20
|
-
* does not try to sort them
|
|
21
|
-
*/
|
|
22
|
-
export function naturalOrderWalker(init) {
|
|
23
|
-
return (components) => new NaturalOrderGraphWalker(components, init);
|
|
8
|
+
export function breadthFirstWalker(components, init = {}) {
|
|
9
|
+
return new BreadthFirstGraphWalker(components, init);
|
|
24
10
|
}
|
|
25
11
|
class AbstractGraphWalker {
|
|
26
12
|
components;
|
|
27
|
-
constructor(components, init
|
|
13
|
+
constructor(components, init) {
|
|
28
14
|
this.components = components;
|
|
29
15
|
}
|
|
30
16
|
async *walk(cid, options) {
|
|
@@ -119,11 +105,4 @@ class BreadthFirstGraphWalker extends AbstractGraphWalker {
|
|
|
119
105
|
});
|
|
120
106
|
}
|
|
121
107
|
}
|
|
122
|
-
export class NaturalOrderGraphWalker extends AbstractGraphWalker {
|
|
123
|
-
getQueue() {
|
|
124
|
-
return new Queue({
|
|
125
|
-
concurrency: 1
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
108
|
//# sourceMappingURL=graph-walker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-walker.js","sourceRoot":"","sources":["../../src/graph-walker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,QAAQ,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAyBjD
|
|
1
|
+
{"version":3,"file":"graph-walker.js","sourceRoot":"","sources":["../../src/graph-walker.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ import type { MultihashHasher } from 'multiformats/hashes/interface';
|
|
|
21
21
|
export { AbstractSession } from './abstract-session.js';
|
|
22
22
|
export type { AbstractCreateSessionOptions, BlockstoreSessionEvents, AbstractSessionComponents } from './abstract-session.js';
|
|
23
23
|
export type { BlockStorage, BlockStorageInit };
|
|
24
|
-
export { breadthFirstWalker, depthFirstWalker
|
|
24
|
+
export { breadthFirstWalker, depthFirstWalker } from './graph-walker.ts';
|
|
25
25
|
export type { GraphWalkerComponents, GraphWalkerInit, GraphNode, GraphWalker } from './graph-walker.ts';
|
|
26
26
|
/**
|
|
27
27
|
* Options used to create a Helia node.
|
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;;;;;GAKG;AAEH,OAAO,EAAwD,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAO3G,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAK3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,IAAI,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAClI,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,EAAU,OAAO,EAAe,MAAM,mBAAmB,CAAA;AAC9G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,YAAY,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AAE7H,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAE9C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -17,7 +17,7 @@ import { getCodec } from './utils/get-codec.js';
|
|
|
17
17
|
import { getHasher } from './utils/get-hasher.js';
|
|
18
18
|
import { NetworkedStorage } from './utils/networked-storage.js';
|
|
19
19
|
export { AbstractSession } from './abstract-session.js';
|
|
20
|
-
export { breadthFirstWalker, depthFirstWalker
|
|
20
|
+
export { breadthFirstWalker, depthFirstWalker } from "./graph-walker.js";
|
|
21
21
|
export class Helia {
|
|
22
22
|
libp2p;
|
|
23
23
|
blockstore;
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC3G,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAe/D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAKvD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"AbstractSession": "https://ipfs.github.io/helia/classes/_helia_utils.AbstractSession.html",
|
|
3
|
+
"Helia": "https://ipfs.github.io/helia/classes/_helia_utils.Helia.html",
|
|
4
|
+
".:Helia": "https://ipfs.github.io/helia/classes/_helia_utils.Helia.html",
|
|
5
|
+
"AbstractCreateSessionOptions": "https://ipfs.github.io/helia/interfaces/_helia_utils.AbstractCreateSessionOptions.html",
|
|
6
|
+
"AbstractSessionComponents": "https://ipfs.github.io/helia/interfaces/_helia_utils.AbstractSessionComponents.html",
|
|
7
|
+
"BlockStorage": "https://ipfs.github.io/helia/interfaces/_helia_utils.BlockStorage.html",
|
|
8
|
+
"BlockStorageInit": "https://ipfs.github.io/helia/interfaces/_helia_utils.BlockStorageInit.html",
|
|
9
|
+
"BlockstoreSessionEvents": "https://ipfs.github.io/helia/interfaces/_helia_utils.BlockstoreSessionEvents.html",
|
|
10
|
+
"GraphNode": "https://ipfs.github.io/helia/interfaces/_helia_utils.GraphNode.html",
|
|
11
|
+
"GraphWalker": "https://ipfs.github.io/helia/interfaces/_helia_utils.GraphWalker.html",
|
|
12
|
+
"GraphWalkerComponents": "https://ipfs.github.io/helia/interfaces/_helia_utils.GraphWalkerComponents.html",
|
|
13
|
+
"GraphWalkerInit": "https://ipfs.github.io/helia/interfaces/_helia_utils.GraphWalkerInit.html",
|
|
14
|
+
"HeliaInit": "https://ipfs.github.io/helia/interfaces/_helia_utils.HeliaInit.html",
|
|
15
|
+
".:HeliaInit": "https://ipfs.github.io/helia/interfaces/helia.HeliaInit.html",
|
|
16
|
+
"breadthFirstWalker": "https://ipfs.github.io/helia/functions/_helia_utils.breadthFirstWalker.html",
|
|
17
|
+
"depthFirstWalker": "https://ipfs.github.io/helia/functions/_helia_utils.depthFirstWalker.html"
|
|
18
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helia/utils",
|
|
3
|
-
"version": "2.2.5
|
|
3
|
+
"version": "2.2.5",
|
|
4
4
|
"description": "Shared code that implements the Helia API",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/ipfs/helia/tree/main/packages/utils#readme",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"test:electron-main": "aegir test -t electron-main"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@helia/interface": "6.0.2
|
|
50
|
+
"@helia/interface": "^6.0.2",
|
|
51
51
|
"@ipld/dag-cbor": "^9.2.5",
|
|
52
52
|
"@ipld/dag-json": "^10.2.5",
|
|
53
53
|
"@ipld/dag-pb": "^4.1.5",
|
package/src/graph-walker.ts
CHANGED
|
@@ -26,27 +26,12 @@ export interface GraphWalker {
|
|
|
26
26
|
walk <T = any> (cid: CID, options?: WalkOptions<T>): AsyncGenerator<GraphNode<T>>
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
* sibling blocks
|
|
32
|
-
*/
|
|
33
|
-
export function depthFirstWalker (init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker {
|
|
34
|
-
return (components) => new DepthFirstGraphWalker(components, init)
|
|
29
|
+
export function depthFirstWalker (components: GraphWalkerComponents, init: GraphWalkerInit = {}): GraphWalker {
|
|
30
|
+
return new DepthFirstGraphWalker(components, init)
|
|
35
31
|
}
|
|
36
32
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*/
|
|
40
|
-
export function breadthFirstWalker (init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker {
|
|
41
|
-
return (components) => new BreadthFirstGraphWalker(components, init)
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* A natural order walker processes blocks in the order defined by the codec and
|
|
46
|
-
* does not try to sort them
|
|
47
|
-
*/
|
|
48
|
-
export function naturalOrderWalker (init?: GraphWalkerInit): (components: GraphWalkerComponents) => GraphWalker {
|
|
49
|
-
return (components) => new NaturalOrderGraphWalker(components, init)
|
|
33
|
+
export function breadthFirstWalker (components: GraphWalkerComponents, init: GraphWalkerInit = {}): GraphWalker {
|
|
34
|
+
return new BreadthFirstGraphWalker(components, init)
|
|
50
35
|
}
|
|
51
36
|
|
|
52
37
|
interface JobOptions extends AbortOptions {
|
|
@@ -62,7 +47,7 @@ export interface WalkOptions<T> extends AbortOptions {
|
|
|
62
47
|
abstract class AbstractGraphWalker {
|
|
63
48
|
private readonly components: GraphWalkerComponents
|
|
64
49
|
|
|
65
|
-
constructor (components: GraphWalkerComponents, init: GraphWalkerInit
|
|
50
|
+
constructor (components: GraphWalkerComponents, init: GraphWalkerInit) {
|
|
66
51
|
this.components = components
|
|
67
52
|
}
|
|
68
53
|
|
|
@@ -171,11 +156,3 @@ class BreadthFirstGraphWalker extends AbstractGraphWalker {
|
|
|
171
156
|
})
|
|
172
157
|
}
|
|
173
158
|
}
|
|
174
|
-
|
|
175
|
-
export class NaturalOrderGraphWalker extends AbstractGraphWalker {
|
|
176
|
-
getQueue<T>(): Queue<GraphNode<T> | undefined, JobOptions> {
|
|
177
|
-
return new Queue<GraphNode<T> | undefined, JobOptions>({
|
|
178
|
-
concurrency: 1
|
|
179
|
-
})
|
|
180
|
-
}
|
|
181
|
-
}
|
package/src/index.ts
CHANGED
|
@@ -36,7 +36,7 @@ export type { AbstractCreateSessionOptions, BlockstoreSessionEvents, AbstractSes
|
|
|
36
36
|
|
|
37
37
|
export type { BlockStorage, BlockStorageInit }
|
|
38
38
|
|
|
39
|
-
export { breadthFirstWalker, depthFirstWalker
|
|
39
|
+
export { breadthFirstWalker, depthFirstWalker } from './graph-walker.ts'
|
|
40
40
|
export type { GraphWalkerComponents, GraphWalkerInit, GraphNode, GraphWalker } from './graph-walker.ts'
|
|
41
41
|
|
|
42
42
|
/**
|