@@ -12,6 +12,23 @@ const normalizeOptions = require('./normalizeOptions');
1212
1313let nodeSassJobQueue = null ;
1414
15+ // Very hacky check
16+ function hasGetResolve ( loaderContext ) {
17+ return (
18+ loaderContext . getResolve &&
19+ // eslint-disable-next-line no-underscore-dangle
20+ loaderContext . _compiler &&
21+ // eslint-disable-next-line no-underscore-dangle
22+ loaderContext . _compiler . resolverFactory &&
23+ // eslint-disable-next-line no-underscore-dangle
24+ loaderContext . _compiler . resolverFactory . _create &&
25+ / c a c h e d C l e v e r M e r g e / . test (
26+ // eslint-disable-next-line no-underscore-dangle
27+ loaderContext . _compiler . resolverFactory . _create . toString ( )
28+ )
29+ ) ;
30+ }
31+
1532/**
1633 * The sass-loader makes node-sass and dart-sass available to webpack modules.
1734 *
@@ -37,8 +54,8 @@ function sassLoader(content) {
3754
3855 let resolve = pify ( this . resolve ) ;
3956
40- // Supported since v4.27 .0
41- if ( this . getResolve ) {
57+ // Supported since v4.36 .0
58+ if ( hasGetResolve ( self ) ) {
4259 resolve = this . getResolve ( {
4360 mainFields : [ 'sass' , 'style' , '...' ] ,
4461 extensions : [ '.scss' , '.sass' , '.css' , '...' ] ,
0 commit comments