choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
60 lines (44 loc) • 1.24 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = mergeProps;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _classnames = _interopRequireDefault(require("classnames"));
function mergeStyle(style, newStyle) {
if (!style) {
return newStyle;
}
if (newStyle) {
return (0, _objectSpread2["default"])({}, style, {}, newStyle);
}
return style;
}
function mergeClassNameAndStyle(props, newProps) {
if (!props) {
return newProps;
}
if (newProps) {
var style = mergeStyle(props.style, newProps.style);
var className = (0, _classnames["default"])(props.className, newProps.className);
if (style || className) {
return {
style: style,
className: className
};
}
return undefined;
}
return props;
}
function mergeProps(props, newProps) {
if (!props) {
return newProps;
}
if (newProps) {
return (0, _objectSpread2["default"])({}, props, {}, newProps, {}, mergeClassNameAndStyle(props, newProps));
}
return props;
}
//# sourceMappingURL=mergeProps.js.map