fix(article): wire eventStore to useArticleLoader for instant local-first loads; keep SW enabled in prod for PWA

This commit is contained in:
Gigi
2025-10-22 15:24:24 +02:00
parent 3f7d726ae6
commit c62cb21962
2 changed files with 29 additions and 38 deletions

View File

@@ -230,6 +230,7 @@ const Bookmarks: React.FC<BookmarksProps> = ({
useArticleLoader({ useArticleLoader({
naddr, naddr,
relayPool, relayPool,
eventStore,
setSelectedUrl, setSelectedUrl,
setReaderContent, setReaderContent,
setReaderLoading, setReaderLoading,

View File

@@ -5,20 +5,11 @@ import './styles/tailwind.css'
import './index.css' import './index.css'
import 'react-loading-skeleton/dist/skeleton.css' import 'react-loading-skeleton/dist/skeleton.css'
// Service Worker behavior // Register Service Worker for PWA functionality (production only)
if ('serviceWorker' in navigator) { if ('serviceWorker' in navigator && import.meta.env.PROD) {
// In dev, make sure no stale SW controls the page
if (import.meta.env.DEV) {
navigator.serviceWorker.getRegistrations().then(regs => {
regs.forEach(reg => reg.unregister())
})
}
// Register SW only in production builds
if (import.meta.env.PROD) {
window.addEventListener('load', () => { window.addEventListener('load', () => {
navigator.serviceWorker navigator.serviceWorker
.register('/sw.js') // classic SW; built asset is not a module .register('/sw.js')
.then(registration => { .then(registration => {
// Check for updates periodically // Check for updates periodically
setInterval(() => { setInterval(() => {
@@ -44,7 +35,6 @@ if ('serviceWorker' in navigator) {
}) })
}) })
} }
}
ReactDOM.createRoot(document.getElementById('root')!).render( ReactDOM.createRoot(document.getElementById('root')!).render(
<React.StrictMode> <React.StrictMode>