import { createBlock as n, openBlock as o, Transition as r, withCtx as a, createElementBlock as d, createCommentVNode as f, createElementVNode as t, renderSlot as u } from "vue";
const m = {
  key: 0,
  class: "fixed w-full h-full flex items-start justify-center top-12vh left-0 z-200"
}, c = { class: "bg-light-100 dark-bg-dark-200 rounded-3xl flex flex-col z-202 text-center relative shadow-2xl overflow-hidden p-6 bottom-0 top-0 overflow-y-scroll max-h-70vh min-w-80" }, b = {
  __name: "UiModal",
  props: {
    open: { type: Boolean, default: !1 }
  },
  emits: ["close"],
  setup(s, { emit: p }) {
    return (l, e) => (o(), n(r, { name: "fade" }, {
      default: a(() => [
        s.open ? (o(), d("div", m, [
          t("div", {
            class: "bg-dark-200 bg-opacity-30 w-full h-full absolute z-2 cursor-pointer",
            onClick: e[0] || (e[0] = (i) => l.$emit("close"))
          }),
          t("div", c, [
            t("button", {
              class: "button absolute right-0 top-0",
              onClick: e[1] || (e[1] = (i) => l.$emit("close"))
            }, e[2] || (e[2] = [
              t("div", { class: "i-la-times" }, null, -1)
            ])),
            u(l.$slots, "default")
          ])
        ])) : f("", !0)
      ]),
      _: 3
    }));
  }
};
export {
  b as default
};
//# sourceMappingURL=UiModal-CELsvq34.js.map
