qs 6.1.1 → 6.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nyc_output/029de7ebb4082eaaba62a345c454be63.json +1 -0
- package/.nyc_output/e616cdc4199f5d1583ad7e3c74346432.json +1 -0
- package/.travis.yml +134 -30
- package/CHANGELOG.md +11 -0
- package/README.md +3 -3
- package/component.json +1 -1
- package/coverage/base.css +212 -0
- package/coverage/coverage-final.json +10 -0
- package/coverage/index.html +106 -0
- package/coverage/lib/formats.js.html +134 -0
- package/coverage/lib/index.html +145 -0
- package/coverage/lib/index.js.html +98 -0
- package/coverage/lib/parse.js.html +1178 -0
- package/coverage/lib/stringify.js.html +1133 -0
- package/coverage/lib/utils.js.html +1085 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +1 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +158 -0
- package/coverage/test/empty-keys-cases.js.html +866 -0
- package/coverage/test/index.html +132 -0
- package/coverage/test/parse.js.html +4601 -0
- package/coverage/test/stringify.js.html +3995 -0
- package/coverage/test/utils.js.html +1256 -0
- package/dist/qs.js +24 -17
- package/lib/index.js +0 -0
- package/lib/parse.js +13 -10
- package/lib/stringify.js +0 -0
- package/lib/utils.js +9 -5
- package/package.json +3 -2
- package/test/parse.js +38 -3
- package/test/stringify.js +0 -0
- package/test/utils.js +0 -0
- package/.npmignore +0 -18
|
@@ -0,0 +1,1085 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<title>Code coverage report for lib/utils.js</title>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<link rel="stylesheet" href="../prettify.css" />
|
|
7
|
+
<link rel="stylesheet" href="../base.css" />
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
9
|
+
<style type='text/css'>
|
|
10
|
+
.coverage-summary .sorter {
|
|
11
|
+
background-image: url(../sort-arrow-sprite.png);
|
|
12
|
+
}
|
|
13
|
+
</style>
|
|
14
|
+
</head>
|
|
15
|
+
<body>
|
|
16
|
+
<div class='wrapper'>
|
|
17
|
+
<div class='pad1'>
|
|
18
|
+
<h1>
|
|
19
|
+
<a href="../index.html">All files</a> / <a href="index.html">lib</a> utils.js
|
|
20
|
+
</h1>
|
|
21
|
+
<div class='clearfix'>
|
|
22
|
+
<div class='fl pad1y space-right2'>
|
|
23
|
+
<span class="strong">98.85% </span>
|
|
24
|
+
<span class="quiet">Statements</span>
|
|
25
|
+
<span class='fraction'>172/174</span>
|
|
26
|
+
</div>
|
|
27
|
+
<div class='fl pad1y space-right2'>
|
|
28
|
+
<span class="strong">97.76% </span>
|
|
29
|
+
<span class="quiet">Branches</span>
|
|
30
|
+
<span class='fraction'>131/134</span>
|
|
31
|
+
</div>
|
|
32
|
+
<div class='fl pad1y space-right2'>
|
|
33
|
+
<span class="strong">100% </span>
|
|
34
|
+
<span class="quiet">Functions</span>
|
|
35
|
+
<span class='fraction'>20/20</span>
|
|
36
|
+
</div>
|
|
37
|
+
<div class='fl pad1y space-right2'>
|
|
38
|
+
<span class="strong">98.85% </span>
|
|
39
|
+
<span class="quiet">Lines</span>
|
|
40
|
+
<span class='fraction'>172/174</span>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
<div class='status-line high'></div>
|
|
45
|
+
<pre><table class="coverage">
|
|
46
|
+
<tr><td class="line-count quiet">1
|
|
47
|
+
2
|
|
48
|
+
3
|
|
49
|
+
4
|
|
50
|
+
5
|
|
51
|
+
6
|
|
52
|
+
7
|
|
53
|
+
8
|
|
54
|
+
9
|
|
55
|
+
10
|
|
56
|
+
11
|
|
57
|
+
12
|
|
58
|
+
13
|
|
59
|
+
14
|
|
60
|
+
15
|
|
61
|
+
16
|
|
62
|
+
17
|
|
63
|
+
18
|
|
64
|
+
19
|
|
65
|
+
20
|
|
66
|
+
21
|
|
67
|
+
22
|
|
68
|
+
23
|
|
69
|
+
24
|
|
70
|
+
25
|
|
71
|
+
26
|
|
72
|
+
27
|
|
73
|
+
28
|
|
74
|
+
29
|
|
75
|
+
30
|
|
76
|
+
31
|
|
77
|
+
32
|
|
78
|
+
33
|
|
79
|
+
34
|
|
80
|
+
35
|
|
81
|
+
36
|
|
82
|
+
37
|
|
83
|
+
38
|
|
84
|
+
39
|
|
85
|
+
40
|
|
86
|
+
41
|
|
87
|
+
42
|
|
88
|
+
43
|
|
89
|
+
44
|
|
90
|
+
45
|
|
91
|
+
46
|
|
92
|
+
47
|
|
93
|
+
48
|
|
94
|
+
49
|
|
95
|
+
50
|
|
96
|
+
51
|
|
97
|
+
52
|
|
98
|
+
53
|
|
99
|
+
54
|
|
100
|
+
55
|
|
101
|
+
56
|
|
102
|
+
57
|
|
103
|
+
58
|
|
104
|
+
59
|
|
105
|
+
60
|
|
106
|
+
61
|
|
107
|
+
62
|
|
108
|
+
63
|
|
109
|
+
64
|
|
110
|
+
65
|
|
111
|
+
66
|
|
112
|
+
67
|
|
113
|
+
68
|
|
114
|
+
69
|
|
115
|
+
70
|
|
116
|
+
71
|
|
117
|
+
72
|
|
118
|
+
73
|
|
119
|
+
74
|
|
120
|
+
75
|
|
121
|
+
76
|
|
122
|
+
77
|
|
123
|
+
78
|
|
124
|
+
79
|
|
125
|
+
80
|
|
126
|
+
81
|
|
127
|
+
82
|
|
128
|
+
83
|
|
129
|
+
84
|
|
130
|
+
85
|
|
131
|
+
86
|
|
132
|
+
87
|
|
133
|
+
88
|
|
134
|
+
89
|
|
135
|
+
90
|
|
136
|
+
91
|
|
137
|
+
92
|
|
138
|
+
93
|
|
139
|
+
94
|
|
140
|
+
95
|
|
141
|
+
96
|
|
142
|
+
97
|
|
143
|
+
98
|
|
144
|
+
99
|
|
145
|
+
100
|
|
146
|
+
101
|
|
147
|
+
102
|
|
148
|
+
103
|
|
149
|
+
104
|
|
150
|
+
105
|
|
151
|
+
106
|
|
152
|
+
107
|
|
153
|
+
108
|
|
154
|
+
109
|
|
155
|
+
110
|
|
156
|
+
111
|
|
157
|
+
112
|
|
158
|
+
113
|
|
159
|
+
114
|
|
160
|
+
115
|
|
161
|
+
116
|
|
162
|
+
117
|
|
163
|
+
118
|
|
164
|
+
119
|
|
165
|
+
120
|
|
166
|
+
121
|
|
167
|
+
122
|
|
168
|
+
123
|
|
169
|
+
124
|
|
170
|
+
125
|
|
171
|
+
126
|
|
172
|
+
127
|
|
173
|
+
128
|
|
174
|
+
129
|
|
175
|
+
130
|
|
176
|
+
131
|
|
177
|
+
132
|
|
178
|
+
133
|
|
179
|
+
134
|
|
180
|
+
135
|
|
181
|
+
136
|
|
182
|
+
137
|
|
183
|
+
138
|
|
184
|
+
139
|
|
185
|
+
140
|
|
186
|
+
141
|
|
187
|
+
142
|
|
188
|
+
143
|
|
189
|
+
144
|
|
190
|
+
145
|
|
191
|
+
146
|
|
192
|
+
147
|
|
193
|
+
148
|
|
194
|
+
149
|
|
195
|
+
150
|
|
196
|
+
151
|
|
197
|
+
152
|
|
198
|
+
153
|
|
199
|
+
154
|
|
200
|
+
155
|
|
201
|
+
156
|
|
202
|
+
157
|
|
203
|
+
158
|
|
204
|
+
159
|
|
205
|
+
160
|
|
206
|
+
161
|
|
207
|
+
162
|
|
208
|
+
163
|
|
209
|
+
164
|
|
210
|
+
165
|
|
211
|
+
166
|
|
212
|
+
167
|
|
213
|
+
168
|
|
214
|
+
169
|
|
215
|
+
170
|
|
216
|
+
171
|
|
217
|
+
172
|
|
218
|
+
173
|
|
219
|
+
174
|
|
220
|
+
175
|
|
221
|
+
176
|
|
222
|
+
177
|
|
223
|
+
178
|
|
224
|
+
179
|
|
225
|
+
180
|
|
226
|
+
181
|
|
227
|
+
182
|
|
228
|
+
183
|
|
229
|
+
184
|
|
230
|
+
185
|
|
231
|
+
186
|
|
232
|
+
187
|
|
233
|
+
188
|
|
234
|
+
189
|
|
235
|
+
190
|
|
236
|
+
191
|
|
237
|
+
192
|
|
238
|
+
193
|
|
239
|
+
194
|
|
240
|
+
195
|
|
241
|
+
196
|
|
242
|
+
197
|
|
243
|
+
198
|
|
244
|
+
199
|
|
245
|
+
200
|
|
246
|
+
201
|
|
247
|
+
202
|
|
248
|
+
203
|
|
249
|
+
204
|
|
250
|
+
205
|
|
251
|
+
206
|
|
252
|
+
207
|
|
253
|
+
208
|
|
254
|
+
209
|
|
255
|
+
210
|
|
256
|
+
211
|
|
257
|
+
212
|
|
258
|
+
213
|
|
259
|
+
214
|
|
260
|
+
215
|
|
261
|
+
216
|
|
262
|
+
217
|
|
263
|
+
218
|
|
264
|
+
219
|
|
265
|
+
220
|
|
266
|
+
221
|
|
267
|
+
222
|
|
268
|
+
223
|
|
269
|
+
224
|
|
270
|
+
225
|
|
271
|
+
226
|
|
272
|
+
227
|
|
273
|
+
228
|
|
274
|
+
229
|
|
275
|
+
230
|
|
276
|
+
231
|
|
277
|
+
232
|
|
278
|
+
233
|
|
279
|
+
234
|
|
280
|
+
235
|
|
281
|
+
236
|
|
282
|
+
237
|
|
283
|
+
238
|
|
284
|
+
239
|
|
285
|
+
240
|
|
286
|
+
241
|
|
287
|
+
242
|
|
288
|
+
243
|
|
289
|
+
244
|
|
290
|
+
245
|
|
291
|
+
246
|
|
292
|
+
247
|
|
293
|
+
248
|
|
294
|
+
249
|
|
295
|
+
250
|
|
296
|
+
251
|
|
297
|
+
252
|
|
298
|
+
253
|
|
299
|
+
254
|
|
300
|
+
255
|
|
301
|
+
256
|
|
302
|
+
257
|
|
303
|
+
258
|
|
304
|
+
259
|
|
305
|
+
260
|
|
306
|
+
261
|
|
307
|
+
262
|
|
308
|
+
263
|
|
309
|
+
264
|
|
310
|
+
265
|
|
311
|
+
266
|
|
312
|
+
267
|
|
313
|
+
268
|
|
314
|
+
269
|
|
315
|
+
270
|
|
316
|
+
271
|
|
317
|
+
272
|
|
318
|
+
273
|
|
319
|
+
274
|
|
320
|
+
275
|
|
321
|
+
276
|
|
322
|
+
277
|
|
323
|
+
278
|
|
324
|
+
279
|
|
325
|
+
280
|
|
326
|
+
281
|
|
327
|
+
282
|
|
328
|
+
283
|
|
329
|
+
284
|
|
330
|
+
285
|
|
331
|
+
286
|
|
332
|
+
287
|
|
333
|
+
288
|
|
334
|
+
289
|
|
335
|
+
290
|
|
336
|
+
291
|
|
337
|
+
292
|
|
338
|
+
293
|
|
339
|
+
294
|
|
340
|
+
295
|
|
341
|
+
296
|
|
342
|
+
297
|
|
343
|
+
298
|
|
344
|
+
299
|
|
345
|
+
300
|
|
346
|
+
301
|
|
347
|
+
302
|
|
348
|
+
303
|
|
349
|
+
304
|
|
350
|
+
305
|
|
351
|
+
306
|
|
352
|
+
307
|
|
353
|
+
308
|
|
354
|
+
309
|
|
355
|
+
310
|
|
356
|
+
311
|
|
357
|
+
312
|
|
358
|
+
313
|
|
359
|
+
314
|
|
360
|
+
315
|
|
361
|
+
316
|
|
362
|
+
317
|
|
363
|
+
318
|
|
364
|
+
319
|
|
365
|
+
320
|
|
366
|
+
321
|
|
367
|
+
322
|
|
368
|
+
323
|
|
369
|
+
324
|
|
370
|
+
325
|
|
371
|
+
326
|
|
372
|
+
327
|
|
373
|
+
328
|
|
374
|
+
329
|
|
375
|
+
330
|
|
376
|
+
331
|
|
377
|
+
332
|
|
378
|
+
333
|
|
379
|
+
334
|
|
380
|
+
335
|
|
381
|
+
336
|
|
382
|
+
337
|
|
383
|
+
338
|
|
384
|
+
339
|
|
385
|
+
340
|
|
386
|
+
341</td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
387
|
+
<span class="cline-any cline-neutral"> </span>
|
|
388
|
+
<span class="cline-any cline-yes">1x</span>
|
|
389
|
+
<span class="cline-any cline-yes">1x</span>
|
|
390
|
+
<span class="cline-any cline-neutral"> </span>
|
|
391
|
+
<span class="cline-any cline-yes">1x</span>
|
|
392
|
+
<span class="cline-any cline-yes">1x</span>
|
|
393
|
+
<span class="cline-any cline-neutral"> </span>
|
|
394
|
+
<span class="cline-any cline-neutral"> </span>
|
|
395
|
+
<span class="cline-any cline-neutral"> </span>
|
|
396
|
+
<span class="cline-any cline-yes">1x</span>
|
|
397
|
+
<span class="cline-any cline-neutral"> </span>
|
|
398
|
+
<span class="cline-any cline-yes">1x</span>
|
|
399
|
+
<span class="cline-any cline-yes">42x</span>
|
|
400
|
+
<span class="cline-any cline-yes">42x</span>
|
|
401
|
+
<span class="cline-any cline-neutral"> </span>
|
|
402
|
+
<span class="cline-any cline-neutral"> </span>
|
|
403
|
+
<span class="cline-any cline-yes">1x</span>
|
|
404
|
+
<span class="cline-any cline-yes">2348x</span>
|
|
405
|
+
<span class="cline-any cline-neutral"> </span>
|
|
406
|
+
<span class="cline-any cline-neutral"> </span>
|
|
407
|
+
<span class="cline-any cline-yes">1x</span>
|
|
408
|
+
<span class="cline-any cline-yes">1008x</span>
|
|
409
|
+
<span class="cline-any cline-neutral"> </span>
|
|
410
|
+
<span class="cline-any cline-neutral"> </span>
|
|
411
|
+
<span class="cline-any cline-yes">1x</span>
|
|
412
|
+
<span class="cline-any cline-yes">999x</span>
|
|
413
|
+
<span class="cline-any cline-neutral"> </span>
|
|
414
|
+
<span class="cline-any cline-neutral"> </span>
|
|
415
|
+
<span class="cline-any cline-yes">1x</span>
|
|
416
|
+
<span class="cline-any cline-yes">1x</span>
|
|
417
|
+
<span class="cline-any cline-yes">1x</span>
|
|
418
|
+
<span class="cline-any cline-yes">256x</span>
|
|
419
|
+
<span class="cline-any cline-neutral"> </span>
|
|
420
|
+
<span class="cline-any cline-neutral"> </span>
|
|
421
|
+
<span class="cline-any cline-yes">1x</span>
|
|
422
|
+
<span class="cline-any cline-neutral"> </span>
|
|
423
|
+
<span class="cline-any cline-neutral"> </span>
|
|
424
|
+
<span class="cline-any cline-yes">1x</span>
|
|
425
|
+
<span class="cline-any cline-yes">284x</span>
|
|
426
|
+
<span class="cline-any cline-yes">5247x</span>
|
|
427
|
+
<span class="cline-any cline-yes">5247x</span>
|
|
428
|
+
<span class="cline-any cline-neutral"> </span>
|
|
429
|
+
<span class="cline-any cline-yes">5247x</span>
|
|
430
|
+
<span class="cline-any cline-yes">115x</span>
|
|
431
|
+
<span class="cline-any cline-neutral"> </span>
|
|
432
|
+
<span class="cline-any cline-yes">115x</span>
|
|
433
|
+
<span class="cline-any cline-yes">320x</span>
|
|
434
|
+
<span class="cline-any cline-yes">221x</span>
|
|
435
|
+
<span class="cline-any cline-neutral"> </span>
|
|
436
|
+
<span class="cline-any cline-neutral"> </span>
|
|
437
|
+
<span class="cline-any cline-neutral"> </span>
|
|
438
|
+
<span class="cline-any cline-yes">115x</span>
|
|
439
|
+
<span class="cline-any cline-neutral"> </span>
|
|
440
|
+
<span class="cline-any cline-neutral"> </span>
|
|
441
|
+
<span class="cline-any cline-neutral"> </span>
|
|
442
|
+
<span class="cline-any cline-neutral"> </span>
|
|
443
|
+
<span class="cline-any cline-yes">1x</span>
|
|
444
|
+
<span class="cline-any cline-yes">34x</span>
|
|
445
|
+
<span class="cline-any cline-yes">34x</span>
|
|
446
|
+
<span class="cline-any cline-yes">184x</span>
|
|
447
|
+
<span class="cline-any cline-yes">181x</span>
|
|
448
|
+
<span class="cline-any cline-neutral"> </span>
|
|
449
|
+
<span class="cline-any cline-neutral"> </span>
|
|
450
|
+
<span class="cline-any cline-neutral"> </span>
|
|
451
|
+
<span class="cline-any cline-yes">34x</span>
|
|
452
|
+
<span class="cline-any cline-neutral"> </span>
|
|
453
|
+
<span class="cline-any cline-neutral"> </span>
|
|
454
|
+
<span class="cline-any cline-yes">1x</span>
|
|
455
|
+
<span class="cline-any cline-neutral"> </span>
|
|
456
|
+
<span class="cline-any cline-yes">587x</span>
|
|
457
|
+
<span class="cline-any cline-yes">30x</span>
|
|
458
|
+
<span class="cline-any cline-neutral"> </span>
|
|
459
|
+
<span class="cline-any cline-neutral"> </span>
|
|
460
|
+
<span class="cline-any cline-yes">557x</span>
|
|
461
|
+
<span class="cline-any cline-yes">23x</span>
|
|
462
|
+
<span class="cline-any cline-yes">9x</span>
|
|
463
|
+
<span class="cline-any cline-yes">9x</span>
|
|
464
|
+
<span class="cline-any cline-no"> </span>
|
|
465
|
+
<span class="cline-any cline-neutral"> </span>
|
|
466
|
+
<span class="cline-any cline-yes">9x</span>
|
|
467
|
+
<span class="cline-any cline-yes">14x</span>
|
|
468
|
+
<span class="cline-any cline-yes">12x</span>
|
|
469
|
+
<span class="cline-any cline-neutral"> </span>
|
|
470
|
+
<span class="cline-any cline-yes">5x</span>
|
|
471
|
+
<span class="cline-any cline-yes">5x</span>
|
|
472
|
+
<span class="cline-any cline-yes">5x</span>
|
|
473
|
+
<span class="cline-any cline-yes">7x</span>
|
|
474
|
+
<span class="cline-any cline-neutral"> </span>
|
|
475
|
+
<span class="cline-any cline-neutral"> </span>
|
|
476
|
+
<span class="cline-any cline-neutral"> </span>
|
|
477
|
+
<span class="cline-any cline-yes">6x</span>
|
|
478
|
+
<span class="cline-any cline-neutral"> </span>
|
|
479
|
+
<span class="cline-any cline-neutral"> </span>
|
|
480
|
+
<span class="cline-any cline-yes">2x</span>
|
|
481
|
+
<span class="cline-any cline-neutral"> </span>
|
|
482
|
+
<span class="cline-any cline-neutral"> </span>
|
|
483
|
+
<span class="cline-any cline-yes">21x</span>
|
|
484
|
+
<span class="cline-any cline-neutral"> </span>
|
|
485
|
+
<span class="cline-any cline-neutral"> </span>
|
|
486
|
+
<span class="cline-any cline-yes">534x</span>
|
|
487
|
+
<span class="cline-any cline-yes">15x</span>
|
|
488
|
+
<span class="cline-any cline-neutral"> </span>
|
|
489
|
+
<span class="cline-any cline-yes">3x</span>
|
|
490
|
+
<span class="cline-any cline-yes">3x</span>
|
|
491
|
+
<span class="cline-any cline-neutral"> </span>
|
|
492
|
+
<span class="cline-any cline-neutral"> </span>
|
|
493
|
+
<span class="cline-any cline-yes">3x</span>
|
|
494
|
+
<span class="cline-any cline-yes">6x</span>
|
|
495
|
+
<span class="cline-any cline-yes">6x</span>
|
|
496
|
+
<span class="cline-any cline-neutral"> </span>
|
|
497
|
+
<span class="cline-any cline-yes">3x</span>
|
|
498
|
+
<span class="cline-any cline-neutral"> </span>
|
|
499
|
+
<span class="cline-any cline-yes">12x</span>
|
|
500
|
+
<span class="cline-any cline-yes">12x</span>
|
|
501
|
+
<span class="cline-any cline-no"> </span>
|
|
502
|
+
<span class="cline-any cline-neutral"> </span>
|
|
503
|
+
<span class="cline-any cline-yes">12x</span>
|
|
504
|
+
<span class="cline-any cline-neutral"> </span>
|
|
505
|
+
<span class="cline-any cline-neutral"> </span>
|
|
506
|
+
<span class="cline-any cline-yes">519x</span>
|
|
507
|
+
<span class="cline-any cline-yes">519x</span>
|
|
508
|
+
<span class="cline-any cline-yes">14x</span>
|
|
509
|
+
<span class="cline-any cline-neutral"> </span>
|
|
510
|
+
<span class="cline-any cline-neutral"> </span>
|
|
511
|
+
<span class="cline-any cline-yes">519x</span>
|
|
512
|
+
<span class="cline-any cline-yes">36x</span>
|
|
513
|
+
<span class="cline-any cline-yes">37x</span>
|
|
514
|
+
<span class="cline-any cline-yes">11x</span>
|
|
515
|
+
<span class="cline-any cline-yes">11x</span>
|
|
516
|
+
<span class="cline-any cline-yes">7x</span>
|
|
517
|
+
<span class="cline-any cline-neutral"> </span>
|
|
518
|
+
<span class="cline-any cline-yes">4x</span>
|
|
519
|
+
<span class="cline-any cline-neutral"> </span>
|
|
520
|
+
<span class="cline-any cline-neutral"> </span>
|
|
521
|
+
<span class="cline-any cline-yes">26x</span>
|
|
522
|
+
<span class="cline-any cline-neutral"> </span>
|
|
523
|
+
<span class="cline-any cline-neutral"> </span>
|
|
524
|
+
<span class="cline-any cline-yes">36x</span>
|
|
525
|
+
<span class="cline-any cline-neutral"> </span>
|
|
526
|
+
<span class="cline-any cline-neutral"> </span>
|
|
527
|
+
<span class="cline-any cline-yes">483x</span>
|
|
528
|
+
<span class="cline-any cline-yes">486x</span>
|
|
529
|
+
<span class="cline-any cline-neutral"> </span>
|
|
530
|
+
<span class="cline-any cline-yes">486x</span>
|
|
531
|
+
<span class="cline-any cline-yes">111x</span>
|
|
532
|
+
<span class="cline-any cline-neutral"> </span>
|
|
533
|
+
<span class="cline-any cline-yes">375x</span>
|
|
534
|
+
<span class="cline-any cline-neutral"> </span>
|
|
535
|
+
<span class="cline-any cline-neutral"> </span>
|
|
536
|
+
<span class="cline-any cline-yes">486x</span>
|
|
537
|
+
<span class="cline-any cline-yes">3x</span>
|
|
538
|
+
<span class="cline-any cline-neutral"> </span>
|
|
539
|
+
<span class="cline-any cline-yes">486x</span>
|
|
540
|
+
<span class="cline-any cline-yes">8x</span>
|
|
541
|
+
<span class="cline-any cline-yes">8x</span>
|
|
542
|
+
<span class="cline-any cline-yes">5x</span>
|
|
543
|
+
<span class="cline-any cline-neutral"> </span>
|
|
544
|
+
<span class="cline-any cline-neutral"> </span>
|
|
545
|
+
<span class="cline-any cline-neutral"> </span>
|
|
546
|
+
<span class="cline-any cline-yes">486x</span>
|
|
547
|
+
<span class="cline-any cline-neutral"> </span>
|
|
548
|
+
<span class="cline-any cline-neutral"> </span>
|
|
549
|
+
<span class="cline-any cline-neutral"> </span>
|
|
550
|
+
<span class="cline-any cline-yes">1x</span>
|
|
551
|
+
<span class="cline-any cline-yes">1x</span>
|
|
552
|
+
<span class="cline-any cline-yes">2x</span>
|
|
553
|
+
<span class="cline-any cline-yes">2x</span>
|
|
554
|
+
<span class="cline-any cline-neutral"> </span>
|
|
555
|
+
<span class="cline-any cline-neutral"> </span>
|
|
556
|
+
<span class="cline-any cline-neutral"> </span>
|
|
557
|
+
<span class="cline-any cline-yes">1x</span>
|
|
558
|
+
<span class="cline-any cline-yes">3248x</span>
|
|
559
|
+
<span class="cline-any cline-yes">3248x</span>
|
|
560
|
+
<span class="cline-any cline-neutral"> </span>
|
|
561
|
+
<span class="cline-any cline-yes">22x</span>
|
|
562
|
+
<span class="cline-any cline-neutral"> </span>
|
|
563
|
+
<span class="cline-any cline-neutral"> </span>
|
|
564
|
+
<span class="cline-any cline-yes">3226x</span>
|
|
565
|
+
<span class="cline-any cline-yes">3226x</span>
|
|
566
|
+
<span class="cline-any cline-neutral"> </span>
|
|
567
|
+
<span class="cline-any cline-yes">3x</span>
|
|
568
|
+
<span class="cline-any cline-neutral"> </span>
|
|
569
|
+
<span class="cline-any cline-neutral"> </span>
|
|
570
|
+
<span class="cline-any cline-neutral"> </span>
|
|
571
|
+
<span class="cline-any cline-yes">1x</span>
|
|
572
|
+
<span class="cline-any cline-neutral"> </span>
|
|
573
|
+
<span class="cline-any cline-neutral"> </span>
|
|
574
|
+
<span class="cline-any cline-neutral"> </span>
|
|
575
|
+
<span class="cline-any cline-yes">1x</span>
|
|
576
|
+
<span class="cline-any cline-neutral"> </span>
|
|
577
|
+
<span class="cline-any cline-neutral"> </span>
|
|
578
|
+
<span class="cline-any cline-yes">519x</span>
|
|
579
|
+
<span class="cline-any cline-yes">27x</span>
|
|
580
|
+
<span class="cline-any cline-neutral"> </span>
|
|
581
|
+
<span class="cline-any cline-neutral"> </span>
|
|
582
|
+
<span class="cline-any cline-yes">490x</span>
|
|
583
|
+
<span class="cline-any cline-yes">490x</span>
|
|
584
|
+
<span class="cline-any cline-yes">4x</span>
|
|
585
|
+
<span class="cline-any cline-yes">486x</span>
|
|
586
|
+
<span class="cline-any cline-yes">52x</span>
|
|
587
|
+
<span class="cline-any cline-neutral"> </span>
|
|
588
|
+
<span class="cline-any cline-neutral"> </span>
|
|
589
|
+
<span class="cline-any cline-yes">490x</span>
|
|
590
|
+
<span class="cline-any cline-yes">7x</span>
|
|
591
|
+
<span class="cline-any cline-yes">3x</span>
|
|
592
|
+
<span class="cline-any cline-neutral"> </span>
|
|
593
|
+
<span class="cline-any cline-neutral"> </span>
|
|
594
|
+
<span class="cline-any cline-neutral"> </span>
|
|
595
|
+
<span class="cline-any cline-yes">483x</span>
|
|
596
|
+
<span class="cline-any cline-yes">483x</span>
|
|
597
|
+
<span class="cline-any cline-yes">507x</span>
|
|
598
|
+
<span class="cline-any cline-yes">507x</span>
|
|
599
|
+
<span class="cline-any cline-neutral"> </span>
|
|
600
|
+
<span class="cline-any cline-yes">507x</span>
|
|
601
|
+
<span class="cline-any cline-yes">27059x</span>
|
|
602
|
+
<span class="cline-any cline-yes">27059x</span>
|
|
603
|
+
<span class="cline-any cline-neutral"> </span>
|
|
604
|
+
<span class="cline-any cline-neutral"> </span>
|
|
605
|
+
<span class="cline-any cline-neutral"> </span>
|
|
606
|
+
<span class="cline-any cline-neutral"> </span>
|
|
607
|
+
<span class="cline-any cline-neutral"> </span>
|
|
608
|
+
<span class="cline-any cline-neutral"> </span>
|
|
609
|
+
<span class="cline-any cline-neutral"> </span>
|
|
610
|
+
<span class="cline-any cline-neutral"> </span>
|
|
611
|
+
<span class="cline-any cline-neutral"> </span>
|
|
612
|
+
<span class="cline-any cline-yes">20243x</span>
|
|
613
|
+
<span class="cline-any cline-yes">20243x</span>
|
|
614
|
+
<span class="cline-any cline-neutral"> </span>
|
|
615
|
+
<span class="cline-any cline-neutral"> </span>
|
|
616
|
+
<span class="cline-any cline-yes">6816x</span>
|
|
617
|
+
<span class="cline-any cline-yes">6805x</span>
|
|
618
|
+
<span class="cline-any cline-yes">6805x</span>
|
|
619
|
+
<span class="cline-any cline-neutral"> </span>
|
|
620
|
+
<span class="cline-any cline-neutral"> </span>
|
|
621
|
+
<span class="cline-any cline-yes">11x</span>
|
|
622
|
+
<span class="cline-any cline-yes">4x</span>
|
|
623
|
+
<span class="cline-any cline-neutral"> </span>
|
|
624
|
+
<span class="cline-any cline-yes">4x</span>
|
|
625
|
+
<span class="cline-any cline-neutral"> </span>
|
|
626
|
+
<span class="cline-any cline-neutral"> </span>
|
|
627
|
+
<span class="cline-any cline-yes">7x</span>
|
|
628
|
+
<span class="cline-any cline-yes">4x</span>
|
|
629
|
+
<span class="cline-any cline-neutral"> </span>
|
|
630
|
+
<span class="cline-any cline-neutral"> </span>
|
|
631
|
+
<span class="cline-any cline-yes">4x</span>
|
|
632
|
+
<span class="cline-any cline-neutral"> </span>
|
|
633
|
+
<span class="cline-any cline-neutral"> </span>
|
|
634
|
+
<span class="cline-any cline-yes">3x</span>
|
|
635
|
+
<span class="cline-any cline-yes">3x</span>
|
|
636
|
+
<span class="cline-any cline-neutral"> </span>
|
|
637
|
+
<span class="cline-any cline-yes">3x</span>
|
|
638
|
+
<span class="cline-any cline-neutral"> </span>
|
|
639
|
+
<span class="cline-any cline-neutral"> </span>
|
|
640
|
+
<span class="cline-any cline-neutral"> </span>
|
|
641
|
+
<span class="cline-any cline-neutral"> </span>
|
|
642
|
+
<span class="cline-any cline-neutral"> </span>
|
|
643
|
+
<span class="cline-any cline-yes">507x</span>
|
|
644
|
+
<span class="cline-any cline-neutral"> </span>
|
|
645
|
+
<span class="cline-any cline-neutral"> </span>
|
|
646
|
+
<span class="cline-any cline-yes">483x</span>
|
|
647
|
+
<span class="cline-any cline-neutral"> </span>
|
|
648
|
+
<span class="cline-any cline-neutral"> </span>
|
|
649
|
+
<span class="cline-any cline-yes">1x</span>
|
|
650
|
+
<span class="cline-any cline-yes">284x</span>
|
|
651
|
+
<span class="cline-any cline-yes">284x</span>
|
|
652
|
+
<span class="cline-any cline-neutral"> </span>
|
|
653
|
+
<span class="cline-any cline-yes">284x</span>
|
|
654
|
+
<span class="cline-any cline-yes">5531x</span>
|
|
655
|
+
<span class="cline-any cline-yes">5531x</span>
|
|
656
|
+
<span class="cline-any cline-neutral"> </span>
|
|
657
|
+
<span class="cline-any cline-yes">5531x</span>
|
|
658
|
+
<span class="cline-any cline-yes">5531x</span>
|
|
659
|
+
<span class="cline-any cline-yes">6845x</span>
|
|
660
|
+
<span class="cline-any cline-yes">6845x</span>
|
|
661
|
+
<span class="cline-any cline-yes">6845x</span>
|
|
662
|
+
<span class="cline-any cline-yes">5247x</span>
|
|
663
|
+
<span class="cline-any cline-yes">5247x</span>
|
|
664
|
+
<span class="cline-any cline-neutral"> </span>
|
|
665
|
+
<span class="cline-any cline-neutral"> </span>
|
|
666
|
+
<span class="cline-any cline-neutral"> </span>
|
|
667
|
+
<span class="cline-any cline-neutral"> </span>
|
|
668
|
+
<span class="cline-any cline-yes">284x</span>
|
|
669
|
+
<span class="cline-any cline-neutral"> </span>
|
|
670
|
+
<span class="cline-any cline-yes">284x</span>
|
|
671
|
+
<span class="cline-any cline-neutral"> </span>
|
|
672
|
+
<span class="cline-any cline-neutral"> </span>
|
|
673
|
+
<span class="cline-any cline-yes">1x</span>
|
|
674
|
+
<span class="cline-any cline-yes">203x</span>
|
|
675
|
+
<span class="cline-any cline-neutral"> </span>
|
|
676
|
+
<span class="cline-any cline-neutral"> </span>
|
|
677
|
+
<span class="cline-any cline-yes">1x</span>
|
|
678
|
+
<span class="cline-any cline-yes">450x</span>
|
|
679
|
+
<span class="cline-any cline-yes">50x</span>
|
|
680
|
+
<span class="cline-any cline-neutral"> </span>
|
|
681
|
+
<span class="cline-any cline-neutral"> </span>
|
|
682
|
+
<span class="cline-any cline-yes">400x</span>
|
|
683
|
+
<span class="cline-any cline-neutral"> </span>
|
|
684
|
+
<span class="cline-any cline-neutral"> </span>
|
|
685
|
+
<span class="cline-any cline-yes">1x</span>
|
|
686
|
+
<span class="cline-any cline-neutral"> </span>
|
|
687
|
+
<span class="cline-any cline-yes">1262x</span>
|
|
688
|
+
<span class="cline-any cline-yes">989x</span>
|
|
689
|
+
<span class="cline-any cline-yes">989x</span>
|
|
690
|
+
<span class="cline-any cline-yes">989x</span>
|
|
691
|
+
<span class="cline-any cline-yes">989x</span>
|
|
692
|
+
<span class="cline-any cline-neutral"> </span>
|
|
693
|
+
<span class="cline-any cline-neutral"> </span>
|
|
694
|
+
<span class="cline-any cline-yes">273x</span>
|
|
695
|
+
<span class="cline-any cline-yes">273x</span>
|
|
696
|
+
<span class="cline-any cline-yes">20x</span>
|
|
697
|
+
<span class="cline-any cline-neutral"> </span>
|
|
698
|
+
<span class="cline-any cline-yes">253x</span>
|
|
699
|
+
<span class="cline-any cline-neutral"> </span>
|
|
700
|
+
<span class="cline-any cline-neutral"> </span>
|
|
701
|
+
<span class="cline-any cline-yes">1x</span>
|
|
702
|
+
<span class="cline-any cline-yes">1625x</span>
|
|
703
|
+
<span class="cline-any cline-yes">62x</span>
|
|
704
|
+
<span class="cline-any cline-yes">62x</span>
|
|
705
|
+
<span class="cline-any cline-yes">126x</span>
|
|
706
|
+
<span class="cline-any cline-neutral"> </span>
|
|
707
|
+
<span class="cline-any cline-yes">62x</span>
|
|
708
|
+
<span class="cline-any cline-neutral"> </span>
|
|
709
|
+
<span class="cline-any cline-yes">1563x</span>
|
|
710
|
+
<span class="cline-any cline-neutral"> </span>
|
|
711
|
+
<span class="cline-any cline-neutral"> </span>
|
|
712
|
+
<span class="cline-any cline-yes">1x</span>
|
|
713
|
+
<span class="cline-any cline-neutral"> </span>
|
|
714
|
+
<span class="cline-any cline-neutral"> </span>
|
|
715
|
+
<span class="cline-any cline-neutral"> </span>
|
|
716
|
+
<span class="cline-any cline-neutral"> </span>
|
|
717
|
+
<span class="cline-any cline-neutral"> </span>
|
|
718
|
+
<span class="cline-any cline-neutral"> </span>
|
|
719
|
+
<span class="cline-any cline-neutral"> </span>
|
|
720
|
+
<span class="cline-any cline-neutral"> </span>
|
|
721
|
+
<span class="cline-any cline-neutral"> </span>
|
|
722
|
+
<span class="cline-any cline-neutral"> </span>
|
|
723
|
+
<span class="cline-any cline-neutral"> </span>
|
|
724
|
+
<span class="cline-any cline-neutral"> </span>
|
|
725
|
+
<span class="cline-any cline-neutral"> </span>
|
|
726
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">'use strict';
|
|
727
|
+
|
|
728
|
+
var formats = require('./formats');
|
|
729
|
+
var getSideChannel = require('side-channel');
|
|
730
|
+
|
|
731
|
+
var has = Object.prototype.hasOwnProperty;
|
|
732
|
+
var isArray = Array.isArray;
|
|
733
|
+
|
|
734
|
+
// Track objects created from arrayLimit overflow using side-channel
|
|
735
|
+
// Stores the current max numeric index for O(1) lookup
|
|
736
|
+
var overflowChannel = getSideChannel();
|
|
737
|
+
|
|
738
|
+
var markOverflow = function markOverflow(obj, maxIndex) {
|
|
739
|
+
overflowChannel.set(obj, maxIndex);
|
|
740
|
+
return obj;
|
|
741
|
+
};
|
|
742
|
+
|
|
743
|
+
var isOverflow = function isOverflow(obj) {
|
|
744
|
+
return overflowChannel.has(obj);
|
|
745
|
+
};
|
|
746
|
+
|
|
747
|
+
var getMaxIndex = function getMaxIndex(obj) {
|
|
748
|
+
return overflowChannel.get(obj);
|
|
749
|
+
};
|
|
750
|
+
|
|
751
|
+
var setMaxIndex = function setMaxIndex(obj, maxIndex) {
|
|
752
|
+
overflowChannel.set(obj, maxIndex);
|
|
753
|
+
};
|
|
754
|
+
|
|
755
|
+
var hexTable = (function () {
|
|
756
|
+
var array = [];
|
|
757
|
+
for (var i = 0; i < 256; ++i) {
|
|
758
|
+
array[array.length] = '%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase();
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
return array;
|
|
762
|
+
}());
|
|
763
|
+
|
|
764
|
+
var compactQueue = function compactQueue(queue) {
|
|
765
|
+
while (queue.length > 1) {
|
|
766
|
+
var item = queue.pop();
|
|
767
|
+
var obj = item.obj[item.prop];
|
|
768
|
+
|
|
769
|
+
if (isArray(obj)) {
|
|
770
|
+
var compacted = [];
|
|
771
|
+
|
|
772
|
+
for (var j = 0; j < obj.length; ++j) {
|
|
773
|
+
if (typeof obj[j] !== 'undefined') {
|
|
774
|
+
compacted[compacted.length] = obj[j];
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
item.obj[item.prop] = compacted;
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
};
|
|
782
|
+
|
|
783
|
+
var arrayToObject = function arrayToObject(source, options) {
|
|
784
|
+
var obj = options && options.plainObjects ? { __proto__: null } : {};
|
|
785
|
+
for (var i = 0; i < source.length; ++i) {
|
|
786
|
+
if (typeof source[i] !== 'undefined') {
|
|
787
|
+
obj[i] = source[i];
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
return obj;
|
|
792
|
+
};
|
|
793
|
+
|
|
794
|
+
var merge = function merge(target, source, options) {
|
|
795
|
+
/* eslint no-param-reassign: 0 */
|
|
796
|
+
if (!source) {
|
|
797
|
+
return target;
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
if (typeof source !== 'object' && typeof source !== 'function') {
|
|
801
|
+
if (isArray(target)) {
|
|
802
|
+
var nextIndex = target.length;
|
|
803
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (options && typeof options.arrayLimit === 'number' && nextIndex > options.arrayLimit) {
|
|
804
|
+
<span class="cstat-no" title="statement not covered" > return markOverflow(arrayToObject(target.concat(source), options), nextIndex);</span>
|
|
805
|
+
}
|
|
806
|
+
target[nextIndex] = source;
|
|
807
|
+
} else if (target && typeof target === 'object') {
|
|
808
|
+
if (isOverflow(target)) {
|
|
809
|
+
// Add at next numeric index for overflow objects
|
|
810
|
+
var newIndex = getMaxIndex(target) + 1;
|
|
811
|
+
target[newIndex] = source;
|
|
812
|
+
setMaxIndex(target, newIndex);
|
|
813
|
+
} else if (
|
|
814
|
+
(options && (options.plainObjects || options.allowPrototypes))
|
|
815
|
+
|| !has.call(Object.prototype, source)
|
|
816
|
+
) {
|
|
817
|
+
target[source] = true;
|
|
818
|
+
}
|
|
819
|
+
} else {
|
|
820
|
+
return [target, source];
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
return target;
|
|
824
|
+
}
|
|
825
|
+
|
|
826
|
+
if (!target || typeof target !== 'object') {
|
|
827
|
+
if (isOverflow(source)) {
|
|
828
|
+
// Create new object with target at 0, source values shifted by 1
|
|
829
|
+
var sourceKeys = Object.keys(source);
|
|
830
|
+
var result = options && options.plainObjects
|
|
831
|
+
? <span class="branch-0 cbranch-no" title="branch not covered" >{ __proto__: null, 0: target }</span>
|
|
832
|
+
: { 0: target };
|
|
833
|
+
for (var m = 0; m < sourceKeys.length; m++) {
|
|
834
|
+
var oldKey = parseInt(sourceKeys[m], 10);
|
|
835
|
+
result[oldKey + 1] = source[sourceKeys[m]];
|
|
836
|
+
}
|
|
837
|
+
return markOverflow(result, getMaxIndex(source) + 1);
|
|
838
|
+
}
|
|
839
|
+
var combined = [target].concat(source);
|
|
840
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (options && typeof options.arrayLimit === 'number' && combined.length > options.arrayLimit) {
|
|
841
|
+
<span class="cstat-no" title="statement not covered" > return markOverflow(arrayToObject(combined, options), combined.length - 1);</span>
|
|
842
|
+
}
|
|
843
|
+
return combined;
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
var mergeTarget = target;
|
|
847
|
+
if (isArray(target) && !isArray(source)) {
|
|
848
|
+
mergeTarget = arrayToObject(target, options);
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
if (isArray(target) && isArray(source)) {
|
|
852
|
+
source.forEach(function (item, i) {
|
|
853
|
+
if (has.call(target, i)) {
|
|
854
|
+
var targetItem = target[i];
|
|
855
|
+
if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
|
|
856
|
+
target[i] = merge(targetItem, item, options);
|
|
857
|
+
} else {
|
|
858
|
+
target[target.length] = item;
|
|
859
|
+
}
|
|
860
|
+
} else {
|
|
861
|
+
target[i] = item;
|
|
862
|
+
}
|
|
863
|
+
});
|
|
864
|
+
return target;
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
return Object.keys(source).reduce(function (acc, key) {
|
|
868
|
+
var value = source[key];
|
|
869
|
+
|
|
870
|
+
if (has.call(acc, key)) {
|
|
871
|
+
acc[key] = merge(acc[key], value, options);
|
|
872
|
+
} else {
|
|
873
|
+
acc[key] = value;
|
|
874
|
+
}
|
|
875
|
+
|
|
876
|
+
if (isOverflow(source) && !isOverflow(acc)) {
|
|
877
|
+
markOverflow(acc, getMaxIndex(source));
|
|
878
|
+
}
|
|
879
|
+
if (isOverflow(acc)) {
|
|
880
|
+
var keyNum = parseInt(key, 10);
|
|
881
|
+
if (String(keyNum) === key && keyNum >= 0 && keyNum > getMaxIndex(acc)) {
|
|
882
|
+
setMaxIndex(acc, keyNum);
|
|
883
|
+
}
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
return acc;
|
|
887
|
+
}, mergeTarget);
|
|
888
|
+
};
|
|
889
|
+
|
|
890
|
+
var assign = function assignSingleSource(target, source) {
|
|
891
|
+
return Object.keys(source).reduce(function (acc, key) {
|
|
892
|
+
acc[key] = source[key];
|
|
893
|
+
return acc;
|
|
894
|
+
}, target);
|
|
895
|
+
};
|
|
896
|
+
|
|
897
|
+
var decode = function (str, defaultDecoder, charset) {
|
|
898
|
+
var strWithoutPlus = str.replace(/\+/g, ' ');
|
|
899
|
+
if (charset === 'iso-8859-1') {
|
|
900
|
+
// unescape never throws, no try...catch needed:
|
|
901
|
+
return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
|
|
902
|
+
}
|
|
903
|
+
// utf-8
|
|
904
|
+
try {
|
|
905
|
+
return decodeURIComponent(strWithoutPlus);
|
|
906
|
+
} catch (e) {
|
|
907
|
+
return strWithoutPlus;
|
|
908
|
+
}
|
|
909
|
+
};
|
|
910
|
+
|
|
911
|
+
var limit = 1024;
|
|
912
|
+
|
|
913
|
+
/* eslint operator-linebreak: [2, "before"] */
|
|
914
|
+
|
|
915
|
+
var encode = function encode(str, defaultEncoder, charset, kind, format) {
|
|
916
|
+
// This code was originally written by Brian White (mscdex) for the io.js core querystring library.
|
|
917
|
+
// It has been adapted here for stricter adherence to RFC 3986
|
|
918
|
+
if (str.length === 0) {
|
|
919
|
+
return str;
|
|
920
|
+
}
|
|
921
|
+
|
|
922
|
+
var string = str;
|
|
923
|
+
if (typeof str === 'symbol') {
|
|
924
|
+
string = Symbol.prototype.toString.call(str);
|
|
925
|
+
} else if (typeof str !== 'string') {
|
|
926
|
+
string = String(str);
|
|
927
|
+
}
|
|
928
|
+
|
|
929
|
+
if (charset === 'iso-8859-1') {
|
|
930
|
+
return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
|
|
931
|
+
return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
|
|
932
|
+
});
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
var out = '';
|
|
936
|
+
for (var j = 0; j < string.length; j += limit) {
|
|
937
|
+
var segment = string.length >= limit ? string.slice(j, j + limit) : string;
|
|
938
|
+
var arr = [];
|
|
939
|
+
|
|
940
|
+
for (var i = 0; i < segment.length; ++i) {
|
|
941
|
+
var c = segment.charCodeAt(i);
|
|
942
|
+
if (
|
|
943
|
+
c === 0x2D // -
|
|
944
|
+
|| c === 0x2E // .
|
|
945
|
+
|| c === 0x5F // _
|
|
946
|
+
|| c === 0x7E // ~
|
|
947
|
+
|| (c >= 0x30 && c <= 0x39) // 0-9
|
|
948
|
+
|| (c >= 0x41 && c <= 0x5A) // a-z
|
|
949
|
+
|| (c >= 0x61 && c <= 0x7A) // A-Z
|
|
950
|
+
|| (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
|
|
951
|
+
) {
|
|
952
|
+
arr[arr.length] = segment.charAt(i);
|
|
953
|
+
continue;
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
if (c < 0x80) {
|
|
957
|
+
arr[arr.length] = hexTable[c];
|
|
958
|
+
continue;
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
if (c < 0x800) {
|
|
962
|
+
arr[arr.length] = hexTable[0xC0 | (c >> 6)]
|
|
963
|
+
+ hexTable[0x80 | (c & 0x3F)];
|
|
964
|
+
continue;
|
|
965
|
+
}
|
|
966
|
+
|
|
967
|
+
if (c < 0xD800 || c >= 0xE000) {
|
|
968
|
+
arr[arr.length] = hexTable[0xE0 | (c >> 12)]
|
|
969
|
+
+ hexTable[0x80 | ((c >> 6) & 0x3F)]
|
|
970
|
+
+ hexTable[0x80 | (c & 0x3F)];
|
|
971
|
+
continue;
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
i += 1;
|
|
975
|
+
c = 0x10000 + (((c & 0x3FF) << 10) | (segment.charCodeAt(i) & 0x3FF));
|
|
976
|
+
|
|
977
|
+
arr[arr.length] = hexTable[0xF0 | (c >> 18)]
|
|
978
|
+
+ hexTable[0x80 | ((c >> 12) & 0x3F)]
|
|
979
|
+
+ hexTable[0x80 | ((c >> 6) & 0x3F)]
|
|
980
|
+
+ hexTable[0x80 | (c & 0x3F)];
|
|
981
|
+
}
|
|
982
|
+
|
|
983
|
+
out += arr.join('');
|
|
984
|
+
}
|
|
985
|
+
|
|
986
|
+
return out;
|
|
987
|
+
};
|
|
988
|
+
|
|
989
|
+
var compact = function compact(value) {
|
|
990
|
+
var queue = [{ obj: { o: value }, prop: 'o' }];
|
|
991
|
+
var refs = [];
|
|
992
|
+
|
|
993
|
+
for (var i = 0; i < queue.length; ++i) {
|
|
994
|
+
var item = queue[i];
|
|
995
|
+
var obj = item.obj[item.prop];
|
|
996
|
+
|
|
997
|
+
var keys = Object.keys(obj);
|
|
998
|
+
for (var j = 0; j < keys.length; ++j) {
|
|
999
|
+
var key = keys[j];
|
|
1000
|
+
var val = obj[key];
|
|
1001
|
+
if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
|
|
1002
|
+
queue[queue.length] = { obj: obj, prop: key };
|
|
1003
|
+
refs[refs.length] = val;
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
}
|
|
1007
|
+
|
|
1008
|
+
compactQueue(queue);
|
|
1009
|
+
|
|
1010
|
+
return value;
|
|
1011
|
+
};
|
|
1012
|
+
|
|
1013
|
+
var isRegExp = function isRegExp(obj) {
|
|
1014
|
+
return Object.prototype.toString.call(obj) === '[object RegExp]';
|
|
1015
|
+
};
|
|
1016
|
+
|
|
1017
|
+
var isBuffer = function isBuffer(obj) {
|
|
1018
|
+
if (!obj || typeof obj !== 'object') {
|
|
1019
|
+
return false;
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1022
|
+
return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
|
|
1023
|
+
};
|
|
1024
|
+
|
|
1025
|
+
var combine = function combine(a, b, arrayLimit, plainObjects) {
|
|
1026
|
+
// If 'a' is already an overflow object, add to it
|
|
1027
|
+
if (isOverflow(a)) {
|
|
1028
|
+
var newIndex = getMaxIndex(a) + 1;
|
|
1029
|
+
a[newIndex] = b;
|
|
1030
|
+
setMaxIndex(a, newIndex);
|
|
1031
|
+
return a;
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1034
|
+
var result = [].concat(a, b);
|
|
1035
|
+
if (result.length > arrayLimit) {
|
|
1036
|
+
return markOverflow(arrayToObject(result, { plainObjects: plainObjects }), result.length - 1);
|
|
1037
|
+
}
|
|
1038
|
+
return result;
|
|
1039
|
+
};
|
|
1040
|
+
|
|
1041
|
+
var maybeMap = function maybeMap(val, fn) {
|
|
1042
|
+
if (isArray(val)) {
|
|
1043
|
+
var mapped = [];
|
|
1044
|
+
for (var i = 0; i < val.length; i += 1) {
|
|
1045
|
+
mapped[mapped.length] = fn(val[i]);
|
|
1046
|
+
}
|
|
1047
|
+
return mapped;
|
|
1048
|
+
}
|
|
1049
|
+
return fn(val);
|
|
1050
|
+
};
|
|
1051
|
+
|
|
1052
|
+
module.exports = {
|
|
1053
|
+
arrayToObject: arrayToObject,
|
|
1054
|
+
assign: assign,
|
|
1055
|
+
combine: combine,
|
|
1056
|
+
compact: compact,
|
|
1057
|
+
decode: decode,
|
|
1058
|
+
encode: encode,
|
|
1059
|
+
isBuffer: isBuffer,
|
|
1060
|
+
isOverflow: isOverflow,
|
|
1061
|
+
isRegExp: isRegExp,
|
|
1062
|
+
markOverflow: markOverflow,
|
|
1063
|
+
maybeMap: maybeMap,
|
|
1064
|
+
merge: merge
|
|
1065
|
+
};
|
|
1066
|
+
</pre></td></tr>
|
|
1067
|
+
</table></pre>
|
|
1068
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
1069
|
+
</div><!-- /wrapper -->
|
|
1070
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
1071
|
+
Code coverage
|
|
1072
|
+
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Wed Feb 11 2026 23:54:42 GMT-0800 (Pacific Standard Time)
|
|
1073
|
+
</div>
|
|
1074
|
+
</div>
|
|
1075
|
+
<script src="../prettify.js"></script>
|
|
1076
|
+
<script>
|
|
1077
|
+
window.onload = function () {
|
|
1078
|
+
if (typeof prettyPrint === 'function') {
|
|
1079
|
+
prettyPrint();
|
|
1080
|
+
}
|
|
1081
|
+
};
|
|
1082
|
+
</script>
|
|
1083
|
+
<script src="../sorter.js"></script>
|
|
1084
|
+
</body>
|
|
1085
|
+
</html>
|