@waku/core 0.0.22 → 0.0.24

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 (73) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/bundle/base_protocol-2a0c882e.js +1250 -0
  3. package/bundle/{browser-bde977a3.js → browser-90197c87.js} +26 -1
  4. package/bundle/index.js +20048 -3236
  5. package/bundle/lib/base_protocol.js +2 -116
  6. package/bundle/lib/message/version_0.js +2 -2
  7. package/bundle/lib/predefined_bootstrap_nodes.js +6 -6
  8. package/bundle/{version_0-86411fdf.js → version_0-f4afd324.js} +907 -814
  9. package/dist/.tsbuildinfo +1 -0
  10. package/dist/index.d.ts +5 -4
  11. package/dist/index.js +4 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/lib/base_protocol.d.ts +18 -5
  14. package/dist/lib/base_protocol.js +25 -8
  15. package/dist/lib/base_protocol.js.map +1 -1
  16. package/dist/lib/connection_manager.d.ts +15 -3
  17. package/dist/lib/connection_manager.js +92 -34
  18. package/dist/lib/connection_manager.js.map +1 -1
  19. package/dist/lib/filter/filter_rpc.js +4 -4
  20. package/dist/lib/filter/index.d.ts +4 -0
  21. package/dist/lib/filter/index.js +38 -29
  22. package/dist/lib/filter/index.js.map +1 -1
  23. package/dist/lib/filterPeers.d.ts +10 -0
  24. package/dist/lib/filterPeers.js +31 -0
  25. package/dist/lib/filterPeers.js.map +1 -0
  26. package/dist/lib/keep_alive_manager.d.ts +4 -2
  27. package/dist/lib/keep_alive_manager.js +62 -19
  28. package/dist/lib/keep_alive_manager.js.map +1 -1
  29. package/dist/lib/light_push/index.js +85 -38
  30. package/dist/lib/light_push/index.js.map +1 -1
  31. package/dist/lib/light_push/push_rpc.d.ts +1 -1
  32. package/dist/lib/light_push/push_rpc.js +3 -3
  33. package/dist/lib/message/version_0.d.ts +13 -13
  34. package/dist/lib/message/version_0.js +21 -18
  35. package/dist/lib/message/version_0.js.map +1 -1
  36. package/dist/lib/predefined_bootstrap_nodes.js +6 -6
  37. package/dist/lib/store/history_rpc.d.ts +1 -1
  38. package/dist/lib/store/history_rpc.js +4 -4
  39. package/dist/lib/store/index.d.ts +1 -6
  40. package/dist/lib/store/index.js +91 -47
  41. package/dist/lib/store/index.js.map +1 -1
  42. package/dist/lib/stream_manager.d.ts +15 -0
  43. package/dist/lib/stream_manager.js +56 -0
  44. package/dist/lib/stream_manager.js.map +1 -0
  45. package/dist/lib/to_proto_message.js +1 -1
  46. package/dist/lib/wait_for_remote_peer.d.ts +2 -2
  47. package/dist/lib/wait_for_remote_peer.js +10 -7
  48. package/dist/lib/wait_for_remote_peer.js.map +1 -1
  49. package/dist/lib/waku.d.ts +6 -5
  50. package/dist/lib/waku.js +6 -4
  51. package/dist/lib/waku.js.map +1 -1
  52. package/package.json +17 -33
  53. package/src/index.ts +6 -9
  54. package/src/lib/base_protocol.ts +49 -18
  55. package/src/lib/connection_manager.ts +132 -41
  56. package/src/lib/filter/filter_rpc.ts +4 -4
  57. package/src/lib/filter/index.ts +53 -41
  58. package/src/lib/filterPeers.ts +43 -0
  59. package/src/lib/keep_alive_manager.ts +79 -22
  60. package/src/lib/light_push/index.ts +132 -51
  61. package/src/lib/light_push/push_rpc.ts +3 -3
  62. package/src/lib/message/version_0.ts +27 -15
  63. package/src/lib/predefined_bootstrap_nodes.ts +7 -7
  64. package/src/lib/store/history_rpc.ts +6 -6
  65. package/src/lib/store/index.ts +121 -63
  66. package/src/lib/stream_manager.ts +72 -0
  67. package/src/lib/to_proto_message.ts +1 -1
  68. package/src/lib/wait_for_remote_peer.ts +11 -8
  69. package/src/lib/waku.ts +7 -4
  70. package/dist/lib/push_or_init_map.d.ts +0 -1
  71. package/dist/lib/push_or_init_map.js +0 -9
  72. package/dist/lib/push_or_init_map.js.map +0 -1
  73. package/src/lib/push_or_init_map.ts +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"connection_manager.js","sourceRoot":"","sources":["../../src/lib/connection_manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAEL,uBAAuB,GAMxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAU,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,GAAG,GAAG,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAE7C,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAE5C,MAAa,iBACX,SAAQ,YAAqC;IAGrC,MAAM,CAAC,SAAS,GAAG,IAAI,GAAG,EAA6B,CAAC;IACxD,gBAAgB,CAAmB;IACnC,OAAO,CAA2B;IAClC,MAAM,CAAS;IACf,mBAAmB,GAAwB,IAAI,GAAG,EAAE,CAAC;IACrD,iBAAiB,GAAqB,IAAI,GAAG,EAAE,CAAC;IAEhD,sBAAsB,GAAG,CAAC,CAAC;IAC3B,oBAAoB,GAAkB,EAAE,CAAC;IAE1C,MAAM,CAAC,MAAM,CAClB,MAAc,EACd,MAAc,EACd,gBAAkC,EAClC,KAAc,EACd,OAAkC;QAElC,IAAI,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE;YACb,QAAQ,GAAG,IAAI,iBAAiB,CAC9B,MAAM,EACN,gBAAgB,EAChB,KAAK,EACL,OAAO,CACR,CAAC;YACF,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;SACnD;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC9B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM;aAC/B,cAAc,EAAE;aAChB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAElC,MAAM,0BAA0B,GAAW,EAAE,CAAC;QAC9C,MAAM,6BAA6B,GAAW,EAAE,CAAC;QACjD,MAAM,yBAAyB,GAAW,EAAE,CAAC;QAC7C,MAAM,4BAA4B,GAAW,EAAE,CAAC;QAEhD,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE;YAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEpD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACjC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBAC5C,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1C;SACF;QAED,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE;YACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAEnD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACjC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACtC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBAC5C,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACzC;SACF;QAED,OAAO;YACL,UAAU,EAAE;gBACV,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,0BAA0B;gBAC5C,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,6BAA6B;aACpD;YACD,SAAS,EAAE;gBACT,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,yBAAyB;gBAC3C,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,4BAA4B;aACnD;SACF,CAAC;IACJ,CAAC;IAED,YACE,MAAc,EACd,gBAAkC,EAClC,KAAc,EACd,OAA2C;QAE3C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG;YACb,sBAAsB,EAAE,kCAAkC;YAC1D,wBAAwB,EAAE,mCAAmC;YAC7D,gBAAgB,EAAE,0BAA0B;YAC5C,GAAG,OAAO;SACX,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAEtE,IAAI,CAAC,GAAG,EAAE;aACP,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;aACpD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC,CAAC;QAE1E,iEAAiE;QACjE,oGAAoG;QACpG,iIAAiI;QACjI,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACxC,GAAG,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAC9D,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACpD,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,IACE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAEtE,SAAS;YAEX,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;SAClD;QACD,IAAI;YACF,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACjC;QAAC,OAAO,KAAK,EAAE;YACd,GAAG,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;SAC/D;IACH,CAAC;IAEO,KAAK,CAAC,GAAG;QACf,wBAAwB;QACxB,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,8BAA8B,EAAE,CAAC;IACxC,CAAC;IAED,IAAI;QACF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAC7B,cAAc,EACd,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CACrC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAC7B,iBAAiB,EACjB,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CACxC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAC7B,gBAAgB,EAChB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CACvC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,MAAc;QACnC,IAAI,CAAC,sBAAsB,IAAI,CAAC,CAAC;QACjC,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,OAAO,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE;YACxD,IAAI;gBACF,GAAG,CAAC,gBAAgB,MAAM,CAAC,QAAQ,EAAE,eAAe,WAAW,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBACnD,uDAAuD;gBACvD,2BAA2B;gBAC3B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAClD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACnD,oCAAoC;gBACpC,MAAM;aACP;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,KAAK,YAAY,cAAc,EAAE;oBACnC,wBAAwB;oBACxB,GAAG,CAAC,sBAAsB,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;iBAClE;qBAAM;oBACL,uBAAuB;oBACvB,GAAG,CACD,sBAAsB,MAAM,CAAC,QAAQ,EAAE,MACpC,KAAa,CAAC,OACjB,EAAE,CACH,CAAC;iBACH;gBACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;gBAErD,WAAW,EAAE,CAAC;gBACd,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,CAAC;aAC9D;SACF;QAED,mEAAmE;QACnE,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,mEAAmE;QACnE,IAAI,WAAW,KAAK,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE;YACvD,IAAI;gBACF,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAE5D,IAAI,YAAY,CAAC;gBACjB,IAAI,KAAK,YAAY,cAAc,EAAE;oBACnC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;iBAChD;qBAAM;oBACL,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;iBAC9B;gBAED,GAAG,CACD,4BAA4B,MAAM,CAAC,QAAQ,EAAE,4BAA4B,YAAY,EAAE,CACxF,CAAC;gBAEF,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACjD,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;aAC5C;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,KAAK,CACb,kCAAkC,MAAM,CAAC,QAAQ,EAAE,sBAAsB,KAAK,EAAE,CACjF,CAAC;aACH;SACF;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAc;QACzC,IAAI;YACF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACjC,GAAG,CAAC,gCAAgC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SAC1D;QAAC,OAAO,KAAK,EAAE;YACd,GAAG,CACD,uCAAuC,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,EAAE,CACtE,CAAC;SACH;IACH,CAAC;IAEO,gBAAgB;QACtB,IACE,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;YACpC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAC3D;YACA,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;YACjD,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACvC,GAAG,CAAC,KAAK,CAAC,CAAC;YACb,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEO,0BAA0B;QAChC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC1B,gBAAgB,EAChB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CACvC,CAAC;IACJ,CAAC;IAEO,2BAA2B;QACjC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC1B,cAAc,EACd,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CACrC,CAAC;IACJ,CAAC;IAEO,8BAA8B;QACpC,qEAAqE;QACrE;;;;;;;;;;WAUG;QACH,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC1B,iBAAiB,EACjB,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CACxC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,MAAc;QACtC,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YAChE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,OAAO;SACR;QAED,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAAE,OAAO;QAEjD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAClC,MAAM,sBAAsB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe,GAAG;QACxB,gBAAgB,EAAE,CAAC,GAA0B,EAAQ,EAAE;YACrD,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;gBAElC,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAClE,IAAI,CAAC,SAAS,CACf,CAAC;gBAEF,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CACb,WAAW;oBACT,CAAC,CAAC,uBAAuB,CAAC,wBAAwB;oBAClD,CAAC,CAAC,uBAAuB,CAAC,4BAA4B,EACxD;oBACE,MAAM,EAAE,MAAM;iBACf,CACF,CACF,CAAC;gBAEF,IAAI;oBACF,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;iBAChC;gBAAC,OAAO,KAAK,EAAE;oBACd,GAAG,CAAC,sBAAsB,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,EAAE,CAAC,CAAC;iBAC3D;YACH,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QACD,cAAc,EAAE,CAAC,GAAwB,EAAQ,EAAE;YACjD,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAE1B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE/D,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAClE,IAAI,CAAC,SAAS,CACf,CAAC;gBAEF,IAAI,WAAW,EAAE;oBACf,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM;yBACrC,cAAc,EAAE;yBAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;oBAExD,sDAAsD;oBACtD,IACE,oBAAoB,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EACnE;wBACA,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;qBACnC;yBAAM;wBACL,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CACb,uBAAuB,CAAC,sBAAsB,EAC9C;4BACE,MAAM,EAAE,MAAM;yBACf,CACF,CACF,CAAC;qBACH;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CACb,uBAAuB,CAAC,0BAA0B,EAClD;wBACE,MAAM,EAAE,MAAM;qBACf,CACF,CACF,CAAC;iBACH;YACH,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QACD,iBAAiB,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC,GAAwB,EAAQ,EAAE;gBACxC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;IAEF;;;;OAIG;IACK,KAAK,CAAC,cAAc,CAAC,MAAc;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAElE,IAAI,WAAW;YAAE,OAAO,KAAK,CAAC;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;QAE3E,IAAI,WAAW,EAAE;YACf,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM;iBAC5C,cAAc,EAAE;iBAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBACf,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC,MAAM,CAAC;YACZ,IAAI,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB;gBACrE,OAAO,IAAI,CAAC;SACf;aAAM;YACL,OAAO,IAAI,CAAC;SACb;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAc;QAC7C,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACrC;QAAC,OAAO,KAAK,EAAE;YACd,GAAG,CAAC,sBAAsB,MAAM,YAAY,KAAK,EAAE,CAAC,CAAC;YACrD,OAAO,EAAE,CAAC;SACX;IACH,CAAC;;SAnZU,iBAAiB"}
