serwist 9.5.6 → 9.5.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/Route-wAAof_Tq.d.ts +36 -0
- package/dist/chunks/Route-wAAof_Tq.d.ts.map +1 -0
- package/dist/chunks/cacheNames-DZwJpopB.d.ts +35 -0
- package/dist/chunks/cacheNames-DZwJpopB.d.ts.map +1 -0
- package/dist/chunks/index.internal-Dxj9Ni9X.js +65 -0
- package/dist/chunks/index.internal-Dxj9Ni9X.js.map +1 -0
- package/dist/chunks/printInstallDetails-c9A08ZVZ.js +2026 -0
- package/dist/chunks/printInstallDetails-c9A08ZVZ.js.map +1 -0
- package/dist/chunks/types-CKER0KBv.d.ts +786 -0
- package/dist/chunks/types-CKER0KBv.d.ts.map +1 -0
- package/dist/chunks/waitUntil-BHDx3Rgo.js +486 -0
- package/dist/chunks/waitUntil-BHDx3Rgo.js.map +1 -0
- package/dist/index.d.mts +1525 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.internal.d.mts +337 -0
- package/dist/index.internal.d.mts.map +1 -0
- package/dist/index.internal.mjs +3 -0
- package/dist/index.legacy.d.mts +892 -0
- package/dist/index.legacy.d.mts.map +1 -0
- package/dist/index.legacy.mjs +1162 -0
- package/dist/index.legacy.mjs.map +1 -0
- package/dist/index.mjs +1847 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +16 -17
- package/src/Serwist.ts +1 -5
- package/src/legacy/Router.ts +1 -5
- package/src/legacy/utils/PrecacheCacheKeyPlugin.ts +0 -2
- package/src/utils/PrecacheCacheKeyPlugin.ts +0 -2
- package/dist/NavigationRoute.d.ts +0 -56
- package/dist/NavigationRoute.d.ts.map +0 -1
- package/dist/PrecacheRoute.d.ts +0 -16
- package/dist/PrecacheRoute.d.ts.map +0 -1
- package/dist/RegExpRoute.d.ts +0 -24
- package/dist/RegExpRoute.d.ts.map +0 -1
- package/dist/Route.d.ts +0 -33
- package/dist/Route.d.ts.map +0 -1
- package/dist/Serwist.d.ts +0 -299
- package/dist/Serwist.d.ts.map +0 -1
- package/dist/cacheNames.d.ts +0 -20
- package/dist/cacheNames.d.ts.map +0 -1
- package/dist/chunks/printInstallDetails.js +0 -1575
- package/dist/chunks/resultingClientExists.js +0 -32
- package/dist/chunks/waitUntil.js +0 -449
- package/dist/constants.d.ts +0 -15
- package/dist/constants.d.ts.map +0 -1
- package/dist/copyResponse.d.ts +0 -18
- package/dist/copyResponse.d.ts.map +0 -1
- package/dist/disableDevLogs.d.ts +0 -7
- package/dist/disableDevLogs.d.ts.map +0 -1
- package/dist/index.d.ts +0 -50
- package/dist/index.d.ts.map +0 -1
- package/dist/index.internal.d.ts +0 -18
- package/dist/index.internal.d.ts.map +0 -1
- package/dist/index.internal.js +0 -23
- package/dist/index.js +0 -1533
- package/dist/index.legacy.d.ts +0 -28
- package/dist/index.legacy.d.ts.map +0 -1
- package/dist/index.legacy.js +0 -790
- package/dist/legacy/PrecacheController.d.ts +0 -145
- package/dist/legacy/PrecacheController.d.ts.map +0 -1
- package/dist/legacy/PrecacheFallbackPlugin.d.ts +0 -61
- package/dist/legacy/PrecacheFallbackPlugin.d.ts.map +0 -1
- package/dist/legacy/PrecacheRoute.d.ts +0 -19
- package/dist/legacy/PrecacheRoute.d.ts.map +0 -1
- package/dist/legacy/Router.d.ts +0 -151
- package/dist/legacy/Router.d.ts.map +0 -1
- package/dist/legacy/addPlugins.d.ts +0 -9
- package/dist/legacy/addPlugins.d.ts.map +0 -1
- package/dist/legacy/addRoute.d.ts +0 -14
- package/dist/legacy/addRoute.d.ts.map +0 -1
- package/dist/legacy/constants.d.ts +0 -10
- package/dist/legacy/constants.d.ts.map +0 -1
- package/dist/legacy/createHandlerBoundToURL.d.ts +0 -17
- package/dist/legacy/createHandlerBoundToURL.d.ts.map +0 -1
- package/dist/legacy/fallbacks.d.ts +0 -59
- package/dist/legacy/fallbacks.d.ts.map +0 -1
- package/dist/legacy/getCacheKeyForURL.d.ts +0 -20
- package/dist/legacy/getCacheKeyForURL.d.ts.map +0 -1
- package/dist/legacy/handlePrecaching.d.ts +0 -54
- package/dist/legacy/handlePrecaching.d.ts.map +0 -1
- package/dist/legacy/initializeGoogleAnalytics.d.ts +0 -38
- package/dist/legacy/initializeGoogleAnalytics.d.ts.map +0 -1
- package/dist/legacy/installSerwist.d.ts +0 -81
- package/dist/legacy/installSerwist.d.ts.map +0 -1
- package/dist/legacy/matchPrecache.d.ts +0 -15
- package/dist/legacy/matchPrecache.d.ts.map +0 -1
- package/dist/legacy/precache.d.ts +0 -20
- package/dist/legacy/precache.d.ts.map +0 -1
- package/dist/legacy/precacheAndRoute.d.ts +0 -14
- package/dist/legacy/precacheAndRoute.d.ts.map +0 -1
- package/dist/legacy/registerRoute.d.ts +0 -16
- package/dist/legacy/registerRoute.d.ts.map +0 -1
- package/dist/legacy/registerRuntimeCaching.d.ts +0 -11
- package/dist/legacy/registerRuntimeCaching.d.ts.map +0 -1
- package/dist/legacy/setCatchHandler.d.ts +0 -10
- package/dist/legacy/setCatchHandler.d.ts.map +0 -1
- package/dist/legacy/setDefaultHandler.d.ts +0 -13
- package/dist/legacy/setDefaultHandler.d.ts.map +0 -1
- package/dist/legacy/singletonPrecacheController.d.ts +0 -34
- package/dist/legacy/singletonPrecacheController.d.ts.map +0 -1
- package/dist/legacy/singletonRouter.d.ts +0 -41
- package/dist/legacy/singletonRouter.d.ts.map +0 -1
- package/dist/legacy/unregisterRoute.d.ts +0 -9
- package/dist/legacy/unregisterRoute.d.ts.map +0 -1
- package/dist/legacy/utils/PrecacheCacheKeyPlugin.d.ts +0 -16
- package/dist/legacy/utils/PrecacheCacheKeyPlugin.d.ts.map +0 -1
- package/dist/legacy/utils/getCacheKeyForURL.d.ts +0 -14
- package/dist/legacy/utils/getCacheKeyForURL.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncPlugin.d.ts +0 -23
- package/dist/lib/backgroundSync/BackgroundSyncPlugin.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts +0 -182
- package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts +0 -90
- package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts +0 -75
- package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts.map +0 -1
- package/dist/lib/backgroundSync/StorableRequest.d.ts +0 -51
- package/dist/lib/backgroundSync/StorableRequest.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts +0 -44
- package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts +0 -24
- package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/constants.d.ts +0 -5
- package/dist/lib/broadcastUpdate/constants.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/responsesAreSame.d.ts +0 -11
- package/dist/lib/broadcastUpdate/responsesAreSame.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/types.d.ts +0 -35
- package/dist/lib/broadcastUpdate/types.d.ts.map +0 -1
- package/dist/lib/cacheableResponse/CacheableResponse.d.ts +0 -40
- package/dist/lib/cacheableResponse/CacheableResponse.d.ts.map +0 -1
- package/dist/lib/cacheableResponse/CacheableResponsePlugin.d.ts +0 -27
- package/dist/lib/cacheableResponse/CacheableResponsePlugin.d.ts.map +0 -1
- package/dist/lib/expiration/CacheExpiration.d.ts +0 -66
- package/dist/lib/expiration/CacheExpiration.d.ts.map +0 -1
- package/dist/lib/expiration/ExpirationPlugin.d.ts +0 -116
- package/dist/lib/expiration/ExpirationPlugin.d.ts.map +0 -1
- package/dist/lib/expiration/models/CacheTimestampsModel.d.ts +0 -73
- package/dist/lib/expiration/models/CacheTimestampsModel.d.ts.map +0 -1
- package/dist/lib/googleAnalytics/constants.d.ts +0 -10
- package/dist/lib/googleAnalytics/constants.d.ts.map +0 -1
- package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts +0 -30
- package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts.map +0 -1
- package/dist/lib/precaching/PrecacheFallbackPlugin.d.ts +0 -49
- package/dist/lib/precaching/PrecacheFallbackPlugin.d.ts.map +0 -1
- package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts +0 -18
- package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts.map +0 -1
- package/dist/lib/rangeRequests/createPartialResponse.d.ts +0 -18
- package/dist/lib/rangeRequests/createPartialResponse.d.ts.map +0 -1
- package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts +0 -14
- package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +0 -1
- package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts +0 -12
- package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts.map +0 -1
- package/dist/lib/strategies/CacheFirst.d.ts +0 -23
- package/dist/lib/strategies/CacheFirst.d.ts.map +0 -1
- package/dist/lib/strategies/CacheOnly.d.ts +0 -20
- package/dist/lib/strategies/CacheOnly.d.ts.map +0 -1
- package/dist/lib/strategies/NetworkFirst.d.ts +0 -61
- package/dist/lib/strategies/NetworkFirst.d.ts.map +0 -1
- package/dist/lib/strategies/NetworkOnly.d.ts +0 -32
- package/dist/lib/strategies/NetworkOnly.d.ts.map +0 -1
- package/dist/lib/strategies/PrecacheStrategy.d.ts +0 -69
- package/dist/lib/strategies/PrecacheStrategy.d.ts.map +0 -1
- package/dist/lib/strategies/StaleWhileRevalidate.d.ts +0 -35
- package/dist/lib/strategies/StaleWhileRevalidate.d.ts.map +0 -1
- package/dist/lib/strategies/Strategy.d.ts +0 -81
- package/dist/lib/strategies/Strategy.d.ts.map +0 -1
- package/dist/lib/strategies/StrategyHandler.d.ts +0 -190
- package/dist/lib/strategies/StrategyHandler.d.ts.map +0 -1
- package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +0 -3
- package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +0 -1
- package/dist/lib/strategies/utils/messages.d.ts +0 -5
- package/dist/lib/strategies/utils/messages.d.ts.map +0 -1
- package/dist/models/messages/messageGenerator.d.ts +0 -4
- package/dist/models/messages/messageGenerator.d.ts.map +0 -1
- package/dist/models/messages/messages.d.ts +0 -44
- package/dist/models/messages/messages.d.ts.map +0 -1
- package/dist/models/pluginEvents.d.ts +0 -10
- package/dist/models/pluginEvents.d.ts.map +0 -1
- package/dist/models/quotaErrorCallbacks.d.ts +0 -3
- package/dist/models/quotaErrorCallbacks.d.ts.map +0 -1
- package/dist/navigationPreload.d.ts +0 -24
- package/dist/navigationPreload.d.ts.map +0 -1
- package/dist/registerQuotaErrorCallback.d.ts +0 -8
- package/dist/registerQuotaErrorCallback.d.ts.map +0 -1
- package/dist/setCacheNameDetails.d.ts +0 -9
- package/dist/setCacheNameDetails.d.ts.map +0 -1
- package/dist/types.d.ts +0 -445
- package/dist/types.d.ts.map +0 -1
- package/dist/utils/Deferred.d.ts +0 -19
- package/dist/utils/Deferred.d.ts.map +0 -1
- package/dist/utils/PrecacheCacheKeyPlugin.d.ts +0 -16
- package/dist/utils/PrecacheCacheKeyPlugin.d.ts.map +0 -1
- package/dist/utils/PrecacheInstallReportPlugin.d.ts +0 -14
- package/dist/utils/PrecacheInstallReportPlugin.d.ts.map +0 -1
- package/dist/utils/SerwistError.d.ts +0 -24
- package/dist/utils/SerwistError.d.ts.map +0 -1
- package/dist/utils/assert.d.ts +0 -11
- package/dist/utils/assert.d.ts.map +0 -1
- package/dist/utils/cacheMatchIgnoreParams.d.ts +0 -15
- package/dist/utils/cacheMatchIgnoreParams.d.ts.map +0 -1
- package/dist/utils/cacheNames.d.ts +0 -40
- package/dist/utils/cacheNames.d.ts.map +0 -1
- package/dist/utils/canConstructReadableStream.d.ts +0 -12
- package/dist/utils/canConstructReadableStream.d.ts.map +0 -1
- package/dist/utils/canConstructResponseFromBodyStream.d.ts +0 -11
- package/dist/utils/canConstructResponseFromBodyStream.d.ts.map +0 -1
- package/dist/utils/cleanupOutdatedCaches.d.ts +0 -6
- package/dist/utils/cleanupOutdatedCaches.d.ts.map +0 -1
- package/dist/utils/clientsClaim.d.ts +0 -6
- package/dist/utils/clientsClaim.d.ts.map +0 -1
- package/dist/utils/createCacheKey.d.ts +0 -16
- package/dist/utils/createCacheKey.d.ts.map +0 -1
- package/dist/utils/deleteOutdatedCaches.d.ts +0 -18
- package/dist/utils/deleteOutdatedCaches.d.ts.map +0 -1
- package/dist/utils/dontWaitFor.d.ts +0 -7
- package/dist/utils/dontWaitFor.d.ts.map +0 -1
- package/dist/utils/executeQuotaErrorCallbacks.d.ts +0 -8
- package/dist/utils/executeQuotaErrorCallbacks.d.ts.map +0 -1
- package/dist/utils/generateURLVariations.d.ts +0 -12
- package/dist/utils/generateURLVariations.d.ts.map +0 -1
- package/dist/utils/getFriendlyURL.d.ts +0 -3
- package/dist/utils/getFriendlyURL.d.ts.map +0 -1
- package/dist/utils/logger.d.ts +0 -24
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/normalizeHandler.d.ts +0 -10
- package/dist/utils/normalizeHandler.d.ts.map +0 -1
- package/dist/utils/parsePrecacheOptions.d.ts +0 -26
- package/dist/utils/parsePrecacheOptions.d.ts.map +0 -1
- package/dist/utils/parseRoute.d.ts +0 -16
- package/dist/utils/parseRoute.d.ts.map +0 -1
- package/dist/utils/pluginUtils.d.ts +0 -5
- package/dist/utils/pluginUtils.d.ts.map +0 -1
- package/dist/utils/printCleanupDetails.d.ts +0 -6
- package/dist/utils/printCleanupDetails.d.ts.map +0 -1
- package/dist/utils/printInstallDetails.d.ts +0 -7
- package/dist/utils/printInstallDetails.d.ts.map +0 -1
- package/dist/utils/removeIgnoredSearchParams.d.ts +0 -12
- package/dist/utils/removeIgnoredSearchParams.d.ts.map +0 -1
- package/dist/utils/resultingClientExists.d.ts +0 -12
- package/dist/utils/resultingClientExists.d.ts.map +0 -1
- package/dist/utils/timeout.d.ts +0 -10
- package/dist/utils/timeout.d.ts.map +0 -1
- package/dist/utils/waitUntil.d.ts +0 -11
- package/dist/utils/waitUntil.d.ts.map +0 -1
- package/dist/utils/welcome.d.ts +0 -2
- package/dist/utils/welcome.d.ts.map +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { B as RouteHandler, U as RouteHandlerObject, W as RouteMatchCallback, tt as HTTPMethod } from "./types-CKER0KBv.js";
|
|
2
|
+
|
|
3
|
+
//#region src/Route.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* A `Route` consists of a pair of callback functions, `match` and `handler`.
|
|
6
|
+
* The `match` callback determines if a route should be used to handle a
|
|
7
|
+
* request by returning a truthy value if it can. The `handler` callback
|
|
8
|
+
* is called when the route matches and should return a promise that resolves
|
|
9
|
+
* to a response.
|
|
10
|
+
*/
|
|
11
|
+
declare class Route {
|
|
12
|
+
handler: RouteHandlerObject;
|
|
13
|
+
match: RouteMatchCallback;
|
|
14
|
+
method: HTTPMethod;
|
|
15
|
+
catchHandler?: RouteHandlerObject;
|
|
16
|
+
/**
|
|
17
|
+
* Constructor for Route class.
|
|
18
|
+
*
|
|
19
|
+
* @param match A callback function that determines whether the
|
|
20
|
+
* route matches a given `fetch` event by returning a truthy value.
|
|
21
|
+
* @param handler A callback function that returns a `Promise` resolving
|
|
22
|
+
* to a `Response`.
|
|
23
|
+
* @param method The HTTP method to match the route against. Defaults
|
|
24
|
+
* to `GET`.
|
|
25
|
+
*/
|
|
26
|
+
constructor(match: RouteMatchCallback, handler: RouteHandler, method?: HTTPMethod);
|
|
27
|
+
/**
|
|
28
|
+
*
|
|
29
|
+
* @param handler A callback function that returns a Promise resolving
|
|
30
|
+
* to a Response.
|
|
31
|
+
*/
|
|
32
|
+
setCatchHandler(handler: RouteHandler): void;
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
export { Route as t };
|
|
36
|
+
//# sourceMappingURL=Route-wAAof_Tq.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Route-wAAof_Tq.d.ts","names":[],"sources":["../../src/Route.ts"],"mappings":";;;;AAqBA;;;;;;cAAa,KAAA;EACX,OAAA,EAAS,kBAAA;EACT,KAAA,EAAO,kBAAA;EACP,MAAA,EAAQ,UAAA;EACR,YAAA,GAAe,kBAAA;EAsCsB;;;;;;;;;;cA1BzB,KAAA,EAAO,kBAAA,EAAoB,OAAA,EAAS,YAAA,EAAc,MAAA,GAAQ,UAAA;EAAnD;;;;;EA0BnB,eAAA,CAAgB,OAAA,EAAS,YAAA;AAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
//#region src/utils/cacheNames.d.ts
|
|
2
|
+
interface PartialCacheNameDetails {
|
|
3
|
+
/**
|
|
4
|
+
* The string to add to the beginning of the precache and runtime cache names.
|
|
5
|
+
*/
|
|
6
|
+
prefix?: string;
|
|
7
|
+
/**
|
|
8
|
+
* The string to add to the end of the precache and runtime cache names.
|
|
9
|
+
*/
|
|
10
|
+
suffix?: string;
|
|
11
|
+
/**
|
|
12
|
+
* The cache name to use for precache caching.
|
|
13
|
+
*/
|
|
14
|
+
precache?: string;
|
|
15
|
+
/**
|
|
16
|
+
* The cache name to use for runtime caching.
|
|
17
|
+
*/
|
|
18
|
+
runtime?: string;
|
|
19
|
+
/**
|
|
20
|
+
* The cache name to use for {@linkcode initializeGoogleAnalytics}.
|
|
21
|
+
*/
|
|
22
|
+
googleAnalytics?: string;
|
|
23
|
+
[propName: string]: string | undefined;
|
|
24
|
+
}
|
|
25
|
+
declare const cacheNames: {
|
|
26
|
+
updateDetails: (details: PartialCacheNameDetails) => void;
|
|
27
|
+
getGoogleAnalyticsName: (userCacheName?: string) => string;
|
|
28
|
+
getPrecacheName: (userCacheName?: string) => string;
|
|
29
|
+
getPrefix: () => string;
|
|
30
|
+
getRuntimeName: (userCacheName?: string) => string;
|
|
31
|
+
getSuffix: () => string;
|
|
32
|
+
};
|
|
33
|
+
//#endregion
|
|
34
|
+
export { cacheNames as n, PartialCacheNameDetails as t };
|
|
35
|
+
//# sourceMappingURL=cacheNames-DZwJpopB.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cacheNames-DZwJpopB.d.ts","names":[],"sources":["../../src/utils/cacheNames.ts"],"mappings":";UAiBiB,uBAAA;EAgBf;;;EAZA,MAAA;EAiBiB;AAuBnB;;EApCE,MAAA;EAqCgD;;;EAjChD,QAAA;;;;EAIA,OAAA;;;;EAIA,eAAA;EAAA,CACC,QAAA;AAAA;AAAA,cAuBU,UAAA;2BACc,uBAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { c as timeout } from "./waitUntil-BHDx3Rgo.js";
|
|
2
|
+
//#region src/utils/resultingClientExists.ts
|
|
3
|
+
const MAX_RETRY_TIME = 2e3;
|
|
4
|
+
/**
|
|
5
|
+
* Returns a promise that resolves to a window client matching the passed
|
|
6
|
+
* `resultingClientId`. For browsers that don't support `resultingClientId`
|
|
7
|
+
* or if waiting for the resulting client to apper takes too long, resolve to
|
|
8
|
+
* `undefined`.
|
|
9
|
+
*
|
|
10
|
+
* @param resultingClientId
|
|
11
|
+
* @returns
|
|
12
|
+
* @private
|
|
13
|
+
*/
|
|
14
|
+
async function resultingClientExists(resultingClientId) {
|
|
15
|
+
if (!resultingClientId) return;
|
|
16
|
+
let existingWindows = await self.clients.matchAll({ type: "window" });
|
|
17
|
+
const existingWindowIds = new Set(existingWindows.map((w) => w.id));
|
|
18
|
+
let resultingWindow;
|
|
19
|
+
const startTime = performance.now();
|
|
20
|
+
while (performance.now() - startTime < MAX_RETRY_TIME) {
|
|
21
|
+
existingWindows = await self.clients.matchAll({ type: "window" });
|
|
22
|
+
resultingWindow = existingWindows.find((w) => {
|
|
23
|
+
if (resultingClientId) return w.id === resultingClientId;
|
|
24
|
+
return !existingWindowIds.has(w.id);
|
|
25
|
+
});
|
|
26
|
+
if (resultingWindow) break;
|
|
27
|
+
await timeout(100);
|
|
28
|
+
}
|
|
29
|
+
return resultingWindow;
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
//#region src/utils/canConstructReadableStream.ts
|
|
33
|
+
let supportStatus;
|
|
34
|
+
/**
|
|
35
|
+
* A utility function that determines whether the current browser supports
|
|
36
|
+
* constructing a [`ReadableStream`](https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream/ReadableStream)
|
|
37
|
+
* object.
|
|
38
|
+
*
|
|
39
|
+
* @returns `true`, if the current browser can successfully construct a `ReadableStream`, `false` otherwise.
|
|
40
|
+
*
|
|
41
|
+
* @private
|
|
42
|
+
*/
|
|
43
|
+
function canConstructReadableStream() {
|
|
44
|
+
if (supportStatus === void 0) try {
|
|
45
|
+
new ReadableStream({ start() {} });
|
|
46
|
+
supportStatus = true;
|
|
47
|
+
} catch {
|
|
48
|
+
supportStatus = false;
|
|
49
|
+
}
|
|
50
|
+
return supportStatus;
|
|
51
|
+
}
|
|
52
|
+
//#endregion
|
|
53
|
+
//#region src/utils/dontWaitFor.ts
|
|
54
|
+
/**
|
|
55
|
+
* A helper function that prevents a promise from being flagged as unused.
|
|
56
|
+
*
|
|
57
|
+
* @private
|
|
58
|
+
*/
|
|
59
|
+
function dontWaitFor(promise) {
|
|
60
|
+
promise.then(() => {});
|
|
61
|
+
}
|
|
62
|
+
//#endregion
|
|
63
|
+
export { canConstructReadableStream as n, resultingClientExists as r, dontWaitFor as t };
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=index.internal-Dxj9Ni9X.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.internal-Dxj9Ni9X.js","names":[],"sources":["../../src/utils/resultingClientExists.ts","../../src/utils/canConstructReadableStream.ts","../../src/utils/dontWaitFor.ts"],"sourcesContent":["/*\n Copyright 2019 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\n\nimport { timeout } from \"./timeout.js\";\n\n// Give TypeScript the correct global.\ndeclare let self: ServiceWorkerGlobalScope;\n\nconst MAX_RETRY_TIME = 2000;\n\n/**\n * Returns a promise that resolves to a window client matching the passed\n * `resultingClientId`. For browsers that don't support `resultingClientId`\n * or if waiting for the resulting client to apper takes too long, resolve to\n * `undefined`.\n *\n * @param resultingClientId\n * @returns\n * @private\n */\nexport async function resultingClientExists(resultingClientId?: string): Promise<Client | undefined> {\n if (!resultingClientId) {\n return;\n }\n\n let existingWindows = await self.clients.matchAll({ type: \"window\" });\n const existingWindowIds = new Set(existingWindows.map((w) => w.id));\n\n let resultingWindow: Client | undefined;\n const startTime = performance.now();\n\n // Only wait up to `MAX_RETRY_TIME` to find a matching client.\n while (performance.now() - startTime < MAX_RETRY_TIME) {\n existingWindows = await self.clients.matchAll({ type: \"window\" });\n\n resultingWindow = existingWindows.find((w) => {\n if (resultingClientId) {\n // If we have a `resultingClientId`, we can match on that.\n return w.id === resultingClientId;\n }\n // Otherwise match on finding a window not in `existingWindowIds`.\n return !existingWindowIds.has(w.id);\n });\n\n if (resultingWindow) {\n break;\n }\n\n // Sleep for 100ms and retry.\n await timeout(100);\n }\n\n return resultingWindow;\n}\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\n\nlet supportStatus: boolean | undefined;\n\n/**\n * A utility function that determines whether the current browser supports\n * constructing a [`ReadableStream`](https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream/ReadableStream)\n * object.\n *\n * @returns `true`, if the current browser can successfully construct a `ReadableStream`, `false` otherwise.\n *\n * @private\n */\nfunction canConstructReadableStream(): boolean {\n if (supportStatus === undefined) {\n // See https://github.com/GoogleChrome/workbox/issues/1473\n try {\n new ReadableStream({ start() {} });\n supportStatus = true;\n } catch {\n supportStatus = false;\n }\n }\n\n return supportStatus;\n}\n\nexport { canConstructReadableStream };\n","/*\n Copyright 2019 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\n\n/**\n * A helper function that prevents a promise from being flagged as unused.\n *\n * @private\n */\nexport function dontWaitFor(promise: Promise<any>): void {\n // Effective no-op.\n void promise.then(() => {});\n}\n"],"mappings":";;AAYA,MAAM,iBAAiB;;;;;;;;;;;AAYvB,eAAsB,sBAAsB,mBAAyD;AACnG,KAAI,CAAC,kBACH;CAGF,IAAI,kBAAkB,MAAM,KAAK,QAAQ,SAAS,EAAE,MAAM,UAAU,CAAC;CACrE,MAAM,oBAAoB,IAAI,IAAI,gBAAgB,KAAK,MAAM,EAAE,GAAG,CAAC;CAEnE,IAAI;CACJ,MAAM,YAAY,YAAY,KAAK;AAGnC,QAAO,YAAY,KAAK,GAAG,YAAY,gBAAgB;AACrD,oBAAkB,MAAM,KAAK,QAAQ,SAAS,EAAE,MAAM,UAAU,CAAC;AAEjE,oBAAkB,gBAAgB,MAAM,MAAM;AAC5C,OAAI,kBAEF,QAAO,EAAE,OAAO;AAGlB,UAAO,CAAC,kBAAkB,IAAI,EAAE,GAAG;IACnC;AAEF,MAAI,gBACF;AAIF,QAAM,QAAQ,IAAI;;AAGpB,QAAO;;;;AChDT,IAAI;;;;;;;;;;AAWJ,SAAS,6BAAsC;AAC7C,KAAI,kBAAkB,KAAA,EAEpB,KAAI;AACF,MAAI,eAAe,EAAE,QAAQ,IAAI,CAAC;AAClC,kBAAgB;SACV;AACN,kBAAgB;;AAIpB,QAAO;;;;;;;;;AClBT,SAAgB,YAAY,SAA6B;AAElD,SAAQ,WAAW,GAAG"}
|