11import path from "path" ;
22
3- import { klona } from "klona/full" ;
4-
53/* eslint-disable class-methods-use-this */
64const trailingSlash = / [ / \\ ] $ / ;
75
@@ -152,19 +150,18 @@ function createWebpackLessPlugin(loaderContext, implementation) {
152150}
153151
154152/**
155- * Get the less options from the loader context and normalizes its values
153+ * Get the ` less` options from the loader context and normalizes its values
156154 *
157155 * @param {object } loaderContext
158156 * @param {object } loaderOptions
159157 * @param {object } implementation
160158 * @returns {Object }
161159 */
162160function getLessOptions ( loaderContext , loaderOptions , implementation ) {
163- const options = klona (
161+ const options =
164162 typeof loaderOptions . lessOptions === "function"
165163 ? loaderOptions . lessOptions ( loaderContext ) || { }
166- : loaderOptions . lessOptions || { }
167- ) ;
164+ : loaderOptions . lessOptions || { } ;
168165
169166 const lessOptions = {
170167 plugins : [ ] ,
@@ -174,18 +171,17 @@ function getLessOptions(loaderContext, loaderOptions, implementation) {
174171 ...options ,
175172 } ;
176173
174+ const plugins = lessOptions . plugins . slice ( ) ;
177175 const shouldUseWebpackImporter =
178176 typeof loaderOptions . webpackImporter === "boolean"
179177 ? loaderOptions . webpackImporter
180178 : true ;
181179
182180 if ( shouldUseWebpackImporter ) {
183- lessOptions . plugins . unshift (
184- createWebpackLessPlugin ( loaderContext , implementation )
185- ) ;
181+ plugins . unshift ( createWebpackLessPlugin ( loaderContext , implementation ) ) ;
186182 }
187183
188- lessOptions . plugins . unshift ( {
184+ plugins . unshift ( {
189185 install ( lessProcessor , pluginManager ) {
190186 // eslint-disable-next-line no-param-reassign
191187 pluginManager . webpackLoaderContext = loaderContext ;
@@ -194,6 +190,8 @@ function getLessOptions(loaderContext, loaderOptions, implementation) {
194190 } ,
195191 } ) ;
196192
193+ lessOptions . plugins = plugins ;
194+
197195 return lessOptions ;
198196}
199197
0 commit comments