workbox-core
Advanced tools
Comparing version 5.0.0-alpha.2 to 5.0.0-beta.0
import { assert } from './_private/assert.js'; | ||
import { cacheNames } from './_private/cacheNames.js'; | ||
import { cacheWrapper } from './_private/cacheWrapper.js'; | ||
import { canConstructReadableStream } from './_private/canConstructReadableStream.js'; | ||
import { canConstructResponseFromBodyStream } from './_private/canConstructResponseFromBodyStream.js'; | ||
import { DBWrapper } from './_private/DBWrapper.js'; | ||
@@ -13,2 +15,2 @@ import { Deferred } from './_private/Deferred.js'; | ||
import './_version.js'; | ||
export { assert, cacheNames, cacheWrapper, DBWrapper, Deferred, deleteDatabase, executeQuotaErrorCallbacks, fetchWrapper, getFriendlyURL, logger, WorkboxError, }; | ||
export { assert, cacheNames, cacheWrapper, canConstructReadableStream, canConstructResponseFromBodyStream, DBWrapper, Deferred, deleteDatabase, executeQuotaErrorCallbacks, fetchWrapper, getFriendlyURL, logger, WorkboxError, }; |
@@ -12,2 +12,4 @@ /* | ||
import { cacheWrapper } from './_private/cacheWrapper.js'; | ||
import { canConstructReadableStream } from './_private/canConstructReadableStream.js'; | ||
import { canConstructResponseFromBodyStream } from './_private/canConstructResponseFromBodyStream.js'; | ||
import { DBWrapper } from './_private/DBWrapper.js'; | ||
@@ -22,2 +24,2 @@ import { Deferred } from './_private/Deferred.js'; | ||
import './_version.js'; | ||
export { assert, cacheNames, cacheWrapper, DBWrapper, Deferred, deleteDatabase, executeQuotaErrorCallbacks, fetchWrapper, getFriendlyURL, logger, WorkboxError, }; | ||
export { assert, cacheNames, cacheWrapper, canConstructReadableStream, canConstructResponseFromBodyStream, DBWrapper, Deferred, deleteDatabase, executeQuotaErrorCallbacks, fetchWrapper, getFriendlyURL, logger, WorkboxError, }; |
// @ts-ignore | ||
try { | ||
self['workbox:core:5.0.0-alpha.2'] && _(); | ||
self['workbox:core:5.0.0-beta.0'] && _(); | ||
} | ||
catch (e) { } |
@@ -7,3 +7,3 @@ this.workbox = this.workbox || {}; | ||
try { | ||
self['workbox:core:5.0.0-alpha.2'] && _(); | ||
self['workbox:core:5.0.0-beta.0'] && _(); | ||
} catch (e) {} | ||
@@ -953,2 +953,75 @@ | ||
/* | ||
Copyright 2019 Google LLC | ||
Use of this source code is governed by an MIT-style | ||
license that can be found in the LICENSE file or at | ||
https://opensource.org/licenses/MIT. | ||
*/ | ||
let supportStatus; | ||
/** | ||
* A utility function that determines whether the current browser supports | ||
* constructing a [`ReadableStream`](https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream/ReadableStream) | ||
* object. | ||
* | ||
* @return {boolean} `true`, if the current browser can successfully | ||
* construct a `ReadableStream`, `false` otherwise. | ||
* | ||
* @private | ||
*/ | ||
function canConstructReadableStream() { | ||
if (supportStatus === undefined) { | ||
// See https://github.com/GoogleChrome/workbox/issues/1473 | ||
try { | ||
new ReadableStream({ | ||
start() {} | ||
}); | ||
supportStatus = true; | ||
} catch (error) { | ||
supportStatus = false; | ||
} | ||
} | ||
return supportStatus; | ||
} | ||
/* | ||
Copyright 2019 Google LLC | ||
Use of this source code is governed by an MIT-style | ||
license that can be found in the LICENSE file or at | ||
https://opensource.org/licenses/MIT. | ||
*/ | ||
let supportStatus$1; | ||
/** | ||
* A utility function that determines whether the current browser supports | ||
* constructing a new `Response` from a `response.body` stream. | ||
* | ||
* @return {boolean} `true`, if the current browser can successfully | ||
* construct a `Response` from a `response.body` stream, `false` otherwise. | ||
* | ||
* @private | ||
*/ | ||
function canConstructResponseFromBodyStream() { | ||
if (supportStatus$1 === undefined) { | ||
const testResponse = new Response(''); | ||
if ('body' in testResponse) { | ||
try { | ||
new Response(testResponse.body); | ||
supportStatus$1 = true; | ||
} catch (error) { | ||
supportStatus$1 = false; | ||
} | ||
} | ||
supportStatus$1 = false; | ||
} | ||
return supportStatus$1; | ||
} | ||
/* | ||
Copyright 2018 Google LLC | ||
@@ -1491,2 +1564,4 @@ | ||
cacheWrapper: cacheWrapper, | ||
canConstructReadableStream: canConstructReadableStream, | ||
canConstructResponseFromBodyStream: canConstructResponseFromBodyStream, | ||
DBWrapper: DBWrapper, | ||
@@ -1510,20 +1585,2 @@ Deferred: Deferred, | ||
/** | ||
* Claim any currently available clients once the service worker | ||
* becomes active. This is normally used in conjunction with `skipWaiting()`. | ||
* | ||
* @alias workbox.core.clientsClaim | ||
*/ | ||
const clientsClaim = () => { | ||
addEventListener('activate', () => self.clients.claim()); | ||
}; | ||
/* | ||
Copyright 2019 Google LLC | ||
Use of this source code is governed by an MIT-style | ||
license that can be found in the LICENSE file or at | ||
https://opensource.org/licenses/MIT. | ||
*/ | ||
/** | ||
* Get the current cache names and prefix/suffix used by Workbox. | ||
@@ -1575,2 +1632,61 @@ * | ||
/** | ||
* Allows developers to copy a response and modify its `headers`, `status`, | ||
* or `statusText` values (the values settable via a | ||
* [`ResponseInit`]{@link https://developer.mozilla.org/en-US/docs/Web/API/Response/Response#Syntax} | ||
* object in the constructor). | ||
* To modify these values, pass a function as the second argument. That | ||
* function will be invoked with a single object with the response properties | ||
* `{headers, status, statusText}`. The return value of this function will | ||
* be used as the `ResponseInit` for the new `Response`. To change the values | ||
* either modify the passed parameter(s) and return it, or return a totally | ||
* new object. | ||
* | ||
* @param {Response} response | ||
* @param {Function} modifier | ||
* @alias workbox.core.copyResponse | ||
*/ | ||
async function copyResponse(response, modifier) { | ||
const clonedResponse = response.clone(); // Create a fresh `ResponseInit` object by cloning the headers. | ||
const responseInit = { | ||
headers: new Headers(clonedResponse.headers), | ||
status: clonedResponse.status, | ||
statusText: clonedResponse.statusText | ||
}; // Apply any user modifications. | ||
const modifiedResponseInit = modifier ? modifier(responseInit) : responseInit; // Create the new response from the body stream and `ResponseInit` | ||
// modifications. Note: not all browsers support the Response.body stream, | ||
// so fall back to reading the entire body into memory as a blob. | ||
const body = canConstructResponseFromBodyStream() ? clonedResponse.body : await clonedResponse.blob(); | ||
return new Response(body, modifiedResponseInit); | ||
} | ||
/* | ||
Copyright 2019 Google LLC | ||
Use of this source code is governed by an MIT-style | ||
license that can be found in the LICENSE file or at | ||
https://opensource.org/licenses/MIT. | ||
*/ | ||
/** | ||
* Claim any currently available clients once the service worker | ||
* becomes active. This is normally used in conjunction with `skipWaiting()`. | ||
* | ||
* @alias workbox.core.clientsClaim | ||
*/ | ||
const clientsClaim = () => { | ||
addEventListener('activate', () => self.clients.claim()); | ||
}; | ||
/* | ||
Copyright 2019 Google LLC | ||
Use of this source code is governed by an MIT-style | ||
license that can be found in the LICENSE file or at | ||
https://opensource.org/licenses/MIT. | ||
*/ | ||
/** | ||
* Modifies the default cache names used by the Workbox packages. | ||
@@ -1651,2 +1767,3 @@ * Cache names are generated as `<prefix>-<Cache Name>-<suffix>`. | ||
exports.clientsClaim = clientsClaim; | ||
exports.copyResponse = copyResponse; | ||
exports.registerQuotaErrorCallback = registerQuotaErrorCallback; | ||
@@ -1653,0 +1770,0 @@ exports.setCacheNameDetails = setCacheNameDetails; |
@@ -1,2 +0,2 @@ | ||
this.workbox=this.workbox||{},this.workbox.core=function(e){"use strict";try{self["workbox:core:5.0.0-alpha.2"]&&_()}catch(e){}const t=(e,...t)=>{let n=e;return t.length>0&&(n+=` :: ${JSON.stringify(t)}`),n};class n extends Error{constructor(e,n){super(t(e,n)),this.name=e,this.details=n}}const s=new Set;const r={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:registration.scope},a=e=>[r.prefix,e,r.suffix].filter(e=>e&&e.length>0).join("-"),i={updateDetails:e=>{(e=>{for(const t of Object.keys(r))e(t)})(t=>{"string"==typeof e[t]&&(r[t]=e[t])})},getGoogleAnalyticsName:e=>e||a(r.googleAnalytics),getPrecacheName:e=>e||a(r.precache),getPrefix:()=>r.prefix,getRuntimeName:e=>e||a(r.runtime),getSuffix:()=>r.suffix},c=e=>{const t=new URL(String(e),location.href);return t.origin===location.origin?t.pathname:t.href};async function o(){for(const e of s)await e()}const u=(e,t)=>e.filter(e=>t in e),l=async({cacheName:e,request:t,event:n,matchOptions:s,plugins:r=[]})=>{const a=await caches.open(e),i=await f({plugins:r,request:t,mode:"read"});let c=await a.match(i,s);for(const t of r)if("cachedResponseWillBeUsed"in t){const r=t.cachedResponseWillBeUsed;c=await r.call(t,{cacheName:e,event:n,matchOptions:s,cachedResponse:c,request:i})}return c},h=async({request:e,response:t,event:n,plugins:s=[]})=>{let r=t,a=!1;for(let t of s)if("cacheWillUpdate"in t){a=!0;const s=t.cacheWillUpdate;if(!(r=await s.call(t,{request:e,response:r,event:n})))break}return a||(r=r&&200===r.status?r:void 0),r||null},f=async({request:e,mode:t,plugins:n=[]})=>{const s=u(n,"cacheKeyWillBeUsed");let r=e;for(const e of s)"string"==typeof(r=await e.cacheKeyWillBeUsed.call(e,{mode:t,request:r}))&&(r=new Request(r));return r},w={put:async({cacheName:e,request:t,response:s,event:r,plugins:a=[],matchOptions:i})=>{const w=await f({plugins:a,request:t,mode:"write"});if(!s)throw new n("cache-put-with-no-response",{url:c(w.url)});let d=await h({event:r,plugins:a,response:s,request:w});if(!d)return;const p=await caches.open(e),g=u(a,"cacheDidUpdate");let y=g.length>0?await l({cacheName:e,matchOptions:i,request:w}):null;try{await p.put(w,d)}catch(e){throw"QuotaExceededError"===e.name&&await o(),e}for(let t of g)await t.cacheDidUpdate.call(t,{cacheName:e,event:r,oldResponse:y,newResponse:d,request:w})},match:l};class d{constructor(e,t,{onupgradeneeded:n,onversionchange:s}={}){this.t=null,this.s=e,this.i=t,this.o=n,this.u=s||(()=>this.close())}get db(){return this.t}async open(){if(!this.t)return this.t=await new Promise((e,t)=>{let n=!1;setTimeout(()=>{n=!0,t(new Error("The open request was blocked and timed out"))},this.OPEN_TIMEOUT);const s=indexedDB.open(this.s,this.i);s.onerror=(()=>t(s.error)),s.onupgradeneeded=(e=>{n?(s.transaction.abort(),s.result.close()):"function"==typeof this.o&&this.o(e)}),s.onsuccess=(()=>{const t=s.result;n?t.close():(t.onversionchange=this.u.bind(this),e(t))})}),this}async getKey(e,t){return(await this.getAllKeys(e,t,1))[0]}async getAll(e,t,n){return await this.getAllMatching(e,{query:t,count:n})}async getAllKeys(e,t,n){return(await this.getAllMatching(e,{query:t,count:n,includeKeys:!0})).map(e=>e.key)}async getAllMatching(e,{index:t,query:n=null,direction:s="next",count:r,includeKeys:a=!1}={}){return await this.transaction([e],"readonly",(i,c)=>{const o=i.objectStore(e),u=t?o.index(t):o,l=[],h=u.openCursor(n,s);h.onsuccess=(()=>{const e=h.result;e?(l.push(a?e:e.value),r&&l.length>=r?c(l):e.continue()):c(l)})})}async transaction(e,t,n){return await this.open(),await new Promise((s,r)=>{const a=this.t.transaction(e,t);a.onabort=(()=>r(a.error)),a.oncomplete=(()=>s()),n(a,e=>s(e))})}async l(e,t,n,...s){return await this.transaction([t],n,(n,r)=>{const a=n.objectStore(t),i=a[e].apply(a,s);i.onsuccess=(()=>r(i.result))})}close(){this.t&&(this.t.close(),this.t=null)}}d.prototype.OPEN_TIMEOUT=2e3;const p={readonly:["get","count","getKey","getAll","getAllKeys"],readwrite:["add","put","clear","delete"]};for(const[e,t]of Object.entries(p))for(const n of t)n in IDBObjectStore.prototype&&(d.prototype[n]=async function(t,...s){return await this.l(n,t,e,...s)});const g={fetch:async({request:e,fetchOptions:t,event:s,plugins:r=[]})=>{if("string"==typeof e&&(e=new Request(e)),s instanceof FetchEvent&&s.preloadResponse){const e=await s.preloadResponse;if(e)return e}const a=u(r,"fetchDidFail"),i=a.length>0?e.clone():null;try{for(let t of r)if("requestWillFetch"in t){const n=t.requestWillFetch,r=e.clone();e=await n.call(t,{request:r,event:s})}}catch(e){throw new n("plugin-error-request-will-fetch",{thrownError:e})}let c=e.clone();try{let n;n="navigate"===e.mode?await fetch(e):await fetch(e,t);for(const e of r)"fetchDidSucceed"in e&&(n=await e.fetchDidSucceed.call(e,{event:s,request:c,response:n}));return n}catch(e){for(const t of a)await t.fetchDidFail.call(t,{error:e,event:s,originalRequest:i.clone(),request:c.clone()});throw e}}};var y=Object.freeze({assert:null,cacheNames:i,cacheWrapper:w,DBWrapper:d,Deferred:class{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}},deleteDatabase:async e=>{await new Promise((t,n)=>{const s=indexedDB.deleteDatabase(e);s.onerror=(()=>{n(s.error)}),s.onblocked=(()=>{n(new Error("Delete blocked"))}),s.onsuccess=(()=>{t()})})},executeQuotaErrorCallbacks:o,fetchWrapper:g,getFriendlyURL:c,logger:null,WorkboxError:n});const m={get googleAnalytics(){return i.getGoogleAnalyticsName()},get precache(){return i.getPrecacheName()},get prefix(){return i.getPrefix()},get runtime(){return i.getRuntimeName()},get suffix(){return i.getSuffix()}};return e._private=y,e.cacheNames=m,e.clientsClaim=(()=>{addEventListener("activate",()=>self.clients.claim())}),e.registerQuotaErrorCallback=function(e){s.add(e)},e.setCacheNameDetails=(e=>{i.updateDetails(e)}),e.skipWaiting=(()=>{addEventListener("install",()=>self.skipWaiting())}),e}({}); | ||
this.workbox=this.workbox||{},this.workbox.core=function(e){"use strict";try{self["workbox:core:5.0.0-beta.0"]&&_()}catch(e){}const t=(e,...t)=>{let n=e;return t.length>0&&(n+=` :: ${JSON.stringify(t)}`),n};class n extends Error{constructor(e,n){super(t(e,n)),this.name=e,this.details=n}}const s=new Set;const r={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:registration.scope},a=e=>[r.prefix,e,r.suffix].filter(e=>e&&e.length>0).join("-"),i={updateDetails:e=>{(e=>{for(const t of Object.keys(r))e(t)})(t=>{"string"==typeof e[t]&&(r[t]=e[t])})},getGoogleAnalyticsName:e=>e||a(r.googleAnalytics),getPrecacheName:e=>e||a(r.precache),getPrefix:()=>r.prefix,getRuntimeName:e=>e||a(r.runtime),getSuffix:()=>r.suffix},c=e=>{const t=new URL(String(e),location.href);return t.origin===location.origin?t.pathname:t.href};async function o(){for(const e of s)await e()}const u=(e,t)=>e.filter(e=>t in e),l=async({cacheName:e,request:t,event:n,matchOptions:s,plugins:r=[]})=>{const a=await caches.open(e),i=await f({plugins:r,request:t,mode:"read"});let c=await a.match(i,s);for(const t of r)if("cachedResponseWillBeUsed"in t){const r=t.cachedResponseWillBeUsed;c=await r.call(t,{cacheName:e,event:n,matchOptions:s,cachedResponse:c,request:i})}return c},h=async({request:e,response:t,event:n,plugins:s=[]})=>{let r=t,a=!1;for(let t of s)if("cacheWillUpdate"in t){a=!0;const s=t.cacheWillUpdate;if(!(r=await s.call(t,{request:e,response:r,event:n})))break}return a||(r=r&&200===r.status?r:void 0),r||null},f=async({request:e,mode:t,plugins:n=[]})=>{const s=u(n,"cacheKeyWillBeUsed");let r=e;for(const e of s)"string"==typeof(r=await e.cacheKeyWillBeUsed.call(e,{mode:t,request:r}))&&(r=new Request(r));return r},w={put:async({cacheName:e,request:t,response:s,event:r,plugins:a=[],matchOptions:i})=>{const w=await f({plugins:a,request:t,mode:"write"});if(!s)throw new n("cache-put-with-no-response",{url:c(w.url)});let d=await h({event:r,plugins:a,response:s,request:w});if(!d)return;const p=await caches.open(e),g=u(a,"cacheDidUpdate");let y=g.length>0?await l({cacheName:e,matchOptions:i,request:w}):null;try{await p.put(w,d)}catch(e){throw"QuotaExceededError"===e.name&&await o(),e}for(let t of g)await t.cacheDidUpdate.call(t,{cacheName:e,event:r,oldResponse:y,newResponse:d,request:w})},match:l};let d,p;function g(){if(void 0===p){const e=new Response("");if("body"in e)try{new Response(e.body),p=!0}catch(e){p=!1}p=!1}return p}class y{constructor(e,t,{onupgradeneeded:n,onversionchange:s}={}){this.t=null,this.s=e,this.i=t,this.o=n,this.u=s||(()=>this.close())}get db(){return this.t}async open(){if(!this.t)return this.t=await new Promise((e,t)=>{let n=!1;setTimeout(()=>{n=!0,t(new Error("The open request was blocked and timed out"))},this.OPEN_TIMEOUT);const s=indexedDB.open(this.s,this.i);s.onerror=(()=>t(s.error)),s.onupgradeneeded=(e=>{n?(s.transaction.abort(),s.result.close()):"function"==typeof this.o&&this.o(e)}),s.onsuccess=(()=>{const t=s.result;n?t.close():(t.onversionchange=this.u.bind(this),e(t))})}),this}async getKey(e,t){return(await this.getAllKeys(e,t,1))[0]}async getAll(e,t,n){return await this.getAllMatching(e,{query:t,count:n})}async getAllKeys(e,t,n){return(await this.getAllMatching(e,{query:t,count:n,includeKeys:!0})).map(e=>e.key)}async getAllMatching(e,{index:t,query:n=null,direction:s="next",count:r,includeKeys:a=!1}={}){return await this.transaction([e],"readonly",(i,c)=>{const o=i.objectStore(e),u=t?o.index(t):o,l=[],h=u.openCursor(n,s);h.onsuccess=(()=>{const e=h.result;e?(l.push(a?e:e.value),r&&l.length>=r?c(l):e.continue()):c(l)})})}async transaction(e,t,n){return await this.open(),await new Promise((s,r)=>{const a=this.t.transaction(e,t);a.onabort=(()=>r(a.error)),a.oncomplete=(()=>s()),n(a,e=>s(e))})}async l(e,t,n,...s){return await this.transaction([t],n,(n,r)=>{const a=n.objectStore(t),i=a[e].apply(a,s);i.onsuccess=(()=>r(i.result))})}close(){this.t&&(this.t.close(),this.t=null)}}y.prototype.OPEN_TIMEOUT=2e3;const m={readonly:["get","count","getKey","getAll","getAllKeys"],readwrite:["add","put","clear","delete"]};for(const[e,t]of Object.entries(m))for(const n of t)n in IDBObjectStore.prototype&&(y.prototype[n]=async function(t,...s){return await this.l(n,t,e,...s)});const q={fetch:async({request:e,fetchOptions:t,event:s,plugins:r=[]})=>{if("string"==typeof e&&(e=new Request(e)),s instanceof FetchEvent&&s.preloadResponse){const e=await s.preloadResponse;if(e)return e}const a=u(r,"fetchDidFail"),i=a.length>0?e.clone():null;try{for(let t of r)if("requestWillFetch"in t){const n=t.requestWillFetch,r=e.clone();e=await n.call(t,{request:r,event:s})}}catch(e){throw new n("plugin-error-request-will-fetch",{thrownError:e})}let c=e.clone();try{let n;n="navigate"===e.mode?await fetch(e):await fetch(e,t);for(const e of r)"fetchDidSucceed"in e&&(n=await e.fetchDidSucceed.call(e,{event:s,request:c,response:n}));return n}catch(e){for(const t of a)await t.fetchDidFail.call(t,{error:e,event:s,originalRequest:i.clone(),request:c.clone()});throw e}}};var v=Object.freeze({assert:null,cacheNames:i,cacheWrapper:w,canConstructReadableStream:function(){if(void 0===d)try{new ReadableStream({start(){}}),d=!0}catch(e){d=!1}return d},canConstructResponseFromBodyStream:g,DBWrapper:y,Deferred:class{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}},deleteDatabase:async e=>{await new Promise((t,n)=>{const s=indexedDB.deleteDatabase(e);s.onerror=(()=>{n(s.error)}),s.onblocked=(()=>{n(new Error("Delete blocked"))}),s.onsuccess=(()=>{t()})})},executeQuotaErrorCallbacks:o,fetchWrapper:q,getFriendlyURL:c,logger:null,WorkboxError:n});const x={get googleAnalytics(){return i.getGoogleAnalyticsName()},get precache(){return i.getPrecacheName()},get prefix(){return i.getPrefix()},get runtime(){return i.getRuntimeName()},get suffix(){return i.getSuffix()}};return e._private=v,e.cacheNames=x,e.clientsClaim=(()=>{addEventListener("activate",()=>self.clients.claim())}),e.copyResponse=async function(e,t){const n=e.clone(),s={headers:new Headers(n.headers),status:n.status,statusText:n.statusText},r=t?t(s):s,a=g()?n.body:await n.blob();return new Response(a,r)},e.registerQuotaErrorCallback=function(e){s.add(e)},e.setCacheNameDetails=(e=>{i.updateDetails(e)}),e.skipWaiting=(()=>{addEventListener("install",()=>self.skipWaiting())}),e}({}); | ||
//# sourceMappingURL=workbox-core.prod.js.map |
import { registerQuotaErrorCallback } from './registerQuotaErrorCallback.js'; | ||
import * as _private from './_private.js'; | ||
import { cacheNames } from './cacheNames.js'; | ||
import { copyResponse } from './copyResponse.js'; | ||
import { clientsClaim } from './clientsClaim.js'; | ||
import { cacheNames } from './cacheNames.js'; | ||
import { setCacheNameDetails } from './setCacheNameDetails.js'; | ||
@@ -15,2 +16,2 @@ import { skipWaiting } from './skipWaiting.js'; | ||
*/ | ||
export { _private, clientsClaim, cacheNames, registerQuotaErrorCallback, setCacheNameDetails, skipWaiting, }; | ||
export { _private, cacheNames, clientsClaim, copyResponse, registerQuotaErrorCallback, setCacheNameDetails, skipWaiting, }; |
@@ -10,4 +10,5 @@ /* | ||
import * as _private from './_private.js'; | ||
import { cacheNames } from './cacheNames.js'; | ||
import { copyResponse } from './copyResponse.js'; | ||
import { clientsClaim } from './clientsClaim.js'; | ||
import { cacheNames } from './cacheNames.js'; | ||
import { setCacheNameDetails } from './setCacheNameDetails.js'; | ||
@@ -23,2 +24,2 @@ import { skipWaiting } from './skipWaiting.js'; | ||
*/ | ||
export { _private, clientsClaim, cacheNames, registerQuotaErrorCallback, setCacheNameDetails, skipWaiting, }; | ||
export { _private, cacheNames, clientsClaim, copyResponse, registerQuotaErrorCallback, setCacheNameDetails, skipWaiting, }; |
{ | ||
"name": "workbox-core", | ||
"version": "5.0.0-alpha.2", | ||
"version": "5.0.0-beta.0", | ||
"license": "MIT", | ||
@@ -28,3 +28,3 @@ "author": "Google's Web DevRel Team", | ||
"types": "index.d.ts", | ||
"gitHead": "0cb0029b692c3802545238fe59b6d6179ca32f6c" | ||
"gitHead": "136b38f2c701bd7c04e808d19961310a9ede524b" | ||
} |
@@ -13,2 +13,4 @@ /* | ||
import {cacheWrapper} from './_private/cacheWrapper.js'; | ||
import {canConstructReadableStream} from './_private/canConstructReadableStream.js'; | ||
import {canConstructResponseFromBodyStream} from './_private/canConstructResponseFromBodyStream.js'; | ||
import {DBWrapper} from './_private/DBWrapper.js'; | ||
@@ -29,2 +31,4 @@ import {Deferred} from './_private/Deferred.js'; | ||
cacheWrapper, | ||
canConstructReadableStream, | ||
canConstructResponseFromBodyStream, | ||
DBWrapper, | ||
@@ -31,0 +35,0 @@ Deferred, |
@@ -61,3 +61,3 @@ /* | ||
for (const key of loggerMethods) { | ||
const method = <LoggerMethods> key | ||
const method = <LoggerMethods> key; | ||
@@ -64,0 +64,0 @@ api[method] = (...args: any[]) => { |
// @ts-ignore | ||
try{self['workbox:core:5.0.0-alpha.2']&&_()}catch(e){} | ||
try{self['workbox:core:5.0.0-beta.0']&&_()}catch(e){} |
@@ -11,4 +11,5 @@ /* | ||
import * as _private from './_private.js'; | ||
import {cacheNames} from './cacheNames.js'; | ||
import {copyResponse} from './copyResponse.js'; | ||
import {clientsClaim} from './clientsClaim.js'; | ||
import {cacheNames} from './cacheNames.js'; | ||
import {setCacheNameDetails} from './setCacheNameDetails.js'; | ||
@@ -28,4 +29,5 @@ import {skipWaiting} from './skipWaiting.js'; | ||
_private, | ||
cacheNames, | ||
clientsClaim, | ||
cacheNames, | ||
copyResponse, | ||
registerQuotaErrorCallback, | ||
@@ -32,0 +34,0 @@ setCacheNameDetails, |
110
src/types.ts
@@ -62,63 +62,83 @@ /* | ||
*/ | ||
export interface RouteHandler { | ||
handle(opts: RouteHandlerCallbackOptions): Promise<Response>; | ||
export interface RouteHandlerObject { | ||
handle: RouteHandlerCallback; | ||
} | ||
interface CacheDidUpdateCallback { | ||
({cacheName, oldResponse, newResponse, request, event}: { | ||
cacheName: string, | ||
oldResponse?: Response, | ||
newResponse: Response, | ||
request: Request, | ||
event?: FetchEvent | ||
}): Promise<void | null | undefined>; | ||
/** | ||
* Either a `RouteHandlerCallback` or a `RouteHandlerObject`. | ||
* Most APIs in `workbox-routing` that accept route handlers take either. | ||
*/ | ||
export type RouteHandler = RouteHandlerCallback | RouteHandlerObject; | ||
export interface CacheDidUpdateCallbackParam { | ||
cacheName: string; | ||
oldResponse?: Response; | ||
newResponse: Response; | ||
request: Request; | ||
event?: FetchEvent; | ||
} | ||
interface CacheKeyWillBeUsedCallback { | ||
({request, mode}: { | ||
request: Request, | ||
mode: string, | ||
}): Promise<Request | string>; | ||
export interface CacheDidUpdateCallback { | ||
(param: CacheDidUpdateCallbackParam): Promise<void | null | undefined>; | ||
} | ||
interface CacheWillUpdateCallback { | ||
({response, request, event}: { | ||
response: Response, | ||
request?: Request, | ||
event?: ExtendableEvent, | ||
}): Promise<Response | void | null | undefined>; | ||
export interface CacheKeyWillBeUsedCallbackParam { | ||
request: Request; | ||
mode: string; | ||
} | ||
interface CachedResponseWillBeUsedCallback { | ||
({cacheName, request, matchOptions, cachedResponse, event}: { | ||
cacheName: string, | ||
request: Request, | ||
matchOptions?: CacheQueryOptions, | ||
cachedResponse?: Response, | ||
event?: ExtendableEvent, | ||
}): Promise<Response | void | null | undefined>; | ||
export interface CacheKeyWillBeUsedCallback { | ||
(param: CacheKeyWillBeUsedCallbackParam): Promise<Request | string>; | ||
} | ||
interface FetchDidFailCallback { | ||
({originalRequest, request, error, event}: { | ||
originalRequest: Request, | ||
error: Error, | ||
request: Request, | ||
event?: ExtendableEvent, | ||
}): Promise<void | null | undefined>; | ||
export interface CacheWillUpdateCallbackParamParam { | ||
response: Response; | ||
request?: Request; | ||
event?: ExtendableEvent; | ||
} | ||
interface FetchDidSucceedCallback { | ||
({request, response}: { | ||
request: Request, | ||
response: Response, | ||
}): Promise<Response> | ||
export interface CacheWillUpdateCallback { | ||
(param: CacheWillUpdateCallbackParamParam): Promise<Response | void | null | undefined>; | ||
} | ||
interface RequestWillFetchCallback { | ||
({request}: { | ||
request: Request | ||
}): Promise<void | null | undefined> | ||
export interface CachedResponseWillBeUsedCallbackParam { | ||
cacheName: string; | ||
request: Request; | ||
matchOptions?: CacheQueryOptions; | ||
cachedResponse?: Response; | ||
event?: ExtendableEvent; | ||
} | ||
export interface CachedResponseWillBeUsedCallback { | ||
(param: CachedResponseWillBeUsedCallbackParam): Promise<Response | void | null | undefined>; | ||
} | ||
export interface FetchDidFailCallbackParam { | ||
originalRequest: Request; | ||
error: Error; | ||
request: Request; | ||
event?: ExtendableEvent; | ||
} | ||
export interface FetchDidFailCallback { | ||
(param: FetchDidFailCallbackParam): Promise<void | null | undefined>; | ||
} | ||
export interface FetchDidSucceedCallbackParam { | ||
request: Request; | ||
response: Response; | ||
} | ||
export interface FetchDidSucceedCallback { | ||
(param: FetchDidSucceedCallbackParam): Promise<Response> | ||
} | ||
export interface RequestWillFetchCallbackParam { | ||
request: Request; | ||
} | ||
export interface RequestWillFetchCallback { | ||
(param: RequestWillFetchCallbackParam): Promise<void | null | undefined> | ||
} | ||
/** | ||
@@ -125,0 +145,0 @@ * An object with optional lifecycle callback properties for the fetch and |
103
types.d.ts
@@ -50,55 +50,67 @@ import './_version.js'; | ||
*/ | ||
export interface RouteHandler { | ||
handle(opts: RouteHandlerCallbackOptions): Promise<Response>; | ||
export interface RouteHandlerObject { | ||
handle: RouteHandlerCallback; | ||
} | ||
interface CacheDidUpdateCallback { | ||
({ cacheName, oldResponse, newResponse, request, event }: { | ||
cacheName: string; | ||
oldResponse?: Response; | ||
newResponse: Response; | ||
request: Request; | ||
event?: FetchEvent; | ||
}): Promise<void | null | undefined>; | ||
/** | ||
* Either a `RouteHandlerCallback` or a `RouteHandlerObject`. | ||
* Most APIs in `workbox-routing` that accept route handlers take either. | ||
*/ | ||
export declare type RouteHandler = RouteHandlerCallback | RouteHandlerObject; | ||
export interface CacheDidUpdateCallbackParam { | ||
cacheName: string; | ||
oldResponse?: Response; | ||
newResponse: Response; | ||
request: Request; | ||
event?: FetchEvent; | ||
} | ||
interface CacheKeyWillBeUsedCallback { | ||
({ request, mode }: { | ||
request: Request; | ||
mode: string; | ||
}): Promise<Request | string>; | ||
export interface CacheDidUpdateCallback { | ||
(param: CacheDidUpdateCallbackParam): Promise<void | null | undefined>; | ||
} | ||
interface CacheWillUpdateCallback { | ||
({ response, request, event }: { | ||
response: Response; | ||
request?: Request; | ||
event?: ExtendableEvent; | ||
}): Promise<Response | void | null | undefined>; | ||
export interface CacheKeyWillBeUsedCallbackParam { | ||
request: Request; | ||
mode: string; | ||
} | ||
interface CachedResponseWillBeUsedCallback { | ||
({ cacheName, request, matchOptions, cachedResponse, event }: { | ||
cacheName: string; | ||
request: Request; | ||
matchOptions?: CacheQueryOptions; | ||
cachedResponse?: Response; | ||
event?: ExtendableEvent; | ||
}): Promise<Response | void | null | undefined>; | ||
export interface CacheKeyWillBeUsedCallback { | ||
(param: CacheKeyWillBeUsedCallbackParam): Promise<Request | string>; | ||
} | ||
interface FetchDidFailCallback { | ||
({ originalRequest, request, error, event }: { | ||
originalRequest: Request; | ||
error: Error; | ||
request: Request; | ||
event?: ExtendableEvent; | ||
}): Promise<void | null | undefined>; | ||
export interface CacheWillUpdateCallbackParamParam { | ||
response: Response; | ||
request?: Request; | ||
event?: ExtendableEvent; | ||
} | ||
interface FetchDidSucceedCallback { | ||
({ request, response }: { | ||
request: Request; | ||
response: Response; | ||
}): Promise<Response>; | ||
export interface CacheWillUpdateCallback { | ||
(param: CacheWillUpdateCallbackParamParam): Promise<Response | void | null | undefined>; | ||
} | ||
interface RequestWillFetchCallback { | ||
({ request }: { | ||
request: Request; | ||
}): Promise<void | null | undefined>; | ||
export interface CachedResponseWillBeUsedCallbackParam { | ||
cacheName: string; | ||
request: Request; | ||
matchOptions?: CacheQueryOptions; | ||
cachedResponse?: Response; | ||
event?: ExtendableEvent; | ||
} | ||
export interface CachedResponseWillBeUsedCallback { | ||
(param: CachedResponseWillBeUsedCallbackParam): Promise<Response | void | null | undefined>; | ||
} | ||
export interface FetchDidFailCallbackParam { | ||
originalRequest: Request; | ||
error: Error; | ||
request: Request; | ||
event?: ExtendableEvent; | ||
} | ||
export interface FetchDidFailCallback { | ||
(param: FetchDidFailCallbackParam): Promise<void | null | undefined>; | ||
} | ||
export interface FetchDidSucceedCallbackParam { | ||
request: Request; | ||
response: Response; | ||
} | ||
export interface FetchDidSucceedCallback { | ||
(param: FetchDidSucceedCallbackParam): Promise<Response>; | ||
} | ||
export interface RequestWillFetchCallbackParam { | ||
request: Request; | ||
} | ||
export interface RequestWillFetchCallback { | ||
(param: RequestWillFetchCallbackParam): Promise<void | null | undefined>; | ||
} | ||
/** | ||
@@ -117,2 +129,1 @@ * An object with optional lifecycle callback properties for the fetch and | ||
} | ||
export {}; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
495975
125
5631