UNPKG

@zhsz/cool-design-dv

Version:

27 lines (26 loc) 846 B
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const lodashEs = require("lodash-es"); function setExtend(options, extend) { Object.entries(extend).forEach(([key, value]) => { if (key.includes(".")) { lodashEs.set(options, key, value); } else if (typeof value === "function") { options[key] = value(options[key]); } else if (value === null) { options[key] = value; } else { const attrs = options[key]; if (Array.isArray(attrs) && lodashEs.isObject(value)) { attrs.forEach((attr) => { lodashEs.merge(attr, value); }); } else if (lodashEs.isObject(attrs)) { lodashEs.merge(attrs, value); } else { options[key] = value; } } }); } exports.default = setExtend;