libp2p 0.46.12-e8123d3f → 0.46.12-e9099d40

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 (88) hide show
  1. package/dist/index.min.js +30 -27
  2. package/dist/src/address-manager/utils.d.ts +3 -0
  3. package/dist/src/address-manager/utils.d.ts.map +1 -1
  4. package/dist/src/address-manager/utils.js +10 -0
  5. package/dist/src/address-manager/utils.js.map +1 -1
  6. package/dist/src/autonat/index.d.ts.map +1 -1
  7. package/dist/src/autonat/index.js +15 -6
  8. package/dist/src/autonat/index.js.map +1 -1
  9. package/dist/src/circuit-relay/constants.d.ts +4 -0
  10. package/dist/src/circuit-relay/constants.d.ts.map +1 -1
  11. package/dist/src/circuit-relay/constants.js +4 -0
  12. package/dist/src/circuit-relay/constants.js.map +1 -1
  13. package/dist/src/circuit-relay/server/index.d.ts.map +1 -1
  14. package/dist/src/circuit-relay/server/index.js +20 -8
  15. package/dist/src/circuit-relay/server/index.js.map +1 -1
  16. package/dist/src/circuit-relay/server/reservation-store.d.ts.map +1 -1
  17. package/dist/src/circuit-relay/server/reservation-store.js +15 -6
  18. package/dist/src/circuit-relay/server/reservation-store.js.map +1 -1
  19. package/dist/src/circuit-relay/transport/index.d.ts.map +1 -1
  20. package/dist/src/circuit-relay/transport/index.js +13 -11
  21. package/dist/src/circuit-relay/transport/index.js.map +1 -1
  22. package/dist/src/{config.d.ts → config/config.d.ts} +1 -1
  23. package/dist/src/config/config.d.ts.map +1 -0
  24. package/dist/src/config/config.js +35 -0
  25. package/dist/src/config/config.js.map +1 -0
  26. package/dist/src/config/helpers.d.ts +2 -0
  27. package/dist/src/config/helpers.d.ts.map +1 -0
  28. package/dist/src/config/helpers.js +13 -0
  29. package/dist/src/config/helpers.js.map +1 -0
  30. package/dist/src/connection-manager/utils.d.ts +3 -0
  31. package/dist/src/connection-manager/utils.d.ts.map +1 -1
  32. package/dist/src/connection-manager/utils.js +21 -0
  33. package/dist/src/connection-manager/utils.js.map +1 -1
  34. package/dist/src/dcutr/dcutr.d.ts.map +1 -1
  35. package/dist/src/dcutr/dcutr.js +13 -12
  36. package/dist/src/dcutr/dcutr.js.map +1 -1
  37. package/dist/src/fetch/constants.d.ts +3 -0
  38. package/dist/src/fetch/constants.d.ts.map +1 -1
  39. package/dist/src/fetch/constants.js +3 -0
  40. package/dist/src/fetch/constants.js.map +1 -1
  41. package/dist/src/fetch/index.d.ts.map +1 -1
  42. package/dist/src/fetch/index.js +19 -9
  43. package/dist/src/fetch/index.js.map +1 -1
  44. package/dist/src/identify/consts.d.ts +11 -1
  45. package/dist/src/identify/consts.d.ts.map +1 -1
  46. package/dist/src/identify/consts.js +10 -0
  47. package/dist/src/identify/consts.js.map +1 -1
  48. package/dist/src/identify/identify.d.ts +1 -0
  49. package/dist/src/identify/identify.d.ts.map +1 -1
  50. package/dist/src/identify/identify.js +31 -31
  51. package/dist/src/identify/identify.js.map +1 -1
  52. package/dist/src/identify/index.d.ts.map +1 -1
  53. package/dist/src/identify/index.js.map +1 -1
  54. package/dist/src/libp2p.js +1 -1
  55. package/dist/src/libp2p.js.map +1 -1
  56. package/dist/src/ping/index.d.ts.map +1 -1
  57. package/dist/src/ping/index.js +13 -5
  58. package/dist/src/ping/index.js.map +1 -1
  59. package/dist/src/upnp-nat/index.d.ts +1 -1
  60. package/dist/src/upnp-nat/index.d.ts.map +1 -1
  61. package/dist/src/upnp-nat/index.js +16 -6
  62. package/dist/src/upnp-nat/index.js.map +1 -1
  63. package/dist/src/version.d.ts +1 -1
  64. package/dist/src/version.js +1 -1
  65. package/package.json +23 -22
  66. package/src/address-manager/utils.ts +14 -0
  67. package/src/autonat/index.ts +16 -6
  68. package/src/circuit-relay/constants.ts +5 -0
  69. package/src/circuit-relay/server/index.ts +24 -8
  70. package/src/circuit-relay/server/reservation-store.ts +16 -6
  71. package/src/circuit-relay/transport/index.ts +16 -14
  72. package/src/config/config.ts +44 -0
  73. package/src/config/helpers.ts +12 -0
  74. package/src/connection-manager/utils.ts +23 -0
  75. package/src/dcutr/dcutr.ts +14 -13
  76. package/src/fetch/constants.ts +4 -0
  77. package/src/fetch/index.ts +21 -10
  78. package/src/identify/consts.ts +13 -0
  79. package/src/identify/identify.ts +42 -33
  80. package/src/identify/index.ts +1 -4
  81. package/src/libp2p.ts +1 -1
  82. package/src/ping/index.ts +15 -5
  83. package/src/upnp-nat/index.ts +20 -8
  84. package/src/version.ts +1 -1
  85. package/dist/src/config.d.ts.map +0 -1
  86. package/dist/src/config.js +0 -34
  87. package/dist/src/config.js.map +0 -1
  88. package/src/config.ts +0 -41
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p.js","sourceRoot":"","sources":["../../src/libp2p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libp2p.js","sourceRoot":"","sources":["../../src/libp2p.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAuB,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAChE,OAAO,EAAoB,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAkB,MAAM,yBAAyB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAc/C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;AAE5B,MAAM,OAAO,UAA2D,SAAQ,YAA0B;IACjG,MAAM,CAAQ;IACd,SAAS,CAAW;IACpB,cAAc,CAAgB;IAC9B,WAAW,CAAa;IACxB,QAAQ,CAAU;IAClB,OAAO,CAAU;IACjB,QAAQ,CAAG;IAEX,UAAU,CAAY;IAC7B,QAAQ,CAAS;IAEjB,YAAa,IAAmB;QAC9B,KAAK,EAAE,CAAA;QAEP,oFAAoF;QACpF,oCAAoC;QACpC,MAAM,MAAM,GAAG,IAAI,YAAY,EAAgB,CAAA;QAC/C,MAAM,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,CAAC,aAAa,GAAG,CAAC,GAAQ,EAAE,EAAE;YAClC,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;YAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CACvC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAClD,CAAA;YAED,OAAO,cAAc,IAAI,cAAc,CAAA;QACzC,CAAC,CAAA;QAED,IAAI;YACF,sCAAsC;YACtC,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;SACpC;QAAC,MAAM,GAAE;QAEV,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,2CAA2C;QAC3C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC;YACrD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM;YACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,eAAe,EAAE;YAClD,eAAe,EAAE,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC;SACvD,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,mBAAmB,CAAC,UAAU,EAAE;YACxF,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,sBAAsB;YACrE,GAAG,IAAI,CAAC,SAAS;SAClB,CAAC,CAAC,CAAA;QAEH,iBAAiB;QACjB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE;YACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;SACjF;QAED,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;YACtD,uEAAuE;YACvE,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE;gBAC/B,MAAM,QAAQ,GAAa;oBACzB,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;oBACtB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC3D,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;iBACrC,CAAA;gBAED,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;aAC5E;QACH,CAAC,CAAC,CAAA;QAEF,4CAA4C;QAC5C,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,EAAE;YACpC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAA;SACrF;QAED,sBAAsB;QACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE;YAC9D,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1J,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5H,qBAAqB,EAAE,IAAI,CAAC,iBAAiB,CAAC,qBAAqB;SACpE,CAAC,CAAA;QAEF,8BAA8B;QAC9B,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QAEhH,gCAAgC;QAChC,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,IAAI,wBAAwB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAA;QAEnH,uBAAuB;QACvB,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;QAE3E,2CAA2C;QAC3C,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;QAErG,kBAAkB;QAClB,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,EAAE,CAAA;QACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE;YACvF,GAAG,YAAY;YACf,GAAG,IAAI,CAAC,QAAQ;SACjB,CAAC,CAAC,CAAA;QAEH,eAAe;QACf,MAAM,WAAW,GAAkB,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,eAAe,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACpJ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,IAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE;YAC9H,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC,CAAA;QAEH,kBAAkB;QAClB,MAAM,cAAc,GAAqB,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAChK,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE;YAC3I,OAAO,EAAE,cAAc;SACxB,CAAC,CAAC,CAGF;QAAA,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;YAEvF,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,oBAAoB;QACpB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAC1G,CAAC,CAAC,CAAA;QAEF,uBAAuB;QACvB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;YACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACzC,MAAM,OAAO,GAAQ,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAEnD,IAAI,OAAO,IAAI,IAAI,EAAE;oBACnB,GAAG,CAAC,KAAK,CAAC,wDAAwD,EAAE,IAAI,CAAC,CAAA;oBACzE,SAAQ;iBACT;gBAED,IAAI,CAAC,QAAQ,CAAC,IAAe,CAAC,GAAG,OAAO,CAAA;gBACxC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;gBAEtC,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE;oBACnC,GAAG,CAAC,4CAA4C,EAAE,IAAI,CAAC,CAAA;oBACvD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;iBAC7C;gBAED,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE;oBAChC,GAAG,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAA;oBACpD,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;iBACvC;gBAED,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE;oBAClC,GAAG,CAAC,2CAA2C,EAAE,IAAI,CAAC,CAAA;oBACtD,OAAO,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAA0B,EAAE,EAAE;wBAC7E,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;oBAC5B,CAAC,CAAC,CAAA;iBACH;aACF;SACF;IACH,CAAC;IAEO,kBAAkB,CAAM,IAAY,EAAE,SAAY;QACxD,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,GAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE,IAAI,CAAC,CAAA;SACtD;QAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAA;QAEjC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAM;SACP;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QAEpB,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAEzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAA;QAE3C,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;YACjD,GAAG,CAAC,kCAAkC,CAAC,CAAA;YACvC,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;SAC/D;QAED,IAAI;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAA;YACrC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;YAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAA;YAEpC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YACjD,GAAG,CAAC,oBAAoB,CAAC,CAAA;SAC1B;QAAC,OAAO,GAAQ,EAAE;YACjB,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAA;YACnD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;YACjB,MAAM,GAAG,CAAA;SACV;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAM;SACP;QAED,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAEzB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QAErB,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAA;QACpC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAA;QAEnC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAChD,GAAG,CAAC,oBAAoB,CAAC,CAAA;IAC3B,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,cAAc,CAAE,MAAe;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IACjE,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAA;IACzD,CAAC;IAED,QAAQ;QACN,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;QAE7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,cAAc,EAAE,EAAE;YACrE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SAC7B;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CAAE,IAAsC,EAAE,UAAwB,EAAE;QAC5E,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACxE,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,IAAsC,EAAE,SAA4B,EAAE,UAA4B,EAAE;QACtH,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,MAAM,IAAI,SAAS,CAAC,6CAA6C,EAAE,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAC3G;QAED,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAE9D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,SAAS,CAAC,6CAA6C,EAAE,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAC3G;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEjD,OAAO,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE,CAAA;IACtD,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,EAAE,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,IAAwB,EAAE,UAAwB,EAAE;QAChE,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;YACrB,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAE,IAAY,EAAE,UAAwB,EAAE;QAC1D,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAA;SACtB;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAE/C,IAAI,QAAQ,CAAC,EAAE,CAAC,SAAS,IAAI,IAAI,EAAE;YACjC,OAAO,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAA;SAC7B;QAED,MAAM,OAAO,GAAG,gBAAgB,CAAC;YAC/B,oBAAoB,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,MAAM;SACtB,CAAC,CAAA;QAEF,+CAA+C;QAC/C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC7D,mCAAmC;QACnC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAEzB,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;YAC/B,SAAS,EAAE,KAAK;SACjB,CAAC,CAAA;QAEF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,SAA4B,EAAE,OAAsB,EAAE,OAA8B;QAChG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;SACxB;QAED,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACpE,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,SAA4B;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;SACxB;QAED,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACpD,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,QAAgB,EAAE,QAAkB;QAClD,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC;IAED,UAAU,CAAE,EAAU;QACpB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAC1C,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAE,GAA0B;QAC1C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;QAE5B,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE;YACjD,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;YAC/C,OAAM;SACP;QAED,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;YAC5C,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;aACC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IACrC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAmD,OAAyB;IAChH,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE;QAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAkC,CAAA;QAE5D,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,IAAI;gBACF,yCAAyC;gBACzC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;oBACnC,SAAS;iBACV,EAAE,YAAY,CAAC,eAAe,CAAC,eAAe,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;gBAErE,OAAO,CAAC,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;aACrD;YAAC,OAAO,GAAQ,EAAE;gBACjB,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,EAAE;oBAChC,MAAM,GAAG,CAAA;iBACV;aACF;SACF;KACF;IAED,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE;QAC1B,mDAAmD;QACnD,OAAO,CAAC,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAA;KAC7C;IAED,OAAO,IAAI,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ping/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,KAAK,EAAsB,SAAS,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAIxD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAC1F;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AA2HD,wBAAgB,WAAW,CAAE,IAAI,GAAE,eAAoB,GAAG,CAAC,UAAU,EAAE,qBAAqB,KAAK,WAAW,CAE3G"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ping/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,KAAK,EAAsB,SAAS,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAIxD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAC1F;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AAoID,wBAAgB,WAAW,CAAE,IAAI,GAAE,eAAoB,GAAG,CAAC,UAAU,EAAE,qBAAqB,KAAK,WAAW,CAE3G"}
@@ -4,6 +4,7 @@ import { logger } from '@libp2p/logger';
4
4
  import first from 'it-first';
