{"version":3,"file":"dialog2.mjs","sources":["../../../../../../packages/components/dialog/src/dialog.vue"],"sourcesContent":["<template>\n  <teleport :to=\"selector\">\n    <transition\n      :name=\"ns.b()\"\n      @after-enter=\"afterEnter\"\n      @after-leave=\"afterLeave\"\n      @before-leave=\"beforeLeave\"\n    >\n      <div\n        v-if=\"visible\"\n        :class=\"rootKls\"\n        :style=\"{ zIndex }\"\n        @click=\"clickDialog.onClick\"\n        @mousedown=\"clickDialog.onMousedown\"\n        @mouseup=\"clickDialog.onMouseup\"\n      >\n        <div :style=\"dialogStyles\" :class=\"dialogKls\">\n          <div v-if=\"loading\" :class=\"ns.e('loading')\">\n            <icon-loading />\n          </div>\n\n          <button v-if=\"!notClose\" :class=\"ns.e('close')\" @click=\"close\">\n            <icon-close :hover=\"'x'\" />\n          </button>\n\n          <div v-if=\"$slots.header\" :class=\"ns.e('header')\">\n            <slot name=\"header\" />\n          </div>\n\n          <div :class=\"[ns.e('content'), { notFooter: !$slots.footer }]\">\n            <slot />\n          </div>\n\n          <div v-if=\"$slots.footer\" :class=\"ns.e('footer')\">\n            <slot name=\"footer\" />\n          </div>\n        </div>\n      </div>\n    </transition>\n  </teleport>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { IconClose, IconLoading } from '@vuesax-alpha/components/icon'\nimport {\n  useModal,\n  useNamespace,\n  usePopperContainer,\n  usePopperContainerId,\n  useSameTarget,\n} from '@vuesax-alpha/hooks'\nimport { dialogEmits, dialogProps } from './dialog'\nimport { useDialog } from './composables'\nimport { dialogDeprecated } from './deprecated'\n\ndefineOptions({\n  name: 'VsDialog',\n})\n\nconst props = defineProps(dialogProps)\nconst emit = defineEmits(dialogEmits)\n\nusePopperContainer()\nconst { selector } = usePopperContainerId()\n\nconst ns = useNamespace('dialog')\n\ndialogDeprecated(props)\n\nconst {\n  visible,\n  zIndex,\n  dialogKls,\n  dialogStyles,\n  close,\n  afterEnter,\n  afterLeave,\n  beforeLeave,\n  handleClose,\n} = useDialog(props, emit)\n\nuseModal({ handleClose }, visible)\n\nconst clickDialog = useSameTarget(handleClose)\n\nconst rootKls = computed(() => [\n  ns.b(),\n  ns.is('full-screen', props.fullScreen),\n  ns.is('blur', props.overlayBlur),\n])\n\ndefineExpose({\n  /** @description whether the dialog is visible */\n  visible,\n  /** @description dialog close method */\n  close,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;mCAwDc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKmB,IAAA,kBAAA,EAAA,CAAA;AACb,IAAA,MAAA,EAAE,QAAS,EAAA,GAAI,oBAAqB,EAAA,CAAA;AAEpC,IAAA,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAEhC,IAAA,gBAAA,CAAiB,KAAK,CAAA,CAAA;AAEhB,IAAA,MAAA;AAAA,MACJ,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,KACF,GAAI,SAAU,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAEhB,IAAA,QAAA,CAAA,EAAE,WAAY,EAAA,EAAG,OAAO,CAAA,CAAA;AAE3B,IAAA,MAAA,WAAA,GAAc,cAAc,WAAW,CAAA,CAAA;AAEvC,IAAA,MAAA,OAAA,GAAU,SAAS,MAAM;AAAA,MAC7B,GAAG,CAAE,EAAA;AAAA,MACL,EAAG,CAAA,EAAA,CAAG,aAAe,EAAA,KAAA,CAAM,UAAU,CAAA;AAAA,MACrC,EAAG,CAAA,EAAA,CAAG,MAAQ,EAAA,KAAA,CAAM,WAAW,CAAA;AAAA,KAChC,CAAA,CAAA;AAEY,IAAA,QAAA,CAAA;AAAA,MAEX,OAAA;AAAA,MAEA,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}