@@ -146,7 +146,7 @@ const SetCookieKey = 'set-cookie';
146
146
*/
147
147
export class SuperHeaders extends Headers {
148
148
#map: Map < string , string | HeaderValue > ;
149
- #setCookieValues : ( string | SetCookie ) [ ] = [ ] ;
149
+ #setCookies : ( string | SetCookie ) [ ] = [ ] ;
150
150
151
151
constructor ( init ?: string | SuperHeadersInit | Headers ) {
152
152
super ( ) ;
@@ -190,10 +190,9 @@ export class SuperHeaders extends Headers {
190
190
append ( name : string , value : string ) : void {
191
191
let key = name . toLowerCase ( ) ;
192
192
if ( key === SetCookieKey ) {
193
- this . #setCookieValues . push ( value ) ;
193
+ this . #setCookies . push ( value ) ;
194
194
} else {
195
195
let existingValue = this . #map. get ( key ) ;
196
- // TODO: check if it's an empty string
197
196
this . #map. set ( key , existingValue ? `${ existingValue } , ${ value } ` : value ) ;
198
197
}
199
198
}
@@ -206,7 +205,7 @@ export class SuperHeaders extends Headers {
206
205
delete ( name : string ) : void {
207
206
let key = name . toLowerCase ( ) ;
208
207
if ( key === SetCookieKey ) {
209
- this . #setCookieValues = [ ] ;
208
+ this . #setCookies = [ ] ;
210
209
} else {
211
210
this . #map. delete ( key ) ;
212
211
}
@@ -242,9 +241,7 @@ export class SuperHeaders extends Headers {
242
241
* [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/Headers/getSetCookie)
243
242
*/
244
243
getSetCookie ( ) : string [ ] {
245
- return this . #setCookieValues. map ( ( value ) =>
246
- typeof value === 'string' ? value : value . toString ( ) ,
247
- ) ;
244
+ return this . #setCookies. map ( ( value ) => ( typeof value === 'string' ? value : value . toString ( ) ) ) ;
248
245
}
249
246
250
247
/**
@@ -255,7 +252,7 @@ export class SuperHeaders extends Headers {
255
252
has ( name : string ) : boolean {
256
253
let key = name . toLowerCase ( ) ;
257
254
if ( key === SetCookieKey ) {
258
- return this . #setCookieValues . length > 0 ;
255
+ return this . #setCookies . length > 0 ;
259
256
} else {
260
257
return this . #map. has ( key ) ;
261
258
}
@@ -270,7 +267,7 @@ export class SuperHeaders extends Headers {
270
267
set ( name : string , value : string ) : void {
271
268
let key = name . toLowerCase ( ) ;
272
269
if ( key === SetCookieKey ) {
273
- this . #setCookieValues = [ value ] ;
270
+ this . #setCookies = [ value ] ;
274
271
} else {
275
272
this . #map. set ( key , value ) ;
276
273
}
@@ -698,27 +695,25 @@ export class SuperHeaders extends Headers {
698
695
* [HTTP/1.1 Specification](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1)
699
696
*/
700
697
get setCookie ( ) : SetCookie [ ] {
701
- for ( let i = 0 ; i < this . #setCookieValues . length ; ++ i ) {
702
- let value = this . #setCookieValues [ i ] ;
698
+ for ( let i = 0 ; i < this . #setCookies . length ; ++ i ) {
699
+ let value = this . #setCookies [ i ] ;
703
700
if ( typeof value === 'string' ) {
704
- this . #setCookieValues [ i ] = new SetCookie ( value ) ;
701
+ this . #setCookies [ i ] = new SetCookie ( value ) ;
705
702
}
706
703
}
707
704
708
- return this . #setCookieValues as SetCookie [ ] ;
705
+ return this . #setCookies as SetCookie [ ] ;
709
706
}
710
707
711
- set setCookie ( values : ( string | SetCookieInit ) [ ] | string | SetCookieInit | undefined | null ) {
712
- if ( values != null ) {
713
- if ( Array . isArray ( values ) ) {
714
- this . #setCookieValues = values . map ( ( value ) =>
715
- typeof value === 'string' || value instanceof SetCookie ? value : new SetCookie ( value ) ,
716
- ) ;
708
+ set setCookie ( value : ( string | SetCookieInit ) [ ] | string | SetCookieInit | undefined | null ) {
709
+ if ( value != null ) {
710
+ if ( Array . isArray ( value ) ) {
711
+ this . #setCookies = value . map ( ( v ) => ( typeof v === 'string' ? v : new SetCookie ( v ) ) ) ;
717
712
} else {
718
- this . #setCookieValues = [ new SetCookie ( values ) ] ;
713
+ this . #setCookies = [ typeof value === 'string' ? value : new SetCookie ( value ) ] ;
719
714
}
720
715
} else {
721
- this . #setCookieValues = [ ] ;
716
+ this . #setCookies = [ ] ;
722
717
}
723
718
}
724
719
0 commit comments