helia 2.0.3 → 2.1.0-299bb09

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 (77) hide show
  1. package/README.md +17 -8
  2. package/dist/index.min.js +52 -42
  3. package/dist/src/block-brokers/bitswap.d.ts +19 -0
  4. package/dist/src/block-brokers/bitswap.d.ts.map +1 -0
  5. package/dist/src/block-brokers/bitswap.js +48 -0
  6. package/dist/src/block-brokers/bitswap.js.map +1 -0
  7. package/dist/src/block-brokers/index.d.ts +3 -0
  8. package/dist/src/block-brokers/index.d.ts.map +1 -0
  9. package/dist/src/block-brokers/index.js +3 -0
  10. package/dist/src/block-brokers/index.js.map +1 -0
  11. package/dist/src/block-brokers/trustless-gateway/broker.d.ts +15 -0
  12. package/dist/src/block-brokers/trustless-gateway/broker.d.ts.map +1 -0
  13. package/dist/src/block-brokers/trustless-gateway/broker.js +55 -0
  14. package/dist/src/block-brokers/trustless-gateway/broker.js.map +1 -0
  15. package/dist/src/block-brokers/trustless-gateway/index.d.ts +13 -0
  16. package/dist/src/block-brokers/trustless-gateway/index.d.ts.map +1 -0
  17. package/dist/src/block-brokers/trustless-gateway/index.js +15 -0
  18. package/dist/src/block-brokers/trustless-gateway/index.js.map +1 -0
  19. package/dist/src/block-brokers/trustless-gateway/trustless-gateway.d.ts +31 -0
  20. package/dist/src/block-brokers/trustless-gateway/trustless-gateway.d.ts.map +1 -0
  21. package/dist/src/block-brokers/trustless-gateway/trustless-gateway.js +114 -0
  22. package/dist/src/block-brokers/trustless-gateway/trustless-gateway.js.map +1 -0
  23. package/dist/src/helia.d.ts +3 -2
  24. package/dist/src/helia.d.ts.map +1 -1
  25. package/dist/src/helia.js +28 -31
  26. package/dist/src/helia.js.map +1 -1
  27. package/dist/src/index.d.ts +25 -10
  28. package/dist/src/index.d.ts.map +1 -1
  29. package/dist/src/index.js +13 -30
  30. package/dist/src/index.js.map +1 -1
  31. package/dist/src/pins.js.map +1 -1
  32. package/dist/src/storage.d.ts +7 -3
  33. package/dist/src/storage.d.ts.map +1 -1
  34. package/dist/src/storage.js +14 -0
  35. package/dist/src/storage.js.map +1 -1
  36. package/dist/src/utils/dag-walkers.js.map +1 -1
  37. package/dist/src/utils/datastore-version.js.map +1 -1
  38. package/dist/src/utils/default-hashers.d.ts +3 -0
  39. package/dist/src/utils/default-hashers.d.ts.map +1 -0
  40. package/dist/src/utils/default-hashers.js +11 -0
  41. package/dist/src/utils/default-hashers.js.map +1 -0
  42. package/dist/src/utils/libp2p-defaults.browser.d.ts +11 -7
  43. package/dist/src/utils/libp2p-defaults.browser.d.ts.map +1 -1
  44. package/dist/src/utils/libp2p-defaults.browser.js +20 -15
  45. package/dist/src/utils/libp2p-defaults.browser.js.map +1 -1
  46. package/dist/src/utils/libp2p-defaults.d.ts +13 -9
  47. package/dist/src/utils/libp2p-defaults.d.ts.map +1 -1
  48. package/dist/src/utils/libp2p-defaults.js +23 -17
  49. package/dist/src/utils/libp2p-defaults.js.map +1 -1
  50. package/dist/src/utils/libp2p.d.ts +13 -5
  51. package/dist/src/utils/libp2p.d.ts.map +1 -1
  52. package/dist/src/utils/libp2p.js +21 -4
  53. package/dist/src/utils/libp2p.js.map +1 -1
  54. package/dist/src/utils/networked-storage.d.ts +22 -10
  55. package/dist/src/utils/networked-storage.d.ts.map +1 -1
  56. package/dist/src/utils/networked-storage.js +115 -16
  57. package/dist/src/utils/networked-storage.js.map +1 -1
  58. package/dist/src/version.d.ts +1 -1
  59. package/dist/src/version.d.ts.map +1 -1
  60. package/dist/src/version.js +1 -1
  61. package/dist/src/version.js.map +1 -1
  62. package/package.json +60 -23
  63. package/src/block-brokers/bitswap.ts +77 -0
  64. package/src/block-brokers/index.ts +2 -0
  65. package/src/block-brokers/trustless-gateway/broker.ts +65 -0
  66. package/src/block-brokers/trustless-gateway/index.ts +33 -0
  67. package/src/block-brokers/trustless-gateway/trustless-gateway.ts +126 -0
  68. package/src/helia.ts +31 -39
  69. package/src/index.ts +35 -36
  70. package/src/storage.ts +20 -3
  71. package/src/utils/default-hashers.ts +12 -0
  72. package/src/utils/libp2p-defaults.browser.ts +27 -19
  73. package/src/utils/libp2p-defaults.ts +31 -22
  74. package/src/utils/libp2p.ts +40 -8
  75. package/src/utils/networked-storage.ts +145 -25
  76. package/src/version.ts +1 -1
  77. package/dist/typedoc-urls.json +0 -8
