@slicemachine/manager 0.1.1-dev-plugins.3 → 0.1.1-dev-plugins.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 (157) hide show
  1. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/CachedKeyDecoder.cjs +65 -0
  2. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/CachedKeyDecoder.cjs.map +1 -0
  3. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/CachedKeyDecoder.js +65 -0
  4. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/CachedKeyDecoder.js.map +1 -0
  5. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/DecodeError.cjs +40 -0
  6. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/DecodeError.cjs.map +1 -0
  7. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/DecodeError.js +40 -0
  8. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/DecodeError.js.map +1 -0
  9. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Decoder.cjs +801 -0
  10. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Decoder.cjs.map +1 -0
  11. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Decoder.js +801 -0
  12. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Decoder.js.map +1 -0
  13. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Encoder.cjs +351 -0
  14. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Encoder.cjs.map +1 -0
  15. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Encoder.js +351 -0
  16. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/Encoder.js.map +1 -0
  17. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtData.cjs +11 -0
  18. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtData.cjs.map +1 -0
  19. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtData.js +11 -0
  20. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtData.js.map +1 -0
  21. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtensionCodec.cjs +62 -0
  22. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtensionCodec.cjs.map +1 -0
  23. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtensionCodec.js +62 -0
  24. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/ExtensionCodec.js.map +1 -0
  25. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/decode.cjs +14 -0
  26. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/decode.cjs.map +1 -0
  27. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/decode.js +14 -0
  28. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/decode.js.map +1 -0
  29. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/encode.cjs +13 -0
  30. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/encode.cjs.map +1 -0
  31. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/encode.js +13 -0
  32. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/encode.js.map +1 -0
  33. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/timestamp.cjs +91 -0
  34. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/timestamp.cjs.map +1 -0
  35. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/timestamp.js +91 -0
  36. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/timestamp.js.map +1 -0
  37. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/int.cjs +31 -0
  38. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/int.cjs.map +1 -0
  39. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/int.js +31 -0
  40. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/int.js.map +1 -0
  41. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/prettyByte.cjs +7 -0
  42. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/prettyByte.cjs.map +1 -0
  43. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/prettyByte.js +7 -0
  44. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/prettyByte.js.map +1 -0
  45. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/typedArrays.cjs +23 -0
  46. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/typedArrays.cjs.map +1 -0
  47. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/typedArrays.js +23 -0
  48. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/typedArrays.js.map +1 -0
  49. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/utf8.cjs +132 -0
  50. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/utf8.cjs.map +1 -0
  51. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/utf8.js +132 -0
  52. package/dist/__node_modules/@msgpack/msgpack/dist.es5_esm/utils/utf8.js.map +1 -0
  53. package/dist/__node_modules/r19/dist/client/createRPCClient.cjs +29 -11
  54. package/dist/__node_modules/r19/dist/client/createRPCClient.cjs.map +1 -1
  55. package/dist/__node_modules/r19/dist/client/createRPCClient.js +29 -11
  56. package/dist/__node_modules/r19/dist/client/createRPCClient.js.map +1 -1
  57. package/dist/__node_modules/r19/dist/createRPCMiddleware.cjs +5 -4
  58. package/dist/__node_modules/r19/dist/createRPCMiddleware.cjs.map +1 -1
  59. package/dist/__node_modules/r19/dist/createRPCMiddleware.js +6 -5
  60. package/dist/__node_modules/r19/dist/createRPCMiddleware.js.map +1 -1
  61. package/dist/__node_modules/r19/dist/handleRPCRequest.cjs +39 -110
  62. package/dist/__node_modules/r19/dist/handleRPCRequest.cjs.map +1 -1
  63. package/dist/__node_modules/r19/dist/handleRPCRequest.js +39 -110
  64. package/dist/__node_modules/r19/dist/handleRPCRequest.js.map +1 -1
  65. package/dist/__node_modules/r19/dist/lib/replaceLeaves.cjs +28 -0
  66. package/dist/__node_modules/r19/dist/lib/replaceLeaves.cjs.map +1 -0
  67. package/dist/__node_modules/r19/dist/lib/replaceLeaves.js +28 -0
  68. package/dist/__node_modules/r19/dist/lib/replaceLeaves.js.map +1 -0
  69. package/dist/managers/createSliceMachineManagerMiddleware.cjs +0 -4
  70. package/dist/managers/createSliceMachineManagerMiddleware.cjs.map +1 -1
  71. package/dist/managers/createSliceMachineManagerMiddleware.js +0 -4
  72. package/dist/managers/createSliceMachineManagerMiddleware.js.map +1 -1
  73. package/dist/managers/screenshots/ScreenshotsManager.cjs +33 -16
  74. package/dist/managers/screenshots/ScreenshotsManager.cjs.map +1 -1
  75. package/dist/managers/screenshots/ScreenshotsManager.d.ts +2 -4
  76. package/dist/managers/screenshots/ScreenshotsManager.js +34 -17
  77. package/dist/managers/screenshots/ScreenshotsManager.js.map +1 -1
  78. package/dist/test/createSliceMachineManagerMSWHandler.cjs +3 -10
  79. package/dist/test/createSliceMachineManagerMSWHandler.cjs.map +1 -1
  80. package/dist/test/createSliceMachineManagerMSWHandler.js +3 -10
  81. package/dist/test/createSliceMachineManagerMSWHandler.js.map +1 -1
  82. package/package.json +4 -4
  83. package/src/client/index.ts +1 -1
  84. package/src/managers/screenshots/ScreenshotsManager.ts +65 -18
  85. package/src/test/createSliceMachineManagerMSWHandler.ts +2 -14
  86. package/dist/__node_modules/busboy/lib/index.cjs +0 -51
  87. package/dist/__node_modules/busboy/lib/index.cjs.map +0 -1
  88. package/dist/__node_modules/busboy/lib/index.js +0 -52
  89. package/dist/__node_modules/busboy/lib/index.js.map +0 -1
  90. package/dist/__node_modules/busboy/lib/types/multipart.cjs +0 -1046
  91. package/dist/__node_modules/busboy/lib/types/multipart.cjs.map +0 -1
  92. package/dist/__node_modules/busboy/lib/types/multipart.js +0 -1047
  93. package/dist/__node_modules/busboy/lib/types/multipart.js.map +0 -1
  94. package/dist/__node_modules/busboy/lib/types/urlencoded.cjs +0 -545
  95. package/dist/__node_modules/busboy/lib/types/urlencoded.cjs.map +0 -1
  96. package/dist/__node_modules/busboy/lib/types/urlencoded.js +0 -546
  97. package/dist/__node_modules/busboy/lib/types/urlencoded.js.map +0 -1
  98. package/dist/__node_modules/busboy/lib/utils.cjs +0 -1681
  99. package/dist/__node_modules/busboy/lib/utils.cjs.map +0 -1
  100. package/dist/__node_modules/busboy/lib/utils.js +0 -1682
  101. package/dist/__node_modules/busboy/lib/utils.js.map +0 -1
  102. package/dist/__node_modules/devalue/src/constants.cjs +0 -15
  103. package/dist/__node_modules/devalue/src/constants.cjs.map +0 -1
  104. package/dist/__node_modules/devalue/src/constants.js +0 -15
  105. package/dist/__node_modules/devalue/src/constants.js.map +0 -1
  106. package/dist/__node_modules/devalue/src/parse.cjs +0 -95
  107. package/dist/__node_modules/devalue/src/parse.cjs.map +0 -1
  108. package/dist/__node_modules/devalue/src/parse.js +0 -95
  109. package/dist/__node_modules/devalue/src/parse.js.map +0 -1
  110. package/dist/__node_modules/devalue/src/stringify.cjs +0 -140
  111. package/dist/__node_modules/devalue/src/stringify.cjs.map +0 -1
  112. package/dist/__node_modules/devalue/src/stringify.js +0 -140
  113. package/dist/__node_modules/devalue/src/stringify.js.map +0 -1
  114. package/dist/__node_modules/devalue/src/uneval.cjs +0 -4
  115. package/dist/__node_modules/devalue/src/uneval.cjs.map +0 -1
  116. package/dist/__node_modules/devalue/src/uneval.js +0 -3
  117. package/dist/__node_modules/devalue/src/uneval.js.map +0 -1
  118. package/dist/__node_modules/devalue/src/utils.cjs +0 -68
  119. package/dist/__node_modules/devalue/src/utils.cjs.map +0 -1
  120. package/dist/__node_modules/devalue/src/utils.js +0 -68
  121. package/dist/__node_modules/devalue/src/utils.js.map +0 -1
  122. package/dist/__node_modules/formdata-node/lib/browser.cjs +0 -16
  123. package/dist/__node_modules/formdata-node/lib/browser.cjs.map +0 -1
  124. package/dist/__node_modules/formdata-node/lib/browser.js +0 -16
  125. package/dist/__node_modules/formdata-node/lib/browser.js.map +0 -1
  126. package/dist/__node_modules/r19/dist/constants.cjs +0 -5
  127. package/dist/__node_modules/r19/dist/constants.cjs.map +0 -1
  128. package/dist/__node_modules/r19/dist/constants.js +0 -5
  129. package/dist/__node_modules/r19/dist/constants.js.map +0 -1
  130. package/dist/__node_modules/r19/dist/lib/encodeFormData.cjs +0 -46
  131. package/dist/__node_modules/r19/dist/lib/encodeFormData.cjs.map +0 -1
  132. package/dist/__node_modules/r19/dist/lib/encodeFormData.js +0 -46
  133. package/dist/__node_modules/r19/dist/lib/encodeFormData.js.map +0 -1
  134. package/dist/__node_modules/r19/dist/lib/flattenObject.cjs +0 -43
  135. package/dist/__node_modules/r19/dist/lib/flattenObject.cjs.map +0 -1
  136. package/dist/__node_modules/r19/dist/lib/flattenObject.js +0 -43
  137. package/dist/__node_modules/r19/dist/lib/flattenObject.js.map +0 -1
  138. package/dist/__node_modules/r19/dist/lib/formDataToObject.client.cjs +0 -19
  139. package/dist/__node_modules/r19/dist/lib/formDataToObject.client.cjs.map +0 -1
  140. package/dist/__node_modules/r19/dist/lib/formDataToObject.client.js +0 -19
  141. package/dist/__node_modules/r19/dist/lib/formDataToObject.client.js.map +0 -1
  142. package/dist/__node_modules/r19/dist/lib/objectToFormData.client.cjs +0 -20
  143. package/dist/__node_modules/r19/dist/lib/objectToFormData.client.cjs.map +0 -1
  144. package/dist/__node_modules/r19/dist/lib/objectToFormData.client.js +0 -20
  145. package/dist/__node_modules/r19/dist/lib/objectToFormData.client.js.map +0 -1
  146. package/dist/__node_modules/r19/dist/lib/objectToFormData.server.cjs +0 -22
  147. package/dist/__node_modules/r19/dist/lib/objectToFormData.server.cjs.map +0 -1
  148. package/dist/__node_modules/r19/dist/lib/objectToFormData.server.js +0 -22
  149. package/dist/__node_modules/r19/dist/lib/objectToFormData.server.js.map +0 -1
  150. package/dist/__node_modules/r19/dist/lib/unflattenObject.cjs +0 -20
  151. package/dist/__node_modules/r19/dist/lib/unflattenObject.cjs.map +0 -1
  152. package/dist/__node_modules/r19/dist/lib/unflattenObject.js +0 -20
  153. package/dist/__node_modules/r19/dist/lib/unflattenObject.js.map +0 -1
  154. package/dist/__node_modules/streamsearch/lib/sbmh.cjs +0 -393
  155. package/dist/__node_modules/streamsearch/lib/sbmh.cjs.map +0 -1
  156. package/dist/__node_modules/streamsearch/lib/sbmh.js +0 -394
  157. package/dist/__node_modules/streamsearch/lib/sbmh.js.map +0 -1
