@waku/core 0.0.34-9f1d8ca.0 → 0.0.34-c41b319.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/bundle/base_protocol-CCK9RCtH.js +152 -0
  2. package/bundle/{index-BIW3qNYx.js → index-Db7LxDrL.js} +78 -159
  3. package/bundle/index.js +1882 -158
  4. package/bundle/lib/base_protocol.js +2 -2
  5. package/bundle/lib/message/version_0.js +2 -2
  6. package/bundle/{version_0-CdmZMfkQ.js → version_0-ANFNAdFD.js} +283 -45
  7. package/dist/.tsbuildinfo +1 -1
  8. package/dist/index.d.ts +1 -3
  9. package/dist/index.js +1 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/lib/base_protocol.d.ts +3 -23
  12. package/dist/lib/base_protocol.js +3 -47
  13. package/dist/lib/base_protocol.js.map +1 -1
  14. package/dist/lib/connection_manager/connection_manager.d.ts +118 -0
  15. package/dist/lib/{connection_manager.js → connection_manager/connection_manager.js} +136 -36
  16. package/dist/lib/connection_manager/connection_manager.js.map +1 -0
  17. package/dist/lib/connection_manager/index.d.ts +1 -0
  18. package/dist/lib/connection_manager/index.js +2 -0
  19. package/dist/lib/connection_manager/index.js.map +1 -0
  20. package/dist/lib/{keep_alive_manager.d.ts → connection_manager/keep_alive_manager.d.ts} +4 -2
  21. package/dist/lib/{keep_alive_manager.js → connection_manager/keep_alive_manager.js} +2 -2
  22. package/dist/lib/connection_manager/keep_alive_manager.js.map +1 -0
  23. package/dist/lib/connection_manager/utils.d.ts +7 -0
  24. package/dist/lib/connection_manager/utils.js +22 -0
  25. package/dist/lib/connection_manager/utils.js.map +1 -0
  26. package/dist/lib/filter/filter.d.ts +18 -0
  27. package/dist/lib/filter/filter.js +209 -0
  28. package/dist/lib/filter/filter.js.map +1 -0
  29. package/dist/lib/filter/index.d.ts +1 -18
  30. package/dist/lib/filter/index.js +1 -208
  31. package/dist/lib/filter/index.js.map +1 -1
  32. package/dist/lib/light_push/index.d.ts +1 -15
  33. package/dist/lib/light_push/index.js +1 -143
  34. package/dist/lib/light_push/index.js.map +1 -1
  35. package/dist/lib/light_push/light_push.d.ts +15 -0
  36. package/dist/lib/light_push/light_push.js +144 -0
  37. package/dist/lib/light_push/light_push.js.map +1 -0
  38. package/dist/lib/metadata/index.d.ts +1 -3
  39. package/dist/lib/metadata/index.js +1 -118
  40. package/dist/lib/metadata/index.js.map +1 -1
  41. package/dist/lib/metadata/metadata.d.ts +3 -0
  42. package/dist/lib/metadata/metadata.js +119 -0
  43. package/dist/lib/metadata/metadata.js.map +1 -0
  44. package/dist/lib/store/index.d.ts +1 -9
  45. package/dist/lib/store/index.js +1 -82
  46. package/dist/lib/store/index.js.map +1 -1
  47. package/dist/lib/store/store.d.ts +9 -0
  48. package/dist/lib/store/store.js +83 -0
  49. package/dist/lib/store/store.js.map +1 -0
  50. package/dist/lib/stream_manager/stream_manager.d.ts +2 -2
  51. package/dist/lib/stream_manager/stream_manager.js +16 -17
  52. package/dist/lib/stream_manager/stream_manager.js.map +1 -1
  53. package/package.json +1 -1
  54. package/src/index.ts +1 -4
  55. package/src/lib/base_protocol.ts +3 -76
  56. package/src/lib/{connection_manager.ts → connection_manager/connection_manager.ts} +168 -63
  57. package/src/lib/connection_manager/index.ts +1 -0
  58. package/src/lib/{keep_alive_manager.ts → connection_manager/keep_alive_manager.ts} +7 -3
  59. package/src/lib/connection_manager/utils.ts +25 -0
  60. package/src/lib/filter/filter.ts +315 -0
  61. package/src/lib/filter/index.ts +1 -315
  62. package/src/lib/light_push/index.ts +1 -188
  63. package/src/lib/light_push/light_push.ts +188 -0
  64. package/src/lib/metadata/index.ts +1 -182
  65. package/src/lib/metadata/metadata.ts +182 -0
  66. package/src/lib/store/index.ts +1 -136
  67. package/src/lib/store/store.ts +136 -0
  68. package/src/lib/stream_manager/stream_manager.ts +16 -18
  69. package/bundle/base_protocol-Dzv-QHPR.js +0 -275
  70. package/dist/lib/connection_manager.d.ts +0 -62
  71. package/dist/lib/connection_manager.js.map +0 -1
  72. package/dist/lib/filterPeers.d.ts +0 -13
  73. package/dist/lib/filterPeers.js +0 -38
  74. package/dist/lib/filterPeers.js.map +0 -1
  75. package/dist/lib/health_manager.d.ts +0 -14
  76. package/dist/lib/health_manager.js +0 -70
  77. package/dist/lib/health_manager.js.map +0 -1
  78. package/dist/lib/keep_alive_manager.js.map +0 -1
  79. package/src/lib/filterPeers.ts +0 -51
  80. package/src/lib/health_manager.ts +0 -90