package/dist/src/index.js CHANGED
@@ -1,37 +1,32 @@
1
1
  /**
2
2
  * @packageDocumentation
3
3
  *
4
- * Create a Helia node.
4
+ * Exports a `createHelia` function that returns an object that implements the {@link Helia} API.
5
+ *
6
+ * Pass it to other modules like {@link https://www.npmjs.com/package/@helia/unixfs | @helia/unixfs} to make files available on the distributed web.
5
7
  *
6
8
  * @example
7
9
  *
8
10
  * ```typescript
9
- * import { MemoryDatastore } from 'datastore-core'
10
- * import { MemoryBlockstore } from 'blockstore-core'
11
11
  * import { createHelia } from 'helia'
12
12
  * import { unixfs } from '@helia/unixfs'
13
13
  * import { CID } from 'multiformats/cid'
14
14
  *
15
- * const node = await createHelia({
16
- * blockstore: new MemoryBlockstore(),
17
- * datastore: new MemoryDatastore()
18
- * })
19
- * const fs = unixfs(node)
15
+ * const helia = await createHelia()
16
+ *
17
+ * const fs = unixfs(helia)
20
18
  * fs.cat(CID.parse('bafyFoo'))
21
19
  * ```
22
20
  */
23
- import { logger } from '@libp2p/logger';
24
21
  import { MemoryBlockstore } from 'blockstore-core';
25
22
  import { MemoryDatastore } from 'datastore-core';
26
23
  import { HeliaImpl } from './helia.js';
27
24
  import { createLibp2p } from './utils/libp2p.js';
28
- import { name, version } from './version.js';
29
25
  // re-export interface types so people don't have to depend on @helia/interface
30
26
  // if they don't want to
31
27
  export * from '@helia/interface';
32
28
  export * from '@helia/interface/blocks';
33
29
  export * from '@helia/interface/pins';
34
- const log = logger('helia');
35
30
  export async function createHelia(init = {}) {
36
31
  const datastore = init.datastore ?? new MemoryDatastore();
37
32
  const blockstore = init.blockstore ?? new MemoryBlockstore();
@@ -40,19 +35,21 @@ export async function createHelia(init = {}) {
40
35
  libp2p = init.libp2p;
41
36
  }
42
37
  else {
43
- libp2p = await createLibp2p(datastore, init.libp2p);
38
+ libp2p = await createLibp2p({
39
+ ...init,
40
+ libp2p: init.libp2p,
41
+ datastore
42
+ });
44
43
  }
45
44
  const helia = new HeliaImpl({
46
45
  ...init,
46
+ libp2p,
47
47
  datastore,
48
- blockstore,
49
- libp2p
48
+ blockstore
50
49
  });
51
50
  if (init.start !== false) {
52
51
  await helia.start();
53
52
  }
54
- // add helia to agent version
55
- addHeliaToAgentVersion(helia);
56
53
  return helia;
57
54
  }
