import { createApp } from "vue";
import App from "./App.vue";
import router from "./router/index";
import "./index.css";
import { getHotelHomeContent } from "@/lib/hotelApi";
import { applyHotelBranding } from "@/lib/hotelBranding";
import { primeHotelHomeContent } from "@/composables/useHotelHomeContent";
import { getActiveLocale, initializeLocalization, t } from "@/composables/useLanguage";

async function bootstrap() {
  document.documentElement.lang = getActiveLocale();
  await initializeLocalization().catch(() => undefined);

  try {
    const payload = await getHotelHomeContent();
    primeHotelHomeContent(payload);
    applyHotelBranding(payload);
  } catch (error) {
    applyHotelBranding();
  }

  const app = createApp(App);
  app.config.globalProperties.$t = t;
  app.use(router).mount("#app");
}

bootstrap();
