tav-ui
Version:
37 lines (33 loc) • 842 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
function isFunction(val) {
return typeof val === "function";
}
function getSlot(slots, slot = "default", data) {
if (!slots || !Reflect.has(slots, slot))
return null;
if (!isFunction(slots[slot])) {
console.error(`${slot} is not a function!`);
return null;
}
const slotFn = slots[slot];
if (!slotFn)
return null;
return slotFn(data);
}
function extendSlots(slots, excludeKeys = []) {
const slotKeys = Object.keys(slots);
const ret = {};
slotKeys.map((key) => {
if (excludeKeys.includes(key)) {
return null;
} else {
ret[key] = () => getSlot(slots, key);
return ret[key];
}
});
return ret;
}
exports.extendSlots = extendSlots;
exports.getSlot = getSlot;
//# sourceMappingURL=tsxHelper2.js.map