libp2p 2.8.14 → 2.9.0

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.
@@ -170,4 +170,9 @@ export type Libp2pOptions<T extends ServiceMap = ServiceMap> = Libp2pInit<T> & {
170
170
  * ```
171
171
  */
172
172
  export declare function createLibp2p<T extends ServiceMap = ServiceMap>(options?: Libp2pOptions<T>): Promise<Libp2p<T>>;
173
+ /**
174
+ * Returns true if the passed object is a libp2p node - this can be used for
175
+ * type guarding in TypeScript.
176
+ */
177
+ export declare function isLibp2p<T extends ServiceMap = ServiceMap>(obj?: any): obj is Libp2p<T>;
173
178
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACjP,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI;KAChE,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC;CACnE,CAAA;AAED,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAA;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAEzE;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC3D;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,UAAU,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE5B;;OAEG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAA;IAE9B;;OAEG;IACH,iBAAiB,CAAC,EAAE,qBAAqB,CAAA;IAEzC;;OAEG;IACH,iBAAiB,CAAC,EAAE,qBAAqB,CAAA;IAEzC;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IAEjC;;OAEG;IACH,gBAAgB,CAAC,EAAE,oBAAoB,CAAA;IAEvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAA;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,uBAAuB,CAAA;IAEnC;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,SAAS,CAAC,CAAA;IAEzD;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,kBAAkB,CAAC,CAAA;IAEpE;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,mBAAmB,CAAC,CAAA;IAE7E;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,aAAa,CAAC,CAAA;IAEhE;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,WAAW,CAAC,CAAA;IAE5D;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,cAAc,CAAC,CAAA;IAElE;;OAEG;IACH,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAA;IAEzC;;OAEG;IACH,mBAAmB,CAAC,CAAC,UAAU,EAAE,UAAU,GAAG,mBAAmB,CAAA;IAEjE;;OAEG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;IAE/B;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CAAC,EAAE,eAAe,CAAA;IAExB;;;;OAIG;IACH,GAAG,CAAC,EAAE,GAAG,CAAA;CACV;AAED,YAAY,EAAE,MAAM,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,CAAA;AAE1F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAElG;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,YAAY,CAAE,CAAC,SAAS,UAAU,GAAG,UAAU,EAAG,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAa1H;AAKD;;;GAGG;AACH,wBAAgB,QAAQ,CAAE,CAAC,SAAS,UAAU,GAAG,UAAU,EAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAWzF"}
package/dist/src/index.js CHANGED
@@ -55,4 +55,20 @@ export async function createLibp2p(options = {}) {
55
55
  }
56
56
  return node;
57
57
  }
58
+ // a non-exhaustive list of methods found on the libp2p object
59
+ const LIBP2P_METHODS = ['dial', 'dialProtocol', 'hangUp', 'handle', 'unhandle', 'getMultiaddrs', 'getProtocols'];
60
+ /**
61
+ * Returns true if the passed object is a libp2p node - this can be used for
62
+ * type guarding in TypeScript.
63
+ */
64
+ export function isLibp2p(obj) {
65
+ if (obj == null) {
66
+ return false;
67
+ }
68
+ if (obj instanceof Libp2pClass) {
69
+ return true;
70
+ }
71
+ // if these are all functions it's probably a libp2p object
72
+ return LIBP2P_METHODS.every(m => typeof obj[m] === 'function');
73
+ }
58
74
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AAiBnD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AA0IzE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAsC,UAA4B,EAAE;IACpG,OAAO,CAAC,UAAU,KAAK,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;IAEvD,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC;QAC3B,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC;KACjD,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AAiBnD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AA0IzE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAsC,UAA4B,EAAE;IACpG,OAAO,CAAC,UAAU,KAAK,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;IAEvD,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC;QAC3B,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC;KACjD,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,8DAA8D;AAC9D,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;AAEhH;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAsC,GAAS;IACrE,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,2DAA2D;IAC3D,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAA;AAChE,CAAC"}
@@ -1,3 +1,3 @@
1
- export declare const version = "2.8.14";
1
+ export declare const version = "2.9.0";
2
2
  export declare const name = "js-libp2p";
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,WAAW,CAAA;AAC/B,eAAO,MAAM,IAAI,cAAc,CAAA"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAA;AAC9B,eAAO,MAAM,IAAI,cAAc,CAAA"}
@@ -1,3 +1,3 @@
1
- export const version = '2.8.14';
1
+ export const version = '2.9.0';
2
2
  export const name = 'js-libp2p';
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,QAAQ,CAAA;AAC/B,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAA"}
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,WAAW,CAAA"}
@@ -13,6 +13,8 @@
13
13
  "dnsaddrResolver": "https://libp2p.github.io/js-libp2p/variables/libp2p.index.dnsaddrResolver.html",
14
14
  "createLibp2p": "https://libp2p.github.io/js-libp2p/functions/libp2p.index.createLibp2p.html",
15
15
  ".:createLibp2p": "https://libp2p.github.io/js-libp2p/functions/libp2p.index.createLibp2p.html",
16
+ "isLibp2p": "https://libp2p.github.io/js-libp2p/functions/libp2p.index.isLibp2p.html",
17
+ ".:isLibp2p": "https://libp2p.github.io/js-libp2p/functions/libp2p.index.isLibp2p.html",
16
18
  "userAgent": "https://libp2p.github.io/js-libp2p/functions/libp2p.user-agent.userAgent.html",
17
19
  "./user-agent:userAgent": "https://libp2p.github.io/js-libp2p/functions/libp2p.user-agent.userAgent.html",
18
20
  "name": "https://libp2p.github.io/js-libp2p/variables/libp2p.version.name.html",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "libp2p",
3
- "version": "2.8.14",
3
+ "version": "2.9.0",
4
4
  "description": "JavaScript implementation of libp2p, a modular peer to peer network stack",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/libp2p#readme",
package/src/index.ts CHANGED
@@ -212,3 +212,23 @@ export async function createLibp2p <T extends ServiceMap = ServiceMap> (options:
212
212
 
213
213
  return node
214
214
  }
215
+
216
+ // a non-exhaustive list of methods found on the libp2p object
217
+ const LIBP2P_METHODS = ['dial', 'dialProtocol', 'hangUp', 'handle', 'unhandle', 'getMultiaddrs', 'getProtocols']
218
+
219
+ /**
220
+ * Returns true if the passed object is a libp2p node - this can be used for
221
+ * type guarding in TypeScript.
222
+ */
223
+ export function isLibp2p <T extends ServiceMap = ServiceMap> (obj?: any): obj is Libp2p<T> {
224
+ if (obj == null) {
225
+ return false
226
+ }
227
+
228
+ if (obj instanceof Libp2pClass) {
229
+ return true
230
+ }
231
+
232
+ // if these are all functions it's probably a libp2p object
233
+ return LIBP2P_METHODS.every(m => typeof obj[m] === 'function')
234
+ }
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '2.8.14'
1
+ export const version = '2.9.0'
2
2
  export const name = 'js-libp2p'