// sw.js - Service Worker 자체 해제 (캐시 초기화)
// 기존 SW를 교체하여 모든 캐시를 삭제하고 자체 해제합니다.

self.addEventListener('install', function(event) {
  self.skipWaiting();
});

self.addEventListener('activate', function(event) {
  event.waitUntil(
    caches.keys().then(function(keys) {
      return Promise.all(
        keys.map(function(key) {
          console.log('SW: 캐시 삭제:', key);
          return caches.delete(key);
        })
      );
    }).then(function() {
      console.log('SW: 모든 캐시 삭제 완료, 자체 해제');
      return self.registration.unregister();
    }).then(function() {
      return self.clients.matchAll();
    }).then(function(clients) {
      clients.forEach(function(client) {
        client.postMessage({ type: 'SW_CLEARED' });
      });
    })
  );
});
