@waku/core 0.0.6 → 0.0.7

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 (111) hide show
  1. package/CHANGELOG.md +34 -4
  2. package/bundle/index.js +10871 -3756
  3. package/bundle/lib/message/topic_only_message.js +33 -0
  4. package/bundle/lib/message/version_0.js +133 -0
  5. package/bundle/{message-70dbb19b.js → peer_exchange-53df2b11.js} +2175 -269
  6. package/dist/index.d.ts +14 -14
  7. package/dist/index.js +10 -10
  8. package/dist/index.js.map +1 -1
  9. package/dist/lib/{waku_filter → filter}/filter_rpc.d.ts +1 -1
  10. package/dist/lib/{waku_filter → filter}/filter_rpc.js +1 -1
  11. package/dist/lib/filter/filter_rpc.js.map +1 -0
  12. package/dist/lib/{waku_filter → filter}/index.d.ts +3 -3
  13. package/dist/lib/{waku_filter → filter}/index.js +3 -4
  14. package/dist/lib/filter/index.js.map +1 -0
  15. package/dist/lib/{waku_light_push → light_push}/index.d.ts +3 -3
  16. package/dist/lib/{waku_light_push → light_push}/index.js +4 -5
  17. package/dist/lib/light_push/index.js.map +1 -0
  18. package/dist/lib/{waku_light_push → light_push}/push_rpc.d.ts +1 -1
  19. package/dist/lib/{waku_light_push → light_push}/push_rpc.js +1 -1
  20. package/dist/lib/light_push/push_rpc.js.map +1 -0
  21. package/dist/lib/message/topic_only_message.d.ts +16 -0
  22. package/dist/lib/{waku_message → message}/topic_only_message.js +1 -1
  23. package/dist/lib/message/topic_only_message.js.map +1 -0
  24. package/dist/lib/message/version_0.d.ts +54 -0
  25. package/dist/lib/{waku_message → message}/version_0.js +35 -7
  26. package/dist/lib/message/version_0.js.map +1 -0
  27. package/dist/lib/predefined_bootstrap_nodes.js.map +1 -1
  28. package/dist/lib/{waku_relay → relay}/constants.d.ts +0 -0
  29. package/dist/lib/{waku_relay → relay}/constants.js +0 -0
  30. package/dist/lib/relay/constants.js.map +1 -0
  31. package/dist/lib/{waku_relay → relay}/index.d.ts +5 -5
  32. package/dist/lib/{waku_relay → relay}/index.js +5 -5
  33. package/dist/lib/relay/index.js.map +1 -0
  34. package/dist/lib/{waku_store → store}/history_rpc.d.ts +1 -1
  35. package/dist/lib/{waku_store → store}/history_rpc.js +1 -1
  36. package/dist/lib/store/history_rpc.js.map +1 -0
  37. package/dist/lib/{waku_store → store}/index.d.ts +7 -5
  38. package/dist/lib/{waku_store → store}/index.js +9 -8
  39. package/dist/lib/store/index.js.map +1 -0
  40. package/dist/lib/to_proto_message.d.ts +3 -3
  41. package/dist/lib/to_proto_message.js.map +1 -1
  42. package/dist/lib/wait_for_remote_peer.js +12 -3
  43. package/dist/lib/wait_for_remote_peer.js.map +1 -1
  44. package/dist/lib/waku.d.ts +10 -9
  45. package/dist/lib/waku.js +19 -9
  46. package/dist/lib/waku.js.map +1 -1
  47. package/package.json +18 -19
  48. package/src/index.ts +19 -14
  49. package/src/lib/{waku_filter → filter}/filter_rpc.ts +1 -2
  50. package/src/lib/{waku_filter → filter}/index.ts +26 -26
  51. package/src/lib/{waku_light_push → light_push}/index.ts +17 -18
  52. package/src/lib/{waku_light_push → light_push}/push_rpc.ts +1 -2
  53. package/src/lib/{waku_message → message}/topic_only_message.ts +10 -7
  54. package/src/lib/{waku_message → message}/version_0.ts +53 -18
  55. package/src/lib/predefined_bootstrap_nodes.ts +1 -1
  56. package/src/lib/{waku_relay → relay}/constants.ts +0 -0
  57. package/src/lib/{waku_relay → relay}/index.ts +20 -26
  58. package/src/lib/{waku_store → store}/history_rpc.ts +1 -2
  59. package/src/lib/{waku_store → store}/index.ts +38 -24
  60. package/src/lib/to_proto_message.ts +4 -5
  61. package/src/lib/wait_for_remote_peer.ts +17 -5
  62. package/src/lib/waku.ts +40 -17
  63. package/bundle/index-925587a4.js +0 -5642
  64. package/bundle/lib/wait_for_remote_peer.js +0 -324
  65. package/bundle/lib/waku_message/topic_only_message.js +0 -2
  66. package/bundle/lib/waku_message/version_0.js +0 -330
  67. package/bundle/topic_only_message-a80fe8b2.js +0 -82
  68. package/dist/lib/multiaddr_to_peer_info.d.ts +0 -3
  69. package/dist/lib/multiaddr_to_peer_info.js +0 -15
  70. package/dist/lib/multiaddr_to_peer_info.js.map +0 -1
  71. package/dist/lib/select_connection.d.ts +0 -2
  72. package/dist/lib/select_connection.js +0 -19
  73. package/dist/lib/select_connection.js.map +0 -1
  74. package/dist/lib/select_peer.d.ts +0 -15
  75. package/dist/lib/select_peer.js +0 -59
  76. package/dist/lib/select_peer.js.map +0 -1
  77. package/dist/lib/waku_filter/filter_rpc.js.map +0 -1
  78. package/dist/lib/waku_filter/index.js.map +0 -1
  79. package/dist/lib/waku_light_push/index.js.map +0 -1
  80. package/dist/lib/waku_light_push/push_rpc.js.map +0 -1
  81. package/dist/lib/waku_message/topic_only_message.d.ts +0 -16
  82. package/dist/lib/waku_message/topic_only_message.js.map +0 -1
  83. package/dist/lib/waku_message/version_0.d.ts +0 -30
  84. package/dist/lib/waku_message/version_0.js.map +0 -1
  85. package/dist/lib/waku_relay/constants.js.map +0 -1
  86. package/dist/lib/waku_relay/index.js.map +0 -1
  87. package/dist/lib/waku_store/history_rpc.js.map +0 -1
  88. package/dist/lib/waku_store/index.js.map +0 -1
  89. package/dist/proto/filter.d.ts +0 -66
  90. package/dist/proto/filter.js +0 -432
  91. package/dist/proto/filter.js.map +0 -1
  92. package/dist/proto/light_push.d.ts +0 -58
  93. package/dist/proto/light_push.js +0 -376
  94. package/dist/proto/light_push.js.map +0 -1
  95. package/dist/proto/message.d.ts +0 -30
  96. package/dist/proto/message.js +0 -222
  97. package/dist/proto/message.js.map +0 -1
  98. package/dist/proto/store.d.ts +0 -105
  99. package/dist/proto/store.js +0 -609
  100. package/dist/proto/store.js.map +0 -1
  101. package/dist/proto/topic_only_message.d.ts +0 -10
  102. package/dist/proto/topic_only_message.js +0 -46
  103. package/dist/proto/topic_only_message.js.map +0 -1
  104. package/src/lib/multiaddr_to_peer_info.ts +0 -17
  105. package/src/lib/select_connection.ts +0 -24
  106. package/src/lib/select_peer.ts +0 -77
  107. package/src/proto/filter.ts +0 -611
  108. package/src/proto/light_push.ts +0 -535
  109. package/src/proto/message.ts +0 -313
  110. package/src/proto/store.ts +0 -853
  111. package/src/proto/topic_only_message.ts +0 -67
