aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-03-06 22:59:57 -0800
committerAdam Soltys <[email protected]>2026-03-06 22:59:57 -0800
commitd0c5fde6c95fecedebae9fdf1a9d5e92dd1faaa2 (patch)
tree8722cbb64103015304201af62e297ae661d6dbe9
parentd51f8c8629c804e5b86ca29873175ba922e64e92 (diff)
downloadcoinos-ui-d0c5fde6c95fecedebae9fdf1a9d5e92dd1faaa2.tar.gz
coinos-ui-d0c5fde6c95fecedebae9fdf1a9d5e92dd1faaa2.zip
make service worker install resilient to cache failures
Use Promise.allSettled instead of addAll so a single failed asset doesn't prevent the SW from installing (needed for push notifications). Co-Authored-By: Claude Opus 4.6 <[email protected]>
-rw-r--r--src/service-worker.js8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/service-worker.js b/src/service-worker.js
index 3c1ae0ac..ca0d472b 100644
--- a/src/service-worker.js
+++ b/src/service-worker.js
@@ -22,7 +22,13 @@ self.addEventListener("install", (event) => {
event.waitUntil(
caches
.open(CACHE_BUILD)
- .then((cache) => cache.addAll([...build, ...ESSENTIAL_STATIC]))
+ .then((cache) =>
+ Promise.allSettled(
+ [...build, ...ESSENTIAL_STATIC].map((url) =>
+ cache.add(url).catch(() => {}),
+ ),
+ ),
+ )
.then(() => self.skipWaiting()),
);
});