Files
roa2web-service-auto/deploy-package-20260223-151231/frontend/index.html
Claude Agent 8bc567a9c5 fix telegram
2026-02-23 15:12:33 +00:00

80 lines
3.3 KiB
HTML

<!DOCTYPE html>
<html lang="ro">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ROA2WEB - Unified App</title>
<link rel="icon" href="/favicon.ico" />
<!-- 2026-02-23T15:12:31.068Z placeholder for cache busting -->
<meta name="build-time" content="BUILD_TIMESTAMP" />
<!-- PWA Support -->
<link rel="manifest" href="/roa2web/manifest.json" />
<meta name="theme-color" content="#2563eb" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
<meta name="apple-mobile-web-app-title" content="ROA2WEB" />
<link rel="apple-touch-icon" href="/roa2web/icon-192.png" />
<!-- Theme initialization - MUST be before any rendering to prevent flash -->
<script>
(function() {
var theme = localStorage.getItem('user-theme');
if (theme && theme !== 'auto') {
document.documentElement.setAttribute('data-theme', theme);
}
})();
</script>
<!-- Service Worker Registration for PWA -->
<script>
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
const swBase = document.querySelector('link[rel="manifest"]')
?.getAttribute('href')?.replace('manifest.json', '') || '/';
navigator.serviceWorker.register(swBase + 'sw.js')
.then(reg => {
console.log('[PWA] Service Worker registered:', reg.scope);
// Auto-reload when a new SW takes control (picks up new deploy)
navigator.serviceWorker.addEventListener('controllerchange', () => {
console.log('[PWA] New Service Worker active - reloading for fresh version');
window.location.reload();
});
// Check for SW updates each time user returns to the tab (handles PWA on mobile)
document.addEventListener('visibilitychange', () => {
if (document.visibilityState === 'visible') {
reg.update();
}
});
})
.catch(err => console.error('[PWA] Service Worker registration failed:', err));
});
}
</script>
<script type="module" crossorigin src="/roa2web/assets/index.B8XI8FQW.js"></script>
<link rel="modulepreload" crossorigin href="/roa2web/assets/vendor-core.B6UiYhU_.js">
<link rel="modulepreload" crossorigin href="/roa2web/assets/vendor-primevue.BN-meDW0.js">
<link rel="modulepreload" crossorigin href="/roa2web/assets/vendor-utils.CO3CyGpV.js">
<link rel="modulepreload" crossorigin href="/roa2web/assets/vendor-export.BWjBvx7Z.js">
<link rel="stylesheet" crossorigin href="/roa2web/assets/index.Co2Dp57K.css">
</head>
<body>
<div id="app"></div>
<!-- Eruda Mobile Console - activare cu ?debug in URL -->
<script>
if (location.search.includes('debug') || localStorage.getItem('eruda') === 'true') {
var script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/eruda';
script.onload = function() {
eruda.init();
localStorage.setItem('eruda', 'true');
console.log('🔧 Eruda Mobile Console ACTIVE');
};
document.body.appendChild(script);
}
</script>
</body>
</html>