import { createApp } from "vue";
import { GnexusUiVue } from "gnexus-ui-kit/vue";
import "gnexus-ui-kit/dist/css/kit.css";
import "gnexus-ui-kit/dist/assets/fonts/phosphor-icons/src/css/icons.css";
import App from "./App.vue";
import { router } from "./router.js";
const app = createApp(App).use(GnexusUiVue).use(router);
// Ждём первичной навигации: иначе первый рендер идёт со START-локацией ("/"),
// и каркас (и heartbeat в App.vue) срабатывает ещё до того, как роутер узнал
// реальный путь. isReady -> mount решает это.
router.isReady().then(() => {
app.mount("#app");
// PWA: пуш-воркер (sw.js регистрируется на корне — scope "/"); ошибки не
// блокируют приложение (пуш-недоступен, раздел «Настройки» покажет статус).
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js").catch((err) => {
console.warn("SW не зарегистрирован:", err);
});
}
});