5
5
  import { pipe } from 'it-pipe';
6
6
  import { equals as uint8ArrayEquals } from 'uint8arrays/equals';
7
+ import { boolean, number, object, string } from 'yup';
7
8
  import { codes } from '../errors.js';
8
9
  import { PROTOCOL_PREFIX, PROTOCOL_NAME, PING_LENGTH, PROTOCOL_VERSION, TIMEOUT, MAX_INBOUND_STREAMS, MAX_OUTBOUND_STREAMS } from './constants.js';
9
10
  const log = logger('libp2p:ping');
@@ -18,11 +19,18 @@ class DefaultPingService {
18
19
  constructor(components, init) {
19
20
  this.components = components;
20
21
  this.started = false;
21
- this.protocol = `/${init.protocolPrefix ?? PROTOCOL_PREFIX}/${PROTOCOL_NAME}/${PROTOCOL_VERSION}`;
22
- this.timeout = init.timeout ?? TIMEOUT;
23
- this.maxInboundStreams = init.maxInboundStreams ?? MAX_INBOUND_STREAMS;
24
- this.maxOutboundStreams = init.maxOutboundStreams ?? MAX_OUTBOUND_STREAMS;
25
- this.runOnTransientConnection = init.runOnTransientConnection ?? true;
22
+ const validatedConfig = object({
23
+ protocolPrefix: string().default(PROTOCOL_PREFIX),
24
+ timeout: number().integer().default(TIMEOUT),
25
+ maxInboundStreams: number().integer().min(0).default(MAX_INBOUND_STREAMS),
26
+ maxOutboundStreams: number().integer().min(0).default(MAX_OUTBOUND_STREAMS),
27
+ runOnTransientConnection: boolean().default(true)
28
+ }).validateSync(init);
29
+ this.protocol = `/${validatedConfig.protocolPrefix}/${PROTOCOL_NAME}/${PROTOCOL_VERSION}`;
30
+ this.timeout = validatedConfig.timeout;
31
+ this.maxInboundStreams = validatedConfig.maxInboundStreams;
32
+ this.maxOutboundStreams = validatedConfig.maxOutboundStreams;
33
+ this.runOnTransientConnection = validatedConfig.runOnTransientConnection;
26
34
  }
27
35
  async start() {
28
36
  await this.components.registrar.handle(this.protocol, this.handleMessage, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ping/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ping/index.ts"],"names":[],"mappings":"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"}
@@ -46,7 +46,7 @@ declare class UPnPNAT implements Startable {
46
46
  private readonly localAddress?;
47
47
  private readonly description;
48
48
  private readonly ttl;
49
- private readonly keepAlive;
49
+ private readonly keepAlive?;
50
50
  private readonly gateway?;
51
51
  private started;
52
52
  private client?;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/upnp-nat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAA;AASnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAA;AASpF,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,cAAc,EAAE,cAAc,CAAA;CAC/B;AAED,cAAM,OAAQ,YAAW,SAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAQ;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAC,CAAQ;gBAEV,UAAU,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW;IAgB7D,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAId;;;;OAIG;IACH,UAAU,IAAK,IAAI;IAcb,MAAM,IAAK,OAAO,CAAC,IAAI,CAAC;IAuD9B,UAAU,IAAK,MAAM;IAerB;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;CAY7B;AAED,wBAAgB,cAAc,CAAE,IAAI,GAAE,WAAgB,GAAG,CAAC,UAAU,EAAE,iBAAiB,KAAK,OAAO,CAIlG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/upnp-nat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAUnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAA;AASpF,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,cAAc,EAAE,cAAc,CAAA;CAC/B;AAED,cAAM,OAAQ,YAAW,SAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAQ;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAC,CAAQ;gBAEV,UAAU,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW;IA2B7D,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAId;;;;OAIG;IACH,UAAU,IAAK,IAAI;IAcb,MAAM,IAAK,OAAO,CAAC,IAAI,CAAC;IAuD9B,UAAU,IAAK,MAAM;IAerB;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;CAY7B;AAED,wBAAgB,cAAc,CAAE,IAAI,GAAE,WAAgB,GAAG,CAAC,UAAU,EAAE,iBAAiB,KAAK,OAAO,CAIlG"}
@@ -5,6 +5,7 @@ import { isLoopback } from '@libp2p/utils/multiaddr/is-loopback';
5
5
  import { fromNodeAddress } from '@multiformats/multiaddr';
6
6
  import isPrivateIp from 'private-ip';
7
7
  import { isBrowser } from 'wherearewe';
8
+ import { boolean, number, object, string } from 'yup';
8
9
  import { codes } from '../errors.js';
9
10
  import * as pkg from '../version.js';
10
11
  const log = logger('libp2p:upnp-nat');
@@ -25,12 +26,21 @@ class UPnPNAT {
25
26
  constructor(components, init) {
26
27
  this.components = components;
27
28
  this.started = false;
28
- this.externalAddress = init.externalAddress;
29
- this.localAddress = init.localAddress;
30
- this.description = init.description ?? `${pkg.name}@${pkg.version} ${this.components.peerId.toString()}`;
31
- this.ttl = init.ttl ?? DEFAULT_TTL;
32
- this.keepAlive = init.keepAlive ?? true;
33
- this.gateway = init.gateway;
29
+ const validIPRegex = /^(?:(?:^|\.)(?:\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){4}$/;
30
+ const validatedConfig = object({
31
+ externalAddress: string().matches(validIPRegex, 'Invalid IP address'),
32
+ localAddress: string().matches(validIPRegex, 'Invalid IP address'),
33
+ description: string().default(`${pkg.name}@${pkg.version} ${this.components.peerId.toString()}`),
34
+ ttl: number().integer().default(DEFAULT_TTL),
35
+ keepAlive: boolean().default(true),
36
+ gateway: string().optional()
37
+ }).validateSync(init);
38
+ this.externalAddress = validatedConfig.externalAddress;
39
+ this.localAddress = validatedConfig.localAddress;
40
+ this.description = validatedConfig.description;
41
+ this.ttl = validatedConfig.ttl;
42
+ this.keepAlive = validatedConfig.keepAlive;
43
+ this.gateway = validatedConfig.gateway;
34
44
  if (this.ttl < DEFAULT_TTL) {
35
45
  throw new CodeError(`NatManager ttl should be at least ${DEFAULT_TTL} seconds`, codes.ERR_INVALID_PARAMETERS);
36
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/upnp-nat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/upnp-nat/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export declare const version = "0.46.12-e8123d3f";
1
+ export declare const version = "0.46.12-e9099d40";
2
2
  export declare const name = "libp2p";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
- export const version = '0.46.12-e8123d3f';
1
+ export const version = '0.46.12-e9099d40';
2
2
  export const name = 'libp2p';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "libp2p",
3
- "version": "0.46.12-e8123d3f",
3
+ "version": "0.46.12-e9099d40",
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/master/packages/libp2p#readme",
@@ -121,18 +121,18 @@
121
121
  },
122
122
  "dependencies": {
123
123
  "@achingbrain/nat-port-mapper": "^1.0.9",
124
- "@libp2p/crypto": "2.0.4-e8123d3f",
125
- "@libp2p/interface": "0.1.2-e8123d3f",
126
- "@libp2p/interface-internal": "0.1.5-e8123d3f",
127
- "@libp2p/keychain": "3.0.4-e8123d3f",
128
- "@libp2p/logger": "3.0.2-e8123d3f",
129
- "@libp2p/multistream-select": "4.0.2-e8123d3f",
130
- "@libp2p/peer-collections": "4.0.4-e8123d3f",
131
- "@libp2p/peer-id": "3.0.2-e8123d3f",
132
- "@libp2p/peer-id-factory": "3.0.4-e8123d3f",
133
- "@libp2p/peer-record": "6.0.5-e8123d3f",
134
- "@libp2p/peer-store": "9.0.5-e8123d3f",
135
- "@libp2p/utils": "4.0.3-e8123d3f",
124
+ "@libp2p/crypto": "2.0.4-e9099d40",
125
+ "@libp2p/interface": "0.1.2-e9099d40",
126
+ "@libp2p/interface-internal": "0.1.5-e9099d40",
127
+ "@libp2p/keychain": "3.0.4-e9099d40",
128
+ "@libp2p/logger": "3.0.2-e9099d40",
129
+ "@libp2p/multistream-select": "4.0.2-e9099d40",
130
+ "@libp2p/peer-collections": "4.0.4-e9099d40",
131
+ "@libp2p/peer-id": "3.0.2-e9099d40",
132
+ "@libp2p/peer-id-factory": "3.0.4-e9099d40",
133
+ "@libp2p/peer-record": "6.0.5-e9099d40",
134
+ "@libp2p/peer-store": "9.0.5-e9099d40",
135
+ "@libp2p/utils": "4.0.3-e9099d40",
136
136
  "@multiformats/mafmt": "^12.1.2",
137
137
  "@multiformats/multiaddr": "^12.1.5",
138
138
  "@multiformats/multiaddr-matcher": "^1.0.0",
@@ -164,23 +164,24 @@
164
164
  "uint8arraylist": "^2.4.3",
165
165
  "uint8arrays": "^4.0.6",
166
166
  "wherearewe": "^2.0.1",
167
- "xsalsa20": "^1.1.0"
167
+ "xsalsa20": "^1.1.0",
168
+ "yup": "^1.2.0"
168
169
  },
169
170
  "devDependencies": {
170
171
  "@chainsafe/libp2p-gossipsub": "^10.0.0",
171
172
  "@chainsafe/libp2p-noise": "^13.0.0",
172
173
  "@chainsafe/libp2p-yamux": "^5.0.0",
173
- "@libp2p/bootstrap": "9.0.7-e8123d3f",
174
+ "@libp2p/bootstrap": "9.0.7-e9099d40",
174
175
  "@libp2p/daemon-client": "^7.0.0",
175
176
  "@libp2p/daemon-server": "^6.0.0",
176
- "@libp2p/floodsub": "8.0.8-e8123d3f",
177
- "@libp2p/interface-compliance-tests": "4.1.0-e8123d3f",
177
+ "@libp2p/floodsub": "8.0.8-e9099d40",
178
+ "@libp2p/interface-compliance-tests": "4.1.0-e9099d40",
178
179
  "@libp2p/interop": "^9.0.0",
179
- "@libp2p/kad-dht": "10.0.8-e8123d3f",
180
- "@libp2p/mdns": "9.0.9-e8123d3f",
181
- "@libp2p/mplex": "9.0.7-e8123d3f",
182
- "@libp2p/tcp": "8.0.8-e8123d3f",
183
- "@libp2p/websockets": "7.0.8-e8123d3f",
180
+ "@libp2p/kad-dht": "10.0.8-e9099d40",
181
+ "@libp2p/mdns": "9.0.9-e9099d40",
182
+ "@libp2p/mplex": "9.0.7-e9099d40",
183
+ "@libp2p/tcp": "8.0.8-e9099d40",
184
+ "@libp2p/websockets": "7.0.8-e9099d40",
184
185
  "@types/xsalsa20": "^1.1.0",
185
186
  "aegir": "^40.0.8",
186
187
  "execa": "^8.0.1",
@@ -1,3 +1,8 @@
1
+ import { type ObjectSchema, object, array, string, mixed } from 'yup'
2
+ import { validateMultiaddr } from '../config/helpers.js'
3
+ import type { AddressManagerInit } from '.'
4
+ import type { Multiaddr } from '@multiformats/multiaddr'
5
+
1
6
  export function debounce (func: () => void, wait: number): () => void {
2
7
  let timeout: ReturnType<typeof setTimeout> | undefined
3
8
 
@@ -11,3 +16,12 @@ export function debounce (func: () => void, wait: number): () => void {
11
16
  timeout = setTimeout(later, wait)
12
17
  }
13
18
  }
19
+
20
+ export function validateAddressManagerConfig (opts: AddressManagerInit): ObjectSchema<Record<string, unknown>> {
21
+ return object({
22
+ listen: array().of(string()).test('is multiaddr', validateMultiaddr).default([]),
23
+ announce: array().of(string()).test('is multiaddr', validateMultiaddr).default([]),
24
+ noAnnounce: array().of(string()).test('is multiaddr', validateMultiaddr).default([]),
25
+ announceFilter: mixed().default(() => (addrs: Multiaddr[]): Multiaddr[] => addrs)
26
+ })
27
+ }
@@ -31,6 +31,7 @@ import map from 'it-map'
31
31
  import parallel from 'it-parallel'
32
32
  import { pipe } from 'it-pipe'
33
33
  import isPrivateIp from 'private-ip'
34
+ import { number, object, string } from 'yup'
34
35
  import { codes } from '../errors.js'
35
36
  import {
36
37
  MAX_INBOUND_STREAMS,
@@ -108,14 +109,23 @@ class DefaultAutoNATService implements Startable {
108
109
  private started: boolean
109
110
 
110
111
  constructor (components: AutoNATComponents, init: AutoNATServiceInit) {
112
+ const validatedConfig = object({
113
+ protocolPrefix: string().default(PROTOCOL_PREFIX),
114
+ timeout: number().integer().default(TIMEOUT),
115
+ startupDelay: number().integer().default(STARTUP_DELAY),
116
+ refreshInterval: number().integer().default(REFRESH_INTERVAL),
117
+ maxInboundStreams: number().integer().default(MAX_INBOUND_STREAMS),
118
+ maxOutboundStreams: number().integer().default(MAX_OUTBOUND_STREAMS)
119
+ }).validateSync(init)
120
+
111
121
  this.components = components
112
122
  this.started = false
113
- this.protocol = `/${init.protocolPrefix ?? PROTOCOL_PREFIX}/${PROTOCOL_NAME}/${PROTOCOL_VERSION}`
114
- this.timeout = init.timeout ?? TIMEOUT
115
- this.maxInboundStreams = init.maxInboundStreams ?? MAX_INBOUND_STREAMS
116
- this.maxOutboundStreams = init.maxOutboundStreams ?? MAX_OUTBOUND_STREAMS
117
- this.startupDelay = init.startupDelay ?? STARTUP_DELAY
118
- this.refreshInterval = init.refreshInterval ?? REFRESH_INTERVAL
123
+ this.protocol = `/${validatedConfig.protocolPrefix}/${PROTOCOL_NAME}/${PROTOCOL_VERSION}`
124
+ this.timeout = validatedConfig.timeout
125
+ this.maxInboundStreams = validatedConfig.maxInboundStreams
126
+ this.maxOutboundStreams = validatedConfig.maxOutboundStreams
127
+ this.startupDelay = validatedConfig.startupDelay
128
+ this.refreshInterval = validatedConfig.refreshInterval
119
129
  this._verifyExternalAddresses = this._verifyExternalAddresses.bind(this)
120
130
  }
121
131
 
@@ -70,3 +70,8 @@ export const DEFAULT_HOP_TIMEOUT = 30 * second
70
70
  * How long to wait before starting to advertise the relay service
71
71
  */
72
72
  export const DEFAULT_ADVERT_BOOT_DELAY = 30 * second
73
+
74
+ /**
75
+ * The default timeout for Incoming STOP requests from the relay
76
+ */
77
+ export const DEFAULT_STOP_TIMEOUT = 30 * second
@@ -6,10 +6,16 @@ import { RecordEnvelope } from '@libp2p/peer-record'
6
6
  import { type Multiaddr, multiaddr } from '@multiformats/multiaddr'
7
7
  import { pbStream, type ProtobufStream } from 'it-protobuf-stream'
8
8
  import pDefer from 'p-defer'
9
+ import { object, number, boolean } from 'yup'
9
10
  import { MAX_CONNECTIONS } from '../../connection-manager/constants.js'
11
+ import { DEFAULT_MAX_INBOUND_STREAMS, DEFAULT_MAX_OUTBOUND_STREAMS } from '../../registrar.js'
10
12
  import {
11
13
  CIRCUIT_PROTO_CODE,
14
+ DEFAULT_DURATION_LIMIT,
12
15
  DEFAULT_HOP_TIMEOUT,
16
+ DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL,
17
+ DEFAULT_MAX_RESERVATION_STORE_SIZE,
18
+ DEFAULT_MAX_RESERVATION_TTL,
13
19
  RELAY_SOURCE_TAG,
14
20
  RELAY_V2_HOP_CODEC,
15
21
  RELAY_V2_STOP_CODEC
@@ -95,10 +101,6 @@ export interface RelayServerEvents {
95
101
  'relay:advert:error': CustomEvent<Error>
96
102
  }
97
103
 
98
- const defaults = {
99
- maxOutboundStopStreams: MAX_CONNECTIONS
100
- }
101
-
102
104
  class CircuitRelayServer extends EventEmitter<RelayServerEvents> implements Startable, CircuitRelayService {
103
105
  private readonly registrar: Registrar
104
106
  private readonly peerStore: PeerStore
@@ -121,6 +123,20 @@ class CircuitRelayServer extends EventEmitter<RelayServerEvents> implements Star
121
123
  constructor (components: CircuitRelayServerComponents, init: CircuitRelayServerInit = {}) {
122
124
  super()
123
125
 
126
+ const validatedConfig = object({
127
+ hopTimeout: number().min(0).integer().default(DEFAULT_HOP_TIMEOUT),
128
+ reservations: object({
129
+ maxReservations: number().integer().min(0).default(DEFAULT_MAX_RESERVATION_STORE_SIZE),
130
+ reservationClearInterval: number().integer().min(0).default(DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL),
131
+ applyDefaultLimit: boolean().default(true),
132
+ reservationTtl: number().integer().min(0).default(DEFAULT_MAX_RESERVATION_TTL),
133
+ defaultDurationLimit: number().integer().min(0).default(DEFAULT_DURATION_LIMIT).max(init?.reservations?.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL, `default duration limit must be less than reservation TTL: ${init?.reservations?.reservationTtl}`)
134
+ }),
135
+ maxInboundHopStreams: number().integer().min(0).default(DEFAULT_MAX_INBOUND_STREAMS),
136
+ maxOutboundHopStreams: number().integer().min(0).default(DEFAULT_MAX_OUTBOUND_STREAMS),
137
+ maxOutboundStopStreams: number().integer().min(0).default(MAX_CONNECTIONS)
138
+ }).validateSync(init)
139
+
124
140
  this.registrar = components.registrar
125
141
  this.peerStore = components.peerStore
126
142
  this.addressManager = components.addressManager
@@ -128,11 +144,11 @@ class CircuitRelayServer extends EventEmitter<RelayServerEvents> implements Star
128
144
  this.connectionManager = components.connectionManager
129
145
  this.connectionGater = components.connectionGater
130
146
  this.started = false
131
- this.hopTimeout = init?.hopTimeout ?? DEFAULT_HOP_TIMEOUT
147
+ this.hopTimeout = validatedConfig.hopTimeout
132
148
  this.shutdownController = new AbortController()
133
- this.maxInboundHopStreams = init.maxInboundHopStreams
134
- this.maxOutboundHopStreams = init.maxOutboundHopStreams
135
- this.maxOutboundStopStreams = init.maxOutboundStopStreams ?? defaults.maxOutboundStopStreams
149
+ this.maxInboundHopStreams = validatedConfig.maxInboundHopStreams
150
+ this.maxOutboundHopStreams = validatedConfig.maxOutboundHopStreams
151
+ this.maxOutboundStopStreams = validatedConfig.maxOutboundStopStreams
136
152
 
137
153
  try {
138
154
  // fails on node < 15.4
@@ -1,4 +1,5 @@
1
1
  import { PeerMap } from '@libp2p/peer-collections'
2
+ import { object, mixed, number, boolean } from 'yup'
2
3
  import { DEFAULT_DATA_LIMIT, DEFAULT_DURATION_LIMIT, DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL, DEFAULT_MAX_RESERVATION_STORE_SIZE, DEFAULT_MAX_RESERVATION_TTL } from '../constants.js'
3
4
  import { type Limit, Status } from '../pb/index.js'
4
5
  import type { RelayReservation } from '../index.js'
@@ -50,12 +51,21 @@ export class ReservationStore implements Startable {
50
51
  private readonly defaultDataLimit: bigint
51
52
 
52
53
  constructor (options: ReservationStoreOptions = {}) {
53
- this.maxReservations = options.maxReservations ?? DEFAULT_MAX_RESERVATION_STORE_SIZE
54
- this.reservationClearInterval = options.reservationClearInterval ?? DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL
55
- this.applyDefaultLimit = options.applyDefaultLimit !== false
56
- this.reservationTtl = options.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL
57
- this.defaultDurationLimit = options.defaultDurationLimit ?? DEFAULT_DURATION_LIMIT
58
- this.defaultDataLimit = options.defaultDataLimit ?? DEFAULT_DATA_LIMIT
54
+ const validatedConfig = object({
55
+ maxReservations: number().min(0).integer().default(DEFAULT_MAX_RESERVATION_STORE_SIZE),
56
+ reservationClearInterval: number().integer().min(0).default(DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL),
57
+ applyDefaultLimit: boolean().default(true),
58
+ reservationTtl: number().integer().min(0).default(DEFAULT_MAX_RESERVATION_TTL),
59
+ defaultDurationLimit: number().integer().min(0).default(DEFAULT_DURATION_LIMIT),
60
+ defaultDataLimit: mixed().test('is-bigint', 'Invalid bigint', value => typeof value === 'bigint').default(DEFAULT_DATA_LIMIT)
61
+ }).validateSync(options)
62
+
63
+ this.maxReservations = validatedConfig.maxReservations
64
+ this.reservationClearInterval = validatedConfig.reservationClearInterval
65
+ this.applyDefaultLimit = validatedConfig.applyDefaultLimit
66
+ this.reservationTtl = validatedConfig.reservationTtl
67
+ this.defaultDurationLimit = validatedConfig.defaultDurationLimit
68
+ this.defaultDataLimit = validatedConfig.defaultDataLimit as bigint
59
69
  }
60
70
 
61
71
  isStarted (): boolean {
@@ -6,9 +6,10 @@ import { streamToMaConnection } from '@libp2p/utils/stream-to-ma-conn'
6
6
  import * as mafmt from '@multiformats/mafmt'
7
7
  import { multiaddr } from '@multiformats/multiaddr'
8
8
  import { pbStream } from 'it-protobuf-stream'
9
+ import { number, object } from 'yup'
9
10
  import { MAX_CONNECTIONS } from '../../connection-manager/constants.js'
10
11
  import { codes } from '../../errors.js'
11
- import { CIRCUIT_PROTO_CODE, RELAY_V2_HOP_CODEC, RELAY_V2_STOP_CODEC } from '../constants.js'
12
+ import { CIRCUIT_PROTO_CODE, DEFAULT_STOP_TIMEOUT, RELAY_V2_HOP_CODEC, RELAY_V2_STOP_CODEC } from '../constants.js'
12
13
  import { StopMessage, HopMessage, Status } from '../pb/index.js'
13
14
  import { RelayDiscovery, type RelayDiscoveryComponents } from './discovery.js'
14
15
  import { createListener } from './listener.js'
@@ -100,12 +101,6 @@ export interface CircuitRelayTransportInit extends RelayStoreInit {
100
101
  reservationCompletionTimeout?: number
101
102
  }
102
103
 
103
- const defaults = {
104
- maxInboundStopStreams: MAX_CONNECTIONS,
105
- maxOutboundStopStreams: MAX_CONNECTIONS,
106
- stopTimeout: 30000
107
- }
108
-
109
104
  class CircuitRelayTransport implements Transport {
110
105
  private readonly discovery?: RelayDiscovery
111
106
  private readonly registrar: Registrar
@@ -116,12 +111,19 @@ class CircuitRelayTransport implements Transport {
116
111
  private readonly addressManager: AddressManager
117
112
  private readonly connectionGater: ConnectionGater
118
113
  private readonly reservationStore: ReservationStore
119
- private readonly maxInboundStopStreams: number
114
+ private readonly maxInboundStopStreams?: number
120
115
  private readonly maxOutboundStopStreams?: number
121
- private readonly stopTimeout: number
116
+ private readonly stopTimeout?: number
122
117
  private started: boolean
123
118
 
124
119
  constructor (components: CircuitRelayTransportComponents, init: CircuitRelayTransportInit) {
120
+ const validatedConfig = object({
121
+ discoverRelays: number().min(0).integer().default(0),
122
+ maxInboundStopStreams: number().min(0).integer().default(MAX_CONNECTIONS),
123
+ maxOutboundStopStreams: number().min(0).integer().default(MAX_CONNECTIONS),
124
+ stopTimeout: number().min(0).integer().default(DEFAULT_STOP_TIMEOUT)
125
+ }).validateSync(init)
126
+
125
127
  this.registrar = components.registrar
126
128
  this.peerStore = components.peerStore
127
129
  this.connectionManager = components.connectionManager
@@ -129,11 +131,11 @@ class CircuitRelayTransport implements Transport {
129
131
  this.upgrader = components.upgrader
130
132
  this.addressManager = components.addressManager
131
133
  this.connectionGater = components.connectionGater
132
- this.maxInboundStopStreams = init.maxInboundStopStreams ?? defaults.maxInboundStopStreams
133
- this.maxOutboundStopStreams = init.maxOutboundStopStreams ?? defaults.maxOutboundStopStreams
134
- this.stopTimeout = init.stopTimeout ?? defaults.stopTimeout
134
+ this.maxInboundStopStreams = validatedConfig.maxInboundStopStreams
135
+ this.maxOutboundStopStreams = validatedConfig.maxOutboundStopStreams
136
+ this.stopTimeout = validatedConfig.stopTimeout
135
137
 
136
- if (init.discoverRelays != null && init.discoverRelays > 0) {
138
+ if (validatedConfig.discoverRelays > 0) {
137
139
  this.discovery = new RelayDiscovery(components)
138
140
  this.discovery.addEventListener('relay:discover', (evt) => {
139
141
  this.reservationStore.addRelay(evt.detail, 'discovered')
@@ -321,7 +323,7 @@ class CircuitRelayTransport implements Transport {
321
323
  * An incoming STOP request means a remote peer wants to dial us via a relay
322
324
  */
323
325
  async onStop ({ connection, stream }: IncomingStreamData): Promise<void> {
324
- const signal = AbortSignal.timeout(this.stopTimeout)
326
+ const signal = AbortSignal.timeout(this.stopTimeout ?? DEFAULT_STOP_TIMEOUT)
325
327
  const pbstr = pbStream(stream).pb(StopMessage)
326
328
  const request = await pbstr.read({
327
329
  signal
@@ -0,0 +1,44 @@
1
+ import { FaultTolerance } from '@libp2p/interface/transport'
2
+ import { publicAddressesFirst } from '@libp2p/utils/address-sort'
3
+ import { dnsaddrResolver } from '@multiformats/multiaddr/resolvers'
4
+ import mergeOptions from 'merge-options'
5
+ import { object } from 'yup'
6
+ import { validateAddressManagerConfig } from '../address-manager/utils.js'
7
+ import { validateConnectionManagerConfig } from '../connection-manager/utils.js'
8
+ import type { AddressManagerInit } from '../address-manager'
9
+ import type { ConnectionManagerInit } from '../connection-manager/index.js'
10
+ import type { Libp2pInit } from '../index.js'
11
+ import type { ServiceMap, RecursivePartial } from '@libp2p/interface'
12
+
13
+ const DefaultConfig: Partial<Libp2pInit> = {
14
+ connectionManager: {
15
+ resolvers: {
16
+ dnsaddr: dnsaddrResolver
17
+ },
18
+ addressSorter: publicAddressesFirst
19
+ },
20
+ transportManager: {
21
+ faultTolerance: FaultTolerance.FATAL_ALL
22
+ }
23
+ }
24
+
25
+ export function validateConfig <T extends ServiceMap = Record<string, unknown>> (opts: RecursivePartial<Libp2pInit<T>>): Libp2pInit<T> {
26
+ const libp2pConfig = object({
27
+ addresses: validateAddressManagerConfig(opts?.addresses as AddressManagerInit),
28
+ connectionManager: validateConnectionManagerConfig(opts?.connectionManager as ConnectionManagerInit)
29
+ })
30
+
31
+ if ((opts?.services) != null) {
32
+ // @ts-expect-error until we resolve https://github.com/libp2p/js-libp2p/pull/1762 and have a better way of discovering type dependencies
33
+ // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
34
+ if ((opts.services?.kadDHT || opts.services?.relay || opts.services?.ping) && !opts.services.identify) {
35
+ throw new Error('identify service is required when using kadDHT, relay, or ping')
36
+ }
37
+ }
38
+
39
+ const parsedOpts = libp2pConfig.validateSync(opts)
40
+
41
+ const resultingOptions: Libp2pInit<T> = mergeOptions(DefaultConfig, parsedOpts)
42
+
43
+ return resultingOptions
44
+ }
@@ -0,0 +1,12 @@
1
+ import { multiaddr } from '@multiformats/multiaddr'
2
+
3
+ export const validateMultiaddr = (value: Array<string | undefined> | undefined): boolean => {
4
+ value?.forEach((addr) => {
5
+ try {
6
+ multiaddr(addr)
7
+ } catch (err) {
8
+ throw new Error(`invalid multiaddr: ${addr}`)
9
+ }
10
+ })
11
+ return true
12
+ }