package/dist/index.d.ts CHANGED
@@ -1,14 +1,14 @@
1
- export { DefaultPubSubTopic } from "./lib/constants";
2
- export { DefaultUserAgent } from "./lib/waku";
3
- export * as proto_message from "./proto/message";
4
- export * as proto_topic_only_message from "./proto/topic_only_message";
5
- export * as waku from "./lib/waku";
6
- export { WakuNode } from "./lib/waku";
7
- export * as waku_filter from "./lib/waku_filter";
8
- export { wakuFilter } from "./lib/waku_filter";
9
- export * as waku_light_push from "./lib/waku_light_push";
10
- export { wakuLightPush, LightPushCodec, PushResponse, } from "./lib/waku_light_push";
11
- export * as waku_relay from "./lib/waku_relay";
12
- export { wakuRelay } from "./lib/waku_relay";
13
- export * as waku_store from "./lib/waku_store";
14
- export { PageDirection, wakuStore, StoreCodec, createCursor, } from "./lib/waku_store";
1
+ export { DefaultPubSubTopic } from "./lib/constants.js";
2
+ export { DefaultUserAgent } from "./lib/waku.js";
3
+ export { createEncoder, createDecoder, DecodedMessage, } from "./lib/message/version_0.js";
4
+ export * as waku from "./lib/waku.js";
5
+ export { WakuNode } from "./lib/waku.js";
6
+ export * as waku_filter from "./lib/filter/index.js";
7
+ export { wakuFilter } from "./lib/filter/index.js";
8
+ export * as waku_light_push from "./lib/light_push/index.js";
9
+ export { wakuLightPush, LightPushCodec, PushResponse, } from "./lib/light_push/index.js";
10
+ export * as waku_relay from "./lib/relay/index.js";
11
+ export { wakuRelay } from "./lib/relay/index.js";
12
+ export * as waku_store from "./lib/store/index.js";
13
+ export { PageDirection, wakuStore, StoreCodec, createCursor, } from "./lib/store/index.js";
14
+ export { waitForRemotePeer } from "./lib/wait_for_remote_peer.js";
package/dist/index.js CHANGED
@@ -1,15 +1,15 @@
1
1
  export { DefaultPubSubTopic } from "./lib/constants.js";
2
2
  export { DefaultUserAgent } from "./lib/waku.js";
3
- export * as proto_message from "./proto/message.js";
4
- export * as proto_topic_only_message from "./proto/topic_only_message.js";
3
+ export { createEncoder, createDecoder, DecodedMessage, } from "./lib/message/version_0.js";
5
4
  export * as waku from "./lib/waku.js";
6
5
  export { WakuNode } from "./lib/waku.js";
