@zoralabs/protocol-deployments 0.3.5-COMMENTS.2 → 0.3.5

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 (94) hide show
  1. package/.turbo/turbo-build.log +48 -48
  2. package/CHANGELOG.md +2 -18
  3. package/dist/{_esm-KB2T7G46.js → _esm-JXHAY2EM.js} +192 -85
  4. package/dist/_esm-JXHAY2EM.js.map +1 -0
  5. package/{package/dist/ccip-42FQPB7J.js → dist/ccip-E7SRWW2U.js} +3 -3
  6. package/{package/dist/chunk-YMRS2KON.js → dist/chunk-BKKE6NTH.js} +332 -453
  7. package/dist/chunk-BKKE6NTH.js.map +1 -0
  8. package/dist/{chunk-5JV63AHR.js → chunk-FJ2PMLO3.js} +8 -5
  9. package/dist/chunk-FJ2PMLO3.js.map +1 -0
  10. package/dist/generated/wagmi.d.ts +131 -3118
  11. package/dist/generated/wagmi.d.ts.map +1 -1
  12. package/dist/index.cjs +285 -1507
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.js +3 -1152
  15. package/dist/index.js.map +1 -1
  16. package/{package/package/dist/secp256k1-5CEPNAX3.js → dist/secp256k1-NJATWSDZ.js} +402 -251
  17. package/dist/secp256k1-NJATWSDZ.js.map +1 -0
  18. package/dist/typedData.d.ts +1 -137
  19. package/dist/typedData.d.ts.map +1 -1
  20. package/dist/types.d.ts +0 -21
  21. package/dist/types.d.ts.map +1 -1
  22. package/package.json +4 -5
  23. package/src/generated/wagmi.ts +130 -1120
  24. package/src/typedData.ts +0 -133
  25. package/src/types.ts +0 -42
  26. package/dist/_esm-KB2T7G46.js.map +0 -1
  27. package/dist/ccip-TLVKUNHE.js +0 -15
  28. package/dist/chunk-5JV63AHR.js.map +0 -1
  29. package/dist/chunk-IB365BT5.js +0 -3957
  30. package/dist/chunk-IB365BT5.js.map +0 -1
  31. package/dist/secp256k1-5CEPNAX3.js +0 -2244
  32. package/dist/secp256k1-5CEPNAX3.js.map +0 -1
  33. package/json/1155.json +0 -212
  34. package/json/mints.json +0 -46
  35. package/package/.turbo/turbo-build.log +0 -48
  36. package/package/dist/_esm-KB2T7G46.js +0 -3923
  37. package/package/dist/_esm-KB2T7G46.js.map +0 -1
  38. package/package/dist/ccip-42FQPB7J.js.map +0 -1
  39. package/package/dist/chunk-3EJPJMEH.js +0 -44
  40. package/package/dist/chunk-3EJPJMEH.js.map +0 -1
  41. package/package/dist/chunk-5JV63AHR.js +0 -129
  42. package/package/dist/chunk-5JV63AHR.js.map +0 -1
  43. package/package/dist/chunk-YMRS2KON.js.map +0 -1
  44. package/package/dist/encoding.d.ts +0 -15
  45. package/package/dist/encoding.d.ts.map +0 -1
  46. package/package/dist/generated/1155.d.ts +0 -232
  47. package/package/dist/generated/1155.d.ts.map +0 -1
  48. package/package/dist/generated/sparks.d.ts +0 -85
  49. package/package/dist/generated/sparks.d.ts.map +0 -1
  50. package/package/dist/generated/wagmi.d.ts +0 -27548
  51. package/package/dist/generated/wagmi.d.ts.map +0 -1
  52. package/package/dist/index.cjs +0 -12957
  53. package/package/dist/index.cjs.map +0 -1
  54. package/package/dist/index.d.ts +0 -7
  55. package/package/dist/index.d.ts.map +0 -1
  56. package/package/dist/index.js +0 -11268
  57. package/package/dist/index.js.map +0 -1
  58. package/package/dist/secp256k1-5CEPNAX3.js +0 -2244
  59. package/package/dist/secp256k1-5CEPNAX3.js.map +0 -1
  60. package/package/dist/typedData.d.ts +0 -234
  61. package/package/dist/typedData.d.ts.map +0 -1
  62. package/package/dist/types.d.ts +0 -45
  63. package/package/dist/types.d.ts.map +0 -1
  64. package/package/package/.turbo/turbo-build.log +0 -48
  65. package/package/package/dist/_esm-KB2T7G46.js +0 -3923
  66. package/package/package/dist/_esm-KB2T7G46.js.map +0 -1
  67. package/package/package/dist/ccip-42FQPB7J.js +0 -15
  68. package/package/package/dist/ccip-42FQPB7J.js.map +0 -1
  69. package/package/package/dist/chunk-3EJPJMEH.js +0 -44
  70. package/package/package/dist/chunk-3EJPJMEH.js.map +0 -1
  71. package/package/package/dist/chunk-5JV63AHR.js +0 -129
  72. package/package/package/dist/chunk-5JV63AHR.js.map +0 -1
  73. package/package/package/dist/chunk-YMRS2KON.js +0 -3956
  74. package/package/package/dist/chunk-YMRS2KON.js.map +0 -1
  75. package/package/package/dist/encoding.d.ts +0 -15
  76. package/package/package/dist/encoding.d.ts.map +0 -1
  77. package/package/package/dist/generated/1155.d.ts +0 -232
  78. package/package/package/dist/generated/1155.d.ts.map +0 -1
  79. package/package/package/dist/generated/sparks.d.ts +0 -85
  80. package/package/package/dist/generated/sparks.d.ts.map +0 -1
  81. package/package/package/dist/generated/wagmi.d.ts +0 -27548
  82. package/package/package/dist/generated/wagmi.d.ts.map +0 -1
  83. package/package/package/dist/index.cjs +0 -12957
  84. package/package/package/dist/index.cjs.map +0 -1
  85. package/package/package/dist/index.d.ts +0 -7
  86. package/package/package/dist/index.d.ts.map +0 -1
  87. package/package/package/dist/index.js +0 -11268
  88. package/package/package/dist/index.js.map +0 -1
  89. package/package/package/dist/secp256k1-5CEPNAX3.js.map +0 -1
  90. package/package/package/dist/typedData.d.ts +0 -234
  91. package/package/package/dist/typedData.d.ts.map +0 -1
  92. package/package/package/dist/types.d.ts +0 -45
  93. package/package/package/dist/types.d.ts.map +0 -1
  94. /package/dist/{ccip-TLVKUNHE.js.map → ccip-E7SRWW2U.js.map} +0 -0
