@@ -26,6 +26,7 @@ const {
26
26
StringPrototypeIndexOf,
27
27
StringPrototypeSlice,
28
28
StringPrototypeStartsWith,
29
+ StringPrototypeToWellFormed,
29
30
Symbol,
30
31
SymbolIterator,
31
32
SymbolToStringTag,
@@ -42,7 +43,6 @@ const {
42
43
const {
43
44
getConstructorOf,
44
45
removeColors,
45
- toUSVString,
46
46
kEnumerableProperty,
47
47
SideEffectFreeRegExpPrototypeSymbolReplace,
48
48
} = require ( 'internal/util' ) ;
@@ -360,7 +360,11 @@ class URLSearchParams {
360
360
throw new ERR_INVALID_TUPLE ( 'Each query pair' , '[name, value]' ) ;
361
361
}
362
362
// Append (innerSequence[0], innerSequence[1]) to querys list.
363
- ArrayPrototypePush ( this . #searchParams, toUSVString ( pair [ 0 ] ) , toUSVString ( pair [ 1 ] ) ) ;
363
+ ArrayPrototypePush (
364
+ this . #searchParams,
365
+ StringPrototypeToWellFormed ( `${ pair [ 0 ] } ` ) ,
366
+ StringPrototypeToWellFormed ( `${ pair [ 1 ] } ` ) ,
367
+ ) ;
364
368
} else {
365
369
if ( ( ( typeof pair !== 'object' && typeof pair !== 'function' ) ||
366
370
typeof pair [ SymbolIterator ] !== 'function' ) ) {
@@ -371,7 +375,7 @@ class URLSearchParams {
371
375
372
376
for ( const element of pair ) {
373
377
length ++ ;
374
- ArrayPrototypePush ( this . #searchParams, toUSVString ( element ) ) ;
378
+ ArrayPrototypePush ( this . #searchParams, StringPrototypeToWellFormed ( ` ${ element } ` ) ) ;
375
379
}
376
380
377
381
// If innerSequence's size is not 2, then throw a TypeError.
@@ -389,8 +393,8 @@ class URLSearchParams {
389
393
const key = keys [ i ] ;
390
394
const desc = ReflectGetOwnPropertyDescriptor ( init , key ) ;
391
395
if ( desc !== undefined && desc . enumerable ) {
392
- const typedKey = toUSVString ( key ) ;
393
- const typedValue = toUSVString ( init [ key ] ) ;
396
+ const typedKey = StringPrototypeToWellFormed ( key ) ;
397
+ const typedValue = StringPrototypeToWellFormed ( ` ${ init [ key ] } ` ) ;
394
398
395
399
// Two different keys may become the same USVString after normalization.
396
400
// In that case, we retain the later one. Refer to WPT.
@@ -407,7 +411,7 @@ class URLSearchParams {
407
411
}
408
412
} else {
409
413
// https://url.spec.whatwg.org/#dom-urlsearchparams-urlsearchparams
410
- init = toUSVString ( init ) ;
414
+ init = StringPrototypeToWellFormed ( ` ${ init } ` ) ;
411
415
this . #searchParams = init ? parseParams ( init ) : [ ] ;
412
416
}
413
417
}
@@ -462,8 +466,8 @@ class URLSearchParams {
462
466
throw new ERR_MISSING_ARGS ( 'name' , 'value' ) ;
463
467
}
464
468
465
- name = toUSVString ( name ) ;
466
- value = toUSVString ( value ) ;
469
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
470
+ value = StringPrototypeToWellFormed ( ` ${ value } ` ) ;
467
471
ArrayPrototypePush ( this . #searchParams, name , value ) ;
468
472
if ( this . #context) {
469
473
this . #context. search = this . toString ( ) ;
@@ -479,10 +483,10 @@ class URLSearchParams {
479
483
}
480
484
481
485
const list = this . #searchParams;
482
- name = toUSVString ( name ) ;
486
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
483
487
484
488
if ( value !== undefined ) {
485
- value = toUSVString ( value ) ;
489
+ value = StringPrototypeToWellFormed ( ` ${ value } ` ) ;
486
490
for ( let i = 0 ; i < list . length ; ) {
487
491
if ( list [ i ] === name && list [ i + 1 ] === value ) {
488
492
list . splice ( i , 2 ) ;
@@ -513,7 +517,7 @@ class URLSearchParams {
513
517
}
514
518
515
519
const list = this . #searchParams;
516
- name = toUSVString ( name ) ;
520
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
517
521
for ( let i = 0 ; i < list . length ; i += 2 ) {
518
522
if ( list [ i ] === name ) {
519
523
return list [ i + 1 ] ;
@@ -532,7 +536,7 @@ class URLSearchParams {
532
536
533
537
const list = this . #searchParams;
534
538
const values = [ ] ;
535
- name = toUSVString ( name ) ;
539
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
536
540
for ( let i = 0 ; i < list . length ; i += 2 ) {
537
541
if ( list [ i ] === name ) {
538
542
values . push ( list [ i + 1 ] ) ;
@@ -550,10 +554,10 @@ class URLSearchParams {
550
554
}
551
555
552
556
const list = this . #searchParams;
553
- name = toUSVString ( name ) ;
557
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
554
558
555
559
if ( value !== undefined ) {
556
- value = toUSVString ( value ) ;
560
+ value = StringPrototypeToWellFormed ( ` ${ value } ` ) ;
557
561
}
558
562
559
563
for ( let i = 0 ; i < list . length ; i += 2 ) {
@@ -576,8 +580,8 @@ class URLSearchParams {
576
580
}
577
581
578
582
const list = this . #searchParams;
579
- name = toUSVString ( name ) ;
580
- value = toUSVString ( value ) ;
583
+ name = StringPrototypeToWellFormed ( ` ${ name } ` ) ;
584
+ value = StringPrototypeToWellFormed ( ` ${ value } ` ) ;
581
585
582
586
// If there are any name-value pairs whose name is `name`, in `list`, set
583
587
// the value of the first such name-value pair to `value` and remove the
@@ -765,7 +769,7 @@ class URL {
765
769
throw new ERR_MISSING_ARGS ( 'url' ) ;
766
770
}
767
771
768
- // toUSVString is not needed.
772
+ // StringPrototypeToWellFormed is not needed.
769
773
input = `${ input } ` ;
770
774
771
775
if ( base !== undefined ) {
@@ -998,7 +1002,7 @@ class URL {
998
1002
}
999
1003
1000
1004
set search ( value ) {
1001
- const href = bindingUrl . update ( this . #context. href , updateActions . kSearch , toUSVString ( value ) ) ;
1005
+ const href = bindingUrl . update ( this . #context. href , updateActions . kSearch , StringPrototypeToWellFormed ( ` ${ value } ` ) ) ;
1002
1006
if ( href ) {
1003
1007
this . #updateContext( href ) ;
1004
1008
}
@@ -1289,15 +1293,15 @@ function domainToASCII(domain) {
1289
1293
if ( arguments . length < 1 )
1290
1294
throw new ERR_MISSING_ARGS ( 'domain' ) ;
1291
1295
1292
- // toUSVString is not needed.
1296
+ // StringPrototypeToWellFormed is not needed.
1293
1297
return bindingUrl . domainToASCII ( `${ domain } ` ) ;
1294
1298
}
1295
1299
1296
1300
function domainToUnicode ( domain ) {
1297
1301
if ( arguments . length < 1 )
1298
1302
throw new ERR_MISSING_ARGS ( 'domain' ) ;
1299
1303
1300
- // toUSVString is not needed.
1304
+ // StringPrototypeToWellFormed is not needed.
1301
1305
return bindingUrl . domainToUnicode ( `${ domain } ` ) ;
1302
1306
}
1303
1307
@@ -1493,7 +1497,6 @@ function getURLOrigin(url) {
1493
1497
}
1494
1498
1495
1499
module . exports = {
1496
- toUSVString,
1497
1500
fileURLToPath,
1498
1501
pathToFileURL,
1499
1502
toPathIfFileURL,
0 commit comments