58
55
  function isLibp2p(obj) {
@@ -64,18 +61,4 @@ function isLibp2p(obj) {
64
61
  // if these are all functions it's probably a libp2p object
65
62
  return funcs.every(m => typeof obj[m] === 'function');
66
63
  }
67
- function addHeliaToAgentVersion(helia) {
68
- // add helia to agent version
69
- try {
70
- const existingAgentVersion = helia.libp2p.services.identify.host.agentVersion;
71
- if (existingAgentVersion.match(/js-libp2p\/\d+\.\d+\.\d+\sUserAgent=/) == null) {
72
- // the user changed the agent version
73
- return;
74
- }
75
- helia.libp2p.services.identify.host.agentVersion = `${name}/${version} ${helia.libp2p.services.identify.host.agentVersion}`;
76
- }
77
- catch (err) {
78
- log.error('could not add Helia to agent version', err);
79
- }
80
- }
81
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAU5C,+EAA+E;AAC/E,wBAAwB;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AAErC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;AA6E3B,MAAM,CAAC,KAAK,UAAU,WAAW,CAAE,OAAkB,EAAE;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,eAAe,EAAE,CAAA;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,gBAAgB,EAAE,CAAA;IAE5D,IAAI,MAAc,CAAA;IAElB,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;KACrB;SAAM;QACL,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;KACpD;IAED,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC;QAC1B,GAAG,IAAI;QACP,SAAS;QACT,UAAU;QACV,MAAM;KACP,CAAC,CAAA;IAEF,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;QACxB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;KACpB;IAED,6BAA6B;IAC7B,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAE7B,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,QAAQ,CAAE,GAAQ;IACzB,IAAI,GAAG,IAAI,IAAI,EAAE;QACf,OAAO,KAAK,CAAA;KACb;IAED,8DAA8D;IAC9D,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;IAEvG,2DAA2D;IAC3D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAA;AACvD,CAAC;AAED,SAAS,sBAAsB,CAAE,KAAiB;IAChD,6BAA6B;IAC7B,IAAI;QACF,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAA;QAE7E,IAAI,oBAAoB,CAAC,KAAK,CAAC,sCAAsC,CAAC,IAAI,IAAI,EAAE;YAC9E,qCAAqC;YACrC,OAAM;SACP;QAED,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;KAC5H;IAAC,OAAO,GAAG,EAAE;QACZ,GAAG,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;KACvD;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAYhD,+EAA+E;AAC/E,wBAAwB;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AA+FrC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAE,OAAkB,EAAE;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,eAAe,EAAE,CAAA;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,gBAAgB,EAAE,CAAA;IAE5D,IAAI,MAAc,CAAA;IAElB,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,MAAM,YAAY,CAAC;YAC1B,GAAG,IAAI;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC;QAC1B,GAAG,IAAI;QACP,MAAM;QACN,SAAS;QACT,UAAU;KACX,CAAC,CAAA;IAEF,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,QAAQ,CAAE,GAAQ;IACzB,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,8DAA8D;IAC9D,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;IAEvG,2DAA2D;IAC3D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAA;AACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pins.js","sourceRoot":"","sources":["../../src/pins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pins.js","sourceRoot":"","sources":["../../src/pins.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Blocks, Pair, DeleteManyBlocksProgressEvents, DeleteBlockProgressEvents, GetBlockProgressEvents, GetManyBlocksProgressEvents, PutManyBlocksProgressEvents, PutBlockProgressEvents, GetAllBlocksProgressEvents, GetOfflineOptions } from '@helia/interface/blocks';
2
2
  import type { Pins } from '@helia/interface/pins';
3
- import type { AbortOptions } from '@libp2p/interface';
3
+ import type { AbortOptions, Startable } from '@libp2p/interface';
4
4
  import type { Blockstore } from 'interface-blockstore';
5
5
  import type { AwaitIterable } from 'interface-store';
6
6
  import type { Mortice } from 'mortice';
@@ -10,21 +10,25 @@ export interface BlockStorageInit {
10
10
  holdGcLock?: boolean;
11
11
  }
12
12
  export interface GetOptions extends AbortOptions {
13
- progress?: (evt: Event) => void;
13
+ progress?(evt: Event): void;
14
14
  }
15
15
  /**
16
16
  * BlockStorage is a hybrid blockstore that puts/gets blocks from a configured
17
17
  * blockstore (that may be on disk, s3, or something else). If the blocks are
18
18
  * not present Bitswap will be used to fetch them from network peers.
19
19
  */
