File tree Expand file tree Collapse file tree 1 file changed +23
-4
lines changed
Expand file tree Collapse file tree 1 file changed +23
-4
lines changed Original file line number Diff line number Diff line change 1+ import { processHeaders } from './utils' ;
12import {
23 GET ,
34 APPLICATION_JSON ,
@@ -297,9 +298,27 @@ export function mergeConfig<K extends keyof RequestConfig>(
297298 targetConfig : RequestConfig ,
298299) : void {
299300 if ( overrideConfig [ property ] ) {
300- targetConfig [ property ] = {
301- ...baseConfig [ property ] ,
302- ...overrideConfig [ property ] ,
303- } ;
301+ const base = baseConfig [ property ] ;
302+ const override = overrideConfig [ property ] ;
303+
304+ // Handle Headers instances which don't expose entries as own enumerable properties
305+ if (
306+ property === 'headers' &&
307+ ( ( base as Headers | ( HeadersObject & HeadersInit ) ) instanceof Headers ||
308+ ( override as Headers | ( HeadersObject & HeadersInit ) ) instanceof
309+ Headers )
310+ ) {
311+ const baseNormalized = processHeaders ( base ) ;
312+ const overrideNormalized = processHeaders ( override ) ;
313+ targetConfig [ property ] = {
314+ ...baseNormalized ,
315+ ...overrideNormalized ,
316+ } as RequestConfig [ K ] ;
317+ } else {
318+ targetConfig [ property ] = {
319+ ...base ,
320+ ...override ,
321+ } ;
322+ }
304323 }
305324}
You can’t perform that action at this time.
0 commit comments