{"version":3,"file":"index.vue.cjs","sources":["../../../../../packages/components/drawer/src/index.vue"],"sourcesContent":["<template>\n  <teleport to=\"body\">\n    <transition\n      :name=\"ns.b()\"\n      @before-enter=\"useBeforeEnter\"\n      @enter=\"useEnter\"\n      @after-enter=\"useAfterEnter\"\n      @before-leave=\"useBeforeLeave\"\n      @after-leave=\"useAfterLeave\"\n    >\n      <x-mask v-show=\"visible\" v-bind=\"$attrs\" @close=\"useClose\">\n        <div\n          :class=\"[ns.b(), ns.m('placement', placement), offset]\"\n          :style=\"[size]\"\n        >\n          <div :class=\"[ns.e('wrap')]\">\n            <div :class=\"[ns.e('header')]\" v-if=\"header\">\n              <template v-if=\"$slots.header\">\n                <slot name=\"header\" />\n              </template>\n              <template v-else>\n                <h4 :class=\"[ns.e('title')]\">{{ title }}</h4>\n                <x-icon :class=\"[ns.e('close')]\" @click=\"useClose\"\n                  ><Close\n                /></x-icon>\n              </template>\n            </div>\n            <div :class=\"[ns.e('body')]\">\n              <div :class=\"[ns.e('render-content')]\" v-if=\"rendered\">\n                <slot />\n              </div>\n            </div>\n            <div :class=\"[ns.e('footer')]\" v-if=\"footer\">\n              <template v-if=\"$slots.footer\"><slot name=\"footer\" /></template>\n              <template v-else>\n                <x-button\n                  text\n                  size=\"large\"\n                  v-if=\"cancelButtonShow\"\n                  @click=\"useBeforeCancel\"\n                  >{{ cancelButtonText }}</x-button\n                >\n                <x-button\n                  type=\"primary\"\n                  size=\"large\"\n                  v-if=\"confirmButtonShow\"\n                  :loading=\"isLoading\"\n                  @click=\"useBeforeChange\"\n                  >{{ confirmButtonText }}</x-button\n                >\n              </template>\n            </div>\n          </div>\n        </div>\n      </x-mask>\n    </transition>\n  </teleport>\n</template>\n<script>\nexport default { name: \"x-drawer\" };\n</script>\n<script setup>\nimport { useNamespace } from \"@ui-library/hook\";\nimport { XMask, XButton, XIcon } from \"@ui-library/components\";\nimport { Close } from \"@ui-library/icons\";\nimport { useDrawer } from \"./composables/use-drawer\";\nimport { drawerProps } from \"./drawer\";\nconst props = defineProps(drawerProps);\nconst emit = defineEmits([\"ok\", \"cancel\", \"open\", \"opened\", \"close\", \"closed\"]);\nconst ns = useNamespace(\"drawer\");\nconst visible = defineModel();\nconst {\n  useBeforeCancel,\n  useBeforeChange,\n  useClose,\n  isLoading,\n  useBeforeEnter,\n  useEnter,\n  useAfterEnter,\n  useBeforeLeave,\n  useAfterLeave,\n  rendered,\n  size,\n  offset,\n} = useDrawer({ props, visible });\n</script>\n"],"names":["useNamespace","_useModel","useDrawer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,MAAA,WAAA,GAAe,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;;;;;;;;;;;AAQnC,MAAM,KAAK,GAAG,OAAwB,CAAA;AACtC,MAAM,IAAI,GAAG,MAAkE,CAAA;AAC/E,MAAM,EAAE,GAAGA,kBAAY,CAAC,QAAQ,CAAC,CAAA;AACjC,MAAM,OAAO,GAAGC,YAAW,sBAAC,CAAC,CAAA;AAC7B,MAAM;AACN,EAAE,eAAe;AACjB,EAAE,eAAe;AACjB,EAAE,QAAQ;AACV,EAAE,SAAS;AACX,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,aAAa;AACf,EAAE,cAAc;AAChB,EAAE,aAAa;AACf,EAAE,QAAQ;AACV,EAAE,IAAI;AACN,EAAE,MAAM;AACR,CAAC,GAAGC,mBAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}