1 2 const CACHE_NAME = "cache-v260810145113"; 3 const urlsToCache = [ 4 "/", 5 ]; 6 const neverCacheUrls = [ 7 "/wp-admin/", 8 "/wp-login/", 9 "preview=true", 10 ]; 11 12 // ç¾å¨ã®URLãneverCacheUrlsãªã¹ãã«ãããã©ããã確èªãã 13 function checkNeverCacheList(url) { 14 if ( this.match(url) ) { 15 return false; 16 } 17 return true; 18 } 19 20 self.addEventListener("install", (event) => { 21 event.waitUntil( 22 caches.open(CACHE_NAME) 23 .then((cache) => { 24 console.log("Opened cache"); 25 26 // æå®ããããªã½ã¼ã¹ããã£ãã·ã¥ã«è¿½å ãã 27 return cache.addAll(urlsToCache); 28 }) 29 ); 30 }); 31 32 self.addEventListener("activate", (event) => { 33 var cacheWhitelist = [CACHE_NAME]; 34 35 event.waitUntil( 36 caches.keys().then((cacheNames) => { 37 return Promise.all( 38 cacheNames.map((cacheName) => { 39 // ãã¯ã¤ããªã¹ãã«ãªããã£ãã·ã¥(å¤ããã£ãã·ã¥)ã¯åé¤ãã 40 if (cacheWhitelist.indexOf(cacheName) === -1) { 41 return caches.delete(cacheName); 42 } 43 }) 44 ); 45 }) 46 ); 47 }); 48 49 self.addEventListener("fetch", (event) => { 50 if ( !neverCacheUrls.every(checkNeverCacheList, event.request.url) ) { 51 console.log( "non cache page" ); 52 return; 53 } 54 event.respondWith( 55 caches.match(event.request) 56 .then((response) => { 57 if (response) { 58 return response; 59 } 60 61 // éè¦ï¼ãªã¯ã¨ã¹ãã clone ããããªã¯ã¨ã¹ã㯠Stream ãªã®ã§ 62 // ä¸åº¦ããå¦çã§ããªããããã§ã¯ãã£ãã·ã¥ç¨ãfetch ç¨ã¨2å 63 // å¿ è¦ãªã®ã§ããªã¯ã¨ã¹ã㯠clone ããªãã¨ãããªã 64 let fetchRequest = event.request.clone(); 65 66 return fetch(fetchRequest) 67 .then((response) => { 68 if (!response || response.status !== 200 || response.type !== "basic") { 69 return response; 70 } 71 72 // éè¦ï¼ã¬ã¹ãã³ã¹ã clone ãããã¬ã¹ãã³ã¹ã¯ Stream ã§ 73 // ãã©ã¦ã¶ç¨ã¨ãã£ãã·ã¥ç¨ã®2åå¿ è¦ããªã®ã§ clone ã㦠74 // 2ã¤ã® Stream ãããããã«ãã 75 let responseToCache = response.clone(); 76 77 caches.open(CACHE_NAME) 78 .then((cache) => { 79 cache.put(event.request, responseToCache); 80 }); 81 return response; 82 }); 83 }) 84 ); 85 }); 86
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.