import { defineProdDiagnostics } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/nostics/dist/index.mjs"; import { ansiFormatter } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/nostics/dist/formatters/ansi.mjs"; import { Fragment, Suspense, createApp, createCommentVNode, createVNode, defineAsyncComponent, defineComponent, effectScope, getCurrentInstance, getCurrentScope, h, hasInjectionContext, inject, isReactive, isReadonly, isRef, isShallow, isVNode, mergeProps, onErrorCaptured, onServerPrefetch, provide, reactive, ref, resolveDynamicComponent, shallowReactive, shallowRef, toRaw, toRef, toValue, unref, useSSRContext, watchEffect } from "vue"; import { createHooks } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/hookable/dist/index.mjs"; import { createError, sanitizeStatusCode } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/@nuxt/nitro-server/dist/h3.mjs"; import { decodePath, isScriptProtocol, joinURL, parseURL, withQuery } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/ufo/dist/index.mjs"; import { $fetch } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/ofetch/dist/node.mjs"; import { baseURL } from "#internal/nuxt/paths"; import { RouterView, START_LOCATION, START_LOCATION as START_LOCATION$1, createMemoryHistory, createRouter } from "vue-router"; import "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/defu/dist/defu.mjs"; import { walkResolver } from "C:/Users/kkgu8/OneDrive/Desktop/kyounggu/educo/example/site1/node_modules/unhead/dist/utils.mjs"; import { ssrInterpolate, ssrRenderAttrs, ssrRenderComponent, ssrRenderSuspense, ssrRenderVNode } from "vue/server-renderer"; //#region ../site1/node_modules/nuxt/dist/app/diagnostics/_shared.js /** * Shared configuration for the runtime (Exxx) diagnostics catalogs. * * Catalogs are split by domain and imported directly where used (no barrel), * so the browser bundle only pulls in the codes a module references. Pair the * pure-call annotations on each `defineDiagnostics()` with dev-guarded, * statement-level report calls so report-only diagnostics strip from production. * * Codes are stable, fully-qualified `NUXT_E` identifiers. Codes with a * dedicated docs page resolve a `see:` URL via {@link docsBase}; the rest opt * out with `docs: false`. */ function docsBase(code) { return `https://nuxt.com/docs/4.x/errors/${code.replace("NUXT_", "").toLowerCase()}`; } var ansi = (open, close) => (s) => `\x1B[${open}m${s}\x1B[${close}m`; var colors = { red: ansi(31, 39), yellow: ansi(33, 39), cyan: ansi(36, 39), gray: ansi(90, 39), bold: ansi(1, 22), dim: ansi(2, 22) }; ansiFormatter(colors); var prodReporter = (diagnostic) => { console.error(`[${diagnostic.name}]`); }; var prodReporters = [prodReporter]; //#endregion //#region ../site1/node_modules/nuxt/dist/app/diagnostics/core.js /** * E1xxx * Core / Nuxt-instance / lifecycle runtime diagnostics. */ var appDiagnostics = /* #__PURE__ */ defineProdDiagnostics({ docsBase, reporters: prodReporters }); //#endregion //#region ../site1/node_modules/unctx/dist/index.mjs function _getAsyncLocalStorage() { return globalThis.AsyncLocalStorage || globalThis.process?.getBuiltinModule?.("node:async_hooks")?.AsyncLocalStorage; } var _WeakRef = globalThis.WeakRef || class StrongRef { #value; constructor(value) { this.#value = value; } deref() { return this.#value; } }; function createContext(opts = {}) { let currentInstance; let isSingleton = false; const checkConflict = (instance) => { if (currentInstance && currentInstance !== instance) throw new Error("Context conflict"); }; let als; if (opts.asyncContext) { const _AsyncLocalStorage = opts.AsyncLocalStorage || _getAsyncLocalStorage(); if (_AsyncLocalStorage) als = new _AsyncLocalStorage(); else console.warn("[unctx] `AsyncLocalStorage` is not provided."); } const _wrapInstance = (instance) => als && instance !== null && typeof instance === "object" ? { __unctx_weak: new _WeakRef(instance) } : instance; const _unwrapInstance = (store) => store && store.__unctx_weak ? store.__unctx_weak.deref() : store; const _getCurrentInstance = () => { if (als) { const store = als.getStore(); if (store !== void 0) return _unwrapInstance(store); } return currentInstance; }; return { use: () => { const _instance = _getCurrentInstance(); if (_instance === void 0) throw new Error("Context is not available"); return _instance; }, tryUse: () => { return _getCurrentInstance() ?? null; }, set: (instance, replace) => { if (!replace) checkConflict(instance); currentInstance = instance; isSingleton = true; }, unset: () => { currentInstance = void 0; isSingleton = false; }, call: (instance, callback) => { checkConflict(instance); currentInstance = instance; try { return als ? als.run(_wrapInstance(instance), callback) : callback(); } finally { if (!isSingleton) currentInstance = void 0; } }, async callAsync(instance, callback) { currentInstance = instance; const onRestore = () => { currentInstance = instance; }; const onLeave = () => currentInstance === instance ? onRestore : void 0; asyncHandlers.add(onLeave); try { const r = als ? als.run(_wrapInstance(instance), callback) : callback(); if (!isSingleton) currentInstance = void 0; return await r; } finally { asyncHandlers.delete(onLeave); } } }; } function createNamespace(defaultOpts = {}) { const contexts = {}; return { get(key, opts = {}) { if (!contexts[key]) contexts[key] = createContext({ ...defaultOpts, ...opts }); return contexts[key]; } }; } var _globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof global !== "undefined" ? global : {}; var globalKey = "__unctx__"; var defaultNamespace = _globalThis[globalKey] || (_globalThis[globalKey] = createNamespace()); var getContext$1 = (key, opts = {}) => defaultNamespace.get(key, opts); var asyncHandlersKey = "__unctx_async_handlers__"; var asyncHandlers = _globalThis[asyncHandlersKey] || (_globalThis[asyncHandlersKey] = /* @__PURE__ */ new Set()); function executeAsync(function_) { const restores = []; for (const leaveHandler of asyncHandlers) { const restore = leaveHandler(); if (restore) restores.push(restore); } const restore = () => { for (const restore of restores) restore(); }; let awaitable = function_(); if (awaitable && typeof awaitable === "object" && "catch" in awaitable) awaitable = awaitable.catch((error) => { restore(); throw error; }); return [awaitable, restore]; } //#endregion //#region ../site1/node_modules/nuxt/dist/app/internal/context.js globalThis.__nuxt_app_ctx__ ||= {}; function getContext(key, opts) { return getContext$1(key, opts); } //#endregion //#region virtual:nuxt:.nuxt%2Fnuxt.config.mjs var nuxtLinkDefaults = { "componentName": "NuxtLink", "prefetch": true, "prefetchOn": { "visibility": true } }; //#endregion //#region ../site1/node_modules/nuxt/dist/app/nuxt.js function getNuxtAppCtx(id = "nuxt-app") { return getContext(id, { asyncContext: false }); } var NuxtPluginIndicator = "__nuxt_plugin"; /** @since 3.0.0 */ function createNuxtApp(options) { let hydratingCount = 0; const nuxtApp = { _id: options.id || "nuxt-app", _scope: effectScope(), provide: void 0, versions: { get nuxt() { return "4.6.0"; }, get vue() { return nuxtApp.vueApp.version; } }, payload: shallowReactive({ ...options.ssrContext?.payload || {}, data: shallowReactive({}), state: reactive({}), once: /* @__PURE__ */ new Set(), _errors: shallowReactive({}) }), static: { data: {} }, runWithContext(fn) { if (nuxtApp._scope.active && !getCurrentScope()) return nuxtApp._scope.run(() => callWithNuxt(nuxtApp, fn)); return callWithNuxt(nuxtApp, fn); }, isHydrating: false, deferHydration() { if (!nuxtApp.isHydrating) return () => {}; hydratingCount++; let called = false; return () => { if (called) return; called = true; hydratingCount--; if (hydratingCount === 0) { nuxtApp.isHydrating = false; return nuxtApp.callHook("app:suspense:resolve"); } }; }, _asyncDataPromises: {}, _asyncData: shallowReactive({}), _state: shallowReactive({}), _payloadRevivers: {}, ...options }; nuxtApp.payload.serverRendered = true; if (nuxtApp.ssrContext) { nuxtApp.payload.path = nuxtApp.ssrContext.url; nuxtApp.ssrContext.nuxt = nuxtApp; nuxtApp.ssrContext.payload = nuxtApp.payload; nuxtApp.ssrContext.config = { public: nuxtApp.ssrContext.runtimeConfig.public, app: nuxtApp.ssrContext.runtimeConfig.app }; } nuxtApp.hooks = createHooks(); nuxtApp.hook = nuxtApp.hooks.hook; { const runHooks = async (hooks, args) => { for (const hook of hooks) await nuxtApp.runWithContext(() => hook(...args)); }; const contextCaller = runHooks; nuxtApp.hooks.callHook = (name, ...args) => nuxtApp.hooks.callHookWith(contextCaller, name, args); } nuxtApp.callHook = nuxtApp.hooks.callHook; nuxtApp.provide = (name, value) => { const $name = "$" + name; defineGetter(nuxtApp, $name, value); defineGetter(nuxtApp.vueApp.config.globalProperties, $name, value); }; defineGetter(nuxtApp.vueApp, "$nuxt", nuxtApp); defineGetter(nuxtApp.vueApp.config.globalProperties, "$nuxt", nuxtApp); const runtimeConfig = options.ssrContext.runtimeConfig; nuxtApp.provide("config", runtimeConfig); return nuxtApp; } /** @since 3.0.0 */ async function applyPlugin(nuxtApp, plugin) { if (typeof plugin === "function") { const run = () => nuxtApp.runWithContext(() => plugin(nuxtApp)); const { provide } = await run() || {}; if (provide && typeof provide === "object") for (const key in provide) nuxtApp.provide(key, provide[key]); } } /** @since 3.0.0 */ async function applyPlugins(nuxtApp, plugins) { let error; for (const plugin of plugins) try { await applyPlugin(nuxtApp, plugin); } catch (e) { if (!nuxtApp.payload.error) throw e; error ||= e; } if (error) throw nuxtApp.payload.error || error; } /** @since 3.0.0 */ /* @__NO_SIDE_EFFECTS__ */ function defineNuxtPlugin(plugin) { if (typeof plugin === "function") return plugin; const _name = plugin._name || plugin.name; delete plugin.name; return Object.assign(plugin.setup || (() => {}), plugin, { [NuxtPluginIndicator]: true, _name }); } /** * Ensures that the setup function passed in has access to the Nuxt instance via `useNuxtApp`. * @param nuxt A Nuxt instance * @param setup The function to call * @since 3.0.0 */ function callWithNuxt(nuxt, setup, args) { const fn = () => args ? setup(...args) : setup(); const nuxtAppCtx = getNuxtAppCtx(nuxt._id); return nuxt.vueApp.runWithContext(() => nuxtAppCtx.callAsync(nuxt, fn)); } function tryUseNuxtApp(id) { let nuxtAppInstance; if (hasInjectionContext()) nuxtAppInstance = getCurrentInstance()?.appContext.app.$nuxt; nuxtAppInstance ||= getNuxtAppCtx(id).tryUse(); return nuxtAppInstance || null; } function useNuxtApp(id) { const nuxtAppInstance = tryUseNuxtApp(id); if (!nuxtAppInstance) throw appDiagnostics.NUXT_E1001(); return nuxtAppInstance; } /** @since 3.0.0 */ /* @__NO_SIDE_EFFECTS__ */ function useRuntimeConfig(_event) { return useNuxtApp().$config; } function defineGetter(obj, key, val) { Object.defineProperty(obj, key, { get: () => val }); } //#endregion //#region ../site1/node_modules/nuxt/dist/app/error.js var NUXT_ERROR_SIGNATURE = "__nuxt_error"; /** @since 3.0.0 */ var isNuxtError = (error) => !!error && typeof error === "object" && "__nuxt_error" in error; /** @since 3.0.0 */ var createError$1 = (error) => { if (isNuxtError(error)) return error; if (typeof error !== "string" && error?.statusText) error.message ??= error.statusText; const nuxtError = createError(error ?? {}); Object.defineProperty(nuxtError, NUXT_ERROR_SIGNATURE, { value: true, configurable: false, writable: false }); Object.defineProperty(nuxtError, "status", { get: () => nuxtError.statusCode, configurable: true }); Object.defineProperty(nuxtError, "statusText", { get: () => nuxtError.statusMessage, configurable: true }); return nuxtError; }; //#endregion //#region ../site1/node_modules/nuxt/dist/app/utils.js var PROBE_BASE_A = "https://a.invalid/probe/"; var PROBE_BASE_B = "https://b.invalid/probe/"; function parseAnchorURL(value, base = PROBE_BASE_A) { try { return new URL(value, base); } catch { return null; } } /** Whether a URL string is a path rooted at the current origin, so carries no protocol. */ function isRootedPath(value) { return value[0] === "/" && value[1] !== "/" && value[1] !== "\\"; } /** Whether a URL string carries its own protocol or authority. */ function isAbsoluteHref(value) { if (!value || isRootedPath(value)) return false; const resolved = parseAnchorURL(value); return !!resolved && resolved.href === parseAnchorURL(value, PROBE_BASE_B)?.href; } /** The script-capable protocol a URL string would navigate to, or `null` when it is safe. */ function getScriptProtocol(value) { if (!value || isRootedPath(value)) return null; let resolved = parseAnchorURL(value.replace(/[\u0000-\u001F\u007F\s]+/g, "")); while (resolved?.protocol === "view-source:") resolved = parseAnchorURL(resolved.pathname); if (!resolved) return ""; return isScriptProtocol(resolved.protocol) ? resolved.protocol : null; } /** Returns the value unchanged when safe to use as an anchor `href`, or `null`. */ function sanitizeAnchorHref(value) { return getScriptProtocol(value) === null ? value : null; } //#endregion //#region ../site1/node_modules/nuxt/dist/app/components/injections.js var LayoutMetaSymbol = Symbol("layout-meta"); var PageRouteSymbol = Symbol("route"); //#endregion //#region ../site1/node_modules/nuxt/dist/app/diagnostics/navigation.js /** * E2xxx * Navigation / routing / middleware runtime diagnostics. */ var navigationDiagnostics = /* #__PURE__ */ defineProdDiagnostics({ docsBase, reporters: prodReporters }); //#endregion //#region ../site1/node_modules/nuxt/dist/app/composables/router.js /** @since 3.0.0 */ var useRouter = (() => { return useNuxtApp()?.$router; }); /** * Whether the current effect scope is (a descendant of) the component instance's scope. * A detached scope (e.g. `createSharedComposable`) outlives the component, so the * per-page route injected there would freeze after navigation (#18903). */ function getParentScope(scope) { const internal = scope; return internal.parent ?? internal.subs?.sub; } function isScopeWithinInstance(instance) { const instanceScope = instance.scope; let scope = getCurrentScope(); while (scope) { if (scope === instanceScope) return true; scope = getParentScope(scope); } return false; } /** @since 3.0.0 */ var useRoute$2 = (() => { if (hasInjectionContext()) { const instance = getCurrentInstance(); if (!instance || isScopeWithinInstance(instance)) return inject(PageRouteSymbol, useNuxtApp()._route); } return useNuxtApp()._route; }); /** @since 3.0.0 */ /* @__NO_SIDE_EFFECTS__ */ function defineNuxtRouteMiddleware(middleware) { return middleware; } /** @since 3.0.0 */ var isProcessingMiddleware = () => { try { if (useNuxtApp()._processingMiddleware) return true; } catch { return false; } return false; }; var HTML_ATTR_UNSAFE_RE = /[&"'<>]/g; var HTML_ATTR_ENCODE_MAP = { "&": "&", "\"": """, "'": "'", "<": "<", ">": ">" }; function encodeForHtmlAttr(value) { return value.replace(HTML_ATTR_UNSAFE_RE, (c) => HTML_ATTR_ENCODE_MAP[c]); } /** * A helper that aids in programmatic navigation within your Nuxt application. * * Can be called on the server and on the client, within pages, route middleware, plugins, and more. * @param {RouteLocationRaw | undefined | null} [to] - The route to navigate to. Accepts a route object, string path, `undefined`, or `null`. Defaults to '/'. * @param {NavigateToOptions} [options] - Optional customization for controlling the behavior of the navigation. * @returns {Promise | false | void | RouteLocationRaw} The navigation result, which varies depending on context and options. * @see https://nuxt.com/docs/4.x/api/utils/navigate-to * @since 3.0.0 */ var navigateTo = (to, options) => { to ||= "/"; typeof to === "string" || "path" in to; const toPath = typeof to === "string" ? to : "path" in to ? resolveRouteObject(to) : useRouter().resolve(to).href; const isExternalHost = isAbsoluteHref(toPath); const isExternal = options?.external || isExternalHost; if (isExternal) { if (!options?.external) throw navigationDiagnostics.NUXT_E2001({ toPath }); const protocol = getScriptProtocol(toPath); if (protocol !== null) throw navigationDiagnostics.NUXT_E2002({ toPath, protocol }); } const inMiddleware = isProcessingMiddleware(); const router = useRouter(); const nuxtApp = useNuxtApp(); if (nuxtApp.ssrContext) { const fullPath = typeof to === "string" || isExternal ? toPath : router.resolve(to).fullPath || "/"; const location = isExternal ? toPath : joinURL((/* @__PURE__ */ useRuntimeConfig()).app.baseURL, fullPath); const redirect = async function(response) { await nuxtApp.callHook("app:redirected"); const encodedHeader = encodeURL(location, isExternalHost); const encodedLoc = encodeForHtmlAttr(encodedHeader); nuxtApp.ssrContext["~renderResponse"] = { statusCode: sanitizeStatusCode(options?.redirectCode || 302, 302), body: ``, headers: { location: encodedHeader } }; return response; }; if (!isExternal && inMiddleware) { let expectedPath = fullPath; if (typeof to === "string" && toPath.includes("?")) { const target = router.resolve(to); expectedPath = router.resolve({ path: target.path, query: target.query, hash: target.hash }).fullPath || "/"; } router.afterEach((final) => final.fullPath === expectedPath ? redirect(false) : void 0); return to; } return redirect(!inMiddleware ? void 0 : false); } if (isExternal) { nuxtApp._scope.stop(); if (options?.replace) (void 0).replace(toPath); else (void 0).href = toPath; if (inMiddleware) { if (!nuxtApp.isHydrating) return false; return new Promise(() => {}); } return Promise.resolve(); } const encodedTo = typeof to === "string" ? encodeRoutePath(to) : to; return options?.replace ? router.replace(encodedTo) : router.push(encodedTo); }; /** * @internal */ function resolveRouteObject(to) { return withQuery(to.path || "", to.query || {}) + (to.hash || ""); } /** * @internal */ function encodeURL(location, isExternalHost = false) { const url = new URL(location, "http://localhost"); if (!isExternalHost) return url.pathname.replace(/^\/{2,}/, "/") + url.search + url.hash; if (location.startsWith("//")) return url.toString().replace(url.protocol, ""); return url.toString(); } /** * Encode the pathname of a route location string. Ensures decoded paths like * `/café` are percent-encoded to match vue-router's encoded route records. * Already-encoded paths are not double-encoded. * @internal */ function encodeRoutePath(url) { const parsed = parseURL(url); return encodeVueRouterPath(decodePath(parsed.pathname)) + parsed.search + parsed.hash; } var ENC_PIPE_RE = /%7C/g; var ENC_BRACKET_OPEN_RE = /%5B/g; var ENC_BRACKET_CLOSE_RE = /%5D/g; var ENC_ENC_SLASH_RE = /%252F/gi; var HASH_RE = /#/g; var QUESTION_MARK_RE = /\?/g; /** * Apply vue-router's own path encoding, which leaves sub-delimiters like `&` * and `+` literal. This must stay in sync with `encodeVueRouterPath` in * `unrouting`, which encodes the route records we need to match against. */ function encodeVueRouterPath(value) { return encodeURI(value).replace(ENC_PIPE_RE, "|").replace(ENC_BRACKET_OPEN_RE, "[").replace(ENC_BRACKET_CLOSE_RE, "]").replace(HASH_RE, "%23").replace(QUESTION_MARK_RE, "%3F").replace(ENC_ENC_SLASH_RE, "%2F"); } //#endregion //#region ../site1/node_modules/nuxt/dist/app/composables/error.js /** @since 3.0.0 */ var useError = /* @__NO_SIDE_EFFECTS__ */ () => toRef(useNuxtApp().payload, "error"); /** @since 3.0.0 */ var showError = (error) => { const nuxtError = createError$1(error); try { const error = /* @__PURE__ */ useError(); error.value ||= nuxtError; } catch { throw nuxtError; } return nuxtError; }; /** * Show the error page unless the current client is a crawler, in which case the * bot receives the already server-rendered HTML instead (#32137, #35338). * * @internal */ var _showErrorUnlessCrawler = async (nuxtApp, error) => { await nuxtApp.runWithContext(() => showError(error)); }; //#endregion //#region virtual:nuxt:.nuxt%2Ffetch.mjs if (!globalThis.$fetch) globalThis.$fetch = $fetch.create({ baseURL: baseURL() }); globalThis.$fetch; //#endregion //#region virtual:nuxt:.nuxt%2Fglobal-polyfills.mjs if (!("global" in globalThis)) globalThis.global = globalThis; //#endregion //#region ../site1/node_modules/nuxt/dist/head/runtime/island-head.js /** * No-op `head.push` until the returned `unfreeze` runs. Plugin/transformer * augmentations on the same head are unaffected. */ function freezeHead(head) { const realPush = head.push; head.push = () => ({ dispose: () => {}, patch: () => {}, _i: 0 }); return () => { head.push = realPush; }; } //#endregion //#region ../site1/node_modules/nuxt/dist/head/runtime/plugins/unhead.server.js var plugin$2 = /* @__PURE__ */ defineNuxtPlugin({ name: "nuxt:head", enforce: "pre", setup(nuxtApp) { const head = nuxtApp.ssrContext.head; if (nuxtApp.ssrContext.islandContext) { const unfreeze = freezeHead(head); nuxtApp.hooks.hookOnce("app:created", unfreeze); } nuxtApp.vueApp.use(head); } }); //#endregion //#region ../site1/node_modules/nuxt/dist/pages/runtime/utils.js var ROUTE_KEY_PARENTHESES_RE$1 = /(:\w+)\([^)]+\)/g; var ROUTE_KEY_SYMBOLS_RE$1 = /(:\w+)[?+*]/g; var ROUTE_KEY_NORMAL_RE$1 = /:\w+/g; var interpolatePath = (route, match) => { return match.path.replace(ROUTE_KEY_PARENTHESES_RE$1, "$1").replace(ROUTE_KEY_SYMBOLS_RE$1, "$1").replace(ROUTE_KEY_NORMAL_RE$1, (r) => route.params[r.slice(1)]?.toString() || ""); }; var generateRouteKey$1 = (routeProps, override) => { const matchedRoute = routeProps.route.matched.find((m) => m.components?.default === routeProps.Component.type); const source = override ?? matchedRoute?.meta.key ?? (matchedRoute && interpolatePath(routeProps.route, matchedRoute)); return typeof source === "function" ? source(routeProps.route) : source; }; /** @since 3.9.0 */ function toArray(value) { return Array.isArray(value) ? value : [value]; } //#endregion //#region virtual:nuxt:.nuxt%2Froute-rules.mjs var virtual_nuxt__nuxt_2Froute_rules_default = () => ({}); //#endregion //#region ../site1/node_modules/nuxt/dist/app/components/utils.js var ROUTE_KEY_PARENTHESES_RE = /(:\w+)\([^)]+\)/g; var ROUTE_KEY_SYMBOLS_RE = /(:\w+)[?+*]/g; var ROUTE_KEY_NORMAL_RE = /:\w+/g; function generateRouteKey(route) { const source = route?.meta.key ?? route.path.replace(ROUTE_KEY_PARENTHESES_RE, "$1").replace(ROUTE_KEY_SYMBOLS_RE, "$1").replace(ROUTE_KEY_NORMAL_RE, (r) => route.params[r.slice(1)]?.toString() || ""); return typeof source === "function" ? source(route) : source; } /** * Utility used within router guards * return true if the route has been changed with a page change during navigation */ function isChangingPage(to, from) { if (to === from || from === START_LOCATION$1) return false; if (generateRouteKey(to) !== generateRouteKey(from)) return true; if (to.matched.every((comp, index) => comp.components && comp.components.default === from.matched[index]?.components?.default)) return false; return true; } //#endregion //#region ../site1/node_modules/nuxt/dist/pages/runtime/router.options.js var router_options_default = { scrollBehavior(to, from, savedPosition) { const nuxtApp = useNuxtApp(); const router = useRouter(); const hashScrollBehaviour = router.options?.scrollBehaviorType ?? "auto"; if (to.path.replace(/\/$/, "") === from.path.replace(/\/$/, "")) { if (from.hash && !to.hash) return savedPosition ?? { left: 0, top: 0 }; if (to.hash) return { el: to.hash, top: _getHashElementScrollMarginTop(to.hash), behavior: hashScrollBehaviour }; return false; } if ((typeof to.meta.scrollToTop === "function" ? to.meta.scrollToTop(to, from) : to.meta.scrollToTop) === false) return false; if (from === START_LOCATION) return _calculatePosition(to, from, savedPosition, hashScrollBehaviour); return new Promise((resolve) => { const doScroll = () => { requestAnimationFrame(() => { if (router.currentRoute.value.fullPath !== to.fullPath) { resolve(false); return; } resolve(_calculatePosition(to, from, savedPosition, hashScrollBehaviour)); }); }; nuxtApp.hooks.hookOnce("page:loading:end", () => { const transitionPromise = nuxtApp["~transitionPromise"]; if (transitionPromise) transitionPromise.then(doScroll); else doScroll(); }); }); } }; function _getHashElementScrollMarginTop(selector) { try { const elem = (void 0).querySelector(selector); if (elem) return (Number.parseFloat(getComputedStyle(elem).scrollMarginTop) || 0) + (Number.parseFloat(getComputedStyle((void 0).documentElement).scrollPaddingTop) || 0); } catch {} return 0; } function _calculatePosition(to, from, savedPosition, defaultHashScrollBehaviour) { if (savedPosition) return savedPosition; if (to.hash) return { el: to.hash, top: _getHashElementScrollMarginTop(to.hash), behavior: isChangingPage(to, from) ? defaultHashScrollBehaviour : "instant" }; return { left: 0, top: 0 }; } var virtual_nuxt__nuxt_2Frouter_options_default = { hashMode: false, scrollBehaviorType: "auto", sensitive: false, ...router_options_default }; Object.assign(Object.create(null), {}); var pageIslandRoutes = Object.assign(Object.create(null), {}); //#endregion //#region ../site1/node_modules/nuxt/dist/pages/runtime/validate.js var middleware$1 = /* @__PURE__ */ defineNuxtRouteMiddleware(async (to) => { let __temp, __restore; if (!to.meta?.validate) return; const result = ([__temp, __restore] = executeAsync(() => Promise.resolve(to.meta.validate(to))), __temp = await __temp, __restore(), __temp); if (result === true) return; return createError$1({ fatal: false, status: result && (result.status || result.statusCode) || 404, statusText: result && (result.statusText || result.statusMessage) || `Page Not Found: ${to.fullPath}`, data: { path: to.fullPath } }); }, 1); //#endregion //#region ../site1/node_modules/nuxt/dist/app/diagnostics/manifest.js /** * E5xxx * App manifest / route-rules runtime diagnostics. */ var manifestDiagnostics = /* #__PURE__ */ defineProdDiagnostics({ docsBase, reporters: prodReporters }); //#endregion //#region ../site1/node_modules/nuxt/dist/app/composables/manifest.js function routeRulesMatcher(path) { return virtual_nuxt__nuxt_2Froute_rules_default(path); } function getRouteRules(arg) { const path = typeof arg === "string" ? arg : arg.path; try { return routeRulesMatcher(path); } catch (e) { manifestDiagnostics.NUXT_E5003({ path, cause: e }); return {}; } } //#endregion //#region virtual:nuxt:.nuxt%2Fmiddleware.mjs var globalMiddleware = [middleware$1, /* @__PURE__ */ defineNuxtRouteMiddleware((to) => {})]; var namedMiddleware = {}; //#endregion //#region virtual:nuxt:.nuxt%2Froutes.mjs var virtual_nuxt__nuxt_2Froutes_default = [{ name: "slug", path: "/:slug(.*)*", component: () => import("./_nuxt/_...slug_-Cka3W0in.js") }, { name: "index", path: "/", component: () => import("./_nuxt/pages-Cg7jGZvJ.js") }]; //#endregion //#region ../site1/node_modules/nuxt/dist/pages/runtime/plugins/router.js var plugin$1 = /* @__PURE__ */ defineNuxtPlugin({ name: "nuxt:router", enforce: "pre", async setup(nuxtApp) { let __temp, __restore; let routerBase = (/* @__PURE__ */ useRuntimeConfig()).app.baseURL; const history = virtual_nuxt__nuxt_2Frouter_options_default.history?.(routerBase) ?? createMemoryHistory(routerBase); const routes = virtual_nuxt__nuxt_2Frouter_options_default.routes ? ([__temp, __restore] = executeAsync(() => virtual_nuxt__nuxt_2Frouter_options_default.routes(virtual_nuxt__nuxt_2Froutes_default)), __temp = await __temp, __restore(), __temp) ?? virtual_nuxt__nuxt_2Froutes_default : virtual_nuxt__nuxt_2Froutes_default; let startPosition; const router = createRouter({ ...virtual_nuxt__nuxt_2Frouter_options_default, scrollBehavior: (to, from, savedPosition) => { if (from === START_LOCATION) { startPosition = savedPosition; return; } if (virtual_nuxt__nuxt_2Frouter_options_default.scrollBehavior) { router.options.scrollBehavior = virtual_nuxt__nuxt_2Frouter_options_default.scrollBehavior; if ("scrollRestoration" in (void 0).history) { const unsub = router.beforeEach(() => { unsub(); (void 0).history.scrollRestoration = "manual"; }); } return virtual_nuxt__nuxt_2Frouter_options_default.scrollBehavior(to, START_LOCATION, startPosition || savedPosition); } }, history, routes }); nuxtApp.vueApp.use(router); const previousRoute = shallowRef(router.currentRoute.value); router.afterEach((_to, from) => { previousRoute.value = from; }); Object.defineProperty(nuxtApp.vueApp.config.globalProperties, "previousRoute", { get: () => previousRoute.value }); const initialURL = nuxtApp.ssrContext.url; const _route = shallowRef(router.currentRoute.value); const syncCurrentRoute = () => { _route.value = router.currentRoute.value; }; router.afterEach((to, from) => { const lastTo = to.matched.at(-1)?.components?.default; const lastFrom = from.matched.at(-1)?.components?.default; if (lastTo === lastFrom) { if (generateRouteKey$1({ route: to, Component: { type: lastTo } }) === generateRouteKey$1({ route: from, Component: { type: lastFrom } })) syncCurrentRoute(); return; } if (to.matched.length < from.matched.length && to.matched.every((m, i) => m.components?.default === from.matched[i]?.components?.default)) syncCurrentRoute(); }); const route = { sync: syncCurrentRoute }; for (const key in _route.value) Object.defineProperty(route, key, { get: () => _route.value[key], enumerable: true }); nuxtApp._route = shallowReactive(route); nuxtApp._middleware ||= { global: [], named: {} }; const error = /* @__PURE__ */ useError(); const isServerPage = nuxtApp.ssrContext?.islandContext?.name?.startsWith("page_"); if (!nuxtApp.ssrContext?.islandContext || isServerPage) router.afterEach(async (to, _from, failure) => { delete nuxtApp._processingMiddleware; delete nuxtApp._middlewareTo; if (failure) await nuxtApp.callHook("page:loading:end"); if (failure?.type === 4) return; if (to.redirectedFrom && to.fullPath !== initialURL) await nuxtApp.runWithContext(() => navigateTo(to.fullPath || "/")); }); router.onError(async () => { delete nuxtApp._processingMiddleware; delete nuxtApp._middlewareTo; await nuxtApp.callHook("page:loading:end"); }); try { [__temp, __restore] = executeAsync(() => router.push(initialURL)), __temp = await __temp, __restore(); [__temp, __restore] = executeAsync(() => router.isReady()), await __temp, __restore(); } catch (error) { [__temp, __restore] = executeAsync(() => _showErrorUnlessCrawler(nuxtApp, error)), await __temp, __restore(); } const resolvedInitialRoute = router.currentRoute.value; syncCurrentRoute(); if (nuxtApp.ssrContext?.islandContext && !isServerPage) return { provide: { router } }; const initialLayout = nuxtApp.payload.state._layout; router.beforeEach(async (to, from) => { await nuxtApp.callHook("page:loading:start"); to.meta = reactive(to.meta); if (nuxtApp.isHydrating && initialLayout && !isReadonly(to.meta.layout)) to.meta.layout = initialLayout; nuxtApp._processingMiddleware = true; nuxtApp._middlewareTo = to; if (!nuxtApp.ssrContext?.islandContext || isServerPage) { const middlewareEntries = /* @__PURE__ */ new Set([...globalMiddleware, ...nuxtApp._middleware.global]); for (const component of to.matched) { const componentMiddleware = component.meta.middleware; if (!componentMiddleware) continue; for (const entry of toArray(componentMiddleware)) middlewareEntries.add(entry); } const routeRules = getRouteRules({ path: to.path }); if (routeRules.appMiddleware) for (const key in routeRules.appMiddleware) if (routeRules.appMiddleware[key]) middlewareEntries.add(key); else middlewareEntries.delete(key); for (const entry of middlewareEntries) { const middleware = typeof entry === "string" ? nuxtApp._middleware.named[entry] || await namedMiddleware[entry]?.().then((r) => r.default || r) : entry; if (!middleware) throw navigationDiagnostics.NUXT_E2004({ entry: String(entry), validMiddleware: void 0 }); try { const run = () => nuxtApp.runWithContext(() => middleware(to, from)); const result = await run(); if (result === false || result instanceof Error) { const error = result || createError$1({ status: 404, statusText: `Page Not Found: ${initialURL}` }); await nuxtApp.runWithContext(() => showError(error)); return false; } if (result === true) continue; if (result === false) return result; if (result) { if (isNuxtError(result) && result.fatal) await nuxtApp.runWithContext(() => showError(result)); return result; } } catch (err) { const error = createError$1(err); if (error.fatal) await nuxtApp.runWithContext(() => showError(error)); return error; } } } }); if (isServerPage) router.beforeResolve((to) => { const expected = pageIslandRoutes[nuxtApp.ssrContext.islandContext.name]; const actual = to.matched.find((m) => (m.components?.default)?.__nuxt_island)?.components?.default; if (!expected || expected !== actual?.__nuxt_island) { nuxtApp.ssrContext["~renderResponse"] = { statusCode: 400, statusMessage: "Invalid island request path" }; return false; } }); router.afterEach((to) => { if (to.matched.length === 0 && !error.value) return nuxtApp.runWithContext(() => showError(createError$1({ status: 404, fatal: false, statusText: `Page not found: ${to.fullPath}`, data: { path: to.fullPath } }))); }); nuxtApp.hooks.hookOnce("app:created", async () => { try { if ("name" in resolvedInitialRoute) resolvedInitialRoute.name = void 0; await router.replace({ ...resolvedInitialRoute, force: true }); router.options.scrollBehavior = virtual_nuxt__nuxt_2Frouter_options_default.scrollBehavior; } catch (error) { await _showErrorUnlessCrawler(nuxtApp, error); } }); return { provide: { router } }; } }, 1); //#endregion //#region ../site1/node_modules/nuxt/dist/app/diagnostics/head.js /** * E6xxx * Head / unhead runtime diagnostics. */ var unheadDiagnostics = /* #__PURE__ */ defineProdDiagnostics({ docsBase, reporters: prodReporters }); //#endregion //#region ../site1/node_modules/@unhead/vue/dist/shared/vue.DKb5ZKVl.mjs var headSymbol = "usehead"; // @__NO_SIDE_EFFECTS__ function injectHead$1() { if (hasInjectionContext()) { const instance = inject(headSymbol); if (instance) return instance; } throw new Error("useHead() was called without provide context, ensure you call it through the setup() function."); } //#endregion //#region ../site1/node_modules/@unhead/vue/dist/shared/vue.D2XR8FqS.mjs var VueResolver = /* @__PURE__ */ Object.assign((_, value) => isRef(value) ? toValue(value) : value, { _static: true }); //#endregion //#region ../site1/node_modules/@unhead/vue/dist/shared/vue.BHyNcdic.mjs function useHead$1(input, options = {}) { const head = options.head || /* @__PURE__ */ injectHead$1(); return head.ssr ? head.push(input || {}, options) : clientUseHead(head, input, options); } function clientUseHead(head, input, options = {}) { const scope = getCurrentScope(); if (scope && !scope.active) return { patch() {}, dispose() {}, _i: -1 }; const deactivated = ref(false); if (options.onRendered && scope) { const _onRendered = options.onRendered; options = { ...options, onRendered: (ctx) => scope.run(() => _onRendered(ctx)) }; } let entry; watchEffect(() => { const i = deactivated.value ? {} : walkResolver(input, VueResolver); if (entry) entry.patch(i); else entry = head.push(i, options); }); if (getCurrentInstance()) {} return entry; } //#endregion //#region ../site1/node_modules/nuxt/dist/head/runtime/composables.js /** * Injects the head client from the Nuxt context or Vue inject. */ function injectHead(nuxtApp) { const nuxt = nuxtApp || useNuxtApp(); return nuxt.ssrContext?.head || nuxt.runWithContext(() => { if (hasInjectionContext()) { const head = inject("usehead"); if (!head) throw unheadDiagnostics.NUXT_E6001(); return head; } }); } function useHead(input, options = {}) { return useHead$1(input, { head: options.head || injectHead(options.nuxt), ...options }); } //#endregion //#region ../site1/node_modules/nuxt/dist/app/composables/payload.js /** * This is an experimental function for configuring passing rich data from server -> client. * @since 3.4.0 */ function definePayloadReducer(name, reduce) { useNuxtApp().ssrContext["~payloadReducers"][name] = reduce; } //#endregion //#region ../site1/node_modules/nuxt/dist/app/plugins/revive-payload.server.js var reducers = [ ["NuxtError", (data) => isNuxtError(data) && data.toJSON()], ["EmptyShallowRef", (data) => isRef(data) && isShallow(data) && !data.value && (typeof data.value === "bigint" ? "0n" : JSON.stringify(data.value) || "_")], ["EmptyRef", (data) => isRef(data) && !data.value && (typeof data.value === "bigint" ? "0n" : JSON.stringify(data.value) || "_")], ["ShallowRef", (data) => isRef(data) && isShallow(data) && data.value], ["ShallowReactive", (data) => isReactive(data) && isShallow(data) && toRaw(data)], ["Ref", (data) => isRef(data) && data.value], ["Reactive", (data) => isReactive(data) && toRaw(data)] ]; //#endregion //#region virtual:nuxt:.nuxt%2Fplugins.server.mjs var virtual_nuxt__nuxt_2Fplugins_server_default = [ plugin$2, plugin$1, /* @__PURE__ */ defineNuxtPlugin({ name: "nuxt:revive-payload:server", setup() { for (const [reducer, fn] of reducers) definePayloadReducer(reducer, fn); } }), /* @__PURE__ */ defineNuxtPlugin({ name: "nuxt:global-components" }) ]; //#endregion //#region ../site1/node_modules/nuxt/dist/app/components/route-provider.js var defineRouteProvider = (name = "RouteProvider") => defineComponent({ name, props: { route: { type: Object, required: true }, vnode: Object, vnodeRef: Object, renderKey: String, trackRootNodes: Boolean, routeRecord: Object }, setup(props) { const previousKey = props.renderKey; const previousRoute = props.route; const route = {}; for (const key in props.route) Object.defineProperty(route, key, { get: () => previousKey === props.renderKey ? props.route[key] : previousRoute[key], enumerable: true }); provide(PageRouteSymbol, shallowReactive(route)); return () => { if (!props.vnode) return props.vnode; return h(props.vnode, { ref: props.vnodeRef }); }; } }); var RouteProvider = defineRouteProvider(); //#endregion //#region ../site1/node_modules/nuxt/dist/pages/runtime/page.js var page_default = defineComponent({ name: "NuxtPage", inheritAttrs: false, props: { name: { type: String }, transition: { type: [Boolean, Object], default: void 0 }, keepalive: { type: [Boolean, Object], default: void 0 }, route: { type: Object }, pageKey: { type: [Function, String], default: null } }, setup(props, { attrs, slots, expose }) { const nuxtApp = useNuxtApp(); const pageRef = ref(); inject(PageRouteSymbol, null); expose({ pageRef }); inject(LayoutMetaSymbol, null); nuxtApp.deferHydration(); return () => { return h(RouterView, { name: props.name, route: props.route, ...attrs }, { default: markStableSlot((routeProps) => { return h(Suspense, { suspensible: true }, { default() { return h(RouteProvider, { vnode: slots.default ? normalizeSlot(slots.default, routeProps) : routeProps.Component, route: routeProps.route, vnodeRef: pageRef }); } }); }) }); }; } }); function markStableSlot(fn) { const wrapped = ((routeProps) => { const result = fn(routeProps); if (Array.isArray(result)) return result; if (result == null || !isVNode(result)) return [createCommentVNode()]; return [result]; }); wrapped._n = true; return wrapped; } function normalizeSlot(slot, data) { const slotContent = slot(data); return slotContent.length === 1 ? h(slotContent[0]) : h(Fragment, void 0, slotContent); } //#endregion //#region \0plugin-vue:export-helper var _plugin_vue_export_helper_default = (sfc, props) => { const target = sfc.__vccOpts || sfc; for (const [key, val] of props) target[key] = val; return target; }; //#endregion //#region components/AppFooter.vue var _sfc_main$3 = { __name: "AppFooter", __ssrInlineRender: true, setup(__props) { const siteName = (/* @__PURE__ */ useRuntimeConfig()).public.siteName || "에듀로열 1:1 과외"; return (_ctx, _push, _parent, _attrs) => { _push(``); }; } }; var _sfc_setup$3 = _sfc_main$3.setup; _sfc_main$3.setup = (props, ctx) => { const ssrContext = useSSRContext(); (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/AppFooter.vue"); return _sfc_setup$3 ? _sfc_setup$3(props, ctx) : void 0; }; var AppFooter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(_sfc_main$3, [["__scopeId", "data-v-3b29a045"]]); //#endregion //#region app.vue var _sfc_main$2 = { __name: "app", __ssrInlineRender: true, setup(__props) { return (_ctx, _push, _parent, _attrs) => { const _component_NuxtPage = page_default; const _component_AppFooter = AppFooter_default; _push(`
`); _push(ssrRenderComponent(_component_NuxtPage, null, null, _parent)); _push(`
`); _push(ssrRenderComponent(_component_AppFooter, null, null, _parent)); _push(``); }; } }; var _sfc_setup$2 = _sfc_main$2.setup; _sfc_main$2.setup = (props, ctx) => { const ssrContext = useSSRContext(); (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("app.vue"); return _sfc_setup$2 ? _sfc_setup$2(props, ctx) : void 0; }; //#endregion //#region ../site1/node_modules/nuxt/dist/app/components/nuxt-error-page.vue var _sfc_main$1 = { __name: "nuxt-error-page", __ssrInlineRender: true, props: { error: Object }, setup(__props) { const _error = __props.error; const status = Number(_error.statusCode || 500); const is404 = status === 404; const statusText = _error.statusMessage ?? (is404 ? "Page Not Found" : "Internal Server Error"); const description = _error.message || _error.toString(); const stack = void 0; const _Error404 = defineAsyncComponent(() => import("./_nuxt/error-404-DmtyracS.js")); const _Error = defineAsyncComponent(() => import("./_nuxt/error-500-_lvxeZxk.js")); const ErrorTemplate = is404 ? _Error404 : _Error; return (_ctx, _push, _parent, _attrs) => { _push(ssrRenderComponent(unref(ErrorTemplate), mergeProps({ status: unref(status), statusText: unref(statusText), statusCode: unref(status), statusMessage: unref(statusText), description: unref(description), stack: unref(stack) }, _attrs), null, _parent)); }; } }; var _sfc_setup$1 = _sfc_main$1.setup; _sfc_main$1.setup = (props, ctx) => { const ssrContext = useSSRContext(); (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../site1/node_modules/nuxt/dist/app/components/nuxt-error-page.vue"); return _sfc_setup$1 ? _sfc_setup$1(props, ctx) : void 0; }; //#endregion //#region virtual:nuxt:.nuxt%2Fisland-renderer.mjs var IslandRenderer = () => null; //#endregion //#region ../site1/node_modules/nuxt/dist/app/components/nuxt-root.vue var _sfc_main = { __name: "nuxt-root", __ssrInlineRender: true, setup(__props) { const nuxtApp = useNuxtApp(); nuxtApp.deferHydration(); nuxtApp.ssrContext.url; const SingleRenderer = false; provide(PageRouteSymbol, useRoute$2()); nuxtApp.hooks.callHookWith((hooks) => hooks.map((hook) => hook()), "vue:setup", []); const error = /* @__PURE__ */ useError(); const abortRender = error.value && !nuxtApp.ssrContext.error; function invokeAppErrorHandler(err, target, info) { const errorHandler = nuxtApp.vueApp.config.errorHandler; if (errorHandler && !errorHandler.__nuxt_default) try { errorHandler(err, target, info); } catch (handlerError) { console.error("[nuxt] Error in `app.config.errorHandler`", handlerError); } } onErrorCaptured((err, target, info) => { nuxtApp.hooks.callHook("vue:error", err, target, info)?.catch((hookError) => console.error("[nuxt] Error in `vue:error` hook", hookError)); { const p = nuxtApp.runWithContext(() => showError(err)); onServerPrefetch(() => p); invokeAppErrorHandler(err, target, info); return false; } }); const islandContext = nuxtApp.ssrContext.islandContext; return (_ctx, _push, _parent, _attrs) => { ssrRenderSuspense(_push, { default: () => { if (unref(abortRender)) _push(`
`); else if (unref(error)) _push(ssrRenderComponent(unref(_sfc_main$1), { error: unref(error) }, null, _parent)); else if (unref(islandContext)) _push(ssrRenderComponent(unref(IslandRenderer), { context: unref(islandContext) }, null, _parent)); else if (unref(SingleRenderer)) ssrRenderVNode(_push, createVNode(resolveDynamicComponent(unref(SingleRenderer)), null, null), _parent); else _push(ssrRenderComponent(unref(_sfc_main$2), null, null, _parent)); }, _: 1 }); }; } }; var _sfc_setup = _sfc_main.setup; _sfc_main.setup = (props, ctx) => { const ssrContext = useSSRContext(); (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../site1/node_modules/nuxt/dist/app/components/nuxt-root.vue"); return _sfc_setup ? _sfc_setup(props, ctx) : void 0; }; //#endregion //#region ../site1/node_modules/nuxt/dist/app/entry.js var entry = async function createNuxtAppServer(ssrContext) { const vueApp = createApp(_sfc_main); const nuxt = createNuxtApp({ vueApp, ssrContext }); try { await applyPlugins(nuxt, virtual_nuxt__nuxt_2Fplugins_server_default); await nuxt.hooks.callHook("app:created", vueApp); } catch (error) { await nuxt.hooks.callHook("app:error", error); nuxt.payload.error ||= createError$1(error); } if (ssrContext && (ssrContext["~renderResponse"] || ssrContext._renderResponse)) throw new Error("skipping render"); return vueApp; }; var entry_default = ((ssrContext) => entry(ssrContext)); //#endregion export { resolveRouteObject as a, isRootedPath as c, useRuntimeConfig as d, entry_default as default, nuxtLinkDefaults as f, navigateTo as i, sanitizeAnchorHref as l, useHead as n, useRouter as o, encodeRoutePath as r, isAbsoluteHref as s, _plugin_vue_export_helper_default as t, useNuxtApp as u }; //# sourceMappingURL=server.mjs.map