@@ -5,9 +5,9 @@ import {
5
5
  __toESM
6
6
  } from "./chunk-3EJPJMEH.js";
7
7
 
8
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/stream.js
8
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/stream.js
9
9
  var require_stream = __commonJS({
10
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/stream.js"(exports, module) {
10
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/stream.js"(exports, module) {
11
11
  "use strict";
12
12
  var { Duplex } = __require("stream");
13
13
  function emitClose(stream) {
@@ -110,14 +110,19 @@ var require_stream = __commonJS({
110
110
  }
111
111
  });
112
112
 
113
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/constants.js
113
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/constants.js
114
114
  var require_constants = __commonJS({
115
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/constants.js"(exports, module) {
115
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/constants.js"(exports, module) {
116
116
  "use strict";
117
+ var BINARY_TYPES = ["nodebuffer", "arraybuffer", "fragments"];
118
+ var hasBlob = typeof Blob !== "undefined";
119
+ if (hasBlob)
120
+ BINARY_TYPES.push("blob");
117
121
  module.exports = {
118
- BINARY_TYPES: ["nodebuffer", "arraybuffer", "fragments"],
122
+ BINARY_TYPES,
119
123
  EMPTY_BUFFER: Buffer.alloc(0),
120
124
  GUID: "258EAFA5-E914-47DA-95CA-C5AB0DC85B11",
125
+ hasBlob,
121
126
  kForOnEventAttribute: Symbol("kIsForOnEventAttribute"),
122
127
  kListener: Symbol("kListener"),
123
128
  kStatusCode: Symbol("status-code"),
@@ -364,9 +369,9 @@ var require_bufferutil = __commonJS({
364
369
  }
365
370
  });
366
371
 
367
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/buffer-util.js
372
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/buffer-util.js
368
373
  var require_buffer_util = __commonJS({
369
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/buffer-util.js"(exports, module) {
374
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/buffer-util.js"(exports, module) {
370
375
  "use strict";
371
376
  var { EMPTY_BUFFER } = require_constants();
372
377
  var FastBuffer = Buffer[Symbol.species];
@@ -446,9 +451,9 @@ var require_buffer_util = __commonJS({
446
451
  }
447
452
  });
448
453
 
449
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/limiter.js
454
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/limiter.js
450
455
  var require_limiter = __commonJS({
451
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/limiter.js"(exports, module) {
456
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/limiter.js"(exports, module) {
452
457
  "use strict";
453
458
  var kDone = Symbol("kDone");
454
459
  var kRun = Symbol("kRun");
@@ -497,9 +502,9 @@ var require_limiter = __commonJS({
497
502
  }
498
503
  });
499
504
 
500
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/permessage-deflate.js
505
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/permessage-deflate.js
501
506
  var require_permessage_deflate = __commonJS({
502
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/permessage-deflate.js"(exports, module) {
507
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/permessage-deflate.js"(exports, module) {
503
508
  "use strict";
504
509
  var zlib = __require("zlib");
505
510
  var bufferUtil = require_buffer_util();
@@ -926,11 +931,12 @@ var require_utf_8_validate = __commonJS({
926
931
  }
927
932
  });
928
933
 
929
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/validation.js
934
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/validation.js
930
935
  var require_validation = __commonJS({
931
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/validation.js"(exports, module) {
936
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/validation.js"(exports, module) {
932
937
  "use strict";
933
938
  var { isUtf8 } = __require("buffer");
939
+ var { hasBlob } = require_constants();
934
940
  var tokenChars = [
935
941
  0,
936
942
  0,
@@ -1101,7 +1107,11 @@ var require_validation = __commonJS({
1101
1107
  }
1102
1108
  return true;
1103
1109
  }
1110
+ function isBlob(value) {
1111
+ return hasBlob && typeof value === "object" && typeof value.arrayBuffer === "function" && typeof value.type === "string" && typeof value.stream === "function" && (value[Symbol.toStringTag] === "Blob" || value[Symbol.toStringTag] === "File");
1112
+ }
1104
1113
  module.exports = {
1114
+ isBlob,
1105
1115
  isValidStatusCode,
1106
1116
  isValidUTF8: _isValidUTF8,
1107
1117
  tokenChars
@@ -1122,9 +1132,9 @@ var require_validation = __commonJS({
1122
1132
  }
1123
1133
  });
1124
1134
 
1125
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/receiver.js
1135
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/receiver.js
1126
1136
  var require_receiver = __commonJS({
1127
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/receiver.js"(exports, module) {
1137
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/receiver.js"(exports, module) {
1128
1138
  "use strict";
1129
1139
  var { Writable } = __require("stream");
1130
1140
  var PerMessageDeflate = require_permessage_deflate();
@@ -1594,6 +1604,8 @@ var require_receiver = __commonJS({
1594
1604
  data = concat(fragments, messageLength);
1595
1605
  } else if (this._binaryType === "arraybuffer") {
1596
1606
  data = toArrayBuffer(concat(fragments, messageLength));
1607
+ } else if (this._binaryType === "blob") {
1608
+ data = new Blob(fragments);
1597
1609
  } else {
1598
1610
  data = fragments;
1599
1611
  }
@@ -1723,21 +1735,24 @@ var require_receiver = __commonJS({
1723
1735
  }
1724
1736
  });
1725
1737
 
1726
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/sender.js
1738
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/sender.js
1727
1739
  var require_sender = __commonJS({
1728
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/sender.js"(exports, module) {
1740
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/sender.js"(exports, module) {
1729
1741
  "use strict";
1730
1742
  var { Duplex } = __require("stream");
1731
1743
  var { randomFillSync } = __require("crypto");
1732
1744
  var PerMessageDeflate = require_permessage_deflate();
1733
- var { EMPTY_BUFFER } = require_constants();
1734
- var { isValidStatusCode } = require_validation();
1745
+ var { EMPTY_BUFFER, kWebSocket, NOOP } = require_constants();
1746
+ var { isBlob, isValidStatusCode } = require_validation();
1735
1747
  var { mask: applyMask, toBuffer } = require_buffer_util();
1736
1748
  var kByteLength = Symbol("kByteLength");
1737
1749
  var maskBuffer = Buffer.alloc(4);
1738
1750
  var RANDOM_POOL_SIZE = 8 * 1024;
1739
1751
  var randomPool;
1740
1752
  var randomPoolPointer = RANDOM_POOL_SIZE;
1753
+ var DEFAULT = 0;
1754
+ var DEFLATING = 1;
1755
+ var GET_BLOB_DATA = 2;
1741
1756
  var Sender2 = class _Sender {
1742
1757
  /**
1743
1758
  * Creates a Sender instance.
@@ -1757,8 +1772,10 @@ var require_sender = __commonJS({
1757
1772
  this._firstFragment = true;
1758
1773
  this._compress = false;
1759
1774
  this._bufferedBytes = 0;
1760
- this._deflating = false;
1761
1775
  this._queue = [];
1776
+ this._state = DEFAULT;
1777
+ this.onerror = NOOP;
1778
+ this[kWebSocket] = void 0;
1762
1779
  }
1763
1780
  /**
1764
1781
  * Frames a piece of data according to the HyBi WebSocket protocol.
@@ -1894,7 +1911,7 @@ var require_sender = __commonJS({
1894
1911
  readOnly: false,
1895
1912
  rsv1: false
1896
1913
  };
1897
- if (this._deflating) {
1914
+ if (this._state !== DEFAULT) {
1898
1915
  this.enqueue([this.dispatch, buf, false, options, cb]);
1899
1916
  } else {
1900
1917
  this.sendFrame(_Sender.frame(buf, options), cb);
@@ -1914,6 +1931,9 @@ var require_sender = __commonJS({
1914
1931
  if (typeof data === "string") {
1915
1932
  byteLength = Buffer.byteLength(data);
1916
1933
  readOnly = false;
1934
+ } else if (isBlob(data)) {
1935
+ byteLength = data.size;
1936
+ readOnly = false;
1917
1937
  } else {
1918
1938
  data = toBuffer(data);
1919
1939
  byteLength = data.length;
@@ -1932,7 +1952,13 @@ var require_sender = __commonJS({
1932
1952
  readOnly,
1933
1953
  rsv1: false
1934
1954
  };
1935
- if (this._deflating) {
1955
+ if (isBlob(data)) {
1956
+ if (this._state !== DEFAULT) {
1957
+ this.enqueue([this.getBlobData, data, false, options, cb]);
1958
+ } else {
1959
+ this.getBlobData(data, false, options, cb);
1960
+ }
1961
+ } else if (this._state !== DEFAULT) {
1936
1962
  this.enqueue([this.dispatch, data, false, options, cb]);
1937
1963
  } else {
1938
1964
  this.sendFrame(_Sender.frame(data, options), cb);
@@ -1952,6 +1978,9 @@ var require_sender = __commonJS({
1952
1978
  if (typeof data === "string") {
1953
1979
  byteLength = Buffer.byteLength(data);
1954
1980
  readOnly = false;
1981
+ } else if (isBlob(data)) {
1982
+ byteLength = data.size;
1983
+ readOnly = false;
1955
1984
  } else {
1956
1985
  data = toBuffer(data);
1957
1986
  byteLength = data.length;
@@ -1970,7 +1999,13 @@ var require_sender = __commonJS({
1970
1999
  readOnly,
1971
2000
  rsv1: false
1972
2001
  };
1973
- if (this._deflating) {
2002
+ if (isBlob(data)) {
2003
+ if (this._state !== DEFAULT) {
2004
+ this.enqueue([this.getBlobData, data, false, options, cb]);
2005
+ } else {
2006
+ this.getBlobData(data, false, options, cb);
2007
+ }
2008
+ } else if (this._state !== DEFAULT) {
1974
2009
  this.enqueue([this.dispatch, data, false, options, cb]);
1975
2010
  } else {
1976
2011
  this.sendFrame(_Sender.frame(data, options), cb);
@@ -2001,6 +2036,9 @@ var require_sender = __commonJS({
2001
2036
  if (typeof data === "string") {
2002
2037
  byteLength = Buffer.byteLength(data);
2003
2038
  readOnly = false;
2039
+ } else if (isBlob(data)) {
2040
+ byteLength = data.size;
2041
+ readOnly = false;
2004
2042
  } else {
2005
2043
  data = toBuffer(data);
2006
2044
  byteLength = data.length;
@@ -2018,38 +2056,75 @@ var require_sender = __commonJS({
2018
2056
  }
2019
2057
  if (options.fin)
2020
2058
  this._firstFragment = true;
2021
- if (perMessageDeflate) {
2022
- const opts = {
2023
- [kByteLength]: byteLength,
2024
- fin: options.fin,
2025
- generateMask: this._generateMask,
2026
- mask: options.mask,
2027
- maskBuffer: this._maskBuffer,
2028
- opcode,
2029
- readOnly,
2030
- rsv1
2031
- };
2032
- if (this._deflating) {
2033
- this.enqueue([this.dispatch, data, this._compress, opts, cb]);
2059
+ const opts = {
2060
+ [kByteLength]: byteLength,
2061
+ fin: options.fin,
2062
+ generateMask: this._generateMask,
2063
+ mask: options.mask,
2064
+ maskBuffer: this._maskBuffer,
2065
+ opcode,
2066
+ readOnly,
2067
+ rsv1
2068
+ };
2069
+ if (isBlob(data)) {
2070
+ if (this._state !== DEFAULT) {
2071
+ this.enqueue([this.getBlobData, data, this._compress, opts, cb]);
2034
2072
  } else {
2035
- this.dispatch(data, this._compress, opts, cb);
2073
+ this.getBlobData(data, this._compress, opts, cb);
2036
2074
  }
2075
+ } else if (this._state !== DEFAULT) {
2076
+ this.enqueue([this.dispatch, data, this._compress, opts, cb]);
2037
2077
  } else {
2038
- this.sendFrame(
2039
- _Sender.frame(data, {
2040
- [kByteLength]: byteLength,
2041
- fin: options.fin,
2042
- generateMask: this._generateMask,
2043
- mask: options.mask,
2044
- maskBuffer: this._maskBuffer,
2045
- opcode,
2046
- readOnly,
2047
- rsv1: false
2048
- }),
2049
- cb
2050
- );
2078
+ this.dispatch(data, this._compress, opts, cb);
2051
2079
  }
2052
2080
  }
2081
+ /**
2082
+ * Gets the contents of a blob as binary data.
2083
+ *
2084
+ * @param {Blob} blob The blob
2085
+ * @param {Boolean} [compress=false] Specifies whether or not to compress
2086
+ * the data
2087
+ * @param {Object} options Options object
2088
+ * @param {Boolean} [options.fin=false] Specifies whether or not to set the
2089
+ * FIN bit
2090
+ * @param {Function} [options.generateMask] The function used to generate the
2091
+ * masking key
2092
+ * @param {Boolean} [options.mask=false] Specifies whether or not to mask
2093
+ * `data`
2094
+ * @param {Buffer} [options.maskBuffer] The buffer used to store the masking
2095
+ * key
2096
+ * @param {Number} options.opcode The opcode
2097
+ * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
2098
+ * modified
2099
+ * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
2100
+ * RSV1 bit
2101
+ * @param {Function} [cb] Callback
2102
+ * @private
2103
+ */
2104
+ getBlobData(blob, compress, options, cb) {
2105
+ this._bufferedBytes += options[kByteLength];
2106
+ this._state = GET_BLOB_DATA;
2107
+ blob.arrayBuffer().then((arrayBuffer) => {
2108
+ if (this._socket.destroyed) {
2109
+ const err = new Error(
2110
+ "The socket was closed while the blob was being read"
2111
+ );
2112
+ process.nextTick(callCallbacks, this, err, cb);
2113
+ return;
2114
+ }
2115
+ this._bufferedBytes -= options[kByteLength];
2116
+ const data = toBuffer(arrayBuffer);
2117
+ if (!compress) {
2118
+ this._state = DEFAULT;
2119
+ this.sendFrame(_Sender.frame(data, options), cb);
2120
+ this.dequeue();
2121
+ } else {
2122
+ this.dispatch(data, compress, options, cb);
2123
+ }
2124
+ }).catch((err) => {
2125
+ process.nextTick(onError, this, err, cb);
2126
+ });
2127
+ }
2053
2128
  /**
2054
2129
  * Dispatches a message.
2055
2130
  *
@@ -2080,24 +2155,17 @@ var require_sender = __commonJS({
2080
2155
  }
2081
2156
  const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
2082
2157
  this._bufferedBytes += options[kByteLength];
2083
- this._deflating = true;
2158
+ this._state = DEFLATING;
2084
2159
  perMessageDeflate.compress(data, options.fin, (_, buf) => {
2085
2160
  if (this._socket.destroyed) {
2086
2161
  const err = new Error(
2087
2162
  "The socket was closed while data was being compressed"
2088
2163
  );
2089
- if (typeof cb === "function")
2090
- cb(err);
2091
- for (let i = 0; i < this._queue.length; i++) {
2092
- const params = this._queue[i];
2093
- const callback = params[params.length - 1];
2094
- if (typeof callback === "function")
2095
- callback(err);
2096
- }
2164
+ callCallbacks(this, err, cb);
2097
2165
  return;
2098
2166
  }
2099
2167
  this._bufferedBytes -= options[kByteLength];
2100
- this._deflating = false;
2168
+ this._state = DEFAULT;
2101
2169
  options.readOnly = false;
2102
2170
  this.sendFrame(_Sender.frame(buf, options), cb);
2103
2171
  this.dequeue();
@@ -2109,7 +2177,7 @@ var require_sender = __commonJS({
2109
2177
  * @private
2110
2178
  */
2111
2179
  dequeue() {
2112
- while (!this._deflating && this._queue.length) {
2180
+ while (this._state === DEFAULT && this._queue.length) {
2113
2181
  const params = this._queue.shift();
2114
2182
  this._bufferedBytes -= params[3][kByteLength];
2115
2183
  Reflect.apply(params[0], this, params.slice(1));
@@ -2144,12 +2212,26 @@ var require_sender = __commonJS({
2144
2212
  }
2145
2213
  };
2146
2214
  module.exports = Sender2;
2215
+ function callCallbacks(sender, err, cb) {
2216
+ if (typeof cb === "function")
2217
+ cb(err);
2218
+ for (let i = 0; i < sender._queue.length; i++) {
2219
+ const params = sender._queue[i];
2220
+ const callback = params[params.length - 1];
2221
+ if (typeof callback === "function")
2222
+ callback(err);
2223
+ }
2224
+ }
2225
+ function onError(sender, err, cb) {
2226
+ callCallbacks(sender, err, cb);
2227
+ sender.onerror(err);
2228
+ }
2147
2229
  }
2148
2230
  });
2149
2231
 
2150
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/event-target.js
2232
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/event-target.js
2151
2233
  var require_event_target = __commonJS({
2152
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/event-target.js"(exports, module) {
2234
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/event-target.js"(exports, module) {
2153
2235
  "use strict";
2154
2236
  var { kForOnEventAttribute, kListener } = require_constants();
2155
2237
  var kCode = Symbol("kCode");
@@ -2376,9 +2458,9 @@ var require_event_target = __commonJS({
2376
2458
  }
2377
2459
  });
2378
2460
 
2379
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/extension.js
2461
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/extension.js
2380
2462
  var require_extension = __commonJS({
2381
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/extension.js"(exports, module) {
2463
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/extension.js"(exports, module) {
2382
2464
  "use strict";
2383
2465
  var { tokenChars } = require_validation();
2384
2466
  function push(dest, name, elem) {
@@ -2546,9 +2628,9 @@ var require_extension = __commonJS({
2546
2628
  }
2547
2629
  });
2548
2630
 
2549
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket.js
2631
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket.js
2550
2632
  var require_websocket = __commonJS({
2551
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket.js"(exports, module) {
2633
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket.js"(exports, module) {
2552
2634
  "use strict";
2553
2635
  var EventEmitter = __require("events");
2554
2636
  var https = __require("https");
@@ -2561,6 +2643,7 @@ var require_websocket = __commonJS({
2561
2643
  var PerMessageDeflate = require_permessage_deflate();
2562
2644
  var Receiver2 = require_receiver();
2563
2645
  var Sender2 = require_sender();
2646
+ var { isBlob } = require_validation();
2564
2647
  var {
2565
2648
  BINARY_TYPES,
2566
2649
  EMPTY_BUFFER,
@@ -2597,6 +2680,7 @@ var require_websocket = __commonJS({
2597
2680
  this._closeFrameSent = false;
2598
2681
  this._closeMessage = EMPTY_BUFFER;
2599
2682
  this._closeTimer = null;
2683
+ this._errorEmitted = false;
2600
2684
  this._extensions = {};
2601
2685
  this._paused = false;
2602
2686
  this._protocol = "";
@@ -2625,9 +2709,8 @@ var require_websocket = __commonJS({
2625
2709
  }
2626
2710
  }
2627
2711
  /**
2628
- * This deviates from the WHATWG interface since ws doesn't support the
2629
- * required default "blob" type (instead we define a custom "nodebuffer"
2630
- * type).
2712
+ * For historical reasons, the custom "nodebuffer" type is used by the default
2713
+ * instead of "blob".
2631
2714
  *
2632
2715
  * @type {String}
2633
2716
  */
@@ -2732,10 +2815,12 @@ var require_websocket = __commonJS({
2732
2815
  maxPayload: options.maxPayload,
2733
2816
  skipUTF8Validation: options.skipUTF8Validation
2734
2817
  });
2735
- this._sender = new Sender2(socket, this._extensions, options.generateMask);
2818
+ const sender = new Sender2(socket, this._extensions, options.generateMask);
2736
2819
  this._receiver = receiver;
2820
+ this._sender = sender;
2737
2821
  this._socket = socket;
2738
2822
  receiver[kWebSocket] = this;
2823
+ sender[kWebSocket] = this;
2739
2824
  socket[kWebSocket] = this;
2740
2825
  receiver.on("conclude", receiverOnConclude);
2741
2826
  receiver.on("drain", receiverOnDrain);
@@ -2743,6 +2828,7 @@ var require_websocket = __commonJS({
2743
2828
  receiver.on("message", receiverOnMessage);
2744
2829
  receiver.on("ping", receiverOnPing);
2745
2830
  receiver.on("pong", receiverOnPong);
2831
+ sender.onerror = senderOnError;
2746
2832
  if (socket.setTimeout)
2747
2833
  socket.setTimeout(0);
2748
2834
  if (socket.setNoDelay)
@@ -2817,10 +2903,7 @@ var require_websocket = __commonJS({
2817
2903
  this._socket.end();
2818
2904
  }
2819
2905
  });
2820
- this._closeTimer = setTimeout(
2821
- this._socket.destroy.bind(this._socket),
2822
- closeTimeout
2823
- );
2906
+ setCloseTimer(this);
2824
2907
  }
2825
2908
  /**
2826
2909
  * Pause the socket.
@@ -3298,6 +3381,7 @@ var require_websocket = __commonJS({
3298
3381
  }
3299
3382
  function emitErrorAndClose(websocket, err) {
3300
3383
  websocket._readyState = WebSocket4.CLOSING;
3384
+ websocket._errorEmitted = true;
3301
3385
  websocket.emit("error", err);
3302
3386
  websocket.emitClose();
3303
3387
  }
@@ -3331,7 +3415,7 @@ var require_websocket = __commonJS({
3331
3415
  }
3332
3416
  function sendAfterClose(websocket, data, cb) {
3333
3417
  if (data) {
3334
- const length = toBuffer(data).length;
3418
+ const length = isBlob(data) ? data.size : toBuffer(data).length;
3335
3419
  if (websocket._socket)
3336
3420
  websocket._sender._bufferedBytes += length;
3337
3421
  else
@@ -3370,7 +3454,10 @@ var require_websocket = __commonJS({
3370
3454
  process.nextTick(resume, websocket._socket);
3371
3455
  websocket.close(err[kStatusCode]);
3372
3456
  }
3373
- websocket.emit("error", err);
3457
+ if (!websocket._errorEmitted) {
3458
+ websocket._errorEmitted = true;
3459
+ websocket.emit("error", err);
3460
+ }
3374
3461
  }
3375
3462
  function receiverOnFinish() {
3376
3463
  this[kWebSocket].emitClose();
@@ -3390,6 +3477,26 @@ var require_websocket = __commonJS({
3390
3477
  function resume(stream) {
3391
3478
  stream.resume();
3392
3479
  }
3480
+ function senderOnError(err) {
3481
+ const websocket = this[kWebSocket];
3482
+ if (websocket.readyState === WebSocket4.CLOSED)
3483
+ return;
3484
+ if (websocket.readyState === WebSocket4.OPEN) {
3485
+ websocket._readyState = WebSocket4.CLOSING;
3486
+ setCloseTimer(websocket);
3487
+ }
3488
+ this._socket.end();
3489
+ if (!websocket._errorEmitted) {
3490
+ websocket._errorEmitted = true;
3491
+ websocket.emit("error", err);
3492
+ }
3493
+ }
3494
+ function setCloseTimer(websocket) {
3495
+ websocket._closeTimer = setTimeout(
3496
+ websocket._socket.destroy.bind(websocket._socket),
3497
+ closeTimeout
3498
+ );
3499
+ }
3393
3500
  function socketOnClose() {
3394
3501
  const websocket = this[kWebSocket];
3395
3502
  this.removeListener("close", socketOnClose);
@@ -3433,9 +3540,9 @@ var require_websocket = __commonJS({
3433
3540
  }
3434
3541
  });
3435
3542
 
3436
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/subprotocol.js
3543
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/subprotocol.js
3437
3544
  var require_subprotocol = __commonJS({
3438
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/subprotocol.js"(exports, module) {
3545
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/subprotocol.js"(exports, module) {
3439
3546
  "use strict";
3440
3547
  var { tokenChars } = require_validation();
3441
3548
  function parse(header) {
@@ -3481,9 +3588,9 @@ var require_subprotocol = __commonJS({
3481
3588
  }
3482
3589
  });
3483
3590
 
3484
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket-server.js
3591
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket-server.js
3485
3592
  var require_websocket_server = __commonJS({
3486
- "../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket-server.js"(exports, module) {
3593
+ "../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/lib/websocket-server.js"(exports, module) {
3487
3594
  "use strict";
3488
3595
  var EventEmitter = __require("events");
3489
3596
  var http = __require("http");
@@ -3877,7 +3984,7 @@ var require_websocket_server = __commonJS({
3877
3984
  }
3878
3985
  });
3879
3986
 
3880
- // ../../node_modules/.pnpm/ws@8.17.1_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/wrapper.mjs
3987
+ // ../../node_modules/.pnpm/ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10/node_modules/ws/wrapper.mjs
3881
3988
  var wrapper_exports = {};
3882
3989
  __export(wrapper_exports, {
3883
3990
  Receiver: () => import_receiver.default,
@@ -3894,7 +4001,7 @@ var import_websocket = __toESM(require_websocket(), 1);
3894
4001
  var import_websocket_server = __toESM(require_websocket_server(), 1);
3895
4002
  var wrapper_default = import_websocket.default;
3896
4003
 
3897
- // ../../node_modules/.pnpm/isows@1.0.4_ws@8.17.1/node_modules/isows/_esm/utils.js
4004
+ // ../../node_modules/.pnpm/isows@1.0.6_ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10_/node_modules/isows/_esm/utils.js
3898
4005
  function getNativeWebSocket() {
3899
4006
  if (typeof WebSocket !== "undefined")
3900
4007
  return WebSocket;
@@ -3907,7 +4014,7 @@ function getNativeWebSocket() {
3907
4014
  throw new Error("`WebSocket` is not supported in this environment");
3908
4015
  }
3909
4016
 
3910
- // ../../node_modules/.pnpm/isows@1.0.4_ws@8.17.1/node_modules/isows/_esm/index.js
4017
+ // ../../node_modules/.pnpm/isows@1.0.6_ws@8.18.0_bufferutil@4.0.8_utf-8-validate@5.0.10_/node_modules/isows/_esm/index.js
3911
4018
  var WebSocket3 = (() => {
3912
4019
  try {
3913
4020
  return getNativeWebSocket();
@@ -3920,4 +4027,4 @@ var WebSocket3 = (() => {
3920
4027
  export {
3921
4028
  WebSocket3 as WebSocket
3922
4029
  };
3923
- //# sourceMappingURL=_esm-KB2T7G46.js.map
4030
+ //# sourceMappingURL=_esm-JXHAY2EM.js.map