@@ -21,15 +21,14 @@ const flattenClassNames = (
2121) => previousValue . concat ( currentValue ) ;
2222
2323export const enum FileTypes {
24- css = 'css' ,
25- sass = 'sass' ,
24+ scss = 'scss' ,
2625 less = 'less' ,
2726}
2827
29- export const getClasses = (
30- css : string ,
31- fileType : FileTypes = FileTypes . css ,
32- ) => {
28+ export const getFileType = ( fileName : string ) =>
29+ fileName . endsWith ( 'less' ) ? FileTypes . less : FileTypes . scss ;
30+
31+ export const getClasses = ( css : string , fileType : FileTypes ) => {
3332 try {
3433 let transformedCss = '' ;
3534
@@ -51,8 +50,8 @@ export const getClasses = (
5150
5251export const createExports = ( classes : IICSSExports , options : Options ) => {
5352 const isCamelCase = ( className : string ) =>
54- ! NOT_CAMELCASE_REGEXP . test ( className ) ;
55- const isReservedWord = ( className : string ) => ! reserved . check ( className ) ;
53+ ! NOT_CAMELCASE_REGEXP . test ( className ) ;
54+ const isReservedWord = ( className : string ) => ! reserved . check ( className ) ;
5655
5756 const processedClasses = Object . keys ( classes )
5857 . map ( transformClasses ( options . camelCase ) )
@@ -77,11 +76,13 @@ export default classes;
7776
7877export const getDtsSnapshot = (
7978 ts : typeof ts_module ,
79+ fileName : string ,
8080 scriptSnapshot : ts . IScriptSnapshot ,
8181 options : Options ,
8282) => {
8383 const css = scriptSnapshot . getText ( 0 , scriptSnapshot . getLength ( ) ) ;
84- const classes = getClasses ( css ) ;
84+ const fileType = getFileType ( fileName ) ;
85+ const classes = getClasses ( css , fileType ) ;
8586 const dts = createExports ( classes , options ) ;
8687 return ts . ScriptSnapshot . fromString ( dts ) ;
8788} ;
0 commit comments