@ued_fpi/data-visual
Version:
<br /> <br /> <div style="text-align:center"> <b style="font-size:30px">@ued_fpi/data-visual</b> <p>基于Vite4+TypeScript的Vue3大屏组件库开发框架</p> <img style="display:inline" src="https://img.shields.io/npm/v/@ued_fpi/data-visual" />
88 lines (83 loc) • 3.1 kB
JavaScript
'use strict';
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const vue = require('vue');
const elementPlus = require('element-plus');
const iconsVue = require('@element-plus/icons-vue');
const tools = require('../../../utils/tools.js');
const clsfix = "dv-aims-basic-card";
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
__name: "index",
props: {
width: { default: 400 },
height: { default: "" },
title: { default: "" },
subTitie: { default: "" },
canChecked: { type: Boolean, default: false },
checked: { type: Boolean, default: false },
contentClass: { default: "" },
contentStyle: { default: void 0 },
showCopy: { type: Boolean, default: false },
copyStr: { default: "" }
},
emits: ["clickCard"],
setup(__props, { emit: emits }) {
const props = __props;
const onClickCard = () => {
emits("clickCard");
};
const onCopy = () => {
tools.copyText(props.copyStr);
tools.messageBox("复制成功", "success");
};
return (_ctx, _cache) => {
return vue.openBlock(), vue.createElementBlock("div", {
class: vue.normalizeClass({
[`${clsfix}-container`]: true,
[`${clsfix}-container-checked`]: _ctx.checked
}),
style: vue.normalizeStyle({
width: typeof _ctx.width === "number" ? `${_ctx.width}px` : _ctx.width,
height: typeof _ctx.height === "number" ? `${_ctx.height}px` : _ctx.height,
cursor: _ctx.canChecked ? "pointer" : void 0
}),
onClick: onClickCard
}, [
vue.createElementVNode("header", {
class: vue.normalizeClass(`${clsfix}-header`)
}, [
vue.createElementVNode("div", {
class: vue.normalizeClass(`${clsfix}-header-left`)
}, [
vue.createElementVNode("span", {
class: vue.normalizeClass(`${clsfix}-header-title`)
}, vue.toDisplayString(_ctx.title), 3),
vue.createElementVNode("span", {
class: vue.normalizeClass(`${clsfix}-header-sub-title`)
}, vue.toDisplayString(_ctx.subTitie), 3),
vue.renderSlot(_ctx.$slots, "headerLeft")
], 2),
vue.createElementVNode("div", null, [
vue.renderSlot(_ctx.$slots, "headerRight"),
_ctx.showCopy ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElIcon), {
key: 0,
style: { "cursor": "pointer" },
onClick: onCopy
}, {
default: vue.withCtx(() => [
vue.createVNode(vue.unref(iconsVue.CopyDocument))
]),
_: 1
})) : vue.createCommentVNode("", true)
])
], 2),
vue.createElementVNode("div", {
class: vue.normalizeClass([`${clsfix}-content`, _ctx.contentClass]),
style: vue.normalizeStyle(_ctx.contentStyle)
}, [
vue.renderSlot(_ctx.$slots, "default")
], 6)
], 6);
};
}
});
exports.default = _sfc_main;