nostr-websocket-utils 0.3.1 → 0.3.3
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.
- package/dist/__mocks__/extendedWsMock.d.ts +6 -8
- package/dist/__mocks__/extendedWsMock.d.ts.map +1 -0
- package/dist/__mocks__/extendedWsMock.js +1 -0
- package/dist/__mocks__/extendedWsMock.js.map +1 -0
- package/dist/__mocks__/mockLogger.d.ts +8 -7
- package/dist/__mocks__/mockLogger.d.ts.map +1 -0
- package/dist/__mocks__/mockLogger.js +1 -0
- package/dist/__mocks__/mockLogger.js.map +1 -0
- package/dist/__mocks__/mockserver.d.ts +7 -11
- package/dist/__mocks__/mockserver.d.ts.map +1 -0
- package/dist/__mocks__/mockserver.js +1 -0
- package/dist/__mocks__/mockserver.js.map +1 -0
- package/dist/__mocks__/wsMock.d.ts +1 -2
- package/dist/__mocks__/wsMock.d.ts.map +1 -0
- package/dist/__mocks__/wsMock.js +1 -0
- package/dist/__mocks__/wsMock.js.map +1 -0
- package/dist/cjs/__mocks__/extendedWsMock.d.ts +52 -0
- package/dist/cjs/__mocks__/extendedWsMock.d.ts.map +1 -0
- package/dist/cjs/__mocks__/extendedWsMock.js +161 -0
- package/dist/cjs/__mocks__/extendedWsMock.js.map +1 -0
- package/dist/cjs/__mocks__/mockLogger.d.ts +42 -0
- package/dist/cjs/__mocks__/mockLogger.d.ts.map +1 -0
- package/dist/cjs/__mocks__/mockLogger.js +53 -0
- package/dist/cjs/__mocks__/mockLogger.js.map +1 -0
- package/dist/cjs/__mocks__/mockserver.d.ts +27 -0
- package/dist/cjs/__mocks__/mockserver.d.ts.map +1 -0
- package/dist/cjs/__mocks__/mockserver.js +44 -0
- package/dist/cjs/__mocks__/mockserver.js.map +1 -0
- package/dist/cjs/__mocks__/wsMock.d.ts +25 -0
- package/dist/cjs/__mocks__/wsMock.d.ts.map +1 -0
- package/dist/cjs/__mocks__/wsMock.js +123 -0
- package/dist/cjs/__mocks__/wsMock.js.map +1 -0
- package/dist/cjs/core/client.d.ts +35 -0
- package/dist/cjs/core/client.d.ts.map +1 -0
- package/dist/cjs/core/client.js +161 -0
- package/dist/cjs/core/client.js.map +1 -0
- package/dist/{nostr-server.d.ts → cjs/core/nostr-server.d.ts} +3 -6
- package/dist/cjs/core/nostr-server.d.ts.map +1 -0
- package/dist/cjs/core/nostr-server.js +101 -0
- package/dist/cjs/core/nostr-server.js.map +1 -0
- package/dist/cjs/core/queue.d.ts +38 -0
- package/dist/cjs/core/queue.d.ts.map +1 -0
- package/dist/cjs/core/queue.js +105 -0
- package/dist/cjs/core/queue.js.map +1 -0
- package/dist/cjs/core/server.d.ts +29 -0
- package/dist/cjs/core/server.d.ts.map +1 -0
- package/dist/cjs/core/server.js +134 -0
- package/dist/cjs/core/server.js.map +1 -0
- package/dist/cjs/crypto/bech32.d.ts +27 -0
- package/dist/cjs/crypto/bech32.d.ts.map +1 -0
- package/dist/cjs/crypto/bech32.js +170 -0
- package/dist/cjs/crypto/bech32.js.map +1 -0
- package/dist/cjs/crypto/handlers.d.ts +19 -0
- package/dist/cjs/crypto/handlers.d.ts.map +1 -0
- package/dist/cjs/crypto/handlers.js +65 -0
- package/dist/cjs/crypto/handlers.js.map +1 -0
- package/dist/cjs/crypto/index.d.ts +7 -0
- package/dist/cjs/crypto/index.d.ts.map +1 -0
- package/dist/cjs/crypto/index.js +23 -0
- package/dist/cjs/crypto/index.js.map +1 -0
- package/dist/cjs/endpoints/metrics.d.ts +30 -0
- package/dist/cjs/endpoints/metrics.d.ts.map +1 -0
- package/dist/cjs/endpoints/metrics.js +106 -0
- package/dist/cjs/endpoints/metrics.js.map +1 -0
- package/dist/cjs/index.d.ts +13 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +40 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/nips/index.d.ts +20 -0
- package/dist/cjs/nips/index.d.ts.map +1 -0
- package/dist/cjs/nips/index.js +51 -0
- package/dist/cjs/nips/index.js.map +1 -0
- package/dist/cjs/nips/nip-01.d.ts +35 -0
- package/dist/cjs/nips/nip-01.d.ts.map +1 -0
- package/dist/cjs/nips/nip-01.js +142 -0
- package/dist/cjs/nips/nip-01.js.map +1 -0
- package/dist/cjs/nips/nip-02.d.ts +83 -0
- package/dist/cjs/nips/nip-02.d.ts.map +1 -0
- package/dist/cjs/nips/nip-02.js +119 -0
- package/dist/cjs/nips/nip-02.js.map +1 -0
- package/dist/cjs/nips/nip-04.d.ts +37 -0
- package/dist/cjs/nips/nip-04.d.ts.map +1 -0
- package/dist/cjs/nips/nip-04.js +104 -0
- package/dist/cjs/nips/nip-04.js.map +1 -0
- package/dist/cjs/nips/nip-05.d.ts +88 -0
- package/dist/cjs/nips/nip-05.d.ts.map +1 -0
- package/dist/cjs/nips/nip-05.js +158 -0
- package/dist/cjs/nips/nip-05.js.map +1 -0
- package/dist/cjs/nips/nip-09.d.ts +93 -0
- package/dist/cjs/nips/nip-09.d.ts.map +1 -0
- package/dist/cjs/nips/nip-09.js +180 -0
- package/dist/cjs/nips/nip-09.js.map +1 -0
- package/dist/cjs/nips/nip-11.d.ts +65 -0
- package/dist/cjs/nips/nip-11.d.ts.map +1 -0
- package/dist/cjs/nips/nip-11.js +161 -0
- package/dist/cjs/nips/nip-11.js.map +1 -0
- package/dist/cjs/nips/nip-13.d.ts +74 -0
- package/dist/cjs/nips/nip-13.d.ts.map +1 -0
- package/dist/cjs/nips/nip-13.js +136 -0
- package/dist/cjs/nips/nip-13.js.map +1 -0
- package/dist/cjs/nips/nip-15.d.ts +84 -0
- package/dist/cjs/nips/nip-15.d.ts.map +1 -0
- package/dist/cjs/nips/nip-15.js +102 -0
- package/dist/cjs/nips/nip-15.js.map +1 -0
- package/dist/cjs/nips/nip-16.d.ts +89 -0
- package/dist/cjs/nips/nip-16.d.ts.map +1 -0
- package/dist/cjs/nips/nip-16.js +157 -0
- package/dist/cjs/nips/nip-16.js.map +1 -0
- package/dist/cjs/nips/nip-19.d.ts +29 -0
- package/dist/cjs/nips/nip-19.d.ts.map +1 -0
- package/dist/cjs/nips/nip-19.js +112 -0
- package/dist/cjs/nips/nip-19.js.map +1 -0
- package/dist/cjs/nips/nip-20.d.ts +60 -0
- package/dist/cjs/nips/nip-20.d.ts.map +1 -0
- package/dist/cjs/nips/nip-20.js +102 -0
- package/dist/cjs/nips/nip-20.js.map +1 -0
- package/dist/cjs/nips/nip-22.d.ts +90 -0
- package/dist/cjs/nips/nip-22.d.ts.map +1 -0
- package/dist/cjs/nips/nip-22.js +149 -0
- package/dist/cjs/nips/nip-22.js.map +1 -0
- package/dist/cjs/nips/nip-26.d.ts +53 -0
- package/dist/cjs/nips/nip-26.d.ts.map +1 -0
- package/dist/cjs/nips/nip-26.js +147 -0
- package/dist/cjs/nips/nip-26.js.map +1 -0
- package/dist/cjs/nips/nip-28.d.ts +104 -0
- package/dist/cjs/nips/nip-28.d.ts.map +1 -0
- package/dist/cjs/nips/nip-28.js +164 -0
- package/dist/cjs/nips/nip-28.js.map +1 -0
- package/dist/cjs/nips/nip-33.d.ts +95 -0
- package/dist/cjs/nips/nip-33.d.ts.map +1 -0
- package/dist/cjs/nips/nip-33.js +135 -0
- package/dist/cjs/nips/nip-33.js.map +1 -0
- package/dist/cjs/transport/base.d.ts +54 -0
- package/dist/cjs/transport/base.d.ts.map +1 -0
- package/dist/cjs/transport/base.js +109 -0
- package/dist/cjs/transport/base.js.map +1 -0
- package/dist/cjs/transport/websocket.d.ts +24 -0
- package/dist/cjs/transport/websocket.d.ts.map +1 -0
- package/dist/cjs/transport/websocket.js +136 -0
- package/dist/cjs/transport/websocket.js.map +1 -0
- package/dist/cjs/types/events.d.ts +74 -0
- package/dist/cjs/types/events.d.ts.map +1 -0
- package/dist/cjs/types/events.js +7 -0
- package/dist/cjs/types/events.js.map +1 -0
- package/dist/cjs/types/filters.d.ts +20 -0
- package/dist/cjs/types/filters.d.ts.map +1 -0
- package/dist/cjs/types/filters.js +7 -0
- package/dist/cjs/types/filters.js.map +1 -0
- package/dist/cjs/types/handlers.d.ts +81 -0
- package/dist/cjs/types/handlers.d.ts.map +1 -0
- package/dist/cjs/types/handlers.js +7 -0
- package/dist/cjs/types/handlers.js.map +1 -0
- package/dist/cjs/types/index.d.ts +144 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +37 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/logger.d.ts +41 -0
- package/dist/cjs/types/logger.d.ts.map +1 -0
- package/dist/cjs/types/logger.js +7 -0
- package/dist/cjs/types/logger.js.map +1 -0
- package/dist/cjs/types/messages.d.ts +133 -0
- package/dist/cjs/types/messages.d.ts.map +1 -0
- package/dist/cjs/types/messages.js +46 -0
- package/dist/cjs/types/messages.js.map +1 -0
- package/dist/cjs/types/nostr.d.ts +134 -0
- package/dist/cjs/types/nostr.d.ts.map +1 -0
- package/dist/cjs/types/nostr.js +7 -0
- package/dist/cjs/types/nostr.js.map +1 -0
- package/dist/cjs/types/options.d.ts +155 -0
- package/dist/cjs/types/options.d.ts.map +1 -0
- package/dist/cjs/types/options.js +7 -0
- package/dist/cjs/types/options.js.map +1 -0
- package/dist/cjs/types/priority.d.ts +13 -0
- package/dist/cjs/types/priority.d.ts.map +1 -0
- package/dist/cjs/types/priority.js +17 -0
- package/dist/cjs/types/priority.js.map +1 -0
- package/dist/cjs/types/relays.d.ts +27 -0
- package/dist/cjs/types/relays.d.ts.map +1 -0
- package/dist/cjs/types/relays.js +7 -0
- package/dist/cjs/types/relays.js.map +1 -0
- package/dist/cjs/types/scoring.d.ts +59 -0
- package/dist/cjs/types/scoring.d.ts.map +1 -0
- package/dist/cjs/types/scoring.js +34 -0
- package/dist/cjs/types/scoring.js.map +1 -0
- package/dist/cjs/types/socket.d.ts +98 -0
- package/dist/cjs/types/socket.d.ts.map +1 -0
- package/dist/cjs/types/socket.js +7 -0
- package/dist/cjs/types/socket.js.map +1 -0
- package/dist/cjs/types/transport.d.ts +98 -0
- package/dist/cjs/types/transport.d.ts.map +1 -0
- package/dist/cjs/types/transport.js +7 -0
- package/dist/cjs/types/transport.js.map +1 -0
- package/dist/cjs/types/validation.d.ts +51 -0
- package/dist/cjs/types/validation.d.ts.map +1 -0
- package/dist/cjs/types/validation.js +7 -0
- package/dist/cjs/types/validation.js.map +1 -0
- package/dist/cjs/types/websocket.d.ts +250 -0
- package/dist/cjs/types/websocket.d.ts.map +1 -0
- package/dist/cjs/types/websocket.js +7 -0
- package/dist/cjs/types/websocket.js.map +1 -0
- package/dist/cjs/utils/http.d.ts +11 -0
- package/dist/cjs/utils/http.d.ts.map +1 -0
- package/dist/cjs/utils/http.js +28 -0
- package/dist/cjs/utils/http.js.map +1 -0
- package/dist/cjs/utils/logger.d.ts +26 -0
- package/dist/cjs/utils/logger.d.ts.map +1 -0
- package/dist/cjs/utils/logger.js +43 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/cjs/utils/metrics.d.ts +81 -0
- package/dist/cjs/utils/metrics.d.ts.map +1 -0
- package/dist/cjs/utils/metrics.js +211 -0
- package/dist/cjs/utils/metrics.js.map +1 -0
- package/dist/cjs/utils/rate-limiter.d.ts +86 -0
- package/dist/cjs/utils/rate-limiter.d.ts.map +1 -0
- package/dist/cjs/utils/rate-limiter.js +183 -0
- package/dist/cjs/utils/rate-limiter.js.map +1 -0
- package/dist/core/client.d.ts +1 -0
- package/dist/core/client.d.ts.map +1 -0
- package/dist/core/client.js +1 -0
- package/dist/core/client.js.map +1 -0
- package/dist/core/nostr-server.d.ts +1 -0
- package/dist/core/nostr-server.d.ts.map +1 -0
- package/dist/core/nostr-server.js +1 -0
- package/dist/core/nostr-server.js.map +1 -0
- package/dist/core/queue.d.ts +1 -0
- package/dist/core/queue.d.ts.map +1 -0
- package/dist/core/queue.js +1 -0
- package/dist/core/queue.js.map +1 -0
- package/dist/core/server.d.ts +1 -0
- package/dist/core/server.d.ts.map +1 -0
- package/dist/core/server.js +1 -0
- package/dist/core/server.js.map +1 -0
- package/dist/crypto/bech32.d.ts +1 -0
- package/dist/crypto/bech32.d.ts.map +1 -0
- package/dist/crypto/bech32.js +1 -0
- package/dist/crypto/bech32.js.map +1 -0
- package/dist/crypto/handlers.d.ts +1 -0
- package/dist/crypto/handlers.d.ts.map +1 -0
- package/dist/crypto/handlers.js +1 -0
- package/dist/crypto/handlers.js.map +1 -0
- package/dist/crypto/index.d.ts +3 -1
- package/dist/crypto/index.d.ts.map +1 -0
- package/dist/crypto/index.js +3 -1
- package/dist/crypto/index.js.map +1 -0
- package/dist/endpoints/metrics.d.ts +1 -0
- package/dist/endpoints/metrics.d.ts.map +1 -0
- package/dist/endpoints/metrics.js +1 -0
- package/dist/endpoints/metrics.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/nips/index.d.ts +1 -0
- package/dist/nips/index.d.ts.map +1 -0
- package/dist/nips/index.js +1 -0
- package/dist/nips/index.js.map +1 -0
- package/dist/nips/nip-01.d.ts +1 -0
- package/dist/nips/nip-01.d.ts.map +1 -0
- package/dist/nips/nip-01.js +1 -0
- package/dist/nips/nip-01.js.map +1 -0
- package/dist/nips/nip-02.d.ts +1 -0
- package/dist/nips/nip-02.d.ts.map +1 -0
- package/dist/nips/nip-02.js +1 -0
- package/dist/nips/nip-02.js.map +1 -0
- package/dist/nips/nip-04.d.ts +1 -0
- package/dist/nips/nip-04.d.ts.map +1 -0
- package/dist/nips/nip-04.js +1 -0
- package/dist/nips/nip-04.js.map +1 -0
- package/dist/nips/nip-05.d.ts +1 -0
- package/dist/nips/nip-05.d.ts.map +1 -0
- package/dist/nips/nip-05.js +1 -0
- package/dist/nips/nip-05.js.map +1 -0
- package/dist/nips/nip-09.d.ts +1 -0
- package/dist/nips/nip-09.d.ts.map +1 -0
- package/dist/nips/nip-09.js +1 -0
- package/dist/nips/nip-09.js.map +1 -0
- package/dist/nips/nip-11.d.ts +1 -0
- package/dist/nips/nip-11.d.ts.map +1 -0
- package/dist/nips/nip-11.js +1 -0
- package/dist/nips/nip-11.js.map +1 -0
- package/dist/nips/nip-13.d.ts +1 -0
- package/dist/nips/nip-13.d.ts.map +1 -0
- package/dist/nips/nip-13.js +1 -0
- package/dist/nips/nip-13.js.map +1 -0
- package/dist/nips/nip-15.d.ts +1 -0
- package/dist/nips/nip-15.d.ts.map +1 -0
- package/dist/nips/nip-15.js +1 -0
- package/dist/nips/nip-15.js.map +1 -0
- package/dist/nips/nip-16.d.ts +1 -0
- package/dist/nips/nip-16.d.ts.map +1 -0
- package/dist/nips/nip-16.js +1 -0
- package/dist/nips/nip-16.js.map +1 -0
- package/dist/nips/nip-19.d.ts +1 -0
- package/dist/nips/nip-19.d.ts.map +1 -0
- package/dist/nips/nip-19.js +1 -0
- package/dist/nips/nip-19.js.map +1 -0
- package/dist/nips/nip-20.d.ts +1 -0
- package/dist/nips/nip-20.d.ts.map +1 -0
- package/dist/nips/nip-20.js +1 -0
- package/dist/nips/nip-20.js.map +1 -0
- package/dist/nips/nip-22.d.ts +1 -0
- package/dist/nips/nip-22.d.ts.map +1 -0
- package/dist/nips/nip-22.js +1 -0
- package/dist/nips/nip-22.js.map +1 -0
- package/dist/nips/nip-26.d.ts +1 -0
- package/dist/nips/nip-26.d.ts.map +1 -0
- package/dist/nips/nip-26.js +1 -0
- package/dist/nips/nip-26.js.map +1 -0
- package/dist/nips/nip-28.d.ts +1 -0
- package/dist/nips/nip-28.d.ts.map +1 -0
- package/dist/nips/nip-28.js +1 -0
- package/dist/nips/nip-28.js.map +1 -0
- package/dist/nips/nip-33.d.ts +1 -0
- package/dist/nips/nip-33.d.ts.map +1 -0
- package/dist/nips/nip-33.js +1 -0
- package/dist/nips/nip-33.js.map +1 -0
- package/dist/transport/base.d.ts +1 -1
- package/dist/transport/base.d.ts.map +1 -0
- package/dist/transport/base.js +1 -0
- package/dist/transport/base.js.map +1 -0
- package/dist/transport/websocket.d.ts +1 -0
- package/dist/transport/websocket.d.ts.map +1 -0
- package/dist/transport/websocket.js +1 -0
- package/dist/transport/websocket.js.map +1 -0
- package/dist/types/events.d.ts +1 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +1 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/filters.d.ts +1 -0
- package/dist/types/filters.d.ts.map +1 -0
- package/dist/types/filters.js +1 -0
- package/dist/types/filters.js.map +1 -0
- package/dist/types/handlers.d.ts +1 -0
- package/dist/types/handlers.d.ts.map +1 -0
- package/dist/types/handlers.js +1 -0
- package/dist/types/handlers.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/logger.d.ts +1 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/logger.js +1 -0
- package/dist/types/logger.js.map +1 -0
- package/dist/types/messages.d.ts +1 -0
- package/dist/types/messages.d.ts.map +1 -0
- package/dist/types/messages.js +1 -0
- package/dist/types/messages.js.map +1 -0
- package/dist/types/nostr.d.ts +1 -0
- package/dist/types/nostr.d.ts.map +1 -0
- package/dist/types/nostr.js +1 -0
- package/dist/types/nostr.js.map +1 -0
- package/dist/types/options.d.ts +1 -0
- package/dist/types/options.d.ts.map +1 -0
- package/dist/types/options.js +1 -0
- package/dist/types/options.js.map +1 -0
- package/dist/types/priority.d.ts +1 -0
- package/dist/types/priority.d.ts.map +1 -0
- package/dist/types/priority.js +1 -0
- package/dist/types/priority.js.map +1 -0
- package/dist/types/relays.d.ts +1 -0
- package/dist/types/relays.d.ts.map +1 -0
- package/dist/types/relays.js +1 -0
- package/dist/types/relays.js.map +1 -0
- package/dist/types/scoring.d.ts +1 -2
- package/dist/types/scoring.d.ts.map +1 -0
- package/dist/types/scoring.js +1 -0
- package/dist/types/scoring.js.map +1 -0
- package/dist/types/socket.d.ts +1 -2
- package/dist/types/socket.d.ts.map +1 -0
- package/dist/types/socket.js +1 -0
- package/dist/types/socket.js.map +1 -0
- package/dist/types/transport.d.ts +1 -0
- package/dist/types/transport.d.ts.map +1 -0
- package/dist/types/transport.js +1 -0
- package/dist/types/transport.js.map +1 -0
- package/dist/types/validation.d.ts +1 -0
- package/dist/types/validation.d.ts.map +1 -0
- package/dist/types/validation.js +1 -0
- package/dist/types/validation.js.map +1 -0
- package/dist/types/websocket.d.ts +1 -0
- package/dist/types/websocket.d.ts.map +1 -0
- package/dist/types/websocket.js +1 -0
- package/dist/types/websocket.js.map +1 -0
- package/dist/utils/http.d.ts +1 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/http.js +1 -0
- package/dist/utils/http.js.map +1 -0
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +1 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/metrics.d.ts +1 -1
- package/dist/utils/metrics.d.ts.map +1 -0
- package/dist/utils/metrics.js +1 -0
- package/dist/utils/metrics.js.map +1 -0
- package/dist/utils/rate-limiter.d.ts +1 -0
- package/dist/utils/rate-limiter.d.ts.map +1 -0
- package/dist/utils/rate-limiter.js +1 -0
- package/dist/utils/rate-limiter.js.map +1 -0
- package/package.json +14 -2
- package/dist/__mocks__/logger.d.ts +0 -9
- package/dist/__mocks__/logger.js +0 -6
- package/dist/client.d.ts +0 -129
- package/dist/client.js +0 -259
- package/dist/crypto/schnorr.d.ts +0 -16
- package/dist/crypto/schnorr.js +0 -51
- package/dist/nostr-server.js +0 -107
- package/dist/server.d.ts +0 -27
- package/dist/server.js +0 -132
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file Metrics tracking for Nostr WebSocket connections
|
|
4
|
+
* @module metrics
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.metricsTracker = exports.RelayMetricsTracker = void 0;
|
|
8
|
+
const events_1 = require("events");
|
|
9
|
+
const logger_1 = require("./logger");
|
|
10
|
+
const logger = (0, logger_1.getLogger)('RelayMetrics');
|
|
11
|
+
class RelayMetricsTracker extends events_1.EventEmitter {
|
|
12
|
+
constructor() {
|
|
13
|
+
super();
|
|
14
|
+
this.metrics = new Map();
|
|
15
|
+
this.startTime = Date.now();
|
|
16
|
+
// Periodically calculate scores
|
|
17
|
+
setInterval(() => this.updateScores(), 60000); // Every minute
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get metrics for a specific relay
|
|
21
|
+
*/
|
|
22
|
+
getRelayMetrics(relayUrl) {
|
|
23
|
+
if (!this.metrics.has(relayUrl)) {
|
|
24
|
+
this.initializeMetrics(relayUrl);
|
|
25
|
+
}
|
|
26
|
+
return this.metrics.get(relayUrl);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Get metrics for all relays
|
|
30
|
+
*/
|
|
31
|
+
getAllMetrics() {
|
|
32
|
+
return this.metrics;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Initialize metrics for a new relay
|
|
36
|
+
*/
|
|
37
|
+
initializeMetrics(relayUrl) {
|
|
38
|
+
this.metrics.set(relayUrl, {
|
|
39
|
+
totalConnections: 0,
|
|
40
|
+
activeConnections: 0,
|
|
41
|
+
connectionErrors: 0,
|
|
42
|
+
messagesReceived: 0,
|
|
43
|
+
messagesSent: 0,
|
|
44
|
+
bytesReceived: 0,
|
|
45
|
+
bytesSent: 0,
|
|
46
|
+
averageLatency: 0,
|
|
47
|
+
maxLatency: 0,
|
|
48
|
+
minLatency: Infinity,
|
|
49
|
+
totalErrors: 0,
|
|
50
|
+
eventsReceived: 0,
|
|
51
|
+
eventsSent: 0,
|
|
52
|
+
subscriptions: 0,
|
|
53
|
+
uptime: 0,
|
|
54
|
+
reliability: 1,
|
|
55
|
+
lastSeen: Date.now(),
|
|
56
|
+
score: 100
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Update connection metrics
|
|
61
|
+
*/
|
|
62
|
+
trackConnection(relayUrl, connected) {
|
|
63
|
+
const metrics = this.getRelayMetrics(relayUrl);
|
|
64
|
+
if (connected) {
|
|
65
|
+
metrics.totalConnections++;
|
|
66
|
+
metrics.activeConnections++;
|
|
67
|
+
metrics.lastSeen = Date.now();
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
metrics.activeConnections = Math.max(0, metrics.activeConnections - 1);
|
|
71
|
+
}
|
|
72
|
+
this.emit('metrics.update', relayUrl, metrics);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Track message metrics
|
|
76
|
+
*/
|
|
77
|
+
trackMessage(relayUrl, sent, bytes) {
|
|
78
|
+
const metrics = this.getRelayMetrics(relayUrl);
|
|
79
|
+
if (sent) {
|
|
80
|
+
metrics.messagesSent++;
|
|
81
|
+
metrics.bytesSent += bytes;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
metrics.messagesReceived++;
|
|
85
|
+
metrics.bytesReceived += bytes;
|
|
86
|
+
}
|
|
87
|
+
metrics.lastSeen = Date.now();
|
|
88
|
+
this.emit('metrics.update', relayUrl, metrics);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Track latency
|
|
92
|
+
*/
|
|
93
|
+
trackLatency(relayUrl, latencyMs) {
|
|
94
|
+
const metrics = this.getRelayMetrics(relayUrl);
|
|
95
|
+
metrics.maxLatency = Math.max(metrics.maxLatency, latencyMs);
|
|
96
|
+
metrics.minLatency = Math.min(metrics.minLatency, latencyMs);
|
|
97
|
+
// Exponential moving average for smoothing
|
|
98
|
+
metrics.averageLatency = metrics.averageLatency * 0.9 + latencyMs * 0.1;
|
|
99
|
+
this.emit('metrics.update', relayUrl, metrics);
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Track errors
|
|
103
|
+
*/
|
|
104
|
+
trackError(relayUrl, error) {
|
|
105
|
+
const metrics = this.getRelayMetrics(relayUrl);
|
|
106
|
+
metrics.totalErrors++;
|
|
107
|
+
metrics.lastError = error.message;
|
|
108
|
+
metrics.connectionErrors++;
|
|
109
|
+
this.emit('metrics.update', relayUrl, metrics);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Track protocol-specific events
|
|
113
|
+
*/
|
|
114
|
+
trackProtocolEvent(relayUrl, type, sent) {
|
|
115
|
+
const metrics = this.getRelayMetrics(relayUrl);
|
|
116
|
+
if (type === 'event') {
|
|
117
|
+
sent ? metrics.eventsSent++ : metrics.eventsReceived++;
|
|
118
|
+
}
|
|
119
|
+
else if (type === 'subscription') {
|
|
120
|
+
metrics.subscriptions += sent ? 1 : -1;
|
|
121
|
+
metrics.subscriptions = Math.max(0, metrics.subscriptions);
|
|
122
|
+
}
|
|
123
|
+
this.emit('metrics.update', relayUrl, metrics);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Calculate relay score based on metrics
|
|
127
|
+
*/
|
|
128
|
+
calculateScore(metrics) {
|
|
129
|
+
const now = Date.now();
|
|
130
|
+
// Calculate weighted scores for different aspects
|
|
131
|
+
const latencyScore = Math.max(0, 100 - (metrics.averageLatency / 10)); // Lower is better
|
|
132
|
+
const reliabilityScore = metrics.reliability * 100;
|
|
133
|
+
const uptimeScore = Math.min(100, (metrics.uptime / (60 * 60 * 24)) * 100); // Score based on 24h uptime
|
|
134
|
+
const errorScore = Math.max(0, 100 - (metrics.connectionErrors * 5)); // Each error reduces score by 5
|
|
135
|
+
const activityScore = metrics.lastSeen ? Math.max(0, 100 - ((now - metrics.lastSeen) / (60 * 1000))) : 0; // Activity in last hour
|
|
136
|
+
// Weighted average
|
|
137
|
+
return Math.round((latencyScore * 0.2) +
|
|
138
|
+
(reliabilityScore * 0.3) +
|
|
139
|
+
(uptimeScore * 0.2) +
|
|
140
|
+
(errorScore * 0.2) +
|
|
141
|
+
(activityScore * 0.1));
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Update scores for all relays
|
|
145
|
+
*/
|
|
146
|
+
updateScores() {
|
|
147
|
+
const now = Date.now();
|
|
148
|
+
for (const [url, metrics] of this.metrics.entries()) {
|
|
149
|
+
// Update uptime
|
|
150
|
+
metrics.uptime = (now - this.startTime) / 1000;
|
|
151
|
+
// Update reliability based on successful vs total connections
|
|
152
|
+
metrics.reliability = metrics.totalConnections > 0
|
|
153
|
+
? 1 - (metrics.connectionErrors / metrics.totalConnections)
|
|
154
|
+
: 1;
|
|
155
|
+
// Calculate composite score
|
|
156
|
+
metrics.score = this.calculateScore(metrics);
|
|
157
|
+
this.emit('metrics.score', url, metrics.score);
|
|
158
|
+
logger.info({ url, score: metrics.score }, 'Updated relay score');
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Get high-value relays (score > threshold)
|
|
163
|
+
*/
|
|
164
|
+
getHighValueRelays(threshold = 70) {
|
|
165
|
+
return Array.from(this.metrics.entries())
|
|
166
|
+
.filter(([_, metrics]) => metrics.score >= threshold)
|
|
167
|
+
.map(([url]) => url);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Export metrics in Prometheus format
|
|
171
|
+
*/
|
|
172
|
+
getPrometheusMetrics() {
|
|
173
|
+
const lines = [];
|
|
174
|
+
// Helper to format metric line
|
|
175
|
+
const formatMetric = (name, value, labels = {}) => {
|
|
176
|
+
const labelStr = Object.entries(labels)
|
|
177
|
+
.map(([k, v]) => `${k}="${v}"`)
|
|
178
|
+
.join(',');
|
|
179
|
+
lines.push(`nostr_${name}${labelStr ? `{${labelStr}}` : ''} ${value}`);
|
|
180
|
+
};
|
|
181
|
+
for (const [url, metrics] of this.metrics.entries()) {
|
|
182
|
+
const labels = { relay: url };
|
|
183
|
+
// Connection metrics
|
|
184
|
+
formatMetric('connections_total', metrics.totalConnections, labels);
|
|
185
|
+
formatMetric('connections_active', metrics.activeConnections, labels);
|
|
186
|
+
formatMetric('connection_errors_total', metrics.connectionErrors, labels);
|
|
187
|
+
// Message metrics
|
|
188
|
+
formatMetric('messages_received_total', metrics.messagesReceived, labels);
|
|
189
|
+
formatMetric('messages_sent_total', metrics.messagesSent, labels);
|
|
190
|
+
formatMetric('bytes_received_total', metrics.bytesReceived, labels);
|
|
191
|
+
formatMetric('bytes_sent_total', metrics.bytesSent, labels);
|
|
192
|
+
// Performance metrics
|
|
193
|
+
formatMetric('latency_average', metrics.averageLatency, labels);
|
|
194
|
+
formatMetric('latency_max', metrics.maxLatency, labels);
|
|
195
|
+
formatMetric('latency_min', metrics.minLatency, labels);
|
|
196
|
+
// Protocol metrics
|
|
197
|
+
formatMetric('events_received_total', metrics.eventsReceived, labels);
|
|
198
|
+
formatMetric('events_sent_total', metrics.eventsSent, labels);
|
|
199
|
+
formatMetric('subscriptions_active', metrics.subscriptions, labels);
|
|
200
|
+
// Scoring metrics
|
|
201
|
+
formatMetric('uptime_seconds', metrics.uptime, labels);
|
|
202
|
+
formatMetric('reliability_score', metrics.reliability, labels);
|
|
203
|
+
formatMetric('composite_score', metrics.score, labels);
|
|
204
|
+
}
|
|
205
|
+
return lines.join('\n') + '\n';
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
exports.RelayMetricsTracker = RelayMetricsTracker;
|
|
209
|
+
// Export singleton instance
|
|
210
|
+
exports.metricsTracker = new RelayMetricsTracker();
|
|
211
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/utils/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file WebSocket Rate Limiter
|
|
3
|
+
* @module utils/rate-limiter
|
|
4
|
+
*/
|
|
5
|
+
import type { NostrWSMessage } from '../types/messages';
|
|
6
|
+
import type { Logger } from '../types/logger';
|
|
7
|
+
/**
|
|
8
|
+
* Rate limit configuration for different message types
|
|
9
|
+
*/
|
|
10
|
+
export interface RateLimitConfig {
|
|
11
|
+
windowMs: number;
|
|
12
|
+
maxRequests: number;
|
|
13
|
+
blockDurationMs?: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Client state for rate limiting
|
|
17
|
+
*/
|
|
18
|
+
interface ClientState {
|
|
19
|
+
requests: Map<string, number[]>;
|
|
20
|
+
blockedUntil?: number;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Rate limiter interface
|
|
24
|
+
*/
|
|
25
|
+
export interface RateLimiter {
|
|
26
|
+
shouldLimit(clientId: string, message: NostrWSMessage): Promise<boolean>;
|
|
27
|
+
recordRequest(clientId: string, message: NostrWSMessage): void;
|
|
28
|
+
getRemainingRequests(clientId: string, messageType: string): number;
|
|
29
|
+
isBlocked(clientId: string): boolean;
|
|
30
|
+
getClientState(clientId: string): ClientState;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Rate limit rules for different event types
|
|
34
|
+
*/
|
|
35
|
+
export declare const DEFAULT_RATE_LIMITS: Record<string, RateLimitConfig>;
|
|
36
|
+
/**
|
|
37
|
+
* Creates a rate limiter
|
|
38
|
+
* @param config - Rate limit configuration
|
|
39
|
+
* @param _logger - Logger instance
|
|
40
|
+
* @returns {RateLimiter} Rate limiter
|
|
41
|
+
*/
|
|
42
|
+
export declare function createRateLimiter(config: Record<string, RateLimitConfig> | undefined, _logger: Logger): RateLimiter;
|
|
43
|
+
/**
|
|
44
|
+
* WebSocket connection rate limiter interface
|
|
45
|
+
*/
|
|
46
|
+
export interface ConnectionRateLimiter {
|
|
47
|
+
/**
|
|
48
|
+
* Checks if a new connection should be allowed
|
|
49
|
+
* @param clientId - Client identifier
|
|
50
|
+
* @returns {Promise<boolean>} True if connection is allowed
|
|
51
|
+
*/
|
|
52
|
+
allowConnection(clientId: string): Promise<boolean>;
|
|
53
|
+
/**
|
|
54
|
+
* Records a connection attempt
|
|
55
|
+
* @param clientId - Client identifier
|
|
56
|
+
* @param successful - Whether connection was successful
|
|
57
|
+
*/
|
|
58
|
+
recordConnection(clientId: string, successful: boolean): void;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Creates a connection rate limiter
|
|
62
|
+
* @param config - Connection limit configuration
|
|
63
|
+
* @param logger - Logger instance
|
|
64
|
+
* @returns {ConnectionRateLimiter} Connection rate limiter
|
|
65
|
+
*/
|
|
66
|
+
export declare function createConnectionRateLimiter(config: {
|
|
67
|
+
maxConnectionsPerMinute: number;
|
|
68
|
+
maxConcurrentConnections: number;
|
|
69
|
+
blockAfterFailures: number;
|
|
70
|
+
blockDurationMs: number;
|
|
71
|
+
}, logger: Logger): ConnectionRateLimiter;
|
|
72
|
+
/**
|
|
73
|
+
* Rate limiter implementation
|
|
74
|
+
*/
|
|
75
|
+
export declare class RateLimiterImpl implements RateLimiter {
|
|
76
|
+
private clients;
|
|
77
|
+
private config;
|
|
78
|
+
constructor(config: RateLimitConfig);
|
|
79
|
+
getClientState(clientId: string): ClientState;
|
|
80
|
+
shouldLimit(clientId: string, message: NostrWSMessage): Promise<boolean>;
|
|
81
|
+
recordRequest(clientId: string, message: NostrWSMessage): void;
|
|
82
|
+
getRemainingRequests(clientId: string, messageType: string): number;
|
|
83
|
+
isBlocked(clientId: string): boolean;
|
|
84
|
+
}
|
|
85
|
+
export {};
|
|
86
|
+
//# sourceMappingURL=rate-limiter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limiter.d.ts","sourceRoot":"","sources":["../../../src/utils/rate-limiter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,UAAU,WAAW;IACnB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/D,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IACpE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACrC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC;CAC/C;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAoB/D,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,YAAsB,EAC7D,OAAO,EAAE,MAAM,GACd,WAAW,CAMb;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD;;;;OAIG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;CAC/D;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE;IACN,uBAAuB,EAAE,MAAM,CAAC;IAChC,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;CACzB,EACD,MAAM,EAAE,MAAM,GACb,qBAAqB,CAsFvB;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,MAAM,CAA4B;gBAE9B,MAAM,EAAE,eAAe;IAQ5B,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;IASvC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IA4B9E,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;IAO9D,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAQnE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAI5C"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file WebSocket Rate Limiter
|
|
4
|
+
* @module utils/rate-limiter
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.RateLimiterImpl = exports.DEFAULT_RATE_LIMITS = void 0;
|
|
8
|
+
exports.createRateLimiter = createRateLimiter;
|
|
9
|
+
exports.createConnectionRateLimiter = createConnectionRateLimiter;
|
|
10
|
+
/**
|
|
11
|
+
* Rate limit rules for different event types
|
|
12
|
+
*/
|
|
13
|
+
exports.DEFAULT_RATE_LIMITS = {
|
|
14
|
+
EVENT: {
|
|
15
|
+
windowMs: 60000, // 1 minute
|
|
16
|
+
maxRequests: 60,
|
|
17
|
+
blockDurationMs: 300000 // 5 minutes
|
|
18
|
+
},
|
|
19
|
+
REQ: {
|
|
20
|
+
windowMs: 60000,
|
|
21
|
+
maxRequests: 30,
|
|
22
|
+
blockDurationMs: 300000
|
|
23
|
+
},
|
|
24
|
+
CLOSE: {
|
|
25
|
+
windowMs: 60000,
|
|
26
|
+
maxRequests: 50
|
|
27
|
+
},
|
|
28
|
+
AUTH: {
|
|
29
|
+
windowMs: 300000, // 5 minutes
|
|
30
|
+
maxRequests: 10,
|
|
31
|
+
blockDurationMs: 900000 // 15 minutes
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Creates a rate limiter
|
|
36
|
+
* @param config - Rate limit configuration
|
|
37
|
+
* @param _logger - Logger instance
|
|
38
|
+
* @returns {RateLimiter} Rate limiter
|
|
39
|
+
*/
|
|
40
|
+
function createRateLimiter(config = exports.DEFAULT_RATE_LIMITS, _logger) {
|
|
41
|
+
return new RateLimiterImpl(config.EVENT || {
|
|
42
|
+
windowMs: 60000,
|
|
43
|
+
maxRequests: 100,
|
|
44
|
+
blockDurationMs: 300000
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Creates a connection rate limiter
|
|
49
|
+
* @param config - Connection limit configuration
|
|
50
|
+
* @param logger - Logger instance
|
|
51
|
+
* @returns {ConnectionRateLimiter} Connection rate limiter
|
|
52
|
+
*/
|
|
53
|
+
function createConnectionRateLimiter(config, logger) {
|
|
54
|
+
const clients = new Map();
|
|
55
|
+
function cleanOldAttempts(attempts) {
|
|
56
|
+
const now = Date.now();
|
|
57
|
+
return attempts.filter(attempt => now - attempt.timestamp < 60000);
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
async allowConnection(clientId) {
|
|
61
|
+
const now = Date.now();
|
|
62
|
+
const state = clients.get(clientId) || {
|
|
63
|
+
attempts: [],
|
|
64
|
+
currentConnections: 0
|
|
65
|
+
};
|
|
66
|
+
// Check if blocked
|
|
67
|
+
if (state.blockedUntil && now < state.blockedUntil) {
|
|
68
|
+
logger.debug('Connection blocked', {
|
|
69
|
+
clientId,
|
|
70
|
+
until: new Date(state.blockedUntil)
|
|
71
|
+
});
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
// Clean old attempts
|
|
75
|
+
state.attempts = cleanOldAttempts(state.attempts);
|
|
76
|
+
// Check rate limits
|
|
77
|
+
if (state.attempts.length >= config.maxConnectionsPerMinute) {
|
|
78
|
+
logger.debug('Too many connection attempts', {
|
|
79
|
+
clientId,
|
|
80
|
+
attempts: state.attempts.length
|
|
81
|
+
});
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
// Check concurrent connections
|
|
85
|
+
if (state.currentConnections >= config.maxConcurrentConnections) {
|
|
86
|
+
logger.debug('Too many concurrent connections', {
|
|
87
|
+
clientId,
|
|
88
|
+
connections: state.currentConnections
|
|
89
|
+
});
|
|
90
|
+
return false;
|
|
91
|
+
}
|
|
92
|
+
// Check failure rate
|
|
93
|
+
const recentFailures = state.attempts.filter(a => !a.successful).length;
|
|
94
|
+
if (recentFailures >= config.blockAfterFailures) {
|
|
95
|
+
state.blockedUntil = now + config.blockDurationMs;
|
|
96
|
+
clients.set(clientId, state);
|
|
97
|
+
logger.debug('Client blocked due to failures', {
|
|
98
|
+
clientId,
|
|
99
|
+
failures: recentFailures,
|
|
100
|
+
until: new Date(state.blockedUntil)
|
|
101
|
+
});
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
return true;
|
|
105
|
+
},
|
|
106
|
+
recordConnection(clientId, successful) {
|
|
107
|
+
const state = clients.get(clientId) || {
|
|
108
|
+
attempts: [],
|
|
109
|
+
currentConnections: 0
|
|
110
|
+
};
|
|
111
|
+
state.attempts.push({
|
|
112
|
+
timestamp: Date.now(),
|
|
113
|
+
successful
|
|
114
|
+
});
|
|
115
|
+
if (successful) {
|
|
116
|
+
state.currentConnections++;
|
|
117
|
+
}
|
|
118
|
+
clients.set(clientId, state);
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Rate limiter implementation
|
|
124
|
+
*/
|
|
125
|
+
class RateLimiterImpl {
|
|
126
|
+
constructor(config) {
|
|
127
|
+
this.clients = new Map();
|
|
128
|
+
this.config = {
|
|
129
|
+
windowMs: config.windowMs || 60000,
|
|
130
|
+
maxRequests: config.maxRequests || 100,
|
|
131
|
+
blockDurationMs: config.blockDurationMs || 300000
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
getClientState(clientId) {
|
|
135
|
+
let state = this.clients.get(clientId);
|
|
136
|
+
if (!state) {
|
|
137
|
+
state = { requests: new Map() };
|
|
138
|
+
this.clients.set(clientId, state);
|
|
139
|
+
}
|
|
140
|
+
return state;
|
|
141
|
+
}
|
|
142
|
+
async shouldLimit(clientId, message) {
|
|
143
|
+
const now = Date.now();
|
|
144
|
+
const state = this.getClientState(clientId);
|
|
145
|
+
// Check if client is blocked
|
|
146
|
+
if (state.blockedUntil && state.blockedUntil > now) {
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
// Get requests for message type
|
|
150
|
+
const requests = state.requests.get(message[0]) || [];
|
|
151
|
+
const validRequests = requests.filter(time => time > now - this.config.windowMs);
|
|
152
|
+
// Update requests
|
|
153
|
+
state.requests.set(message[0], validRequests);
|
|
154
|
+
// Check if limit exceeded
|
|
155
|
+
if (validRequests.length >= this.config.maxRequests) {
|
|
156
|
+
state.blockedUntil = now + this.config.blockDurationMs;
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
// Add new request
|
|
160
|
+
validRequests.push(now);
|
|
161
|
+
state.requests.set(message[0], validRequests);
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
recordRequest(clientId, message) {
|
|
165
|
+
const state = this.getClientState(clientId);
|
|
166
|
+
const requests = state.requests.get(message[0]) || [];
|
|
167
|
+
requests.push(Date.now());
|
|
168
|
+
state.requests.set(message[0], requests);
|
|
169
|
+
}
|
|
170
|
+
getRemainingRequests(clientId, messageType) {
|
|
171
|
+
const state = this.getClientState(clientId);
|
|
172
|
+
const now = Date.now();
|
|
173
|
+
const requests = state.requests.get(messageType) || [];
|
|
174
|
+
const validRequests = requests.filter(time => time > now - this.config.windowMs);
|
|
175
|
+
return Math.max(0, this.config.maxRequests - validRequests.length);
|
|
176
|
+
}
|
|
177
|
+
isBlocked(clientId) {
|
|
178
|
+
const state = this.getClientState(clientId);
|
|
179
|
+
return !!state.blockedUntil && state.blockedUntil > Date.now();
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
exports.RateLimiterImpl = RateLimiterImpl;
|
|
183
|
+
//# sourceMappingURL=rate-limiter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../../src/utils/rate-limiter.ts"],"names":[],"mappings":"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"}
|
package/dist/core/client.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAK1D;;GAEG;AACH,qBAAa,aAAa;IAStB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,eAAe,CAAiD;IACxE,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,gBAAgB,CAA+B;gBAGpC,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,GAAE,oBAAyB;IAwBrD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAsD9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBjC;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,kBAAkB,IAAI,eAAe;CAGtC"}
|
package/dist/core/client.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nostr-server.d.ts","sourceRoot":"","sources":["../../src/core/nostr-server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,oBAAoB,EAAwB,MAAM,oBAAoB,CAAC;AAIrG;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAkB;IAEhC;;;;OAIG;gBACS,OAAO,EAAE,oBAAoB;IAwEzC;;OAEG;IACI,IAAI,IAAI,IAAI;CAGpB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAE3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nostr-server.js","sourceRoot":"","sources":["../../src/core/nostr-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAa,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAE1C;;GAEG;AACH,MAAM,OAAO,aAAa;IAMxB;;;;OAIG;IACH,YAAY,OAA6B;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAC;QAEH;;;;WAIG;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,EAAa,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,EAAyB,CAAC;YACzC,MAAM,CAAC,QAAQ,GAAG,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAEtB,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEpD;;eAEG;YACH,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;YAErC;;;;eAIG;YACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,IAAY,EAAE,EAAE;gBAC1C,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAyB,CAAC;oBACpE,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;oBAC1C;;uBAEG;oBACH,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC7C,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;oBACjD;;uBAEG;oBACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC,CAAC,CAAC;YAEH;;;;eAIG;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;gBAClC,MAAM,CAAC,KAAK,CAAC,iBAAiB,MAAM,CAAC,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC1D;;mBAEG;gBACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH;;eAEG;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,wBAAwB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvD;;mBAEG;gBACH,OAAO,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACI,IAAI;QACT,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAA6B;IAC1D,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC"}
|
package/dist/core/queue.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/core/queue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAA8B,MAAM,UAAU,CAAC;AAItE;;GAEG;AACH,qBAAa,YAAY;IAMrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,UAAU,CAAS;gBAGR,MAAM,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,EAClD,OAAO,GAAE;QACxB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;KAClB;IAKR;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BrD;;OAEG;YACW,YAAY;IAwD1B;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
package/dist/core/queue.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/core/queue.ts"],"names":[],"mappings":"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"}
|
package/dist/core/server.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/core/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,oBAAoB,EAAuB,MAAM,oBAAoB,CAAC;AAO/E;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,GAAG,CAAkB;IAC7B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,YAAY,CAAC,CAAiB;gBAE1B,OAAO,EAAE,oBAAoB;IAyBzC;;OAEG;IACH,OAAO,CAAC,WAAW;YA2CL,aAAa;IAuB3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACI,IAAI,IAAI,IAAI;CAYpB"}
|
package/dist/core/server.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/core/server.ts"],"names":[],"mappings":"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"}
|
package/dist/crypto/bech32.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bech32.d.ts","sourceRoot":"","sources":["../../src/crypto/bech32.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkHH;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAGhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CA+BzE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAK7E"}
|
package/dist/crypto/bech32.js
CHANGED