@@ -8,7 +8,7 @@ const matchModuleImport = /^~([^\/]+|@[^\/]+[\/][^\/]+)$/g;
88/**
99 * When libsass tries to resolve an import, it uses a special algorithm.
1010 * Since the sass-loader uses webpack to resolve the modules, we need to simulate that algorithm. This function
11- * returns an array of import paths to try. The first entry in the array is always the original url
11+ * returns an array of import paths to try. The last entry in the array is always the original url
1212 * to enable straight-forward webpack.config aliases.
1313 *
1414 * @param {string } url
@@ -21,7 +21,7 @@ function importsToResolve(url) {
2121 const ext = path . extname ( request ) ;
2222
2323 if ( matchModuleImport . test ( url ) ) {
24- return [ url , request ] ;
24+ return [ request , url ] ;
2525 }
2626
2727 // libsass' import algorithm works like this:
@@ -33,7 +33,7 @@ function importsToResolve(url) {
3333 return [ ] ;
3434 }
3535 if ( ext === ".scss" || ext === ".sass" ) {
36- return [ url , request ] ;
36+ return [ request , url ] ;
3737 }
3838
3939 // In case there is no file extension...
@@ -43,17 +43,17 @@ function importsToResolve(url) {
4343
4444 if ( basename . charAt ( 0 ) === "_" ) {
4545 return [
46- url ,
47- ` ${ request } .scss` , ` ${ request } .sass` , ` ${ request } .css`
46+ ` ${ request } .scss` , ` ${ request } .sass` , ` ${ request } .css` ,
47+ url
4848 ] ;
4949 }
5050
5151 const dirname = path . dirname ( request ) ;
5252
5353 return [
54- url ,
5554 `${ dirname } /_${ basename } .scss` , `${ dirname } /_${ basename } .sass` , `${ dirname } /_${ basename } .css` ,
56- `${ request } .scss` , `${ request } .sass` , `${ request } .css`
55+ `${ request } .scss` , `${ request } .sass` , `${ request } .css` ,
56+ url
5757 ] ;
5858}
5959
0 commit comments