UNPKG

yanzhen-design-vue

Version:

72 lines (71 loc) 2.1 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const vue = require("vue"); const utilsVue = require("@yanzhen-libs/utils-vue"); const lodashEs = require("lodash-es"); const divider = require("./divider.cjs"); const { ns } = divider.dividerOptions; function useDivider(props, emit) { const _ref = vue.ref(null); const attrs = vue.useAttrs(); const textRef = vue.computed(() => props.text); const titleRef = vue.computed(() => { const defStyle = {}; if (typeof props.title === "string") { return { text: props.title, style: defStyle }; } else if (utilsVue.isObject(props.title)) { return vue.mergeProps( { ...props.title }, { style: defStyle } ); } return { style: defStyle }; }); const titleBoldRef = vue.computed(() => { if (lodashEs.isString(props.titleFontBold)) { return ns.is(props.titleFontBold); } return void 0; }); const dividerBoldRef = vue.computed(() => { if (lodashEs.isString(props.dividerBold)) { return ns.is(props.dividerBold); } return void 0; }); const hiddenTitle = vue.computed(() => { const { hidden, text } = utilsVue.unref(titleRef); if (lodashEs.isFunction(hidden)) { return hidden(text) ?? false; } if (lodashEs.isBoolean(hidden)) { return hidden; } const hiddenTitle2 = props.hiddenTitle; if (lodashEs.isFunction(hiddenTitle2)) { return hiddenTitle2(text) ?? false; } if (lodashEs.isBoolean(hiddenTitle2)) { return hiddenTitle2; } return false; }); const config = vue.computed(() => lodashEs.omit(props, ...Object.keys(divider.AntDivider.props))); const proxyProps = utilsVue.useProxyProps(config, divider.dividerEmits, { emit }); const propsRef = vue.computed(() => { return vue.mergeProps(utilsVue.unref(attrs), utilsVue.unref(proxyProps)); }); return { _ref, propsRef, textRef, titleRef, hiddenTitle, titleBoldRef, dividerBoldRef }; } exports.useDivider = useDivider;