helia 7.0.1 → 7.0.2
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 +9 -9
- package/dist/index.min.js.map +3 -3
- package/dist/src/helia.d.ts +3 -2
- package/dist/src/helia.d.ts.map +1 -1
- package/dist/src/helia.js +16 -9
- package/dist/src/helia.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/package.json +6 -6
- package/src/helia.ts +20 -11
- package/src/version.ts +1 -1
package/dist/src/helia.d.ts
CHANGED
|
@@ -149,14 +149,15 @@ export declare class Helia implements HeliaInterface {
|
|
|
149
149
|
private readonly log;
|
|
150
150
|
private readonly blockBrokers;
|
|
151
151
|
private readonly mixins;
|
|
152
|
+
private readonly components;
|
|
152
153
|
constructor(init: HeliaInit & {
|
|
153
154
|
name: string;
|
|
154
155
|
version: string;
|
|
155
156
|
});
|
|
156
157
|
hasRouter(name: string): boolean;
|
|
157
|
-
addRouter(router: Router): void;
|
|
158
|
+
addRouter(router: Router | ((components: any) => Router)): void;
|
|
158
159
|
hasBlockBroker(name: string): boolean;
|
|
159
|
-
addBlockBroker(blockBroker: BlockBroker): void;
|
|
160
|
+
addBlockBroker(blockBroker: BlockBroker | ((components: any) => BlockBroker)): void;
|
|
160
161
|
addMixin(mixin: HeliaMixin): void;
|
|
161
162
|
start(): Promise<this>;
|
|
162
163
|
stop(): Promise<this>;
|
package/dist/src/helia.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helia.d.ts","sourceRoot":"","sources":["../../src/helia.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"helia.d.ts","sourceRoot":"","sources":["../../src/helia.ts"],"names":[],"mappings":"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"}
|
package/dist/src/helia.js
CHANGED
|
@@ -40,6 +40,7 @@ export class Helia {
|
|
|
40
40
|
log;
|
|
41
41
|
blockBrokers;
|
|
42
42
|
mixins;
|
|
43
|
+
components;
|
|
43
44
|
constructor(init) {
|
|
44
45
|
this.info = {
|
|
45
46
|
name: init.name,
|
|
@@ -56,7 +57,7 @@ export class Helia {
|
|
|
56
57
|
this.status = 'stopped';
|
|
57
58
|
this.mixins = [];
|
|
58
59
|
// @ts-expect-error routing and keychain are not set
|
|
59
|
-
|
|
60
|
+
this.components = {
|
|
60
61
|
blockstore: init.blockstore ?? new MemoryBlockstore(),
|
|
61
62
|
datastore: init.datastore ?? new MemoryDatastore(),
|
|
62
63
|
logger: this.logger,
|
|
@@ -68,11 +69,11 @@ export class Helia {
|
|
|
68
69
|
metrics: this.metrics,
|
|
69
70
|
...(init.components ?? {})
|
|
70
71
|
};
|
|
71
|
-
this.keychain = components.keychain = keychain()(components);
|
|
72
|
-
this.routing = components.routing = new RoutingClass(components, {
|
|
72
|
+
this.keychain = this.components.keychain = keychain()(this.components);
|
|
73
|
+
this.routing = this.components.routing = new RoutingClass(this.components, {
|
|
73
74
|
routers: (init.routers ?? []).flatMap((router) => {
|
|
74
75
|
if (typeof router === 'function') {
|
|
75
|
-
router = router(components);
|
|
76
|
+
router = router(this.components);
|
|
76
77
|
}
|
|
77
78
|
// if the router itself is a router
|
|
78
79
|
const routers = [
|
|
@@ -82,29 +83,35 @@ export class Helia {
|
|
|
82
83
|
}),
|
|
83
84
|
providerLookupConcurrency: init.providerLookupConcurrency
|
|
84
85
|
});
|
|
85
|
-
this.blockBrokers = components.blockBrokers = (init.blockBrokers ?? []).map((broker) => {
|
|
86
|
+
this.blockBrokers = this.components.blockBrokers = (init.blockBrokers ?? []).map((broker) => {
|
|
86
87
|
if (typeof broker === 'function') {
|
|
87
|
-
broker = broker(components);
|
|
88
|
+
broker = broker(this.components);
|
|
88
89
|
}
|
|
89
90
|
return broker;
|
|
90
91
|
});
|
|
91
|
-
const networkedStorage = new NetworkedStorage(components, init);
|
|
92
|
-
this.pins = new PinsImpl(components.datastore, networkedStorage, this.getCodec);
|
|
92
|
+
const networkedStorage = new NetworkedStorage(this.components, init);
|
|
93
|
+
this.pins = new PinsImpl(this.components.datastore, networkedStorage, this.getCodec);
|
|
93
94
|
this.blockstore = new BlockStorage(networkedStorage, this.pins, this.routing, {
|
|
94
95
|
holdGcLock: init.holdGcLock ?? true
|
|
95
96
|
});
|
|
96
|
-
this.datastore = components.datastore;
|
|
97
|
+
this.datastore = this.components.datastore;
|
|
97
98
|
}
|
|
98
99
|
hasRouter(name) {
|
|
99
100
|
return this.routing.hasRouter(name);
|
|
100
101
|
}
|
|
101
102
|
addRouter(router) {
|
|
103
|
+
if (typeof router === 'function') {
|
|
104
|
+
router = router(this.components);
|
|
105
|
+
}
|
|
102
106
|
this.routing.addRouter(router);
|
|
103
107
|
}
|
|
104
108
|
hasBlockBroker(name) {
|
|
105
109
|
return this.blockBrokers.findIndex(b => b.name === name) !== -1;
|
|
106
110
|
}
|
|
107
111
|
addBlockBroker(blockBroker) {
|
|
112
|
+
if (typeof blockBroker === 'function') {
|
|
113
|
+
blockBroker = blockBroker(this.components);
|
|
114
|
+
}
|
|
108
115
|
this.blockBrokers.push(blockBroker);
|
|
109
116
|
}
|
|
110
117
|
addMixin(mixin) {
|
package/dist/src/helia.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helia.js","sourceRoot":"","sources":["../../src/helia.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAA;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,cAAc,CAAA;AAgKtD,MAAM,OAAO,KAAK;IACT,IAAI,CAAU;IACd,UAAU,CAAc;IACxB,SAAS,CAAW;IACpB,MAAM,CAAsC;IAC5C,IAAI,CAAM;IACV,MAAM,CAAiB;IACvB,OAAO,CAAc;IACrB,QAAQ,CAAa;IACrB,SAAS,CAAc;IACvB,SAAS,CAAc;IACvB,GAAG,CAAK;IACR,QAAQ,CAAU;IAClB,OAAO,CAAU;IACjB,MAAM,CAAiD;IAC7C,GAAG,CAAQ;IACX,YAAY,CAAe;IAC3B,MAAM,CAAc;
|
|
1
|
+
{"version":3,"file":"helia.js","sourceRoot":"","sources":["../../src/helia.ts"],"names":[],"mappings":"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"}
|
package/dist/src/version.d.ts
CHANGED
package/dist/src/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "helia",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.2",
|
|
4
4
|
"description": "An implementation of IPFS in JavaScript",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/ipfs/helia/tree/main/packages/helia#readme",
|
|
@@ -49,11 +49,11 @@
|
|
|
49
49
|
"prepublishOnly": "node scripts/update-version.js && npm run build"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@helia/bitswap": "^4.0.
|
|
53
|
-
"@helia/http": "^4.0.
|
|
54
|
-
"@helia/interface": "^7.0.
|
|
55
|
-
"@helia/libp2p": "^1.0.
|
|
56
|
-
"@helia/utils": "^3.0.
|
|
52
|
+
"@helia/bitswap": "^4.0.2",
|
|
53
|
+
"@helia/http": "^4.0.2",
|
|
54
|
+
"@helia/interface": "^7.0.2",
|
|
55
|
+
"@helia/libp2p": "^1.0.2",
|
|
56
|
+
"@helia/utils": "^3.0.2",
|
|
57
57
|
"@ipld/dag-cbor": "^10.0.1",
|
|
58
58
|
"@ipld/dag-json": "^11.0.0",
|
|
59
59
|
"@ipld/dag-pb": "^4.1.7",
|
package/src/helia.ts
CHANGED
|
@@ -200,6 +200,7 @@ export class Helia implements HeliaInterface {
|
|
|
200
200
|
private readonly log: Logger
|
|
201
201
|
private readonly blockBrokers: BlockBroker[]
|
|
202
202
|
private readonly mixins: HeliaMixin[]
|
|
203
|
+
private readonly components: Components
|
|
203
204
|
|
|
204
205
|
constructor (init: HeliaInit & { name: string, version: string }) {
|
|
205
206
|
this.info = {
|
|
@@ -218,7 +219,7 @@ export class Helia implements HeliaInterface {
|
|
|
218
219
|
this.mixins = []
|
|
219
220
|
|
|
220
221
|
// @ts-expect-error routing and keychain are not set
|
|
221
|
-
|
|
222
|
+
this.components = {
|
|
222
223
|
blockstore: init.blockstore ?? new MemoryBlockstore(),
|
|
223
224
|
datastore: init.datastore ?? new MemoryDatastore(),
|
|
224
225
|
logger: this.logger,
|
|
@@ -231,12 +232,12 @@ export class Helia implements HeliaInterface {
|
|
|
231
232
|
...(init.components ?? {})
|
|
232
233
|
}
|
|
233
234
|
|
|
234
|
-
this.keychain = components.keychain = keychain()(components)
|
|
235
|
+
this.keychain = this.components.keychain = keychain()(this.components)
|
|
235
236
|
|
|
236
|
-
this.routing = components.routing = new RoutingClass(components, {
|
|
237
|
+
this.routing = this.components.routing = new RoutingClass(this.components, {
|
|
237
238
|
routers: (init.routers ?? []).flatMap((router: Router | ((components: any) => Router)) => {
|
|
238
239
|
if (typeof router === 'function') {
|
|
239
|
-
router = router(components)
|
|
240
|
+
router = router(this.components)
|
|
240
241
|
}
|
|
241
242
|
|
|
242
243
|
// if the router itself is a router
|
|
@@ -249,27 +250,31 @@ export class Helia implements HeliaInterface {
|
|
|
249
250
|
providerLookupConcurrency: init.providerLookupConcurrency
|
|
250
251
|
})
|
|
251
252
|
|
|
252
|
-
this.blockBrokers = components.blockBrokers = (init.blockBrokers ?? []).map((broker) => {
|
|
253
|
+
this.blockBrokers = this.components.blockBrokers = (init.blockBrokers ?? []).map((broker) => {
|
|
253
254
|
if (typeof broker === 'function') {
|
|
254
|
-
broker = broker(components)
|
|
255
|
+
broker = broker(this.components)
|
|
255
256
|
}
|
|
256
257
|
|
|
257
258
|
return broker
|
|
258
259
|
})
|
|
259
260
|
|
|
260
|
-
const networkedStorage = new NetworkedStorage(components, init)
|
|
261
|
-
this.pins = new PinsImpl(components.datastore, networkedStorage, this.getCodec)
|
|
261
|
+
const networkedStorage = new NetworkedStorage(this.components, init)
|
|
262
|
+
this.pins = new PinsImpl(this.components.datastore, networkedStorage, this.getCodec)
|
|
262
263
|
this.blockstore = new BlockStorage(networkedStorage, this.pins, this.routing, {
|
|
263
264
|
holdGcLock: init.holdGcLock ?? true
|
|
264
265
|
})
|
|
265
|
-
this.datastore = components.datastore
|
|
266
|
+
this.datastore = this.components.datastore
|
|
266
267
|
}
|
|
267
268
|
|
|
268
269
|
hasRouter (name: string): boolean {
|
|
269
270
|
return this.routing.hasRouter(name)
|
|
270
271
|
}
|
|
271
272
|
|
|
272
|
-
addRouter (router: Router): void {
|
|
273
|
+
addRouter (router: Router | ((components: any) => Router)): void {
|
|
274
|
+
if (typeof router === 'function') {
|
|
275
|
+
router = router(this.components)
|
|
276
|
+
}
|
|
277
|
+
|
|
273
278
|
this.routing.addRouter(router)
|
|
274
279
|
}
|
|
275
280
|
|
|
@@ -277,7 +282,11 @@ export class Helia implements HeliaInterface {
|
|
|
277
282
|
return this.blockBrokers.findIndex(b => b.name === name) !== -1
|
|
278
283
|
}
|
|
279
284
|
|
|
280
|
-
addBlockBroker (blockBroker: BlockBroker): void {
|
|
285
|
+
addBlockBroker (blockBroker: BlockBroker | ((components: any) => BlockBroker)): void {
|
|
286
|
+
if (typeof blockBroker === 'function') {
|
|
287
|
+
blockBroker = blockBroker(this.components)
|
|
288
|
+
}
|
|
289
|
+
|
|
281
290
|
this.blockBrokers.push(blockBroker)
|
|
282
291
|
}
|
|
283
292
|
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const version = '7.0.
|
|
1
|
+
export const version = '7.0.2'
|
|
2
2
|
export const name = 'helia'
|