1
+ {"version":3,"file":"connection_manager.js","sourceRoot":"","sources":["../../src/lib/connection_manager.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ export class FilterSubscribeRpc {
37
37
  requestId: uuid(),
38
38
  filterSubscribeType: proto.FilterSubscribeRequest.FilterSubscribeType.SUBSCRIBE,
39
39
  pubsubTopic,
40
- contentTopics,
40
+ contentTopics
41
41
  });
42
42
  }
43
43
  static createUnsubscribeRequest(pubsubTopic, contentTopics) {
@@ -45,7 +45,7 @@ export class FilterSubscribeRpc {
45
45
  requestId: uuid(),
46
46
  filterSubscribeType: proto.FilterSubscribeRequest.FilterSubscribeType.UNSUBSCRIBE,
47
47
  pubsubTopic,
48
- contentTopics,
48
+ contentTopics
49
49
  });
50
50
  }
51
51
  static createUnsubscribeAllRequest(pubsubTopic) {
@@ -53,7 +53,7 @@ export class FilterSubscribeRpc {
53
53
  requestId: uuid(),
54
54
  filterSubscribeType: proto.FilterSubscribeRequest.FilterSubscribeType.UNSUBSCRIBE_ALL,
55
55
  pubsubTopic,
56
- contentTopics: [],
56
+ contentTopics: []
57
57
  });
