UNPKG

@wocwin/t-ui-plus

Version:

Page level components developed based on Element Plus.

191 lines (186 loc) 8.49 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); require('./renderTooltip.vue.js'); require('./renderLabel.vue.js'); var Icons = require('@element-plus/icons-vue'); var renderTooltip_vue_vue_type_script_setup_true_lang = require('./renderTooltip.vue2.js'); var renderLabel_vue_vue_type_script_setup_true_lang = require('./renderLabel.vue2.js'); const _hoisted_1 = { key: 0 }; const _hoisted_2 = { key: 1, class: "tip_class" }; const _hoisted_3 = { key: 0 }; const _hoisted_4 = { key: 1 }; const _hoisted_5 = { key: 0 }; const _hoisted_6 = { key: 0 }; const _hoisted_7 = { key: 1 }; const _hoisted_8 = { key: 0 }; const _hoisted_9 = { key: 1 }; const _hoisted_10 = { key: 0 }; var _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...{ name: "TDetail" }, __name: "index", props: { descColumn: { default: 4 }, dataList: { default: () => ({}) }, listTypeInfo: { default: () => ({}) }, descData: { default: () => [] }, isColon: { type: Boolean, default: true }, isLabelBold: { type: Boolean, default: true } }, setup(__props) { const constantEscape = (value, list, key = "value", label = "label") => { const res = list.find((item) => item[key] === value); return res == null ? void 0 : res[label]; }; return (_ctx, _cache) => { const _component_el_icon = vue.resolveComponent("el-icon"); const _component_el_tooltip = vue.resolveComponent("el-tooltip"); const _component_el_descriptions_item = vue.resolveComponent("el-descriptions-item"); const _component_el_descriptions = vue.resolveComponent("el-descriptions"); return vue.openBlock(), vue.createBlock(_component_el_descriptions, vue.mergeProps({ class: "t_detail" }, _ctx.$attrs, { column: _ctx.descColumn }), { default: vue.withCtx(() => [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList(_ctx.descData, (item, key) => { return vue.openBlock(), vue.createBlock(_component_el_descriptions_item, vue.mergeProps({ key, span: item.span || 1 }, { ...item.bind, ..._ctx.$attrs }), { label: vue.withCtx(() => [ item.labelRender ? (vue.openBlock(), vue.createBlock(renderLabel_vue_vue_type_script_setup_true_lang.default, { key: 0, render: item.labelRender, item }, null, 8, ["render", "item"])) : (vue.openBlock(), vue.createElementBlock( "span", { key: 1, style: vue.normalizeStyle({ fontWeight: _ctx.isLabelBold ? "bold" : "" }) }, [ vue.createTextVNode( vue.toDisplayString(item.label), 1 /* TEXT */ ), _ctx.isColon ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, "\uFF1A")) : vue.createCommentVNode("v-if", true) ], 4 /* STYLE */ )) ]), default: vue.withCtx(() => [ item.slotName ? vue.renderSlot(_ctx.$slots, item.slotName, { key: 0 }) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, [ item.tooltip ? (vue.openBlock(), vue.createBlock(_component_el_tooltip, vue.mergeProps({ key: 0 }, _ctx.$attrs, { placement: item.placement || "bottom" }), vue.createSlots({ default: vue.withCtx(() => [ vue.createElementVNode("span", null, [ item.filters && item.filters.list ? (vue.openBlock(), vue.createElementBlock( "span", _hoisted_3, vue.toDisplayString(constantEscape( item.fieldName ? _ctx.dataList[item.fieldName] : void 0, _ctx.listTypeInfo[item.filters.list], item.filters.key || "value", item.filters.label || "label" )), 1 /* TEXT */ )) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4, [ vue.createTextVNode( vue.toDisplayString(item.value), 1 /* TEXT */ ), item.unit && item.value ? (vue.openBlock(), vue.createElementBlock( "span", _hoisted_5, vue.toDisplayString(item.unit), 1 /* TEXT */ )) : vue.createCommentVNode("v-if", true) ])), vue.createVNode(_component_el_icon, { size: item.iconSize, color: item.iconColor, style: { "cursor": "pointer", "margin-left": "2px", "top": "1px" } }, { default: vue.withCtx(() => [ vue.createVNode(vue.unref(Icons.Warning)) ]), _: 2 /* DYNAMIC */ }, 1032, ["size", "color"]) ]) ]), _: 2 /* DYNAMIC */ }, [ item.tooltip ? { name: "content", fn: vue.withCtx(() => [ typeof item.tooltip === "string" ? (vue.openBlock(), vue.createElementBlock( "span", _hoisted_6, vue.toDisplayString(item.tooltip), 1 /* TEXT */ )) : typeof item.tooltip === "function" ? (vue.openBlock(), vue.createBlock(renderTooltip_vue_vue_type_script_setup_true_lang.default, { key: 1, render: item.tooltip, item }, null, 8, ["render", "item"])) : vue.createCommentVNode("v-if", true) ]), key: "0" } : void 0 ]), 1040, ["placement"])) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_7, [ item.filters && item.filters.list ? (vue.openBlock(), vue.createElementBlock( "span", _hoisted_8, vue.toDisplayString(constantEscape( item.fieldName ? _ctx.dataList[item.fieldName] : void 0, _ctx.listTypeInfo[item.filters.list], item.filters.key || "value", item.filters.label || "label" )), 1 /* TEXT */ )) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_9, [ vue.createTextVNode( vue.toDisplayString(item.value), 1 /* TEXT */ ), item.unit && item.value ? (vue.openBlock(), vue.createElementBlock( "span", _hoisted_10, vue.toDisplayString(item.unit), 1 /* TEXT */ )) : vue.createCommentVNode("v-if", true) ])) ])) ])) ]), _: 2 /* DYNAMIC */ }, 1040, ["span"]); }), 128 /* KEYED_FRAGMENT */ )) ]), _: 3 /* FORWARDED */ }, 16, ["column"]); }; } }); exports.default = _sfc_main;