import { _ as k, a as B } from "../.chunks/page.vue_vue_type_script_setup_true_lang-BMTt9SU8.es.js";
import { defineComponent as l, ref as i, onUpdated as u, createBlock as t, openBlock as m, KeepAlive as c, createCommentVNode as s, unref as d, resolveDynamicComponent as g, mergeProps as f } from "vue";
import { b as v } from "../.chunks/utils-BYaZxGC1.es.js";
const C = {
  name: {
    type: String,
    required: !0
  },
  order: {
    type: Number,
    required: !0
  },
  prevName: String,
  footerFullWith: Boolean
}, N = /* @__PURE__ */ l({
  __name: "pageComponent",
  props: {
    component: {},
    keepAlive: { type: Boolean, default: !0 },
    props: {},
    name: {},
    order: {},
    prevName: {},
    footerFullWith: { type: Boolean }
  },
  setup(e) {
    const n = e, a = v(), p = (o, r) => {
      if (!r.value) {
        if (o.name !== "AsyncComponentWrapper") {
          r.value = !0;
          return;
        }
        a.needShowPage(n.name) && (a.isLoadingPage.value = !0, o.__asyncResolved && (r.value = !0, a.isLoadingPage.value = !1));
      }
    };
    if (n.component.name === "AsyncComponentWrapper") {
      const o = i(!1);
      u(() => {
        p(n.component, o);
      });
    }
    return (o, r) => (m(), t(c, {
      include: e.keepAlive ? "" : "none"
    }, [
      d(a).needShowPage(e.name) ? (m(), t(g(e.component), f({ key: 0 }, n, {
        name: e.name,
        order: e.order,
        prevName: e.prevName
      }), null, 16, ["name", "order", "prevName"])) : s("", !0)
    ], 1032, ["include"]));
  }
});
export {
  k as TopDialog,
  B as TopDialogPage,
  N as TopDialogPageComponent,
  C as propsPageCommon,
  v as useTopDialogSelf
};
//# sourceMappingURL=dialog.js.map