20
- export declare class BlockStorage implements Blocks {
20
+ export declare class BlockStorage implements Blocks, Startable {
21
21
  lock: Mortice;
22
22
  private readonly child;
23
23
  private readonly pins;
24
+ private started;
24
25
  /**
25
26
  * Create a new BlockStorage
26
27
  */
27
28
  constructor(blockstore: Blockstore, pins: Pins, options?: BlockStorageInit);
29
+ isStarted(): boolean;
30
+ start(): Promise<void>;
31
+ stop(): Promise<void>;
28
32
  unwrap(): Blockstore;
29
33
  /**
30
34
  * Put a block to the underlying datastore
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC/Q,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;CAChC;AAED;;;;GAIG;AACH,qBAAa,YAAa,YAAW,MAAM;IAClC,IAAI,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAM;IAE3B;;OAEG;gBACU,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,gBAAqB;IAQ/E,MAAM,IAAK,UAAU;IAIrB;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAU3H;;OAEG;IACK,OAAO,CAAE,MAAM,EAAE,aAAa,CAAC;QAAE,GAAG,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,2BAA2B,CAAM,GAAG,aAAa,CAAC,GAAG,CAAC;IAUvK;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAUnI;;OAEG;IACK,OAAO,CAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,GAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC,2BAA2B,CAAM,GAAG,aAAa,CAAC,IAAI,CAAC;IAU9J;;OAEG;IACG,MAAM,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,yBAAyB,CAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/G;;OAEG;IACK,UAAU,CAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,8BAA8B,CAAM,GAAG,aAAa,CAAC,GAAG,CAAC;IAoBzI,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1D,MAAM,CAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,0BAA0B,CAAM,GAAG,aAAa,CAAC,IAAI,CAAC;CAS/G"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/storage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC/Q,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,QAAQ,CAAC,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,CAAA;CAC5B;AAED;;;;GAIG;AACH,qBAAa,YAAa,YAAW,MAAM,EAAE,SAAS;IAC7C,IAAI,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAM;IAC3B,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;gBACU,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,gBAAqB;IAS/E,SAAS,IAAK,OAAO;IAIf,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAKvB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAK5B,MAAM,IAAK,UAAU;IAIrB;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAU3H;;OAEG;IACK,OAAO,CAAE,MAAM,EAAE,aAAa,CAAC;QAAE,GAAG,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,2BAA2B,CAAM,GAAG,aAAa,CAAC,GAAG,CAAC;IAUvK;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAUnI;;OAEG;IACK,OAAO,CAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,GAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC,2BAA2B,CAAM,GAAG,aAAa,CAAC,IAAI,CAAC;IAU9J;;OAEG;IACG,MAAM,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,yBAAyB,CAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/G;;OAEG;IACK,UAAU,CAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,8BAA8B,CAAM,GAAG,aAAa,CAAC,GAAG,CAAC;IAoBzI,GAAG,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1D,MAAM,CAAE,OAAO,GAAE,YAAY,GAAG,eAAe,CAAC,0BAA0B,CAAM,GAAG,aAAa,CAAC,IAAI,CAAC;CAS/G"}
@@ -1,3 +1,4 @@
1
+ import { start, stop } from '@libp2p/interface';
1
2
  import createMortice from 'mortice';
2
3
  /**
3
4
  * BlockStorage is a hybrid blockstore that puts/gets blocks from a configured
@@ -8,6 +9,7 @@ export class BlockStorage {
8
9
  lock;
9
10
  child;
10
11
  pins;
12
+ started;
11
13
  /**
12
14
  * Create a new BlockStorage
13
15
  */
@@ -17,6 +19,18 @@ export class BlockStorage {
17
19
  this.lock = createMortice({
18
20
  singleProcess: options.holdGcLock
19
21
  });
22
+ this.started = false;
23
+ }
24
+ isStarted() {
25
+ return this.started;
26
+ }
27
+ async start() {
28
+ await start(this.child);
29
+ this.started = true;
30
+ }
31
+ async stop() {
32
+ await stop(this.child);
33
+ this.started = false;
20
34
  }
21
35
  unwrap() {
22
36
  return this.child;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/storage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dag-walkers.js","sourceRoot":"","sources":["../../../src/utils/dag-walkers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dag-walkers.js","sourceRoot":"","sources":["../../../src/utils/dag-walkers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"datastore-version.js","sourceRoot":"","sources":["../../../src/utils/datastore-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAEtE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;AAC1C,MAAM,eAAe,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAE,SAAoB;IACzE,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE;QAC1C,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAC,GAAG,eAAe,EAAE,CAAC,CAAC,CAAA;QAE/E,OAAM;KACP;IAED,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC/C,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAEjC,IAAI,OAAO,KAAK,eAAe,EAAE;QAC/B,0JAA0J;QAC1J,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;KACpF;AACH,CAAC"}
1
+ {"version":3,"file":"datastore-version.js","sourceRoot":"","sources":["../../../src/utils/datastore-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAEtE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;AAC1C,MAAM,eAAe,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAE,SAAoB;IACzE,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAC,GAAG,eAAe,EAAE,CAAC,CAAC,CAAA;QAE/E,OAAM;IACR,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC/C,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAEjC,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QAChC,0JAA0J;QAC1J,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACrF,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { MultihashHasher } from 'multiformats/hashes/interface';
2
+ export declare function defaultHashers(hashers?: MultihashHasher[]): MultihashHasher[];
3
+ //# sourceMappingURL=default-hashers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-hashers.d.ts","sourceRoot":"","sources":["../../../src/utils/default-hashers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,wBAAgB,cAAc,CAAE,OAAO,GAAE,eAAe,EAAO,GAAG,eAAe,EAAE,CAOlF"}
@@ -0,0 +1,11 @@
1
+ import { identity } from 'multiformats/hashes/identity';
2
+ import { sha256, sha512 } from 'multiformats/hashes/sha2';
3
+ export function defaultHashers(hashers = []) {
4
+ return [
5
+ sha256,
6
+ sha512,
7
+ identity,
8
+ ...hashers
9
+ ];
10
+ }
11
+ //# sourceMappingURL=default-hashers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-hashers.js","sourceRoot":"","sources":["../../../src/utils/default-hashers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AAGzD,MAAM,UAAU,cAAc,CAAE,UAA6B,EAAE;IAC7D,OAAO;QACL,MAAM;QACN,MAAM;QACN,QAAQ;QACR,GAAG,OAAO;KACX,CAAA;AACH,CAAC"}
@@ -1,15 +1,19 @@
1
+ import { type Identify } from '@libp2p/identify';
1
2
  import { type DualKadDHT } from '@libp2p/kad-dht';
2
- import { type IdentifyService } from 'libp2p/identify';
3
- import { type PingService } from 'libp2p/ping';
4
- import type { PubSub } from '@libp2p/interface/pubsub';
3
+ import { type Keychain } from '@libp2p/keychain';
4
+ import { type PingService } from '@libp2p/ping';
5
+ import type { Libp2pDefaultsOptions } from './libp2p.js';
6
+ import type { PubSub } from '@libp2p/interface';
5
7
  import type { Libp2pOptions } from 'libp2p';
6
8
  export interface DefaultLibp2pServices extends Record<string, unknown> {
7
- dht: DualKadDHT;
8
- pubsub: PubSub;
9
- identify: IdentifyService;
10
9
  autoNAT: unknown;
11
10
  dcutr: unknown;
11
+ delegatedRouting: unknown;
12
+ dht: DualKadDHT;
13
+ identify: Identify;
14
+ keychain: Keychain;
12
15
  ping: PingService;
16
+ pubsub: PubSub;
13
17
  }
14
- export declare function libp2pDefaults(): Libp2pOptions<DefaultLibp2pServices>;
18
+ export declare function libp2pDefaults(options: Libp2pDefaultsOptions): Libp2pOptions<DefaultLibp2pServices>;
15
19
  //# sourceMappingURL=libp2p-defaults.browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.browser.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.browser.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAU,MAAM,iBAAiB,CAAA;AAUzD,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,GAAG,EAAE,UAAU,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,eAAe,CAAA;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,wBAAgB,cAAc,IAAK,aAAa,CAAC,qBAAqB,CAAC,CA8CtE"}
1
+ {"version":3,"file":"libp2p-defaults.browser.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.browser.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,QAAQ,EAAY,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,KAAK,UAAU,EAAU,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE1D,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AASrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,gBAAgB,EAAE,OAAO,CAAA;IACzB,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;IAClB,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,cAAc,CAAE,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAgDpG"}
@@ -1,23 +1,27 @@
1
1
  import { gossipsub } from '@chainsafe/libp2p-gossipsub';
2
2
  import { noise } from '@chainsafe/libp2p-noise';
3
3
  import { yamux } from '@chainsafe/libp2p-yamux';
4
+ import { createDelegatedRoutingV1HttpApiClient } from '@helia/delegated-routing-v1-http-api-client';
5
+ import { autoNAT } from '@libp2p/autonat';
4
6
  import { bootstrap } from '@libp2p/bootstrap';
5
- import { ipniContentRouting } from '@libp2p/ipni-content-routing';
7
+ import { circuitRelayTransport } from '@libp2p/circuit-relay-v2';
8
+ import { dcutr } from '@libp2p/dcutr';
9
+ import { identify } from '@libp2p/identify';
6
10
  import { kadDHT } from '@libp2p/kad-dht';
11
+ import { keychain } from '@libp2p/keychain';
7
12
  import { mplex } from '@libp2p/mplex';
13
+ import { ping } from '@libp2p/ping';
8
14
  import { webRTC, webRTCDirect } from '@libp2p/webrtc';
9
15
  import { webSockets } from '@libp2p/websockets';
10
16
  import { webTransport } from '@libp2p/webtransport';
11
17
  import { ipnsSelector } from 'ipns/selector';
12
18
  import { ipnsValidator } from 'ipns/validator';
13
- import { autoNATService } from 'libp2p/autonat';
14
- import { circuitRelayTransport } from 'libp2p/circuit-relay';
15
- import { dcutrService } from 'libp2p/dcutr';
16
- import { identifyService } from 'libp2p/identify';
17
- import { pingService } from 'libp2p/ping';
19
+ import * as libp2pInfo from 'libp2p/version';
20
+ import { name, version } from '../version.js';
18
21
  import { bootstrapConfig } from './bootstrappers.js';
19
- export function libp2pDefaults() {
22
+ export function libp2pDefaults(options) {
20
23
  return {
24
+ peerId: options.peerId,
21
25
  addresses: {
22
26
  listen: [
23
27
  '/webrtc'
@@ -42,14 +46,10 @@ export function libp2pDefaults() {
42
46
  peerDiscovery: [
43
47
  bootstrap(bootstrapConfig)
44
48
  ],
45
- contentRouters: [
46
- ipniContentRouting('https://cid.contact')
47
- ],
48
49
  services: {
49
- identify: identifyService(),
50
- autoNAT: autoNATService(),
51
- pubsub: gossipsub(),
52
- dcutr: dcutrService(),
50
+ autoNAT: autoNAT(),
51
+ dcutr: dcutr(),
52
+ delegatedRouting: () => createDelegatedRoutingV1HttpApiClient('https://delegated-ipfs.dev'),
53
53
  dht: kadDHT({
54
54
  clientMode: true,
55
55
  validators: {
@@ -59,7 +59,12 @@ export function libp2pDefaults() {
59
59
  ipns: ipnsSelector
60
60
  }
61
61
  }),
62
- ping: pingService()
62
+ identify: identify({
63
+ agentVersion: `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${globalThis.navigator.userAgent}`
64
+ }),
65
+ keychain: keychain(options.keychain),
66
+ ping: ping(),
67
+ pubsub: gossipsub()
63
68
  }
64
69
  };
65
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.browser.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAmB,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAwB,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,WAAW,EAAoB,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAapD,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,SAAS;aACV;SACF;QACD,UAAU,EAAE;YACV,qBAAqB,CAAC;gBACpB,cAAc,EAAE,CAAC;aAClB,CAAC;YACF,MAAM,EAAE;YACR,YAAY,EAAE;YACd,YAAY,EAAE;YACd,UAAU,EAAE;SACb;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE;SACR;QACD,YAAY,EAAE;YACZ,KAAK,EAAE;YACP,KAAK,EAAE;SACR;QACD,aAAa,EAAE;YACb,SAAS,CAAC,eAAe,CAAC;SAC3B;QACD,cAAc,EAAE;YACd,kBAAkB,CAAC,qBAAqB,CAAC;SAC1C;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,eAAe,EAAE;YAC3B,OAAO,EAAE,cAAc,EAAE;YACzB,MAAM,EAAE,SAAS,EAAE;YACnB,KAAK,EAAE,YAAY,EAAE;YACrB,GAAG,EAAE,MAAM,CAAC;gBACV,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE;oBACV,IAAI,EAAE,aAAa;iBACpB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC;YACF,IAAI,EAAE,WAAW,EAAE;SACpB;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"libp2p-defaults.browser.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAA;AACnG,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAiB,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAmB,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAiB,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,IAAI,EAAoB,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,UAAU,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAgBpD,MAAM,UAAU,cAAc,CAAE,OAA8B;IAC5D,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,SAAS;aACV;SACF;QACD,UAAU,EAAE;YACV,qBAAqB,CAAC;gBACpB,cAAc,EAAE,CAAC;aAClB,CAAC;YACF,MAAM,EAAE;YACR,YAAY,EAAE;YACd,YAAY,EAAE;YACd,UAAU,EAAE;SACb;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE;SACR;QACD,YAAY,EAAE;YACZ,KAAK,EAAE;YACP,KAAK,EAAE;SACR;QACD,aAAa,EAAE;YACb,SAAS,CAAC,eAAe,CAAC;SAC3B;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,OAAO,EAAE;YAClB,KAAK,EAAE,KAAK,EAAE;YACd,gBAAgB,EAAE,GAAG,EAAE,CAAC,qCAAqC,CAAC,4BAA4B,CAAC;YAC3F,GAAG,EAAE,MAAM,CAAC;gBACV,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE;oBACV,IAAI,EAAE,aAAa;iBACpB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC;gBACjB,YAAY,EAAE,GAAG,IAAI,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,cAAc,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE;aACxH,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,IAAI,EAAE;YACZ,MAAM,EAAE,SAAS,EAAE;SACpB;KACF,CAAA;AACH,CAAC"}
@@ -1,18 +1,22 @@
1
+ import { type CircuitRelayService } from '@libp2p/circuit-relay-v2';
2
+ import { type Identify } from '@libp2p/identify';
1
3
  import { type DualKadDHT } from '@libp2p/kad-dht';
2
- import { type CircuitRelayService } from 'libp2p/circuit-relay';
3
- import { type IdentifyService } from 'libp2p/identify';
4
- import { type PingService } from 'libp2p/ping';
5
- import type { PubSub } from '@libp2p/interface/pubsub';
4
+ import { type Keychain } from '@libp2p/keychain';
5
+ import { type PingService } from '@libp2p/ping';
6
+ import type { Libp2pDefaultsOptions } from './libp2p.js';
7
+ import type { PubSub } from '@libp2p/interface';
6
8
  import type { Libp2pOptions } from 'libp2p';
7
9
  export interface DefaultLibp2pServices extends Record<string, unknown> {
10
+ autoNAT: unknown;
11
+ dcutr: unknown;
12
+ delegatedRouting: unknown;
8
13
  dht: DualKadDHT;
14
+ identify: Identify;
15
+ keychain: Keychain;
16
+ ping: PingService;
9
17
  pubsub: PubSub;
10
18
  relay: CircuitRelayService;
11
- identify: IdentifyService;
12
- autoNAT: unknown;
13
19
  upnp: unknown;
14
- dcutr: unknown;
15
- ping: PingService;
16
20
  }
17
- export declare function libp2pDefaults(): Libp2pOptions<DefaultLibp2pServices>;
21
+ export declare function libp2pDefaults(options: Libp2pDefaultsOptions): Libp2pOptions<DefaultLibp2pServices>;
18
22
  //# sourceMappingURL=libp2p-defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAU,MAAM,iBAAiB,CAAA;AASzD,OAAO,EAA6C,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1G,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAG3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,GAAG,EAAE,UAAU,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,mBAAmB,CAAA;IAC1B,QAAQ,EAAE,eAAe,CAAA;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,wBAAgB,cAAc,IAAK,aAAa,CAAC,qBAAqB,CAAC,CAmDtE"}
1
+ {"version":3,"file":"libp2p-defaults.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6C,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9G,OAAO,EAAE,KAAK,QAAQ,EAAY,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,KAAK,UAAU,EAAU,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAG1D,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAUrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,gBAAgB,EAAE,OAAO,CAAA;IACzB,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;IAClB,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,mBAAmB,CAAA;IAC1B,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAgB,cAAc,CAAE,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAsDpG"}
@@ -1,28 +1,33 @@
1
1
  import { gossipsub } from '@chainsafe/libp2p-gossipsub';
2
2
  import { noise } from '@chainsafe/libp2p-noise';
3
3
  import { yamux } from '@chainsafe/libp2p-yamux';
4
+ import { createDelegatedRoutingV1HttpApiClient } from '@helia/delegated-routing-v1-http-api-client';
5
+ import { autoNAT } from '@libp2p/autonat';
4
6
  import { bootstrap } from '@libp2p/bootstrap';
5
- import { ipniContentRouting } from '@libp2p/ipni-content-routing';
7
+ import { circuitRelayTransport, circuitRelayServer } from '@libp2p/circuit-relay-v2';
8
+ import { dcutr } from '@libp2p/dcutr';
9
+ import { identify } from '@libp2p/identify';
6
10
  import { kadDHT } from '@libp2p/kad-dht';
11
+ import { keychain } from '@libp2p/keychain';
7
12
  import { mdns } from '@libp2p/mdns';
8
13
  import { mplex } from '@libp2p/mplex';
14
+ import { ping } from '@libp2p/ping';
9
15
  import { tcp } from '@libp2p/tcp';
16
+ import { uPnPNAT } from '@libp2p/upnp-nat';
10
17
  import { webRTC, webRTCDirect } from '@libp2p/webrtc';
11
18
  import { webSockets } from '@libp2p/websockets';
12
19
  import { ipnsSelector } from 'ipns/selector';
13
20
  import { ipnsValidator } from 'ipns/validator';
14
- import { autoNATService } from 'libp2p/autonat';
15
- import { circuitRelayTransport, circuitRelayServer } from 'libp2p/circuit-relay';
16
- import { dcutrService } from 'libp2p/dcutr';
17
- import { identifyService } from 'libp2p/identify';
18
- import { pingService } from 'libp2p/ping';
19
- import { uPnPNATService } from 'libp2p/upnp-nat';
21
+ import * as libp2pInfo from 'libp2p/version';
22
+ import { name, version } from '../version.js';
20
23
  import { bootstrapConfig } from './bootstrappers.js';
21
- export function libp2pDefaults() {
24
+ export function libp2pDefaults(options) {
22
25
  return {
26
+ peerId: options.peerId,
23
27
  addresses: {
24
28
  listen: [
25
29
  '/ip4/0.0.0.0/tcp/0',
30
+ '/ip6/::/tcp/0',
26
31
  '/webrtc'
27
32
  ]
28
33
  },
@@ -46,15 +51,10 @@ export function libp2pDefaults() {
46
51
  mdns(),
47
52
  bootstrap(bootstrapConfig)
48
53
  ],
49
- contentRouters: [
50
- ipniContentRouting('https://cid.contact')
51
- ],
52
54
  services: {
53
- identify: identifyService(),
54
- autoNAT: autoNATService(),
55
- upnp: uPnPNATService(),
56
- pubsub: gossipsub(),
57
- dcutr: dcutrService(),
55
+ autoNAT: autoNAT(),
56
+ dcutr: dcutr(),
57
+ delegatedRouting: () => createDelegatedRoutingV1HttpApiClient('https://delegated-ipfs.dev'),
58
58
  dht: kadDHT({
59
59
  validators: {
60
60
  ipns: ipnsValidator
@@ -63,10 +63,16 @@ export function libp2pDefaults() {
63
63
  ipns: ipnsSelector
64
64
  }
65
65
  }),
66
+ identify: identify({
67
+ agentVersion: `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${globalThis.process.version}`
68
+ }),
69
+ keychain: keychain(options.keychain),
70
+ ping: ping(),
71
+ pubsub: gossipsub(),
66
72
  relay: circuitRelayServer({
67
73
  advertise: true
68
74
  }),
69
- ping: pingService()
75
+ upnp: uPnPNAT()
70
76
  }
71
77
  };
72
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAmB,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAA4B,MAAM,sBAAsB,CAAA;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAwB,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,WAAW,EAAoB,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAepD,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,oBAAoB;gBACpB,SAAS;aACV;SACF;QACD,UAAU,EAAE;YACV,qBAAqB,CAAC;gBACpB,cAAc,EAAE,CAAC;aAClB,CAAC;YACF,GAAG,EAAE;YACL,MAAM,EAAE;YACR,YAAY,EAAE;YACd,UAAU,EAAE;SACb;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE;SACR;QACD,YAAY,EAAE;YACZ,KAAK,EAAE;YACP,KAAK,EAAE;SACR;QACD,aAAa,EAAE;YACb,IAAI,EAAE;YACN,SAAS,CAAC,eAAe,CAAC;SAC3B;QACD,cAAc,EAAE;YACd,kBAAkB,CAAC,qBAAqB,CAAC;SAC1C;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,eAAe,EAAE;YAC3B,OAAO,EAAE,cAAc,EAAE;YACzB,IAAI,EAAE,cAAc,EAAE;YACtB,MAAM,EAAE,SAAS,EAAE;YACnB,KAAK,EAAE,YAAY,EAAE;YACrB,GAAG,EAAE,MAAM,CAAC;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,aAAa;iBACpB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC;YACF,KAAK,EAAE,kBAAkB,CAAC;gBACxB,SAAS,EAAE,IAAI;aAChB,CAAC;YACF,IAAI,EAAE,WAAW,EAAE;SACpB;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"libp2p-defaults.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,18 @@
1
- import { type Libp2pOptions } from 'libp2p';
2
- import { type DefaultLibp2pServices } from './libp2p-defaults.js';
3
- import type { Libp2p } from '@libp2p/interface';
1
+ import type { DefaultLibp2pServices } from './libp2p-defaults.js';
2
+ import type { ComponentLogger, Libp2p, PeerId } from '@libp2p/interface';
3
+ import type { KeychainInit } from '@libp2p/keychain';
4
4
  import type { Datastore } from 'interface-datastore';
5
- export interface CreateLibp2pOptions {
5
+ import type { Libp2pOptions } from 'libp2p';
6
+ export interface CreateLibp2pOptions<T extends Record<string, unknown>> {
6
7
  datastore: Datastore;
8
+ libp2p?: Libp2pOptions<T>;
9
+ logger?: ComponentLogger;
10
+ keychain?: KeychainInit;
7
11
  start?: boolean;
8
12
  }
9
- export declare function createLibp2p(datastore: Datastore, options?: Libp2pOptions<any>): Promise<Libp2p<DefaultLibp2pServices>>;
13
+ export interface Libp2pDefaultsOptions {
14
+ peerId?: PeerId;
15
+ keychain?: KeychainInit;
16
+ }
17
+ export declare function createLibp2p<T extends Record<string, unknown> = DefaultLibp2pServices>(options: CreateLibp2pOptions<T>): Promise<Libp2p<T>>;
10
18
  //# sourceMappingURL=libp2p.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAA;AACnE,OAAO,EAAE,KAAK,qBAAqB,EAAkB,MAAM,sBAAsB,CAAA;AACjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,SAAS,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,wBAAsB,YAAY,CAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAU9H"}
1
+ {"version":3,"file":"libp2p.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACzB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED,wBAAsB,YAAY,CAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,qBAAqB,EAAG,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CA4BnJ"}
@@ -1,12 +1,29 @@
1
+ import { keychain } from '@libp2p/keychain';
2
+ import { defaultLogger } from '@libp2p/logger';
3
+ import { Key } from 'interface-datastore';
1
4
  import { createLibp2p as create } from 'libp2p';
2
5
  import { libp2pDefaults } from './libp2p-defaults.js';
3
- export async function createLibp2p(datastore, options) {
4
- const defaults = libp2pDefaults();
6
+ export async function createLibp2p(options) {
7
+ let peerId = options.libp2p?.peerId;
8
+ const logger = options.logger ?? defaultLogger();
9
+ // if no peer id was passed, try to load it from the keychain
10
+ if (peerId == null) {
11
+ const chain = keychain(options.keychain)({
12
+ datastore: options.datastore,
13
+ logger
14
+ });
15
+ const selfKey = new Key('/pkcs8/self');
16
+ if (await options.datastore.has(selfKey)) {
17
+ // load the peer id from the keychain
18
+ peerId = await chain.exportPeerId('self');
19
+ }
20
+ }
21
+ const defaults = libp2pDefaults(options);
5
22
  options = options ?? {};
23
+ // @ts-expect-error derived ServiceMap is not compatible with ServiceFactoryMap
6
24
  return create({
7
- datastore,
8
25
  ...defaults,
9
- ...options,
26
+ ...options.libp2p,
10
27
  start: false
11
28
  });
12
29
  }