7
- export * as waku_filter from "./lib/waku_filter/index.js";
8
- export { wakuFilter } from "./lib/waku_filter/index.js";
9
- export * as waku_light_push from "./lib/waku_light_push/index.js";
10
- export { wakuLightPush, LightPushCodec, PushResponse, } from "./lib/waku_light_push/index.js";
11
- export * as waku_relay from "./lib/waku_relay/index.js";
12
- export { wakuRelay } from "./lib/waku_relay/index.js";
13
- export * as waku_store from "./lib/waku_store/index.js";
14
- export { PageDirection, wakuStore, StoreCodec, createCursor, } from "./lib/waku_store/index.js";
6
+ export * as waku_filter from "./lib/filter/index.js";
7
+ export { wakuFilter } from "./lib/filter/index.js";
8
+ export * as waku_light_push from "./lib/light_push/index.js";
9
+ export { wakuLightPush, LightPushCodec, PushResponse, } from "./lib/light_push/index.js";
10
+ export * as waku_relay from "./lib/relay/index.js";
11
+ export { wakuRelay } from "./lib/relay/index.js";
12
+ export * as waku_store from "./lib/store/index.js";
13
+ export { PageDirection, wakuStore, StoreCodec, createCursor, } from "./lib/store/index.js";
14
+ export { waitForRemotePeer } from "./lib/wait_for_remote_peer.js";
15
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,wBAAwB,MAAM,4BAA4B,CAAC;AAEvE,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACL,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,aAAa,EACb,SAAS,EACT,UAAU,EACV,YAAY,GACb,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,WAAW,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,eAAe,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EACL,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACL,aAAa,EACb,SAAS,EACT,UAAU,EACV,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1,4 +1,4 @@
1
- import * as proto from "../../proto/filter";
1
+ import { proto_filter as proto } from "@waku/proto";
2
2
  export declare type ContentFilter = {
3
3
  contentTopic: string;
4
4
  };
@@ -1,5 +1,5 @@
1
+ import { proto_filter as proto } from "@waku/proto";
1
2
  import { v4 as uuid } from "uuid";
2
- import * as proto from "../../proto/filter.js";
3
3
  /**
4
4
  * FilterRPC represents a message conforming to the Waku Filter protocol
5
5
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter_rpc.js","sourceRoot":"","sources":["../../../src/lib/filter/filter_rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,KAAK,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAMlC;;GAEG;AACH,MAAM,OAAO,SAAS;IACpB,YAA0B,KAAsB;QAAtB,UAAK,GAAL,KAAK,CAAiB;IAAG,CAAC;IAEpD,MAAM,CAAC,aAAa,CAClB,KAAa,EACb,cAA+B,EAC/B,SAAkB,EAClB,SAAS,GAAG,IAAI;QAEhB,OAAO,IAAI,SAAS,CAAC;YACnB,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE;YAC9B,OAAO,EAAE;gBACP,SAAS;gBACT,KAAK;gBACL,cAAc;aACf;YACD,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,KAAiB;QAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;IAC9B,CAAC;CACF"}
@@ -1,8 +1,8 @@
1
1
  import type { ConnectionManager } from "@libp2p/interface-connection-manager";
2
2
  import type { PeerStore } from "@libp2p/interface-peer-store";
3
3
  import type { Registrar } from "@libp2p/interface-registrar";
4
- import type { Filter } from "@waku/interfaces";
5
- import { ContentFilter } from "./filter_rpc";
4
+ import type { IFilter } from "@waku/interfaces";
5
+ import { ContentFilter } from "./filter_rpc.js";
6
6
  export { ContentFilter };
7
7
  export declare const FilterCodec = "/vac/waku/filter/2.0.0-beta1";
8
8
  export interface FilterComponents {
@@ -22,4 +22,4 @@ export interface CreateOptions {
22
22
  pubSubTopic?: string;
23
23
  }
24
24
  export declare type UnsubscribeFunction = () => Promise<void>;
25
- export declare function wakuFilter(init?: Partial<CreateOptions>): (components: FilterComponents) => Filter;
25
+ export declare function wakuFilter(init?: Partial<CreateOptions>): (components: FilterComponents) => IFilter;
@@ -1,11 +1,10 @@
1
+ import { getPeersForProtocol, selectConnection, selectPeerForProtocol, selectRandomPeer, } from "@waku/libp2p-utils";
1
2
  import debug from "debug";
2
3
  import all from "it-all";
3
4
  import * as lp from "it-length-prefixed";
4
5
  import { pipe } from "it-pipe";
5
6
  import { DefaultPubSubTopic } from "../constants.js";
6
7
  import { groupByContentTopic } from "../group_by.js";
7
- import { selectConnection } from "../select_connection.js";
8
- import { getPeersForProtocol, selectPeerForProtocol, selectRandomPeer, } from "../select_peer.js";
9
8
  import { toProtoMessage } from "../to_proto_message.js";
10
9
  import { FilterRPC } from "./filter_rpc.js";
11
10
  export const FilterCodec = "/vac/waku/filter/2.0.0-beta1";
@@ -17,7 +16,7 @@ const log = debug("waku:filter");
17
16
  * - https://github.com/status-im/go-waku/issues/245
18
17
  * - https://github.com/status-im/nwaku/issues/948
19
18
  */
