@@ -3,15 +3,18 @@ import { kebabCase } from '../utils'
3
3
4
4
export interface VarletUIResolverOptions {
5
5
/**
6
- * import css along with components
6
+ * import style along with components
7
7
*
8
- * @default true
8
+ * @default 'css'
9
+ */
10
+ importStyle ?: boolean | 'css' | 'less'
11
+
12
+ /**
13
+ * @deprecated use `importStyle: 'css'` instead
9
14
*/
10
15
importCss ?: boolean
11
16
/**
12
- * import less along with components
13
- *
14
- * @default false
17
+ * @deprecated use `importStyle: 'less'` instead
15
18
*/
16
19
importLess ?: boolean
17
20
}
@@ -21,21 +24,30 @@ export interface VarletUIResolverOptions {
21
24
*
22
25
* @link https://github.com/haoziqaq/varlet
23
26
*/
24
- export const VarletUIResolver = ( options : VarletUIResolverOptions = { } ) : ComponentResolver => ( name : string ) => {
25
- const {
26
- importCss = true ,
27
- importLess,
28
- } = options
29
- if ( name . startsWith ( 'Var' ) ) {
30
- const partialName = name . slice ( 3 )
31
- const sideEffects = [ ]
32
- importCss && sideEffects . push ( `@varlet/ui/es/${ kebabCase ( partialName ) } /style` )
33
- importLess && sideEffects . push ( `@varlet/ui/es/${ kebabCase ( partialName ) } /style/less.js` )
27
+ export function VarletUIResolver ( options : VarletUIResolverOptions = { } ) : ComponentResolver {
28
+ return ( name : string ) => {
29
+ const {
30
+ importStyle = 'css' ,
31
+ importCss = true ,
32
+ importLess,
33
+ } = options
34
+
35
+ if ( name . startsWith ( 'Var' ) ) {
36
+ const partialName = name . slice ( 3 )
37
+ const sideEffects = [ ]
38
+
39
+ if ( importStyle || importCss ) {
40
+ if ( importStyle === 'less' || importLess )
41
+ sideEffects . push ( `@varlet/ui/es/${ kebabCase ( partialName ) } /style/less.js` )
42
+ else
43
+ sideEffects . push ( `@varlet/ui/es/${ kebabCase ( partialName ) } /style` )
44
+ }
34
45
35
- return {
36
- importName : `_${ partialName } Component` ,
37
- path : '@varlet/ui' ,
38
- sideEffects,
46
+ return {
47
+ importName : `_${ partialName } Component` ,
48
+ path : '@varlet/ui' ,
49
+ sideEffects,
50
+ }
39
51
}
40
52
}
41
53
}
0 commit comments