58
58
  }
59
59
  static createSubscriberPingRequest() {
@@ -61,7 +61,7 @@ export class FilterSubscribeRpc {
61
61
  requestId: uuid(),
62
62
  filterSubscribeType: proto.FilterSubscribeRequest.FilterSubscribeType.SUBSCRIBER_PING,
63
63
  pubsubTopic: "",
64
- contentTopics: [],
64
+ contentTopics: []
65
65
  });
66
66
  }
67
67
  static decode(bytes) {
@@ -1,2 +1,6 @@
1
1
  import type { IFilter, Libp2p, ProtocolCreateOptions } from "@waku/interfaces";
2
+ export declare const FilterCodecs: {
3
+ SUBSCRIBE: string;
4
+ PUSH: string;
5
+ };
2
6
  export declare function wakuFilter(init?: Partial<ProtocolCreateOptions>): (libp2p: Libp2p) => IFilter;
@@ -1,24 +1,24 @@
1
- import { groupByContentTopic, toAsyncIterator } from "@waku/utils";
1
+ import { ensurePubsubTopicIsConfigured, groupByContentTopic, toAsyncIterator } from "@waku/utils";
2
2
  import debug from "debug";
3
3
  import all from "it-all";
4
4
  import * as lp from "it-length-prefixed";
5
5
  import { pipe } from "it-pipe";
6
6
  import { BaseProtocol } from "../base_protocol.js";
7
7
  import { DefaultPubSubTopic } from "../constants.js";
8
- import { FilterPushRpc, FilterSubscribeResponse, FilterSubscribeRpc, } from "./filter_rpc.js";
8
+ import { FilterPushRpc, FilterSubscribeResponse, FilterSubscribeRpc } from "./filter_rpc.js";
9
9
  const log = debug("waku:filter:v2");
10
- const FilterCodecs = {
10
+ export const FilterCodecs = {
11
11
  SUBSCRIBE: "/vac/waku/filter-subscribe/2.0.0-beta1",
12
- PUSH: "/vac/waku/filter-push/2.0.0-beta1",
12
+ PUSH: "/vac/waku/filter-push/2.0.0-beta1"
13
13
  };
14
14
  class Subscription {
15
15
  peer;
16
- pubSubTopic;
16
+ pubsubTopic;
17
17
  newStream;
18
18
  subscriptionCallbacks;
19
- constructor(pubSubTopic, remotePeer, newStream) {
19
+ constructor(pubsubTopic, remotePeer, newStream) {
20
20
  this.peer = remotePeer;
21
- this.pubSubTopic = pubSubTopic;
21
+ this.pubsubTopic = pubsubTopic;
22
22
  this.newStream = newStream;
23
23
  this.subscriptionCallbacks = new Map();
24
24
  }
@@ -27,9 +27,12 @@ class Subscription {
27
27
  const decodersGroupedByCT = groupByContentTopic(decodersArray);
28
28
  const contentTopics = Array.from(decodersGroupedByCT.keys());
29
29
  const stream = await this.newStream(this.peer);
30
- const request = FilterSubscribeRpc.createSubscribeRequest(this.pubSubTopic, contentTopics);
30
+ const request = FilterSubscribeRpc.createSubscribeRequest(this.pubsubTopic, contentTopics);
31
31
  try {
32
32
  const res = await pipe([request.encode()], lp.encode, stream, lp.decode, async (source) => await all(source));
33
+ if (!res || !res.length) {
34
+ throw Error(`No response received for request ${request.requestId}: ${res}`);
35
+ }
33
36
  const { statusCode, requestId, statusDesc } = FilterSubscribeResponse.decode(res[0].slice());
34
37
  if (statusCode < 200 || statusCode >= 300) {
35
38
  throw new Error(`Filter subscribe request ${requestId} failed with status code ${statusCode}: ${statusDesc}`);
@@ -52,7 +55,7 @@ class Subscription {
52
55
  // Decoder that decode to different implementations of `IDecodedMessage`
53
56
  const subscriptionCallback = {
54
57
  decoders,
55
- callback,
58
+ callback
56
59
  };
57
60
  // The callback and decoder may override previous values, this is on
58
61
  // purpose as the user may call `subscribe` to refresh the subscription
@@ -61,7 +64,7 @@ class Subscription {
61
64
  }
62
65
  async unsubscribe(contentTopics) {
63
66
  const stream = await this.newStream(this.peer);
64
- const unsubscribeRequest = FilterSubscribeRpc.createUnsubscribeRequest(this.pubSubTopic, contentTopics);
67
+ const unsubscribeRequest = FilterSubscribeRpc.createUnsubscribeRequest(this.pubsubTopic, contentTopics);
65
68
  try {
66
69
  await pipe([unsubscribeRequest.encode()], lp.encode, stream.sink);
67
70
  }
@@ -90,7 +93,7 @@ class Subscription {
90
93
  }
91
94
  async unsubscribeAll() {
92
95
  const stream = await this.newStream(this.peer);
93
- const request = FilterSubscribeRpc.createUnsubscribeAllRequest(this.pubSubTopic);
96
+ const request = FilterSubscribeRpc.createUnsubscribeAllRequest(this.pubsubTopic);
94
97
  try {
95
98
  const res = await pipe([request.encode()], lp.encode, stream, lp.decode, async (source) => await all(source));
96
99
  const { statusCode, requestId, statusDesc } = FilterSubscribeResponse.decode(res[0].slice());
@@ -111,36 +114,42 @@ class Subscription {
111
114
  log("No subscription callback available for ", contentTopic);
112
115
  return;
113
116
  }
114
- await pushMessage(subscriptionCallback, this.pubSubTopic, message);
117
+ await pushMessage(subscriptionCallback, this.pubsubTopic, message);
115
118
  }
116
119
  }
117
120
  class Filter extends BaseProtocol {
118
- options;
121
+ pubsubTopics = [];
119
122
  activeSubscriptions = new Map();
120
- getActiveSubscription(pubSubTopic, peerIdStr) {
121
- return this.activeSubscriptions.get(`${pubSubTopic}_${peerIdStr}`);
123
+ NUM_PEERS_PROTOCOL = 1;
124
+ getActiveSubscription(pubsubTopic, peerIdStr) {
125
+ return this.activeSubscriptions.get(`${pubsubTopic}_${peerIdStr}`);
122
126
  }
123
- setActiveSubscription(pubSubTopic, peerIdStr, subscription) {
124
- this.activeSubscriptions.set(`${pubSubTopic}_${peerIdStr}`, subscription);
127
+ setActiveSubscription(pubsubTopic, peerIdStr, subscription) {
128
+ this.activeSubscriptions.set(`${pubsubTopic}_${peerIdStr}`, subscription);
125
129
  return subscription;
126
130
  }
127
131
  constructor(libp2p, options) {
128
132
  super(FilterCodecs.SUBSCRIBE, libp2p.components);
133
+ this.pubsubTopics = options?.pubsubTopics || [DefaultPubSubTopic];
129
134
  libp2p.handle(FilterCodecs.PUSH, this.onRequest.bind(this)).catch((e) => {
130
135
  log("Failed to register ", FilterCodecs.PUSH, e);
131
136
  });
132
137
  this.activeSubscriptions = new Map();
133
- this.options = options ?? {};
134
138
  }
135
- async createSubscription(pubSubTopic, peerId) {
136
- const _pubSubTopic = pubSubTopic ?? this.options.pubSubTopic ?? DefaultPubSubTopic;
137
- const peer = await this.getPeer(peerId);
138
- const subscription = this.getActiveSubscription(_pubSubTopic, peer.id.toString()) ??
139
- this.setActiveSubscription(_pubSubTopic, peer.id.toString(), new Subscription(_pubSubTopic, peer, this.newStream.bind(this, peer)));
139
+ async createSubscription(pubsubTopic = DefaultPubSubTopic) {
140
+ ensurePubsubTopicIsConfigured(pubsubTopic, this.pubsubTopics);
141
+ //TODO: get a relevant peer for the topic/shard
142
+ // https://github.com/waku-org/js-waku/pull/1586#discussion_r1336428230
143
+ const peer = (await this.getPeers({
144
+ maxBootstrapPeers: 1,
145
+ numPeers: this.NUM_PEERS_PROTOCOL
146
+ }))[0];
147
+ const subscription = this.getActiveSubscription(pubsubTopic, peer.id.toString()) ??
148
+ this.setActiveSubscription(pubsubTopic, peer.id.toString(), new Subscription(pubsubTopic, peer, this.getStream.bind(this, peer)));
140
149
  return subscription;
141
150
  }
142
- toSubscriptionIterator(decoders, opts) {
143
- return toAsyncIterator(this, decoders, opts);
151
+ toSubscriptionIterator(decoders) {
152
+ return toAsyncIterator(this, decoders);
144
153
  }
145
154
  /**
146
155
  * This method is used to satisfy the `IReceiver` interface.
@@ -157,8 +166,8 @@ class Filter extends BaseProtocol {
157
166
  * This method should not be used directly.
158
167
  * Instead, use `createSubscription` to create a new subscription.
159
168
  */
160
- async subscribe(decoders, callback, opts) {
161
- const subscription = await this.createSubscription(undefined, opts?.peerId);
169
+ async subscribe(decoders, callback) {
170
+ const subscription = await this.createSubscription();
162
171
  await subscription.subscribe(decoders, callback);
163
172
  const contentTopics = Array.from(groupByContentTopic(Array.isArray(decoders) ? decoders : [decoders]).keys());
164
173
  return async () => {
@@ -202,7 +211,7 @@ class Filter extends BaseProtocol {
202
211
  export function wakuFilter(init = {}) {
203
212
  return (libp2p) => new Filter(libp2p, init);
204
213
  }
205
- async function pushMessage(subscriptionCallback, pubSubTopic, message) {
214
+ async function pushMessage(subscriptionCallback, pubsubTopic, message) {
206
215
  const { decoders, callback } = subscriptionCallback;
207
216
  const { contentTopic } = message;
208
217
  if (!contentTopic) {
@@ -211,7 +220,7 @@ async function pushMessage(subscriptionCallback, pubSubTopic, message) {
211
220
  }
212
221
  try {
213
222
  const decodePromises = decoders.map((dec) => dec
214
- .fromProtoObj(pubSubTopic, message)
223
+ .fromProtoObj(pubsubTopic, message)
215
224
  .then((decoded) => decoded || Promise.reject("Decoding failed")));
216
225
  const decodedMessage = await Promise.any(decodePromises);
217
226
  await callback(decodedMessage);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/filter/index.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,QAAQ,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,GAAG,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAOpC,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE,wCAAwC;IACnD,IAAI,EAAE,mCAAmC;CAC1C,CAAC;AAEF,MAAM,YAAY;IACC,IAAI,CAAO;IACX,WAAW,CAAc;IAClC,SAAS,CAAkC;IAE3C,qBAAqB,CAG3B;IAEF,YACE,WAAwB,EACxB,UAAgB,EAChB,SAA0C;QAE1C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,qBAAqB,GAAG,IAAI,GAAG,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,SAAS,CACb,QAAqC,EACrC,QAAqB;QAErB,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,kBAAkB,CAAC,sBAAsB,CACvD,IAAI,CAAC,WAAW,EAChB,aAAa,CACd,CAAC;QAEF,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CACpB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAClB,EAAE,CAAC,MAAM,EACT,MAAM,EACN,EAAE,CAAC,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CACpC,CAAC;YAEF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GACzC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAEjD,IAAI,UAAU,GAAG,GAAG,IAAI,UAAU,IAAI,GAAG,EAAE;gBACzC,MAAM,IAAI,KAAK,CACb,4BAA4B,SAAS,4BAA4B,UAAU,KAAK,UAAU,EAAE,CAC7F,CAAC;aACH;YAED,GAAG,CACD,qBAAqB,EACrB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EACvB,oBAAoB,EACpB,aAAa,CACd,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,6BAA6B;gBAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;gBACvB,uBAAuB;gBACvB,aAAa;gBACb,IAAI;gBACJ,CAAC,CACJ,CAAC;SACH;QAED,wDAAwD;QACxD,4FAA4F;QAC5F,qCAAqC;QACrC,mBAAmB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE;YACrD,qEAAqE;YACrE,wEAAwE;YACxE,MAAM,oBAAoB,GAAG;gBAC3B,QAAQ;gBACR,QAAQ;aAC2C,CAAC;YAEtD,oEAAoE;YACpE,uEAAuE;YACvE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,aAA6B;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,wBAAwB,CACpE,IAAI,CAAC,WAAW,EAChB,aAAa,CACd,CAAC;QAEF,IAAI;YACF,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;SACnE;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC,CAAC;SAChD;QAED,aAAa,CAAC,OAAO,CAAC,CAAC,YAAoB,EAAE,EAAE;YAC7C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,kBAAkB,CAAC,2BAA2B,EAAE,CAAC;QAEjE,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CACpB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAClB,EAAE,CAAC,MAAM,EACT,MAAM,EACN,EAAE,CAAC,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CACpC,CAAC;YAEF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GACzC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAEjD,IAAI,UAAU,GAAG,GAAG,IAAI,UAAU,IAAI,GAAG,EAAE;gBACzC,MAAM,IAAI,KAAK,CACb,uBAAuB,SAAS,4BAA4B,UAAU,KAAK,UAAU,EAAE,CACxF,CAAC;aACH;YAED,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;SAC5C;IACH,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,kBAAkB,CAAC,2BAA2B,CAC5D,IAAI,CAAC,WAAW,CACjB,CAAC;QAEF,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CACpB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAClB,EAAE,CAAC,MAAM,EACT,MAAM,EACN,EAAE,CAAC,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CACpC,CAAC;YAEF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GACzC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAEjD,IAAI,UAAU,GAAG,GAAG,IAAI,UAAU,IAAI,GAAG,EAAE;gBACzC,MAAM,IAAI,KAAK,CACb,kCAAkC,SAAS,4BAA4B,UAAU,KAAK,UAAU,EAAE,CACnG,CAAC;aACH;YAED,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;YACnC,GAAG,CAAC,sCAAsC,CAAC,CAAC;SAC7C;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,+CAA+C,GAAG,KAAK,CAAC,CAAC;SAC1E;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAoB;QACvC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC1C,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1E,IAAI,CAAC,oBAAoB,EAAE;YACzB,GAAG,CAAC,yCAAyC,EAAE,YAAY,CAAC,CAAC;YAC7D,OAAO;SACR;QACD,MAAM,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;CACF;AAED,MAAM,MAAO,SAAQ,YAAY;IACd,OAAO,CAAwB;IACxC,mBAAmB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAEtD,qBAAqB,CAC3B,WAAwB,EACxB,SAAoB;QAEpB,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,CAAC,CAAC;IACrE,CAAC;IAEO,qBAAqB,CAC3B,WAAwB,EACxB,SAAoB,EACpB,YAA0B;QAE1B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,EAAE,YAAY,CAAC,CAAC;QAC1E,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,YAAY,MAAc,EAAE,OAA+B;QACzD,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACtE,GAAG,CAAC,qBAAqB,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAC;QAErC,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,WAAoB,EACpB,MAAe;QAEf,MAAM,YAAY,GAChB,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,kBAAkB,CAAC;QAEhE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAExC,MAAM,YAAY,GAChB,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC5D,IAAI,CAAC,qBAAqB,CACxB,YAAY,EACZ,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EAClB,IAAI,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CACtE,CAAC;QAEJ,OAAO,YAAY,CAAC;IACtB,CAAC;IAEM,sBAAsB,CAC3B,QAAqC,EACrC,IAAkC;QAElC,OAAO,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,SAAS,CACb,QAAqC,EACrC,QAAqB,EACrB,IAAsB;QAEtB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAE5E,MAAM,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAC9B,mBAAmB,CACjB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAChD,CAAC,IAAI,EAAE,CACT,CAAC;QAEF,OAAO,KAAK,IAAI,EAAE;YAChB,MAAM,YAAY,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,UAA8B;QAC9C,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAC9B,IAAI;YACF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAClD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE;oBAChC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;oBAErD,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;oBAE9C,IAAI,CAAC,WAAW,EAAE;wBAChB,GAAG,CAAC,wBAAwB,CAAC,CAAC;wBAC9B,OAAO;qBACR;oBAED,IAAI,CAAC,WAAW,EAAE;wBAChB,GAAG,CAAC,wCAAwC,CAAC,CAAC;wBAC9C,OAAO;qBACR;oBAED,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;oBAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAC7C,WAAW,EACX,SAAS,CACV,CAAC;oBAEF,IAAI,CAAC,YAAY,EAAE;wBACjB,GAAG,CAAC,gDAAgD,WAAW,EAAE,CAAC,CAAC;wBACnE,OAAO;qBACR;oBAED,MAAM,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;iBAChD;YACH,CAAC,CAAC,CAAC,IAAI,CACL,GAAG,EAAE;gBACH,GAAG,CAAC,wBAAwB,CAAC,CAAC;YAChC,CAAC,EACD,CAAC,CAAC,EAAE,EAAE;gBACJ,GAAG,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;YACtC,CAAC,CACF,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;SAClC;IACH,CAAC;CACF;AAED,MAAM,UAAU,UAAU,CACxB,OAAuC,EAAE;IAEzC,OAAO,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,oBAA6C,EAC7C,WAAwB,EACxB,OAAoB;IAEpB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC;IAEpD,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjC,IAAI,CAAC,YAAY,EAAE;QACjB,GAAG,CAAC,wCAAwC,CAAC,CAAC;QAC9C,OAAO;KACR;IAED,IAAI;QACF,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,GAAG;aACA,YAAY,CAAC,WAAW,EAAE,OAAwB,CAAC;aACnD,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CACnE,CAAC;QAEF,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAEzD,MAAM,QAAQ,CAAC,cAAc,CAAC,CAAC;KAChC;IAAC,OAAO,CAAC,EAAE;QACV,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;KAClC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/filter/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Peer } from "@libp2p/interface/peer-store";
2
+ /**
3
+ * Retrieves a list of peers based on the specified criteria.
4
+ *
5
+ * @param peers - The list of peers to filter from.
6
+ * @param numPeers - The total number of peers to retrieve. If 0, all peers are returned.
7
+ * @param maxBootstrapPeers - The maximum number of bootstrap peers to retrieve.
8
+ * @returns A Promise that resolves to an array of peers based on the specified criteria.
9
+ */
10
+ export declare function filterPeers(peers: Peer[], numPeers: number, maxBootstrapPeers: number): Promise<Peer[]>;
@@ -0,0 +1,31 @@
1
+ import { Tags } from "@waku/interfaces";
2
+ /**
3
+ * Retrieves a list of peers based on the specified criteria.
4
+ *
5
+ * @param peers - The list of peers to filter from.
6
+ * @param numPeers - The total number of peers to retrieve. If 0, all peers are returned.
7
+ * @param maxBootstrapPeers - The maximum number of bootstrap peers to retrieve.
8
+ * @returns A Promise that resolves to an array of peers based on the specified criteria.
9
+ */
10
+ export async function filterPeers(peers, numPeers, maxBootstrapPeers) {
11
+ // Collect the bootstrap peers up to the specified maximum
12
+ const bootstrapPeers = peers
13
+ .filter((peer) => peer.tags.has(Tags.BOOTSTRAP))
14
+ .slice(0, maxBootstrapPeers);
15
+ // Collect non-bootstrap peers
16
+ const nonBootstrapPeers = peers.filter((peer) => !peer.tags.has(Tags.BOOTSTRAP));
17
+ // If numPeers is 0, return all peers
18
+ if (numPeers === 0) {
19
+ return [...bootstrapPeers, ...nonBootstrapPeers];
20
+ }
21
+ // Initialize the list of selected peers with the bootstrap peers
22
+ const selectedPeers = [...bootstrapPeers];
23
+ // Fill up to numPeers with remaining random peers if needed
24
+ while (selectedPeers.length < numPeers && nonBootstrapPeers.length > 0) {
25
+ const randomIndex = Math.floor(Math.random() * nonBootstrapPeers.length);
26
+ const randomPeer = nonBootstrapPeers.splice(randomIndex, 1)[0];
27
+ selectedPeers.push(randomPeer);
28
+ }
29
+ return selectedPeers;
30
+ }
31
+ //# sourceMappingURL=filterPeers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterPeers.js","sourceRoot":"","sources":["../../src/lib/filterPeers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,QAAgB,EAChB,iBAAyB;IAEzB,0DAA0D;IAC1D,MAAM,cAAc,GAAG,KAAK;SACzB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC/C,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAE/B,8BAA8B;IAC9B,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CACzC,CAAC;IAEF,qCAAqC;IACrC,IAAI,QAAQ,KAAK,CAAC,EAAE;QAClB,OAAO,CAAC,GAAG,cAAc,EAAE,GAAG,iBAAiB,CAAC,CAAC;KAClD;IAED,iEAAiE;IACjE,MAAM,aAAa,GAAW,CAAC,GAAG,cAAc,CAAC,CAAC;IAElD,4DAA4D;IAC5D,OAAO,aAAa,CAAC,MAAM,GAAG,QAAQ,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAChC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -1,4 +1,5 @@
1
- import type { PeerId } from "@libp2p/interface-peer-id";
1
+ import type { PeerId } from "@libp2p/interface/peer-id";
2
+ import type { PeerStore } from "@libp2p/interface/peer-store";
2
3
  import type { IRelay } from "@waku/interfaces";
3
4
  import type { KeepAliveOptions } from "@waku/interfaces";
4
5
  import type { PingService } from "libp2p/ping";
@@ -9,7 +10,8 @@ export declare class KeepAliveManager {
9
10
  private options;
10
11
  private relay?;
11
12
  constructor(options: KeepAliveOptions, relay?: IRelay);
12
- start(peerId: PeerId, libp2pPing: PingService): void;
13
+ start(peerId: PeerId, libp2pPing: PingService, peerStore: PeerStore): void;
13
14
  stop(peerId: PeerId): void;
14
15
  stopAll(): void;
16
+ private scheduleRelayPings;
15
17
  }
@@ -1,5 +1,6 @@
1
+ import { utf8ToBytes } from "@waku/utils/bytes";
1
2
  import debug from "debug";
2
- import { createEncoder } from "../index.js";
3
+ import { createEncoder } from "./message/version_0.js";
3
4
  export const RelayPingContentTopic = "/relay-ping/1/ping/null";
4
5
  const log = debug("waku:keep-alive");
5
6
  export class KeepAliveManager {
@@ -13,32 +14,52 @@ export class KeepAliveManager {
13
14
  this.options = options;
14
15
  this.relay = relay;
15
16
  }
16
- start(peerId, libp2pPing) {
17
- // Just in case a timer already exist for this peer
17
+ start(peerId, libp2pPing, peerStore) {
18
+ // Just in case a timer already exists for this peer
18
19
  this.stop(peerId);
19
20
  const { pingKeepAlive: pingPeriodSecs, relayKeepAlive: relayPeriodSecs } = this.options;
20
21
  const peerIdStr = peerId.toString();
22
+ // Ping the peer every pingPeriodSecs seconds
23
+ // if pingPeriodSecs is 0, don't ping the peer
21
24
  if (pingPeriodSecs !== 0) {
22
25
  const interval = setInterval(() => {
23
- libp2pPing.ping(peerId).catch((e) => {
24
- log(`Ping failed (${peerIdStr})`, e);
25
- });
26
+ void (async () => {
27
+ let ping;
28
+ try {
29
+ // ping the peer for keep alive
30
+ // also update the peer store with the latency
31
+ try {
32
+ ping = await libp2pPing.ping(peerId);
33
+ log(`Ping succeeded (${peerIdStr})`, ping);
34
+ }
35
+ catch (error) {
36
+ log(`Ping failed for peer (${peerIdStr}).
37
+ Next ping will be attempted in ${pingPeriodSecs} seconds.
38
+ `);
39
+ return;
40
+ }
41
+ try {
42
+ await peerStore.patch(peerId, {
43
+ metadata: {
44
+ ping: utf8ToBytes(ping.toString())
45
+ }
46
+ });
47
+ }
48
+ catch (e) {
49
+ log("Failed to update ping", e);
50
+ }
51
+ }
52
+ catch (e) {
53
+ log(`Ping failed (${peerIdStr})`, e);
54
+ }
55
+ })();
26
56
  }, pingPeriodSecs * 1000);
27
57
  this.pingKeepAliveTimers.set(peerIdStr, interval);
28
58
  }
29
59
  const relay = this.relay;
30
60
  if (relay && relayPeriodSecs !== 0) {
31
- const encoder = createEncoder({
32
- contentTopic: RelayPingContentTopic,
33
- ephemeral: true,
34
- });
35
- const interval = setInterval(() => {
36
- log("Sending Waku Relay ping message");
37
- relay
38
- .send(encoder, { payload: new Uint8Array([1]) })
39
- .catch((e) => log("Failed to send relay ping", e));
40
- }, relayPeriodSecs * 1000);
41
- this.relayKeepAliveTimers.set(peerId, interval);
61
+ const intervals = this.scheduleRelayPings(relay, relayPeriodSecs, peerId.toString());
62
+ this.relayKeepAliveTimers.set(peerId, intervals);
42
63
  }
43
64
  }
44
65
  stop(peerId) {
@@ -48,19 +69,41 @@ export class KeepAliveManager {
48
69
  this.pingKeepAliveTimers.delete(peerIdStr);
49
70
  }
50
71
  if (this.relayKeepAliveTimers.has(peerId)) {
51
- clearInterval(this.relayKeepAliveTimers.get(peerId));
72
+ this.relayKeepAliveTimers.get(peerId)?.map(clearInterval);
52
73
  this.relayKeepAliveTimers.delete(peerId);
53
74
  }
54
75
  }
55
76
  stopAll() {
56
77
  for (const timer of [
57
78
  ...Object.values(this.pingKeepAliveTimers),
58
- ...Object.values(this.relayKeepAliveTimers),
79
+ ...Object.values(this.relayKeepAliveTimers)
59
80
  ]) {
60
81
  clearInterval(timer);
61
82
  }
62
83
  this.pingKeepAliveTimers.clear();
63
84
  this.relayKeepAliveTimers.clear();
64
85
  }
86
+ scheduleRelayPings(relay, relayPeriodSecs, peerIdStr) {
87
+ // send a ping message to each PubSubTopic the peer is part of
88
+ const intervals = [];
89
+ for (const topic of relay.pubsubTopics) {
90
+ const meshPeers = relay.getMeshPeers(topic);
91
+ if (!meshPeers.includes(peerIdStr))
92
+ continue;
93
+ const encoder = createEncoder({
94
+ pubsubTopic: topic,
95
+ contentTopic: RelayPingContentTopic,
96
+ ephemeral: true
97
+ });
98
+ const interval = setInterval(() => {
99
+ log("Sending Waku Relay ping message");
100
+ relay
101
+ .send(encoder, { payload: new Uint8Array([1]) })
102
+ .catch((e) => log("Failed to send relay ping", e));
103
+ }, relayPeriodSecs * 1000);
104
+ intervals.push(interval);
105
+ }
106
+ return intervals;
107
+ }
65
108
  }
66
109
  //# sourceMappingURL=keep_alive_manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keep_alive_manager.js","sourceRoot":"","sources":["../../src/lib/keep_alive_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keep_alive_manager.js","sourceRoot":"","sources":["../../src/lib/keep_alive_manager.ts"],"names":[],"mappings":"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"}