20
- class WakuFilter {
19
+ class Filter {
21
20
  constructor(components, options) {
22
21
  this.components = components;
23
22
  this.subscriptions = new Map();
@@ -182,6 +181,6 @@ class WakuFilter {
182
181
  }
183
182
  }
184
183
  export function wakuFilter(init = {}) {
185
- return (components) => new WakuFilter(components, init);
184
+ return (components) => new Filter(components, init);
186
185
  }
187
186
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/filter/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ConnectionManager } from "@libp2p/interface-connection-manager";
2
2
  import type { PeerStore } from "@libp2p/interface-peer-store";
3
- import type { LightPush } from "@waku/interfaces";
4
- import { PushResponse } from "../../proto/light_push";
3
+ import type { ILightPush } from "@waku/interfaces";
4
+ import { PushResponse } from "@waku/proto";
5
5
  export declare const LightPushCodec = "/vac/waku/lightpush/2.0.0-beta1";
6
6
  export { PushResponse };
7
7
  export interface LightPushComponents {
@@ -19,4 +19,4 @@ export interface CreateOptions {
19
19
  */
20
20
  pubSubTopic?: string;
21
21
  }
22
- export declare function wakuLightPush(init?: Partial<CreateOptions>): (components: LightPushComponents) => LightPush;
22
+ export declare function wakuLightPush(init?: Partial<CreateOptions>): (components: LightPushComponents) => ILightPush;
@@ -1,12 +1,11 @@
1
+ import { getPeersForProtocol, selectConnection, selectPeerForProtocol, selectRandomPeer, } from "@waku/libp2p-utils";
2
+ import { PushResponse } from "@waku/proto";
1
3
  import debug from "debug";
2
4
  import all from "it-all";
3
5
  import * as lp from "it-length-prefixed";
4
6
  import { pipe } from "it-pipe";
5
7
  import { Uint8ArrayList } from "uint8arraylist";
6
- import { PushResponse } from "../../proto/light_push.js";
7
8
  import { DefaultPubSubTopic } from "../constants.js";
8
- import { selectConnection } from "../select_connection.js";
9
- import { getPeersForProtocol, selectPeerForProtocol, selectRandomPeer, } from "../select_peer.js";
10
9
  import { PushRPC } from "./push_rpc.js";
11
10
  const log = debug("waku:light-push");
12
11
  export const LightPushCodec = "/vac/waku/lightpush/2.0.0-beta1";
@@ -14,7 +13,7 @@ export { PushResponse };
14
13
  /**
15
14
  * Implements the [Waku v2 Light Push protocol](https://rfc.vac.dev/spec/19/).
16
15
  */
17
- class WakuLightPush {
16
+ class LightPush {
18
17
  constructor(components, options) {
19
18
  this.components = components;
20
19
  this.pubSubTopic = options?.pubSubTopic ?? DefaultPubSubTopic;
@@ -84,6 +83,6 @@ class WakuLightPush {
84
83
  }
85
84
  }
86
85
  export function wakuLightPush(init = {}) {
87
- return (components) => new WakuLightPush(components, init);
86
+ return (components) => new LightPush(components, init);
88
87
  }
89
88
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/light_push/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
+ import { proto_lightpush as proto } from "@waku/proto";
1
2
  import type { Uint8ArrayList } from "uint8arraylist";
2
- import * as proto from "../../proto/light_push";
3
3
  export declare class PushRPC {
4
4
  proto: proto.PushRPC;
5
5
  constructor(proto: proto.PushRPC);
@@ -1,5 +1,5 @@
1
+ import { proto_lightpush as proto } from "@waku/proto";
1
2
  import { v4 as uuid } from "uuid";
2
- import * as proto from "../../proto/light_push.js";
3
3
  export class PushRPC {
4
4
  constructor(proto) {
5
5
  this.proto = proto;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push_rpc.js","sourceRoot":"","sources":["../../../src/lib/light_push/push_rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,KAAK,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAElC,MAAM,OAAO,OAAO;IAClB,YAA0B,KAAoB;QAApB,UAAK,GAAL,KAAK,CAAe;IAAG,CAAC;IAElD,MAAM,CAAC,aAAa,CAClB,OAA0B,EAC1B,WAAmB;QAEnB,OAAO,IAAI,OAAO,CAAC;YACjB,SAAS,EAAE,IAAI,EAAE;YACjB,OAAO,EAAE;gBACP,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,WAAW;aACzB;YACD,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAAqB;QACjC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ import type { IDecodedMessage, IDecoder, IProtoMessage } from "@waku/interfaces";
2
+ import { proto_topic_only_message as proto } from "@waku/proto";
3
+ export declare class TopicOnlyMessage implements IDecodedMessage {
4
+ private proto;
5
+ payload: undefined;
6
+ rateLimitProof: undefined;
7
+ timestamp: undefined;
8
+ ephemeral: undefined;
9
+ constructor(proto: proto.TopicOnlyMessage);
10
+ get contentTopic(): string;
11
+ }
12
+ export declare class TopicOnlyDecoder implements IDecoder<TopicOnlyMessage> {
13
+ contentTopic: string;
14
+ fromWireToProtoObj(bytes: Uint8Array): Promise<IProtoMessage | undefined>;
15
+ fromProtoObj(proto: IProtoMessage): Promise<TopicOnlyMessage | undefined>;
16
+ }
@@ -1,5 +1,5 @@
1
+ import { proto_topic_only_message as proto } from "@waku/proto";
1
2
  import debug from "debug";
2
- import * as proto from "../../proto/topic_only_message.js";
3
3
  const log = debug("waku:message:topic-only");
4
4
  export class TopicOnlyMessage {
5
5
  constructor(proto) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"topic_only_message.js","sourceRoot":"","sources":["../../../src/lib/message/topic_only_message.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,wBAAwB,IAAI,KAAK,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,GAAG,GAAG,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAE7C,MAAM,OAAO,gBAAgB;IAM3B,YAAoB,KAA6B;QAA7B,UAAK,GAAL,KAAK,CAAwB;IAAG,CAAC;IAErD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,gBAAgB;IAA7B;QACS,iBAAY,GAAG,EAAE,CAAC;IAoB3B,CAAC;IAlBC,kBAAkB,CAAC,KAAiB;QAClC,MAAM,YAAY,GAAG,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,OAAO,EAAE,SAAS;YAClB,cAAc,EAAE,SAAS;YACzB,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAAoB;QAEpB,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,54 @@
1
+ import type { IDecodedMessage, IDecoder, IEncoder, IMessage, IProtoMessage, IRateLimitProof } from "@waku/interfaces";
2
+ import { proto_message as proto } from "@waku/proto";
3
+ export declare const Version = 0;
4
+ export { proto };
5
+ export declare class DecodedMessage implements IDecodedMessage {
6
+ protected proto: proto.WakuMessage;
7
+ constructor(proto: proto.WakuMessage);
8
+ get _rawPayload(): Uint8Array | undefined;
9
+ get ephemeral(): boolean;
10
+ get payload(): Uint8Array | undefined;
11
+ get contentTopic(): string | undefined;
12
+ get _rawTimestamp(): bigint | undefined;
13
+ get timestamp(): Date | undefined;
14
+ get version(): number;
15
+ get rateLimitProof(): IRateLimitProof | undefined;
16
+ }
17
+ export declare class Encoder implements IEncoder {
18
+ contentTopic: string;
19
+ ephemeral: boolean;
20
+ constructor(contentTopic: string, ephemeral?: boolean);
21
+ toWire(message: IMessage): Promise<Uint8Array>;
22
+ toProtoObj(message: IMessage): Promise<IProtoMessage>;
23
+ }
24
+ /**
25
+ * Creates an encoder that encode messages without Waku level encryption or signature.
26
+ *
27
+ * An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/)
28
+ * format to be sent over the Waku network. The resulting encoder can then be
29
+ * pass to { @link @waku/interfaces.LightPush.push } or
30
+ * { @link @waku/interfaces.Relay.send } to automatically encode outgoing
31
+ * messages.
32
+ *
33
+ * @param contentTopic The content topic to set on outgoing messages.
34
+ * @param ephemeral An optional flag to mark message as ephemeral, ie, not to be stored by Waku Store nodes.
35
+ */
36
+ export declare function createEncoder(contentTopic: string, ephemeral?: boolean): Encoder;
37
+ export declare class Decoder implements IDecoder<DecodedMessage> {
38
+ contentTopic: string;
39
+ constructor(contentTopic: string);
40
+ fromWireToProtoObj(bytes: Uint8Array): Promise<IProtoMessage | undefined>;
41
+ fromProtoObj(proto: IProtoMessage): Promise<DecodedMessage | undefined>;
42
+ }
43
+ /**
44
+ * Creates an decoder that decode messages without Waku level encryption.
45
+ *
46
+ * A decoder is used to decode messages from the [14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/)
47
+ * format when received from the Waku network. The resulting decoder can then be
48
+ * pass to { @link @waku/interfaces.Filter.subscribe } or
49
+ * { @link @waku/interfaces.Relay.subscribe } to automatically decode incoming
50
+ * messages.
51
+ *
52
+ * @param contentTopic The resulting decoder will only decode messages with this content topic.
53
+ */
54
+ export declare function createDecoder(contentTopic: string): Decoder;
@@ -1,10 +1,10 @@
1
+ import { proto_message as proto } from "@waku/proto";
1
2
  import debug from "debug";
2
- import * as proto from "../../proto/message.js";
3
3
  const log = debug("waku:message:version-0");
4
4
  const OneMillion = BigInt(1000000);
5
5
  export const Version = 0;
6
6
  export { proto };
7
- export class MessageV0 {
7
+ export class DecodedMessage {
8
8
  constructor(proto) {
9
9
  this.proto = proto;
10
10
  }
@@ -52,7 +52,7 @@ export class MessageV0 {
52
52
  return this.proto.rateLimitProof;
53
53
  }
54
54
  }
55
- export class EncoderV0 {
55
+ export class Encoder {
56
56
  constructor(contentTopic, ephemeral = false) {
57
57
  this.contentTopic = contentTopic;
58
58
  this.ephemeral = ephemeral;
@@ -72,10 +72,24 @@ export class EncoderV0 {
72
72
  };
73
73
  }
74
74
  }
75
- export class DecoderV0 {
76
- constructor(contentTopic, ephemeral = false) {
75
+ /**
76
+ * Creates an encoder that encode messages without Waku level encryption or signature.
77
+ *
78
+ * An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/)
79
+ * format to be sent over the Waku network. The resulting encoder can then be
80
+ * pass to { @link @waku/interfaces.LightPush.push } or
81
+ * { @link @waku/interfaces.Relay.send } to automatically encode outgoing
82
+ * messages.
83
+ *
84
+ * @param contentTopic The content topic to set on outgoing messages.
85
+ * @param ephemeral An optional flag to mark message as ephemeral, ie, not to be stored by Waku Store nodes.
86
+ */
87
+ export function createEncoder(contentTopic, ephemeral = false) {
88
+ return new Encoder(contentTopic, ephemeral);
89
+ }
90
+ export class Decoder {
91
+ constructor(contentTopic) {
77
92
  this.contentTopic = contentTopic;
78
- this.ephemeral = ephemeral;
79
93
  }
80
94
  fromWireToProtoObj(bytes) {
81
95
  const protoMessage = proto.WakuMessage.decode(bytes);
@@ -98,7 +112,21 @@ export class DecoderV0 {
98
112
  log("Failed to decode due to incorrect version, expected:", Version, ", actual:", proto.version);
99
113
  return Promise.resolve(undefined);
100
114
  }
101
- return new MessageV0(proto);
115
+ return new DecodedMessage(proto);
102
116
  }
103
117
  }
118
+ /**
119
+ * Creates an decoder that decode messages without Waku level encryption.
120
+ *
121
+ * A decoder is used to decode messages from the [14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/)
122
+ * format when received from the Waku network. The resulting decoder can then be
123
+ * pass to { @link @waku/interfaces.Filter.subscribe } or
124
+ * { @link @waku/interfaces.Relay.subscribe } to automatically decode incoming
125
+ * messages.
126
+ *
127
+ * @param contentTopic The resulting decoder will only decode messages with this content topic.
128
+ */
129
+ export function createDecoder(contentTopic) {
130
+ return new Decoder(contentTopic);
131
+ }
104
132
  //# sourceMappingURL=version_0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version_0.js","sourceRoot":"","sources":["../../../src/lib/message/version_0.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"predefined_bootstrap_nodes.js","sourceRoot":"","sources":["../../src/lib/predefined_bootstrap_nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAErC,MAAM,CAAN,IAAY,KAGX;AAHD,WAAY,KAAK;IACf,sBAAa,CAAA;IACb,sBAAa,CAAA;AACf,CAAC,EAHW,KAAK,KAAL,KAAK,QAGhB;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAAe,KAAK,CAAC,IAAI,EACzB,eAAuB,mBAAmB;IAE1C,IAAI,YAAY,IAAI,CAAC,EAAE;QACrB,OAAO,EAAE,CAAC;KACX;IAED,IAAI,KAAK,CAAC;IACV,QAAQ,KAAK,EAAE;QACb,KAAK,KAAK,CAAC,IAAI;YACb,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM;QACR,KAAK,KAAK,CAAC,IAAI;YACb,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM;QACR;YACE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;KAC1D;IAED,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAa,CAAC;IAEzC,OAAO,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE;QACN,aAAa,EAAE;YACb,gBAAgB,EAAE;gBAChB,sCAAsC,EACpC,+HAA+H;gBACjI,6BAA6B,EAC3B,sHAAsH;gBACxH,sCAAsC,EACpC,+HAA+H;aAClI;SACF;QACD,aAAa,EAAE;YACb,gBAAgB,EAAE;gBAChB,sCAAsC,EACpC,+HAA+H;gBACjI,6BAA6B,EAC3B,sHAAsH;gBACxH,sCAAsC,EACpC,+HAA+H;aAClI;SACF;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"predefined_bootstrap_nodes.js","sourceRoot":"","sources":["../../src/lib/predefined_bootstrap_nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAErC,MAAM,CAAN,IAAY,KAGX;AAHD,WAAY,KAAK;IACf,sBAAa,CAAA;IACb,sBAAa,CAAA;AACf,CAAC,EAHW,KAAK,KAAL,KAAK,QAGhB;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAAe,KAAK,CAAC,IAAI,EACzB,eAAuB,mBAAmB;IAE1C,IAAI,YAAY,IAAI,CAAC,EAAE;QACrB,OAAO,EAAE,CAAC;KACX;IAED,IAAI,KAAK,CAAC;IACV,QAAQ,KAAK,EAAE;QACb,KAAK,KAAK,CAAC,IAAI;YACb,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM;QACR,KAAK,KAAK,CAAC,IAAI;YACb,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM;QACR;YACE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;KAC1D;IAED,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAa,CAAC;IAEzC,OAAO,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE;QACN,aAAa,EAAE;YACb,gBAAgB,EAAE;gBAChB,sCAAsC,EACpC,+HAA+H;gBACjI,6BAA6B,EAC3B,sHAAsH;gBACxH,sCAAsC,EACpC,+HAA+H;aAClI;SACF;QACD,aAAa,EAAE;YACb,gBAAgB,EAAE;gBAChB,sCAAsC,EACpC,+HAA+H;gBACjI,6BAA6B,EAC3B,sHAAsH;gBACxH,sCAAsC,EACpC,+HAA+H;aAClI;SACF;KACF;CACF,CAAC"}
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/relay/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,6BAA6B;IAC7B,uBAAuB;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AAErC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { GossipSubComponents, GossipsubOpts } from "@chainsafe/libp2p-gossipsub";
2
- import type { Callback, Decoder, Relay } from "@waku/interfaces";
3
- import { DecodedMessage } from "@waku/interfaces";
4
- export declare type Observer<T extends DecodedMessage> = {
5
- decoder: Decoder<T>;
2
+ import type { Callback, IDecoder, IRelay } from "@waku/interfaces";
3
+ import { IDecodedMessage } from "@waku/interfaces";
4
+ export declare type Observer<T extends IDecodedMessage> = {
5
+ decoder: IDecoder<T>;
6
6
  callback: Callback<T>;
7
7
  };
8
8
  export declare type CreateOptions = {
@@ -21,4 +21,4 @@ export declare type CreateOptions = {
21
21
  */
22
22
  pubSubTopic?: string;
23
23
  } & GossipsubOpts;
24
- export declare function wakuRelay(init?: Partial<CreateOptions>): (components: GossipSubComponents) => Relay;
24
+ export declare function wakuRelay(init?: Partial<CreateOptions>): (components: GossipSubComponents) => IRelay;
@@ -2,8 +2,8 @@ import { GossipSub, } from "@chainsafe/libp2p-gossipsub";
2
2
  import { SignaturePolicy } from "@chainsafe/libp2p-gossipsub/types";
3
3
  import debug from "debug";
4
4
  import { DefaultPubSubTopic } from "../constants.js";
5
+ import { TopicOnlyDecoder } from "../message/topic_only_message.js";
5
6
  import { pushOrInitMapSet } from "../push_or_init_map.js";
6
- import { TopicOnlyDecoder } from "../waku_message/topic_only_message.js";
7
7
  import * as constants from "./constants.js";
8
8
  const log = debug("waku:relay");
9
9
  /**
@@ -12,7 +12,7 @@ const log = debug("waku:relay");
12
12
  *
13
13
  * @implements {require('libp2p-interfaces/src/pubsub')}
14
14
  */
15
- class WakuRelay extends GossipSub {
15
+ class Relay extends GossipSub {
16
16
  constructor(components, options) {
17
17
  options = Object.assign(options ?? {}, {
18
18
  // Ensure that no signature is included nor expected in the messages.
@@ -106,9 +106,9 @@ class WakuRelay extends GossipSub {
106
106
  return super.getMeshPeers(topic ?? this.pubSubTopic);
107
107
  }
108
108
  }
109
- WakuRelay.multicodec = constants.RelayCodecs[0];
110
- WakuRelay.multicodec = constants.RelayCodecs[constants.RelayCodecs.length - 1];
109
+ Relay.multicodec = constants.RelayCodecs[0];
110
+ Relay.multicodec = constants.RelayCodecs[constants.RelayCodecs.length - 1];
111
111
  export function wakuRelay(init = {}) {
112
- return (components) => new WakuRelay(components, init);
112
+ return (components) => new Relay(components, init);
113
113
  }
114
114
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/relay/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
+ import { proto_store as proto } from "@waku/proto";
1
2
  import type { Uint8ArrayList } from "uint8arraylist";
2
- import * as proto from "../../proto/store";
3
3
  export declare enum PageDirection {
4
4
  BACKWARD = "backward",
5
5
  FORWARD = "forward"
@@ -1,5 +1,5 @@
1
+ import { proto_store as proto } from "@waku/proto";
1
2
  import { v4 as uuid } from "uuid";
2
- import * as proto from "../../proto/store.js";
3
3
  const OneMillion = BigInt(1000000);
4
4
  export var PageDirection;
5
5
  (function (PageDirection) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history_rpc.js","sourceRoot":"","sources":["../../../src/lib/store/history_rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAElC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAS,CAAC,CAAC;AAErC,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAYD,MAAM,OAAO,UAAU;IACrB,YAAoC,KAAuB;QAAvB,UAAK,GAAL,KAAK,CAAkB;IAAG,CAAC;IAE/D,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAc;QAC/B,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YAC/D,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG;YACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS;SACU,CAAC;QAEtB,IAAI,SAAS,EAAE,OAAO,CAAC;QACvB,IAAI,MAAM,CAAC,SAAS,EAAE;YACpB,0CAA0C;YAC1C,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;SAC7D;QAED,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,0CAA0C;YAC1C,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;SACzD;QACD,OAAO,IAAI,UAAU,CAAC;YACpB,SAAS,EAAE,IAAI,EAAE;YACjB,KAAK,EAAE;gBACL,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,cAAc;gBACd,UAAU;gBACV,SAAS;gBACT,OAAO;aACR;YACD,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAqB;QAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3C,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,SAAS,gBAAgB,CACvB,aAA4B;IAE5B,QAAQ,aAAa,EAAE;QACrB,KAAK,aAAa,CAAC,QAAQ;YACzB,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,8BAA8B,CAAC;QACnE,KAAK,aAAa,CAAC,OAAO;YACxB,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACtD;YACE,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,8BAA8B,CAAC;KACpE;AACH,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import type { ConnectionManager } from "@libp2p/interface-connection-manager";
2
2
  import type { PeerId } from "@libp2p/interface-peer-id";
3
3
  import type { PeerStore } from "@libp2p/interface-peer-store";
4
- import { DecodedMessage, Index, Store } from "@waku/interfaces";
5
- import { PageDirection } from "./history_rpc";
4
+ import { Cursor, IDecodedMessage, Index, IStore } from "@waku/interfaces";
5
+ import { PageDirection } from "./history_rpc.js";
6
6
  export declare const StoreCodec = "/vac/waku/store/2.0.0-beta4";
7
7
  export declare const DefaultPageSize = 10;
8
8
  export { PageDirection };
@@ -58,9 +58,11 @@ export interface QueryOptions {
58
58
  timeFilter?: TimeFilter;
59
59
  /**
60
60
  * Cursor as an index to start a query from.
61
+ * The cursor index will be exclusive (i.e. the message at the cursor index will not be included in the result).
62
+ * If undefined, the query will start from the beginning or end of the history, depending on the page direction.
61
63
  */
62
- cursor?: Index;
64
+ cursor?: Cursor;
63
65
  }
64
66
  export declare function isDefined<T>(msg: T | undefined): msg is T;
65
- export declare function createCursor(message: DecodedMessage, pubsubTopic?: string): Promise<Index>;
66
- export declare function wakuStore(init?: Partial<CreateOptions>): (components: StoreComponents) => Store;
67
+ export declare function createCursor(message: IDecodedMessage, pubsubTopic?: string): Promise<Index>;
68
+ export declare function wakuStore(init?: Partial<CreateOptions>): (components: StoreComponents) => IStore;
@@ -1,14 +1,13 @@
1
1
  import { sha256 } from "@noble/hashes/sha256";
2
2
  import { concat, utf8ToBytes } from "@waku/byte-utils";
3
+ import { getPeersForProtocol, selectConnection, selectPeerForProtocol, } from "@waku/libp2p-utils";
4
+ import { proto_store as proto } from "@waku/proto";
3
5
  import debug from "debug";
4
6
  import all from "it-all";
5
7
  import * as lp from "it-length-prefixed";
6
8
  import { pipe } from "it-pipe";
7
9
  import { Uint8ArrayList } from "uint8arraylist";
8
- import * as proto from "../../proto/store.js";
9
10
  import { DefaultPubSubTopic } from "../constants.js";
10
- import { selectConnection } from "../select_connection.js";
11
- import { getPeersForProtocol, selectPeerForProtocol } from "../select_peer.js";
12
11
  import { toProtoMessage } from "../to_proto_message.js";
13
12
  import { HistoryRPC, PageDirection } from "./history_rpc.js";
14
13
  var HistoryError = proto.HistoryResponse.HistoryError;
@@ -21,7 +20,7 @@ export { PageDirection };
21
20
  *
22
21
  * The Waku Store protocol can be used to retrieved historical messages.
23
22
  */
24
- class WakuStore {
23
+ class Store {
25
24
  constructor(components, options) {
26
25
  this.components = components;
27
26
  this.pubSubTopic = options?.pubSubTopic ?? DefaultPubSubTopic;
@@ -163,8 +162,9 @@ async function* paginate(connection, protocol, queryOpts, decoders, cursor) {
163
162
  Array.from(decoders.keys()).toString()) {
164
163
  throw new Error("Internal error, the decoders should match the query's content topics");
165
164
  }
165
+ let currentCursor = cursor;
166
166
  while (true) {
167
- queryOpts = Object.assign(queryOpts, { cursor });
167
+ queryOpts.cursor = currentCursor;
168
168
  const stream = await connection.newStream(protocol);
169
169
  const historyRpcQuery = HistoryRPC.createQuery(queryOpts);
170
170
  log("Querying store peer", connection.remoteAddr.toString(), `for (${queryOpts.pubSubTopic})`, queryOpts.contentTopics);
@@ -198,13 +198,14 @@ async function* paginate(connection, protocol, queryOpts, decoders, cursor) {
198
198
  }
199
199
  return Promise.resolve(undefined);
200
200
  });
201
- cursor = response.pagingInfo?.cursor;
202
- if (typeof cursor === "undefined") {
201
+ const nextCursor = response.pagingInfo?.cursor;
202
+ if (typeof nextCursor === "undefined") {
203
203
  // If the server does not return cursor then there is an issue,
204
204
  // Need to abort, or we end up in an infinite loop
205
205
  log("Stopping pagination due to `response.pagingInfo.cursor` missing from store response");
206
206
  break;
207
207
  }
208
+ currentCursor = nextCursor;
208
209
  const responsePageSize = response.pagingInfo?.pageSize;
209
210
  const queryPageSize = historyRpcQuery.query?.pagingInfo?.pageSize;
210
211
  if (
@@ -237,6 +238,6 @@ export async function createCursor(message, pubsubTopic = DefaultPubSubTopic) {
237
238
  };
238
239
  }
239
240
  export function wakuStore(init = {}) {
240
- return (components) => new WakuStore(components, init);
241
+ return (components) => new Store(components, init);
241
242
  }
242
243
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/store/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { ProtoMessage } from "@waku/interfaces";
2
- import { WakuMessage as WakuMessageProto } from "../proto/message";
3
- export declare function toProtoMessage(wire: WakuMessageProto): ProtoMessage;
1
+ import { IProtoMessage } from "@waku/interfaces";
2
+ import { WakuMessage as WakuMessageProto } from "@waku/proto";
3
+ export declare function toProtoMessage(wire: WakuMessageProto): IProtoMessage;