serwist 9.1.1 → 10.0.0-preview.10
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/waitUntil.js +141 -134
- package/dist/index.d.ts +22 -49
- package/dist/index.d.ts.map +1 -1
- package/dist/index.internal.d.ts +16 -16
- package/dist/index.internal.d.ts.map +1 -1
- package/dist/index.internal.js +25 -3
- package/dist/index.js +2231 -452
- package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncPlugin.d.ts +2 -2
- package/dist/lib/background-sync/BackgroundSyncPlugin.d.ts.map +1 -0
- package/dist/lib/background-sync/BackgroundSyncQueue.d.ts.map +1 -0
- package/dist/lib/background-sync/BackgroundSyncQueueDb.d.ts.map +1 -0
- package/dist/lib/background-sync/BackgroundSyncQueueStore.d.ts.map +1 -0
- package/dist/lib/{backgroundSync → background-sync}/StorableRequest.d.ts +1 -1
- package/dist/lib/background-sync/StorableRequest.d.ts.map +1 -0
- package/dist/lib/background-sync/index.d.ts +6 -0
- package/dist/lib/background-sync/index.d.ts.map +1 -0
- package/dist/lib/{broadcastUpdate → broadcast-update}/BroadcastCacheUpdate.d.ts +1 -1
- package/dist/lib/broadcast-update/BroadcastCacheUpdate.d.ts.map +1 -0
- package/dist/lib/{broadcastUpdate → broadcast-update}/BroadcastUpdatePlugin.d.ts +2 -2
- package/dist/lib/broadcast-update/BroadcastUpdatePlugin.d.ts.map +1 -0
- package/dist/lib/broadcast-update/constants.d.ts.map +1 -0
- package/dist/lib/broadcast-update/index.d.ts +6 -0
- package/dist/lib/broadcast-update/index.d.ts.map +1 -0
- package/dist/lib/broadcast-update/responsesAreSame.d.ts.map +1 -0
- package/dist/lib/{broadcastUpdate → broadcast-update}/types.d.ts +1 -1
- package/dist/lib/broadcast-update/types.d.ts.map +1 -0
- package/dist/{cacheNames.d.ts → lib/cache-name.d.ts} +1 -1
- package/dist/lib/cache-name.d.ts.map +1 -0
- package/dist/lib/cacheable-response/CacheableResponse.d.ts.map +1 -0
- package/dist/lib/{cacheableResponse → cacheable-response}/CacheableResponsePlugin.d.ts +3 -3
- package/dist/lib/cacheable-response/CacheableResponsePlugin.d.ts.map +1 -0
- package/dist/lib/cacheable-response/index.d.ts +4 -0
- package/dist/lib/cacheable-response/index.d.ts.map +1 -0
- package/dist/{constants.d.ts → lib/constants.d.ts} +1 -1
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/core.d.ts +62 -0
- package/dist/lib/core.d.ts.map +1 -0
- package/dist/lib/expiration/ExpirationPlugin.d.ts +2 -2
- package/dist/lib/expiration/ExpirationPlugin.d.ts.map +1 -1
- package/dist/lib/expiration/index.d.ts +4 -0
- package/dist/lib/expiration/index.d.ts.map +1 -0
- package/dist/lib/extension.d.ts +30 -0
- package/dist/lib/extension.d.ts.map +1 -0
- package/dist/lib/extensions/google-analytics/constants.d.ts.map +1 -0
- package/dist/lib/extensions/google-analytics/extension.d.ts +79 -0
- package/dist/lib/extensions/google-analytics/extension.d.ts.map +1 -0
- package/dist/lib/extensions/google-analytics/index.d.ts +2 -0
- package/dist/lib/extensions/google-analytics/index.d.ts.map +1 -0
- package/dist/lib/extensions/google-analytics/initialize.d.ts +12 -0
- package/dist/lib/extensions/google-analytics/initialize.d.ts.map +1 -0
- package/dist/lib/extensions/index.d.ts +14 -0
- package/dist/lib/extensions/index.d.ts.map +1 -0
- package/dist/{legacy/PrecacheController.d.ts → lib/extensions/precache/extension.d.ts} +56 -66
- package/dist/lib/extensions/precache/extension.d.ts.map +1 -0
- package/dist/lib/extensions/precache/options.d.ts +26 -0
- package/dist/lib/extensions/precache/options.d.ts.map +1 -0
- package/dist/lib/extensions/precache/plugin-cache-key.d.ts +16 -0
- package/dist/lib/extensions/precache/plugin-cache-key.d.ts.map +1 -0
- package/dist/lib/{precaching/PrecacheFallbackPlugin.d.ts → extensions/precache/plugin-fallback.d.ts} +4 -4
- package/dist/lib/extensions/precache/plugin-fallback.d.ts.map +1 -0
- package/dist/lib/extensions/precache/plugin-install-report.d.ts +14 -0
- package/dist/lib/extensions/precache/plugin-install-report.d.ts.map +1 -0
- package/dist/lib/extensions/precache/route.d.ts +42 -0
- package/dist/lib/extensions/precache/route.d.ts.map +1 -0
- package/dist/lib/{strategies/PrecacheStrategy.d.ts → extensions/precache/strategy.d.ts} +7 -7
- package/dist/lib/extensions/precache/strategy.d.ts.map +1 -0
- package/dist/lib/extensions/runtime-cache.d.ts +71 -0
- package/dist/lib/extensions/runtime-cache.d.ts.map +1 -0
- package/dist/lib/functions/handlers.d.ts +60 -0
- package/dist/lib/functions/handlers.d.ts.map +1 -0
- package/dist/lib/functions/router.d.ts +60 -0
- package/dist/lib/functions/router.d.ts.map +1 -0
- package/dist/{navigationPreload.d.ts → lib/navigation-preload.d.ts} +1 -1
- package/dist/lib/navigation-preload.d.ts.map +1 -0
- package/dist/lib/{rangeRequests → range-requests}/RangeRequestsPlugin.d.ts +3 -3
- package/dist/lib/range-requests/RangeRequestsPlugin.d.ts.map +1 -0
- package/dist/lib/range-requests/createPartialResponse.d.ts.map +1 -0
- package/dist/lib/range-requests/index.d.ts +3 -0
- package/dist/lib/range-requests/index.d.ts.map +1 -0
- package/dist/lib/range-requests/utils/calculateEffectiveBoundaries.d.ts.map +1 -0
- package/dist/lib/range-requests/utils/parseRangeHeader.d.ts.map +1 -0
- package/dist/lib/route.d.ts +106 -0
- package/dist/lib/route.d.ts.map +1 -0
- package/dist/{Serwist.d.ts → lib/serwist.d.ts} +71 -62
- package/dist/lib/serwist.d.ts.map +1 -0
- package/dist/lib/strategies/NetworkFirst.d.ts.map +1 -1
- package/dist/lib/strategies/StaleWhileRevalidate.d.ts.map +1 -1
- package/dist/lib/strategies/Strategy.d.ts +3 -3
- package/dist/lib/strategies/Strategy.d.ts.map +1 -1
- package/dist/lib/strategies/StrategyHandler.d.ts +4 -4
- package/dist/lib/strategies/StrategyHandler.d.ts.map +1 -1
- package/dist/lib/strategies/index.d.ts +11 -0
- package/dist/lib/strategies/index.d.ts.map +1 -0
- package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +2 -2
- package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +1 -1
- package/dist/{types.d.ts → lib/types.d.ts} +7 -65
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/{copyResponse.d.ts → lib/utils.d.ts} +22 -1
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/models/messages/messageGenerator.d.ts +1 -1
- package/dist/models/messages/messageGenerator.d.ts.map +1 -1
- package/dist/utils/SerwistError.d.ts +2 -2
- package/dist/utils/SerwistError.d.ts.map +1 -1
- package/dist/utils/assert.d.ts +1 -1
- package/dist/utils/assert.d.ts.map +1 -1
- package/dist/utils/createCacheKey.d.ts +1 -1
- package/dist/utils/createCacheKey.d.ts.map +1 -1
- package/dist/utils/generateURLVariations.d.ts +1 -1
- package/dist/utils/generateURLVariations.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/normalizeHandler.d.ts +1 -1
- package/dist/utils/normalizeHandler.d.ts.map +1 -1
- package/dist/utils/parseRoute.d.ts +3 -3
- package/dist/utils/parseRoute.d.ts.map +1 -1
- package/dist/utils/pluginUtils.d.ts +2 -2
- package/dist/utils/pluginUtils.d.ts.map +1 -1
- package/package.json +28 -11
- package/src/index.internal.ts +16 -16
- package/src/index.ts +100 -107
- package/src/lib/{backgroundSync → background-sync}/BackgroundSyncPlugin.ts +2 -2
- package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueue.ts +4 -4
- package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueueStore.ts +1 -1
- package/src/lib/{backgroundSync → background-sync}/StorableRequest.ts +2 -2
- package/src/lib/background-sync/index.ts +5 -0
- package/src/lib/{broadcastUpdate → broadcast-update}/BroadcastCacheUpdate.ts +5 -5
- package/src/lib/{broadcastUpdate → broadcast-update}/BroadcastUpdatePlugin.ts +2 -2
- package/src/lib/broadcast-update/index.ts +5 -0
- package/src/lib/{broadcastUpdate → broadcast-update}/responsesAreSame.ts +2 -2
- package/src/lib/{broadcastUpdate → broadcast-update}/types.ts +1 -1
- package/src/{cacheNames.ts → lib/cache-name.ts} +1 -1
- package/src/lib/{cacheableResponse → cacheable-response}/CacheableResponse.ts +4 -4
- package/src/lib/{cacheableResponse → cacheable-response}/CacheableResponsePlugin.ts +3 -3
- package/src/lib/cacheable-response/index.ts +3 -0
- package/src/lib/core.ts +128 -0
- package/src/lib/expiration/CacheExpiration.ts +3 -3
- package/src/lib/expiration/ExpirationPlugin.ts +9 -10
- package/src/lib/expiration/index.ts +3 -0
- package/src/lib/extension.ts +37 -0
- package/src/lib/{googleAnalytics/initializeGoogleAnalytics.ts → extensions/google-analytics/extension.ts} +42 -48
- package/src/lib/extensions/google-analytics/index.ts +0 -0
- package/src/lib/extensions/google-analytics/initialize.ts +48 -0
- package/src/lib/extensions/index.ts +13 -0
- package/src/lib/extensions/precache/extension.ts +306 -0
- package/src/lib/extensions/precache/options.ts +49 -0
- package/src/{legacy/utils/PrecacheCacheKeyPlugin.ts → lib/extensions/precache/plugin-cache-key.ts} +7 -8
- package/src/lib/{precaching/PrecacheFallbackPlugin.ts → extensions/precache/plugin-fallback.ts} +19 -8
- package/src/{utils/PrecacheInstallReportPlugin.ts → lib/extensions/precache/plugin-install-report.ts} +5 -5
- package/src/lib/extensions/precache/route.ts +72 -0
- package/src/lib/{strategies/PrecacheStrategy.ts → extensions/precache/strategy.ts} +12 -12
- package/src/lib/extensions/runtime-cache.ts +126 -0
- package/src/lib/functions/handlers.ts +149 -0
- package/src/lib/functions/router.ts +314 -0
- package/src/{navigationPreload.ts → lib/navigation-preload.ts} +1 -1
- package/src/lib/{rangeRequests → range-requests}/RangeRequestsPlugin.ts +3 -3
- package/src/lib/{rangeRequests → range-requests}/createPartialResponse.ts +3 -3
- package/src/lib/range-requests/index.ts +2 -0
- package/src/lib/{rangeRequests → range-requests}/utils/calculateEffectiveBoundaries.ts +2 -2
- package/src/lib/{rangeRequests → range-requests}/utils/parseRangeHeader.ts +2 -2
- package/src/lib/route.ts +234 -0
- package/src/lib/serwist.ts +443 -0
- package/src/lib/strategies/CacheFirst.ts +3 -3
- package/src/lib/strategies/CacheOnly.ts +3 -3
- package/src/lib/strategies/NetworkFirst.ts +4 -4
- package/src/lib/strategies/NetworkOnly.ts +4 -4
- package/src/lib/strategies/StaleWhileRevalidate.ts +4 -4
- package/src/lib/strategies/Strategy.ts +7 -7
- package/src/lib/strategies/StrategyHandler.ts +18 -18
- package/src/lib/strategies/index.ts +10 -0
- package/src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts +2 -2
- package/src/lib/strategies/utils/messages.ts +2 -2
- package/src/{types.ts → lib/types.ts} +17 -70
- package/src/lib/utils.ts +137 -0
- package/src/models/messages/messageGenerator.ts +1 -1
- package/src/models/messages/messages.ts +3 -3
- package/src/utils/SerwistError.ts +3 -3
- package/src/utils/assert.ts +1 -1
- package/src/utils/createCacheKey.ts +1 -2
- package/src/utils/executeQuotaErrorCallbacks.ts +1 -1
- package/src/utils/generateURLVariations.ts +1 -1
- package/src/utils/logger.ts +1 -1
- package/src/utils/normalizeHandler.ts +1 -1
- package/src/utils/parseRoute.ts +4 -5
- package/src/utils/pluginUtils.ts +2 -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.map +0 -1
- package/dist/cacheNames.d.ts.map +0 -1
- package/dist/chunks/printInstallDetails.js +0 -1601
- package/dist/chunks/resultingClientExists.js +0 -32
- package/dist/constants.d.ts.map +0 -1
- 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.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.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.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.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts.map +0 -1
- package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts.map +0 -1
- package/dist/lib/backgroundSync/StorableRequest.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/constants.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/responsesAreSame.d.ts.map +0 -1
- package/dist/lib/broadcastUpdate/types.d.ts.map +0 -1
- package/dist/lib/cacheableResponse/CacheableResponse.d.ts.map +0 -1
- package/dist/lib/cacheableResponse/CacheableResponsePlugin.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.map +0 -1
- package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts.map +0 -1
- package/dist/lib/rangeRequests/createPartialResponse.d.ts.map +0 -1
- package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +0 -1
- package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts.map +0 -1
- package/dist/lib/strategies/PrecacheStrategy.d.ts.map +0 -1
- 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.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/parsePrecacheOptions.d.ts +0 -26
- package/dist/utils/parsePrecacheOptions.d.ts.map +0 -1
- package/src/NavigationRoute.ts +0 -118
- package/src/PrecacheRoute.ts +0 -45
- package/src/RegExpRoute.ts +0 -74
- package/src/Route.ts +0 -67
- package/src/Serwist.ts +0 -867
- package/src/copyResponse.ts +0 -58
- package/src/disableDevLogs.ts +0 -10
- package/src/index.legacy.ts +0 -62
- package/src/legacy/PrecacheController.ts +0 -337
- package/src/legacy/PrecacheFallbackPlugin.ts +0 -92
- package/src/legacy/PrecacheRoute.ts +0 -48
- package/src/legacy/Router.ts +0 -484
- package/src/legacy/addPlugins.ts +0 -21
- package/src/legacy/addRoute.ts +0 -27
- package/src/legacy/createHandlerBoundToURL.ts +0 -30
- package/src/legacy/fallbacks.ts +0 -94
- package/src/legacy/getCacheKeyForURL.ts +0 -32
- package/src/legacy/handlePrecaching.ts +0 -86
- package/src/legacy/initializeGoogleAnalytics.ts +0 -218
- package/src/legacy/installSerwist.ts +0 -170
- package/src/legacy/matchPrecache.ts +0 -27
- package/src/legacy/precache.ts +0 -33
- package/src/legacy/precacheAndRoute.ts +0 -27
- package/src/legacy/registerRoute.ts +0 -28
- package/src/legacy/registerRuntimeCaching.ts +0 -17
- package/src/legacy/setCatchHandler.ts +0 -21
- package/src/legacy/setDefaultHandler.ts +0 -24
- package/src/legacy/singletonPrecacheController.ts +0 -53
- package/src/legacy/singletonRouter.ts +0 -70
- package/src/legacy/unregisterRoute.ts +0 -13
- package/src/legacy/utils/getCacheKeyForURL.ts +0 -36
- package/src/lib/googleAnalytics/constants.ts +0 -22
- package/src/registerQuotaErrorCallback.ts +0 -34
- package/src/setCacheNameDetails.ts +0 -53
- package/src/utils/PrecacheCacheKeyPlugin.ts +0 -33
- package/src/utils/parsePrecacheOptions.ts +0 -47
- /package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueue.d.ts +0 -0
- /package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueueDb.d.ts +0 -0
- /package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueueStore.d.ts +0 -0
- /package/dist/lib/{broadcastUpdate → broadcast-update}/constants.d.ts +0 -0
- /package/dist/lib/{broadcastUpdate → broadcast-update}/responsesAreSame.d.ts +0 -0
- /package/dist/lib/{cacheableResponse → cacheable-response}/CacheableResponse.d.ts +0 -0
- /package/dist/{legacy → lib/extensions/google-analytics}/constants.d.ts +0 -0
- /package/dist/lib/{rangeRequests → range-requests}/createPartialResponse.d.ts +0 -0
- /package/dist/lib/{rangeRequests → range-requests}/utils/calculateEffectiveBoundaries.d.ts +0 -0
- /package/dist/lib/{rangeRequests → range-requests}/utils/parseRangeHeader.d.ts +0 -0
- /package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueueDb.ts +0 -0
- /package/src/lib/{broadcastUpdate → broadcast-update}/constants.ts +0 -0
- /package/src/{constants.ts → lib/constants.ts} +0 -0
- /package/src/{legacy → lib/extensions/google-analytics}/constants.ts +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import type { HTTPMethod } from "./constants.js";
|
|
2
|
+
import type { RouteHandler, RouteHandlerObject, RouteMatchCallback } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* A `Route` consists of a pair of callback functions, `match` and `handler`.
|
|
5
|
+
* The `match` callback determines if a route should be used to handle a
|
|
6
|
+
* request by returning a truthy value if it can. The `handler` callback
|
|
7
|
+
* is called when the route matches and should return a promise that resolves
|
|
8
|
+
* to a response.
|
|
9
|
+
*/
|
|
10
|
+
export declare class Route {
|
|
11
|
+
handler: RouteHandlerObject;
|
|
12
|
+
match: RouteMatchCallback;
|
|
13
|
+
method: HTTPMethod;
|
|
14
|
+
catchHandler?: RouteHandlerObject;
|
|
15
|
+
/**
|
|
16
|
+
* Constructor for Route class.
|
|
17
|
+
*
|
|
18
|
+
* @param match A callback function that determines whether the
|
|
19
|
+
* route matches a given `fetch` event by returning a truthy value.
|
|
20
|
+
* @param handler A callback function that returns a `Promise` resolving
|
|
21
|
+
* to a `Response`.
|
|
22
|
+
* @param method The HTTP method to match the route against. Defaults
|
|
23
|
+
* to `GET`.
|
|
24
|
+
*/
|
|
25
|
+
constructor(match: RouteMatchCallback, handler: RouteHandler, method?: HTTPMethod);
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* @param handler A callback function that returns a Promise resolving
|
|
29
|
+
* to a Response.
|
|
30
|
+
*/
|
|
31
|
+
setCatchHandler(handler: RouteHandler): void;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A class that makes it easy to create a {@linkcode Route} object with a regular expression.
|
|
35
|
+
*
|
|
36
|
+
* For same-origin requests the `RegExp` only needs to match part of the URL. For
|
|
37
|
+
* requests against third-party servers, you must define a `RegExp` that matches
|
|
38
|
+
* the start of the URL.
|
|
39
|
+
*/
|
|
40
|
+
export declare class RegExpRoute extends Route {
|
|
41
|
+
/**
|
|
42
|
+
* If the regular expression contains
|
|
43
|
+
* [capture groups](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#grouping-back-references),
|
|
44
|
+
* the captured values will be passed to the `params` argument.
|
|
45
|
+
*
|
|
46
|
+
* @param regExp The regular expression to match against URLs.
|
|
47
|
+
* @param handler A callback function that returns a `Promise` resulting in a `Response`.
|
|
48
|
+
* @param method The HTTP method to match the {@linkcode Route} against. Defaults to `GET`.
|
|
49
|
+
* against.
|
|
50
|
+
*/
|
|
51
|
+
constructor(regExp: RegExp, handler: RouteHandler, method?: HTTPMethod);
|
|
52
|
+
}
|
|
53
|
+
export interface NavigationRouteMatchOptions {
|
|
54
|
+
/**
|
|
55
|
+
* If any of these patterns
|
|
56
|
+
* match the URL's pathname and search parameter, the route will handle the
|
|
57
|
+
* request (assuming the denylist doesn't match).
|
|
58
|
+
*
|
|
59
|
+
* @default [/./]
|
|
60
|
+
*/
|
|
61
|
+
allowlist?: RegExp[];
|
|
62
|
+
/**
|
|
63
|
+
* If any of these patterns match, the route will not handle the request (even if a allowlist RegExp matches).
|
|
64
|
+
*/
|
|
65
|
+
denylist?: RegExp[];
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* A class that makes it easy to create a {@linkcode Route} object that matches navigation requests.
|
|
69
|
+
*
|
|
70
|
+
* It will only match incoming requests whose [`mode`](https://fetch.spec.whatwg.org/#concept-request-mode) is set to `"navigate"`.
|
|
71
|
+
*
|
|
72
|
+
* You can optionally only apply this route to a subset of navigation requests
|
|
73
|
+
* by using one or both of the `denylist` and `allowlist` parameters.
|
|
74
|
+
*/
|
|
75
|
+
export declare class NavigationRoute extends Route {
|
|
76
|
+
private readonly _allowlist;
|
|
77
|
+
private readonly _denylist;
|
|
78
|
+
/**
|
|
79
|
+
* If both `denylist` and `allowlist` are provided, `denylist` will
|
|
80
|
+
* take precedence.
|
|
81
|
+
*
|
|
82
|
+
* The regular expressions in `allowlist` and `denylist`
|
|
83
|
+
* are matched against the concatenated
|
|
84
|
+
* [`pathname`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/pathname)
|
|
85
|
+
* and [`search`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/search)
|
|
86
|
+
* portions of the requested URL.
|
|
87
|
+
*
|
|
88
|
+
* *Note*: These RegExps may be evaluated against every destination URL during
|
|
89
|
+
* a navigation. Avoid using
|
|
90
|
+
* [complex RegExps](https://github.com/GoogleChrome/workbox/issues/3077),
|
|
91
|
+
* or else your users may see delays when navigating your site.
|
|
92
|
+
*
|
|
93
|
+
* @param handler A callback function that returns a `Promise` resulting in a `Response`.
|
|
94
|
+
* @param options
|
|
95
|
+
*/
|
|
96
|
+
constructor(handler: RouteHandler, { allowlist, denylist }?: NavigationRouteMatchOptions);
|
|
97
|
+
/**
|
|
98
|
+
* Routes match handler.
|
|
99
|
+
*
|
|
100
|
+
* @param options
|
|
101
|
+
* @returns
|
|
102
|
+
* @private
|
|
103
|
+
*/
|
|
104
|
+
private _match;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/lib/route.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,YAAY,CAAC;AAElH;;;;;;GAMG;AACH,qBAAa,KAAK;IAChB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;OASG;gBACS,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAE,UAA0B;IAqBhG;;;;OAIG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;CAG7C;AAED;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC;;;;;;;;;OASG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,UAAU;CAyCvE;AAED,MAAM,WAAW,2BAA2B;IAC1C;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IAErC;;;;;;;;;;;;;;;;;OAiBG;gBACS,OAAO,EAAE,YAAY,EAAE,EAAE,SAAiB,EAAE,QAAa,EAAE,GAAE,2BAAgC;IAsBzG;;;;;;OAMG;IACH,OAAO,CAAC,MAAM;CA8Bf"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import type {
|
|
7
|
-
import type { RuntimeCaching } from "./types.js";
|
|
8
|
-
import type { CleanupResult, InstallResult, PrecacheEntry } from "./types.js";
|
|
1
|
+
import { type Serwist as SerwistState } from "#lib/core.js";
|
|
2
|
+
import type { GoogleAnalyticsOptions, Precache, PrecacheFallbackEntry, PrecacheOptions } from "#lib/extensions/index.js";
|
|
3
|
+
import type { Strategy } from "#lib/strategies/Strategy.js";
|
|
4
|
+
import type { HTTPMethod } from "./constants.js";
|
|
5
|
+
import type { Extension } from "./extension.js";
|
|
6
|
+
import type { Route } from "./route.js";
|
|
7
|
+
import type { PrecacheEntry, RouteHandler, RouteHandlerCallback, RouteHandlerCallbackOptions, RouteMatchCallback, RouteMatchCallbackOptions, RuntimeCaching } from "./types.js";
|
|
9
8
|
export interface FallbackEntry extends PrecacheFallbackEntry {
|
|
10
9
|
}
|
|
11
10
|
export interface FallbacksOptions {
|
|
@@ -14,6 +13,9 @@ export interface FallbacksOptions {
|
|
|
14
13
|
*/
|
|
15
14
|
entries: FallbackEntry[];
|
|
16
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* @deprecated Legacy `Serwist` class. Please migrate to `createSerwist`.
|
|
18
|
+
*/
|
|
17
19
|
export interface SerwistOptions {
|
|
18
20
|
/**
|
|
19
21
|
* A list of URLs that should be cached.
|
|
@@ -22,7 +24,7 @@ export interface SerwistOptions {
|
|
|
22
24
|
/**
|
|
23
25
|
* Options to customize how Serwist precaches the URLs in the precache list.
|
|
24
26
|
*/
|
|
25
|
-
precacheOptions?: PrecacheOptions
|
|
27
|
+
precacheOptions?: Omit<PrecacheOptions, "entries">;
|
|
26
28
|
/**
|
|
27
29
|
* Forces the waiting service worker to become the active one.
|
|
28
30
|
*
|
|
@@ -58,10 +60,10 @@ export interface SerwistOptions {
|
|
|
58
60
|
*/
|
|
59
61
|
runtimeCaching?: RuntimeCaching[];
|
|
60
62
|
/**
|
|
61
|
-
* Your configuration for {@linkcode
|
|
63
|
+
* Your configuration for {@linkcode GoogleAnalytics}. This plugin is
|
|
62
64
|
* only initialized when this option is not `undefined` or `false`.
|
|
63
65
|
*/
|
|
64
|
-
offlineAnalyticsConfig?:
|
|
66
|
+
offlineAnalyticsConfig?: GoogleAnalyticsOptions | boolean;
|
|
65
67
|
/**
|
|
66
68
|
* Disables Serwist's logging in development mode.
|
|
67
69
|
*
|
|
@@ -76,22 +78,28 @@ export interface SerwistOptions {
|
|
|
76
78
|
* defined in `entries` to have been precached beforehand.
|
|
77
79
|
*/
|
|
78
80
|
fallbacks?: FallbacksOptions;
|
|
81
|
+
/**
|
|
82
|
+
* A list of extensions.
|
|
83
|
+
*/
|
|
84
|
+
extensions?: Extension[];
|
|
79
85
|
}
|
|
80
86
|
/**
|
|
81
87
|
* A class that helps bootstrap the service worker.
|
|
82
88
|
*
|
|
89
|
+
* @deprecated Legacy `Serwist` class. Please migrate to `createSerwist`.
|
|
83
90
|
* @see https://serwist.pages.dev/docs/serwist/core/serwist
|
|
84
91
|
*/
|
|
85
92
|
export declare class Serwist {
|
|
86
|
-
private readonly
|
|
87
|
-
private readonly
|
|
88
|
-
private readonly
|
|
89
|
-
private
|
|
90
|
-
private readonly
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
93
|
+
private readonly _state;
|
|
94
|
+
private readonly _installHandler;
|
|
95
|
+
private readonly _activateHandler;
|
|
96
|
+
private readonly _fetchHandler;
|
|
97
|
+
private readonly _cacheHandler;
|
|
98
|
+
constructor({ precacheEntries, precacheOptions, skipWaiting, importScripts, navigationPreload, cacheId, clientsClaim, runtimeCaching, offlineAnalyticsConfig, disableDevLogs, fallbacks, extensions, }?: SerwistOptions);
|
|
99
|
+
/**
|
|
100
|
+
* The {@linkcode Precache} used to handle precaching.
|
|
101
|
+
*/
|
|
102
|
+
get precache(): Precache;
|
|
95
103
|
/**
|
|
96
104
|
* The strategy used to precache assets and respond to `fetch` events.
|
|
97
105
|
*/
|
|
@@ -101,16 +109,11 @@ export declare class Serwist {
|
|
|
101
109
|
* instances.
|
|
102
110
|
*/
|
|
103
111
|
get routes(): Map<HTTPMethod, Route[]>;
|
|
112
|
+
get state(): SerwistState;
|
|
104
113
|
/**
|
|
105
|
-
* Adds Serwist's event listeners
|
|
114
|
+
* Adds Serwist's event listeners. Before calling it, add your own listeners should you need to.
|
|
106
115
|
*/
|
|
107
116
|
addEventListeners(): void;
|
|
108
|
-
/**
|
|
109
|
-
* Adds items to the precache list, removing duplicates and ensuring the information is valid.
|
|
110
|
-
*
|
|
111
|
-
* @param entries Array of entries to precache.
|
|
112
|
-
*/
|
|
113
|
-
addToPrecacheList(entries: (PrecacheEntry | string)[]): void;
|
|
114
117
|
/**
|
|
115
118
|
* Precaches new and updated assets. Call this method from the service worker's
|
|
116
119
|
* `install` event.
|
|
@@ -121,7 +124,7 @@ export declare class Serwist {
|
|
|
121
124
|
* @param event
|
|
122
125
|
* @returns
|
|
123
126
|
*/
|
|
124
|
-
handleInstall(event: ExtendableEvent): Promise<
|
|
127
|
+
handleInstall(event: ExtendableEvent): Promise<void>;
|
|
125
128
|
/**
|
|
126
129
|
* Deletes assets that are no longer present in the current precache manifest.
|
|
127
130
|
* Call this method from the service worker's `activate` event.
|
|
@@ -132,7 +135,7 @@ export declare class Serwist {
|
|
|
132
135
|
* @param event
|
|
133
136
|
* @returns
|
|
134
137
|
*/
|
|
135
|
-
handleActivate(event: ExtendableEvent): Promise<
|
|
138
|
+
handleActivate(event: ExtendableEvent): Promise<void>;
|
|
136
139
|
/**
|
|
137
140
|
* Gets a `Response` from an appropriate `Route`'s handler. Call this method
|
|
138
141
|
* from the service worker's `fetch` event.
|
|
@@ -191,6 +194,44 @@ export declare class Serwist {
|
|
|
191
194
|
* @param route The {@linkcode Route} object to unregister.
|
|
192
195
|
*/
|
|
193
196
|
unregisterRoute(route: Route): void;
|
|
197
|
+
/**
|
|
198
|
+
* Applies the routing rules to a `FetchEvent` object to get a response from an
|
|
199
|
+
* appropriate route.
|
|
200
|
+
*
|
|
201
|
+
* @param options
|
|
202
|
+
* @returns A promise is returned if a registered route can handle the request.
|
|
203
|
+
* If there is no matching route and there's no default handler, `undefined`
|
|
204
|
+
* is returned.
|
|
205
|
+
*/
|
|
206
|
+
handleRequest({ request, event, }: {
|
|
207
|
+
/**
|
|
208
|
+
* The request to handle.
|
|
209
|
+
*/
|
|
210
|
+
request: Request;
|
|
211
|
+
/**
|
|
212
|
+
* The event that triggered the request.
|
|
213
|
+
*/
|
|
214
|
+
event: ExtendableEvent;
|
|
215
|
+
}): Promise<Response> | undefined;
|
|
216
|
+
/**
|
|
217
|
+
* Checks a request and URL (and optionally an event) against the list of
|
|
218
|
+
* registered routes, and if there's a match, returns the corresponding
|
|
219
|
+
* route along with any params generated by the match.
|
|
220
|
+
*
|
|
221
|
+
* @param options
|
|
222
|
+
* @returns An object with `route` and `params` properties. They are populated
|
|
223
|
+
* if a matching route was found or `undefined` otherwise.
|
|
224
|
+
*/
|
|
225
|
+
findMatchingRoute({ url, sameOrigin, request, event }: RouteMatchCallbackOptions): {
|
|
226
|
+
route?: Route;
|
|
227
|
+
params?: RouteHandlerCallbackOptions["params"];
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Adds items to the precache list, removing duplicates and ensuring the information is valid.
|
|
231
|
+
*
|
|
232
|
+
* @param entries Array of entries to precache.
|
|
233
|
+
*/
|
|
234
|
+
addToPrecacheList(entries: (PrecacheEntry | string)[]): void;
|
|
194
235
|
/**
|
|
195
236
|
* Returns a mapping of a precached URL to the corresponding cache key, taking
|
|
196
237
|
* into account the revision information for the URL.
|
|
@@ -248,37 +289,5 @@ export declare class Serwist {
|
|
|
248
289
|
* @return
|
|
249
290
|
*/
|
|
250
291
|
createHandlerBoundToUrl(url: string): RouteHandlerCallback;
|
|
251
|
-
/**
|
|
252
|
-
* Applies the routing rules to a `FetchEvent` object to get a response from an
|
|
253
|
-
* appropriate route.
|
|
254
|
-
*
|
|
255
|
-
* @param options
|
|
256
|
-
* @returns A promise is returned if a registered route can handle the request.
|
|
257
|
-
* If there is no matching route and there's no default handler, `undefined`
|
|
258
|
-
* is returned.
|
|
259
|
-
*/
|
|
260
|
-
handleRequest({ request, event, }: {
|
|
261
|
-
/**
|
|
262
|
-
* The request to handle.
|
|
263
|
-
*/
|
|
264
|
-
request: Request;
|
|
265
|
-
/**
|
|
266
|
-
* The event that triggered the request.
|
|
267
|
-
*/
|
|
268
|
-
event: ExtendableEvent;
|
|
269
|
-
}): Promise<Response> | undefined;
|
|
270
|
-
/**
|
|
271
|
-
* Checks a request and URL (and optionally an event) against the list of
|
|
272
|
-
* registered routes, and if there's a match, returns the corresponding
|
|
273
|
-
* route along with any params generated by the match.
|
|
274
|
-
*
|
|
275
|
-
* @param options
|
|
276
|
-
* @returns An object with `route` and `params` properties. They are populated
|
|
277
|
-
* if a matching route was found or `undefined` otherwise.
|
|
278
|
-
*/
|
|
279
|
-
findMatchingRoute({ url, sameOrigin, request, event }: RouteMatchCallbackOptions): {
|
|
280
|
-
route?: Route;
|
|
281
|
-
params?: RouteHandlerCallbackOptions["params"];
|
|
282
|
-
};
|
|
283
292
|
}
|
|
284
|
-
//# sourceMappingURL=
|
|
293
|
+
//# sourceMappingURL=serwist.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serwist.d.ts","sourceRoot":"","sources":["../../src/lib/serwist.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkFirst.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/NetworkFirst.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NetworkFirst.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/NetworkFirst.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,YAAa,SAAQ,QAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD;;;;;OAKG;gBACS,OAAO,GAAE,mBAAwB;IAsB7C;;;;;OAKG;IACG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAgE5E;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;;;;;;;;OASG;IACG,kBAAkB,CAAC,EACvB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GACR,EAAE;QACD,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,eAAe,CAAC;KAC1B,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAqClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaleWhileRevalidate.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StaleWhileRevalidate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StaleWhileRevalidate.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StaleWhileRevalidate.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD;;OAEG;gBACS,OAAO,GAAE,eAAoB;IAUzC;;;;;OAKG;IACG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;CAsD7E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { HandlerCallbackOptions, RouteHandlerObject,
|
|
1
|
+
import type { HandlerCallbackOptions, RouteHandlerObject, StrategyPlugin } from "#lib/types.js";
|
|
2
2
|
import { StrategyHandler } from "./StrategyHandler.js";
|
|
3
3
|
export interface StrategyOptions {
|
|
4
4
|
/**
|
|
@@ -8,7 +8,7 @@ export interface StrategyOptions {
|
|
|
8
8
|
/**
|
|
9
9
|
* [Plugins](https://serwist.pages.dev/docs/serwist/runtime-caching/plugins) to use in conjunction with this caching strategy.
|
|
10
10
|
*/
|
|
11
|
-
plugins?:
|
|
11
|
+
plugins?: StrategyPlugin[];
|
|
12
12
|
/**
|
|
13
13
|
* Options passed to [non-navigation](https://github.com/GoogleChrome/workbox/issues/1796) `fetch()` calls made by
|
|
14
14
|
* this strategy.
|
|
@@ -28,7 +28,7 @@ export interface StrategyOptions {
|
|
|
28
28
|
*/
|
|
29
29
|
export declare abstract class Strategy implements RouteHandlerObject {
|
|
30
30
|
cacheName: string;
|
|
31
|
-
plugins:
|
|
31
|
+
plugins: StrategyPlugin[];
|
|
32
32
|
fetchOptions?: RequestInit;
|
|
33
33
|
matchOptions?: CacheQueryOptions;
|
|
34
34
|
protected abstract _handle(request: Request, handler: StrategyHandler): Promise<Response | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/Strategy.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"Strategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/Strategy.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAKhG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,iBAAiB,CAAC;CAClC;AAED;;;;;GAKG;AACH,8BAAsB,QAAS,YAAW,kBAAkB;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAEjC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAErG;;;;;;;;;OASG;gBACS,OAAO,GAAE,eAAoB;IAOzC;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKvE;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,sBAAsB,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAqBrF,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAyCnG,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAqCzI"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { HandlerCallbackOptions, MapLikeObject,
|
|
1
|
+
import type { HandlerCallbackOptions, MapLikeObject, StrategyPlugin, StrategyPluginCallbackParam } from "#lib/types.js";
|
|
2
2
|
import type { Strategy } from "./Strategy.js";
|
|
3
3
|
/**
|
|
4
4
|
* A class created every time a {@linkcode Strategy} instance calls {@linkcode Strategy.handle} or
|
|
@@ -123,7 +123,7 @@ export declare class StrategyHandler {
|
|
|
123
123
|
* @param name The name of the callback to check for.
|
|
124
124
|
* @returns
|
|
125
125
|
*/
|
|
126
|
-
hasCallback<C extends keyof
|
|
126
|
+
hasCallback<C extends keyof StrategyPlugin>(name: C): boolean;
|
|
127
127
|
/**
|
|
128
128
|
* Runs all plugin callbacks matching the given name, in order, passing the
|
|
129
129
|
* given param object as the only argument.
|
|
@@ -136,14 +136,14 @@ export declare class StrategyHandler {
|
|
|
136
136
|
* @param param The object to pass as the first (and only) param when executing each callback. This object will be merged with the
|
|
137
137
|
* current plugin state prior to callback execution.
|
|
138
138
|
*/
|
|
139
|
-
runCallbacks<C extends keyof NonNullable<
|
|
139
|
+
runCallbacks<C extends keyof NonNullable<StrategyPlugin>>(name: C, param: Omit<StrategyPluginCallbackParam[C], "state">): Promise<void>;
|
|
140
140
|
/**
|
|
141
141
|
* Accepts a callback name and returns an iterable of matching plugin callbacks.
|
|
142
142
|
*
|
|
143
143
|
* @param name The name fo the callback to run
|
|
144
144
|
* @returns
|
|
145
145
|
*/
|
|
146
|
-
iterateCallbacks<C extends keyof
|
|
146
|
+
iterateCallbacks<C extends keyof StrategyPlugin>(name: C): Generator<NonNullable<StrategyPlugin[C]>>;
|
|
147
147
|
/**
|
|
148
148
|
* Adds a promise to the
|
|
149
149
|
* [extend lifetime promises](https://w3c.github.io/ServiceWorker/#extendableevent-extend-lifetime-promises)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StrategyHandler.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StrategyHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StrategyHandler.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StrategyHandler.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AASxH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAM9C;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IACI,KAAK,EAAE,eAAe,CAAC;IAC9B;;;OAGG;IACI,OAAO,EAAE,OAAO,CAAC;IACxB;;;;;OAKG;IACI,GAAG,CAAC,EAAE,GAAG,CAAC;IACjB;;;;;;;OAOG;IACI,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IAEzC,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IACjD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAiB;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IAErE;;;;;;;;;OASG;gBAED,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,sBAAsB,GAAG;QAChC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;KACtD;IAsCH;;;;;;;;;;;;OAYG;IACG,KAAK,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAqElD;;;;;;;;OAQG;IACG,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAS7D;;;;;;;;;;;OAWG;IACG,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IA+BjE;;;;;;;;;;;;;;OAcG;IACG,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IA8FtE;;;;;;;;;;OAUG;IACG,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAqB7E;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,SAAS,MAAM,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO;IAS7D;;;;;;;;;;;OAWG;IACG,YAAY,CAAC,CAAC,SAAS,MAAM,WAAW,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7I;;;;;OAKG;IACF,gBAAgB,CAAC,CAAC,SAAS,MAAM,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAgBrG;;;;;;;;;OASG;IACH,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAK7C;;;;;;;OAOG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlC;;;OAGG;IACH,OAAO,IAAI,IAAI;IAIf;;;;;;OAMG;IACG,kBAAkB,IAAI,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAoBzD;;;;;;;OAOG;IACG,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAmCpF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { CacheFirst } from "./CacheFirst.js";
|
|
2
|
+
export { CacheOnly } from "./CacheOnly.js";
|
|
3
|
+
export type { NetworkFirstOptions } from "./NetworkFirst.js";
|
|
4
|
+
export { NetworkFirst } from "./NetworkFirst.js";
|
|
5
|
+
export type { NetworkOnlyOptions } from "./NetworkOnly.js";
|
|
6
|
+
export { NetworkOnly } from "./NetworkOnly.js";
|
|
7
|
+
export { StaleWhileRevalidate } from "./StaleWhileRevalidate.js";
|
|
8
|
+
export type { StrategyOptions } from "./Strategy.js";
|
|
9
|
+
export { Strategy } from "./Strategy.js";
|
|
10
|
+
export { StrategyHandler } from "./StrategyHandler.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const cacheOkAndOpaquePlugin:
|
|
1
|
+
import type { StrategyPlugin } from "#lib/types.js";
|
|
2
|
+
export declare const cacheOkAndOpaquePlugin: StrategyPlugin;
|
|
3
3
|
//# sourceMappingURL=cacheOkAndOpaquePlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cacheOkAndOpaquePlugin.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"cacheOkAndOpaquePlugin.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,sBAAsB,EAAE,cAepC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { MaybePromise } from "@serwist/utils";
|
|
1
|
+
import type { MaybePromise, Prettify } from "@serwist/utils";
|
|
2
|
+
import type { PrecacheEntry, PrecacheExtensionOptions, PrecacheOptions, PrecacheRouteOptions } from "#lib/extensions/index.js";
|
|
2
3
|
import type { HTTPMethod } from "./constants.js";
|
|
3
|
-
import type { PrecacheStrategyOptions } from "./lib/strategies/PrecacheStrategy.js";
|
|
4
4
|
export type { MaybePromise as PromiseOrNot };
|
|
5
5
|
export interface MapLikeObject {
|
|
6
6
|
[key: string]: any;
|
|
@@ -66,7 +66,7 @@ export interface ManualHandlerCallbackOptions {
|
|
|
66
66
|
*/
|
|
67
67
|
params?: never;
|
|
68
68
|
}
|
|
69
|
-
export type HandlerCallbackOptions = RouteHandlerCallbackOptions | ManualHandlerCallbackOptions
|
|
69
|
+
export type HandlerCallbackOptions = Prettify<RouteHandlerCallbackOptions | ManualHandlerCallbackOptions>;
|
|
70
70
|
/**
|
|
71
71
|
* The "handler" callback is invoked whenever a request is matched to a
|
|
72
72
|
* {@linkcode Route} via its {@linkcode RouteMatchCallback} This handler
|
|
@@ -98,7 +98,7 @@ export interface RouteHandlerObject {
|
|
|
98
98
|
* Either a {@linkcode RouteHandlerCallback} or a {@linkcode RouteHandlerObject}.
|
|
99
99
|
* Most APIs that accept route handlers take either.
|
|
100
100
|
*/
|
|
101
|
-
export type RouteHandler = RouteHandlerCallback | RouteHandlerObject
|
|
101
|
+
export type RouteHandler = RouteHandlerCallback | Prettify<RouteHandlerObject>;
|
|
102
102
|
export interface HandlerWillStartCallbackParam {
|
|
103
103
|
request: Request;
|
|
104
104
|
event: ExtendableEvent;
|
|
@@ -219,7 +219,7 @@ export type HandlerDidCompleteCallback = (param: HandlerDidCompleteCallbackParam
|
|
|
219
219
|
* An object with optional lifecycle callback properties for the fetch and
|
|
220
220
|
* cache operations.
|
|
221
221
|
*/
|
|
222
|
-
export
|
|
222
|
+
export interface StrategyPlugin {
|
|
223
223
|
cacheDidUpdate?: CacheDidUpdateCallback;
|
|
224
224
|
cachedResponseWillBeUsed?: CachedResponseWillBeUsedCallback;
|
|
225
225
|
cacheKeyWillBeUsed?: CacheKeyWillBeUsedCallback;
|
|
@@ -233,7 +233,7 @@ export declare interface SerwistPlugin {
|
|
|
233
233
|
handlerWillStart?: HandlerWillStartCallback;
|
|
234
234
|
requestWillFetch?: RequestWillFetchCallback;
|
|
235
235
|
}
|
|
236
|
-
export interface
|
|
236
|
+
export interface StrategyPluginCallbackParam {
|
|
237
237
|
cacheDidUpdate: CacheDidUpdateCallbackParam;
|
|
238
238
|
cachedResponseWillBeUsed: CachedResponseWillBeUsedCallbackParam;
|
|
239
239
|
cacheKeyWillBeUsed: CacheKeyWillBeUsedCallbackParam;
|
|
@@ -288,66 +288,8 @@ export interface InstallResult {
|
|
|
288
288
|
export interface CleanupResult {
|
|
289
289
|
deletedCacheRequests: string[];
|
|
290
290
|
}
|
|
291
|
-
export declare interface PrecacheEntry {
|
|
292
|
-
integrity?: string;
|
|
293
|
-
url: string;
|
|
294
|
-
revision?: string | null;
|
|
295
|
-
}
|
|
296
|
-
export interface PrecacheRouteOptions {
|
|
297
|
-
/**
|
|
298
|
-
* Tells Serwist to check the precache for an entry whose URL is the request URL appended
|
|
299
|
-
* with the specified value. Only applies if the request URL ends with "/".
|
|
300
|
-
*
|
|
301
|
-
* @default "index.html"
|
|
302
|
-
*/
|
|
303
|
-
directoryIndex?: string | null;
|
|
304
|
-
/**
|
|
305
|
-
* An array of `RegExp` objects matching search params that should be removed when looking
|
|
306
|
-
* for a precache match.
|
|
307
|
-
*/
|
|
308
|
-
ignoreURLParametersMatching?: RegExp[];
|
|
309
|
-
/**
|
|
310
|
-
* Tells Serwist to check the precache for an entry whose URL is the request URL appended
|
|
311
|
-
* with ".html".
|
|
312
|
-
*
|
|
313
|
-
* @default true
|
|
314
|
-
*/
|
|
315
|
-
cleanURLs?: boolean;
|
|
316
|
-
/**
|
|
317
|
-
* A function that should take a URL and return an array of alternative URLs that should
|
|
318
|
-
* be checked for precache matches.
|
|
319
|
-
*/
|
|
320
|
-
urlManipulation?: UrlManipulation;
|
|
321
|
-
}
|
|
322
|
-
export interface PrecacheOptions extends PrecacheStrategyOptions, PrecacheRouteOptions {
|
|
323
|
-
/**
|
|
324
|
-
* Whether outdated caches should be removed.
|
|
325
|
-
*
|
|
326
|
-
* @default false
|
|
327
|
-
*/
|
|
328
|
-
cleanupOutdatedCaches?: boolean;
|
|
329
|
-
/**
|
|
330
|
-
* The number of precache requests that should be made concurrently.
|
|
331
|
-
*
|
|
332
|
-
* @default 10
|
|
333
|
-
*/
|
|
334
|
-
concurrency?: number;
|
|
335
|
-
/**
|
|
336
|
-
* An URL that should point to a HTML file with which navigation requests for URLs that aren't
|
|
337
|
-
* precached will be fulfilled.
|
|
338
|
-
*/
|
|
339
|
-
navigateFallback?: string;
|
|
340
|
-
/**
|
|
341
|
-
* URLs that should be allowed to use the `navigateFallback` handler.
|
|
342
|
-
*/
|
|
343
|
-
navigateFallbackAllowlist?: RegExp[];
|
|
344
|
-
/**
|
|
345
|
-
* URLs that should not be allowed to use the `navigateFallback` handler. This takes precedence
|
|
346
|
-
* over `navigateFallbackAllowlist`.
|
|
347
|
-
*/
|
|
348
|
-
navigateFallbackDenylist?: RegExp[];
|
|
349
|
-
}
|
|
350
291
|
export type UrlManipulation = ({ url }: {
|
|
351
292
|
url: URL;
|
|
352
293
|
}) => URL[];
|
|
294
|
+
export type { StrategyPlugin as SerwistPlugin, StrategyPluginCallbackParam as SerwistPluginCallbackParam, PrecacheEntry, PrecacheRouteOptions, PrecacheExtensionOptions, PrecacheOptions, };
|
|
353
295
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC/H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,YAAY,EAAE,YAAY,IAAI,YAAY,EAAE,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,GAAG,EAAE,GAAG,CAAC;CACV;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,yBAAyB,KAAK,GAAG,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;CACnC;AACD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC;CAChB;AAED,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,2BAA2B,GAAG,4BAA4B,CAAC,CAAC;AAE1G;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE/F;;;;;;;GAOG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,4BAA4B,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,oBAAoB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE/E,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,6BAA6B,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAE9F,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,WAAW,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,2BAA2B,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAE/F,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,+BAA+B,KAAK,YAAY,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;AAEpH,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,4BAA4B,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAEjG,MAAM,WAAW,qCAAqC;IACpD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,gCAAgC,GAAG,CAAC,KAAK,EAAE,qCAAqC,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAEnH,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,KAAK,CAAC;IACb,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,yBAAyB,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAE3F,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,4BAA4B,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC;AAEtG,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,6BAA6B,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC;AAEvG,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,+BAA+B,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC;AAE5G,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,4BAA4B,KAAK,YAAY,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;AAElH,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,8BAA8B,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAErG,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,+BAA+B,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;AAEvG;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,wBAAwB,CAAC,EAAE,gCAAgC,CAAC;IAC5D,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;IAC5C,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;CAC7C;AAED,MAAM,WAAW,2BAA2B;IAC1C,cAAc,EAAE,2BAA2B,CAAC;IAC5C,wBAAwB,EAAE,qCAAqC,CAAC;IAChE,kBAAkB,EAAE,+BAA+B,CAAC;IACpD,eAAe,EAAE,4BAA4B,CAAC;IAC9C,YAAY,EAAE,yBAAyB,CAAC;IACxC,eAAe,EAAE,4BAA4B,CAAC;IAC9C,kBAAkB,EAAE,+BAA+B,CAAC;IACpD,eAAe,EAAE,4BAA4B,CAAC;IAC9C,iBAAiB,EAAE,8BAA8B,CAAC;IAClD,kBAAkB,EAAE,+BAA+B,CAAC;IACpD,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,gBAAgB,EAAE,6BAA6B,CAAC;CACjD;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;;;;;;;;OASG;IACH,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,CAAC;IAC9C;;;;OAIG;IACH,OAAO,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,GAAG,CAAA;CAAE,KAAK,GAAG,EAAE,CAAC;AAE/D,YAAY,EACV,cAAc,IAAI,aAAa,EAC/B,2BAA2B,IAAI,0BAA0B,EACzD,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,GAChB,CAAC"}
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
import type { PartialCacheNameDetails } from "#utils/cacheNames.js";
|
|
2
|
+
/**
|
|
3
|
+
* Disables Serwist's logging in development mode.
|
|
4
|
+
*
|
|
5
|
+
* @see https://serwist.pages.dev/docs/serwist/core/disable-dev-logs
|
|
6
|
+
*/
|
|
7
|
+
export declare const disableDevLogs: () => void;
|
|
8
|
+
/**
|
|
9
|
+
* Modifies the default cache names used by Serwist packages.
|
|
10
|
+
* Cache names are generated as `<prefix>-<Cache Name>-<suffix>`.
|
|
11
|
+
*
|
|
12
|
+
* @param details
|
|
13
|
+
*/
|
|
14
|
+
export declare const setCacheNameDetails: (details: PartialCacheNameDetails) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Adds a function to the set of quotaErrorCallbacks that will be executed if
|
|
17
|
+
* there's a quota error.
|
|
18
|
+
*
|
|
19
|
+
* @param callback
|
|
20
|
+
*/
|
|
21
|
+
export declare const registerQuotaErrorCallback: (callback: Function) => void;
|
|
1
22
|
/**
|
|
2
23
|
* Allows developers to copy a response and modify its `headers`, `status`,
|
|
3
24
|
* or `statusText` values (the [valid options](https://developer.mozilla.org/en-US/docs/Web/API/Response/Response#options)
|
|
@@ -15,4 +36,4 @@
|
|
|
15
36
|
* @param modifier The function used to modify the options of the `Response` object.
|
|
16
37
|
*/
|
|
17
38
|
export declare const copyResponse: (response: Response, modifier?: (responseInit: ResponseInit) => ResponseInit) => Promise<Response>;
|
|
18
|
-
//# sourceMappingURL=
|
|
39
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AASpE;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,IAEjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,SAAS,uBAAuB,KAAG,IAiCtE,CAAC;AAEF;;;;;GAKG;AAEH,eAAO,MAAM,0BAA0B,GAAI,UAAU,QAAQ,KAAG,IAc/D,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,GAAU,UAAU,QAAQ,EAAE,WAAW,CAAC,YAAY,EAAE,YAAY,KAAK,YAAY,KAAG,OAAO,CAAC,QAAQ,CA8BhI,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MapLikeObject } from "
|
|
1
|
+
import type { MapLikeObject } from "#lib/types.js";
|
|
2
2
|
import { type MessageKey } from "./messages.js";
|
|
3
3
|
export declare const messageGenerator: ((code: string, ...args: any[]) => string) | ((code: MessageKey, details?: MapLikeObject) => string);
|
|
4
4
|
//# sourceMappingURL=messageGenerator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageGenerator.d.ts","sourceRoot":"","sources":["../../../src/models/messages/messageGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"messageGenerator.d.ts","sourceRoot":"","sources":["../../../src/models/messages/messageGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,KAAK,UAAU,EAAY,MAAM,eAAe,CAAC;AAmB1D,eAAO,MAAM,gBAAgB,UAjBL,MAAM,WAAW,GAAG,EAAE,uBAQb,UAAU,YAAW,aAAa,YASiC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { MapLikeObject } from "#lib/types.js";
|
|
2
|
+
import type { MessageKey } from "#models/messages/messages.js";
|
|
3
3
|
/**
|
|
4
4
|
* Serwist errors should be thrown with this class.
|
|
5
5
|
* This allows use to ensure the type easily in tests,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerwistError.d.ts","sourceRoot":"","sources":["../../src/utils/SerwistError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SerwistError.d.ts","sourceRoot":"","sources":["../../src/utils/SerwistError.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE/D;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;;;;;OAOG;gBACS,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,aAAa;CAQ3D"}
|