You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
2.3 KiB
57 lines
2.3 KiB
import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, normalizeStyle, renderSlot, createVNode, toDisplayString, createCommentVNode } from 'vue';
|
|
import ImgEmpty from './img-empty.mjs';
|
|
import { emptyProps } from './empty2.mjs';
|
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
import { addUnit } from '../../../utils/dom/style.mjs';
|
|
|
|
const __default__ = defineComponent({
|
|
name: "ElEmpty"
|
|
});
|
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
...__default__,
|
|
props: emptyProps,
|
|
setup(__props) {
|
|
const props = __props;
|
|
const { t } = useLocale();
|
|
const ns = useNamespace("empty");
|
|
const emptyDescription = computed(() => props.description || t("el.table.emptyText"));
|
|
const imageStyle = computed(() => ({
|
|
width: addUnit(props.imageSize)
|
|
}));
|
|
return (_ctx, _cache) => {
|
|
return openBlock(), createElementBlock("div", {
|
|
class: normalizeClass(unref(ns).b())
|
|
}, [
|
|
createElementVNode("div", {
|
|
class: normalizeClass(unref(ns).e("image")),
|
|
style: normalizeStyle(unref(imageStyle))
|
|
}, [
|
|
_ctx.image ? (openBlock(), createElementBlock("img", {
|
|
key: 0,
|
|
src: _ctx.image,
|
|
ondragstart: "return false"
|
|
}, null, 8, ["src"])) : renderSlot(_ctx.$slots, "image", { key: 1 }, () => [
|
|
createVNode(ImgEmpty)
|
|
])
|
|
], 6),
|
|
createElementVNode("div", {
|
|
class: normalizeClass(unref(ns).e("description"))
|
|
}, [
|
|
_ctx.$slots.description ? renderSlot(_ctx.$slots, "description", { key: 0 }) : (openBlock(), createElementBlock("p", { key: 1 }, toDisplayString(unref(emptyDescription)), 1))
|
|
], 2),
|
|
_ctx.$slots.default ? (openBlock(), createElementBlock("div", {
|
|
key: 0,
|
|
class: normalizeClass(unref(ns).e("bottom"))
|
|
}, [
|
|
renderSlot(_ctx.$slots, "default")
|
|
], 2)) : createCommentVNode("v-if", true)
|
|
], 2);
|
|
};
|
|
}
|
|
});
|
|
var Empty = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "empty.vue"]]);
|
|
|
|
export { Empty as default };
|
|
//# sourceMappingURL=empty.mjs.map
|