UNPKG

vuux

Version:

Vue3 Nuxt3 Nuxt4 组件库

73 lines (72 loc) 2.36 kB
import { defineComponent as E, useTemplateRef as u, createElementBlock as n, createCommentVNode as d, openBlock as r, unref as o, createElementVNode as t, withModifiers as h, normalizeClass as v, createVNode as B, toDisplayString as _, renderSlot as V } from "vue"; import { useModal as M } from "./hook/useModal.mjs"; import { Icon as b } from "@vuux/icons"; const N = { class: "modal-title" }, g = { class: "modal-slot" }, x = { key: 1, class: "modal-footer" }, z = { class: "modal-buts" }, w = /* @__PURE__ */ E({ name: "Modal", __name: "index", props: { title: { default: "" }, modelValue: { type: Boolean }, header: { type: Boolean }, footer: { type: Boolean }, maskClose: { type: Boolean, default: !0 }, modalClass: {}, isDrag: { type: Boolean } }, emits: ["update:modelValue", "ok", "close"], setup(f, { emit: k }) { const l = f, C = k, i = u("contentEl"), m = u("headerEl"), { handleClose: a, handleOk: c, handleMaskClose: p } = M(l, i, m, C); return (y, e) => l.modelValue ? (r(), n("div", { key: 0, class: "app-modal", onClick: e[3] || (e[3] = //@ts-ignore (...s) => o(p) && o(p)(...s)) }, [ t("div", { ref_key: "contentEl", ref: i, class: v(["modal-content", [l.modalClass]]), onClick: e[2] || (e[2] = h(() => { }, ["stop"])) }, [ l.header ? (r(), n("div", { key: 0, ref_key: "headerEl", ref: m, class: "modal-header" }, [ t("div", N, _(l.title), 1), B(o(b), { name: "Icon9176904", size: 14, class: "modal-close-icon", onClick: o(a) }, null, 8, ["onClick"]) ], 512)) : d("", !0), t("div", g, [ V(y.$slots, "default") ]), l.footer ? (r(), n("div", x, [ t("div", z, [ t("button", { class: "is-close", onClick: e[0] || (e[0] = //@ts-ignore (...s) => o(a) && o(a)(...s)) }, "关闭"), t("button", { class: "is-ok", onClick: e[1] || (e[1] = //@ts-ignore (...s) => o(c) && o(c)(...s)) }, "确认") ]) ])) : d("", !0) ], 2) ])) : d("", !0); } }); export { w as default };