* Runs whenever a new chunk is received. * Callback is called whenever there are no more chunks buffering, * or not enough bytes are buffered to parse.
(callback)
| 17844 | }); |
| 17845 | } |
| 17846 | }; |
| 17847 | _inflate = new WeakMap(); |
| 17848 | _options = new WeakMap(); |
| 17849 | _maxPayloadSize = new WeakMap(); |
| 17850 | module.exports = { PerMessageDeflate }; |
| 17851 | } |
| 17852 | }); |
| 17853 | |
| 17854 | // |
| 17855 | var require_receiver = __commonJS({ |
| 17856 | ""(exports, module) { |
| 17857 | "use strict"; |
| 17858 | var { Writable } = __require("stream"); |
| 17859 | var assert = __require("assert"); |
| 17860 | var { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = require_constants5(); |
| 17861 | var { kReadyState, kSentClose, kResponse, kReceivedClose } = require_symbols5(); |
| 17862 | var { channels } = require_diagnostics(); |
| 17863 | var { |
| 17864 | isValidStatusCode, |
| 17865 | isValidOpcode, |
| 17866 | failWebsocketConnection, |
| 17867 | websocketMessageReceived, |
| 17868 | utf8Decode, |
| 17869 | isControlFrame, |
| 17870 | isTextBinaryFrame, |
| 17871 | isContinuationFrame |
| 17872 | } = require_util7(); |
| 17873 | var { WebsocketFrameSend } = require_frame(); |
| 17874 | var { closeWebSocketConnection } = require_connection(); |
| 17875 | var { PerMessageDeflate } = require_permessage_deflate(); |
| 17876 | var { MessageSizeExceededError } = require_errors(); |
| 17877 | function failWebsocketConnectionWithCode(ws, code, reason) { |
| 17878 | closeWebSocketConnection(ws, code, reason, Buffer.byteLength(reason)); |
| 17879 | failWebsocketConnection(ws, reason); |
| 17880 | } |
| 17881 | var _buffers, _fragmentsBytes, _byteOffset, _loop, _state, _info, _fragments, _extensions, _maxFragments, _maxPayloadSize, _validatePayloadLength, validatePayloadLength_fn; |
| 17882 | var ByteParser = class extends Writable { |
| 17883 | /** |
| 17884 | * @param {import('./websocket').WebSocket} ws |
| 17885 | * @param {Map<string, string>|null} extensions |
| 17886 | * @param {{ maxFragments?: number, maxPayloadSize?: number }} [options] |
| 17887 | */ |
| 17888 | constructor(ws, extensions, options = {}) { |
| 17889 | var _a, _b; |
| 17890 | super(); |
| 17891 | __privateAdd(this, _validatePayloadLength); |
| 17892 | __privateAdd(this, _buffers, []); |
| 17893 | __privateAdd(this, _fragmentsBytes, 0); |
| 17894 | __privateAdd(this, _byteOffset, 0); |
| 17895 | __privateAdd(this, _loop, false); |
| 17896 | __privateAdd(this, _state, parserStates.INFO); |
| 17897 | __privateAdd(this, _info, {}); |
| 17898 | __privateAdd(this, _fragments, []); |
| 17899 | /** @type {Map<string, PerMessageDeflate>} */ |
| 17900 | __privateAdd(this, _extensions, void 0); |
| 17901 | /** @type {number} */ |
| 17902 | __privateAdd(this, _maxFragments, void 0); |
| 17903 | /** @type {number} */ |
no test coverage detected