@@ -4,19 +4,13 @@ import defaults from 'lodash/defaults'
4
4
import map from 'lodash/map'
5
5
import get from 'lodash/get'
6
6
7
- function resolveConfig ( configs ) {
8
- return defaults (
9
- {
10
- theme : resolveFunctionKeys ( mergeExtensions ( defaults ( ...map ( configs , 'theme' ) ) ) ) ,
11
- variants : defaults ( ...map ( configs , 'variants' ) ) ,
12
- } ,
13
- ...configs
14
- )
7
+ function value ( valueToResolve , ...args ) {
8
+ return isFunction ( valueToResolve ) ? valueToResolve ( ...args ) : valueToResolve
15
9
}
16
10
17
11
function mergeExtensions ( { extend, ...theme } ) {
18
- return mergeWith ( theme , extend , ( themeValue , extensions , key ) => {
19
- if ( ! isFunction ( themeValue ) && ! ( isFunction ( extensions ) ) ) {
12
+ return mergeWith ( theme , extend , ( themeValue , extensions ) => {
13
+ if ( ! isFunction ( themeValue ) && ! isFunction ( extensions ) ) {
20
14
return {
21
15
...themeValue ,
22
16
...extensions ,
@@ -41,8 +35,12 @@ function resolveFunctionKeys(object) {
41
35
} , { } )
42
36
}
43
37
44
- function value ( valueToResolve , ...args ) {
45
- return isFunction ( valueToResolve ) ? valueToResolve ( ...args ) : valueToResolve
38
+ export default function resolveConfig ( configs ) {
39
+ return defaults (
40
+ {
41
+ theme : resolveFunctionKeys ( mergeExtensions ( defaults ( ...map ( configs , 'theme' ) ) ) ) ,
42
+ variants : defaults ( ...map ( configs , 'variants' ) ) ,
43
+ } ,
44
+ ...configs
45
+ )
46
46
}
47
-
48
- export default resolveConfig
0 commit comments