UNPKG

tav-ui

Version:
107 lines (102 loc) 4.24 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var iconsVue = require('@ant-design/icons-vue'); var antDesignVue = require('ant-design-vue'); var useAttrs = require('../../../hooks/core/useAttrs2.js'); var index = require('../../button/index2.js'); var index$1 = require('../../icon/index2.js'); var is = require('../../../utils/is2.js'); require('../../../locales/index2.js'); var types = require('./types2.js'); var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js'); var transfer = require('../../../locales/transfer2.js'); const _sfc_main = vue.defineComponent({ name: "TaButtonModal", components: { Button: index.TaButton, Tooltip: antDesignVue.Tooltip }, inheritAttrs: false, props: types.buttonModalProps, setup(props) { const actionEl = vue.ref(null); const attrs = useAttrs.useAttrs(); const getBindValues = vue.computed(() => { return Object.assign({ okText: transfer.tavI18n("Tav.common.okText"), cancelText: transfer.tavI18n("Tav.common.cancelText") }, { ...props, ...vue.unref(attrs) }); }); function getTooltip(data) { return { getPopupContainer: () => vue.unref(actionEl) || document.body, placement: "bottom", ...is.isString(data) ? { title: data } : data }; } const handleButtonClick = () => { const _getBindValues = vue.unref(getBindValues); if (_getBindValues.onClick) { _getBindValues.onClick(); } else { const confirmProps = { class: "modal-button-confirm", icon: vue.h(iconsVue.ExclamationCircleOutlined), ..._getBindValues.popConfirm }; if (_getBindValues.icon) confirmProps.icon = vue.h(index$1.TaIcon, { icon: vue.unref(getBindValues).icon }); if (_getBindValues.popConfirm && _getBindValues.popConfirm.confirm) confirmProps.onOk = _getBindValues.popConfirm.confirm; if (_getBindValues.popConfirm && _getBindValues.popConfirm.cancel) confirmProps.onCancel = _getBindValues.popConfirm.cancel; antDesignVue.Modal.confirm(confirmProps); } }; return { getBindValues, handleButtonClick, getTooltip }; } }); function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { const _component_Button = vue.resolveComponent("Button"); const _component_Tooltip = vue.resolveComponent("Tooltip"); return vue.openBlock(), vue.createElementBlock("div", null, [ _ctx.isInDropDown ? (vue.openBlock(), vue.createElementBlock("div", { key: 0, class: "ta-button-modal dropdown-modal-button", onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleButtonClick && _ctx.handleButtonClick(...args)) }, [ vue.renderSlot(_ctx.$slots, "default") ])) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [ _ctx.getBindValues.tooltip ? (vue.openBlock(), vue.createBlock(_component_Tooltip, vue.normalizeProps(vue.mergeProps({ key: 0 }, _ctx.getTooltip(_ctx.getBindValues.tooltip))), { default: vue.withCtx(() => [ vue.createVNode(_component_Button, vue.mergeProps({ ..._ctx.getBindValues, onClick: null }, { class: "ta-button-modal", onClick: _ctx.handleButtonClick }), { default: vue.withCtx(() => [ vue.renderSlot(_ctx.$slots, "default") ]), _: 3 }, 16, ["onClick"]) ]), _: 3 }, 16)) : (vue.openBlock(), vue.createBlock(_component_Button, vue.mergeProps({ key: 1 }, { ..._ctx.getBindValues, onClick: null }, { class: "ta-button-modal", onClick: _ctx.handleButtonClick }), { default: vue.withCtx(() => [ vue.renderSlot(_ctx.$slots, "default") ]), _: 3 }, 16, ["onClick"])) ], 2112)) ]); } var ButtonModal = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/tav-ui/tav-ui/packages/components/button-modal/src/button-modal.vue"]]); exports["default"] = ButtonModal; //# sourceMappingURL=button-modal2.js.map