serwist 9.0.0-preview.24 → 9.0.0-preview.26

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.
Files changed (232) hide show
  1. package/dist/NavigationRoute.d.ts +6 -7
  2. package/dist/NavigationRoute.d.ts.map +1 -1
  3. package/dist/PrecacheRoute.d.ts +2 -2
  4. package/dist/PrecacheRoute.d.ts.map +1 -1
  5. package/dist/RegExpRoute.d.ts +4 -4
  6. package/dist/RegExpRoute.d.ts.map +1 -1
  7. package/dist/Route.d.ts +10 -10
  8. package/dist/Route.d.ts.map +1 -1
  9. package/dist/Serwist.d.ts +39 -44
  10. package/dist/Serwist.d.ts.map +1 -1
  11. package/dist/chunks/printInstallDetails.js +1587 -0
  12. package/dist/chunks/resultingClientExists.js +1 -1
  13. package/dist/chunks/waitUntil.js +426 -1
  14. package/dist/copyResponse.d.ts +8 -10
  15. package/dist/copyResponse.d.ts.map +1 -1
  16. package/dist/disableDevLogs.d.ts +1 -1
  17. package/dist/index.d.ts +41 -12
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.internal.d.ts +3 -1
  20. package/dist/index.internal.d.ts.map +1 -1
  21. package/dist/index.internal.js +1 -2
  22. package/dist/index.js +1464 -8
  23. package/dist/index.legacy.d.ts +4 -8
  24. package/dist/index.legacy.d.ts.map +1 -1
  25. package/dist/index.legacy.js +166 -16
  26. package/dist/legacy/PrecacheController.d.ts +1 -1
  27. package/dist/legacy/PrecacheController.d.ts.map +1 -1
  28. package/dist/legacy/PrecacheRoute.d.ts.map +1 -1
  29. package/dist/legacy/Router.d.ts +1 -1
  30. package/dist/legacy/Router.d.ts.map +1 -1
  31. package/dist/legacy/constants.d.ts.map +1 -0
  32. package/dist/legacy/fallbacks.d.ts +1 -1
  33. package/dist/legacy/fallbacks.d.ts.map +1 -1
  34. package/dist/legacy/handlePrecaching.d.ts.map +1 -1
  35. package/dist/legacy/initializeGoogleAnalytics.d.ts +38 -0
  36. package/dist/legacy/initializeGoogleAnalytics.d.ts.map +1 -0
  37. package/dist/legacy/installSerwist.d.ts +69 -3
  38. package/dist/legacy/installSerwist.d.ts.map +1 -1
  39. package/dist/legacy/registerRoute.d.ts +1 -1
  40. package/dist/legacy/registerRoute.d.ts.map +1 -1
  41. package/dist/{plugins → lib}/backgroundSync/BackgroundSyncPlugin.d.ts +3 -3
  42. package/dist/lib/backgroundSync/BackgroundSyncPlugin.d.ts.map +1 -0
  43. package/dist/{plugins/backgroundSync/Queue.d.ts → lib/backgroundSync/BackgroundSyncQueue.d.ts} +29 -13
  44. package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts.map +1 -0
  45. package/dist/{plugins/backgroundSync/QueueDb.d.ts → lib/backgroundSync/BackgroundSyncQueueDb.d.ts} +7 -7
  46. package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts.map +1 -0
  47. package/dist/{plugins/backgroundSync/QueueStore.d.ts → lib/backgroundSync/BackgroundSyncQueueStore.d.ts} +7 -7
  48. package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts.map +1 -0
  49. package/dist/lib/backgroundSync/StorableRequest.d.ts.map +1 -0
  50. package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +1 -0
  51. package/dist/{plugins → lib}/broadcastUpdate/BroadcastUpdatePlugin.d.ts +1 -1
  52. package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +1 -0
  53. package/dist/lib/broadcastUpdate/constants.d.ts +5 -0
  54. package/dist/lib/broadcastUpdate/constants.d.ts.map +1 -0
  55. package/dist/lib/broadcastUpdate/responsesAreSame.d.ts.map +1 -0
  56. package/dist/{plugins → lib}/broadcastUpdate/types.d.ts +3 -3
  57. package/dist/lib/broadcastUpdate/types.d.ts.map +1 -0
  58. package/dist/lib/cacheableResponse/CacheableResponse.d.ts.map +1 -0
  59. package/dist/lib/cacheableResponse/CacheableResponsePlugin.d.ts.map +1 -0
  60. package/dist/{plugins → lib}/expiration/CacheExpiration.d.ts +1 -1
  61. package/dist/lib/expiration/CacheExpiration.d.ts.map +1 -0
  62. package/dist/{plugins → lib}/expiration/ExpirationPlugin.d.ts +1 -1
  63. package/dist/lib/expiration/ExpirationPlugin.d.ts.map +1 -0
  64. package/dist/lib/expiration/models/CacheTimestampsModel.d.ts.map +1 -0
  65. package/dist/lib/googleAnalytics/constants.d.ts +10 -0
  66. package/dist/lib/googleAnalytics/constants.d.ts.map +1 -0
  67. package/dist/{plugins/googleAnalytics/initialize.d.ts → lib/googleAnalytics/initializeGoogleAnalytics.d.ts} +2 -2
  68. package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts.map +1 -0
  69. package/dist/{plugins → lib}/precaching/PrecacheFallbackPlugin.d.ts +1 -1
  70. package/dist/lib/precaching/PrecacheFallbackPlugin.d.ts.map +1 -0
  71. package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts.map +1 -0
  72. package/dist/lib/rangeRequests/createPartialResponse.d.ts.map +1 -0
  73. package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +1 -0
  74. package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts.map +1 -0
  75. package/dist/{strategies → lib/strategies}/CacheFirst.d.ts +1 -1
  76. package/dist/lib/strategies/CacheFirst.d.ts.map +1 -0
  77. package/dist/{strategies → lib/strategies}/CacheOnly.d.ts +2 -2
  78. package/dist/lib/strategies/CacheOnly.d.ts.map +1 -0
  79. package/dist/{strategies → lib/strategies}/NetworkFirst.d.ts +2 -2
  80. package/dist/lib/strategies/NetworkFirst.d.ts.map +1 -0
  81. package/dist/{strategies → lib/strategies}/NetworkOnly.d.ts +2 -2
  82. package/dist/lib/strategies/NetworkOnly.d.ts.map +1 -0
  83. package/dist/{PrecacheStrategy.d.ts → lib/strategies/PrecacheStrategy.d.ts} +5 -5
  84. package/dist/lib/strategies/PrecacheStrategy.d.ts.map +1 -0
  85. package/dist/{strategies → lib/strategies}/StaleWhileRevalidate.d.ts +1 -1
  86. package/dist/lib/strategies/StaleWhileRevalidate.d.ts.map +1 -0
  87. package/dist/{strategies → lib/strategies}/Strategy.d.ts +15 -17
  88. package/dist/lib/strategies/Strategy.d.ts.map +1 -0
  89. package/dist/{strategies → lib/strategies}/StrategyHandler.d.ts +35 -41
  90. package/dist/lib/strategies/StrategyHandler.d.ts.map +1 -0
  91. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +3 -0
  92. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +1 -0
  93. package/dist/lib/strategies/utils/messages.d.ts.map +1 -0
  94. package/dist/navigationPreload.d.ts +3 -3
  95. package/dist/types.d.ts +12 -7
  96. package/dist/types.d.ts.map +1 -1
  97. package/dist/utils/PrecacheCacheKeyPlugin.d.ts +1 -1
  98. package/dist/utils/PrecacheCacheKeyPlugin.d.ts.map +1 -1
  99. package/dist/utils/assert.d.ts.map +1 -1
  100. package/dist/utils/cleanupOutdatedCaches.d.ts.map +1 -0
  101. package/dist/utils/clientsClaim.d.ts.map +1 -0
  102. package/dist/{parseRoute.d.ts → utils/parseRoute.d.ts} +3 -3
  103. package/dist/utils/parseRoute.d.ts.map +1 -0
  104. package/package.json +7 -21
  105. package/src/NavigationRoute.ts +6 -7
  106. package/src/PrecacheRoute.ts +5 -5
  107. package/src/RegExpRoute.ts +5 -5
  108. package/src/Route.ts +11 -11
  109. package/src/Serwist.ts +73 -80
  110. package/src/copyResponse.ts +7 -9
  111. package/src/disableDevLogs.ts +1 -1
  112. package/src/index.internal.ts +4 -0
  113. package/src/index.legacy.ts +14 -18
  114. package/src/index.ts +105 -19
  115. package/src/legacy/PrecacheController.ts +8 -8
  116. package/src/legacy/PrecacheFallbackPlugin.ts +1 -1
  117. package/src/legacy/PrecacheRoute.ts +3 -3
  118. package/src/legacy/Router.ts +5 -5
  119. package/src/legacy/fallbacks.ts +3 -3
  120. package/src/legacy/handlePrecaching.ts +1 -1
  121. package/src/legacy/initializeGoogleAnalytics.ts +218 -0
  122. package/src/legacy/installSerwist.ts +156 -5
  123. package/src/legacy/registerRoute.ts +1 -1
  124. package/src/{plugins → lib}/backgroundSync/BackgroundSyncPlugin.ts +6 -6
  125. package/src/{plugins/backgroundSync/Queue.ts → lib/backgroundSync/BackgroundSyncQueue.ts} +47 -26
  126. package/src/{plugins/backgroundSync/QueueDb.ts → lib/backgroundSync/BackgroundSyncQueueDb.ts} +16 -16
  127. package/src/{plugins/backgroundSync/QueueStore.ts → lib/backgroundSync/BackgroundSyncQueueStore.ts} +13 -13
  128. package/src/{plugins → lib}/backgroundSync/StorableRequest.ts +2 -2
  129. package/src/{plugins → lib}/broadcastUpdate/BroadcastCacheUpdate.ts +14 -9
  130. package/src/{plugins → lib}/broadcastUpdate/BroadcastUpdatePlugin.ts +1 -1
  131. package/src/lib/broadcastUpdate/constants.ts +12 -0
  132. package/src/{plugins → lib}/broadcastUpdate/types.ts +3 -3
  133. package/src/{plugins → lib}/cacheableResponse/CacheableResponse.ts +5 -5
  134. package/src/{plugins → lib}/expiration/CacheExpiration.ts +7 -7
  135. package/src/{plugins → lib}/expiration/ExpirationPlugin.ts +10 -10
  136. package/src/lib/googleAnalytics/constants.ts +22 -0
  137. package/src/{plugins/googleAnalytics/initialize.ts → lib/googleAnalytics/initializeGoogleAnalytics.ts} +9 -9
  138. package/src/{strategies → lib/strategies}/CacheFirst.ts +5 -5
  139. package/src/{strategies → lib/strategies}/CacheOnly.ts +6 -6
  140. package/src/{strategies → lib/strategies}/NetworkFirst.ts +7 -7
  141. package/src/{strategies → lib/strategies}/NetworkOnly.ts +7 -7
  142. package/src/{PrecacheStrategy.ts → lib/strategies/PrecacheStrategy.ts} +14 -10
  143. package/src/{strategies → lib/strategies}/StaleWhileRevalidate.ts +5 -5
  144. package/src/{strategies → lib/strategies}/Strategy.ts +19 -21
  145. package/src/{strategies → lib/strategies}/StrategyHandler.ts +45 -51
  146. package/src/{strategies → lib/strategies}/plugins/cacheOkAndOpaquePlugin.ts +1 -1
  147. package/src/{strategies → lib/strategies}/utils/messages.ts +2 -2
  148. package/src/models/messages/messages.ts +1 -1
  149. package/src/navigationPreload.ts +3 -3
  150. package/src/registerQuotaErrorCallback.ts +1 -1
  151. package/src/types.ts +12 -7
  152. package/src/utils/PrecacheCacheKeyPlugin.ts +1 -1
  153. package/src/utils/assert.ts +1 -1
  154. package/src/{cleanupOutdatedCaches.ts → utils/cleanupOutdatedCaches.ts} +3 -4
  155. package/src/utils/executeQuotaErrorCallbacks.ts +1 -1
  156. package/src/{parseRoute.ts → utils/parseRoute.ts} +21 -23
  157. package/src/utils/welcome.ts +1 -1
  158. package/dist/PrecacheStrategy.d.ts.map +0 -1
  159. package/dist/chunks/NetworkOnly.js +0 -599
  160. package/dist/chunks/PrecacheFallbackPlugin.js +0 -634
  161. package/dist/chunks/Serwist.js +0 -1034
  162. package/dist/chunks/registerQuotaErrorCallback.js +0 -17
  163. package/dist/chunks/timeout.js +0 -400
  164. package/dist/cleanupOutdatedCaches.d.ts.map +0 -1
  165. package/dist/clientsClaim.d.ts.map +0 -1
  166. package/dist/index.plugins.d.ts +0 -41
  167. package/dist/index.plugins.d.ts.map +0 -1
  168. package/dist/index.plugins.js +0 -669
  169. package/dist/index.strategies.d.ts +0 -22
  170. package/dist/index.strategies.d.ts.map +0 -1
  171. package/dist/index.strategies.js +0 -144
  172. package/dist/parseRoute.d.ts.map +0 -1
  173. package/dist/plugins/backgroundSync/BackgroundSyncPlugin.d.ts.map +0 -1
  174. package/dist/plugins/backgroundSync/Queue.d.ts.map +0 -1
  175. package/dist/plugins/backgroundSync/QueueDb.d.ts.map +0 -1
  176. package/dist/plugins/backgroundSync/QueueStore.d.ts.map +0 -1
  177. package/dist/plugins/backgroundSync/StorableRequest.d.ts.map +0 -1
  178. package/dist/plugins/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +0 -1
  179. package/dist/plugins/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +0 -1
  180. package/dist/plugins/broadcastUpdate/constants.d.ts +0 -5
  181. package/dist/plugins/broadcastUpdate/constants.d.ts.map +0 -1
  182. package/dist/plugins/broadcastUpdate/responsesAreSame.d.ts.map +0 -1
  183. package/dist/plugins/broadcastUpdate/types.d.ts.map +0 -1
  184. package/dist/plugins/cacheableResponse/CacheableResponse.d.ts.map +0 -1
  185. package/dist/plugins/cacheableResponse/CacheableResponsePlugin.d.ts.map +0 -1
  186. package/dist/plugins/expiration/CacheExpiration.d.ts.map +0 -1
  187. package/dist/plugins/expiration/ExpirationPlugin.d.ts.map +0 -1
  188. package/dist/plugins/expiration/models/CacheTimestampsModel.d.ts.map +0 -1
  189. package/dist/plugins/googleAnalytics/constants.d.ts.map +0 -1
  190. package/dist/plugins/googleAnalytics/initialize.d.ts.map +0 -1
  191. package/dist/plugins/precaching/PrecacheFallbackPlugin.d.ts.map +0 -1
  192. package/dist/plugins/rangeRequests/RangeRequestsPlugin.d.ts.map +0 -1
  193. package/dist/plugins/rangeRequests/createPartialResponse.d.ts.map +0 -1
  194. package/dist/plugins/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +0 -1
  195. package/dist/plugins/rangeRequests/utils/parseRangeHeader.d.ts.map +0 -1
  196. package/dist/strategies/CacheFirst.d.ts.map +0 -1
  197. package/dist/strategies/CacheOnly.d.ts.map +0 -1
  198. package/dist/strategies/NetworkFirst.d.ts.map +0 -1
  199. package/dist/strategies/NetworkOnly.d.ts.map +0 -1
  200. package/dist/strategies/StaleWhileRevalidate.d.ts.map +0 -1
  201. package/dist/strategies/Strategy.d.ts.map +0 -1
  202. package/dist/strategies/StrategyHandler.d.ts.map +0 -1
  203. package/dist/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +0 -3
  204. package/dist/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +0 -1
  205. package/dist/strategies/utils/messages.d.ts.map +0 -1
  206. package/src/index.plugins.ts +0 -95
  207. package/src/index.strategies.ts +0 -26
  208. package/src/plugins/broadcastUpdate/constants.ts +0 -12
  209. package/dist/{plugins/googleAnalytics → legacy}/constants.d.ts +0 -0
  210. package/dist/{plugins → lib}/backgroundSync/StorableRequest.d.ts +0 -0
  211. package/dist/{plugins → lib}/broadcastUpdate/BroadcastCacheUpdate.d.ts +0 -0
  212. package/dist/{plugins → lib}/broadcastUpdate/responsesAreSame.d.ts +0 -0
  213. package/dist/{plugins → lib}/cacheableResponse/CacheableResponse.d.ts +0 -0
  214. package/dist/{plugins → lib}/cacheableResponse/CacheableResponsePlugin.d.ts +0 -0
  215. package/dist/{plugins → lib}/expiration/models/CacheTimestampsModel.d.ts +0 -0
  216. package/dist/{plugins → lib}/rangeRequests/RangeRequestsPlugin.d.ts +0 -0
  217. package/dist/{plugins → lib}/rangeRequests/createPartialResponse.d.ts +0 -0
  218. package/dist/{plugins → lib}/rangeRequests/utils/calculateEffectiveBoundaries.d.ts +0 -0
  219. package/dist/{plugins → lib}/rangeRequests/utils/parseRangeHeader.d.ts +0 -0
  220. package/dist/{strategies → lib/strategies}/utils/messages.d.ts +0 -0
  221. package/dist/{cleanupOutdatedCaches.d.ts → utils/cleanupOutdatedCaches.d.ts} +0 -0
  222. package/dist/{clientsClaim.d.ts → utils/clientsClaim.d.ts} +0 -0
  223. package/src/{plugins/googleAnalytics → legacy}/constants.ts +0 -0
  224. package/src/{plugins → lib}/broadcastUpdate/responsesAreSame.ts +0 -0
  225. package/src/{plugins → lib}/cacheableResponse/CacheableResponsePlugin.ts +0 -0
  226. package/src/{plugins → lib}/expiration/models/CacheTimestampsModel.ts +0 -0
  227. package/src/{plugins → lib}/precaching/PrecacheFallbackPlugin.ts +1 -1
  228. package/src/{plugins → lib}/rangeRequests/RangeRequestsPlugin.ts +0 -0
  229. package/src/{plugins → lib}/rangeRequests/createPartialResponse.ts +1 -1
  230. package/src/{plugins → lib}/rangeRequests/utils/calculateEffectiveBoundaries.ts +1 -1
  231. package/src/{plugins → lib}/rangeRequests/utils/parseRangeHeader.ts +1 -1
  232. /package/src/{clientsClaim.ts → utils/clientsClaim.ts} +0 -0
