1
1
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
3
+ import { isReadonlyArray } from './utils/values' ;
4
+
3
5
type HeaderValue = string | undefined | null ;
4
6
export type HeadersLike =
5
7
| Headers
@@ -9,7 +11,7 @@ export type HeadersLike =
9
11
| null
10
12
| NullableHeaders ;
11
13
12
- const brand_privateNullableHeaders = Symbol ( 'brand.privateNullableHeaders' ) ;
14
+ const brand_privateNullableHeaders = /* @__PURE__ */ Symbol ( 'brand.privateNullableHeaders' ) ;
13
15
14
16
/**
15
17
* @internal
@@ -25,8 +27,6 @@ export type NullableHeaders = {
25
27
nulls : Set < string > ;
26
28
} ;
27
29
28
- const isArray = Array . isArray as ( val : unknown ) => val is readonly unknown [ ] ;
29
-
30
30
function * iterateHeaders ( headers : HeadersLike ) : IterableIterator < readonly [ string , string | null ] > {
31
31
if ( ! headers ) return ;
32
32
@@ -43,7 +43,7 @@ function* iterateHeaders(headers: HeadersLike): IterableIterator<readonly [strin
43
43
let iter : Iterable < readonly ( HeaderValue | readonly HeaderValue [ ] ) [ ] > ;
44
44
if ( headers instanceof Headers ) {
45
45
iter = headers . entries ( ) ;
46
- } else if ( isArray ( headers ) ) {
46
+ } else if ( isReadonlyArray ( headers ) ) {
47
47
iter = headers ;
48
48
} else {
49
49
shouldClear = true ;
@@ -52,7 +52,7 @@ function* iterateHeaders(headers: HeadersLike): IterableIterator<readonly [strin
52
52
for ( let row of iter ) {
53
53
const name = row [ 0 ] ;
54
54
if ( typeof name !== 'string' ) throw new TypeError ( 'expected header name to be a string' ) ;
55
- const values = isArray ( row [ 1 ] ) ? row [ 1 ] : [ row [ 1 ] ] ;
55
+ const values = isReadonlyArray ( row [ 1 ] ) ? row [ 1 ] : [ row [ 1 ] ] ;
56
56
let didClear = false ;
57
57
for ( const value of values ) {
58
58
if ( value === undefined ) continue ;
0 commit comments