UNPKG

hongluan-business-ui

Version:
75 lines (72 loc) 2.49 kB
import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, normalizeStyle, renderSlot, createVNode, toDisplayString, createCommentVNode } from 'vue'; import { useLocale } from 'hongluan-ui'; import { usePrefix } from '../../../utils/util.mjs'; import ImgEmpty from './img-empty.mjs'; import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs'; const _sfc_main = defineComponent({ name: "Empty", components: { [ImgEmpty.name]: ImgEmpty }, props: { image: { type: String, default: "" }, imageSize: [Number, String], description: { type: String, default: "" } }, setup(props) { const { prefix } = usePrefix(); const { t } = useLocale(); const emptyDescription = computed(() => props.description || t("hl.table.emptyText")); const imageStyle = computed(() => { return { width: props.imageSize ? `${props.imageSize}${typeof props.imageSize === "number" ? "px" : ""}` : "" }; }); return { prefix, emptyDescription, imageStyle }; } }); const _hoisted_1 = ["src"]; const _hoisted_2 = { class: "empty-description" }; const _hoisted_3 = { key: 1 }; const _hoisted_4 = { key: 0, class: "empty-bottom" }; function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { const _component_img_empty = resolveComponent("img-empty"); return openBlock(), createElementBlock("div", { class: normalizeClass(_ctx.prefix + "-empty") }, [ createElementVNode("div", { class: "empty-image", style: normalizeStyle(_ctx.imageStyle) }, [ _ctx.image ? (openBlock(), createElementBlock("img", { key: 0, src: _ctx.image, ondragstart: "return false" }, null, 8, _hoisted_1)) : renderSlot(_ctx.$slots, "image", { key: 1 }, () => [ createVNode(_component_img_empty) ]) ], 4), createElementVNode("div", _hoisted_2, [ _ctx.$slots.description ? renderSlot(_ctx.$slots, "description", { key: 0 }) : (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(_ctx.emptyDescription), 1)) ]), _ctx.$slots.default ? (openBlock(), createElementBlock("div", _hoisted_4, [ renderSlot(_ctx.$slots, "default") ])) : createCommentVNode("v-if", true) ], 2); } var Empty = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]); export { Empty as default }; //# sourceMappingURL=index.mjs.map