mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-23 00:45:16 +00:00
23 lines
642 B
JavaScript
23 lines
642 B
JavaScript
/* eslint-disable no-restricted-syntax */
|
|
export default function getThemeProps(params) {
|
|
var theme = params.theme,
|
|
name = params.name,
|
|
props = params.props;
|
|
|
|
if (!theme || !theme.props || !theme.props[name]) {
|
|
return props;
|
|
} // Resolve default props, code borrow from React source.
|
|
// https://github.com/facebook/react/blob/15a8f031838a553e41c0b66eb1bcf1da8448104d/packages/react/src/ReactElement.js#L221
|
|
|
|
|
|
var defaultProps = theme.props[name];
|
|
var propName;
|
|
|
|
for (propName in defaultProps) {
|
|
if (props[propName] === undefined) {
|
|
props[propName] = defaultProps[propName];
|
|
}
|
|
}
|
|
|
|
return props;
|
|
} |