File size: 997 Bytes
1da815e
 
 
9daf3ee
 
 
 
 
 
 
 
 
 
 
 
1da815e
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// メッセージ受信処理
self.addEventListener('message', (event) => {
    if (event.data && event.data.type === 'CACHE_FILES') {
        cachedFiles = ['/index.html', ...event.data.files]; // index.htmlは常に含める
        
        // チェックボックスの状態を保存
        if (event.data.checkboxStates) {
            event.waitUntil(
                caches.open('settings-cache').then(cache => {
                    return cache.put(
                        new Request('checkbox-states'),
                        new Response(JSON.stringify(event.data.checkboxStates))
                })
            );
        }
        
        // 新しいキャッシュリストでキャッシュを更新
        event.waitUntil(
            caches.open(CACHE_NAME).then(cache => {
                return cache.addAll(cachedFiles).catch(error => {
                    console.error('キャッシュ追加エラー:', error);
                });
            })
        );
    }
});