Update service-worker.js

This commit is contained in:
FURK4NGG
2025-03-04 21:09:02 +03:00
committed by GitHub
parent 987da98a4e
commit 469027cfd3
+53 -39
View File
@@ -1,70 +1,84 @@
const CACHE_VERSION = 7; // Güncel cache versiyonu const CACHE_VERSION = 15; // Güncel cache versiyonu
const CACHE_NAME = `my-cache-v${CACHE_VERSION}`; // Önbellek adı const CACHE_NAME = `my-cache-v${CACHE_VERSION}`; // Önbellek adı
const URLS_TO_CACHE = [ const URLS_TO_CACHE = [
'/', '/index.html', '/home_en.html', '/home_tr.html', '/404.html', '/',
'/FONTS/Inconsolata.woff2', '/FONTS/Jaro.woff2', '/FONTS/Monomakh.woff2', '/index.html',
'/FONTS/Montserrat.woff2', '/FONTS/TacOne.woff2', '/FONTS/Teko.woff2', '/home_en.html',
'/JAVASCRIPT/1.js', '/JAVASCRIPT/tr/1.js', '/JAVASCRIPT/darkmode-js.min.js', '/home_tr.html',
'/JAVASCRIPT/gsap.min.js', '/JAVASCRIPT/swiper-bundle.min.js', '/404.html',
'/service-worker.js', '/img/profile_photo1.webp', '/img/character1.webp', '/CSS/unpkg.comswiper@8swiper-bundle.min.css',
'/img/character2.webp', '/img/character3.webp', '/img/ai.webp', '/FONTS/Inconsolata.woff2',
'/img/app.webp', '/img/cyber.webp', '/img/game.webp', '/img/robotic.webp', '/FONTS/Jaro.woff2',
'/img/web.webp', '/img/up.webp', '/img/icon.ico', '/sitemap.xml', '/FONTS/Monomakh.woff2',
'/manifest.json', '/robots.txt', '/.htaccess.txt' '/FONTS/Montserrat.woff2',
'/FONTS/TacOne.woff2',
'/FONTS/Teko.woff2',
'/JAVASCRIPT/1.js',
'/JAVASCRIPT/tr/1.js',
'/JAVASCRIPT/darkmode-js.min.js',
'/JAVASCRIPT/gsap.min.js',
'/JAVASCRIPT/swiper-bundle.min.js',
'/service-worker.js',
'/img/profile_photo1.webp',
'/img/character1.webp',
'/img/character2.webp',
'/img/character3.webp',
'/img/ai.webp',
'/img/app.webp',
'/img/cyber.webp',
'/img/game.webp',
'/img/robotic.webp',
'/img/web.webp',
'/img/up.webp',
'/img/icon.ico',
'/sitemap.xml',
'/manifest.json',
'/robots.txt',
'/.htaccess.txt'
]; ];
// 📌 **localStorage'dan eski versiyonu al** // 🚀 **Service Worker yüklenirken yeni cachei oluştur**
const oldCacheVersion = localStorage.getItem('cache_version') || 0;
// 🔄 **Service Worker yüklenirken internetten yeni cachei al**
self.addEventListener('install', (event) => { self.addEventListener('install', (event) => {
console.log(`🔄 Service Worker yükleniyor: v${CACHE_VERSION}`);
event.waitUntil( event.waitUntil(
caches.open(CACHE_NAME).then(async (cache) => { caches.open(CACHE_NAME).then((cache) => {
console.log(`🔄 Yeni cache yükleniyor: v${CACHE_VERSION}`); return Promise.all(
URLS_TO_CACHE.map(url =>
for (let url of URLS_TO_CACHE) { cache.add(url).then(() => console.log(`✅ Cache eklendi: ${url}`))
try { .catch(error => console.error(`❌ Cache eklenemedi: ${url}`, error))
await cache.add(url); )
console.log(`✅ Cache eklendi: ${url}`); );
} catch (error) {
console.error(`❌ Cache eklenemedi: ${url}`, error);
}
}
}) })
); );
}); });
// 🚀 **Aktif olunca eski cache'leri temizle ve yeni versiyonu kaydet** // 🗑️ **Eski cacheleri temizle**
self.addEventListener('activate', (event) => { self.addEventListener('activate', (event) => {
console.log(`⚡ Service Worker aktif oldu: v${CACHE_VERSION}`);
event.waitUntil( event.waitUntil(
caches.keys().then((cacheNames) => { caches.keys().then((cacheNames) => {
return Promise.all( return Promise.all(
cacheNames.map((cacheName) => { cacheNames.map((cache) => {
if (cacheName.startsWith("my-cache-v") && cacheName !== CACHE_NAME) { if (cache.startsWith("my-cache-v") && cache !== CACHE_NAME) {
console.log(`🗑️ Eski cache siliniyor: ${cacheName}`); console.log(`🗑️ Eski cache siliniyor: ${cache}`);
return caches.delete(cacheName); return caches.delete(cache);
} }
}) })
); );
}).then(() => {
console.log(`💾 Yeni versiyon kaydedildi: v${CACHE_VERSION}`);
localStorage.setItem('cache_version', CACHE_VERSION);
}) })
); );
}); });
// 🔍 **Cache'i kontrol et, yoksa internetten al ve kaydet** // 🌐 **Önbellekten yükle veya internetten al**
self.addEventListener('fetch', (event) => { self.addEventListener('fetch', (event) => {
event.respondWith( event.respondWith(
caches.match(event.request).then((response) => { caches.match(event.request).then((response) => {
if (response) return response; return response || fetch(event.request).then((networkResponse) => {
return fetch(event.request).then((networkResponse) => {
return caches.open(CACHE_NAME).then((cache) => { return caches.open(CACHE_NAME).then((cache) => {
cache.put(event.request, networkResponse.clone()); cache.put(event.request, networkResponse.clone());
return networkResponse; return networkResponse;
}); });
}); });
}).catch(() => caches.match(event.request)) }).catch(() => caches.match('/404.html'))
); );
}); });