@@ -15,7 +15,7 @@ const Values = require('postcss-modules-values');
15
15
const LocalByDefault = require ( 'postcss-modules-local-by-default' ) ;
16
16
const ExtractImports = require ( 'postcss-modules-extract-imports' ) ;
17
17
const Scope = require ( 'postcss-modules-scope' ) ;
18
- const Parser = require ( 'postcss-modules-parser ' ) ;
18
+ const ResolveImports = require ( 'postcss-modules-resolve-imports ' ) ;
19
19
20
20
const debugFetch = require ( 'debug' ) ( 'css-modules:fetch' ) ;
21
21
const debugSetup = require ( 'debug' ) ( 'css-modules:setup' ) ;
@@ -40,6 +40,7 @@ module.exports = function setupHook({
40
40
debugSetup ( arguments [ 0 ] ) ;
41
41
validate ( arguments [ 0 ] ) ;
42
42
43
+ const exts = toArray ( extensions ) ;
43
44
const tokensByFile = { } ;
44
45
45
46
// debug option is preferred NODE_ENV === 'development'
@@ -56,7 +57,7 @@ module.exports = function setupHook({
56
57
// small fallback
57
58
scopedName = ( local , filename ) => Scope . generateScopedName ( local , relative ( context , filename ) ) ;
58
59
59
- const plugins = ( use || [
60
+ const plugins = use || [
60
61
...prepend ,
61
62
Values ,
62
63
mode
@@ -66,8 +67,9 @@ module.exports = function setupHook({
66
67
? new ExtractImports ( { createImportedName} )
67
68
: ExtractImports ,
68
69
new Scope ( { generateScopedName : scopedName } ) ,
70
+ new ResolveImports ( { resolve : { extensions : exts } } ) ,
69
71
...append ,
70
- ] ) . concat ( new Parser ( { fetch } ) ) ; // no pushing in order to avoid the possible mutations ;
72
+ ] ;
71
73
72
74
// https://github.com/postcss/postcss#options
73
75
const runner = postcss ( plugins ) ;
@@ -99,7 +101,7 @@ module.exports = function setupHook({
99
101
// https://github.com/postcss/postcss/blob/master/docs/api.md#lazywarnings
100
102
lazyResult . warnings ( ) . forEach ( message => console . warn ( message . text ) ) ;
101
103
102
- tokens = lazyResult . root . tokens ;
104
+ tokens = lazyResult . root . exports || { } ;
103
105
104
106
if ( ! debugMode )
105
107
// updating cache
@@ -117,7 +119,6 @@ module.exports = function setupHook({
117
119
return tokens ;
118
120
}
119
121
120
- const exts = toArray ( extensions ) ;
121
122
const isException = buildExceptionChecker ( ignore ) ;
122
123
123
124
const hook = filename => {
0 commit comments