helia 4.2.5 → 4.2.6-ec8bf66

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.
@@ -21,7 +21,7 @@ import { bootstrapConfig } from './bootstrappers.js';
21
21
  export function libp2pDefaults(options = {}) {
22
22
  const agentVersion = `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${globalThis.navigator.userAgent}`;
23
23
  return {
24
- peerId: options.peerId,
24
+ privateKey: options.privateKey,
25
25
  dns: options.dns,
26
26
  addresses: {
27
27
  listen: [
@@ -37,7 +37,7 @@ export function libp2pDefaults(options = {}) {
37
37
  webTransport(),
38
38
  webSockets()
39
39
  ],
40
- connectionEncryption: [
40
+ connectionEncrypters: [
41
41
  noise()
42
42
  ],
43
43
  streamMuxers: [
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.browser.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.browser.ts"],"names":[],"mappings":"AAAA,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,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAe,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACrD,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;AAcpD,MAAM,UAAU,cAAc,CAAE,UAAiC,EAAE;IACjE,MAAM,YAAY,GAAG,GAAG,IAAI,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,cAAc,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,CAAA;IAE9H,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,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;aACb,CAAC;YACF,YAAY,EAAE,YAAY,CAAC;gBACzB,YAAY;aACb,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,IAAI,EAAE;SACb;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,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,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAe,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACrD,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;AAcpD,MAAM,UAAU,cAAc,CAAE,UAAiC,EAAE;IACjE,MAAM,YAAY,GAAG,GAAG,IAAI,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,cAAc,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,CAAA;IAE9H,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,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;aACb,CAAC;YACF,YAAY,EAAE,YAAY,CAAC;gBACzB,YAAY;aACb,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,IAAI,EAAE;SACb;KACF,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6C,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9G,OAAO,EAAE,KAAK,QAAQ,EAA0B,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,KAAK,MAAM,EAAU,MAAM,iBAAiB,CAAA;AACrD,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,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,MAAM,CAAA;IACX,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;IAClB,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,mBAAmB,CAAA;IAC1B,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAgB,cAAc,CAAE,OAAO,GAAE,qBAA0B,GAAG,aAAa,CAAC,qBAAqB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE,UAAU,CAAC,CAAC,CAyD5K"}
1
+ {"version":3,"file":"libp2p-defaults.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6C,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9G,OAAO,EAAE,KAAK,QAAQ,EAA0B,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,KAAK,MAAM,EAAU,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAG1D,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAWrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,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,MAAM,CAAA;IACX,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;IAClB,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,mBAAmB,CAAA;IAC1B,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAgB,cAAc,CAAE,OAAO,GAAE,qBAA0B,GAAG,aAAa,CAAC,qBAAqB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE,UAAU,CAAC,CAAC,CA0D5K"}
@@ -12,6 +12,7 @@ import { mdns } from '@libp2p/mdns';
12
12
  import { mplex } from '@libp2p/mplex';
13
13
  import { ping } from '@libp2p/ping';
14
14
  import { tcp } from '@libp2p/tcp';
15
+ import { tls } from '@libp2p/tls';
15
16
  import { uPnPNAT } from '@libp2p/upnp-nat';
16
17
  import { webRTC, webRTCDirect } from '@libp2p/webrtc';
17
18
  import { webSockets } from '@libp2p/websockets';
@@ -23,7 +24,7 @@ import { bootstrapConfig } from './bootstrappers.js';
23
24
  export function libp2pDefaults(options = {}) {
24
25
  const agentVersion = `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${process.version}`;
25
26
  return {
26
- peerId: options.peerId,
27
+ privateKey: options.privateKey,
27
28
  dns: options.dns,
28
29
  addresses: {
29
30
  listen: [
@@ -41,8 +42,9 @@ export function libp2pDefaults(options = {}) {
41
42
  webRTCDirect(),
42
43
  webSockets()
43
44
  ],
44
- connectionEncryption: [
45
- noise()
45
+ connectionEncrypters: [
46
+ noise(),
47
+ tls()
46
48
  ],
47
49
  streamMuxers: [
48
50
  yamux(),
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p-defaults.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libp2p-defaults.js","sourceRoot":"","sources":["../../../src/utils/libp2p-defaults.ts"],"names":[],"mappings":"AAAA,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,kBAAkB,EAA4B,MAAM,0BAA0B,CAAA;AAC9G,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAiB,QAAQ,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAe,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAiB,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,IAAI,EAAoB,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,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,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,UAAiC,EAAE;IACjE,MAAM,YAAY,GAAG,GAAG,IAAI,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,cAAc,OAAO,CAAC,OAAO,EAAE,CAAA;IAE/G,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,oBAAoB;gBACpB,eAAe;gBACf,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;YACP,GAAG,EAAE;SACN;QACD,YAAY,EAAE;YACZ,KAAK,EAAE;YACP,KAAK,EAAE;SACR;QACD,aAAa,EAAE;YACb,IAAI,EAAE;YACN,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;oBACV,IAAI,EAAE,aAAa;iBACpB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC;gBACjB,YAAY;aACb,CAAC;YACF,YAAY,EAAE,YAAY,CAAC;gBACzB,YAAY;aACb,CAAC;YACF,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,IAAI,EAAE;YACZ,KAAK,EAAE,kBAAkB,EAAE;YAC3B,IAAI,EAAE,OAAO,EAAE;SAChB;KACF,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { DefaultLibp2pServices } from './libp2p-defaults.js';
2
- import type { ComponentLogger, Libp2p, PeerId } from '@libp2p/interface';
2
+ import type { ComponentLogger, Libp2p, PrivateKey } from '@libp2p/interface';
3
3
  import type { KeychainInit } from '@libp2p/keychain';
4
4
  import type { DNS } from '@multiformats/dns';
5
5
  import type { Datastore } from 'interface-datastore';
@@ -12,7 +12,7 @@ export interface CreateLibp2pOptions<T extends Record<string, unknown>> {
12
12
  start?: boolean;
13
13
  }
14
14
  export interface Libp2pDefaultsOptions {
15
- peerId?: PeerId;
15
+ privateKey?: PrivateKey;
16
16
  keychain?: KeychainInit;
17
17
  dns?: DNS;
18
18
  }
@@ -1 +1 @@
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,EAAY,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAC5C,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;IACvB,GAAG,CAAC,EAAE,GAAG,CAAA;CACV;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,CAqCnJ"}
1
+ {"version":3,"file":"libp2p.d.ts","sourceRoot":"","sources":["../../../src/utils/libp2p.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC5E,OAAO,KAAK,EAAY,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAC5C,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,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,CAAC,EAAE,GAAG,CAAA;CACV;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,CAuCnJ"}
@@ -1,23 +1,30 @@
1
+ import { generateKeyPair } from '@libp2p/crypto/keys';
1
2
  import { keychain } from '@libp2p/keychain';
2
3
  import { defaultLogger } from '@libp2p/logger';
3
4
  import { Key } from 'interface-datastore';
4
5
  import { createLibp2p as create } from 'libp2p';
5
6
  import { libp2pDefaults } from './libp2p-defaults.js';
6
7
  export async function createLibp2p(options) {
7
- const peerId = options.libp2p?.peerId;
8
+ const privateKey = options.libp2p?.privateKey;
8
9
  const logger = options.logger ?? defaultLogger();
9
10
  const selfKey = new Key('/pkcs8/self');
10
11
  let chain;
11
12
  // if no peer id was passed, try to load it from the keychain
12
- if (peerId == null && options.datastore != null) {
13
+ if (privateKey == null && options.datastore != null) {
13
14
  chain = keychain(options.keychain)({
14
15
  datastore: options.datastore,
15
16
  logger
16
17
  });
18
+ options.libp2p = options.libp2p ?? {};
17
19
  if (await options.datastore.has(selfKey)) {
18
20
  // load the peer id from the keychain
19
- options.libp2p = options.libp2p ?? {};
20
- options.libp2p.peerId = await chain.exportPeerId('self');
21
+ options.libp2p.privateKey = await chain.exportKey('self');
22
+ }
23
+ else {
24
+ const privateKey = await generateKeyPair('Ed25519');
25
+ options.libp2p.privateKey = privateKey;
26
+ // persist the peer id in the keychain for next time
27
+ await chain.importKey('self', privateKey);
21
28
  }
22
29
  }
23
30
  const defaults = libp2pDefaults(options);
@@ -29,10 +36,6 @@ export async function createLibp2p(options) {
29
36
  ...options.libp2p,
30
37
  start: false
31
38
  });
32
- if (peerId == null && chain != null && !await options.datastore.has(selfKey)) {
33
- // persist the peer id in the keychain for next time
34
- await chain.importPeer('self', node.peerId);
35
- }
36
39
  return node;
37
40
  }
38
41
  //# sourceMappingURL=libp2p.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p.js","sourceRoot":"","sources":["../../../src/utils/libp2p.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzC,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAsBrD,MAAM,CAAC,KAAK,UAAU,YAAY,CAA8D,OAA+B;IAC7H,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,CAAA;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE,CAAA;IAChD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,IAAI,KAA2B,CAAA;IAE/B,6DAA6D;IAC7D,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;QAChD,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM;SACP,CAAC,CAAA;QAEF,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,qCAAqC;YACrC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAA;YACrC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC1D,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAA;IAC5D,OAAO,GAAG,OAAO,IAAI,EAAE,CAAA;IAEvB,+EAA+E;IAC/E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC;QACxB,GAAG,QAAQ;QACX,GAAG,OAAO,CAAC,MAAM;QACjB,KAAK,EAAE,KAAK;KACb,CAAC,CAAA;IAEF,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7E,oDAAoD;QACpD,MAAM,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"libp2p.js","sourceRoot":"","sources":["../../../src/utils/libp2p.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzC,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAsBrD,MAAM,CAAC,KAAK,UAAU,YAAY,CAA8D,OAA+B;IAC7H,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,CAAA;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE,CAAA;IAChD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,IAAI,KAA2B,CAAA;IAE/B,6DAA6D;IAC7D,IAAI,UAAU,IAAI,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;QACpD,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAA;QAErC,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,qCAAqC;YACrC,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;YACnD,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAA;YAEtC,oDAAoD;YACpD,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAA;IAC5D,OAAO,GAAG,OAAO,IAAI,EAAE,CAAA;IAEvB,+EAA+E;IAC/E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC;QACxB,GAAG,QAAQ;QACX,GAAG,OAAO,CAAC,MAAM;QACjB,KAAK,EAAE,KAAK;KACb,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,3 +1,3 @@
1
- export declare const version = "4.2.5";
1
+ export declare const version = "4.2.6-ec8bf66";
2
2
  export declare const name = "helia";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAA;AAC9B,eAAO,MAAM,IAAI,UAAU,CAAA"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,kBAAkB,CAAA;AACtC,eAAO,MAAM,IAAI,UAAU,CAAA"}
@@ -1,3 +1,3 @@
1
- export const version = '4.2.5';
1
+ export const version = '4.2.6-ec8bf66';
2
2
  export const name = 'helia';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAA;AAC9B,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAA;AACtC,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "helia",
3
- "version": "4.2.5",
3
+ "version": "4.2.6-ec8bf66",
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",
@@ -54,37 +54,39 @@
54
54
  "prepublishOnly": "node scripts/update-version.js && npm run build"
55
55
  },
56
56
  "dependencies": {
57
- "@chainsafe/libp2p-noise": "^15.0.0",
58
- "@chainsafe/libp2p-yamux": "^6.0.2",
59
- "@helia/block-brokers": "^3.0.3",
57
+ "@chainsafe/libp2p-noise": "^16.0.0",
58
+ "@chainsafe/libp2p-yamux": "^7.0.0",
59
+ "@helia/block-brokers": "3.0.4-ec8bf66",
60
60
  "@helia/delegated-routing-v1-http-api-client": "^3.0.0",
61
- "@helia/interface": "^4.3.1",
62
- "@helia/routers": "^1.1.1",
63
- "@helia/utils": "^0.3.3",
64
- "@libp2p/autonat": "^1.0.13",
65
- "@libp2p/bootstrap": "^10.0.16",
66
- "@libp2p/circuit-relay-v2": "^1.0.16",
67
- "@libp2p/dcutr": "^1.0.13",
68
- "@libp2p/identify": "^2.0.0",
69
- "@libp2p/interface": "^1.1.4",
70
- "@libp2p/kad-dht": "^12.0.8",
71
- "@libp2p/keychain": "^4.0.9",
72
- "@libp2p/logger": "^4.0.7",
73
- "@libp2p/mdns": "^10.0.16",
74
- "@libp2p/mplex": "^10.0.16",
75
- "@libp2p/ping": "^1.0.12",
76
- "@libp2p/tcp": "^9.0.16",
77
- "@libp2p/upnp-nat": "^1.0.14",
78
- "@libp2p/webrtc": "^4.0.20",
79
- "@libp2p/websockets": "^8.0.16",
80
- "@libp2p/webtransport": "^4.0.20",
61
+ "@helia/interface": "4.3.1-ec8bf66",
62
+ "@helia/routers": "1.1.1-ec8bf66",
63
+ "@helia/utils": "0.3.3-ec8bf66",
64
+ "@libp2p/autonat": "^2.0.0",
65
+ "@libp2p/bootstrap": "^11.0.0",
66
+ "@libp2p/circuit-relay-v2": "^2.0.0",
67
+ "@libp2p/crypto": "^5.0.0",
68
+ "@libp2p/dcutr": "^2.0.0",
69
+ "@libp2p/identify": "^3.0.0",
70
+ "@libp2p/interface": "^2.0.0",
71
+ "@libp2p/kad-dht": "^13.0.0",
72
+ "@libp2p/keychain": "^5.0.2",
73
+ "@libp2p/logger": "^5.0.0",
74
+ "@libp2p/mdns": "^11.0.0",
75
+ "@libp2p/mplex": "^11.0.0",
76
+ "@libp2p/ping": "^2.0.0",
77
+ "@libp2p/tcp": "^10.0.0",
78
+ "@libp2p/tls": "^2.0.1",
79
+ "@libp2p/upnp-nat": "^2.0.0",
80
+ "@libp2p/webrtc": "^5.0.0",
81
+ "@libp2p/websockets": "^9.0.0",
82
+ "@libp2p/webtransport": "^5.0.0",
81
83
  "@multiformats/dns": "^1.0.1",
82
- "blockstore-core": "^4.4.0",
83
- "datastore-core": "^9.2.9",
84
+ "blockstore-core": "^5.0.0",
85
+ "datastore-core": "^10.0.0",
84
86
  "interface-blockstore": "^5.2.10",
85
87
  "interface-datastore": "^8.2.11",
86
- "ipns": "^9.0.0",
87
- "libp2p": "^1.3.0",
88
+ "ipns": "^10.0.0",
89
+ "libp2p": "^2.0.0",
88
90
  "multiformats": "^13.1.0"
89
91
  },
90
92
  "devDependencies": {
@@ -35,7 +35,7 @@ export function libp2pDefaults (options: Libp2pDefaultsOptions = {}): Libp2pOpti
35
35
  const agentVersion = `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${globalThis.navigator.userAgent}`
36
36
 
37
37
  return {
38
- peerId: options.peerId,
38
+ privateKey: options.privateKey,
39
39
  dns: options.dns,
40
40
  addresses: {
41
41
  listen: [
@@ -51,7 +51,7 @@ export function libp2pDefaults (options: Libp2pDefaultsOptions = {}): Libp2pOpti
51
51
  webTransport(),
52
52
  webSockets()
53
53
  ],
54
- connectionEncryption: [
54
+ connectionEncrypters: [
55
55
  noise()
56
56
  ],
57
57
  streamMuxers: [
@@ -12,6 +12,7 @@ import { mdns } from '@libp2p/mdns'
12
12
  import { mplex } from '@libp2p/mplex'
13
13
  import { ping, type PingService } from '@libp2p/ping'
14
14
  import { tcp } from '@libp2p/tcp'
15
+ import { tls } from '@libp2p/tls'
15
16
  import { uPnPNAT } from '@libp2p/upnp-nat'
16
17
  import { webRTC, webRTCDirect } from '@libp2p/webrtc'
17
18
  import { webSockets } from '@libp2p/websockets'
@@ -39,7 +40,7 @@ export function libp2pDefaults (options: Libp2pDefaultsOptions = {}): Libp2pOpti
39
40
  const agentVersion = `${name}/${version} ${libp2pInfo.name}/${libp2pInfo.version} UserAgent=${process.version}`
40
41
 
41
42
  return {
42
- peerId: options.peerId,
43
+ privateKey: options.privateKey,
43
44
  dns: options.dns,
44
45
  addresses: {
45
46
  listen: [
@@ -57,8 +58,9 @@ export function libp2pDefaults (options: Libp2pDefaultsOptions = {}): Libp2pOpti
57
58
  webRTCDirect(),
58
59
  webSockets()
59
60
  ],
60
- connectionEncryption: [
61
- noise()
61
+ connectionEncrypters: [
62
+ noise(),
63
+ tls()
62
64
  ],
63
65
  streamMuxers: [
64
66
  yamux(),
@@ -1,10 +1,11 @@
1
+ import { generateKeyPair } from '@libp2p/crypto/keys'
1
2
  import { keychain } from '@libp2p/keychain'
2
3
  import { defaultLogger } from '@libp2p/logger'
3
4
  import { Key } from 'interface-datastore'
4
5
  import { createLibp2p as create } from 'libp2p'
5
6
  import { libp2pDefaults } from './libp2p-defaults.js'
6
7
  import type { DefaultLibp2pServices } from './libp2p-defaults.js'
7
- import type { ComponentLogger, Libp2p, PeerId } from '@libp2p/interface'
8
+ import type { ComponentLogger, Libp2p, PrivateKey } from '@libp2p/interface'
8
9
  import type { Keychain, KeychainInit } from '@libp2p/keychain'
9
10
  import type { DNS } from '@multiformats/dns'
10
11
  import type { Datastore } from 'interface-datastore'
@@ -19,28 +20,35 @@ export interface CreateLibp2pOptions<T extends Record<string, unknown>> {
19
20
  }
20
21
 
21
22
  export interface Libp2pDefaultsOptions {
22
- peerId?: PeerId
23
+ privateKey?: PrivateKey
23
24
  keychain?: KeychainInit
24
25
  dns?: DNS
25
26
  }
26
27
 
27
28
  export async function createLibp2p <T extends Record<string, unknown> = DefaultLibp2pServices> (options: CreateLibp2pOptions<T>): Promise<Libp2p<T>> {
28
- const peerId = options.libp2p?.peerId
29
+ const privateKey = options.libp2p?.privateKey
29
30
  const logger = options.logger ?? defaultLogger()
30
31
  const selfKey = new Key('/pkcs8/self')
31
32
  let chain: Keychain | undefined
32
33
 
33
34
  // if no peer id was passed, try to load it from the keychain
34
- if (peerId == null && options.datastore != null) {
35
+ if (privateKey == null && options.datastore != null) {
35
36
  chain = keychain(options.keychain)({
36
37
  datastore: options.datastore,
37
38
  logger
38
39
  })
39
40
 
41
+ options.libp2p = options.libp2p ?? {}
42
+
40
43
  if (await options.datastore.has(selfKey)) {
41
44
  // load the peer id from the keychain
42
- options.libp2p = options.libp2p ?? {}
43
- options.libp2p.peerId = await chain.exportPeerId('self')
45
+ options.libp2p.privateKey = await chain.exportKey('self')
46
+ } else {
47
+ const privateKey = await generateKeyPair('Ed25519')
48
+ options.libp2p.privateKey = privateKey
49
+
50
+ // persist the peer id in the keychain for next time
51
+ await chain.importKey('self', privateKey)
44
52
  }
45
53
  }
46
54
 
@@ -55,10 +63,5 @@ export async function createLibp2p <T extends Record<string, unknown> = DefaultL
55
63
  start: false
56
64
  })
57
65
 
58
- if (peerId == null && chain != null && !await options.datastore.has(selfKey)) {
59
- // persist the peer id in the keychain for next time
60
- await chain.importPeer('self', node.peerId)
61
- }
62
-
63
66
  return node
64
67
  }
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '4.2.5'
1
+ export const version = '4.2.6-ec8bf66'
2
2
  export const name = 'helia'
@@ -1,12 +0,0 @@
1
- {
2
- "DAGWalker": "https://ipfs.github.io/helia/interfaces/helia.DAGWalker.html",
3
- ".:DAGWalker": "https://ipfs.github.io/helia/interfaces/helia.DAGWalker.html",
4
- "DefaultLibp2pServices": "https://ipfs.github.io/helia/interfaces/helia.DefaultLibp2pServices.html",
5
- "HeliaInit": "https://ipfs.github.io/helia/interfaces/helia.HeliaInit.html",
6
- ".:HeliaInit": "https://ipfs.github.io/helia/interfaces/helia.HeliaInit.html",
7
- "HeliaLibp2p": "https://ipfs.github.io/helia/interfaces/helia.HeliaLibp2p.html",
8
- ".:HeliaLibp2p": "https://ipfs.github.io/helia/interfaces/helia.HeliaLibp2p.html",
9
- "createHelia": "https://ipfs.github.io/helia/functions/helia.createHelia.html",
10
- ".:createHelia": "https://ipfs.github.io/helia/functions/helia.createHelia.html",
11
- "libp2pDefaults": "https://ipfs.github.io/helia/functions/helia.libp2pDefaults.html"
12
- }