import { _ as __nuxt_component_0 } from './nuxt-link-DwrCF35s.mjs';
import { defineComponent, ref, mergeProps, unref, withCtx, createVNode, createTextVNode, toDisplayString, useId, createBlock, createCommentVNode, openBlock, withModifiers, computed, toRef, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrRenderComponent, ssrInterpolate } from 'vue/server-renderer';
import { l as logo } from './logo-C2NYPRdy.mjs';
import { a as authV1TopShape, b as authV1BottomShape } from './auth-v1-top-shape-smMuVKoE.mjs';
import { aI as useRouter$1, a6 as VImg, B as VCard, a7 as VCardItem, C as VCardText, g as genericComponent, D as VBtn, aJ as useCookie, p as propsFactory, n as useProxiedModel, F as provideTheme, ah as useVariant, ai as useDensity, f as useDimension, aj as useElevation, aE as useLocation, aF as usePosition, ak as useRounded, at as useTextColor, l as useLocale, ao as genOverlays, s as VIcon, y as VDefaultsProvider, aD as createSimpleFunctional, J as makeVariantProps, K as makeThemeProps, L as makeTagProps, N as makeRoundedProps, aG as makePositionProps, aH as makeLocationProps, O as makeElevationProps, k as makeDimensionProps, P as makeDensityProps, m as makeComponentProps, I as IconValue } from './server.mjs';
import { V as VForm, a as VTextField } from './VTextField-Bxu4ONGD.mjs';
import { V as VRow, a as VCol } from './VRow-MQIguEmB.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'devalue';
import '@unhead/ssr';
import 'unhead';
import '@unhead/shared';
import 'pinia';
import 'vue-router';
import './index-BNHdF426.mjs';

