1
1
const { fs, path, logger, chalk } = require ( '@vuepress/shared-utils' )
2
2
3
- module . exports = ( options , context ) => ( {
3
+ module . exports = ( options , ctx ) => ( {
4
4
name : '@vuepress/internal-style' ,
5
5
6
6
enhanceAppFiles : [ path . resolve ( __dirname , 'client.js' ) ] ,
7
7
8
8
async ready ( ) {
9
- const { sourceDir, writeTemp } = context
9
+ const { sourceDir, writeTemp } = ctx
10
10
11
11
const overridePath = path . resolve ( sourceDir , '.vuepress/override.styl' )
12
12
const hasUserOverride = fs . existsSync ( overridePath )
@@ -15,10 +15,17 @@ module.exports = (options, context) => ({
15
15
logger . tip ( `${ chalk . magenta ( 'override.styl' ) } has been deprecated from v1.0.0, using ${ chalk . cyan ( '.vuepress/style/palette.styl' ) } instead.\n` )
16
16
}
17
17
18
- // style.styl API.
19
- const stylePath = path . resolve ( sourceDir , '.vuepress/styles/index.styl' )
20
- const hasUserStyle = fs . existsSync ( stylePath )
21
- await writeTemp ( 'style.styl' , hasUserStyle ? `@import(${ JSON . stringify ( stylePath ) } )` : '' )
18
+ const themeStyle = path . resolve ( ctx . themePath , 'styles/index.styl' )
19
+ const userStyle = path . resolve ( sourceDir , '.vuepress/styles/index.styl' )
20
+
21
+ const themeStyleContent = fs . existsSync ( themeStyle )
22
+ ? `@import(${ JSON . stringify ( themeStyle ) } )`
23
+ : ''
24
+ const userStyleContent = fs . existsSync ( userStyle )
25
+ ? `@import(${ JSON . stringify ( userStyle ) } )`
26
+ : ''
27
+
28
+ const styleContent = themeStyleContent + userStyleContent
29
+ await writeTemp ( 'style.styl' , styleContent )
22
30
}
23
31
} )
24
-
0 commit comments