UNPKG

tav-ui

Version:
77 lines (74 loc) 2.04 kB
import { h } from 'vue'; import { InfoCircleFilled, CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons-vue'; import { Modal, notification, message } from 'ant-design-vue'; import { isString } from '../../utils/is2.mjs'; function getIcon(iconType) { if (iconType === "warning") return h(InfoCircleFilled, { class: ["modal-icon-warning"] }); else if (iconType === "success") return h(CheckCircleFilled, { class: ["modal-icon-success"] }); else if (iconType === "info") return h(InfoCircleFilled, { class: ["modal-icon-info"] }); else return h(CloseCircleFilled, { class: ["modal-icon-error"] }); } function renderContent({ content }) { if (isString(content)) return h("div", {}, `${content}`); else return content; } function createConfirm(options) { const iconType = options.iconType || "warning"; Reflect.deleteProperty(options, "iconType"); const opt = { centered: true, icon: getIcon(iconType), ...options, content: renderContent(options) }; return Modal.confirm(opt); } const getBaseOptions = () => { return { okText: "\u786E\u5B9A", centered: true }; }; function createModalOptions(options, icon) { return { ...getBaseOptions(), ...options, content: renderContent(options), icon: getIcon(icon) }; } function createSuccessModal(options) { return Modal.success(createModalOptions(options, "success")); } function createErrorModal(options) { return Modal.error(createModalOptions(options, "close")); } function createInfoModal(options) { return Modal.info(createModalOptions(options, "info")); } function createWarningModal(options) { return Modal.warning(createModalOptions(options, "warning")); } notification.config({ placement: "topRight", duration: 3 }); function useMessage() { return { createMessage: message, notification, createConfirm, createSuccessModal, createErrorModal, createInfoModal, createWarningModal }; } export { useMessage }; //# sourceMappingURL=useMessage2.mjs.map