UNPKG

@wocwin/t-ui-plus

Version:

Page level components developed based on Element Plus.

109 lines (104 loc) 3.64 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); const _hoisted_1 = { class: "t_detail" }; const _hoisted_2 = { key: 0, class: "t_btn" }; var _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...{ name: "ModuleDetail" }, __name: "moduleDetail", props: { descData: { type: Object, default: () => ({}) }, // 是否Title文字加粗 titleBold: { type: Boolean, default: false } }, setup(__props) { const props = __props; const slots = vue.useSlots(); const attrs = vue.useAttrs(); const defaultActiveKey = vue.computed({ get() { return Object.keys(props.descData); }, set(val) { return val; } }); return (_ctx, _cache) => { const _component_t_detail = vue.resolveComponent("t-detail"); const _component_el_collapse_item = vue.resolveComponent("el-collapse-item"); const _component_el_collapse = vue.resolveComponent("el-collapse"); return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [ vue.createVNode(_component_el_collapse, { modelValue: defaultActiveKey.value, "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => defaultActiveKey.value = $event) }, { default: vue.withCtx(() => [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList(__props.descData, (val, index) => { return vue.openBlock(), vue.createBlock(_component_el_collapse_item, { class: vue.normalizeClass({ noTitle: !val.title, disabledStyle: val.disabled, title_bold: __props.titleBold }), key: index, name: val.name, disabled: val.disabled }, { title: vue.withCtx(() => [ vue.createTextVNode( vue.toDisplayString(val.title) + " ", 1 /* TEXT */ ), val.btn ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [ vue.renderSlot(_ctx.$slots, val.btn) ])) : vue.createCommentVNode("v-if", true) ]), default: vue.withCtx(() => [ val.slotName ? vue.renderSlot(_ctx.$slots, val.slotName, { key: 0 }) : vue.createCommentVNode("v-if", true), vue.createVNode(_component_t_detail, vue.mergeProps({ descData: val.data }, vue.unref(attrs)), vue.createSlots({ _: 2 /* DYNAMIC */ }, [ vue.renderList(vue.unref(slots), (_index, name) => { return { name, fn: vue.withCtx((data) => [ vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(data))) ]) }; }) ]), 1040, ["descData"]) ]), _: 2 /* DYNAMIC */ }, 1032, ["class", "name", "disabled"]); }), 128 /* KEYED_FRAGMENT */ )) ]), _: 3 /* FORWARDED */ }, 8, ["modelValue"]) ]); }; } }); exports.default = _sfc_main;