const VAlertTitle = createSimpleFunctional("v-alert-title");
const allowedTypes = ["success", "info", "warning", "error"];
const makeVAlertProps = propsFactory({
  border: {
    type: [Boolean, String],
    validator: (val) => {
      return typeof val === "boolean" || ["top", "end", "bottom", "start"].includes(val);
    }
  },
  borderColor: String,
  closable: Boolean,
  closeIcon: {
    type: IconValue,
    default: "$close"
  },
  closeLabel: {
    type: String,
    default: "$vuetify.close"
  },
  icon: {
    type: [Boolean, String, Function, Object],
    default: null
  },
  modelValue: {
    type: Boolean,
    default: true
  },
  prominent: Boolean,
  title: String,
  text: String,
  type: {
    type: String,
    validator: (val) => allowedTypes.includes(val)
  },
  ...makeComponentProps(),
  ...makeDensityProps(),
  ...makeDimensionProps(),
  ...makeElevationProps(),
  ...makeLocationProps(),
  ...makePositionProps(),
  ...makeRoundedProps(),
  ...makeTagProps(),
  ...makeThemeProps(),
  ...makeVariantProps({
    variant: "flat"
  })
}, "VAlert");
const VAlert = genericComponent()({
  name: "VAlert",
  props: makeVAlertProps(),
  emits: {
    "click:close": (e) => true,
    "update:modelValue": (value) => true
  },
  setup(props, _ref) {
    let {
      emit,
      slots
    } = _ref;
    const isActive = useProxiedModel(props, "modelValue");
    const icon = computed(() => {
      var _a;
      if (props.icon === false) return void 0;
      if (!props.type) return props.icon;
      return (_a = props.icon) != null ? _a : `$${props.type}`;
    });
    const variantProps = computed(() => {
      var _a;
      return {
        color: (_a = props.color) != null ? _a : props.type,
        variant: props.variant
      };
    });
    const {
      themeClasses
    } = provideTheme(props);
    const {
      colorClasses,
      colorStyles,
      variantClasses
    } = useVariant(variantProps);
    const {
      densityClasses
    } = useDensity(props);
    const {
      dimensionStyles
    } = useDimension(props);
    const {
      elevationClasses
    } = useElevation(props);
    const {
      locationStyles
    } = useLocation(props);
    const {
      positionClasses
    } = usePosition(props);
    const {
      roundedClasses
    } = useRounded(props);
    const {
      textColorClasses,
      textColorStyles
    } = useTextColor(toRef(props, "borderColor"));
    const {
      t
    } = useLocale();
    const closeProps = computed(() => ({
      "aria-label": t(props.closeLabel),
      onClick(e) {
        isActive.value = false;
        emit("click:close", e);
      }
    }));
    return () => {
      const hasPrepend = !!(slots.prepend || icon.value);
      const hasTitle = !!(slots.title || props.title);
      const hasClose = !!(slots.close || props.closable);
      return isActive.value && createVNode(props.tag, {
        "class": ["v-alert", props.border && {
          "v-alert--border": !!props.border,
          [`v-alert--border-${props.border === true ? "start" : props.border}`]: true
        }, {
          "v-alert--prominent": props.prominent
        }, themeClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value, props.class],
        "style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
        "role": "alert"
      }, {
        default: () => {
          var _a2;
          var _a, _b;
          return [genOverlays(false, "v-alert"), props.border && createVNode("div", {
            "key": "border",
            "class": ["v-alert__border", textColorClasses.value],
            "style": textColorStyles.value
          }, null), hasPrepend && createVNode("div", {
            "key": "prepend",
            "class": "v-alert__prepend"
          }, [!slots.prepend ? createVNode(VIcon, {
            "key": "prepend-icon",
            "density": props.density,
            "icon": icon.value,
            "size": props.prominent ? 44 : 28
          }, null) : createVNode(VDefaultsProvider, {
            "key": "prepend-defaults",
            "disabled": !icon.value,
            "defaults": {
              VIcon: {
                density: props.density,
                icon: icon.value,
                size: props.prominent ? 44 : 28
              }
            }
          }, slots.prepend)]), createVNode("div", {
            "class": "v-alert__content"
          }, [hasTitle && createVNode(VAlertTitle, {
            "key": "title"
          }, {
            default: () => {
              var _a3;
              var _a22;
              return [(_a3 = (_a22 = slots.title) == null ? void 0 : _a22.call(slots)) != null ? _a3 : props.title];
            }
          }), (_a2 = (_a = slots.text) == null ? void 0 : _a.call(slots)) != null ? _a2 : props.text, (_b = slots.default) == null ? void 0 : _b.call(slots)]), slots.append && createVNode("div", {
            "key": "append",
            "class": "v-alert__append"
          }, [slots.append()]), hasClose && createVNode("div", {
            "key": "close",
            "class": "v-alert__close"
          }, [!slots.close ? createVNode(VBtn, mergeProps({
            "key": "close-btn",
            "icon": props.closeIcon,
            "size": "x-small",
            "variant": "text"
          }, closeProps.value), null) : createVNode(VDefaultsProvider, {
            "key": "close-defaults",
            "defaults": {
              VBtn: {
                icon: props.closeIcon,
                size: "x-small",
                variant: "text"
              }
            }
          }, {
            default: () => {
              var _a22;
              return [(_a22 = slots.close) == null ? void 0 : _a22.call(slots, {
                props: closeProps.value
              })];
            }
          })])];
        }
      });
    };
  }
});
const _sfc_main = /* @__PURE__ */ defineComponent({
  __name: "login",
  __ssrInlineRender: true,
  setup(__props) {
    const form = ref({
      user_id: "",
      password: "",
      remember: false
    });
    const isPasswordVisible = ref(false);
    const isLoading = ref(false);
    const errorMessage = ref("");
    const router = useRouter$1();
    const handleLogin = async () => {
      var _a;
      if (!form.value.user_id || !form.value.password) {
        errorMessage.value = "\uC544\uC774\uB514\uC640 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD574\uC8FC\uC138\uC694.";
        return;
      }
      isLoading.value = true;
      errorMessage.value = "";
      try {
        const response = await $fetch("/api/auth/login", {
          method: "POST",
          body: {
            user_id: form.value.user_id,
            password: form.value.password
          }
        });
        if (response.success) {
          const token = useCookie("auth-token", {
            maxAge: 60 * 60 * 24,
            // 24시간
            secure: true,
            sameSite: "strict"
          });
          token.value = response.token;
          const user = useCookie("user-info", {
            maxAge: 60 * 60 * 24,
            secure: true,
            sameSite: "strict"
          });
          user.value = JSON.stringify(response.user);
          await router.push("/dashboard");
        } else {
          errorMessage.value = response.message || "\uB85C\uADF8\uC778\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.";
        }
      } catch (error) {
        console.error("Login error:", error);
        console.error("Error details:", {
          statusCode: error.statusCode,
          statusMessage: error.statusMessage,
          data: error.data
        });
        errorMessage.value = ((_a = error.data) == null ? void 0 : _a.statusMessage) || error.statusMessage || "\uB85C\uADF8\uC778 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.";
      } finally {
        isLoading.value = false;
      }
    };
    return (_ctx, _push, _parent, _attrs) => {
      const _component_NuxtLink = __nuxt_component_0;
      _push(`<div${ssrRenderAttrs(mergeProps({ class: "auth-wrapper d-flex align-center justify-center pa-4" }, _attrs))}><div class="position-relative my-sm-16">`);
      _push(ssrRenderComponent(VImg, {
        src: unref(authV1TopShape),
        class: "text-primary auth-v1-top-shape d-none d-sm-block"
      }, null, _parent));
      _push(ssrRenderComponent(VImg, {
        src: unref(authV1BottomShape),
        class: "text-primary auth-v1-bottom-shape d-none d-sm-block"
      }, null, _parent));
      _push(ssrRenderComponent(VCard, {
        class: ["auth-card", _ctx.$vuetify.display.smAndUp ? "pa-6" : "pa-0"],
        "max-width": "460"
      }, {
        default: withCtx((_, _push2, _parent2, _scopeId) => {
          if (_push2) {
            _push2(ssrRenderComponent(VCardItem, { class: "justify-center" }, {
              default: withCtx((_2, _push3, _parent3, _scopeId2) => {
                if (_push3) {
                  _push3(ssrRenderComponent(_component_NuxtLink, {
                    to: "/",
                    class: "app-logo"
                  }, {
                    default: withCtx((_3, _push4, _parent4, _scopeId3) => {
                      var _a;
                      if (_push4) {
                        _push4(`<div class="d-flex"${_scopeId3}>${(_a = unref(logo)) != null ? _a : ""}</div><h1 class="app-logo-title"${_scopeId3}> sneat </h1>`);
                      } else {
                        return [
                          createVNode("div", {
                            class: "d-flex",
                            innerHTML: unref(logo)
                          }, null, 8, ["innerHTML"]),
                          createVNode("h1", { class: "app-logo-title" }, " sneat ")
                        ];
                      }
                    }),
                    _: 1
                  }, _parent3, _scopeId2));
                } else {
                  return [
                    createVNode(_component_NuxtLink, {
                      to: "/",
                      class: "app-logo"
                    }, {
                      default: withCtx(() => [
                        createVNode("div", {
                          class: "d-flex",
                          innerHTML: unref(logo)
                        }, null, 8, ["innerHTML"]),
                        createVNode("h1", { class: "app-logo-title" }, " sneat ")
                      ]),
                      _: 1
                    })
                  ];
                }
              }),
              _: 1
            }, _parent2, _scopeId));
            _push2(ssrRenderComponent(VCardText, null, {
              default: withCtx((_2, _push3, _parent3, _scopeId2) => {
                if (_push3) {
                  _push3(`<h4 class="text-h4 mb-1"${_scopeId2}> \uC74C\uC545 \uAD00\uB9AC \uC2DC\uC2A4\uD15C\u{1F44B}\u{1F3FB} </h4><p class="mb-0"${_scopeId2}> \uACC4\uC815\uC5D0 \uB85C\uADF8\uC778\uD558\uC5EC \uAD00\uB9AC \uC2DC\uC2A4\uD15C\uC744 \uC2DC\uC791\uD558\uC138\uC694 </p>`);
                } else {
                  return [
                    createVNode("h4", { class: "text-h4 mb-1" }, " \uC74C\uC545 \uAD00\uB9AC \uC2DC\uC2A4\uD15C\u{1F44B}\u{1F3FB} "),
                    createVNode("p", { class: "mb-0" }, " \uACC4\uC815\uC5D0 \uB85C\uADF8\uC778\uD558\uC5EC \uAD00\uB9AC \uC2DC\uC2A4\uD15C\uC744 \uC2DC\uC791\uD558\uC138\uC694 ")
                  ];
                }
              }),
              _: 1
            }, _parent2, _scopeId));
            _push2(ssrRenderComponent(VCardText, null, {
              default: withCtx((_2, _push3, _parent3, _scopeId2) => {
                if (_push3) {
                  _push3(ssrRenderComponent(VForm, { onSubmit: handleLogin }, {
                    default: withCtx((_3, _push4, _parent4, _scopeId3) => {
                      if (_push4) {
                        _push4(ssrRenderComponent(VRow, null, {
                          default: withCtx((_4, _push5, _parent5, _scopeId4) => {
                            if (_push5) {
                              if (unref(errorMessage)) {
                                _push5(ssrRenderComponent(VCol, { cols: "12" }, {
                                  default: withCtx((_5, _push6, _parent6, _scopeId5) => {
                                    if (_push6) {
                                      _push6(ssrRenderComponent(VAlert, {
                                        type: "error",
                                        variant: "tonal",
                                        closable: "",
                                        "onClick:close": ($event) => errorMessage.value = ""
                                      }, {
                                        default: withCtx((_6, _push7, _parent7, _scopeId6) => {
                                          if (_push7) {
                                            _push7(`${ssrInterpolate(unref(errorMessage))}`);
                                          } else {
                                            return [
                                              createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                            ];
                                          }
                                        }),
                                        _: 1
                                      }, _parent6, _scopeId5));
                                    } else {
                                      return [
                                        createVNode(VAlert, {
                                          type: "error",
                                          variant: "tonal",
                                          closable: "",
                                          "onClick:close": ($event) => errorMessage.value = ""
                                        }, {
                                          default: withCtx(() => [
                                            createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                          ]),
                                          _: 1
                                        }, 8, ["onClick:close"])
                                      ];
                                    }
                                  }),
                                  _: 1
                                }, _parent5, _scopeId4));
                              } else {
                                _push5(`<!---->`);
                              }
                              _push5(ssrRenderComponent(VCol, { cols: "12" }, {
                                default: withCtx((_5, _push6, _parent6, _scopeId5) => {
                                  if (_push6) {
                                    _push6(ssrRenderComponent(VTextField, {
                                      id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                      modelValue: unref(form).user_id,
                                      "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                      autofocus: "",
                                      label: "\uC544\uC774\uB514",
                                      placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                                    }, null, _parent6, _scopeId5));
                                  } else {
                                    return [
                                      createVNode(VTextField, {
                                        id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                        modelValue: unref(form).user_id,
                                        "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                        autofocus: "",
                                        label: "\uC544\uC774\uB514",
                                        placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                                      }, null, 8, ["id", "modelValue", "onUpdate:modelValue"])
                                    ];
                                  }
                                }),
                                _: 1
                              }, _parent5, _scopeId4));
                              _push5(ssrRenderComponent(VCol, { cols: "12" }, {
                                default: withCtx((_5, _push6, _parent6, _scopeId5) => {
                                  if (_push6) {
                                    _push6(ssrRenderComponent(VTextField, {
                                      id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                      modelValue: unref(form).password,
                                      "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                      label: "\uBE44\uBC00\uBC88\uD638",
                                      placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                      type: unref(isPasswordVisible) ? "text" : "password",
                                      autocomplete: "password",
                                      "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                      "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                                    }, null, _parent6, _scopeId5));
                                  } else {
                                    return [
                                      createVNode(VTextField, {
                                        id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                        modelValue: unref(form).password,
                                        "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                        label: "\uBE44\uBC00\uBC88\uD638",
                                        placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                        type: unref(isPasswordVisible) ? "text" : "password",
                                        autocomplete: "password",
                                        "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                        "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                                      }, null, 8, ["id", "modelValue", "onUpdate:modelValue", "type", "append-inner-icon", "onClick:appendInner"])
                                    ];
                                  }
                                }),
                                _: 1
                              }, _parent5, _scopeId4));
                              _push5(ssrRenderComponent(VCol, { cols: "12" }, {
                                default: withCtx((_5, _push6, _parent6, _scopeId5) => {
                                  if (_push6) {
                                    _push6(ssrRenderComponent(VBtn, {
                                      block: "",
                                      type: "button",
                                      loading: unref(isLoading),
                                      disabled: unref(isLoading),
                                      onClick: handleLogin
                                    }, {
                                      default: withCtx((_6, _push7, _parent7, _scopeId6) => {
                                        if (_push7) {
                                          _push7(` \uB85C\uADF8\uC778 `);
                                        } else {
                                          return [
                                            createTextVNode(" \uB85C\uADF8\uC778 ")
                                          ];
                                        }
                                      }),
                                      _: 1
                                    }, _parent6, _scopeId5));
                                  } else {
                                    return [
                                      createVNode(VBtn, {
                                        block: "",
                                        type: "button",
                                        loading: unref(isLoading),
                                        disabled: unref(isLoading),
                                        onClick: handleLogin
                                      }, {
                                        default: withCtx(() => [
                                          createTextVNode(" \uB85C\uADF8\uC778 ")
                                        ]),
                                        _: 1
                                      }, 8, ["loading", "disabled"])
                                    ];
                                  }
                                }),
                                _: 1
                              }, _parent5, _scopeId4));
                            } else {
                              return [
                                unref(errorMessage) ? (openBlock(), createBlock(VCol, {
                                  key: 0,
                                  cols: "12"
                                }, {
                                  default: withCtx(() => [
                                    createVNode(VAlert, {
                                      type: "error",
                                      variant: "tonal",
                                      closable: "",
                                      "onClick:close": ($event) => errorMessage.value = ""
                                    }, {
                                      default: withCtx(() => [
                                        createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                      ]),
                                      _: 1
                                    }, 8, ["onClick:close"])
                                  ]),
                                  _: 1
                                })) : createCommentVNode("", true),
                                createVNode(VCol, { cols: "12" }, {
                                  default: withCtx(() => [
                                    createVNode(VTextField, {
                                      id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                      modelValue: unref(form).user_id,
                                      "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                      autofocus: "",
                                      label: "\uC544\uC774\uB514",
                                      placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                                    }, null, 8, ["id", "modelValue", "onUpdate:modelValue"])
                                  ]),
                                  _: 1
                                }),
                                createVNode(VCol, { cols: "12" }, {
                                  default: withCtx(() => [
                                    createVNode(VTextField, {
                                      id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                      modelValue: unref(form).password,
                                      "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                      label: "\uBE44\uBC00\uBC88\uD638",
                                      placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                      type: unref(isPasswordVisible) ? "text" : "password",
                                      autocomplete: "password",
                                      "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                      "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                                    }, null, 8, ["id", "modelValue", "onUpdate:modelValue", "type", "append-inner-icon", "onClick:appendInner"])
                                  ]),
                                  _: 1
                                }),
                                createVNode(VCol, { cols: "12" }, {
                                  default: withCtx(() => [
                                    createVNode(VBtn, {
                                      block: "",
                                      type: "button",
                                      loading: unref(isLoading),
                                      disabled: unref(isLoading),
                                      onClick: handleLogin
                                    }, {
                                      default: withCtx(() => [
                                        createTextVNode(" \uB85C\uADF8\uC778 ")
                                      ]),
                                      _: 1
                                    }, 8, ["loading", "disabled"])
                                  ]),
                                  _: 1
                                })
                              ];
                            }
                          }),
                          _: 1
                        }, _parent4, _scopeId3));
                      } else {
                        return [
                          createVNode(VRow, null, {
                            default: withCtx(() => [
                              unref(errorMessage) ? (openBlock(), createBlock(VCol, {
                                key: 0,
                                cols: "12"
                              }, {
                                default: withCtx(() => [
                                  createVNode(VAlert, {
                                    type: "error",
                                    variant: "tonal",
                                    closable: "",
                                    "onClick:close": ($event) => errorMessage.value = ""
                                  }, {
                                    default: withCtx(() => [
                                      createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                    ]),
                                    _: 1
                                  }, 8, ["onClick:close"])
                                ]),
                                _: 1
                              })) : createCommentVNode("", true),
                              createVNode(VCol, { cols: "12" }, {
                                default: withCtx(() => [
                                  createVNode(VTextField, {
                                    id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                    modelValue: unref(form).user_id,
                                    "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                    autofocus: "",
                                    label: "\uC544\uC774\uB514",
                                    placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                                  }, null, 8, ["id", "modelValue", "onUpdate:modelValue"])
                                ]),
                                _: 1
                              }),
                              createVNode(VCol, { cols: "12" }, {
                                default: withCtx(() => [
                                  createVNode(VTextField, {
                                    id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                    modelValue: unref(form).password,
                                    "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                    label: "\uBE44\uBC00\uBC88\uD638",
                                    placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                    type: unref(isPasswordVisible) ? "text" : "password",
                                    autocomplete: "password",
                                    "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                    "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                                  }, null, 8, ["id", "modelValue", "onUpdate:modelValue", "type", "append-inner-icon", "onClick:appendInner"])
                                ]),
                                _: 1
                              }),
                              createVNode(VCol, { cols: "12" }, {
                                default: withCtx(() => [
                                  createVNode(VBtn, {
                                    block: "",
                                    type: "button",
                                    loading: unref(isLoading),
                                    disabled: unref(isLoading),
                                    onClick: handleLogin
                                  }, {
                                    default: withCtx(() => [
                                      createTextVNode(" \uB85C\uADF8\uC778 ")
                                    ]),
                                    _: 1
                                  }, 8, ["loading", "disabled"])
                                ]),
                                _: 1
                              })
                            ]),
                            _: 1
                          })
                        ];
                      }
                    }),
                    _: 1
                  }, _parent3, _scopeId2));
                } else {
                  return [
                    createVNode(VForm, {
                      onSubmit: withModifiers(handleLogin, ["prevent"])
                    }, {
                      default: withCtx(() => [
                        createVNode(VRow, null, {
                          default: withCtx(() => [
                            unref(errorMessage) ? (openBlock(), createBlock(VCol, {
                              key: 0,
                              cols: "12"
                            }, {
                              default: withCtx(() => [
                                createVNode(VAlert, {
                                  type: "error",
                                  variant: "tonal",
                                  closable: "",
                                  "onClick:close": ($event) => errorMessage.value = ""
                                }, {
                                  default: withCtx(() => [
                                    createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                  ]),
                                  _: 1
                                }, 8, ["onClick:close"])
                              ]),
                              _: 1
                            })) : createCommentVNode("", true),
                            createVNode(VCol, { cols: "12" }, {
                              default: withCtx(() => [
                                createVNode(VTextField, {
                                  id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                  modelValue: unref(form).user_id,
                                  "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                  autofocus: "",
                                  label: "\uC544\uC774\uB514",
                                  placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                                }, null, 8, ["id", "modelValue", "onUpdate:modelValue"])
                              ]),
                              _: 1
                            }),
                            createVNode(VCol, { cols: "12" }, {
                              default: withCtx(() => [
                                createVNode(VTextField, {
                                  id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                  modelValue: unref(form).password,
                                  "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                  label: "\uBE44\uBC00\uBC88\uD638",
                                  placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                  type: unref(isPasswordVisible) ? "text" : "password",
                                  autocomplete: "password",
                                  "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                  "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                                }, null, 8, ["id", "modelValue", "onUpdate:modelValue", "type", "append-inner-icon", "onClick:appendInner"])
                              ]),
                              _: 1
                            }),
                            createVNode(VCol, { cols: "12" }, {
                              default: withCtx(() => [
                                createVNode(VBtn, {
                                  block: "",
                                  type: "button",
                                  loading: unref(isLoading),
                                  disabled: unref(isLoading),
                                  onClick: handleLogin
                                }, {
                                  default: withCtx(() => [
                                    createTextVNode(" \uB85C\uADF8\uC778 ")
                                  ]),
                                  _: 1
                                }, 8, ["loading", "disabled"])
                              ]),
                              _: 1
                            })
                          ]),
                          _: 1
                        })
                      ]),
                      _: 1
                    })
                  ];
                }
              }),
              _: 1
            }, _parent2, _scopeId));
          } else {
            return [
              createVNode(VCardItem, { class: "justify-center" }, {
                default: withCtx(() => [
                  createVNode(_component_NuxtLink, {
                    to: "/",
                    class: "app-logo"
                  }, {
                    default: withCtx(() => [
                      createVNode("div", {
                        class: "d-flex",
                        innerHTML: unref(logo)
                      }, null, 8, ["innerHTML"]),
                      createVNode("h1", { class: "app-logo-title" }, " sneat ")
                    ]),
                    _: 1
                  })
                ]),
                _: 1
              }),
              createVNode(VCardText, null, {
                default: withCtx(() => [
                  createVNode("h4", { class: "text-h4 mb-1" }, " \uC74C\uC545 \uAD00\uB9AC \uC2DC\uC2A4\uD15C\u{1F44B}\u{1F3FB} "),
                  createVNode("p", { class: "mb-0" }, " \uACC4\uC815\uC5D0 \uB85C\uADF8\uC778\uD558\uC5EC \uAD00\uB9AC \uC2DC\uC2A4\uD15C\uC744 \uC2DC\uC791\uD558\uC138\uC694 ")
                ]),
                _: 1
              }),
              createVNode(VCardText, null, {
                default: withCtx(() => [
                  createVNode(VForm, {
                    onSubmit: withModifiers(handleLogin, ["prevent"])
                  }, {
                    default: withCtx(() => [
                      createVNode(VRow, null, {
                        default: withCtx(() => [
                          unref(errorMessage) ? (openBlock(), createBlock(VCol, {
                            key: 0,
                            cols: "12"
                          }, {
                            default: withCtx(() => [
                              createVNode(VAlert, {
                                type: "error",
                                variant: "tonal",
                                closable: "",
                                "onClick:close": ($event) => errorMessage.value = ""
                              }, {
                                default: withCtx(() => [
                                  createTextVNode(toDisplayString(unref(errorMessage)), 1)
                                ]),
                                _: 1
                              }, 8, ["onClick:close"])
                            ]),
                            _: 1
                          })) : createCommentVNode("", true),
                          createVNode(VCol, { cols: "12" }, {
                            default: withCtx(() => [
                              createVNode(VTextField, {
                                id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                modelValue: unref(form).user_id,
                                "onUpdate:modelValue": ($event) => unref(form).user_id = $event,
                                autofocus: "",
                                label: "\uC544\uC774\uB514",
                                placeholder: "\uC544\uC774\uB514\uB97C \uC785\uB825\uD558\uC138\uC694"
                              }, null, 8, ["id", "modelValue", "onUpdate:modelValue"])
                            ]),
                            _: 1
                          }),
                          createVNode(VCol, { cols: "12" }, {
                            default: withCtx(() => [
                              createVNode(VTextField, {
                                id: ("useId" in _ctx ? _ctx.useId : unref(useId))(),
                                modelValue: unref(form).password,
                                "onUpdate:modelValue": ($event) => unref(form).password = $event,
                                label: "\uBE44\uBC00\uBC88\uD638",
                                placeholder: "\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7\xB7",
                                type: unref(isPasswordVisible) ? "text" : "password",
                                autocomplete: "password",
                                "append-inner-icon": unref(isPasswordVisible) ? "bx-hide" : "bx-show",
                                "onClick:appendInner": ($event) => isPasswordVisible.value = !unref(isPasswordVisible)
                              }, null, 8, ["id", "modelValue", "onUpdate:modelValue", "type", "append-inner-icon", "onClick:appendInner"])
                            ]),
                            _: 1
                          }),
                          createVNode(VCol, { cols: "12" }, {
                            default: withCtx(() => [
                              createVNode(VBtn, {
                                block: "",
                                type: "button",
                                loading: unref(isLoading),
                                disabled: unref(isLoading),
                                onClick: handleLogin
                              }, {
                                default: withCtx(() => [
                                  createTextVNode(" \uB85C\uADF8\uC778 ")
                                ]),
                                _: 1
                              }, 8, ["loading", "disabled"])
                            ]),
                            _: 1
                          })
                        ]),
                        _: 1
                      })
                    ]),
                    _: 1
                  })
                ]),
                _: 1
              })
            ];
          }
        }),
        _: 1
      }, _parent));
      _push(`</div></div>`);
    };
  }
});
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
  const ssrContext = useSSRContext();
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/login.vue");
  return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};

export { _sfc_main as default };
