{"version":3,"file":"popconfirm2.mjs","sources":["../../../../../../packages/components/popconfirm/src/popconfirm.vue"],"sourcesContent":["<template>\n  <hl-tooltip\n    ref=\"tooltipRef\"\n    trigger=\"click\"\n    :effect=\"effect\"\n    v-bind=\"$attrs\"\n    :popper-class=\"`${HlPrefix}-popover ${popperClass}`\"\n    :popper-style=\"style\"\n    :teleported=\"compatTeleported\"\n    :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n    :hide-after=\"hideAfter\"\n    :persistent=\"persistent\"\n  >\n    <template #content>\n      <div :class=\"`${prefix}-popconfirm`\">\n        <div class=\"main\">\n          <slot name=\"title\">\n            {{ title }}\n          </slot>\n        </div>\n        <div class=\"action\">\n          <hl-button size=\"sm\" :type=\"cancelButtonType\" @click=\"cancel\">\n            {{ finalCancelButtonText }}\n          </hl-button>\n          <hl-button size=\"sm\" :type=\"confirmButtonType\" @click=\"confirm\">\n            {{ finalConfirmButtonText }}\n          </hl-button>\n        </div>\n      </div>\n    </template>\n    <template v-if=\"$slots.reference\">\n      <slot name=\"reference\"></slot>\n    </template>\n  </hl-tooltip>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, unref } from 'vue'\nimport { HlButton, HlTooltip, useLocale, PREFIX as HlPrefix, useDeprecateAppendToBody } from 'hongluan-ui'\nimport { usePrefix } from '@hongluan-business-ui/utils/util'\nimport { addUnit } from '@hongluan-business-ui/utils/dom'\nimport { popconfirmProps } from './popconfirm'\n\nexport default defineComponent({\n  name: 'Popconfirm',\n  components: {\n    HlButton,\n    HlTooltip,\n  },\n  inheritAttrs: false,\n  props: popconfirmProps,\n  setup(props) {\n    const { prefix } = usePrefix()\n    const { t } = useLocale()\n    const { compatTeleported } = useDeprecateAppendToBody(\n      'Popconfirm',\n      'appendToBody',\n    )\n\n    const tooltipRef = ref<{ onClose: () => void; }>()\n\n    const style = computed(() => {\n      return {\n        width: addUnit(props.width),\n      }\n    })\n\n    const hidePopper = () => {\n      unref(tooltipRef)?.onClose?.()\n    }\n\n    const handleCallback = () => {\n      hidePopper()\n    }\n\n    const confirm = (e: Event) => {\n      props.onConfirm?.(e)\n      handleCallback()\n    }\n    const cancel = (e: Event) => {\n      props.onCancel?.(e)\n      handleCallback()\n    }\n\n    const finalConfirmButtonText = computed(\n      () => props.confirmButtonText || t('hl.popconfirm.confirmButtonText'),\n    )\n    const finalCancelButtonText = computed(\n      () => props.cancelButtonText || t('hl.popconfirm.cancelButtonText'),\n    )\n\n    return {\n      prefix,\n      style,\n      HlPrefix: HlPrefix.toLowerCase(),\n      tooltipRef,\n      compatTeleported,\n\n      finalConfirmButtonText,\n      finalCancelButtonText,\n\n      confirm,\n      cancel,\n    }\n  },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;AA2CA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA;AAAA,EAEF,cAAc;AAAA,EACd,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,EAAE,WAAW;AACnB,UAAM,EAAE,MAAM;AACd,UAAM,EAAE,qBAAqB,yBAC3B,cACA;AAGF,UAAM,aAAa;AAEnB,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO;AAAA,QACL,OAAO,QAAQ,MAAM;AAAA;AAAA;AAIzB,UAAM,aAAa,MAAM;AACvB,YAAM;AAAa;AAGrB;AACE;AAAA;AAGF;AACE;AACA;AAAA;AAEF,oBAAgB;AACd;AACA;AAAA;AAGF,mCAA+B,SAC7B,MAAM;AAER;AAIA;AAAO;AACL;AACA;AACmB,MACnB;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;AArES;AA/BP;AACI;AACC;AACK,IACb,gBAAY;AAAyB,IACrC;AAAc,gBACF;AAAA,IACZ,uBAAqB;AAAA,IACrB,cAAY;AAAA,IACZ,YAAY;AAAA;IAEF,kBACT;AAcM;AAAA;AAdU;;AAKR;AADG;AADG;AAAA;AAAA,2BAUN;AAAA;AAJQ;AAFI;AAAY;AAA0B;;AACzB;AAAH;AAAA;;;AAId,YAFD;AAAK;AAAY;AAA2B;;AACzB;AAAH;AAAA;;;;;;AAOtB;;;;;;;;;;;;"}