@@ -1,546 +0,0 @@
1
- import require$$0 from "stream";
2
- import utils from "../utils.js";
3
- const { Writable } = require$$0;
4
- const { getDecoder } = utils;
5
- class URLEncoded extends Writable {
6
- constructor(cfg) {
7
- const streamOpts = {
8
- autoDestroy: true,
9
- emitClose: true,
10
- highWaterMark: typeof cfg.highWaterMark === "number" ? cfg.highWaterMark : void 0
11
- };
12
- super(streamOpts);
13
- let charset = cfg.defCharset || "utf8";
14
- if (cfg.conType.params && typeof cfg.conType.params.charset === "string")
15
- charset = cfg.conType.params.charset;
16
- this.charset = charset;
17
- const limits = cfg.limits;
18
- this.fieldSizeLimit = limits && typeof limits.fieldSize === "number" ? limits.fieldSize : 1 * 1024 * 1024;
19
- this.fieldsLimit = limits && typeof limits.fields === "number" ? limits.fields : Infinity;
20
- this.fieldNameSizeLimit = limits && typeof limits.fieldNameSize === "number" ? limits.fieldNameSize : 100;
21
- this._inKey = true;
22
- this._keyTrunc = false;
23
- this._valTrunc = false;
24
- this._bytesKey = 0;
25
- this._bytesVal = 0;
26
- this._fields = 0;
27
- this._key = "";
28
- this._val = "";
29
- this._byte = -2;
30
- this._lastPos = 0;
31
- this._encode = 0;
32
- this._decoder = getDecoder(charset);
33
- }
34
- static detect(conType) {
35
- return conType.type === "application" && conType.subtype === "x-www-form-urlencoded";
36
- }
37
- _write(chunk, enc, cb) {
38
- if (this._fields >= this.fieldsLimit)
39
- return cb();
40
- let i = 0;
41
- const len = chunk.length;
42
- this._lastPos = 0;
43
- if (this._byte !== -2) {
44
- i = readPctEnc(this, chunk, i, len);
45
- if (i === -1)
46
- return cb(new Error("Malformed urlencoded form"));
47
- if (i >= len)
48
- return cb();
49
- if (this._inKey)
50
- ++this._bytesKey;
51
- else
52
- ++this._bytesVal;
53
- }
54
- main:
55
- while (i < len) {
56
- if (this._inKey) {
57
- i = skipKeyBytes(this, chunk, i, len);
58
- while (i < len) {
59
- switch (chunk[i]) {
60
- case 61:
61
- if (this._lastPos < i)
62
- this._key += chunk.latin1Slice(this._lastPos, i);
63
- this._lastPos = ++i;
64
- this._key = this._decoder(this._key, this._encode);
65
- this._encode = 0;
66
- this._inKey = false;
67
- continue main;
68
- case 38:
69
- if (this._lastPos < i)
70
- this._key += chunk.latin1Slice(this._lastPos, i);
71
- this._lastPos = ++i;
72
- this._key = this._decoder(this._key, this._encode);
73
- this._encode = 0;
74
- if (this._bytesKey > 0) {
75
- this.emit(
76
- "field",
77
- this._key,
78
- "",
79
- {
80
- nameTruncated: this._keyTrunc,
81
- valueTruncated: false,
82
- encoding: this.charset,
83
- mimeType: "text/plain"
84
- }
85
- );
86
- }
87
- this._key = "";
88
- this._val = "";
89
- this._keyTrunc = false;
90
- this._valTrunc = false;
91
- this._bytesKey = 0;
92
- this._bytesVal = 0;
93
- if (++this._fields >= this.fieldsLimit) {
94
- this.emit("fieldsLimit");
95
- return cb();
96
- }
97
- continue;
98
- case 43:
99
- if (this._lastPos < i)
100
- this._key += chunk.latin1Slice(this._lastPos, i);
101
- this._key += " ";
102
- this._lastPos = i + 1;
103
- break;
104
- case 37:
105
- if (this._encode === 0)
106
- this._encode = 1;
107
- if (this._lastPos < i)
108
- this._key += chunk.latin1Slice(this._lastPos, i);
109
- this._lastPos = i + 1;
110
- this._byte = -1;
111
- i = readPctEnc(this, chunk, i + 1, len);
112
- if (i === -1)
113
- return cb(new Error("Malformed urlencoded form"));
114
- if (i >= len)
115
- return cb();
116
- ++this._bytesKey;
117
- i = skipKeyBytes(this, chunk, i, len);
118
- continue;
119
- }
120
- ++i;
121
- ++this._bytesKey;
122
- i = skipKeyBytes(this, chunk, i, len);
123
- }
124
- if (this._lastPos < i)
125
- this._key += chunk.latin1Slice(this._lastPos, i);
126
- } else {
127
- i = skipValBytes(this, chunk, i, len);
128
- while (i < len) {
129
- switch (chunk[i]) {
130
- case 38:
131
- if (this._lastPos < i)
132
- this._val += chunk.latin1Slice(this._lastPos, i);
133
- this._lastPos = ++i;
134
- this._inKey = true;
135
- this._val = this._decoder(this._val, this._encode);
136
- this._encode = 0;
137
- if (this._bytesKey > 0 || this._bytesVal > 0) {
138
- this.emit(
139
- "field",
140
- this._key,
141
- this._val,
142
- {
143
- nameTruncated: this._keyTrunc,
144
- valueTruncated: this._valTrunc,
145
- encoding: this.charset,
146
- mimeType: "text/plain"
147
- }
148
- );
149
- }
150
- this._key = "";
151
- this._val = "";
152
- this._keyTrunc = false;
153
- this._valTrunc = false;
154
- this._bytesKey = 0;
155
- this._bytesVal = 0;
156
- if (++this._fields >= this.fieldsLimit) {
157
- this.emit("fieldsLimit");
158
- return cb();
159
- }
160
- continue main;
161
- case 43:
162
- if (this._lastPos < i)
163
- this._val += chunk.latin1Slice(this._lastPos, i);
164
- this._val += " ";
165
- this._lastPos = i + 1;
166
- break;
167
- case 37:
168
- if (this._encode === 0)
169
- this._encode = 1;
170
- if (this._lastPos < i)
171
- this._val += chunk.latin1Slice(this._lastPos, i);
172
- this._lastPos = i + 1;
173
- this._byte = -1;
174
- i = readPctEnc(this, chunk, i + 1, len);
175
- if (i === -1)
176
- return cb(new Error("Malformed urlencoded form"));
177
- if (i >= len)
178
- return cb();
179
- ++this._bytesVal;
180
- i = skipValBytes(this, chunk, i, len);
181
- continue;
182
- }
183
- ++i;
184
- ++this._bytesVal;
185
- i = skipValBytes(this, chunk, i, len);
186
- }
187
- if (this._lastPos < i)
188
- this._val += chunk.latin1Slice(this._lastPos, i);
189
- }
190
- }
191
- cb();
192
- }
193
- _final(cb) {
194
- if (this._byte !== -2)
195
- return cb(new Error("Malformed urlencoded form"));
196
- if (!this._inKey || this._bytesKey > 0 || this._bytesVal > 0) {
197
- if (this._inKey)
198
- this._key = this._decoder(this._key, this._encode);
199
- else
200
- this._val = this._decoder(this._val, this._encode);
201
- this.emit(
202
- "field",
203
- this._key,
204
- this._val,
205
- {
206
- nameTruncated: this._keyTrunc,
207
- valueTruncated: this._valTrunc,
208
- encoding: this.charset,
209
- mimeType: "text/plain"
210
- }
211
- );
212
- }
213
- cb();
214
- }
215
- }
216
- function readPctEnc(self, chunk, pos, len) {
217
- if (pos >= len)
218
- return len;
219
- if (self._byte === -1) {
220
- const hexUpper = HEX_VALUES[chunk[pos++]];
221
- if (hexUpper === -1)
222
- return -1;
223
- if (hexUpper >= 8)
224
- self._encode = 2;
225
- if (pos < len) {
226
- const hexLower = HEX_VALUES[chunk[pos++]];
227
- if (hexLower === -1)
228
- return -1;
229
- if (self._inKey)
230
- self._key += String.fromCharCode((hexUpper << 4) + hexLower);
231
- else
232
- self._val += String.fromCharCode((hexUpper << 4) + hexLower);
233
- self._byte = -2;
234
- self._lastPos = pos;
235
- } else {
236
- self._byte = hexUpper;
237
- }
238
- } else {
239
- const hexLower = HEX_VALUES[chunk[pos++]];
240
- if (hexLower === -1)
241
- return -1;
242
- if (self._inKey)
243
- self._key += String.fromCharCode((self._byte << 4) + hexLower);
244
- else
245
- self._val += String.fromCharCode((self._byte << 4) + hexLower);
246
- self._byte = -2;
247
- self._lastPos = pos;
248
- }
249
- return pos;
250
- }
251
- function skipKeyBytes(self, chunk, pos, len) {
252
- if (self._bytesKey > self.fieldNameSizeLimit) {
253
- if (!self._keyTrunc) {
254
- if (self._lastPos < pos)
255
- self._key += chunk.latin1Slice(self._lastPos, pos - 1);
256
- }
257
- self._keyTrunc = true;
258
- for (; pos < len; ++pos) {
259
- const code = chunk[pos];
260
- if (code === 61 || code === 38)
261
- break;
262
- ++self._bytesKey;
263
- }
264
- self._lastPos = pos;
265
- }
266
- return pos;
267
- }
268
- function skipValBytes(self, chunk, pos, len) {
269
- if (self._bytesVal > self.fieldSizeLimit) {
270
- if (!self._valTrunc) {
271
- if (self._lastPos < pos)
272
- self._val += chunk.latin1Slice(self._lastPos, pos - 1);
273
- }
274
- self._valTrunc = true;
275
- for (; pos < len; ++pos) {
276
- if (chunk[pos] === 38)
277
- break;
278
- ++self._bytesVal;
279
- }
280
- self._lastPos = pos;
281
- }
282
- return pos;
283
- }
284
- const HEX_VALUES = [
285
- -1,
286
- -1,
287
- -1,
288
- -1,
289
- -1,
290
- -1,
291
- -1,
292
- -1,
293
- -1,
294
- -1,
295
- -1,
296
- -1,
297
- -1,
298
- -1,
299
- -1,
300
- -1,
301
- -1,
302
- -1,
303
- -1,
304
- -1,
305
- -1,
306
- -1,
307
- -1,
308
- -1,
309
- -1,
310
- -1,
311
- -1,
312
- -1,
313
- -1,
314
- -1,
315
- -1,
316
- -1,
317
- -1,
318
- -1,
319
- -1,
320
- -1,
321
- -1,
322
- -1,
323
- -1,
324
- -1,
325
- -1,
326
- -1,
327
- -1,
328
- -1,
329
- -1,
330
- -1,
331
- -1,
332
- -1,
333
- 0,
334
- 1,
335
- 2,
336
- 3,
337
- 4,
338
- 5,
339
- 6,
340
- 7,
341
- 8,
342
- 9,
343
- -1,
344
- -1,
345
- -1,
346
- -1,
347
- -1,
348
- -1,
349
- -1,
350
- 10,
351
- 11,
352
- 12,
353
- 13,
354
- 14,
355
- 15,
356
- -1,
357
- -1,
358
- -1,
359
- -1,
360
- -1,
361
- -1,
362
- -1,
363
- -1,
364
- -1,
365
- -1,
366
- -1,
367
- -1,
368
- -1,
369
- -1,
370
- -1,
371
- -1,
372
- -1,
373
- -1,
374
- -1,
375
- -1,
376
- -1,
377
- -1,
378
- -1,
379
- -1,
380
- -1,
381
- -1,
382
- 10,
383
- 11,
384
- 12,
385
- 13,
386
- 14,
387
- 15,
388
- -1,
389
- -1,
390
- -1,
391
- -1,
392
- -1,
393
- -1,
394
- -1,
395
- -1,
396
- -1,
397
- -1,
398
- -1,
399
- -1,
400
- -1,
401
- -1,
402
- -1,
403
- -1,
404
- -1,
405
- -1,
406
- -1,
407
- -1,
408
- -1,
409
- -1,
410
- -1,
411
- -1,
412
- -1,
413
- -1,
414
- -1,
415
- -1,
416
- -1,
417
- -1,
418
- -1,
419
- -1,
420
- -1,
421
- -1,
422
- -1,
423
- -1,
424
- -1,
425
- -1,
426
- -1,
427
- -1,
428
- -1,
429
- -1,
430
- -1,
431
- -1,
432
- -1,
433
- -1,
434
- -1,
435
- -1,
436
- -1,
437
- -1,
438
- -1,
439
- -1,
440
- -1,
441
- -1,
442
- -1,
443
- -1,
444
- -1,
445
- -1,
446
- -1,
447
- -1,
448
- -1,
449
- -1,
450
- -1,
451
- -1,
452
- -1,
453
- -1,
454
- -1,
455
- -1,
456
- -1,
457
- -1,
458
- -1,
459
- -1,
460
- -1,
461
- -1,
462
- -1,
463
- -1,
464
- -1,
465
- -1,
466
- -1,
467
- -1,
468
- -1,
469
- -1,
470
- -1,
471
- -1,
472
- -1,
473
- -1,
474
- -1,
475
- -1,
476
- -1,
477
- -1,
478
- -1,
479
- -1,
480
- -1,
481
- -1,
482
- -1,
483
- -1,
484
- -1,
485
- -1,
486
- -1,
487
- -1,
488
- -1,
489
- -1,
490
- -1,
491
- -1,
492
- -1,
493
- -1,
494
- -1,
495
- -1,
496
- -1,
497
- -1,
498
- -1,
499
- -1,
500
- -1,
501
- -1,
502
- -1,
503
- -1,
504
- -1,
505
- -1,
506
- -1,
507
- -1,
508
- -1,
509
- -1,
510
- -1,
511
- -1,
512
- -1,
513
- -1,
514
- -1,
515
- -1,
516
- -1,
517
- -1,
518
- -1,
519
- -1,
520
- -1,
521
- -1,
522
- -1,
523
- -1,
524
- -1,
525
- -1,
526
- -1,
527
- -1,
528
- -1,
529
- -1,
530
- -1,
531
- -1,
532
- -1,
533
- -1,
534
- -1,
535
- -1,
536
- -1,
537
- -1,
538
- -1,
539
- -1,
540
- -1
541
- ];
542
- var urlencoded = URLEncoded;
543
- export {
544
- urlencoded as default
545
- };
546
- //# sourceMappingURL=urlencoded.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"urlencoded.js","sources":["../../../../../../../node_modules/busboy/lib/types/urlencoded.js"],"sourcesContent":["'use strict';\n\nconst { Writable } = require('stream');\n\nconst { getDecoder } = require('../utils.js');\n\nclass URLEncoded extends Writable {\n constructor(cfg) {\n const streamOpts = {\n autoDestroy: true,\n emitClose: true,\n highWaterMark: (typeof cfg.highWaterMark === 'number'\n ? cfg.highWaterMark\n : undefined),\n };\n super(streamOpts);\n\n let charset = (cfg.defCharset || 'utf8');\n if (cfg.conType.params && typeof cfg.conType.params.charset === 'string')\n charset = cfg.conType.params.charset;\n\n this.charset = charset;\n\n const limits = cfg.limits;\n this.fieldSizeLimit = (limits && typeof limits.fieldSize === 'number'\n ? limits.fieldSize\n : 1 * 1024 * 1024);\n this.fieldsLimit = (limits && typeof limits.fields === 'number'\n ? limits.fields\n : Infinity);\n this.fieldNameSizeLimit = (\n limits && typeof limits.fieldNameSize === 'number'\n ? limits.fieldNameSize\n : 100\n );\n\n this._inKey = true;\n this._keyTrunc = false;\n this._valTrunc = false;\n this._bytesKey = 0;\n this._bytesVal = 0;\n this._fields = 0;\n this._key = '';\n this._val = '';\n this._byte = -2;\n this._lastPos = 0;\n this._encode = 0;\n this._decoder = getDecoder(charset);\n }\n\n static detect(conType) {\n return (conType.type === 'application'\n && conType.subtype === 'x-www-form-urlencoded');\n }\n\n _write(chunk, enc, cb) {\n if (this._fields >= this.fieldsLimit)\n return cb();\n\n let i = 0;\n const len = chunk.length;\n this._lastPos = 0;\n\n // Check if we last ended mid-percent-encoded byte\n if (this._byte !== -2) {\n i = readPctEnc(this, chunk, i, len);\n if (i === -1)\n return cb(new Error('Malformed urlencoded form'));\n if (i >= len)\n return cb();\n if (this._inKey)\n ++this._bytesKey;\n else\n ++this._bytesVal;\n }\n\nmain:\n while (i < len) {\n if (this._inKey) {\n // Parsing key\n\n i = skipKeyBytes(this, chunk, i, len);\n\n while (i < len) {\n switch (chunk[i]) {\n case 61: // '='\n if (this._lastPos < i)\n this._key += chunk.latin1Slice(this._lastPos, i);\n this._lastPos = ++i;\n this._key = this._decoder(this._key, this._encode);\n this._encode = 0;\n this._inKey = false;\n continue main;\n case 38: // '&'\n if (this._lastPos < i)\n this._key += chunk.latin1Slice(this._lastPos, i);\n this._lastPos = ++i;\n this._key = this._decoder(this._key, this._encode);\n this._encode = 0;\n if (this._bytesKey > 0) {\n this.emit(\n 'field',\n this._key,\n '',\n { nameTruncated: this._keyTrunc,\n valueTruncated: false,\n encoding: this.charset,\n mimeType: 'text/plain' }\n );\n }\n this._key = '';\n this._val = '';\n this._keyTrunc = false;\n this._valTrunc = false;\n this._bytesKey = 0;\n this._bytesVal = 0;\n if (++this._fields >= this.fieldsLimit) {\n this.emit('fieldsLimit');\n return cb();\n }\n continue;\n case 43: // '+'\n if (this._lastPos < i)\n this._key += chunk.latin1Slice(this._lastPos, i);\n this._key += ' ';\n this._lastPos = i + 1;\n break;\n case 37: // '%'\n if (this._encode === 0)\n this._encode = 1;\n if (this._lastPos < i)\n this._key += chunk.latin1Slice(this._lastPos, i);\n this._lastPos = i + 1;\n this._byte = -1;\n i = readPctEnc(this, chunk, i + 1, len);\n if (i === -1)\n return cb(new Error('Malformed urlencoded form'));\n if (i >= len)\n return cb();\n ++this._bytesKey;\n i = skipKeyBytes(this, chunk, i, len);\n continue;\n }\n ++i;\n ++this._bytesKey;\n i = skipKeyBytes(this, chunk, i, len);\n }\n if (this._lastPos < i)\n this._key += chunk.latin1Slice(this._lastPos, i);\n } else {\n // Parsing value\n\n i = skipValBytes(this, chunk, i, len);\n\n while (i < len) {\n switch (chunk[i]) {\n case 38: // '&'\n if (this._lastPos < i)\n this._val += chunk.latin1Slice(this._lastPos, i);\n this._lastPos = ++i;\n this._inKey = true;\n this._val = this._decoder(this._val, this._encode);\n this._encode = 0;\n if (this._bytesKey > 0 || this._bytesVal > 0) {\n this.emit(\n 'field',\n this._key,\n this._val,\n { nameTruncated: this._keyTrunc,\n valueTruncated: this._valTrunc,\n encoding: this.charset,\n mimeType: 'text/plain' }\n );\n }\n this._key = '';\n this._val = '';\n this._keyTrunc = false;\n this._valTrunc = false;\n this._bytesKey = 0;\n this._bytesVal = 0;\n if (++this._fields >= this.fieldsLimit) {\n this.emit('fieldsLimit');\n return cb();\n }\n continue main;\n case 43: // '+'\n if (this._lastPos < i)\n this._val += chunk.latin1Slice(this._lastPos, i);\n this._val += ' ';\n this._lastPos = i + 1;\n break;\n case 37: // '%'\n if (this._encode === 0)\n this._encode = 1;\n if (this._lastPos < i)\n this._val += chunk.latin1Slice(this._lastPos, i);\n this._lastPos = i + 1;\n this._byte = -1;\n i = readPctEnc(this, chunk, i + 1, len);\n if (i === -1)\n return cb(new Error('Malformed urlencoded form'));\n if (i >= len)\n return cb();\n ++this._bytesVal;\n i = skipValBytes(this, chunk, i, len);\n continue;\n }\n ++i;\n ++this._bytesVal;\n i = skipValBytes(this, chunk, i, len);\n }\n if (this._lastPos < i)\n this._val += chunk.latin1Slice(this._lastPos, i);\n }\n }\n\n cb();\n }\n\n _final(cb) {\n if (this._byte !== -2)\n return cb(new Error('Malformed urlencoded form'));\n if (!this._inKey || this._bytesKey > 0 || this._bytesVal > 0) {\n if (this._inKey)\n this._key = this._decoder(this._key, this._encode);\n else\n this._val = this._decoder(this._val, this._encode);\n this.emit(\n 'field',\n this._key,\n this._val,\n { nameTruncated: this._keyTrunc,\n valueTruncated: this._valTrunc,\n encoding: this.charset,\n mimeType: 'text/plain' }\n );\n }\n cb();\n }\n}\n\nfunction readPctEnc(self, chunk, pos, len) {\n if (pos >= len)\n return len;\n\n if (self._byte === -1) {\n // We saw a '%' but no hex characters yet\n const hexUpper = HEX_VALUES[chunk[pos++]];\n if (hexUpper === -1)\n return -1;\n\n if (hexUpper >= 8)\n self._encode = 2; // Indicate high bits detected\n\n if (pos < len) {\n // Both hex characters are in this chunk\n const hexLower = HEX_VALUES[chunk[pos++]];\n if (hexLower === -1)\n return -1;\n\n if (self._inKey)\n self._key += String.fromCharCode((hexUpper << 4) + hexLower);\n else\n self._val += String.fromCharCode((hexUpper << 4) + hexLower);\n\n self._byte = -2;\n self._lastPos = pos;\n } else {\n // Only one hex character was available in this chunk\n self._byte = hexUpper;\n }\n } else {\n // We saw only one hex character so far\n const hexLower = HEX_VALUES[chunk[pos++]];\n if (hexLower === -1)\n return -1;\n\n if (self._inKey)\n self._key += String.fromCharCode((self._byte << 4) + hexLower);\n else\n self._val += String.fromCharCode((self._byte << 4) + hexLower);\n\n self._byte = -2;\n self._lastPos = pos;\n }\n\n return pos;\n}\n\nfunction skipKeyBytes(self, chunk, pos, len) {\n // Skip bytes if we've truncated\n if (self._bytesKey > self.fieldNameSizeLimit) {\n if (!self._keyTrunc) {\n if (self._lastPos < pos)\n self._key += chunk.latin1Slice(self._lastPos, pos - 1);\n }\n self._keyTrunc = true;\n for (; pos < len; ++pos) {\n const code = chunk[pos];\n if (code === 61/* '=' */ || code === 38/* '&' */)\n break;\n ++self._bytesKey;\n }\n self._lastPos = pos;\n }\n\n return pos;\n}\n\nfunction skipValBytes(self, chunk, pos, len) {\n // Skip bytes if we've truncated\n if (self._bytesVal > self.fieldSizeLimit) {\n if (!self._valTrunc) {\n if (self._lastPos < pos)\n self._val += chunk.latin1Slice(self._lastPos, pos - 1);\n }\n self._valTrunc = true;\n for (; pos < len; ++pos) {\n if (chunk[pos] === 38/* '&' */)\n break;\n ++self._bytesVal;\n }\n self._lastPos = pos;\n }\n\n return pos;\n}\n\n/* eslint-disable no-multi-spaces */\nconst HEX_VALUES = [\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1,\n -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n];\n/* eslint-enable no-multi-spaces */\n\nmodule.exports = URLEncoded;\n"],"names":["require$$1"],"mappings":"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,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC3D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAG;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5D;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAC9D;AAGA,IAAA,aAAiB;"}