File tree Expand file tree Collapse file tree 3 files changed +19
-2
lines changed Expand file tree Collapse file tree 3 files changed +19
-2
lines changed Original file line number Diff line number Diff line change @@ -155,6 +155,7 @@ export class FileContentGenerator {
155
155
'export type TArg =\n' +
156
156
'| null\n' +
157
157
'| undefined\n' +
158
+ this . getDarkModeClassnameType ( ) +
158
159
'| TTailwindString\nIMPORTED_T_CUSTOM_CLASSES_ARG' +
159
160
'\n' +
160
161
'export type TTailwind = (...args: TArg[]) => TTailwindString\n' +
@@ -165,6 +166,21 @@ export class FileContentGenerator {
165
166
) ;
166
167
} ;
167
168
169
+ /**
170
+ * Get the dark mode config custom classname type
171
+ * @returns the name of the classname for dark mode
172
+ */
173
+ private getDarkModeClassnameType = ( ) : string => {
174
+ const darkModeConfig = this . _configParser . getDarkMode ( ) ;
175
+ if ( _ . isArray ( darkModeConfig ) && darkModeConfig [ 0 ] === 'class' ) {
176
+ return `| '${ darkModeConfig [ 1 ] } '\n` ;
177
+ } else if ( _ . isString ( darkModeConfig ) && darkModeConfig === 'class' ) {
178
+ return `| 'dark'\n` ;
179
+ } else {
180
+ return '' ;
181
+ }
182
+ } ;
183
+
168
184
/**
169
185
* Generates types group template for a utility classes group object.
170
186
*
Original file line number Diff line number Diff line change @@ -121,7 +121,8 @@ export class TailwindConfigParser {
121
121
122
122
// get responsive variants
123
123
const [ mediaBreakpoints ] = this . getThemeProperty ( 'screens' ) ;
124
- if ( this . getDarkMode ( ) == 'media' || this . getDarkMode ( ) == 'class' ) mediaBreakpoints . push ( 'dark' ) ;
124
+ if ( this . getDarkMode ( ) == 'media' || this . getDarkMode ( ) == 'class' )
125
+ mediaBreakpoints . push ( 'dark' ) ;
125
126
126
127
mediaBreakpoints . map ( ( breakpoint : string ) => {
127
128
if ( ! variants . includes ( breakpoint ) ) {
Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ export type TTailwindCSSConfig = Partial<
5
5
typeof defaultTailwindConfig & Record < 'separator' | 'prefix' | 'mode' , string >
6
6
> ;
7
7
8
- export type TConfigDarkMode = false | 'media' | 'class' ;
8
+ export type TConfigDarkMode = false | 'media' | 'class' | [ 'media' | 'class' , string ] ;
9
9
10
10
export type TConfigTheme = TThemeItems & { extend ?: TThemeItems } ;
11
11
You can’t perform that action at this time.
0 commit comments