// Точки входа. Стили кита обязательно подключаются в корне приложения.
// Цветовая тема — Verdant (kit-verdant.css из gnexus-ui-kit 1.0).
import 'gnexus-ui-kit/dist/css/kit-verdant.css'
import 'gnexus-ui-kit/dist/assets/fonts/phosphor-icons/src/css/icons.css'
import { createApp } from 'vue'
import App from './App.vue'
import { router } from './router.js'
createApp(App).use(router).mount('#app')
// PWA: SW кэширует оболочку и hashed-ассеты (стратегии в public/sw.js).
if ('serviceWorker' in navigator && window.location.protocol !== 'file:') {
window.addEventListener('load', () => {
navigator.serviceWorker
.register('/sw.js')
.then(() =>
navigator.serviceWorker.ready.then((reg) => {
// hashed-ассеты первой отрисовки: вход + стили + modulepreload чанки
const assets = [
...document.querySelectorAll(
'script[type=module][src], link[rel=stylesheet][href], link[rel=modulepreload][href]',
),
].map((el) => el.getAttribute('src') || el.getAttribute('href'))
reg.active?.postMessage({ type: 'shell', urls: assets })
}),
)
.catch(() => {})
})
}