File tree Expand file tree Collapse file tree 1 file changed +14
-8
lines changed
Expand file tree Collapse file tree 1 file changed +14
-8
lines changed Original file line number Diff line number Diff line change @@ -42,17 +42,23 @@ export async function transformCssModule(
4242 const compiledId = actualId
4343 . replaceAll ( '\\' , '/' )
4444 . replace ( / \. m o d u l e \. c s s $ / , '.module_built.css' )
45+
46+ const classes = Object . fromEntries (
47+ Object . entries ( res . exports ?? { } ) . map ( ( [ key , value ] ) => [ key , value . name ] ) ,
48+ )
49+ let exports = `const classes = ${ JSON . stringify ( classes ) } \nexport default classes\n`
50+ const i = 0
51+ for ( const key of Object . keys ( classes ) ) {
52+ const sanitizedKey = `_${ key . replaceAll ( / \W / g, '_' ) } ${ i } `
53+ exports +=
54+ `\nconst ${ sanitizedKey } = classes[${ JSON . stringify ( key ) } ]\n` +
55+ `export { ${ sanitizedKey } as ${ JSON . stringify ( key ) } }\n`
56+ }
57+
4558 return {
4659 code : res . code . toString ( ) ,
4760 map : 'map' in res ? res . map ?. toString ( ) : undefined ,
4861 id : compiledId ,
49- exports : res . exports
50- ? Object . entries ( res . exports )
51- . map (
52- ( [ name , { name : className } ] ) =>
53- `export const ${ name } = "${ className } ";` ,
54- )
55- . join ( '\n' )
56- : '' ,
62+ exports,
5763 }
5864}
You can’t perform that action at this time.
0 commit comments