@@ -1,9 +1,9 @@
1
- import type { HandlerCallbackOptions, MapLikeObject, SerwistPlugin, SerwistPluginCallbackParam } from "../types.js";
1
+ import type { HandlerCallbackOptions, MapLikeObject, SerwistPlugin, SerwistPluginCallbackParam } from "../../types.js";
2
2
  import type { Strategy } from "./Strategy.js";
3
3
  /**
4
- * A class created every time a Strategy instance instance calls `Strategy.handle` or
4
+ * A class created every time a `Strategy` instance calls `Strategy.handle` or
5
5
  * `Strategy.handleAll` that wraps all fetch and cache actions around plugin callbacks
6
- * and keeps track of when the strategy is "done" (i.e. all added `event.waitUntil()` promises
6
+ * and keeps track of when the strategy is "done" (i.e. when all added `event.waitUntil()` promises
7
7
  * have resolved).
8
8
  */
9
9
  export declare class StrategyHandler {
@@ -12,23 +12,23 @@ export declare class StrategyHandler {
12
12
  */
13
13
  event: ExtendableEvent;
14
14
  /**
15
- * The request the strategy is performing (passed to the strategy's
15
+ * The request the strategy is processing (passed to the strategy's
16
16
  * `handle()` or `handleAll()` method).
17
17
  */
18
18
  request: Request;
19
19
  /**
20
20
  * A `URL` instance of `request.url` (if passed to the strategy's
21
21
  * `handle()` or `handleAll()` method).
22
- * Note: the `url` param will be present if the strategy was invoked
22
+ * Note: the `url` param will be present if the strategy is invoked
23
23
  * from a `Route` object.
24
24
  */
25
25
  url?: URL;
26
26
  /**
27
- * A `param` value (if passed to the strategy's
27
+ * Some additional params (if passed to the strategy's
28
28
  * `handle()` or `handleAll()` method).
29
- * Note: the `param` param will be present if the strategy was invoked
30
- * from a `Route` object and the `serwist/strategies.matchCallback`
31
- * returned a truthy value (it will be that value).
29
+ * Note: the `params` param will be present if the strategy is invoked
30
+ * from a `Route` object and that route's matcher returned a truthy value
31
+ * (it will be that value).
32
32
  */
33
33
  params?: string[] | MapLikeObject;
34
34
  private _cacheKeys;
@@ -52,8 +52,8 @@ export declare class StrategyHandler {
52
52
  });
53
53
  /**
54
54
  * Fetches a given request (and invokes any applicable plugin callback
55
- * methods) using the `fetchOptions` (for non-navigation requests) and
56
- * `plugins` defined on the `Strategy` object.
55
+ * methods), taking the `fetchOptions` (for non-navigation requests) and
56
+ * `plugins` provided to the `Strategy` object into account.
57
57
  *
58
58
  * The following plugin lifecycle methods are invoked when using this method:
59
59
  * - `requestWillFetch()`
@@ -65,11 +65,10 @@ export declare class StrategyHandler {
65
65
  */
66
66
  fetch(input: RequestInfo): Promise<Response>;
67
67
  /**
68
- * Calls `this.fetch()` and (in the background) runs `this.cachePut()` on
69
- * the response generated by `this.fetch()`.
68
+ * Calls `this.fetch()` and (in the background) caches the generated response.
70
69
  *
71
70
  * The call to `this.cachePut()` automatically invokes `this.waitUntil()`,
72
- * so you do not have to manually call `waitUntil()` on the event.
71
+ * so you do not have to call `waitUntil()` yourself.
73
72
  *
74
73
  * @param input The request or URL to fetch and cache.
75
74
  * @returns
@@ -77,26 +76,26 @@ export declare class StrategyHandler {
77
76
  fetchAndCachePut(input: RequestInfo): Promise<Response>;
78
77
  /**
79
78
  * Matches a request from the cache (and invokes any applicable plugin
80
- * callback methods) using the `cacheName`, `matchOptions`, and `plugins`
81
- * defined on the strategy object.
79
+ * callback method) using the `cacheName`, `matchOptions`, and `plugins`
80
+ * provided to the `Strategy` object.
82
81
  *
83
- * The following plugin lifecycle methods are invoked when using this method:
84
- * - cacheKeyWillByUsed()
85
- * - cachedResponseWillByUsed()
82
+ * The following lifecycle methods are invoked when using this method:
83
+ * - `cacheKeyWillByUsed`
84
+ * - `cachedResponseWillByUsed`
86
85
  *
87
- * @param key The Request or URL to use as the cache key.
86
+ * @param key The `Request` or `URL` object to use as the cache key.
88
87
  * @returns A matching response, if found.
89
88
  */
90
89
  cacheMatch(key: RequestInfo): Promise<Response | undefined>;
91
90
  /**
92
- * Puts a request/response pair in the cache (and invokes any applicable
93
- * plugin callback methods) using the `cacheName` and `plugins` defined on
94
- * the strategy object.
91
+ * Puts a request/response pair into the cache (and invokes any applicable
92
+ * plugin callback method) using the `cacheName` and `plugins` provided to
93
+ * the `Strategy` object.
95
94
  *
96
95
  * The following plugin lifecycle methods are invoked when using this method:
97
- * - cacheKeyWillByUsed()
98
- * - cacheWillUpdate()
99
- * - cacheDidUpdate()
96
+ * - `cacheKeyWillByUsed`
97
+ * - `cacheWillUpdate`
98
+ * - `cacheDidUpdate`
100
99
  *
101
100
  * @param key The request or URL to use as the cache key.
102
101
  * @param response The response to cache.
@@ -105,11 +104,11 @@ export declare class StrategyHandler {
105
104
  */
106
105
  cachePut(key: RequestInfo, response: Response): Promise<boolean>;
107
106
  /**
108
- * Checks the list of plugins for the `cacheKeyWillBeUsed` callback, and
109
- * executes any of those callbacks found in sequence. The final `Request`
107
+ * Checks the `plugins` provided to the `Strategy` object for `cacheKeyWillBeUsed`
108
+ * callbacks and executes found callbacks in sequence. The final `Request`
110
109
  * object returned by the last plugin is treated as the cache key for cache
111
110
  * reads and/or writes. If no `cacheKeyWillBeUsed` plugin callbacks have
112
- * been registered, the passed request is returned unmodified
111
+ * been registered, the passed request is returned unmodified.
113
112
  *
114
113
  * @param request
115
114
  * @param mode
@@ -117,7 +116,7 @@ export declare class StrategyHandler {
117
116
  */
118
117
  getCacheKey(request: Request, mode: "read" | "write"): Promise<Request>;
119
118
  /**
120
- * Returns true if the strategy has at least one plugin with the given
119
+ * Returns `true` if the strategy has at least one plugin with the given
121
120
  * callback.
122
121
  *
123
122
  * @param name The name of the callback to check for.
@@ -126,8 +125,7 @@ export declare class StrategyHandler {
126
125
  hasCallback<C extends keyof SerwistPlugin>(name: C): boolean;
127
126
  /**
128
127
  * Runs all plugin callbacks matching the given name, in order, passing the
129
- * given param object (merged ith the current plugin state) as the only
130
- * argument.
128
+ * given param object as the only argument.
131
129
  *
132
130
  * Note: since this method runs all plugins, it's not suitable for cases
133
131
  * where the return value of a callback needs to be applied prior to calling
@@ -139,10 +137,7 @@ export declare class StrategyHandler {
139
137
  */
140
138
  runCallbacks<C extends keyof NonNullable<SerwistPlugin>>(name: C, param: Omit<SerwistPluginCallbackParam[C], "state">): Promise<void>;
141
139
  /**
142
- * Accepts a callback and returns an iterable of matching plugin callbacks,
143
- * where each callback is wrapped with the current handler state (i.e. when
144
- * you call each callback, whatever object parameter you pass it will
145
- * be merged with the plugin's current state).
140
+ * Accepts a callback name and returns an iterable of matching plugin callbacks.
146
141
  *
147
142
  * @param name The name fo the callback to run
148
143
  * @returns
@@ -163,17 +158,16 @@ export declare class StrategyHandler {
163
158
  waitUntil<T>(promise: Promise<T>): Promise<T>;
164
159
  /**
165
160
  * Returns a promise that resolves once all promises passed to
166
- * `serwist/strategies.StrategyHandler.waitUntil` have settled.
161
+ * `this.waitUntil()` have settled.
167
162
  *
168
163
  * Note: any work done after `doneWaiting()` settles should be manually
169
- * passed to an event's `waitUntil()` method (not this handler's
170
- * `waitUntil()` method), otherwise the service worker thread my be killed
171
- * prior to your work completing.
164
+ * passed to an event's `waitUntil()` method (not `this.waitUntil()`), otherwise
165
+ * the service worker thread may be killed prior to your work completing.
172
166
  */
173
167
  doneWaiting(): Promise<void>;
174
168
  /**
175
169
  * Stops running the strategy and immediately resolves any pending
176
- * `waitUntil()` promises.
170
+ * `waitUntil()` promise.
177
171
  */
178
172
  destroy(): void;
179
173
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StrategyHandler.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StrategyHandler.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AASvH,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;;;;;;OAMG;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,CAAkB;IAC3C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IAEpE;;;;;;;;;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;IAyElD;;;;;;;;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,aAAa,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO;IAS5D;;;;;;;;;;;OAWG;IACG,YAAY,CAAC,CAAC,SAAS,MAAM,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3I;;;;;OAKG;IACF,gBAAgB,CAAC,CAAC,SAAS,MAAM,aAAa,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAgBnG;;;;;;;;;;;OAWG;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;;;;;;;OAOG;IACG,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAuCpF"}
@@ -0,0 +1,3 @@
1
+ import type { SerwistPlugin } from "../../../types.js";
2
+ export declare const cacheOkAndOpaquePlugin: SerwistPlugin;
3
+ //# sourceMappingURL=cacheOkAndOpaquePlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheOkAndOpaquePlugin.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAM,sBAAsB,EAAE,aAepC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/utils/messages.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,QAAQ;kCACW,MAAM,WAAW,OAAO,KAAG,MAAM;oCAC/B,QAAQ,KAAG,IAAI;CAOhD,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * navigation preloading.
4
4
  *
5
5
  * @returns
6
- * @see https://serwist.pages.dev/docs/sw/navigation-preloading/is-navigation-preload-supported
6
+ * @see https://serwist.pages.dev/docs/serwist/core/is-navigation-preload-supported
7
7
  */
8
8
  export declare const isNavigationPreloadSupported: () => boolean;
9
9
  /**
@@ -12,13 +12,13 @@ export declare const isNavigationPreloadSupported: () => boolean;
12
12
  * @param headerValue Optional. Allows developers to override the value of
13
13
  * the `Service-Worker-Navigation-Preload` header which will be sent to the
14
14
  * server when making the navigation request.
15
- * @see https://serwist.pages.dev/docs/sw/navigation-preloading/enable-navigation-preload
15
+ * @see https://serwist.pages.dev/docs/serwist/core/enable-navigation-preload
16
16
  */
17
17
  export declare const enableNavigationPreload: (headerValue?: string) => void;
18
18
  /**
19
19
  * If the browser supports navigation preloading, then this will disable it.
20
20
  *
21
- * @see https://serwist.pages.dev/docs/sw/navigation-preloading/disable-navigation-preload
21
+ * @see https://serwist.pages.dev/docs/serwist/core/disable-navigation-preload
22
22
  */
23
23
  export declare const disableNavigationPreload: () => void;
24
24
  //# sourceMappingURL=navigationPreload.d.ts.map
package/dist/types.d.ts CHANGED
@@ -292,22 +292,27 @@ export declare interface PrecacheEntry {
292
292
  }
293
293
  export interface PrecacheRouteOptions {
294
294
  /**
295
- * The `directoryIndex` will check cache entries for a URL ending with '/'
296
- * to see if there is a hit when appending the `directoryIndex` value.
295
+ * Tells Serwist to check the precache for an entry whose URL is the request URL appended
296
+ * with the specified value. Only applies if the request URL ends with "/".
297
+ *
298
+ * @default "index.html"
297
299
  */
298
300
  directoryIndex?: string | null;
299
301
  /**
300
- * An array of RegExp's to remove search params when looking for a cache match.
302
+ * An array of `RegExp` objects matching search params that should be removed when looking
303
+ * for a precache match.
301
304
  */
302
305
  ignoreURLParametersMatching?: RegExp[];
303
306
  /**
304
- * The `cleanURLs` option will check the cache for the URL with a `.html` added
305
- * to the end of the end.
307
+ * Tells Serwist to check the precache for an entry whose URL is the request URL appended
308
+ * with ".html".
309
+ *
310
+ * @default true
306
311
  */
307
312
  cleanURLs?: boolean;
308
313
  /**
309
- * This is a function that should take a URL and return an array of
310
- * alternative URLs that should be checked for precache matches.
314
+ * A function that should take a URL and return an array of alternative URLs that should
315
+ * be checked for precache matches.
311
316
  */
312
317
  urlManipulation?: UrlManipulation;
313
318
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,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;;;;;;;;;;GAUG;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,2BAA2B,GAAG,4BAA4B,CAAC;AAEhG;;;;;;;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;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;AAErE,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,CAAC,OAAO,WAAW,aAAa;IACpC,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,0BAA0B;IACzC,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,CAAC,OAAO,WAAW,aAAa;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAC;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,GAAG,CAAA;CAAE,KAAK,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,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;;;;;;;;;;GAUG;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,2BAA2B,GAAG,4BAA4B,CAAC;AAEhG;;;;;;;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;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;AAErE,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,CAAC,OAAO,WAAW,aAAa;IACpC,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,0BAA0B;IACzC,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,CAAC,OAAO,WAAW,aAAa;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;OAGG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAC;IACvC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,GAAG,CAAA;CAAE,KAAK,GAAG,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { SerwistPlugin } from "../types.js";
2
1
  import type { Serwist } from "../Serwist.js";
2
+ import type { SerwistPlugin } from "../types.js";
3
3
  /**
4
4
  * A plugin, designed to be used with PrecacheController, to translate URLs into
5
5
  * the corresponding cache key, based on the current revision info.
@@ -1 +1 @@
1
- {"version":3,"file":"PrecacheCacheKeyPlugin.d.ts","sourceRoot":"","sources":["../../src/utils/PrecacheCacheKeyPlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,aAAa;IAC1D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;gBAElC,EAAE,kBAAkB,EAAE,EAAE;QAAE,kBAAkB,EAAE,OAAO,CAAA;KAAE;IAInE,kBAAkB,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAOrD;CACH"}
1
+ {"version":3,"file":"PrecacheCacheKeyPlugin.d.ts","sourceRoot":"","sources":["../../src/utils/PrecacheCacheKeyPlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,aAAa,CAAC;AAE7E;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,aAAa;IAC1D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;gBAElC,EAAE,kBAAkB,EAAE,EAAE;QAAE,kBAAkB,EAAE,OAAO,CAAA;KAAE;IAInE,kBAAkB,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAOrD;CACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../src/utils/assert.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAmEjD,QAAA,MAAM,kBAAkB;wBArDG,aAAa,kBAAkB,MAAM,WAAW,aAAa;qBANhE,GAAG,EAAE,WAAW,aAAa;yBAuB3C,OAAO,iBAEA,QAAQ,WACd,aAAa;qBAQA,GAAG,eAAe,GAAG,EAAE,WAAW,aAAa;qBApB/C,OAAO,gBAAgB,MAAM,WAAW,aAAa;4BA4BpE,GAAG,iBAEK,QAAQ,WACd,aAAa;QAwBjB,CAAC;AAER,OAAO,EAAE,kBAAkB,IAAI,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../src/utils/assert.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAoEjD,QAAA,MAAM,kBAAkB;wBArDG,aAAa,kBAAkB,MAAM,WAAW,aAAa;qBANhE,GAAG,EAAE,WAAW,aAAa;yBAuB3C,OAAO,iBAEA,QAAQ,WACd,aAAa;qBAQA,GAAG,eAAe,GAAG,EAAE,WAAW,aAAa;qBApB/C,OAAO,gBAAgB,MAAM,WAAW,aAAa;4BA4BpE,GAAG,iBAEK,QAAQ,WACd,aAAa;QAwBjB,CAAC;AAER,OAAO,EAAE,kBAAkB,IAAI,MAAM,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanupOutdatedCaches.d.ts","sourceRoot":"","sources":["../../src/utils/cleanupOutdatedCaches.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,eAAO,MAAM,qBAAqB,eAAgB,MAAM,KAAG,IAY1D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientsClaim.d.ts","sourceRoot":"","sources":["../../src/utils/clientsClaim.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,eAAO,MAAM,YAAY,QAAO,IAE/B,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { RouteHandler, RouteMatchCallback } from "./types.js";
2
- import { Route } from "./Route.js";
3
- import type { HTTPMethod } from "./constants.js";
1
+ import { Route } from "../Route.js";
2
+ import type { HTTPMethod } from "../constants.js";
3
+ import type { RouteHandler, RouteMatchCallback } from "../types.js";
4
4
  /**
5
5
  * Parses a `RegExp`, string, or function with a caching strategy into a `Route`. This is for
6
6
  * when you want to create a `Route`, but you don't want to register it just yet: sometimes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseRoute.d.ts","sourceRoot":"","sources":["../../src/utils/parseRoute.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIpE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,YAAa,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,YAAY,YAAY,WAAW,UAAU,KAAG,KAyD/H,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "serwist",
3
- "version": "9.0.0-preview.24",
3
+ "version": "9.0.0-preview.26",
4
4
  "type": "module",
5
5
  "description": "A Swiss Army knife for service workers.",
6
6
  "files": [
@@ -15,24 +15,18 @@
15
15
  ],
16
16
  "author": "Google's Web DevRel Team, Serwist's Team",
17
17
  "license": "MIT",
18
- "repository": "https://gitlab.com/serwist/serwist",
19
- "bugs": "https://gitlab.com/serwist/serwist/issues",
18
+ "repository": "https://github.com/serwist/serwist",
19
+ "bugs": "https://github.com/serwist/serwist/issues",
20
20
  "homepage": "https://serwist.pages.dev",
21
21
  "main": "./dist/index.js",
22
22
  "types": "./dist/index.d.ts",
23
23
  "typesVersions": {
24
24
  "*": {
25
- "plugins": [
26
- "./dist/index.plugins.d.ts"
27
- ],
28
25
  "legacy": [
29
26
  "./dist/index.legacy.d.ts"
30
27
  ],
31
28
  "internal": [
32
29
  "./dist/index.internal.d.ts"
33
- ],
34
- "strategies": [
35
- "./dist/index.strategies.d.ts"
36
30
  ]
37
31
  }
38
32
  },
@@ -41,10 +35,6 @@
41
35
  "types": "./dist/index.d.ts",
42
36
  "default": "./dist/index.js"
43
37
  },
44
- "./plugins": {
45
- "types": "./dist/index.plugins.d.ts",
46
- "default": "./dist/index.plugins.js"
47
- },
48
38
  "./legacy": {
49
39
  "types": "./dist/index.legacy.d.ts",
50
40
  "default": "./dist/index.legacy.js"
@@ -53,20 +43,16 @@
53
43
  "types": "./dist/index.internal.d.ts",
54
44
  "default": "./dist/index.internal.js"
55
45
  },
56
- "./strategies": {
57
- "types": "./dist/index.strategies.d.ts",
58
- "default": "./dist/index.strategies.js"
59
- },
60
46
  "./package.json": "./package.json"
61
47
  },
62
48
  "dependencies": {
63
49
  "idb": "8.0.0"
64
50
  },
65
51
  "devDependencies": {
66
- "rollup": "4.14.0",
67
- "typescript": "5.5.0-dev.20240404",
68
- "@serwist/constants": "9.0.0-preview.24",
69
- "@serwist/utils": "9.0.0-preview.24"
52
+ "rollup": "4.14.3",
53
+ "typescript": "5.5.0-dev.20240415",
54
+ "@serwist/configs": "9.0.0-preview.26",
55
+ "@serwist/utils": "9.0.0-preview.26"
70
56
  },
71
57
  "peerDependencies": {
72
58
  "typescript": ">=5.0.0"
@@ -6,10 +6,10 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
+ import { Route } from "./Route.js";
9
10
  import type { RouteHandler, RouteMatchCallbackOptions } from "./types.js";
10
11
  import { assert } from "./utils/assert.js";
11
12
  import { logger } from "./utils/logger.js";
12
- import { Route } from "./Route.js";
13
13
 
14
14
  export interface NavigationRouteMatchOptions {
15
15
  /**
@@ -27,10 +27,9 @@ export interface NavigationRouteMatchOptions {
27
27
  }
28
28
 
29
29
  /**
30
- * NavigationRoute makes it easy to create a `Route` that matches for browser
31
- * [navigation requests](https://developers.google.com/web/fundamentals/primers/service-workers/high-performance-loading#first_what_are_navigation_requests).
30
+ * `NavigationRoute` makes it easy to create a `Route` object that matches navigation requests.
32
31
  *
33
- * It will only match incoming Requests whose [mode](https://fetch.spec.whatwg.org/#concept-request-mode) is set to `navigate`.
32
+ * It will only match incoming Requests whose [`mode`](https://fetch.spec.whatwg.org/#concept-request-mode) is set to `"navigate"`.
34
33
  *
35
34
  * You can optionally only apply this route to a subset of navigation requests
36
35
  * by using one or both of the `denylist` and `allowlist` parameters.
@@ -40,8 +39,8 @@ export class NavigationRoute extends Route {
40
39
  private readonly _denylist: RegExp[];
41
40
 
42
41
  /**
43
- * If both `denylist` and `allowlist` are provided, the `denylist` will
44
- * take precedence and the request will not match this route.
42
+ * If both `denylist` and `allowlist` are provided, `denylist` will
43
+ * take precedence.
45
44
  *
46
45
  * The regular expressions in `allowlist` and `denylist`
47
46
  * are matched against the concatenated
@@ -54,7 +53,7 @@ export class NavigationRoute extends Route {
54
53
  * [complex RegExps](https://github.com/GoogleChrome/workbox/issues/3077),
55
54
  * or else your users may see delays when navigating your site.
56
55
  *
57
- * @param handler A callback function that returns a Promise resulting in a Response.
56
+ * @param handler A callback function that returns a `Promise` resulting in a `Response`.
58
57
  * @param options
59
58
  */
60
59
  constructor(handler: RouteHandler, { allowlist = [/./], denylist = [] }: NavigationRouteMatchOptions = {}) {
@@ -6,13 +6,13 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
- import type { RouteMatchCallback, RouteMatchCallbackOptions } from "./types.js";
10
- import { getFriendlyURL } from "./utils/getFriendlyURL.js";
11
- import { logger } from "./utils/logger.js";
12
9
  import { Route } from "./Route.js";
13
10
  import type { Serwist } from "./Serwist.js";
11
+ import type { RouteMatchCallback, RouteMatchCallbackOptions } from "./types.js";
14
12
  import type { PrecacheRouteOptions } from "./types.js";
15
13
  import { generateURLVariations } from "./utils/generateURLVariations.js";
14
+ import { getFriendlyURL } from "./utils/getFriendlyURL.js";
15
+ import { logger } from "./utils/logger.js";
16
16
 
17
17
  /**
18
18
  * A subclass of `Route` that takes a `serwist.Serwist` instance and uses it to match
@@ -20,8 +20,8 @@ import { generateURLVariations } from "./utils/generateURLVariations.js";
20
20
  */
21
21
  export class PrecacheRoute extends Route {
22
22
  /**
23
- * @param serwist A `PrecacheController`
24
- * instance used to both match requests and respond to fetch events.
23
+ * @param serwist A `Serwist` instance used to both match requests
24
+ * and respond to fetch events.
25
25
  * @param options Options to control how requests are matched
26
26
  * against the list of precached URLs.
27
27
  */
@@ -6,14 +6,14 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
+ import { Route } from "./Route.js";
10
+ import type { HTTPMethod } from "./constants.js";
9
11
  import type { RouteHandler, RouteMatchCallback, RouteMatchCallbackOptions } from "./types.js";
10
12
  import { assert } from "./utils/assert.js";
11
13
  import { logger } from "./utils/logger.js";
12
- import { Route } from "./Route.js";
13
- import type { HTTPMethod } from "./constants.js";
14
14
 
15
15
  /**
16
- * `RegExpRoute` makes it easy to create a regular expression based on a `Route`.
16
+ * `RegExpRoute` makes it easy to create a `Route` object with a regular expression.
17
17
  *
18
18
  * For same-origin requests the `RegExp` only needs to match part of the URL. For
19
19
  * requests against third-party servers, you must define a `RegExp` that matches
@@ -26,8 +26,8 @@ export class RegExpRoute extends Route {
26
26
  * the captured values will be passed to the `params` argument.
27
27
  *
28
28
  * @param regExp The regular expression to match against URLs.
29
- * @param handler A callback function that returns a Promise resulting in a Response.
30
- * @param method The HTTP method to match the Route, defaults to GET.
29
+ * @param handler A callback function that returns a `Promise` resulting in a `Response`.
30
+ * @param method The HTTP method to match the route against. Defaults to `GET`.
31
31
  * against.
32
32
  */
33
33
  constructor(regExp: RegExp, handler: RouteHandler, method?: HTTPMethod) {
package/src/Route.ts CHANGED
@@ -6,17 +6,17 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
- import type { RouteHandler, RouteHandlerObject, RouteMatchCallback } from "./types.js";
10
- import { assert } from "./utils/assert.js";
11
9
  import type { HTTPMethod } from "./constants.js";
12
10
  import { defaultMethod, validMethods } from "./constants.js";
11
+ import type { RouteHandler, RouteHandlerObject, RouteMatchCallback } from "./types.js";
12
+ import { assert } from "./utils/assert.js";
13
13
  import { normalizeHandler } from "./utils/normalizeHandler.js";
14
14
 
15
15
  /**
16
- * A `Route` consists of a pair of callback functions, "match" and "handler".
17
- * The "match" callback determine if a route should be used to "handle" a
18
- * request by returning a non-falsy value if it can. The "handler" callback
19
- * is called when there is a match and should return a Promise that resolves
16
+ * A `Route` consists of a pair of callback functions, `match and `handler.
17
+ * The `match` callback determines if a route should be used to handle a
18
+ * request by returning a truthy value if it can. The `handler callback
19
+ * is called when the route matches and should return a `Promise` that resolves
20
20
  * to a `Response`.
21
21
  */
22
22
  export class Route {
@@ -29,11 +29,11 @@ export class Route {
29
29
  * Constructor for Route class.
30
30
  *
31
31
  * @param match A callback function that determines whether the
32
- * route matches a given `fetch` event by returning a non-falsy value.
33
- * @param handler A callback function that returns a Promise resolving
34
- * to a Response.
35
- * @param method The HTTP method to match the Route against. Defaults
36
- * to GET.
32
+ * route matches a given `fetch` event by returning a truthy value.
33
+ * @param handler A callback function that returns a `Promise` resolving
34
+ * to a `Response`.
35
+ * @param method The HTTP method to match the route against. Defaults
36
+ * to `GET`.
37
37
  */
38
38
  constructor(match: RouteMatchCallback, handler: RouteHandler, method: HTTPMethod = defaultMethod) {
39
39
  if (process.env.NODE_ENV !== "production") {