@wix/cli 1.1.63 → 1.1.65

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 (118) hide show
  1. package/build/{DevCommand-3ELW3L6N.js → DevCommand-AVJ663GA.js} +72 -40
  2. package/build/DevCommand-AVJ663GA.js.map +1 -0
  3. package/build/{DevCommand-VKO2WHGU.js → DevCommand-IHVIU2N4.js} +12 -12
  4. package/build/{LoginCommand-Y4STX5I4.js → LoginCommand-XQFHRT7W.js} +10 -10
  5. package/build/{LogoutCommand-IXNGVG5L.js → LogoutCommand-YY7MRKCM.js} +7 -7
  6. package/build/PreviewCommand-3OABJYJD.js +70 -0
  7. package/build/PreviewCommand-3OABJYJD.js.map +1 -0
  8. package/build/PublishCommand-ISZPYYXM.js +117 -0
  9. package/build/PublishCommand-ISZPYYXM.js.map +1 -0
  10. package/build/{WhoamiCommand-UJUYYBBU.js → WhoamiCommand-GWPNPHRL.js} +4 -4
  11. package/build/{chunk-2NWGTFAC.js → chunk-2K5KKUL3.js} +5 -3
  12. package/build/{chunk-2NWGTFAC.js.map → chunk-2K5KKUL3.js.map} +1 -1
  13. package/build/{chunk-RESBATTJ.js → chunk-3P5PTIBR.js} +2 -2
  14. package/build/{chunk-HU33E37I.js → chunk-4XPWCRGU.js} +276 -278
  15. package/build/{chunk-HU33E37I.js.map → chunk-4XPWCRGU.js.map} +1 -1
  16. package/build/{chunk-IVOZDAHR.js → chunk-5WRZJFXK.js} +5 -5
  17. package/build/{chunk-QKFGKDHU.js → chunk-AOWEDNOF.js} +348 -583
  18. package/build/chunk-AOWEDNOF.js.map +1 -0
  19. package/build/{chunk-EYBRAJ77.js → chunk-BCT5PAPG.js} +6 -6
  20. package/build/{chunk-3JTFUCV6.js → chunk-BEXERG7F.js} +48 -5
  21. package/build/chunk-BEXERG7F.js.map +1 -0
  22. package/build/{chunk-BGKFJNUK.js → chunk-CNXKF7E3.js} +16 -14
  23. package/build/chunk-CNXKF7E3.js.map +1 -0
  24. package/build/{chunk-QI3N3YSP.js → chunk-IC6K6CSD.js} +3 -3
  25. package/build/{chunk-3FASMGNL.js → chunk-JASQWANH.js} +3 -3
  26. package/build/{chunk-BRYY76CH.js → chunk-JKBX72QC.js} +4 -4
  27. package/build/{chunk-TOWDJ5TL.js → chunk-JXGBYZK7.js} +14 -17
  28. package/build/chunk-JXGBYZK7.js.map +1 -0
  29. package/build/{chunk-BTM6MXTF.js → chunk-KJCRO3PB.js} +5 -5
  30. package/build/{chunk-3WRRBP7H.js → chunk-KJXGVQP7.js} +7 -7
  31. package/build/{chunk-HNWUYQMU.js → chunk-N4L3XZI3.js} +4 -4
  32. package/build/{PreviewCommand-45QLRRAO.js → chunk-NXGJ6P6H.js} +67 -123
  33. package/build/chunk-NXGJ6P6H.js.map +1 -0
  34. package/build/{chunk-IFBC6MP5.js → chunk-PWEJ3IWM.js} +4 -2
  35. package/build/{chunk-IFBC6MP5.js.map → chunk-PWEJ3IWM.js.map} +1 -1
  36. package/build/{chunk-HIHMLMRD.js → chunk-QP2SHVU3.js} +2 -2
  37. package/build/{chunk-LR6CHFGP.js → chunk-QPYNVASM.js} +2 -2
  38. package/build/{chunk-WBF5ALFE.js → chunk-TIHCOJHY.js} +4 -4
  39. package/build/{chunk-R4KXK4HG.js → chunk-UHGVP5PT.js} +3 -3
  40. package/build/{chunk-XCXYK7C7.js → chunk-UK7CHIDM.js} +2 -2
  41. package/build/chunk-UQM2YHYJ.js +30 -0
  42. package/build/chunk-UQM2YHYJ.js.map +1 -0
  43. package/build/{chunk-JR2KZTME.js → chunk-YHMLI3NZ.js} +2 -2
  44. package/build/{chunk-WSW2V2ZB.js → chunk-YX66M2XN.js} +2 -2
  45. package/build/{chunk-UPXCPX6R.js → chunk-Z3MJ3WPQ.js} +11 -5
  46. package/build/{chunk-UPXCPX6R.js.map → chunk-Z3MJ3WPQ.js.map} +1 -1
  47. package/build/{chunk-FO4JMX7I.js → chunk-Z4TKBS7R.js} +4 -4
  48. package/build/{chunk-FO4JMX7I.js.map → chunk-Z4TKBS7R.js.map} +1 -1
  49. package/build/{chunk-SYSWGRNF.js → chunk-ZLPYLX6E.js} +27 -11
  50. package/build/{chunk-SYSWGRNF.js.map → chunk-ZLPYLX6E.js.map} +1 -1
  51. package/build/{chunk-DGB22FOE.js → chunk-ZM6OUS2J.js} +5 -5
  52. package/build/{dev-BEXFZPJS.js → dev-62KN3SLL.js} +26 -26
  53. package/build/dev-62KN3SLL.js.map +1 -0
  54. package/build/index.js +26 -26
  55. package/build/{install-KBEEKENQ.js → install-L6C6V6OD.js} +14 -14
  56. package/build/{preview-YOWBWDEY.js → preview-LDXRFIMB.js} +17 -17
  57. package/build/{publish-KH6HTTQW.js → publish-FNN2BROO.js} +19 -19
  58. package/build/{render-command-E74W4QNK.js → render-command-GLPKMOXW.js} +10 -10
  59. package/build/{render-command-4FI34WBA.js → render-command-IPDLSBIH.js} +9 -9
  60. package/build/{render-command-VY7HKWP4.js → render-command-RBG7263F.js} +11 -11
  61. package/build/{run-command-3FVZZEPI.js → run-command-DDRX6HA4.js} +6 -6
  62. package/build/{src-KVHMNIWM.js → src-5FM5LBPG.js} +34 -10
  63. package/build/src-5FM5LBPG.js.map +1 -0
  64. package/build/{src-XSN6C5L2.js → src-DFC4OJXU.js} +3 -3
  65. package/build/{src-JHDL6HRJ.js → src-NDQ3YSVS.js} +6 -6
  66. package/build/{src-U4W7RS6S.js → src-QDEPJEVY.js} +4 -4
  67. package/build/{src-ECBBCYB3.js → src-RLHCQYHW.js} +2 -2
  68. package/build/{src-QOI2D3S4.js → src-WZQSHEYJ.js} +7 -7
  69. package/build/{src-4XL5NTJS.js → src-YKFH53HG.js} +17 -17
  70. package/build/{sync-types-TMGYTVGL.js → sync-types-5QBTKL42.js} +12 -12
  71. package/build/{uninstall-KAFGDOR7.js → uninstall-X66KBPSO.js} +14 -14
  72. package/package.json +2 -2
  73. package/build/DevCommand-3ELW3L6N.js.map +0 -1
  74. package/build/PreviewCommand-45QLRRAO.js.map +0 -1
  75. package/build/chunk-3JTFUCV6.js.map +0 -1
  76. package/build/chunk-BGKFJNUK.js.map +0 -1
  77. package/build/chunk-QKFGKDHU.js.map +0 -1
  78. package/build/chunk-TOWDJ5TL.js.map +0 -1
  79. package/build/chunk-VXGNI7CP.js +0 -21
  80. package/build/chunk-VXGNI7CP.js.map +0 -1
  81. package/build/dev-BEXFZPJS.js.map +0 -1
  82. package/build/src-KVHMNIWM.js.map +0 -1
  83. /package/build/{DevCommand-VKO2WHGU.js.map → DevCommand-IHVIU2N4.js.map} +0 -0
  84. /package/build/{LoginCommand-Y4STX5I4.js.map → LoginCommand-XQFHRT7W.js.map} +0 -0
  85. /package/build/{LogoutCommand-IXNGVG5L.js.map → LogoutCommand-YY7MRKCM.js.map} +0 -0
  86. /package/build/{WhoamiCommand-UJUYYBBU.js.map → WhoamiCommand-GWPNPHRL.js.map} +0 -0
  87. /package/build/{chunk-RESBATTJ.js.map → chunk-3P5PTIBR.js.map} +0 -0
  88. /package/build/{chunk-IVOZDAHR.js.map → chunk-5WRZJFXK.js.map} +0 -0
  89. /package/build/{chunk-EYBRAJ77.js.map → chunk-BCT5PAPG.js.map} +0 -0
  90. /package/build/{chunk-QI3N3YSP.js.map → chunk-IC6K6CSD.js.map} +0 -0
  91. /package/build/{chunk-3FASMGNL.js.map → chunk-JASQWANH.js.map} +0 -0
  92. /package/build/{chunk-BRYY76CH.js.map → chunk-JKBX72QC.js.map} +0 -0
  93. /package/build/{chunk-BTM6MXTF.js.map → chunk-KJCRO3PB.js.map} +0 -0
  94. /package/build/{chunk-3WRRBP7H.js.map → chunk-KJXGVQP7.js.map} +0 -0
  95. /package/build/{chunk-HNWUYQMU.js.map → chunk-N4L3XZI3.js.map} +0 -0
  96. /package/build/{chunk-HIHMLMRD.js.map → chunk-QP2SHVU3.js.map} +0 -0
  97. /package/build/{chunk-LR6CHFGP.js.map → chunk-QPYNVASM.js.map} +0 -0
  98. /package/build/{chunk-WBF5ALFE.js.map → chunk-TIHCOJHY.js.map} +0 -0
  99. /package/build/{chunk-R4KXK4HG.js.map → chunk-UHGVP5PT.js.map} +0 -0
  100. /package/build/{chunk-XCXYK7C7.js.map → chunk-UK7CHIDM.js.map} +0 -0
  101. /package/build/{chunk-JR2KZTME.js.map → chunk-YHMLI3NZ.js.map} +0 -0
  102. /package/build/{chunk-WSW2V2ZB.js.map → chunk-YX66M2XN.js.map} +0 -0
  103. /package/build/{chunk-DGB22FOE.js.map → chunk-ZM6OUS2J.js.map} +0 -0
  104. /package/build/{install-KBEEKENQ.js.map → install-L6C6V6OD.js.map} +0 -0
  105. /package/build/{preview-YOWBWDEY.js.map → preview-LDXRFIMB.js.map} +0 -0
  106. /package/build/{publish-KH6HTTQW.js.map → publish-FNN2BROO.js.map} +0 -0
  107. /package/build/{render-command-E74W4QNK.js.map → render-command-GLPKMOXW.js.map} +0 -0
  108. /package/build/{render-command-4FI34WBA.js.map → render-command-IPDLSBIH.js.map} +0 -0
  109. /package/build/{render-command-VY7HKWP4.js.map → render-command-RBG7263F.js.map} +0 -0
  110. /package/build/{run-command-3FVZZEPI.js.map → run-command-DDRX6HA4.js.map} +0 -0
  111. /package/build/{src-ECBBCYB3.js.map → src-DFC4OJXU.js.map} +0 -0
  112. /package/build/{src-JHDL6HRJ.js.map → src-NDQ3YSVS.js.map} +0 -0
  113. /package/build/{src-QOI2D3S4.js.map → src-QDEPJEVY.js.map} +0 -0
  114. /package/build/{src-U4W7RS6S.js.map → src-RLHCQYHW.js.map} +0 -0
  115. /package/build/{src-XSN6C5L2.js.map → src-WZQSHEYJ.js.map} +0 -0
  116. /package/build/{src-4XL5NTJS.js.map → src-YKFH53HG.js.map} +0 -0
  117. /package/build/{sync-types-TMGYTVGL.js.map → sync-types-5QBTKL42.js.map} +0 -0
  118. /package/build/{uninstall-KAFGDOR7.js.map → uninstall-X66KBPSO.js.map} +0 -0
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-EDFOB3LN.js";
6
6
  import {
7
7
  require_negotiator
8
- } from "./chunk-WBF5ALFE.js";
8
+ } from "./chunk-TIHCOJHY.js";
9
9
  import {
10
10
  require_ms
11
11
  } from "./chunk-WN3D6AOY.js";
