{"version":3,"file":"popconfirm.vue2.mjs","sources":["../../../../../packages/components/popconfirm/src/popconfirm.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n  name: 'ElPopconfirm'\n});\n</script>\n<template>\n  <el-tooltip\n    ref=\"tooltipRef\"\n    v-bind=\"$attrs\"\n    trigger=\"click\"\n    effect=\"light\"\n    :popper-class=\"`${ns.namespace}-popover`\"\n    :teleported=\"compatTeleported\"\n    :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n    :hide-after=\"hideAfter\"\n    :persistent=\"persistent\"\n    @before-show=\"emit('change', true)\"\n    @before-hide=\"emit('change', false)\"\n  >\n    <template #content>\n      <div :class=\"ns.b()\">\n        <div :class=\"ns.e('title')\">\n          <el-icon v-if=\"!hideIcon && icon\" :class=\"ns.e('icon')\" :style=\"{ color: iconColor }\">\n            <component :is=\"icon\" />\n          </el-icon>\n          {{ title }}\n        </div>\n        <div :class=\"ns.e('content')\">\n          <slot>\n            {{content}}\n          </slot>\n        </div>\n        <div :class=\"ns.e('action')\">\n          <el-button size=\"small\" :type=\"cancelButtonType\" @click=\"cancel\">\n            {{ finalCancelButtonText }}\n          </el-button>\n          <el-button size=\"small\" :type=\"confirmButtonType\" @click=\"confirm\">\n            {{ finalConfirmButtonText }}\n          </el-button>\n        </div>\n      </div>\n    </template>\n    <template v-if=\"$slots.reference\">\n      <slot name=\"reference\" />\n    </template>\n  </el-tooltip>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, unref } from 'vue'\nimport ElButton from '@element-ultra/components/button'\nimport ElIcon from '@element-ultra/components/icon'\nimport ElTooltip from '@element-ultra/components/tooltip'\nimport { useDeprecateAppendToBody } from '@element-ultra/components/popper'\nimport { useNamespace } from '@element-ultra/hooks'\nimport { popconfirmProps } from './popconfirm'\n\n\n\nconst props = defineProps(popconfirmProps)\n\nconst emit = defineEmits({\n  change: (visible: boolean) => true\n})\n\nconst { compatTeleported } = useDeprecateAppendToBody('ElPopconfirm', 'appendToBody')\n\nconst ns = useNamespace('popconfirm')\nconst tooltipRef = ref<{ onClose: () => void }>()\n\nconst hidePopper = () => {\n  unref(tooltipRef)?.onClose?.()\n}\n\nconst handleCallback = () => {\n  hidePopper()\n}\n\nconst confirm = (e: Event) => {\n  props.onConfirm?.(e)\n  handleCallback()\n}\nconst cancel = (e: Event) => {\n  props.onCancel?.(e)\n  handleCallback()\n}\n\nconst finalConfirmButtonText = computed(() => props.confirmButtonText)\nconst finalCancelButtonText = computed(() => props.cancelButtonText)\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,cAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;AA8DD,IAAA,MAAM,EAAE,gBAAA,EAAqB,GAAA,wBAAA,CAAyB,gBAAgB,cAAc,CAAA,CAAA;AAEpF,IAAM,MAAA,EAAA,GAAK,aAAa,YAAY,CAAA,CAAA;AACpC,IAAA,MAAM,aAAa,GAA6B,EAAA,CAAA;AAEhD,IAAA,MAAM,aAAa,MAAM;;AACvB,MAAM,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,UAAU,CAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAmB,OAAnB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,iBAAiB,MAAM;AAC3B,MAAW,UAAA,EAAA,CAAA;AAAA,KACb,CAAA;AAEA,IAAM,MAAA,OAAA,GAAU,CAAC,CAAa,KAAA;;AAC5B,MAAA,CAAA,EAAA,GAAA,KAAA,CAAM,cAAN,IAAkB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA;AAClB,MAAe,cAAA,EAAA,CAAA;AAAA,KACjB,CAAA;AACA,IAAM,MAAA,MAAA,GAAS,CAAC,CAAa,KAAA;;AAC3B,MAAA,CAAA,EAAA,GAAA,KAAA,CAAM,aAAN,IAAiB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA;AACjB,MAAe,cAAA,EAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAA,MAAM,sBAAyB,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,iBAAiB,CAAA,CAAA;AACrE,IAAA,MAAM,qBAAwB,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,gBAAgB,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}