@@ -9,6 +9,10 @@ function isSubdir (root: string, test: string) {
99 return relative && ! relative . startsWith ( '..' ) && ! path . isAbsolute ( relative )
1010}
1111
12+ const PLUGIN_VIRTUAL_PREFIX = "virtual:"
13+ const PLUGIN_VIRTUAL_NAME = "plugin-vuetify"
14+ const VIRTUAL_MODULE_ID = `${ PLUGIN_VIRTUAL_PREFIX } ${ PLUGIN_VIRTUAL_NAME } `
15+
1216export function stylesPlugin ( options : Options ) : Plugin {
1317 const vuetifyBase = resolveVuetifyBase ( )
1418
@@ -36,7 +40,7 @@ export function stylesPlugin (options: Options): Plugin {
3640 )
3741 ) {
3842 if ( options . styles === 'none' ) {
39- return '\0__void__'
43+ return ` ${ PLUGIN_VIRTUAL_PREFIX } __void__`
4044 } else if ( options . styles === 'sass' ) {
4145 const target = source . replace ( / \. c s s $ / , '.sass' )
4246 return this . resolve ( target , importer , { skipSelf : true , custom } )
@@ -51,25 +55,27 @@ export function stylesPlugin (options: Options): Plugin {
5155
5256 tempFiles . set ( file , contents )
5357
54- return `\0plugin-vuetify :${ file } `
58+ return `${ VIRTUAL_MODULE_ID } :${ file } `
5559 }
56- } else if ( source . startsWith ( '/plugin-vuetify:' ) ) {
57- return '\0' + source . slice ( 1 )
58- } else if ( source . startsWith ( '/@id/__x00__plugin-vuetify:' ) ) {
59- return '\0' + source . slice ( 12 )
60+ } else if ( source . startsWith ( `/${ PLUGIN_VIRTUAL_NAME } :` ) ) {
61+ return PLUGIN_VIRTUAL_PREFIX + source . slice ( 1 )
62+ } else if ( source . startsWith ( `/@id/__x00__${ PLUGIN_VIRTUAL_NAME } :` ) ) {
63+ return PLUGIN_VIRTUAL_PREFIX + source . slice ( 12 )
64+ } else if ( source . startsWith ( `/${ VIRTUAL_MODULE_ID } :` ) ) {
65+ return source . slice ( 1 )
6066 }
6167
6268 return null
6369 } ,
6470 load ( id ) {
6571 // When Vite is configured with `optimizeDeps.exclude: ['vuetify']`, the
6672 // received id contains a version hash (e.g. \0__void__?v=893fa859).
67- if ( / ^ \0 _ _ v o i d _ _ ( \ ? .* ) ? $ / . test ( id ) ) {
73+ if ( new RegExp ( `^ ${ PLUGIN_VIRTUAL_PREFIX } __void__(\\ ?.*)?$` ) . test ( id ) ) {
6874 return ''
6975 }
7076
71- if ( id . startsWith ( '\0plugin-vuetify' ) ) {
72- const file = / ^ \0 p l u g i n - v u e t i f y : ( .* ?) ( \? .* ) ? $ / . exec ( id ) ! [ 1 ]
77+ if ( id . startsWith ( ` ${ VIRTUAL_MODULE_ID } ` ) ) {
78+ const file = new RegExp ( `^ ${ VIRTUAL_MODULE_ID } :(.*?)(\\ ?.*)?$` ) . exec ( id ) ! [ 1 ]
7379
7480 return tempFiles . get ( file )
7581 }
0 commit comments