import { defineComponent, useSSRContext } from "vue";
import { ssrRenderTeleport, ssrRenderClass, ssrRenderSlot } from "vue/server-renderer";
import "../mount.js";
import "path-browserify";
import "deepmerge";
import "fast-safe-stringify";
import "spark-md5";
import "is-plain-object";
import "js-cookie";
import "events";
import { o as onResetUi } from "./index.2544f8a4.js";
import "http";
import "@medv/finder";
import "front-matter";
import "markdown-it";
import "markdown-it-anchor";
import "markdown-it-implicit-figures";
import "markdown-it-link-attributes";
import "markdown-it-video";
import "remove-markdown";
import "body-parser";
import "dotenv";
import "compression";
import "serve-favicon";
import "serve-static";
import "html-minifier";
import "vite";
import "@vue/server-renderer";
import "fs";
import "enquirer";
import "semver";
import "glob";
import "minimist";
import "handlebars";
import "execa";
import "multer";
import "sharp";
import "@vitejs/plugin-vue";
import "express";
import "axios";
import "knex";
import "dompurify";
import "dayjs";
import "chalk";
import "dayjs/plugin/relativeTime.js";
import "dayjs/plugin/utc.js";
import "dayjs/plugin/timezone.js";
import "dayjs/plugin/updateLocale.js";
import "dayjs/plugin/weekOfYear.js";
import "nanoid";
import "prettyoutput";
import "consola";
import "validator";
import "@vueuse/head";
import "node-fetch";
import "vue-router";
import "jsonwebtoken";
import "fs-extra";
import "bcrypt";
import "knex-stringcase";
import "@sinclair/typebox";
import "nodemailer";
import "nodemailer-html-to-text";
import "@tailwindcss/forms";
import "unocss/vite";
import "@unocss/preset-icons";
import "nodemon";
const __default__ = {
  inheritAttrs: false
};
const _sfc_main = /* @__PURE__ */ defineComponent({
  ...__default__,
  __name: "ElModal",
  __ssrInlineRender: true,
  props: {
    vis: { type: Boolean, default: false },
    title: { type: String, default: "" },
    sub: { type: String, default: "" },
    modalClass: { type: String, default: void 0 }
  },
  emits: ["update:vis", "close"],
  setup(__props, { emit }) {
    const props = __props;
    const close = () => {
      emit("update:vis", false);
      emit("close", true);
    };
    onResetUi(() => close());
    const modalClass = [props.modalClass];
    const classes = [
      "relative",
      "rounded-xl",
      "shadow-xl",
      "text-left",
      "overflow-hidden",
      "bg-white",
      "transform",
      "transition-all",
      "sm:w-full",
      ...modalClass
    ];
    return (_ctx, _push, _parent, _attrs) => {
      ssrRenderTeleport(_push, (_push2) => {
        _push2(`<div aria-labelledby="modal-title" role="dialog" aria-modal="true" class="${ssrRenderClass([!__props.vis ? "pointer-events-none" : "", "relative z-10"])}">`);
        if (__props.vis) {
          _push2(`<div class="fixed inset-0 bg-slate-800/75 transition-opacity"></div>`);
        } else {
          _push2(`<!---->`);
        }
        _push2(`<div class="fixed inset-0 z-10 overflow-y-auto"><div class="flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0">`);
        if (__props.vis) {
          _push2(`<div class="${ssrRenderClass(classes)}">`);
          ssrRenderSlot(_ctx.$slots, "default", {}, null, _push2, _parent);
          _push2(`</div>`);
        } else {
          _push2(`<!---->`);
        }
        _push2(`</div></div></div>`);
      }, "body", false, _parent);
    };
  }
});
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
  const ssrContext = useSSRContext();
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../ui/ElModal.vue");
  return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export {
  _sfc_main as default
};