@@ -10221,17 +10221,15 @@ var require_transport = __commonJS({
10221
10221
  /**
10222
10222
  * Transport constructor.
10223
10223
  *
10224
- * @param {http.IncomingMessage} req
10224
+ * @param {http.IncomingMessage} request
10225
10225
  * @api public
10226
10226
  */
10227
10227
  constructor(req) {
10228
10228
  super();
10229
- this.writable = false;
10230
- this._readyState = "open";
10229
+ this.readyState = "open";
10231
10230
  this.discarded = false;
10232
10231
  this.protocol = req._query.EIO === "4" ? 4 : 3;
10233
10232
  this.parser = this.protocol === 4 ? parser_v4 : parser_v3;
10234
- this.supportsBinary = !(req._query && req._query.b64);
10235
10233
  }
10236
10234
  get readyState() {
10237
10235
  return this._readyState;
@@ -10251,7 +10249,7 @@ var require_transport = __commonJS({
10251
10249
  /**
10252
10250
  * Called with an incoming HTTP request.
10253
10251
  *
10254
- * @param {http.IncomingMessage} req
10252
+ * @param {http.IncomingMessage} request
10255
10253
  * @api protected
10256
10254
  */
10257
10255
  onRequest(req) {
@@ -10272,8 +10270,8 @@ var require_transport = __commonJS({
10272
10270
  /**
10273
10271
  * Called with a transport error.
10274
10272
  *
10275
- * @param {String} msg - message error
10276
- * @param {Object} desc - error description
10273
+ * @param {String} message error
10274
+ * @param {Object} error description
10277
10275
  * @api protected
10278
10276
  */
10279
10277
  onError(msg, desc) {
@@ -10363,7 +10361,6 @@ var require_polling = __commonJS({
10363
10361
  */
10364
10362
  onRequest(req) {
10365
10363
  const res = req.res;
10366
- req.res = null;
10367
10364
  if ("GET" === req.method) {
10368
10365
  this.onPollRequest(req, res);
10369
10366
  } else if ("POST" === req.method) {
@@ -10639,7 +10636,6 @@ var require_polling = __commonJS({
10639
10636
  if (ua && (~ua.indexOf(";MSIE") || ~ua.indexOf("Trident/"))) {
10640
10637
  headers["X-XSS-Protection"] = "0";
10641
10638
  }
10642
- headers["cache-control"] = "no-store";
10643
10639
  this.emit("headers", headers, req);
10644
10640
  return headers;
10645
10641
  }
@@ -10836,9 +10832,7 @@ var require_webtransport = __commonJS({
10836
10832
  super({ _query: { EIO: "4" } });
10837
10833
  this.session = session;
10838
10834
  const transformStream = (0, engine_io_parser_1.createPacketEncoderStream)();
10839
- transformStream.readable.pipeTo(stream.writable).catch(() => {
10840
- debug11("the stream was closed");
10841
- });
10835
+ transformStream.readable.pipeTo(stream.writable);
10842
10836
  this.writer = transformStream.writable.getWriter();
10843
10837
  (async () => {
10844
10838
  try {
@@ -10932,15 +10926,15 @@ var require_socket = __commonJS({
10932
10926
  */
10933
10927
  constructor(id, server, transport, req, protocol4) {
10934
10928
  super();
10935
- this._readyState = "opening";
10929
+ this.id = id;
10930
+ this.server = server;
10936
10931
  this.upgrading = false;
10937
10932
  this.upgraded = false;
10933
+ this.readyState = "opening";
10938
10934
  this.writeBuffer = [];
10939
10935
  this.packetsFn = [];
10940
10936
  this.sentCallbackFn = [];
10941
10937
  this.cleanupFn = [];
10942
- this.id = id;
10943
- this.server = server;
10944
10938
  this.request = req;
10945
10939
  this.protocol = protocol4;
10946
10940
  if (req) {
@@ -10951,6 +10945,8 @@ var require_socket = __commonJS({
10951
10945
  }
10952
10946
  } else {
10953
10947
  }
10948
+ this.checkIntervalTimer = null;
10949
+ this.upgradeTimeoutTimer = null;
10954
10950
  this.pingTimeoutTimer = null;
10955
10951
  this.pingIntervalTimer = null;
10956
10952
  this.setTransport(transport);
@@ -11032,7 +11028,7 @@ var require_socket = __commonJS({
11032
11028
  /**
11033
11029
  * Called upon transport error.
11034
11030
  *
11035
- * @param {Error} err - error object
11031
+ * @param {Error} error object
11036
11032
  * @api private
11037
11033
  */
11038
11034
  onError(err) {
@@ -11098,21 +11094,20 @@ var require_socket = __commonJS({
11098
11094
  maybeUpgrade(transport) {
11099
11095
  debug11('might upgrade socket transport from "%s" to "%s"', this.transport.name, transport.name);
11100
11096
  this.upgrading = true;
11101
- const upgradeTimeoutTimer = (0, timers_1.setTimeout)(() => {
11097
+ this.upgradeTimeoutTimer = (0, timers_1.setTimeout)(() => {
11102
11098
  debug11("client did not complete upgrade - closing transport");
11103
11099
  cleanup();
11104
11100
  if ("open" === transport.readyState) {
11105
11101
  transport.close();
11106
11102
  }
11107
11103
  }, this.server.opts.upgradeTimeout);
11108
- let checkIntervalTimer;
11109
11104
  const onPacket = (packet) => {
11110
11105
  if ("ping" === packet.type && "probe" === packet.data) {
11111
11106
  debug11("got probe ping packet, sending pong");
11112
11107
  transport.send([{ type: "pong", data: "probe" }]);
11113
11108
  this.emit("upgrading", transport);
11114
- clearInterval(checkIntervalTimer);
11115
- checkIntervalTimer = setInterval(check, 100);
11109
+ clearInterval(this.checkIntervalTimer);
11110
+ this.checkIntervalTimer = setInterval(check, 100);
11116
11111
  } else if ("upgrade" === packet.type && this.readyState !== "closed") {
11117
11112
  debug11("got upgrade packet - upgrading");
11118
11113
  cleanup();
@@ -11140,8 +11135,10 @@ var require_socket = __commonJS({
11140
11135
  };
11141
11136
  const cleanup = () => {
11142
11137
  this.upgrading = false;
11143
- clearInterval(checkIntervalTimer);
11144
- (0, timers_1.clearTimeout)(upgradeTimeoutTimer);
11138
+ clearInterval(this.checkIntervalTimer);
11139
+ this.checkIntervalTimer = null;
11140
+ (0, timers_1.clearTimeout)(this.upgradeTimeoutTimer);
11141
+ this.upgradeTimeoutTimer = null;
11145
11142
  transport.removeListener("packet", onPacket);
11146
11143
  transport.removeListener("close", onTransportClose);
11147
11144
  transport.removeListener("error", onError);
@@ -11192,6 +11189,9 @@ var require_socket = __commonJS({
11192
11189
  this.readyState = "closed";
11193
11190
  (0, timers_1.clearTimeout)(this.pingIntervalTimer);
11194
11191
  (0, timers_1.clearTimeout)(this.pingTimeoutTimer);
11192
+ clearInterval(this.checkIntervalTimer);
11193
+ this.checkIntervalTimer = null;
11194
+ (0, timers_1.clearTimeout)(this.upgradeTimeoutTimer);
11195
11195
  process.nextTick(() => {
11196
11196
  this.writeBuffer = [];
11197
11197
  });
@@ -11501,7 +11501,6 @@ var require_buffer_util = __commonJS({
11501
11501
  "use strict";
11502
11502
  init_esm_shims();
11503
11503
  var { EMPTY_BUFFER } = require_constants();
11504
- var FastBuffer = Buffer[Symbol.species];
11505
11504
  function concat(list, totalLength2) {
11506
11505
  if (list.length === 0) return EMPTY_BUFFER;
11507
11506
  if (list.length === 1) return list[0];
@@ -11512,9 +11511,7 @@ var require_buffer_util = __commonJS({
11512
11511
  target.set(buf, offset);
11513
11512
  offset += buf.length;
11514
11513
  }
11515
- if (offset < totalLength2) {
11516
- return new FastBuffer(target.buffer, target.byteOffset, offset);
11517
- }
11514
+ if (offset < totalLength2) return target.slice(0, offset);
11518
11515
  return target;
11519
11516
  }
11520
11517
  function _mask(source, mask, output, offset, length2) {
@@ -11528,19 +11525,19 @@ var require_buffer_util = __commonJS({
11528
11525
  }
11529
11526
  }
11530
11527
  function toArrayBuffer(buf) {
11531
- if (buf.length === buf.buffer.byteLength) {
11528
+ if (buf.byteLength === buf.buffer.byteLength) {
11532
11529
  return buf.buffer;
11533
11530
  }
11534
- return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.length);
11531
+ return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
11535
11532
  }
11536
11533
  function toBuffer2(data) {
11537
11534
  toBuffer2.readOnly = true;
11538
11535
  if (Buffer.isBuffer(data)) return data;
11539
11536
  let buf;
11540
11537
  if (data instanceof ArrayBuffer) {
11541
- buf = new FastBuffer(data);
11538
+ buf = Buffer.from(data);
11542
11539
  } else if (ArrayBuffer.isView(data)) {
11543
- buf = new FastBuffer(data.buffer, data.byteOffset, data.byteLength);
11540
+ buf = Buffer.from(data.buffer, data.byteOffset, data.byteLength);
11544
11541
  } else {
11545
11542
  buf = Buffer.from(data);
11546
11543
  toBuffer2.readOnly = false;
@@ -11631,7 +11628,6 @@ var require_permessage_deflate = __commonJS({
11631
11628
  var bufferUtil = require_buffer_util();
11632
11629
  var Limiter = require_limiter();
11633
11630
  var { kStatusCode } = require_constants();
11634
- var FastBuffer = Buffer[Symbol.species];
11635
11631
  var TRAILER = Buffer.from([0, 0, 255, 255]);
11636
11632
  var kPerMessageDeflate = Symbol("permessage-deflate");
11637
11633
  var kTotalLength = Symbol("total-length");
@@ -11964,9 +11960,7 @@ var require_permessage_deflate = __commonJS({
11964
11960
  this._deflate[kBuffers],
11965
11961
  this._deflate[kTotalLength]
11966
11962
  );
11967
- if (fin) {
11968
- data2 = new FastBuffer(data2.buffer, data2.byteOffset, data2.length - 4);
11969
- }
11963
+ if (fin) data2 = data2.slice(0, data2.length - 4);
11970
11964
  this._deflate[kCallback] = null;
11971
11965
  this._deflate[kTotalLength] = 0;
11972
11966
  this._deflate[kBuffers] = [];
@@ -12007,7 +12001,6 @@ var require_validation = __commonJS({
12007
12001
  "../../node_modules/engine.io/node_modules/ws/lib/validation.js"(exports, module) {
12008
12002
  "use strict";
12009
12003
  init_esm_shims();
12010
- var { isUtf8 } = __require("buffer");
12011
12004
  var tokenChars = [
12012
12005
  0,
12013
12006
  0,
@@ -12183,15 +12176,11 @@ var require_validation = __commonJS({
12183
12176
  isValidUTF8: _isValidUTF8,
12184
12177
  tokenChars
12185
12178
  };
12186
- if (isUtf8) {
12187
- module.exports.isValidUTF8 = function(buf) {
12188
- return buf.length < 24 ? _isValidUTF8(buf) : isUtf8(buf);
12189
- };
12190
- } else if (!process.env.WS_NO_UTF_8_VALIDATE) {
12179
+ if (!process.env.WS_NO_UTF_8_VALIDATE) {
12191
12180
  try {
12192
12181
  const isValidUTF8 = __require("utf-8-validate");
12193
12182
  module.exports.isValidUTF8 = function(buf) {
12194
- return buf.length < 32 ? _isValidUTF8(buf) : isValidUTF8(buf);
12183
+ return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf);
12195
12184
  };
12196
12185
  } catch (e) {
12197
12186
  }
@@ -12214,22 +12203,17 @@ var require_receiver = __commonJS({
12214
12203
  } = require_constants();
12215
12204
  var { concat, toArrayBuffer, unmask } = require_buffer_util();
12216
12205
  var { isValidStatusCode, isValidUTF8 } = require_validation();
12217
- var FastBuffer = Buffer[Symbol.species];
12218
12206
  var GET_INFO = 0;
12219
12207
  var GET_PAYLOAD_LENGTH_16 = 1;
12220
12208
  var GET_PAYLOAD_LENGTH_64 = 2;
12221
12209
  var GET_MASK = 3;
12222
12210
  var GET_DATA = 4;
12223
12211
  var INFLATING = 5;
12224
- var DEFER_EVENT = 6;
12225
12212
  var Receiver2 = class extends Writable {
12226
12213
  /**
12227
12214
  * Creates a Receiver instance.
12228
12215
  *
12229
12216
  * @param {Object} [options] Options object
12230
- * @param {Boolean} [options.allowSynchronousEvents=true] Specifies whether
12231
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
12232
- * multiple times in the same tick
12233
12217
  * @param {String} [options.binaryType=nodebuffer] The type for binary data
12234
12218
  * @param {Object} [options.extensions] An object containing the negotiated
12235
12219
  * extensions
@@ -12241,7 +12225,6 @@ var require_receiver = __commonJS({
12241
12225
  */
12242
12226
  constructor(options = {}) {
12243
12227
  super();
12244
- this._allowSynchronousEvents = options.allowSynchronousEvents !== void 0 ? options.allowSynchronousEvents : true;
12245
12228
  this._binaryType = options.binaryType || BINARY_TYPES[0];
12246
12229
  this._extensions = options.extensions || {};
12247
12230
  this._isServer = !!options.isServer;
@@ -12260,9 +12243,8 @@ var require_receiver = __commonJS({
12260
12243
  this._totalPayloadLength = 0;
12261
12244
  this._messageLength = 0;
12262
12245
  this._fragments = [];
12263
- this._errored = false;
12264
- this._loop = false;
12265
12246
  this._state = GET_INFO;
12247
+ this._loop = false;
12266
12248
  }
12267
12249
  /**
12268
12250
  * Implements `Writable.prototype._write()`.
@@ -12290,12 +12272,8 @@ var require_receiver = __commonJS({
12290
12272
  if (n === this._buffers[0].length) return this._buffers.shift();
12291
12273
  if (n < this._buffers[0].length) {
12292
12274
  const buf = this._buffers[0];
12293
- this._buffers[0] = new FastBuffer(
12294
- buf.buffer,
12295
- buf.byteOffset + n,
12296
- buf.length - n
12297
- );
12298
- return new FastBuffer(buf.buffer, buf.byteOffset, n);
12275
+ this._buffers[0] = buf.slice(n);
12276
+ return buf.slice(0, n);
12299
12277
  }
12300
12278
  const dst = Buffer.allocUnsafe(n);
12301
12279
  do {
@@ -12305,11 +12283,7 @@ var require_receiver = __commonJS({
12305
12283
  dst.set(this._buffers.shift(), offset);
12306
12284
  } else {
12307
12285
  dst.set(new Uint8Array(buf.buffer, buf.byteOffset, n), offset);
12308
- this._buffers[0] = new FastBuffer(
12309
- buf.buffer,
12310
- buf.byteOffset + n,
12311
- buf.length - n
12312
- );
12286
+ this._buffers[0] = buf.slice(n);
12313
12287
  }
12314
12288
  n -= buf.length;
12315
12289
  } while (n > 0);
@@ -12322,202 +12296,191 @@ var require_receiver = __commonJS({
12322
12296
  * @private
12323
12297
  */
12324
12298
  startLoop(cb) {
12299
+ let err;
12325
12300
  this._loop = true;
12326
12301
  do {
12327
12302
  switch (this._state) {
12328
12303
  case GET_INFO:
12329
- this.getInfo(cb);
12304
+ err = this.getInfo();
12330
12305
  break;
12331
12306
  case GET_PAYLOAD_LENGTH_16:
12332
- this.getPayloadLength16(cb);
12307
+ err = this.getPayloadLength16();
12333
12308
  break;
12334
12309
  case GET_PAYLOAD_LENGTH_64:
12335
- this.getPayloadLength64(cb);
12310
+ err = this.getPayloadLength64();
12336
12311
  break;
12337
12312
  case GET_MASK:
12338
12313
  this.getMask();
12339
12314
  break;
12340
12315
  case GET_DATA:
12341
- this.getData(cb);
12316
+ err = this.getData(cb);
12342
12317
  break;
12343
- case INFLATING:
12344
- case DEFER_EVENT:
12318
+ default:
12345
12319
  this._loop = false;
12346
12320
  return;
12347
12321
  }
12348
12322
  } while (this._loop);
12349
- if (!this._errored) cb();
12323
+ cb(err);
12350
12324
  }
12351
12325
  /**
12352
12326
  * Reads the first two bytes of a frame.
12353
12327
  *
12354
- * @param {Function} cb Callback
12328
+ * @return {(RangeError|undefined)} A possible error
12355
12329
  * @private
12356
12330
  */
12357
- getInfo(cb) {
12331
+ getInfo() {
12358
12332
  if (this._bufferedBytes < 2) {
12359
12333
  this._loop = false;
12360
12334
  return;
12361
12335
  }
12362
12336
  const buf = this.consume(2);
12363
12337
  if ((buf[0] & 48) !== 0) {
12364
- const error = this.createError(
12338
+ this._loop = false;
12339
+ return error(
12365
12340
  RangeError,
12366
12341
  "RSV2 and RSV3 must be clear",
12367
12342
  true,
12368
12343
  1002,
12369
12344
  "WS_ERR_UNEXPECTED_RSV_2_3"
12370
12345
  );
12371
- cb(error);
12372
- return;
12373
12346
  }
12374
12347
  const compressed = (buf[0] & 64) === 64;
12375
12348
  if (compressed && !this._extensions[PerMessageDeflate.extensionName]) {
12376
- const error = this.createError(
12349
+ this._loop = false;
12350
+ return error(
12377
12351
  RangeError,
12378
12352
  "RSV1 must be clear",
12379
12353
  true,
12380
12354
  1002,
12381
12355
  "WS_ERR_UNEXPECTED_RSV_1"
12382
12356
  );
12383
- cb(error);
12384
- return;
12385
12357
  }
12386
12358
  this._fin = (buf[0] & 128) === 128;
12387
12359
  this._opcode = buf[0] & 15;
12388
12360
  this._payloadLength = buf[1] & 127;
12389
12361
  if (this._opcode === 0) {
12390
12362
  if (compressed) {
12391
- const error = this.createError(
12363
+ this._loop = false;
12364
+ return error(
12392
12365
  RangeError,
12393
12366
  "RSV1 must be clear",
12394
12367
  true,
12395
12368
  1002,
12396
12369
  "WS_ERR_UNEXPECTED_RSV_1"
12397
12370
  );
12398
- cb(error);
12399
- return;
12400
12371
  }
12401
12372
  if (!this._fragmented) {
12402
- const error = this.createError(
12373
+ this._loop = false;
12374
+ return error(
12403
12375
  RangeError,
12404
12376
  "invalid opcode 0",
12405
12377
  true,
12406
12378
  1002,
12407
12379
  "WS_ERR_INVALID_OPCODE"
12408
12380
  );
12409
- cb(error);
12410
- return;
12411
12381
  }
12412
12382
  this._opcode = this._fragmented;
12413
12383
  } else if (this._opcode === 1 || this._opcode === 2) {
12414
12384
  if (this._fragmented) {
12415
- const error = this.createError(
12385
+ this._loop = false;
12386
+ return error(
12416
12387
  RangeError,
12417
12388
  `invalid opcode ${this._opcode}`,
12418
12389
  true,
12419
12390
  1002,
12420
12391
  "WS_ERR_INVALID_OPCODE"
12421
12392
  );
12422
- cb(error);
12423
- return;
12424
12393
  }
12425
12394
  this._compressed = compressed;
12426
12395
  } else if (this._opcode > 7 && this._opcode < 11) {
12427
12396
  if (!this._fin) {
12428
- const error = this.createError(
12397
+ this._loop = false;
12398
+ return error(
12429
12399
  RangeError,
12430
12400
  "FIN must be set",
12431
12401
  true,
12432
12402
  1002,
12433
12403
  "WS_ERR_EXPECTED_FIN"
12434
12404
  );
12435
- cb(error);
12436
- return;
12437
12405
  }
12438
12406
  if (compressed) {
12439
- const error = this.createError(
12407
+ this._loop = false;
12408
+ return error(
12440
12409
  RangeError,
12441
12410
  "RSV1 must be clear",
12442
12411
  true,
12443
12412
  1002,
12444
12413
  "WS_ERR_UNEXPECTED_RSV_1"
12445
12414
  );
12446
- cb(error);
12447
- return;
12448
12415
  }
12449
- if (this._payloadLength > 125 || this._opcode === 8 && this._payloadLength === 1) {
12450
- const error = this.createError(
12416
+ if (this._payloadLength > 125) {
12417
+ this._loop = false;
12418
+ return error(
12451
12419
  RangeError,
12452
12420
  `invalid payload length ${this._payloadLength}`,
12453
12421
  true,
12454
12422
  1002,
12455
12423
  "WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"
12456
12424
  );
12457
- cb(error);
12458
- return;
12459
12425
  }
12460
12426
  } else {
12461
- const error = this.createError(
12427
+ this._loop = false;
12428
+ return error(
12462
12429
  RangeError,
12463
12430
  `invalid opcode ${this._opcode}`,
12464
12431
  true,
12465
12432
  1002,
12466
12433
  "WS_ERR_INVALID_OPCODE"
12467
12434
  );
12468
- cb(error);
12469
- return;
12470
12435
  }
12471
12436
  if (!this._fin && !this._fragmented) this._fragmented = this._opcode;
12472
12437
  this._masked = (buf[1] & 128) === 128;
12473
12438
  if (this._isServer) {
12474
12439
  if (!this._masked) {
12475
- const error = this.createError(
12440
+ this._loop = false;
12441
+ return error(
12476
12442
  RangeError,
12477
12443
  "MASK must be set",
12478
12444
  true,
12479
12445
  1002,
12480
12446
  "WS_ERR_EXPECTED_MASK"
12481
12447
  );
12482
- cb(error);
12483
- return;
12484
12448
  }
12485
12449
  } else if (this._masked) {
12486
- const error = this.createError(
12450
+ this._loop = false;
12451
+ return error(
12487
12452
  RangeError,
12488
12453
  "MASK must be clear",
12489
12454
  true,
12490
12455
  1002,
12491
12456
  "WS_ERR_UNEXPECTED_MASK"
12492
12457
  );
12493
- cb(error);
12494
- return;
12495
12458
  }
12496
12459
  if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16;
12497
12460
  else if (this._payloadLength === 127) this._state = GET_PAYLOAD_LENGTH_64;
12498
- else this.haveLength(cb);
12461
+ else return this.haveLength();
12499
12462
  }
12500
12463
  /**
12501
12464
  * Gets extended payload length (7+16).
12502
12465
  *
12503
- * @param {Function} cb Callback
12466
+ * @return {(RangeError|undefined)} A possible error
12504
12467
  * @private
12505
12468
  */
12506
- getPayloadLength16(cb) {
12469
+ getPayloadLength16() {
12507
12470
  if (this._bufferedBytes < 2) {
12508
12471
  this._loop = false;
12509
12472
  return;
12510
12473
  }
12511
12474
  this._payloadLength = this.consume(2).readUInt16BE(0);
12512
- this.haveLength(cb);
12475
+ return this.haveLength();
12513
12476
  }
12514
12477
  /**
12515
12478
  * Gets extended payload length (7+64).
12516
12479
  *
12517
- * @param {Function} cb Callback
12480
+ * @return {(RangeError|undefined)} A possible error
12518
12481
  * @private
12519
12482
  */
12520
- getPayloadLength64(cb) {
12483
+ getPayloadLength64() {
12521
12484
  if (this._bufferedBytes < 8) {
12522
12485
  this._loop = false;
12523
12486
  return;
@@ -12525,38 +12488,36 @@ var require_receiver = __commonJS({
12525
12488
  const buf = this.consume(8);
12526
12489
  const num = buf.readUInt32BE(0);
12527
12490
  if (num > Math.pow(2, 53 - 32) - 1) {
12528
- const error = this.createError(
12491
+ this._loop = false;
12492
+ return error(
12529
12493
  RangeError,
12530
12494
  "Unsupported WebSocket frame: payload length > 2^53 - 1",
12531
12495
  false,
12532
12496
  1009,
12533
12497
  "WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH"
12534
12498
  );
12535
- cb(error);
12536
- return;
12537
12499
  }
12538
12500
  this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4);
12539
- this.haveLength(cb);
12501
+ return this.haveLength();
12540
12502
  }
12541
12503
  /**
12542
12504
  * Payload length has been read.
12543
12505
  *
12544
- * @param {Function} cb Callback
12506
+ * @return {(RangeError|undefined)} A possible error
12545
12507
  * @private
12546
12508
  */
12547
- haveLength(cb) {
12509
+ haveLength() {
12548
12510
  if (this._payloadLength && this._opcode < 8) {
12549
12511
  this._totalPayloadLength += this._payloadLength;
12550
12512
  if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) {
12551
- const error = this.createError(
12513
+ this._loop = false;
12514
+ return error(
12552
12515
  RangeError,
12553
12516
  "Max payload size exceeded",
12554
12517
  false,
12555
12518
  1009,
12556
12519
  "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
12557
12520
  );
12558
- cb(error);
12559
- return;
12560
12521
  }
12561
12522
  }
12562
12523
  if (this._masked) this._state = GET_MASK;
@@ -12579,6 +12540,7 @@ var require_receiver = __commonJS({
12579
12540
  * Reads data bytes.
12580
12541
  *
12581
12542
  * @param {Function} cb Callback
12543
+ * @return {(Error|RangeError|undefined)} A possible error
12582
12544
  * @private
12583
12545
  */
12584
12546
  getData(cb) {
@@ -12593,10 +12555,7 @@ var require_receiver = __commonJS({
12593
12555
  unmask(data, this._mask);
12594
12556
  }
12595
12557
  }
12596
- if (this._opcode > 7) {
12597
- this.controlMessage(data, cb);
12598
- return;
12599
- }
12558
+ if (this._opcode > 7) return this.controlMessage(data);
12600
12559
  if (this._compressed) {
12601
12560
  this._state = INFLATING;
12602
12561
  this.decompress(data, cb);
@@ -12606,7 +12565,7 @@ var require_receiver = __commonJS({
12606
12565
  this._messageLength = this._totalPayloadLength;
12607
12566
  this._fragments.push(data);
12608
12567
  }
12609
- this.dataMessage(cb);
12568
+ return this.dataMessage();
12610
12569
  }
12611
12570
  /**
12612
12571
  * Decompresses data.
@@ -12622,84 +12581,63 @@ var require_receiver = __commonJS({
12622
12581
  if (buf.length) {
12623
12582
  this._messageLength += buf.length;
12624
12583
  if (this._messageLength > this._maxPayload && this._maxPayload > 0) {
12625
- const error = this.createError(
12626
- RangeError,
12627
- "Max payload size exceeded",
12628
- false,
12629
- 1009,
12630
- "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
12584
+ return cb(
12585
+ error(
12586
+ RangeError,
12587
+ "Max payload size exceeded",
12588
+ false,
12589
+ 1009,
12590
+ "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
12591
+ )
12631
12592
  );
12632
- cb(error);
12633
- return;
12634
12593
  }
12635
12594
  this._fragments.push(buf);
12636
12595
  }
12637
- this.dataMessage(cb);
12638
- if (this._state === GET_INFO) this.startLoop(cb);
12596
+ const er = this.dataMessage();
12597
+ if (er) return cb(er);
12598
+ this.startLoop(cb);
12639
12599
  });
12640
12600
  }
12641
12601
  /**
12642
12602
  * Handles a data message.
12643
12603
  *
12644
- * @param {Function} cb Callback
12604
+ * @return {(Error|undefined)} A possible error
12645
12605
  * @private
12646
12606
  */
12647
- dataMessage(cb) {
12648
- if (!this._fin) {
12649
- this._state = GET_INFO;
12650
- return;
12651
- }
12652
- const messageLength = this._messageLength;
12653
- const fragments = this._fragments;
12654
- this._totalPayloadLength = 0;
12655
- this._messageLength = 0;
12656
- this._fragmented = 0;
12657
- this._fragments = [];
12658
- if (this._opcode === 2) {
12659
- let data;
12660
- if (this._binaryType === "nodebuffer") {
12661
- data = concat(fragments, messageLength);
12662
- } else if (this._binaryType === "arraybuffer") {
12663
- data = toArrayBuffer(concat(fragments, messageLength));
12664
- } else {
12665
- data = fragments;
12666
- }
12667
- if (this._allowSynchronousEvents) {
12607
+ dataMessage() {
12608
+ if (this._fin) {
12609
+ const messageLength = this._messageLength;
12610
+ const fragments = this._fragments;
12611
+ this._totalPayloadLength = 0;
12612
+ this._messageLength = 0;
12613
+ this._fragmented = 0;
12614
+ this._fragments = [];
12615
+ if (this._opcode === 2) {
12616
+ let data;
12617
+ if (this._binaryType === "nodebuffer") {
12618
+ data = concat(fragments, messageLength);
12619
+ } else if (this._binaryType === "arraybuffer") {
12620
+ data = toArrayBuffer(concat(fragments, messageLength));
12621
+ } else {
12622
+ data = fragments;
12623
+ }
12668
12624
  this.emit("message", data, true);
12669
- this._state = GET_INFO;
12670
12625
  } else {
12671
- this._state = DEFER_EVENT;
12672
- setImmediate(() => {
12673
- this.emit("message", data, true);
12674
- this._state = GET_INFO;
12675
- this.startLoop(cb);
12676
- });
12677
- }
12678
- } else {
12679
- const buf = concat(fragments, messageLength);
12680
- if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
12681
- const error = this.createError(
12682
- Error,
12683
- "invalid UTF-8 sequence",
12684
- true,
12685
- 1007,
12686
- "WS_ERR_INVALID_UTF8"
12687
- );
12688
- cb(error);
12689
- return;
12690
- }
12691
- if (this._state === INFLATING || this._allowSynchronousEvents) {
12626
+ const buf = concat(fragments, messageLength);
12627
+ if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
12628
+ this._loop = false;
12629
+ return error(
12630
+ Error,
12631
+ "invalid UTF-8 sequence",
12632
+ true,
12633
+ 1007,
12634
+ "WS_ERR_INVALID_UTF8"
12635
+ );
12636
+ }
12692
12637
  this.emit("message", buf, false);
12693
- this._state = GET_INFO;
12694
- } else {
12695
- this._state = DEFER_EVENT;
12696
- setImmediate(() => {
12697
- this.emit("message", buf, false);
12698
- this._state = GET_INFO;
12699
- this.startLoop(cb);
12700
- });
12701
12638
  }
12702
12639
  }
12640
+ this._state = GET_INFO;
12703
12641
  }
12704
12642
  /**
12705
12643
  * Handles a control message.
@@ -12708,85 +12646,62 @@ var require_receiver = __commonJS({
12708
12646
  * @return {(Error|RangeError|undefined)} A possible error
12709
12647
  * @private
12710
12648
  */
12711
- controlMessage(data, cb) {
12649
+ controlMessage(data) {
12712
12650
  if (this._opcode === 8) {
12651
+ this._loop = false;
12713
12652
  if (data.length === 0) {
12714
- this._loop = false;
12715
12653
  this.emit("conclude", 1005, EMPTY_BUFFER);
12716
12654
  this.end();
12655
+ } else if (data.length === 1) {
12656
+ return error(
12657
+ RangeError,
12658
+ "invalid payload length 1",
12659
+ true,
12660
+ 1002,
12661
+ "WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"
12662
+ );
12717
12663
  } else {
12718
12664
  const code = data.readUInt16BE(0);
12719
12665
  if (!isValidStatusCode(code)) {
12720
- const error = this.createError(
12666
+ return error(
12721
12667
  RangeError,
12722
12668
  `invalid status code ${code}`,
12723
12669
  true,
12724
12670
  1002,
12725
12671
  "WS_ERR_INVALID_CLOSE_CODE"
12726
12672
  );
12727
- cb(error);
12728
- return;
12729
12673
  }
12730
- const buf = new FastBuffer(
12731
- data.buffer,
12732
- data.byteOffset + 2,
12733
- data.length - 2
12734
- );
12674
+ const buf = data.slice(2);
12735
12675
  if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
12736
- const error = this.createError(
12676
+ return error(
12737
12677
  Error,
12738
12678
  "invalid UTF-8 sequence",
12739
12679
  true,
12740
12680
  1007,
12741
12681
  "WS_ERR_INVALID_UTF8"
12742
12682
  );
12743
- cb(error);
12744
- return;
12745
12683
  }
12746
- this._loop = false;
12747
12684
  this.emit("conclude", code, buf);
12748
12685
  this.end();
12749
12686
  }
12750
- this._state = GET_INFO;
12751
- return;
12752
- }
12753
- if (this._allowSynchronousEvents) {
12754
- this.emit(this._opcode === 9 ? "ping" : "pong", data);
12755
- this._state = GET_INFO;
12687
+ } else if (this._opcode === 9) {
12688
+ this.emit("ping", data);
12756
12689
  } else {
12757
- this._state = DEFER_EVENT;
12758
- setImmediate(() => {
12759
- this.emit(this._opcode === 9 ? "ping" : "pong", data);
12760
- this._state = GET_INFO;
12761
- this.startLoop(cb);
12762
- });
12690
+ this.emit("pong", data);
12763
12691
  }
12764
- }
12765
- /**
12766
- * Builds an error object.
12767
- *
12768
- * @param {function(new:Error|RangeError)} ErrorCtor The error constructor
12769
- * @param {String} message The error message
12770
- * @param {Boolean} prefix Specifies whether or not to add a default prefix to
12771
- * `message`
12772
- * @param {Number} statusCode The status code
12773
- * @param {String} errorCode The exposed error code
12774
- * @return {(Error|RangeError)} The error
12775
- * @private
12776
- */
12777
- createError(ErrorCtor, message, prefix, statusCode, errorCode) {
12778
- this._loop = false;
12779
- this._errored = true;
12780
- const err = new ErrorCtor(
12781
- prefix ? `Invalid WebSocket frame: ${message}` : message
12782
- );
12783
- Error.captureStackTrace(err, this.createError);
12784
- err.code = errorCode;
12785
- err[kStatusCode] = statusCode;
12786
- return err;
12692
+ this._state = GET_INFO;
12787
12693
  }
12788
12694
  };
12789
12695
  module.exports = Receiver2;
12696
+ function error(ErrorCtor, message, prefix, statusCode, errorCode) {
12697
+ const err = new ErrorCtor(
12698
+ prefix ? `Invalid WebSocket frame: ${message}` : message
12699
+ );
12700
+ Error.captureStackTrace(err, error);
12701
+ err.code = errorCode;
12702
+ err[kStatusCode] = statusCode;
12703
+ return err;
12704
+ }
12790
12705
  }
12791
12706
  });
12792
12707
 
@@ -12795,7 +12710,8 @@ var require_sender = __commonJS({
12795
12710
  "../../node_modules/engine.io/node_modules/ws/lib/sender.js"(exports, module) {
12796
12711
  "use strict";
12797
12712
  init_esm_shims();
12798
- var { Duplex } = __require("stream");
12713
+ var net = __require("net");
12714
+ var tls = __require("tls");
12799
12715
  var { randomFillSync } = __require("crypto");
12800
12716
  var PerMessageDeflate = require_permessage_deflate();
12801
12717
  var { EMPTY_BUFFER } = require_constants();
@@ -12803,14 +12719,11 @@ var require_sender = __commonJS({
12803
12719
  var { mask: applyMask, toBuffer: toBuffer2 } = require_buffer_util();
12804
12720
  var kByteLength = Symbol("kByteLength");
12805
12721
  var maskBuffer = Buffer.alloc(4);
12806
- var RANDOM_POOL_SIZE = 8 * 1024;
12807
- var randomPool;
12808
- var randomPoolPointer = RANDOM_POOL_SIZE;
12809
12722
  var Sender2 = class _Sender {
12810
12723
  /**
12811
12724
  * Creates a Sender instance.
12812
12725
  *
12813
- * @param {Duplex} socket The connection socket
12726
+ * @param {(net.Socket|tls.Socket)} socket The connection socket
12814
12727
  * @param {Object} [extensions] An object containing the negotiated extensions
12815
12728
  * @param {Function} [generateMask] The function used to generate the masking
12816
12729
  * key
@@ -12859,17 +12772,7 @@ var require_sender = __commonJS({
12859
12772
  if (options.generateMask) {
12860
12773
  options.generateMask(mask);
12861
12774
  } else {
12862
- if (randomPoolPointer === RANDOM_POOL_SIZE) {
12863
- if (randomPool === void 0) {
12864
- randomPool = Buffer.alloc(RANDOM_POOL_SIZE);
12865
- }
12866
- randomFillSync(randomPool, 0, RANDOM_POOL_SIZE);
12867
- randomPoolPointer = 0;
12868
- }
12869
- mask[0] = randomPool[randomPoolPointer++];
12870
- mask[1] = randomPool[randomPoolPointer++];
12871
- mask[2] = randomPool[randomPoolPointer++];
12872
- mask[3] = randomPool[randomPoolPointer++];
12775
+ randomFillSync(mask, 0, 4);
12873
12776
  }
12874
12777
  skipMasking = (mask[0] | mask[1] | mask[2] | mask[3]) === 0;
12875
12778
  offset = 6;
@@ -13604,7 +13507,7 @@ var require_websocket2 = __commonJS({
13604
13507
  var net = __require("net");
13605
13508
  var tls = __require("tls");
13606
13509
  var { randomBytes, createHash } = __require("crypto");
13607
- var { Duplex, Readable } = __require("stream");
13510
+ var { Readable } = __require("stream");
13608
13511
  var { URL: URL2 } = __require("url");
13609
13512
  var PerMessageDeflate = require_permessage_deflate();
13610
13513
  var Receiver2 = require_receiver();
@@ -13668,7 +13571,6 @@ var require_websocket2 = __commonJS({
13668
13571
  }
13669
13572
  initAsClient(this, address, protocols, options);
13670
13573
  } else {
13671
- this._autoPong = options.autoPong;
13672
13574
  this._isServer = true;
13673
13575
  }
13674
13576
  }
@@ -13755,12 +13657,10 @@ var require_websocket2 = __commonJS({
13755
13657
  /**
13756
13658
  * Set up the socket and the internal resources.
13757
13659
  *
13758
- * @param {Duplex} socket The network socket between the server and client
13660
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
13661
+ * server and client
13759
13662
  * @param {Buffer} head The first packet of the upgraded stream
13760
13663
  * @param {Object} options Options object
13761
- * @param {Boolean} [options.allowSynchronousEvents=false] Specifies whether
13762
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
13763
- * multiple times in the same tick
13764
13664
  * @param {Function} [options.generateMask] The function used to generate the
13765
13665
  * masking key
13766
13666
  * @param {Number} [options.maxPayload=0] The maximum allowed message size
@@ -13770,7 +13670,6 @@ var require_websocket2 = __commonJS({
13770
13670
  */
13771
13671
  setSocket(socket, head, options) {
13772
13672
  const receiver = new Receiver2({
13773
- allowSynchronousEvents: options.allowSynchronousEvents,
13774
13673
  binaryType: this.binaryType,
13775
13674
  extensions: this._extensions,
13776
13675
  isServer: this._isServer,
@@ -13788,8 +13687,8 @@ var require_websocket2 = __commonJS({
13788
13687
  receiver.on("message", receiverOnMessage);
13789
13688
  receiver.on("ping", receiverOnPing);
13790
13689
  receiver.on("pong", receiverOnPong);
13791
- if (socket.setTimeout) socket.setTimeout(0);
13792
- if (socket.setNoDelay) socket.setNoDelay();
13690
+ socket.setTimeout(0);
13691
+ socket.setNoDelay();
13793
13692
  if (head.length > 0) socket.unshift(head);
13794
13693
  socket.on("close", socketOnClose);
13795
13694
  socket.on("data", socketOnData);
@@ -13840,8 +13739,7 @@ var require_websocket2 = __commonJS({
13840
13739
  if (this.readyState === _WebSocket.CLOSED) return;
13841
13740
  if (this.readyState === _WebSocket.CONNECTING) {
13842
13741
  const msg = "WebSocket was closed before the connection was established";
13843
- abortHandshake(this, this._req, msg);
13844
- return;
13742
+ return abortHandshake(this, this._req, msg);
13845
13743
  }
13846
13744
  if (this.readyState === _WebSocket.CLOSING) {
13847
13745
  if (this._closeFrameSent && (this._closeFrameReceived || this._receiver._writableState.errorEmitted)) {
@@ -13989,8 +13887,7 @@ var require_websocket2 = __commonJS({
13989
13887
  if (this.readyState === _WebSocket.CLOSED) return;
13990
13888
  if (this.readyState === _WebSocket.CONNECTING) {
13991
13889
  const msg = "WebSocket was closed before the connection was established";
13992
- abortHandshake(this, this._req, msg);
13993
- return;
13890
+ return abortHandshake(this, this._req, msg);
13994
13891
  }
13995
13892
  if (this._socket) {
13996
13893
  this._readyState = _WebSocket.CLOSING;
@@ -14069,8 +13966,6 @@ var require_websocket2 = __commonJS({
14069
13966
  module.exports = WebSocket3;
14070
13967
  function initAsClient(websocket, address, protocols, options) {
14071
13968
  const opts = {
14072
- allowSynchronousEvents: true,
14073
- autoPong: true,
14074
13969
  protocolVersion: protocolVersions[1],
14075
13970
  maxPayload: 100 * 1024 * 1024,
14076
13971
  skipUTF8Validation: false,
@@ -14078,6 +13973,7 @@ var require_websocket2 = __commonJS({
14078
13973
  followRedirects: false,
14079
13974
  maxRedirects: 10,
14080
13975
  ...options,
13976
+ createConnection: void 0,
14081
13977
  socketPath: void 0,
14082
13978
  hostname: void 0,
14083
13979
  protocol: void 0,
@@ -14087,7 +13983,6 @@ var require_websocket2 = __commonJS({
14087
13983
  path: void 0,
14088
13984
  port: void 0
14089
13985
  };
14090
- websocket._autoPong = opts.autoPong;
14091
13986
  if (!protocolVersions.includes(opts.protocolVersion)) {
14092
13987
  throw new RangeError(
14093
13988
  `Unsupported protocol version: ${opts.protocolVersion} (supported versions: ${protocolVersions.join(", ")})`
@@ -14096,24 +13991,20 @@ var require_websocket2 = __commonJS({
14096
13991
  let parsedUrl;
14097
13992
  if (address instanceof URL2) {
14098
13993
  parsedUrl = address;
13994
+ websocket._url = address.href;
14099
13995
  } else {
14100
13996
  try {
14101
13997
  parsedUrl = new URL2(address);
14102
13998
  } catch (e) {
14103
13999
  throw new SyntaxError(`Invalid URL: ${address}`);
14104
14000
  }
14001
+ websocket._url = address;
14105
14002
  }
14106
- if (parsedUrl.protocol === "http:") {
14107
- parsedUrl.protocol = "ws:";
14108
- } else if (parsedUrl.protocol === "https:") {
14109
- parsedUrl.protocol = "wss:";
14110
- }
14111
- websocket._url = parsedUrl.href;
14112
14003
  const isSecure = parsedUrl.protocol === "wss:";
14113
14004
  const isIpcUrl = parsedUrl.protocol === "ws+unix:";
14114
14005
  let invalidUrlMessage;
14115
14006
  if (parsedUrl.protocol !== "ws:" && !isSecure && !isIpcUrl) {
14116
- invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`;
14007
+ invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", or "ws+unix:"`;
14117
14008
  } else if (isIpcUrl && !parsedUrl.pathname) {
14118
14009
  invalidUrlMessage = "The URL's pathname is empty";
14119
14010
  } else if (parsedUrl.hash) {
@@ -14133,7 +14024,7 @@ var require_websocket2 = __commonJS({
14133
14024
  const request = isSecure ? https.request : http.request;
14134
14025
  const protocolSet = /* @__PURE__ */ new Set();
14135
14026
  let perMessageDeflate;
14136
- opts.createConnection = opts.createConnection || (isSecure ? tlsConnect : netConnect);
14027
+ opts.createConnection = isSecure ? tlsConnect : netConnect;
14137
14028
  opts.defaultPort = opts.defaultPort || defaultPort;
14138
14029
  opts.port = parsedUrl.port || defaultPort;
14139
14030
  opts.host = parsedUrl.hostname.startsWith("[") ? parsedUrl.hostname.slice(1, -1) : parsedUrl.hostname;
@@ -14254,8 +14145,7 @@ var require_websocket2 = __commonJS({
14254
14145
  websocket.emit("upgrade", res);
14255
14146
  if (websocket.readyState !== WebSocket3.CONNECTING) return;
14256
14147
  req = websocket._req = null;
14257
- const upgrade = res.headers.upgrade;
14258
- if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
14148
+ if (res.headers.upgrade.toLowerCase() !== "websocket") {
14259
14149
  abortHandshake(websocket, socket, "Invalid Upgrade header");
14260
14150
  return;
14261
14151
  }
@@ -14311,17 +14201,12 @@ var require_websocket2 = __commonJS({
14311
14201
  websocket._extensions[PerMessageDeflate.extensionName] = perMessageDeflate;
14312
14202
  }
14313
14203
  websocket.setSocket(socket, head, {
14314
- allowSynchronousEvents: opts.allowSynchronousEvents,
14315
14204
  generateMask: opts.generateMask,
14316
14205
  maxPayload: opts.maxPayload,
14317
14206
  skipUTF8Validation: opts.skipUTF8Validation
14318
14207
  });
14319
14208
  });
14320
- if (opts.finishRequest) {
14321
- opts.finishRequest(req, websocket);
14322
- } else {
14323
- req.end();
14324
- }
14209
+ req.end();
14325
14210
  }
14326
14211
  function emitErrorAndClose(websocket, err) {
14327
14212
  websocket._readyState = WebSocket3.CLOSING;
@@ -14366,7 +14251,7 @@ var require_websocket2 = __commonJS({
14366
14251
  const err = new Error(
14367
14252
  `WebSocket is not open: readyState ${websocket.readyState} (${readyStates[websocket.readyState]})`
14368
14253
  );
14369
- process.nextTick(cb, err);
14254
+ cb(err);
14370
14255
  }
14371
14256
  }
14372
14257
  function receiverOnConclude(code, reason) {
@@ -14401,7 +14286,7 @@ var require_websocket2 = __commonJS({
14401
14286
  }
14402
14287
  function receiverOnPing(data) {
14403
14288
  const websocket = this[kWebSocket];
14404
- if (websocket._autoPong) websocket.pong(data, !this._isServer, NOOP);
14289
+ websocket.pong(data, !websocket._isServer, NOOP);
14405
14290
  websocket.emit("ping", data);
14406
14291
  }
14407
14292
  function receiverOnPong(data) {
@@ -14604,7 +14489,9 @@ var require_websocket_server = __commonJS({
14604
14489
  init_esm_shims();
14605
14490
  var EventEmitter = __require("events");
14606
14491
  var http = __require("http");
14607
- var { Duplex } = __require("stream");
14492
+ var https = __require("https");
14493
+ var net = __require("net");
14494
+ var tls = __require("tls");
14608
14495
  var { createHash } = __require("crypto");
14609
14496
  var extension = require_extension();
14610
14497
  var PerMessageDeflate = require_permessage_deflate();
@@ -14620,11 +14507,6 @@ var require_websocket_server = __commonJS({
14620
14507
  * Create a `WebSocketServer` instance.
14621
14508
  *
14622
14509
  * @param {Object} options Configuration options
14623
- * @param {Boolean} [options.allowSynchronousEvents=true] Specifies whether
14624
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
14625
- * multiple times in the same tick
14626
- * @param {Boolean} [options.autoPong=true] Specifies whether or not to
14627
- * automatically send a pong in response to a ping
14628
14510
  * @param {Number} [options.backlog=511] The maximum length of the queue of
14629
14511
  * pending connections
14630
14512
  * @param {Boolean} [options.clientTracking=true] Specifies whether or not to
@@ -14650,8 +14532,6 @@ var require_websocket_server = __commonJS({
14650
14532
  constructor(options, callback) {
14651
14533
  super();
14652
14534
  options = {
14653
- allowSynchronousEvents: true,
14654
- autoPong: true,
14655
14535
  maxPayload: 100 * 1024 * 1024,
14656
14536
  skipUTF8Validation: false,
14657
14537
  perMessageDeflate: false,
@@ -14787,7 +14667,8 @@ var require_websocket_server = __commonJS({
14787
14667
  * Handle a HTTP Upgrade request.
14788
14668
  *
14789
14669
  * @param {http.IncomingMessage} req The request object
14790
- * @param {Duplex} socket The network socket between the server and client
14670
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
14671
+ * server and client
14791
14672
  * @param {Buffer} head The first packet of the upgraded stream
14792
14673
  * @param {Function} cb Callback
14793
14674
  * @public
@@ -14795,19 +14676,18 @@ var require_websocket_server = __commonJS({
14795
14676
  handleUpgrade(req, socket, head, cb) {
14796
14677
  socket.on("error", socketOnError);
14797
14678
  const key = req.headers["sec-websocket-key"];
14798
- const upgrade = req.headers.upgrade;
14799
14679
  const version = +req.headers["sec-websocket-version"];
14800
14680
  if (req.method !== "GET") {
14801
14681
  const message = "Invalid HTTP method";
14802
14682
  abortHandshakeOrEmitwsClientError(this, req, socket, 405, message);
14803
14683
  return;
14804
14684
  }
14805
- if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
14685
+ if (req.headers.upgrade.toLowerCase() !== "websocket") {
14806
14686
  const message = "Invalid Upgrade header";
14807
14687
  abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
14808
14688
  return;
14809
14689
  }
14810
- if (key === void 0 || !keyRegex.test(key)) {
14690
+ if (!key || !keyRegex.test(key)) {
14811
14691
  const message = "Missing or invalid Sec-WebSocket-Key header";
14812
14692
  abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
14813
14693
  return;
@@ -14886,7 +14766,8 @@ var require_websocket_server = __commonJS({
14886
14766
  * @param {String} key The value of the `Sec-WebSocket-Key` header
14887
14767
  * @param {Set} protocols The subprotocols
14888
14768
  * @param {http.IncomingMessage} req The request object
14889
- * @param {Duplex} socket The network socket between the server and client
14769
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
14770
+ * server and client
14890
14771
  * @param {Buffer} head The first packet of the upgraded stream
14891
14772
  * @param {Function} cb Callback
14892
14773
  * @throws {Error} If called more than once with the same socket
@@ -14907,7 +14788,7 @@ var require_websocket_server = __commonJS({
14907
14788
  "Connection: Upgrade",
14908
14789
  `Sec-WebSocket-Accept: ${digest}`
14909
14790
  ];
14910
- const ws = new this.options.WebSocket(null, void 0, this.options);
14791
+ const ws = new this.options.WebSocket(null);
14911
14792
  if (protocols.size) {
14912
14793
  const protocol4 = this.options.handleProtocols ? this.options.handleProtocols(protocols, req) : protocols.values().next().value;
14913
14794
  if (protocol4) {
@@ -14927,7 +14808,6 @@ var require_websocket_server = __commonJS({
14927
14808
  socket.write(headers.concat("\r\n").join("\r\n"));
14928
14809
  socket.removeListener("error", socketOnError);
14929
14810
  ws.setSocket(socket, head, {
14930
- allowSynchronousEvents: this.options.allowSynchronousEvents,
14931
14811
  maxPayload: this.options.maxPayload,
14932
14812
  skipUTF8Validation: this.options.skipUTF8Validation
14933
14813
  });
@@ -15634,6 +15514,11 @@ var require_server = __commonJS({
15634
15514
  } else if ("websocket" === transportName) {
15635
15515
  transport.perMessageDeflate = this.opts.perMessageDeflate;
15636
15516
  }
15517
+ if (req._query && req._query.b64) {
15518
+ transport.supportsBinary = false;
15519
+ } else {
15520
+ transport.supportsBinary = true;
15521
+ }
15637
15522
  } catch (e) {
15638
15523
  debug11('error handshaking to transport "%s"', transportName);
15639
15524
  this.emit("connection_error", {
@@ -15926,6 +15811,11 @@ var require_server = __commonJS({
15926
15811
  debug11("upgrading existing transport");
15927
15812
  websocket.removeListener("error", onUpgradeError);
15928
15813
  const transport = this.createTransport(req._query.transport, req);
15814
+ if (req._query && req._query.b64) {
15815
+ transport.supportsBinary = false;
15816
+ } else {
15817
+ transport.supportsBinary = true;
15818
+ }
15929
15819
  transport.perMessageDeflate = this.opts.perMessageDeflate;
15930
15820
  client.maybeUpgrade(transport);
15931
15821
  }
@@ -16347,7 +16237,6 @@ var require_polling2 = __commonJS({
16347
16237
  */
16348
16238
  onRequest(req) {
16349
16239
  const res = req.res;
16350
- req.res = null;
16351
16240
  if (req.getMethod() === "get") {
16352
16241
  this.onPollRequest(req, res);
16353
16242
  } else if (req.getMethod() === "post") {
@@ -16649,7 +16538,6 @@ var require_polling2 = __commonJS({
16649
16538
  if (ua && (~ua.indexOf(";MSIE") || ~ua.indexOf("Trident/"))) {
16650
16539
  headers["X-XSS-Protection"] = "0";
16651
16540
  }
16652
- headers["cache-control"] = "no-store";
16653
16541
  this.emit("headers", headers, req);
16654
16542
  return headers;
16655
16543
  }
@@ -26710,7 +26598,6 @@ var require_buffer_util3 = __commonJS({
26710
26598
  "use strict";
26711
26599
  init_esm_shims();
26712
26600
  var { EMPTY_BUFFER } = require_constants3();
26713
- var FastBuffer = Buffer[Symbol.species];
26714
26601
  function concat(list, totalLength2) {
26715
26602
  if (list.length === 0) return EMPTY_BUFFER;
26716
26603
  if (list.length === 1) return list[0];
@@ -26721,9 +26608,7 @@ var require_buffer_util3 = __commonJS({
26721
26608
  target.set(buf, offset);
26722
26609
  offset += buf.length;
26723
26610
  }
26724
- if (offset < totalLength2) {
26725
- return new FastBuffer(target.buffer, target.byteOffset, offset);
26726
- }
26611
+ if (offset < totalLength2) return target.slice(0, offset);
26727
26612
  return target;
26728
26613
  }
26729
26614
  function _mask(source, mask, output, offset, length2) {
@@ -26737,19 +26622,19 @@ var require_buffer_util3 = __commonJS({
26737
26622
  }
26738
26623
  }
26739
26624
  function toArrayBuffer(buf) {
26740
- if (buf.length === buf.buffer.byteLength) {
26625
+ if (buf.byteLength === buf.buffer.byteLength) {
26741
26626
  return buf.buffer;
26742
26627
  }
26743
- return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.length);
26628
+ return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
26744
26629
  }
26745
26630
  function toBuffer2(data) {
26746
26631
  toBuffer2.readOnly = true;
26747
26632
  if (Buffer.isBuffer(data)) return data;
26748
26633
  let buf;
26749
26634
  if (data instanceof ArrayBuffer) {
26750
- buf = new FastBuffer(data);
26635
+ buf = Buffer.from(data);
26751
26636
  } else if (ArrayBuffer.isView(data)) {
26752
- buf = new FastBuffer(data.buffer, data.byteOffset, data.byteLength);
26637
+ buf = Buffer.from(data.buffer, data.byteOffset, data.byteLength);
26753
26638
  } else {
26754
26639
  buf = Buffer.from(data);
26755
26640
  toBuffer2.readOnly = false;
@@ -26840,7 +26725,6 @@ var require_permessage_deflate3 = __commonJS({
26840
26725
  var bufferUtil = require_buffer_util3();
26841
26726
  var Limiter = require_limiter3();
26842
26727
  var { kStatusCode } = require_constants3();
26843
- var FastBuffer = Buffer[Symbol.species];
26844
26728
  var TRAILER = Buffer.from([0, 0, 255, 255]);
26845
26729
  var kPerMessageDeflate = Symbol("permessage-deflate");
26846
26730
  var kTotalLength = Symbol("total-length");
@@ -27173,9 +27057,7 @@ var require_permessage_deflate3 = __commonJS({
27173
27057
  this._deflate[kBuffers],
27174
27058
  this._deflate[kTotalLength]
27175
27059
  );
27176
- if (fin) {
27177
- data2 = new FastBuffer(data2.buffer, data2.byteOffset, data2.length - 4);
27178
- }
27060
+ if (fin) data2 = data2.slice(0, data2.length - 4);
27179
27061
  this._deflate[kCallback] = null;
27180
27062
  this._deflate[kTotalLength] = 0;
27181
27063
  this._deflate[kBuffers] = [];
@@ -27216,7 +27098,6 @@ var require_validation3 = __commonJS({
27216
27098
  "../../node_modules/engine.io-client/node_modules/ws/lib/validation.js"(exports, module) {
27217
27099
  "use strict";
27218
27100
  init_esm_shims();
27219
- var { isUtf8 } = __require("buffer");
27220
27101
  var tokenChars = [
27221
27102
  0,
27222
27103
  0,
@@ -27392,15 +27273,11 @@ var require_validation3 = __commonJS({
27392
27273
  isValidUTF8: _isValidUTF8,
27393
27274
  tokenChars
27394
27275
  };
27395
- if (isUtf8) {
27396
- module.exports.isValidUTF8 = function(buf) {
27397
- return buf.length < 24 ? _isValidUTF8(buf) : isUtf8(buf);
27398
- };
27399
- } else if (!process.env.WS_NO_UTF_8_VALIDATE) {
27276
+ if (!process.env.WS_NO_UTF_8_VALIDATE) {
27400
27277
  try {
27401
27278
  const isValidUTF8 = __require("utf-8-validate");
27402
27279
  module.exports.isValidUTF8 = function(buf) {
27403
- return buf.length < 32 ? _isValidUTF8(buf) : isValidUTF8(buf);
27280
+ return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf);
27404
27281
  };
27405
27282
  } catch (e) {
27406
27283
  }
@@ -27423,22 +27300,17 @@ var require_receiver3 = __commonJS({
27423
27300
  } = require_constants3();
27424
27301
  var { concat, toArrayBuffer, unmask } = require_buffer_util3();
27425
27302
  var { isValidStatusCode, isValidUTF8 } = require_validation3();
27426
- var FastBuffer = Buffer[Symbol.species];
27427
27303
  var GET_INFO = 0;
27428
27304
  var GET_PAYLOAD_LENGTH_16 = 1;
27429
27305
  var GET_PAYLOAD_LENGTH_64 = 2;
27430
27306
  var GET_MASK = 3;
27431
27307
  var GET_DATA = 4;
27432
27308
  var INFLATING = 5;
27433
- var DEFER_EVENT = 6;
27434
27309
  var Receiver2 = class extends Writable {
27435
27310
  /**
27436
27311
  * Creates a Receiver instance.
27437
27312
  *
27438
27313
  * @param {Object} [options] Options object
27439
- * @param {Boolean} [options.allowSynchronousEvents=true] Specifies whether
27440
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
27441
- * multiple times in the same tick
27442
27314
  * @param {String} [options.binaryType=nodebuffer] The type for binary data
27443
27315
  * @param {Object} [options.extensions] An object containing the negotiated
27444
27316
  * extensions
@@ -27450,7 +27322,6 @@ var require_receiver3 = __commonJS({
27450
27322
  */
27451
27323
  constructor(options = {}) {
27452
27324
  super();
27453
- this._allowSynchronousEvents = options.allowSynchronousEvents !== void 0 ? options.allowSynchronousEvents : true;
27454
27325
  this._binaryType = options.binaryType || BINARY_TYPES[0];
27455
27326
  this._extensions = options.extensions || {};
27456
27327
  this._isServer = !!options.isServer;
@@ -27469,9 +27340,8 @@ var require_receiver3 = __commonJS({
27469
27340
  this._totalPayloadLength = 0;
27470
27341
  this._messageLength = 0;
27471
27342
  this._fragments = [];
27472
- this._errored = false;
27473
- this._loop = false;
27474
27343
  this._state = GET_INFO;
27344
+ this._loop = false;
27475
27345
  }
27476
27346
  /**
27477
27347
  * Implements `Writable.prototype._write()`.
@@ -27499,12 +27369,8 @@ var require_receiver3 = __commonJS({
27499
27369
  if (n === this._buffers[0].length) return this._buffers.shift();
27500
27370
  if (n < this._buffers[0].length) {
27501
27371
  const buf = this._buffers[0];
27502
- this._buffers[0] = new FastBuffer(
27503
- buf.buffer,
27504
- buf.byteOffset + n,
27505
- buf.length - n
27506
- );
27507
- return new FastBuffer(buf.buffer, buf.byteOffset, n);
27372
+ this._buffers[0] = buf.slice(n);
27373
+ return buf.slice(0, n);
27508
27374
  }
27509
27375
  const dst = Buffer.allocUnsafe(n);
27510
27376
  do {
@@ -27514,11 +27380,7 @@ var require_receiver3 = __commonJS({
27514
27380
  dst.set(this._buffers.shift(), offset);
27515
27381
  } else {
27516
27382
  dst.set(new Uint8Array(buf.buffer, buf.byteOffset, n), offset);
27517
- this._buffers[0] = new FastBuffer(
27518
- buf.buffer,
27519
- buf.byteOffset + n,
27520
- buf.length - n
27521
- );
27383
+ this._buffers[0] = buf.slice(n);
27522
27384
  }
27523
27385
  n -= buf.length;
27524
27386
  } while (n > 0);
@@ -27531,202 +27393,191 @@ var require_receiver3 = __commonJS({
27531
27393
  * @private
27532
27394
  */
27533
27395
  startLoop(cb) {
27396
+ let err;
27534
27397
  this._loop = true;
27535
27398
  do {
27536
27399
  switch (this._state) {
27537
27400
  case GET_INFO:
27538
- this.getInfo(cb);
27401
+ err = this.getInfo();
27539
27402
  break;
27540
27403
  case GET_PAYLOAD_LENGTH_16:
27541
- this.getPayloadLength16(cb);
27404
+ err = this.getPayloadLength16();
27542
27405
  break;
27543
27406
  case GET_PAYLOAD_LENGTH_64:
27544
- this.getPayloadLength64(cb);
27407
+ err = this.getPayloadLength64();
27545
27408
  break;
27546
27409
  case GET_MASK:
27547
27410
  this.getMask();
27548
27411
  break;
27549
27412
  case GET_DATA:
27550
- this.getData(cb);
27413
+ err = this.getData(cb);
27551
27414
  break;
27552
- case INFLATING:
27553
- case DEFER_EVENT:
27415
+ default:
27554
27416
  this._loop = false;
27555
27417
  return;
27556
27418
  }
27557
27419
  } while (this._loop);
27558
- if (!this._errored) cb();
27420
+ cb(err);
27559
27421
  }
27560
27422
  /**
27561
27423
  * Reads the first two bytes of a frame.
27562
27424
  *
27563
- * @param {Function} cb Callback
27425
+ * @return {(RangeError|undefined)} A possible error
27564
27426
  * @private
27565
27427
  */
27566
- getInfo(cb) {
27428
+ getInfo() {
27567
27429
  if (this._bufferedBytes < 2) {
27568
27430
  this._loop = false;
27569
27431
  return;
27570
27432
  }
27571
27433
  const buf = this.consume(2);
27572
27434
  if ((buf[0] & 48) !== 0) {
27573
- const error = this.createError(
27435
+ this._loop = false;
27436
+ return error(
27574
27437
  RangeError,
27575
27438
  "RSV2 and RSV3 must be clear",
27576
27439
  true,
27577
27440
  1002,
27578
27441
  "WS_ERR_UNEXPECTED_RSV_2_3"
27579
27442
  );
27580
- cb(error);
27581
- return;
27582
27443
  }
27583
27444
  const compressed = (buf[0] & 64) === 64;
27584
27445
  if (compressed && !this._extensions[PerMessageDeflate.extensionName]) {
27585
- const error = this.createError(
27446
+ this._loop = false;
27447
+ return error(
27586
27448
  RangeError,
27587
27449
  "RSV1 must be clear",
27588
27450
  true,
27589
27451
  1002,
27590
27452
  "WS_ERR_UNEXPECTED_RSV_1"
27591
27453
  );
27592
- cb(error);
27593
- return;
27594
27454
  }
27595
27455
  this._fin = (buf[0] & 128) === 128;
27596
27456
  this._opcode = buf[0] & 15;
27597
27457
  this._payloadLength = buf[1] & 127;
27598
27458
  if (this._opcode === 0) {
27599
27459
  if (compressed) {
27600
- const error = this.createError(
27460
+ this._loop = false;
27461
+ return error(
27601
27462
  RangeError,
27602
27463
  "RSV1 must be clear",
27603
27464
  true,
27604
27465
  1002,
27605
27466
  "WS_ERR_UNEXPECTED_RSV_1"
27606
27467
  );
27607
- cb(error);
27608
- return;
27609
27468
  }
27610
27469
  if (!this._fragmented) {
27611
- const error = this.createError(
27470
+ this._loop = false;
27471
+ return error(
27612
27472
  RangeError,
27613
27473
  "invalid opcode 0",
27614
27474
  true,
27615
27475
  1002,
27616
27476
  "WS_ERR_INVALID_OPCODE"
27617
27477
  );
27618
- cb(error);
27619
- return;
27620
27478
  }
27621
27479
  this._opcode = this._fragmented;
27622
27480
  } else if (this._opcode === 1 || this._opcode === 2) {
27623
27481
  if (this._fragmented) {
27624
- const error = this.createError(
27482
+ this._loop = false;
27483
+ return error(
27625
27484
  RangeError,
27626
27485
  `invalid opcode ${this._opcode}`,
27627
27486
  true,
27628
27487
  1002,
27629
27488
  "WS_ERR_INVALID_OPCODE"
27630
27489
  );
27631
- cb(error);
27632
- return;
27633
27490
  }
27634
27491
  this._compressed = compressed;
27635
27492
  } else if (this._opcode > 7 && this._opcode < 11) {
27636
27493
  if (!this._fin) {
27637
- const error = this.createError(
27494
+ this._loop = false;
27495
+ return error(
27638
27496
  RangeError,
27639
27497
  "FIN must be set",
27640
27498
  true,
27641
27499
  1002,
27642
27500
  "WS_ERR_EXPECTED_FIN"
27643
27501
  );
27644
- cb(error);
27645
- return;
27646
27502
  }
27647
27503
  if (compressed) {
27648
- const error = this.createError(
27504
+ this._loop = false;
27505
+ return error(
27649
27506
  RangeError,
27650
27507
  "RSV1 must be clear",
27651
27508
  true,
27652
27509
  1002,
27653
27510
  "WS_ERR_UNEXPECTED_RSV_1"
27654
27511
  );
27655
- cb(error);
27656
- return;
27657
27512
  }
27658
- if (this._payloadLength > 125 || this._opcode === 8 && this._payloadLength === 1) {
27659
- const error = this.createError(
27513
+ if (this._payloadLength > 125) {
27514
+ this._loop = false;
27515
+ return error(
27660
27516
  RangeError,
27661
27517
  `invalid payload length ${this._payloadLength}`,
27662
27518
  true,
27663
27519
  1002,
27664
27520
  "WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"
27665
27521
  );
27666
- cb(error);
27667
- return;
27668
27522
  }
27669
27523
  } else {
27670
- const error = this.createError(
27524
+ this._loop = false;
27525
+ return error(
27671
27526
  RangeError,
27672
27527
  `invalid opcode ${this._opcode}`,
27673
27528
  true,
27674
27529
  1002,
27675
27530
  "WS_ERR_INVALID_OPCODE"
27676
27531
  );
27677
- cb(error);
27678
- return;
27679
27532
  }
27680
27533
  if (!this._fin && !this._fragmented) this._fragmented = this._opcode;
27681
27534
  this._masked = (buf[1] & 128) === 128;
27682
27535
  if (this._isServer) {
27683
27536
  if (!this._masked) {
27684
- const error = this.createError(
27537
+ this._loop = false;
27538
+ return error(
27685
27539
  RangeError,
27686
27540
  "MASK must be set",
27687
27541
  true,
27688
27542
  1002,
27689
27543
  "WS_ERR_EXPECTED_MASK"
27690
27544
  );
27691
- cb(error);
27692
- return;
27693
27545
  }
27694
27546
  } else if (this._masked) {
27695
- const error = this.createError(
27547
+ this._loop = false;
27548
+ return error(
27696
27549
  RangeError,
27697
27550
  "MASK must be clear",
27698
27551
  true,
27699
27552
  1002,
27700
27553
  "WS_ERR_UNEXPECTED_MASK"
27701
27554
  );
27702
- cb(error);
27703
- return;
27704
27555
  }
27705
27556
  if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16;
27706
27557
  else if (this._payloadLength === 127) this._state = GET_PAYLOAD_LENGTH_64;
27707
- else this.haveLength(cb);
27558
+ else return this.haveLength();
27708
27559
  }
27709
27560
  /**
27710
27561
  * Gets extended payload length (7+16).
27711
27562
  *
27712
- * @param {Function} cb Callback
27563
+ * @return {(RangeError|undefined)} A possible error
27713
27564
  * @private
27714
27565
  */
27715
- getPayloadLength16(cb) {
27566
+ getPayloadLength16() {
27716
27567
  if (this._bufferedBytes < 2) {
27717
27568
  this._loop = false;
27718
27569
  return;
27719
27570
  }
27720
27571
  this._payloadLength = this.consume(2).readUInt16BE(0);
27721
- this.haveLength(cb);
27572
+ return this.haveLength();
27722
27573
  }
27723
27574
  /**
27724
27575
  * Gets extended payload length (7+64).
27725
27576
  *
27726
- * @param {Function} cb Callback
27577
+ * @return {(RangeError|undefined)} A possible error
27727
27578
  * @private
27728
27579
  */
27729
- getPayloadLength64(cb) {
27580
+ getPayloadLength64() {
27730
27581
  if (this._bufferedBytes < 8) {
27731
27582
  this._loop = false;
27732
27583
  return;
@@ -27734,38 +27585,36 @@ var require_receiver3 = __commonJS({
27734
27585
  const buf = this.consume(8);
27735
27586
  const num = buf.readUInt32BE(0);
27736
27587
  if (num > Math.pow(2, 53 - 32) - 1) {
27737
- const error = this.createError(
27588
+ this._loop = false;
27589
+ return error(
27738
27590
  RangeError,
27739
27591
  "Unsupported WebSocket frame: payload length > 2^53 - 1",
27740
27592
  false,
27741
27593
  1009,
27742
27594
  "WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH"
27743
27595
  );
27744
- cb(error);
27745
- return;
27746
27596
  }
27747
27597
  this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4);
27748
- this.haveLength(cb);
27598
+ return this.haveLength();
27749
27599
  }
27750
27600
  /**
27751
27601
  * Payload length has been read.
27752
27602
  *
27753
- * @param {Function} cb Callback
27603
+ * @return {(RangeError|undefined)} A possible error
27754
27604
  * @private
27755
27605
  */
27756
- haveLength(cb) {
27606
+ haveLength() {
27757
27607
  if (this._payloadLength && this._opcode < 8) {
27758
27608
  this._totalPayloadLength += this._payloadLength;
27759
27609
  if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) {
27760
- const error = this.createError(
27610
+ this._loop = false;
27611
+ return error(
27761
27612
  RangeError,
27762
27613
  "Max payload size exceeded",
27763
27614
  false,
27764
27615
  1009,
27765
27616
  "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
27766
27617
  );
27767
- cb(error);
27768
- return;
27769
27618
  }
27770
27619
  }
27771
27620
  if (this._masked) this._state = GET_MASK;
@@ -27788,6 +27637,7 @@ var require_receiver3 = __commonJS({
27788
27637
  * Reads data bytes.
27789
27638
  *
27790
27639
  * @param {Function} cb Callback
27640
+ * @return {(Error|RangeError|undefined)} A possible error
27791
27641
  * @private
27792
27642
  */
27793
27643
  getData(cb) {
@@ -27802,10 +27652,7 @@ var require_receiver3 = __commonJS({
27802
27652
  unmask(data, this._mask);
27803
27653
  }
27804
27654
  }
27805
- if (this._opcode > 7) {
27806
- this.controlMessage(data, cb);
27807
- return;
27808
- }
27655
+ if (this._opcode > 7) return this.controlMessage(data);
27809
27656
  if (this._compressed) {
27810
27657
  this._state = INFLATING;
27811
27658
  this.decompress(data, cb);
@@ -27815,7 +27662,7 @@ var require_receiver3 = __commonJS({
27815
27662
  this._messageLength = this._totalPayloadLength;
27816
27663
  this._fragments.push(data);
27817
27664
  }
27818
- this.dataMessage(cb);
27665
+ return this.dataMessage();
27819
27666
  }
27820
27667
  /**
27821
27668
  * Decompresses data.
@@ -27831,84 +27678,63 @@ var require_receiver3 = __commonJS({
27831
27678
  if (buf.length) {
27832
27679
  this._messageLength += buf.length;
27833
27680
  if (this._messageLength > this._maxPayload && this._maxPayload > 0) {
27834
- const error = this.createError(
27835
- RangeError,
27836
- "Max payload size exceeded",
27837
- false,
27838
- 1009,
27839
- "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
27681
+ return cb(
27682
+ error(
27683
+ RangeError,
27684
+ "Max payload size exceeded",
27685
+ false,
27686
+ 1009,
27687
+ "WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"
27688
+ )
27840
27689
  );
27841
- cb(error);
27842
- return;
27843
27690
  }
27844
27691
  this._fragments.push(buf);
27845
27692
  }
27846
- this.dataMessage(cb);
27847
- if (this._state === GET_INFO) this.startLoop(cb);
27693
+ const er = this.dataMessage();
27694
+ if (er) return cb(er);
27695
+ this.startLoop(cb);
27848
27696
  });
27849
27697
  }
27850
27698
  /**
27851
27699
  * Handles a data message.
27852
27700
  *
27853
- * @param {Function} cb Callback
27701
+ * @return {(Error|undefined)} A possible error
27854
27702
  * @private
27855
27703
  */
27856
- dataMessage(cb) {
27857
- if (!this._fin) {
27858
- this._state = GET_INFO;
27859
- return;
27860
- }
27861
- const messageLength = this._messageLength;
27862
- const fragments = this._fragments;
27863
- this._totalPayloadLength = 0;
27864
- this._messageLength = 0;
27865
- this._fragmented = 0;
27866
- this._fragments = [];
27867
- if (this._opcode === 2) {
27868
- let data;
27869
- if (this._binaryType === "nodebuffer") {
27870
- data = concat(fragments, messageLength);
27871
- } else if (this._binaryType === "arraybuffer") {
27872
- data = toArrayBuffer(concat(fragments, messageLength));
27873
- } else {
27874
- data = fragments;
27875
- }
27876
- if (this._allowSynchronousEvents) {
27704
+ dataMessage() {
27705
+ if (this._fin) {
27706
+ const messageLength = this._messageLength;
27707
+ const fragments = this._fragments;
27708
+ this._totalPayloadLength = 0;
27709
+ this._messageLength = 0;
27710
+ this._fragmented = 0;
27711
+ this._fragments = [];
27712
+ if (this._opcode === 2) {
27713
+ let data;
27714
+ if (this._binaryType === "nodebuffer") {
27715
+ data = concat(fragments, messageLength);
27716
+ } else if (this._binaryType === "arraybuffer") {
27717
+ data = toArrayBuffer(concat(fragments, messageLength));
27718
+ } else {
27719
+ data = fragments;
27720
+ }
27877
27721
  this.emit("message", data, true);
27878
- this._state = GET_INFO;
27879
27722
  } else {
27880
- this._state = DEFER_EVENT;
27881
- setImmediate(() => {
27882
- this.emit("message", data, true);
27883
- this._state = GET_INFO;
27884
- this.startLoop(cb);
27885
- });
27886
- }
27887
- } else {
27888
- const buf = concat(fragments, messageLength);
27889
- if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
27890
- const error = this.createError(
27891
- Error,
27892
- "invalid UTF-8 sequence",
27893
- true,
27894
- 1007,
27895
- "WS_ERR_INVALID_UTF8"
27896
- );
27897
- cb(error);
27898
- return;
27899
- }
27900
- if (this._state === INFLATING || this._allowSynchronousEvents) {
27723
+ const buf = concat(fragments, messageLength);
27724
+ if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
27725
+ this._loop = false;
27726
+ return error(
27727
+ Error,
27728
+ "invalid UTF-8 sequence",
27729
+ true,
27730
+ 1007,
27731
+ "WS_ERR_INVALID_UTF8"
27732
+ );
27733
+ }
27901
27734
  this.emit("message", buf, false);
27902
- this._state = GET_INFO;
27903
- } else {
27904
- this._state = DEFER_EVENT;
27905
- setImmediate(() => {
27906
- this.emit("message", buf, false);
27907
- this._state = GET_INFO;
27908
- this.startLoop(cb);
27909
- });
27910
27735
  }
27911
27736
  }
27737
+ this._state = GET_INFO;
27912
27738
  }
27913
27739
  /**
27914
27740
  * Handles a control message.
@@ -27917,85 +27743,62 @@ var require_receiver3 = __commonJS({
27917
27743
  * @return {(Error|RangeError|undefined)} A possible error
27918
27744
  * @private
27919
27745
  */
27920
- controlMessage(data, cb) {
27746
+ controlMessage(data) {
27921
27747
  if (this._opcode === 8) {
27748
+ this._loop = false;
27922
27749
  if (data.length === 0) {
27923
- this._loop = false;
27924
27750
  this.emit("conclude", 1005, EMPTY_BUFFER);
27925
27751
  this.end();
27752
+ } else if (data.length === 1) {
27753
+ return error(
27754
+ RangeError,
27755
+ "invalid payload length 1",
27756
+ true,
27757
+ 1002,
27758
+ "WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"
27759
+ );
27926
27760
  } else {
27927
27761
  const code = data.readUInt16BE(0);
27928
27762
  if (!isValidStatusCode(code)) {
27929
- const error = this.createError(
27763
+ return error(
27930
27764
  RangeError,
27931
27765
  `invalid status code ${code}`,
27932
27766
  true,
27933
27767
  1002,
27934
27768
  "WS_ERR_INVALID_CLOSE_CODE"
27935
27769
  );
27936
- cb(error);
27937
- return;
27938
27770
  }
27939
- const buf = new FastBuffer(
27940
- data.buffer,
27941
- data.byteOffset + 2,
27942
- data.length - 2
27943
- );
27771
+ const buf = data.slice(2);
27944
27772
  if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
27945
- const error = this.createError(
27773
+ return error(
27946
27774
  Error,
27947
27775
  "invalid UTF-8 sequence",
27948
27776
  true,
27949
27777
  1007,
27950
27778
  "WS_ERR_INVALID_UTF8"
27951
27779
  );
27952
- cb(error);
27953
- return;
27954
27780
  }
27955
- this._loop = false;
27956
27781
  this.emit("conclude", code, buf);
27957
27782
  this.end();
27958
27783
  }
27959
- this._state = GET_INFO;
27960
- return;
27961
- }
27962
- if (this._allowSynchronousEvents) {
27963
- this.emit(this._opcode === 9 ? "ping" : "pong", data);
27964
- this._state = GET_INFO;
27784
+ } else if (this._opcode === 9) {
27785
+ this.emit("ping", data);
27965
27786
  } else {
27966
- this._state = DEFER_EVENT;
27967
- setImmediate(() => {
27968
- this.emit(this._opcode === 9 ? "ping" : "pong", data);
27969
- this._state = GET_INFO;
27970
- this.startLoop(cb);
27971
- });
27787
+ this.emit("pong", data);
27972
27788
  }
27973
- }
27974
- /**
27975
- * Builds an error object.
27976
- *
27977
- * @param {function(new:Error|RangeError)} ErrorCtor The error constructor
27978
- * @param {String} message The error message
27979
- * @param {Boolean} prefix Specifies whether or not to add a default prefix to
27980
- * `message`
27981
- * @param {Number} statusCode The status code
27982
- * @param {String} errorCode The exposed error code
27983
- * @return {(Error|RangeError)} The error
27984
- * @private
27985
- */
27986
- createError(ErrorCtor, message, prefix, statusCode, errorCode) {
27987
- this._loop = false;
27988
- this._errored = true;
27989
- const err = new ErrorCtor(
27990
- prefix ? `Invalid WebSocket frame: ${message}` : message
27991
- );
27992
- Error.captureStackTrace(err, this.createError);
27993
- err.code = errorCode;
27994
- err[kStatusCode] = statusCode;
27995
- return err;
27789
+ this._state = GET_INFO;
27996
27790
  }
27997
27791
  };
27998
27792
  module.exports = Receiver2;
27793
+ function error(ErrorCtor, message, prefix, statusCode, errorCode) {
27794
+ const err = new ErrorCtor(
27795
+ prefix ? `Invalid WebSocket frame: ${message}` : message
27796
+ );
27797
+ Error.captureStackTrace(err, error);
27798
+ err.code = errorCode;
27799
+ err[kStatusCode] = statusCode;
27800
+ return err;
27801
+ }
27999
27802
  }
28000
27803
  });
28001
27804
 
@@ -28004,7 +27807,8 @@ var require_sender3 = __commonJS({
28004
27807
  "../../node_modules/engine.io-client/node_modules/ws/lib/sender.js"(exports, module) {
28005
27808
  "use strict";
28006
27809
  init_esm_shims();
28007
- var { Duplex } = __require("stream");
27810
+ var net = __require("net");
27811
+ var tls = __require("tls");
28008
27812
  var { randomFillSync } = __require("crypto");
28009
27813
  var PerMessageDeflate = require_permessage_deflate3();
28010
27814
  var { EMPTY_BUFFER } = require_constants3();
@@ -28012,14 +27816,11 @@ var require_sender3 = __commonJS({
28012
27816
  var { mask: applyMask, toBuffer: toBuffer2 } = require_buffer_util3();
28013
27817
  var kByteLength = Symbol("kByteLength");
28014
27818
  var maskBuffer = Buffer.alloc(4);
28015
- var RANDOM_POOL_SIZE = 8 * 1024;
28016
- var randomPool;
28017
- var randomPoolPointer = RANDOM_POOL_SIZE;
28018
27819
  var Sender2 = class _Sender {
28019
27820
  /**
28020
27821
  * Creates a Sender instance.
28021
27822
  *
28022
- * @param {Duplex} socket The connection socket
27823
+ * @param {(net.Socket|tls.Socket)} socket The connection socket
28023
27824
  * @param {Object} [extensions] An object containing the negotiated extensions
28024
27825
  * @param {Function} [generateMask] The function used to generate the masking
28025
27826
  * key
@@ -28068,17 +27869,7 @@ var require_sender3 = __commonJS({
28068
27869
  if (options.generateMask) {
28069
27870
  options.generateMask(mask);
28070
27871
  } else {
28071
- if (randomPoolPointer === RANDOM_POOL_SIZE) {
28072
- if (randomPool === void 0) {
28073
- randomPool = Buffer.alloc(RANDOM_POOL_SIZE);
28074
- }
28075
- randomFillSync(randomPool, 0, RANDOM_POOL_SIZE);
28076
- randomPoolPointer = 0;
28077
- }
28078
- mask[0] = randomPool[randomPoolPointer++];
28079
- mask[1] = randomPool[randomPoolPointer++];
28080
- mask[2] = randomPool[randomPoolPointer++];
28081
- mask[3] = randomPool[randomPoolPointer++];
27872
+ randomFillSync(mask, 0, 4);
28082
27873
  }
28083
27874
  skipMasking = (mask[0] | mask[1] | mask[2] | mask[3]) === 0;
28084
27875
  offset = 6;
@@ -28813,7 +28604,7 @@ var require_websocket5 = __commonJS({
28813
28604
  var net = __require("net");
28814
28605
  var tls = __require("tls");
28815
28606
  var { randomBytes, createHash } = __require("crypto");
28816
- var { Duplex, Readable } = __require("stream");
28607
+ var { Readable } = __require("stream");
28817
28608
  var { URL: URL2 } = __require("url");
28818
28609
  var PerMessageDeflate = require_permessage_deflate3();
28819
28610
  var Receiver2 = require_receiver3();
@@ -28877,7 +28668,6 @@ var require_websocket5 = __commonJS({
28877
28668
  }
28878
28669
  initAsClient(this, address, protocols, options);
28879
28670
  } else {
28880
- this._autoPong = options.autoPong;
28881
28671
  this._isServer = true;
28882
28672
  }
28883
28673
  }
@@ -28964,12 +28754,10 @@ var require_websocket5 = __commonJS({
28964
28754
  /**
28965
28755
  * Set up the socket and the internal resources.
28966
28756
  *
28967
- * @param {Duplex} socket The network socket between the server and client
28757
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
28758
+ * server and client
28968
28759
  * @param {Buffer} head The first packet of the upgraded stream
28969
28760
  * @param {Object} options Options object
28970
- * @param {Boolean} [options.allowSynchronousEvents=false] Specifies whether
28971
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
28972
- * multiple times in the same tick
28973
28761
  * @param {Function} [options.generateMask] The function used to generate the
28974
28762
  * masking key
28975
28763
  * @param {Number} [options.maxPayload=0] The maximum allowed message size
@@ -28979,7 +28767,6 @@ var require_websocket5 = __commonJS({
28979
28767
  */
28980
28768
  setSocket(socket, head, options) {
28981
28769
  const receiver = new Receiver2({
28982
- allowSynchronousEvents: options.allowSynchronousEvents,
28983
28770
  binaryType: this.binaryType,
28984
28771
  extensions: this._extensions,
28985
28772
  isServer: this._isServer,
@@ -28997,8 +28784,8 @@ var require_websocket5 = __commonJS({
28997
28784
  receiver.on("message", receiverOnMessage);
28998
28785
  receiver.on("ping", receiverOnPing);
28999
28786
  receiver.on("pong", receiverOnPong);
29000
- if (socket.setTimeout) socket.setTimeout(0);
29001
- if (socket.setNoDelay) socket.setNoDelay();
28787
+ socket.setTimeout(0);
28788
+ socket.setNoDelay();
29002
28789
  if (head.length > 0) socket.unshift(head);
29003
28790
  socket.on("close", socketOnClose);
29004
28791
  socket.on("data", socketOnData);
@@ -29049,8 +28836,7 @@ var require_websocket5 = __commonJS({
29049
28836
  if (this.readyState === _WebSocket.CLOSED) return;
29050
28837
  if (this.readyState === _WebSocket.CONNECTING) {
29051
28838
  const msg = "WebSocket was closed before the connection was established";
29052
- abortHandshake(this, this._req, msg);
29053
- return;
28839
+ return abortHandshake(this, this._req, msg);
29054
28840
  }
29055
28841
  if (this.readyState === _WebSocket.CLOSING) {
29056
28842
  if (this._closeFrameSent && (this._closeFrameReceived || this._receiver._writableState.errorEmitted)) {
@@ -29198,8 +28984,7 @@ var require_websocket5 = __commonJS({
29198
28984
  if (this.readyState === _WebSocket.CLOSED) return;
29199
28985
  if (this.readyState === _WebSocket.CONNECTING) {
29200
28986
  const msg = "WebSocket was closed before the connection was established";
29201
- abortHandshake(this, this._req, msg);
29202
- return;
28987
+ return abortHandshake(this, this._req, msg);
29203
28988
  }
29204
28989
  if (this._socket) {
29205
28990
  this._readyState = _WebSocket.CLOSING;
@@ -29278,8 +29063,6 @@ var require_websocket5 = __commonJS({
29278
29063
  module.exports = WebSocket3;
29279
29064
  function initAsClient(websocket, address, protocols, options) {
29280
29065
  const opts = {
29281
- allowSynchronousEvents: true,
29282
- autoPong: true,
29283
29066
  protocolVersion: protocolVersions[1],
29284
29067
  maxPayload: 100 * 1024 * 1024,
29285
29068
  skipUTF8Validation: false,
@@ -29287,6 +29070,7 @@ var require_websocket5 = __commonJS({
29287
29070
  followRedirects: false,
29288
29071
  maxRedirects: 10,
29289
29072
  ...options,
29073
+ createConnection: void 0,
29290
29074
  socketPath: void 0,
29291
29075
  hostname: void 0,
29292
29076
  protocol: void 0,
@@ -29296,7 +29080,6 @@ var require_websocket5 = __commonJS({
29296
29080
  path: void 0,
29297
29081
  port: void 0
29298
29082
  };
29299
- websocket._autoPong = opts.autoPong;
29300
29083
  if (!protocolVersions.includes(opts.protocolVersion)) {
29301
29084
  throw new RangeError(
29302
29085
  `Unsupported protocol version: ${opts.protocolVersion} (supported versions: ${protocolVersions.join(", ")})`
@@ -29305,24 +29088,20 @@ var require_websocket5 = __commonJS({
29305
29088
  let parsedUrl;
29306
29089
  if (address instanceof URL2) {
29307
29090
  parsedUrl = address;
29091
+ websocket._url = address.href;
29308
29092
  } else {
29309
29093
  try {
29310
29094
  parsedUrl = new URL2(address);
29311
29095
  } catch (e) {
29312
29096
  throw new SyntaxError(`Invalid URL: ${address}`);
29313
29097
  }
29098
+ websocket._url = address;
29314
29099
  }
29315
- if (parsedUrl.protocol === "http:") {
29316
- parsedUrl.protocol = "ws:";
29317
- } else if (parsedUrl.protocol === "https:") {
29318
- parsedUrl.protocol = "wss:";
29319
- }
29320
- websocket._url = parsedUrl.href;
29321
29100
  const isSecure = parsedUrl.protocol === "wss:";
29322
29101
  const isIpcUrl = parsedUrl.protocol === "ws+unix:";
29323
29102
  let invalidUrlMessage;
29324
29103
  if (parsedUrl.protocol !== "ws:" && !isSecure && !isIpcUrl) {
29325
- invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`;
29104
+ invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", or "ws+unix:"`;
29326
29105
  } else if (isIpcUrl && !parsedUrl.pathname) {
29327
29106
  invalidUrlMessage = "The URL's pathname is empty";
29328
29107
  } else if (parsedUrl.hash) {
@@ -29342,7 +29121,7 @@ var require_websocket5 = __commonJS({
29342
29121
  const request = isSecure ? https.request : http.request;
29343
29122
  const protocolSet = /* @__PURE__ */ new Set();
29344
29123
  let perMessageDeflate;
29345
- opts.createConnection = opts.createConnection || (isSecure ? tlsConnect : netConnect);
29124
+ opts.createConnection = isSecure ? tlsConnect : netConnect;
29346
29125
  opts.defaultPort = opts.defaultPort || defaultPort;
29347
29126
  opts.port = parsedUrl.port || defaultPort;
29348
29127
  opts.host = parsedUrl.hostname.startsWith("[") ? parsedUrl.hostname.slice(1, -1) : parsedUrl.hostname;
@@ -29463,8 +29242,7 @@ var require_websocket5 = __commonJS({
29463
29242
  websocket.emit("upgrade", res);
29464
29243
  if (websocket.readyState !== WebSocket3.CONNECTING) return;
29465
29244
  req = websocket._req = null;
29466
- const upgrade = res.headers.upgrade;
29467
- if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
29245
+ if (res.headers.upgrade.toLowerCase() !== "websocket") {
29468
29246
  abortHandshake(websocket, socket, "Invalid Upgrade header");
29469
29247
  return;
29470
29248
  }
@@ -29520,17 +29298,12 @@ var require_websocket5 = __commonJS({
29520
29298
  websocket._extensions[PerMessageDeflate.extensionName] = perMessageDeflate;
29521
29299
  }
29522
29300
  websocket.setSocket(socket, head, {
29523
- allowSynchronousEvents: opts.allowSynchronousEvents,
29524
29301
  generateMask: opts.generateMask,
29525
29302
  maxPayload: opts.maxPayload,
29526
29303
  skipUTF8Validation: opts.skipUTF8Validation
29527
29304
  });
29528
29305
  });
29529
- if (opts.finishRequest) {
29530
- opts.finishRequest(req, websocket);
29531
- } else {
29532
- req.end();
29533
- }
29306
+ req.end();
29534
29307
  }
29535
29308
  function emitErrorAndClose(websocket, err) {
29536
29309
  websocket._readyState = WebSocket3.CLOSING;
@@ -29575,7 +29348,7 @@ var require_websocket5 = __commonJS({
29575
29348
  const err = new Error(
29576
29349
  `WebSocket is not open: readyState ${websocket.readyState} (${readyStates[websocket.readyState]})`
29577
29350
  );
29578
- process.nextTick(cb, err);
29351
+ cb(err);
29579
29352
  }
29580
29353
  }
29581
29354
  function receiverOnConclude(code, reason) {
@@ -29610,7 +29383,7 @@ var require_websocket5 = __commonJS({
29610
29383
  }
29611
29384
  function receiverOnPing(data) {
29612
29385
  const websocket = this[kWebSocket];
29613
- if (websocket._autoPong) websocket.pong(data, !this._isServer, NOOP);
29386
+ websocket.pong(data, !websocket._isServer, NOOP);
29614
29387
  websocket.emit("ping", data);
29615
29388
  }
29616
29389
  function receiverOnPong(data) {
@@ -29715,7 +29488,9 @@ var require_websocket_server3 = __commonJS({
29715
29488
  init_esm_shims();
29716
29489
  var EventEmitter = __require("events");
29717
29490
  var http = __require("http");
29718
- var { Duplex } = __require("stream");
29491
+ var https = __require("https");
29492
+ var net = __require("net");
29493
+ var tls = __require("tls");
29719
29494
  var { createHash } = __require("crypto");
29720
29495
  var extension = require_extension3();
29721
29496
  var PerMessageDeflate = require_permessage_deflate3();
@@ -29731,11 +29506,6 @@ var require_websocket_server3 = __commonJS({
29731
29506
  * Create a `WebSocketServer` instance.
29732
29507
  *
29733
29508
  * @param {Object} options Configuration options
29734
- * @param {Boolean} [options.allowSynchronousEvents=true] Specifies whether
29735
- * any of the `'message'`, `'ping'`, and `'pong'` events can be emitted
29736
- * multiple times in the same tick
29737
- * @param {Boolean} [options.autoPong=true] Specifies whether or not to
29738
- * automatically send a pong in response to a ping
29739
29509
  * @param {Number} [options.backlog=511] The maximum length of the queue of
29740
29510
  * pending connections
29741
29511
  * @param {Boolean} [options.clientTracking=true] Specifies whether or not to
@@ -29761,8 +29531,6 @@ var require_websocket_server3 = __commonJS({
29761
29531
  constructor(options, callback) {
29762
29532
  super();
29763
29533
  options = {
29764
- allowSynchronousEvents: true,
29765
- autoPong: true,
29766
29534
  maxPayload: 100 * 1024 * 1024,
29767
29535
  skipUTF8Validation: false,
29768
29536
  perMessageDeflate: false,
@@ -29898,7 +29666,8 @@ var require_websocket_server3 = __commonJS({
29898
29666
  * Handle a HTTP Upgrade request.
29899
29667
  *
29900
29668
  * @param {http.IncomingMessage} req The request object
29901
- * @param {Duplex} socket The network socket between the server and client
29669
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
29670
+ * server and client
29902
29671
  * @param {Buffer} head The first packet of the upgraded stream
29903
29672
  * @param {Function} cb Callback
29904
29673
  * @public
@@ -29906,19 +29675,18 @@ var require_websocket_server3 = __commonJS({
29906
29675
  handleUpgrade(req, socket, head, cb) {
29907
29676
  socket.on("error", socketOnError);
29908
29677
  const key = req.headers["sec-websocket-key"];
29909
- const upgrade = req.headers.upgrade;
29910
29678
  const version = +req.headers["sec-websocket-version"];
29911
29679
  if (req.method !== "GET") {
29912
29680
  const message = "Invalid HTTP method";
29913
29681
  abortHandshakeOrEmitwsClientError(this, req, socket, 405, message);
29914
29682
  return;
29915
29683
  }
29916
- if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
29684
+ if (req.headers.upgrade.toLowerCase() !== "websocket") {
29917
29685
  const message = "Invalid Upgrade header";
29918
29686
  abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
29919
29687
  return;
29920
29688
  }
29921
- if (key === void 0 || !keyRegex.test(key)) {
29689
+ if (!key || !keyRegex.test(key)) {
29922
29690
  const message = "Missing or invalid Sec-WebSocket-Key header";
29923
29691
  abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
29924
29692
  return;
@@ -29997,7 +29765,8 @@ var require_websocket_server3 = __commonJS({
29997
29765
  * @param {String} key The value of the `Sec-WebSocket-Key` header
29998
29766
  * @param {Set} protocols The subprotocols
29999
29767
  * @param {http.IncomingMessage} req The request object
30000
- * @param {Duplex} socket The network socket between the server and client
29768
+ * @param {(net.Socket|tls.Socket)} socket The network socket between the
29769
+ * server and client
30001
29770
  * @param {Buffer} head The first packet of the upgraded stream
30002
29771
  * @param {Function} cb Callback
30003
29772
  * @throws {Error} If called more than once with the same socket
@@ -30018,7 +29787,7 @@ var require_websocket_server3 = __commonJS({
30018
29787
  "Connection: Upgrade",
30019
29788
  `Sec-WebSocket-Accept: ${digest}`
30020
29789
  ];
30021
- const ws = new this.options.WebSocket(null, void 0, this.options);
29790
+ const ws = new this.options.WebSocket(null);
30022
29791
  if (protocols.size) {
30023
29792
  const protocol4 = this.options.handleProtocols ? this.options.handleProtocols(protocols, req) : protocols.values().next().value;
30024
29793
  if (protocol4) {
@@ -30038,7 +29807,6 @@ var require_websocket_server3 = __commonJS({
30038
29807
  socket.write(headers.concat("\r\n").join("\r\n"));
30039
29808
  socket.removeListener("error", socketOnError);
30040
29809
  ws.setSocket(socket, head, {
30041
- allowSynchronousEvents: this.options.allowSynchronousEvents,
30042
29810
  maxPayload: this.options.maxPayload,
30043
29811
  skipUTF8Validation: this.options.skipUTF8Validation
30044
29812
  });
@@ -36912,9 +36680,6 @@ var parts = [
36912
36680
  "anchor"
36913
36681
  ];
36914
36682
  function parse2(str) {
36915
- if (str.length > 2e3) {
36916
- throw "URI too long";
36917
- }
36918
36683
  const src = str, b = str.indexOf("["), e = str.indexOf("]");
36919
36684
  if (b != -1 && e != -1) {
36920
36685
  str = str.substring(0, b) + str.substring(b, e).replace(/:/g, ";") + str.substring(e, str.length);
@@ -61468,4 +61233,4 @@ fill-range/index.js:
61468
61233
  * Licensed under the MIT License.
61469
61234
  *)
61470
61235
  */
61471
- //# sourceMappingURL=chunk-QKFGKDHU.js.map
61236
+ //# sourceMappingURL=chunk-AOWEDNOF.js.map