@@ -2,7 +2,6 @@ import path from "path";
22import url from "url" ;
33import Module from "module" ;
44
5- import { klona } from "klona/full" ;
65import { cosmiconfig , defaultLoaders } from "cosmiconfig" ;
76
87const parentModule = module ;
@@ -185,11 +184,9 @@ async function loadConfig(loaderContext, config, postcssOptions) {
185184 options : postcssOptions || { } ,
186185 } ;
187186
188- result . config = result . config ( api ) ;
187+ return { ... result , config : result . config ( api ) } ;
189188 }
190189
191- result = klona ( result ) ;
192-
193190 return result ;
194191}
195192
@@ -330,7 +327,7 @@ async function getPostcssOptions(
330327 loaderContext . emitError ( error ) ;
331328 }
332329
333- const processOptionsFromConfig = loadedConfig . config || { } ;
330+ const processOptionsFromConfig = { ... loadedConfig . config } || { } ;
334331
335332 if ( processOptionsFromConfig . from ) {
336333 processOptionsFromConfig . from = path . resolve (
@@ -346,10 +343,7 @@ async function getPostcssOptions(
346343 ) ;
347344 }
348345
349- // No need them for processOptions
350- delete processOptionsFromConfig . plugins ;
351-
352- const processOptionsFromOptions = klona ( normalizedPostcssOptions ) ;
346+ const processOptionsFromOptions = { ...normalizedPostcssOptions } ;
353347
354348 if ( processOptionsFromOptions . from ) {
355349 processOptionsFromOptions . from = path . resolve (
@@ -365,16 +359,20 @@ async function getPostcssOptions(
365359 ) ;
366360 }
367361
368- // No need them for processOptions
369- delete processOptionsFromOptions . config ;
370- delete processOptionsFromOptions . plugins ;
362+ // No need `plugins` and `config` for processOptions
363+ const { plugins : __plugins , ...optionsFromConfig } = processOptionsFromConfig ;
364+ const {
365+ config : _config ,
366+ plugins : _plugins ,
367+ ...optionsFromOptions
368+ } = processOptionsFromOptions ;
371369
372370 const processOptions = {
373371 from : file ,
374372 to : file ,
375373 map : false ,
376- ...processOptionsFromConfig ,
377- ...processOptionsFromOptions ,
374+ ...optionsFromConfig ,
375+ ...optionsFromOptions ,
378376 } ;
379377
380378 if ( typeof processOptions . parser === "string" ) {
0 commit comments