@@ -1,90 +0,0 @@
1
- import {
2
- HealthStatus,
3
- type IHealthManager,
4
- NodeHealth,
5
- type ProtocolHealth,
6
- Protocols
7
- } from "@waku/interfaces";
8
-
9
- class HealthManager implements IHealthManager {
10
- public static instance: HealthManager;
11
- private readonly health: NodeHealth;
12
-
13
- private constructor() {
14
- this.health = {
15
- overallStatus: HealthStatus.Unhealthy,
16
- protocolStatuses: new Map()
17
- };
18
- }
19
-
20
- public static getInstance(): HealthManager {
21
- if (!HealthManager.instance) {
22
- HealthManager.instance = new HealthManager();
23
- }
24
- return HealthManager.instance;
25
- }
26
-
27
- public getHealthStatus(): HealthStatus {
28
- return this.health.overallStatus;
29
- }
30
-
31
- public getProtocolStatus(protocol: Protocols): ProtocolHealth | undefined {
32
- return this.health.protocolStatuses.get(protocol);
33
- }
34
-
35
- public updateProtocolHealth(
36
- multicodec: string,
37
- connectedPeers: number
38
- ): void {
39
- const protocol = this.getNameFromMulticodec(multicodec);
40
-
41
- let status: HealthStatus = HealthStatus.Unhealthy;
42
- if (connectedPeers == 1) {
43
- status = HealthStatus.MinimallyHealthy;
44
- } else if (connectedPeers >= 2) {
45
- status = HealthStatus.SufficientlyHealthy;
46
- }
47
-
48
- this.health.protocolStatuses.set(protocol, {
49
- name: protocol,
50
- status: status,
51
- lastUpdate: new Date()
52
- });
53
-
54
- this.updateOverallHealth();
55
- }
56
-
57
- private getNameFromMulticodec(multicodec: string): Protocols {
58
- let name: Protocols;
59
- if (multicodec.includes("filter")) {
60
- name = Protocols.Filter;
61
- } else if (multicodec.includes("lightpush")) {
62
- name = Protocols.LightPush;
63
- } else if (multicodec.includes("store")) {
64
- name = Protocols.Store;
65
- } else {
66
- throw new Error(`Unknown protocol: ${multicodec}`);
67
- }
68
- return name;
69
- }
70
-
71
- private updateOverallHealth(): void {
72
- const relevantProtocols = [Protocols.LightPush, Protocols.Filter];
73
- const statuses = relevantProtocols.map(
74
- (p) => this.getProtocolStatus(p)?.status
75
- );
76
-
77
- if (statuses.some((status) => status === HealthStatus.Unhealthy)) {
78
- this.health.overallStatus = HealthStatus.Unhealthy;
79
- } else if (
80
- statuses.some((status) => status === HealthStatus.MinimallyHealthy)
81
- ) {
82
- this.health.overallStatus = HealthStatus.MinimallyHealthy;
83
- } else {
84
- this.health.overallStatus = HealthStatus.SufficientlyHealthy;
85
- }
86
- }
87
- }
88
-
89
- export const getHealthManager = (): HealthManager =>
90
- HealthManager.getInstance();