Created
June 9, 2020 14:59
-
-
Save jsmanifest/b85b69ca23eb71095c36d61152fbff1c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function callResolvers(component, resolvers) { | |
let result | |
for (let index = 0; index < resolvers.length; index++) { | |
const resolver = resolvers[index] | |
const resolved = resolver(component) | |
if (resolved) { | |
result = { ...result, ...resolved } | |
} | |
} | |
return result | |
} | |
function start(component, resolvers = []) { | |
let baseResolvers | |
let styleResolvers | |
// Ensure base resolvers is the correct data type | |
if (Array.isArray(resolvers.base)) baseResolvers = resolvers.base | |
else baseResolvers = [resolvers.base] | |
// Ensure style resolvers is the correct data type | |
if (Array.isArray(resolvers.styles)) styleResolvers = resolvers.styles | |
else styleResolvers = [resolvers.styles] | |
return { | |
...component, | |
...callResolvers(component, baseResolvers), | |
style: { | |
...component.style, | |
...callResolvers(component, styleResolvers)), | |
}, | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment