serwist 10.0.0-preview.8 → 10.0.0-preview.9

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 (261) hide show
  1. package/dist/chunks/waitUntil.js +129 -129
  2. package/dist/index.d.ts +19 -21
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.internal.d.ts +2 -2
  5. package/dist/index.internal.d.ts.map +1 -1
  6. package/dist/index.internal.js +3 -3
  7. package/dist/index.js +2026 -1917
  8. package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncPlugin.d.ts +1 -1
  9. package/dist/lib/background-sync/BackgroundSyncPlugin.d.ts.map +1 -0
  10. package/dist/lib/background-sync/BackgroundSyncQueue.d.ts.map +1 -0
  11. package/dist/lib/background-sync/BackgroundSyncQueueDb.d.ts.map +1 -0
  12. package/dist/lib/background-sync/BackgroundSyncQueueStore.d.ts.map +1 -0
  13. package/dist/lib/{backgroundSync → background-sync}/StorableRequest.d.ts +1 -1
  14. package/dist/lib/background-sync/StorableRequest.d.ts.map +1 -0
  15. package/dist/lib/background-sync/index.d.ts.map +1 -0
  16. package/dist/lib/{broadcastUpdate → broadcast-update}/BroadcastCacheUpdate.d.ts +1 -1
  17. package/dist/lib/broadcast-update/BroadcastCacheUpdate.d.ts.map +1 -0
  18. package/dist/lib/{broadcastUpdate → broadcast-update}/BroadcastUpdatePlugin.d.ts +1 -1
  19. package/dist/lib/broadcast-update/BroadcastUpdatePlugin.d.ts.map +1 -0
  20. package/dist/lib/broadcast-update/constants.d.ts.map +1 -0
  21. package/dist/lib/broadcast-update/index.d.ts.map +1 -0
  22. package/dist/lib/broadcast-update/responsesAreSame.d.ts.map +1 -0
  23. package/dist/lib/{broadcastUpdate → broadcast-update}/types.d.ts +1 -1
  24. package/dist/lib/broadcast-update/types.d.ts.map +1 -0
  25. package/dist/{cacheNames.d.ts → lib/cache-name.d.ts} +1 -1
  26. package/dist/lib/cache-name.d.ts.map +1 -0
  27. package/dist/lib/cacheable-response/CacheableResponse.d.ts.map +1 -0
  28. package/dist/lib/{cacheableResponse → cacheable-response}/CacheableResponsePlugin.d.ts +1 -1
  29. package/dist/lib/cacheable-response/CacheableResponsePlugin.d.ts.map +1 -0
  30. package/dist/lib/{cacheableResponse → cacheable-response}/index.d.ts +1 -1
  31. package/dist/lib/cacheable-response/index.d.ts.map +1 -0
  32. package/dist/{constants.d.ts → lib/constants.d.ts} +1 -1
  33. package/dist/lib/constants.d.ts.map +1 -0
  34. package/dist/lib/core.d.ts +62 -0
  35. package/dist/lib/core.d.ts.map +1 -0
  36. package/dist/lib/expiration/ExpirationPlugin.d.ts +1 -1
  37. package/dist/lib/expiration/ExpirationPlugin.d.ts.map +1 -1
  38. package/dist/lib/extension.d.ts +30 -0
  39. package/dist/lib/extension.d.ts.map +1 -0
  40. package/dist/lib/extensions/google-analytics/constants.d.ts.map +1 -0
  41. package/dist/lib/extensions/google-analytics/extension.d.ts +79 -0
  42. package/dist/lib/extensions/google-analytics/extension.d.ts.map +1 -0
  43. package/dist/lib/extensions/google-analytics/index.d.ts +2 -0
  44. package/dist/lib/extensions/google-analytics/index.d.ts.map +1 -0
  45. package/dist/lib/extensions/google-analytics/initialize.d.ts +12 -0
  46. package/dist/lib/extensions/google-analytics/initialize.d.ts.map +1 -0
  47. package/dist/lib/extensions/index.d.ts +14 -0
  48. package/dist/lib/extensions/index.d.ts.map +1 -0
  49. package/dist/lib/{controllers/PrecacheController/PrecacheController.d.ts → extensions/precache/extension.d.ts} +11 -34
  50. package/dist/lib/extensions/precache/extension.d.ts.map +1 -0
  51. package/dist/lib/extensions/precache/options.d.ts +26 -0
  52. package/dist/lib/extensions/precache/options.d.ts.map +1 -0
  53. package/dist/lib/{controllers/PrecacheController/PrecacheCacheKeyPlugin.d.ts → extensions/precache/plugin-cache-key.d.ts} +4 -4
  54. package/dist/lib/extensions/precache/plugin-cache-key.d.ts.map +1 -0
  55. package/dist/lib/{precaching/PrecacheFallbackPlugin.d.ts → extensions/precache/plugin-fallback.d.ts} +7 -12
  56. package/dist/lib/extensions/precache/plugin-fallback.d.ts.map +1 -0
  57. package/dist/lib/{controllers/PrecacheController/PrecacheInstallReportPlugin.d.ts → extensions/precache/plugin-install-report.d.ts} +2 -2
  58. package/dist/lib/extensions/precache/plugin-install-report.d.ts.map +1 -0
  59. package/dist/lib/extensions/precache/route.d.ts +42 -0
  60. package/dist/lib/extensions/precache/route.d.ts.map +1 -0
  61. package/dist/lib/{controllers/PrecacheController/PrecacheStrategy.d.ts → extensions/precache/strategy.d.ts} +2 -2
  62. package/dist/lib/extensions/precache/strategy.d.ts.map +1 -0
  63. package/dist/lib/{controllers/RuntimeCacheController.d.ts → extensions/runtime-cache.d.ts} +9 -8
  64. package/dist/lib/extensions/runtime-cache.d.ts.map +1 -0
  65. package/dist/lib/functions/handlers.d.ts +60 -0
  66. package/dist/lib/functions/handlers.d.ts.map +1 -0
  67. package/dist/lib/functions/router.d.ts +60 -0
  68. package/dist/lib/functions/router.d.ts.map +1 -0
  69. package/dist/{navigationPreload.d.ts → lib/navigation-preload.d.ts} +1 -1
  70. package/dist/lib/navigation-preload.d.ts.map +1 -0
  71. package/dist/lib/{rangeRequests → range-requests}/RangeRequestsPlugin.d.ts +1 -1
  72. package/dist/lib/range-requests/RangeRequestsPlugin.d.ts.map +1 -0
  73. package/dist/lib/range-requests/createPartialResponse.d.ts.map +1 -0
  74. package/dist/lib/{rangeRequests → range-requests}/index.d.ts +1 -1
  75. package/dist/lib/range-requests/index.d.ts.map +1 -0
  76. package/dist/lib/range-requests/utils/calculateEffectiveBoundaries.d.ts.map +1 -0
  77. package/dist/lib/range-requests/utils/parseRangeHeader.d.ts.map +1 -0
  78. package/dist/lib/route.d.ts +106 -0
  79. package/dist/lib/route.d.ts.map +1 -0
  80. package/dist/{Serwist.d.ts → lib/serwist.d.ts} +27 -40
  81. package/dist/lib/serwist.d.ts.map +1 -0
  82. package/dist/lib/strategies/NetworkFirst.d.ts.map +1 -1
  83. package/dist/lib/strategies/StaleWhileRevalidate.d.ts.map +1 -1
  84. package/dist/lib/strategies/Strategy.d.ts +1 -1
  85. package/dist/lib/strategies/Strategy.d.ts.map +1 -1
  86. package/dist/lib/strategies/StrategyHandler.d.ts +1 -1
  87. package/dist/lib/strategies/StrategyHandler.d.ts.map +1 -1
  88. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +1 -1
  89. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +1 -1
  90. package/dist/{types.d.ts → lib/types.d.ts} +15 -43
  91. package/dist/lib/types.d.ts.map +1 -0
  92. package/dist/{copyResponse.d.ts → lib/utils.d.ts} +22 -1
  93. package/dist/lib/utils.d.ts.map +1 -0
  94. package/dist/models/messages/messageGenerator.d.ts +1 -1
  95. package/dist/models/messages/messageGenerator.d.ts.map +1 -1
  96. package/dist/utils/SerwistError.d.ts +1 -1
  97. package/dist/utils/SerwistError.d.ts.map +1 -1
  98. package/dist/utils/assert.d.ts +1 -1
  99. package/dist/utils/assert.d.ts.map +1 -1
  100. package/dist/utils/cacheNames.d.ts.map +1 -1
  101. package/dist/utils/createCacheKey.d.ts +1 -1
  102. package/dist/utils/createCacheKey.d.ts.map +1 -1
  103. package/dist/utils/generateURLVariations.d.ts +1 -1
  104. package/dist/utils/generateURLVariations.d.ts.map +1 -1
  105. package/dist/utils/logger.d.ts +1 -1
  106. package/dist/utils/logger.d.ts.map +1 -1
  107. package/dist/utils/normalizeHandler.d.ts +1 -1
  108. package/dist/utils/normalizeHandler.d.ts.map +1 -1
  109. package/dist/utils/parseRoute.d.ts +3 -3
  110. package/dist/utils/parseRoute.d.ts.map +1 -1
  111. package/dist/utils/pluginUtils.d.ts +1 -1
  112. package/dist/utils/pluginUtils.d.ts.map +1 -1
  113. package/package.json +5 -5
  114. package/src/index.internal.ts +2 -2
  115. package/src/index.ts +51 -33
  116. package/src/lib/{backgroundSync → background-sync}/BackgroundSyncPlugin.ts +1 -1
  117. package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueue.ts +4 -4
  118. package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueueDb.ts +1 -1
  119. package/src/lib/{backgroundSync → background-sync}/BackgroundSyncQueueStore.ts +0 -2
  120. package/src/lib/{backgroundSync → background-sync}/StorableRequest.ts +1 -1
  121. package/src/lib/{broadcastUpdate → broadcast-update}/BroadcastCacheUpdate.ts +1 -1
  122. package/src/lib/{broadcastUpdate → broadcast-update}/BroadcastUpdatePlugin.ts +1 -1
  123. package/src/lib/{broadcastUpdate → broadcast-update}/types.ts +1 -1
  124. package/src/lib/{cacheableResponse → cacheable-response}/CacheableResponsePlugin.ts +1 -1
  125. package/src/lib/core.ts +128 -0
  126. package/src/lib/expiration/CacheExpiration.ts +1 -1
  127. package/src/lib/expiration/ExpirationPlugin.ts +4 -5
  128. package/src/lib/extension.ts +37 -0
  129. package/src/lib/{googleAnalytics/initializeGoogleAnalytics.ts → extensions/google-analytics/extension.ts} +40 -46
  130. package/src/lib/extensions/google-analytics/index.ts +0 -0
  131. package/src/lib/extensions/google-analytics/initialize.ts +48 -0
  132. package/src/lib/extensions/index.ts +13 -0
  133. package/src/lib/{controllers/PrecacheController/PrecacheController.ts → extensions/precache/extension.ts} +23 -45
  134. package/src/lib/{controllers/PrecacheController/parsePrecacheOptions.ts → extensions/precache/options.ts} +11 -8
  135. package/src/lib/{controllers/PrecacheController/PrecacheCacheKeyPlugin.ts → extensions/precache/plugin-cache-key.ts} +4 -4
  136. package/src/lib/{precaching/PrecacheFallbackPlugin.ts → extensions/precache/plugin-fallback.ts} +22 -21
  137. package/src/lib/{controllers/PrecacheController/PrecacheInstallReportPlugin.ts → extensions/precache/plugin-install-report.ts} +1 -1
  138. package/src/lib/extensions/precache/route.ts +72 -0
  139. package/src/lib/{controllers/PrecacheController/PrecacheStrategy.ts → extensions/precache/strategy.ts} +5 -5
  140. package/src/lib/{controllers/RuntimeCacheController.ts → extensions/runtime-cache.ts} +21 -14
  141. package/src/lib/functions/handlers.ts +149 -0
  142. package/src/lib/functions/router.ts +314 -0
  143. package/src/lib/{rangeRequests → range-requests}/RangeRequestsPlugin.ts +1 -1
  144. package/src/lib/route.ts +234 -0
  145. package/src/lib/serwist.ts +443 -0
  146. package/src/lib/strategies/CacheFirst.ts +2 -2
  147. package/src/lib/strategies/CacheOnly.ts +1 -1
  148. package/src/lib/strategies/NetworkFirst.ts +4 -4
  149. package/src/lib/strategies/NetworkOnly.ts +2 -2
  150. package/src/lib/strategies/StaleWhileRevalidate.ts +3 -3
  151. package/src/lib/strategies/Strategy.ts +6 -6
  152. package/src/lib/strategies/StrategyHandler.ts +5 -5
  153. package/src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts +1 -1
  154. package/src/{types.ts → lib/types.ts} +17 -57
  155. package/src/{copyResponse.ts → lib/utils.ts} +81 -2
  156. package/src/models/messages/messageGenerator.ts +1 -1
  157. package/src/utils/SerwistError.ts +1 -1
  158. package/src/utils/assert.ts +1 -2
  159. package/src/utils/cacheNames.ts +0 -2
  160. package/src/utils/canConstructReadableStream.ts +1 -1
  161. package/src/utils/canConstructResponseFromBodyStream.ts +1 -1
  162. package/src/utils/createCacheKey.ts +1 -2
  163. package/src/utils/generateURLVariations.ts +1 -1
  164. package/src/utils/normalizeHandler.ts +1 -1
  165. package/src/utils/parseRoute.ts +4 -5
  166. package/src/utils/pluginUtils.ts +1 -1
  167. package/src/utils/resultingClientExists.ts +1 -1
  168. package/dist/NavigationRoute.d.ts +0 -56
  169. package/dist/NavigationRoute.d.ts.map +0 -1
  170. package/dist/RegExpRoute.d.ts +0 -24
  171. package/dist/RegExpRoute.d.ts.map +0 -1
  172. package/dist/Route.d.ts +0 -33
  173. package/dist/Route.d.ts.map +0 -1
  174. package/dist/Serwist.d.ts.map +0 -1
  175. package/dist/cacheNames.d.ts.map +0 -1
  176. package/dist/constants.d.ts.map +0 -1
  177. package/dist/copyResponse.d.ts.map +0 -1
  178. package/dist/disableDevLogs.d.ts +0 -7
  179. package/dist/disableDevLogs.d.ts.map +0 -1
  180. package/dist/lib/backgroundSync/BackgroundSyncPlugin.d.ts.map +0 -1
  181. package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts.map +0 -1
  182. package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts.map +0 -1
  183. package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts.map +0 -1
  184. package/dist/lib/backgroundSync/StorableRequest.d.ts.map +0 -1
  185. package/dist/lib/backgroundSync/index.d.ts.map +0 -1
  186. package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +0 -1
  187. package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +0 -1
  188. package/dist/lib/broadcastUpdate/constants.d.ts.map +0 -1
  189. package/dist/lib/broadcastUpdate/index.d.ts.map +0 -1
  190. package/dist/lib/broadcastUpdate/responsesAreSame.d.ts.map +0 -1
  191. package/dist/lib/broadcastUpdate/types.d.ts.map +0 -1
  192. package/dist/lib/cacheableResponse/CacheableResponse.d.ts.map +0 -1
  193. package/dist/lib/cacheableResponse/CacheableResponsePlugin.d.ts.map +0 -1
  194. package/dist/lib/cacheableResponse/index.d.ts.map +0 -1
  195. package/dist/lib/controllers/PrecacheController/PrecacheCacheKeyPlugin.d.ts.map +0 -1
  196. package/dist/lib/controllers/PrecacheController/PrecacheController.d.ts.map +0 -1
  197. package/dist/lib/controllers/PrecacheController/PrecacheInstallReportPlugin.d.ts.map +0 -1
  198. package/dist/lib/controllers/PrecacheController/PrecacheRoute.d.ts +0 -15
  199. package/dist/lib/controllers/PrecacheController/PrecacheRoute.d.ts.map +0 -1
  200. package/dist/lib/controllers/PrecacheController/PrecacheStrategy.d.ts.map +0 -1
  201. package/dist/lib/controllers/PrecacheController/parsePrecacheOptions.d.ts +0 -25
  202. package/dist/lib/controllers/PrecacheController/parsePrecacheOptions.d.ts.map +0 -1
  203. package/dist/lib/controllers/RuntimeCacheController.d.ts.map +0 -1
  204. package/dist/lib/controllers/index.d.ts +0 -4
  205. package/dist/lib/controllers/index.d.ts.map +0 -1
  206. package/dist/lib/googleAnalytics/constants.d.ts.map +0 -1
  207. package/dist/lib/googleAnalytics/index.d.ts +0 -3
  208. package/dist/lib/googleAnalytics/index.d.ts.map +0 -1
  209. package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts +0 -30
  210. package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts.map +0 -1
  211. package/dist/lib/precaching/PrecacheFallbackPlugin.d.ts.map +0 -1
  212. package/dist/lib/precaching/index.d.ts +0 -3
  213. package/dist/lib/precaching/index.d.ts.map +0 -1
  214. package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts.map +0 -1
  215. package/dist/lib/rangeRequests/createPartialResponse.d.ts.map +0 -1
  216. package/dist/lib/rangeRequests/index.d.ts.map +0 -1
  217. package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +0 -1
  218. package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts.map +0 -1
  219. package/dist/navigationPreload.d.ts.map +0 -1
  220. package/dist/registerQuotaErrorCallback.d.ts +0 -8
  221. package/dist/registerQuotaErrorCallback.d.ts.map +0 -1
  222. package/dist/setCacheNameDetails.d.ts +0 -9
  223. package/dist/setCacheNameDetails.d.ts.map +0 -1
  224. package/dist/types.d.ts.map +0 -1
  225. package/src/NavigationRoute.ts +0 -118
  226. package/src/RegExpRoute.ts +0 -74
  227. package/src/Route.ts +0 -67
  228. package/src/Serwist.ts +0 -766
  229. package/src/disableDevLogs.ts +0 -10
  230. package/src/lib/controllers/PrecacheController/PrecacheRoute.ts +0 -44
  231. package/src/lib/controllers/index.ts +0 -3
  232. package/src/lib/googleAnalytics/index.ts +0 -2
  233. package/src/lib/precaching/index.ts +0 -2
  234. package/src/registerQuotaErrorCallback.ts +0 -34
  235. package/src/setCacheNameDetails.ts +0 -53
  236. package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueue.d.ts +0 -0
  237. package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueueDb.d.ts +0 -0
  238. package/dist/lib/{backgroundSync → background-sync}/BackgroundSyncQueueStore.d.ts +0 -0
  239. package/dist/lib/{backgroundSync → background-sync}/index.d.ts +0 -0
  240. package/dist/lib/{broadcastUpdate → broadcast-update}/constants.d.ts +0 -0
  241. package/dist/lib/{broadcastUpdate → broadcast-update}/index.d.ts +0 -0
  242. package/dist/lib/{broadcastUpdate → broadcast-update}/responsesAreSame.d.ts +0 -0
  243. package/dist/lib/{cacheableResponse → cacheable-response}/CacheableResponse.d.ts +0 -0
  244. package/dist/lib/{googleAnalytics → extensions/google-analytics}/constants.d.ts +0 -0
  245. package/dist/lib/{rangeRequests → range-requests}/createPartialResponse.d.ts +0 -0
  246. package/dist/lib/{rangeRequests → range-requests}/utils/calculateEffectiveBoundaries.d.ts +0 -0
  247. package/dist/lib/{rangeRequests → range-requests}/utils/parseRangeHeader.d.ts +0 -0
  248. package/src/lib/{backgroundSync → background-sync}/index.ts +0 -0
  249. package/src/lib/{broadcastUpdate → broadcast-update}/constants.ts +0 -0
  250. package/src/lib/{broadcastUpdate → broadcast-update}/index.ts +0 -0
  251. package/src/lib/{broadcastUpdate → broadcast-update}/responsesAreSame.ts +1 -1
  252. package/src/{cacheNames.ts → lib/cache-name.ts} +0 -0
  253. package/src/lib/{cacheableResponse → cacheable-response}/CacheableResponse.ts +1 -1
  254. package/src/lib/{cacheableResponse → cacheable-response}/index.ts +1 -1
  255. package/src/{constants.ts → lib/constants.ts} +0 -0
  256. package/src/lib/{googleAnalytics → extensions/google-analytics}/constants.ts +0 -0
  257. package/src/{navigationPreload.ts → lib/navigation-preload.ts} +0 -0
  258. package/src/lib/{rangeRequests → range-requests}/createPartialResponse.ts +1 -1
  259. package/src/lib/{rangeRequests → range-requests}/index.ts +1 -1
  260. package/src/lib/{rangeRequests → range-requests}/utils/calculateEffectiveBoundaries.ts +1 -1
  261. package/src/lib/{rangeRequests → range-requests}/utils/parseRangeHeader.ts +1 -1
@@ -0,0 +1,42 @@
1
+ import { Route } from "../../route.js";
2
+ import type { UrlManipulation } from "../../types.js";
3
+ import type { Precache } from "./extension.js";
4
+ export interface PrecacheRouteOptions {
5
+ /**
6
+ * Tells Serwist to check the precache for an entry whose URL is the request URL appended
7
+ * with the specified value. Only applies if the request URL ends with "/".
8
+ *
9
+ * @default "index.html"
10
+ */
11
+ directoryIndex?: string | null;
12
+ /**
13
+ * An array of `RegExp` objects matching search params that should be removed when looking
14
+ * for a precache match.
15
+ */
16
+ ignoreURLParametersMatching?: RegExp[];
17
+ /**
18
+ * Tells Serwist to check the precache for an entry whose URL is the request URL appended
19
+ * with ".html".
20
+ *
21
+ * @default true
22
+ */
23
+ cleanURLs?: boolean;
24
+ /**
25
+ * A function that should take a URL and return an array of alternative URLs that should
26
+ * be checked for precache matches.
27
+ */
28
+ urlManipulation?: UrlManipulation;
29
+ }
30
+ /**
31
+ * A subclass of {@linkcode Route} that takes a {@linkcode Serwist} instance and uses it to match
32
+ * incoming requests and handle fetching responses from the precache.
33
+ */
34
+ export declare class PrecacheRoute extends Route {
35
+ /**
36
+ * @param precache A {@linkcode Precache} instance.
37
+ * @param options Options to control how requests are matched
38
+ * against the list of precached URLs.
39
+ */
40
+ constructor(precache: Precache, options?: PrecacheRouteOptions);
41
+ }
42
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/lib/extensions/precache/route.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,EAAiD,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACrG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,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;;;GAGG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC;;;;OAIG;gBACS,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,oBAAoB;CAkB/D"}
@@ -1,4 +1,4 @@
1
- import type { StrategyPlugin } from "../../../types.js";
1
+ import type { StrategyPlugin } from "#lib/types.js";
2
2
  import type { StrategyOptions } from "../../strategies/Strategy.js";
3
3
  import { Strategy } from "../../strategies/Strategy.js";
4
4
  import type { StrategyHandler } from "../../strategies/StrategyHandler.js";
@@ -66,4 +66,4 @@ export declare class PrecacheStrategy extends Strategy {
66
66
  */
67
67
  _useDefaultCacheabilityPluginIfNeeded(): void;
68
68
  }
69
- //# sourceMappingURL=PrecacheStrategy.d.ts.map
69
+ //# sourceMappingURL=strategy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../../src/lib/extensions/precache/strategy.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAMpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D;;OAEG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAE7C,MAAM,CAAC,QAAQ,CAAC,iCAAiC,EAAE,cAAc,CAQ/D;IAEF,MAAM,CAAC,QAAQ,CAAC,sCAAsC,EAAE,cAAc,CAIpE;IAEF;;OAEG;gBACS,OAAO,GAAE,uBAA4B;IAcjD;;;;;OAKG;IACG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAwBtE,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAyE3E,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAqBnF;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,qCAAqC,IAAI,IAAI;CA4B9C"}
@@ -1,6 +1,7 @@
1
- import type { Serwist } from "../../Serwist.js";
2
- import type { Controller, RuntimeCaching } from "../../types.js";
3
- import { type PrecacheFallbackEntry } from "../precaching/PrecacheFallbackPlugin.js";
1
+ import type { Serwist } from "#lib/core.js";
2
+ import type { Extension } from "#lib/extension.js";
3
+ import type { RuntimeCaching } from "../types.js";
4
+ import { type PrecacheFallbackEntry } from "./precache/plugin-fallback.js";
4
5
  export interface WarmRuntimeCacheEntry {
5
6
  integrity?: string;
6
7
  url: string;
@@ -16,7 +17,7 @@ export interface FallbacksOptions {
16
17
  */
17
18
  entries: FallbackEntry[];
18
19
  }
19
- export interface RuntimeCacheControllerOptions {
20
+ export interface RuntimeCacheOptions {
20
21
  /**
21
22
  * URLs that should be cached as the service worker is installed.
22
23
  */
@@ -34,10 +35,10 @@ export interface RuntimeCacheControllerOptions {
34
35
  */
35
36
  fallbacks?: FallbacksOptions;
36
37
  }
37
- export declare class RuntimeCacheController implements Controller {
38
+ export declare class RuntimeCache implements Extension {
38
39
  _entries: RuntimeCaching[];
39
- _options: RuntimeCacheControllerOptions;
40
- constructor(entries: RuntimeCaching[], options?: RuntimeCacheControllerOptions);
40
+ _options: RuntimeCacheOptions;
41
+ constructor(entries: RuntimeCaching[], options?: RuntimeCacheOptions);
41
42
  init({ serwist }: {
42
43
  serwist: Serwist;
43
44
  }): void;
@@ -67,4 +68,4 @@ export declare class RuntimeCacheController implements Controller {
67
68
  */
68
69
  warmRuntimeCache(entries: (WarmRuntimeCacheEntry | string | Request)[]): void;
69
70
  }
70
- //# sourceMappingURL=RuntimeCacheController.d.ts.map
71
+ //# sourceMappingURL=runtime-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-cache.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/runtime-cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,KAAK,qBAAqB,EAA0B,MAAM,+BAA+B,CAAC;AAEnG,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAc,SAAQ,qBAAqB;CAAG;AAE/D,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;IAC3D;;OAEG;IACH,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,qBAAa,YAAa,YAAW,SAAS;IAC5C,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,QAAQ,EAAE,mBAAmB,CAAC;gBAClB,OAAO,EAAE,cAAc,EAAE,EAAE,OAAO,GAAE,mBAAwB;IAOxE,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAsBvC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAAE,KAAK,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAwB9E;;;;;;;;;;;;;;;;;;;OAmBG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,IAAI;CAI9E"}
@@ -0,0 +1,60 @@
1
+ import { type HTTPMethod } from "#lib/constants.js";
2
+ import type { Extension } from "#lib/extension.js";
3
+ import type { RouteHandler } from "#lib/types.js";
4
+ import type { Serwist } from "../core.js";
5
+ export type RequestArgs = string | [string, RequestInit?];
6
+ export interface CacheURLsMessageData {
7
+ type: string;
8
+ payload: {
9
+ urlsToCache: RequestArgs[];
10
+ };
11
+ }
12
+ /**
13
+ * Adds Serwist's event listeners. Before calling it, add your own listeners should you need to.
14
+ */
15
+ export declare const addEventListeners: (state: Serwist) => void;
16
+ export declare const createInstallHandler: (state: Serwist) => (event: ExtendableEvent) => Promise<void>;
17
+ export declare const createActivateHandler: (state: Serwist) => (event: ExtendableEvent) => Promise<void>;
18
+ /**
19
+ * Gets a `Response` from an appropriate `Route`'s handler. Call this method
20
+ * from the service worker's `fetch` event.
21
+ * @param event
22
+ */
23
+ export declare const createFetchHandler: (state: Serwist) => (event: FetchEvent) => void;
24
+ /**
25
+ * Caches new URLs on demand. Call this method from the service worker's
26
+ * `message` event. To trigger the handler, send a message of type `"CACHE_URLS"`
27
+ * alongside a list of URLs that should be cached as `urlsToCache`.
28
+ * @param event
29
+ */
30
+ export declare const createCacheHandler: (state: Serwist) => (event: ExtendableMessageEvent) => void;
31
+ /**
32
+ * Define a default handler that's called when no routes explicitly
33
+ * match the incoming request.
34
+ *
35
+ * Each HTTP method (`'GET'`, `'POST'`, etc.) gets its own default handler.
36
+ *
37
+ * Without a default handler, unmatched requests will go against the
38
+ * network as if there were no service worker present.
39
+ *
40
+ * @param handler A callback function that returns a `Promise` resulting in a `Response`.
41
+ * @param method The HTTP method to associate with this default handler. Each method
42
+ * has its own default. Defaults to `'GET'`.
43
+ */
44
+ export declare const setDefaultHandler: (state: Serwist, handler: RouteHandler, method?: HTTPMethod) => void;
45
+ /**
46
+ * If a {@linkcode Route} throws an error while handling a request, this handler
47
+ * will be called and given a chance to provide a response.
48
+ *
49
+ * @param handler A callback function that returns a `Promise` resulting
50
+ * in a `Response`.
51
+ */
52
+ export declare const setCatchHandler: (state: Serwist, handler: RouteHandler) => void;
53
+ /**
54
+ * Accepts a callback name and returns an iterable of matching plugin callbacks.
55
+ *
56
+ * @param name The name fo the callback to run
57
+ * @returns
58
+ */
59
+ export declare function iterateExtensions<C extends keyof Extension>(state: Serwist, name: C): Generator<NonNullable<Extension[C]>>;
60
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/lib/functions/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAIlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK1C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,WAAW,EAAE,WAAW,EAAE,CAAC;KAC5B,CAAC;CACH;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,SAK/C,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,OAAO,OAAO,MACzC,OAAO,eAAe,KAAG,OAAO,CAAC,IAAI,CAO9C,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,OAAO,MAC1C,OAAO,eAAe,KAAG,OAAO,CAAC,IAAI,CAO9C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,OAAO,MACvC,OAAO,UAAU,SAO1B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,OAAO,MACvC,OAAO,sBAAsB,SA4BtC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,EAAE,SAAS,YAAY,EAAE,SAAQ,UAA0B,KAAG,IAE7G,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,EAAE,SAAS,YAAY,KAAG,IAEvE,CAAC;AAEF;;;;;GAKG;AACH,wBAAiB,iBAAiB,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAW3H"}
@@ -0,0 +1,60 @@
1
+ import type { HTTPMethod } from "../constants.js";
2
+ import type { Serwist } from "../core.js";
3
+ import type { Route } from "../route.js";
4
+ import type { RouteHandler, RouteHandlerCallbackOptions, RouteMatchCallback, RouteMatchCallbackOptions } from "../types.js";
5
+ /**
6
+ * Registers a `RegExp`, string, or function with a caching
7
+ * strategy to the router.
8
+ *
9
+ * @param capture If the capture param is a {@linkcode Route} object, all other arguments will be ignored.
10
+ * @param handler A callback function that returns a `Promise` resulting in a `Response`.
11
+ * This parameter is required if `capture` is not a {@linkcode Route} object.
12
+ * @param method The HTTP method to match the route against. Defaults to `'GET'`.
13
+ * @returns The generated {@linkcode Route} object.
14
+ */
15
+ export declare const registerCapture: <T extends RegExp | string | RouteMatchCallback | Route>(state: Serwist, capture: T, handler?: T extends Route ? never : RouteHandler, method?: T extends Route ? never : HTTPMethod) => Route;
16
+ /**
17
+ * Registers a {@linkcode Route} with the router.
18
+ *
19
+ * @param route The {@linkcode Route} to register.
20
+ */
21
+ export declare const registerRoute: (state: Serwist, route: Route) => void;
22
+ /**
23
+ * Unregisters a route from the router.
24
+ *
25
+ * @param route The {@linkcode Route} object to unregister.
26
+ */
27
+ export declare const unregisterRoute: (state: Serwist, route: Route) => void;
28
+ /**
29
+ * Applies the routing rules to a `FetchEvent` object to get a response from an
30
+ * appropriate route.
31
+ *
32
+ * @param options
33
+ * @returns A promise is returned if a registered route can handle the request.
34
+ * If there is no matching route and there's no default handler, `undefined`
35
+ * is returned.
36
+ */
37
+ export declare const handleRequest: (state: Serwist, { request, event, }: {
38
+ /**
39
+ * The request to handle.
40
+ */
41
+ request: Request;
42
+ /**
43
+ * The event that triggered the request.
44
+ */
45
+ event: ExtendableEvent;
46
+ }) => Promise<Response> | undefined;
47
+ /**
48
+ * Checks a request and URL (and optionally an event) against the list of
49
+ * registered routes, and if there's a match, returns the corresponding
50
+ * route along with any params generated by the match.
51
+ *
52
+ * @param options
53
+ * @returns An object with `route` and `params` properties. They are populated
54
+ * if a matching route was found or `undefined` otherwise.
55
+ */
56
+ export declare const findMatchingRoute: (state: Serwist, { url, sameOrigin, request, event }: RouteMatchCallbackOptions) => {
57
+ route?: Route;
58
+ params?: RouteHandlerCallbackOptions["params"];
59
+ };
60
+ //# sourceMappingURL=router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/lib/functions/router.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE5H;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,EACpF,OAAO,OAAO,EACd,SAAS,CAAC,EACV,UAAU,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,YAAY,EAChD,SAAS,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,UAAU,KAC5C,KAIF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,EAAE,OAAO,KAAK,KAAG,IA6C5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,EAAE,OAAO,KAAK,KAAG,IAa9D,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,OAAO,EACd,qBAGG;IACD;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;CACxB,KACA,OAAO,CAAC,QAAQ,CAAC,GAAG,SA4HtB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,OAAO,EACd,qCAAqC,yBAAyB,KAC7D;IACD,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;CA8ChD,CAAC"}
@@ -21,4 +21,4 @@ export declare const enableNavigationPreload: (headerValue?: string) => void;
21
21
  * @see https://serwist.pages.dev/docs/serwist/core/disable-navigation-preload
22
22
  */
23
23
  export declare const disableNavigationPreload: () => void;
24
- //# sourceMappingURL=navigationPreload.d.ts.map
24
+ //# sourceMappingURL=navigation-preload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-preload.d.ts","sourceRoot":"","sources":["../../src/lib/navigation-preload.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,QAAO,OAE/C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,GAAI,cAAc,MAAM,KAAG,IAqB9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAO,IAgB3C,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { StrategyPlugin } from "../../types.js";
1
+ import type { StrategyPlugin } from "#lib/types.js";
2
2
  /**
3
3
  * Makes it easy for a request with a `Range` header to be fulfilled by a cached response.
4
4
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RangeRequestsPlugin.d.ts","sourceRoot":"","sources":["../../../src/lib/range-requests/RangeRequestsPlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD;;;;;GAKG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IACxD;;;;;;OAMG;IACH,wBAAwB,EAAE,cAAc,CAAC,0BAA0B,CAAC,CAUlE;CACH"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPartialResponse.d.ts","sourceRoot":"","sources":["../../../src/lib/range-requests/createPartialResponse.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,qBAAqB,GAAU,SAAS,OAAO,EAAE,kBAAkB,QAAQ,KAAG,OAAO,CAAC,QAAQ,CA8D1G,CAAC"}
@@ -1,3 +1,3 @@
1
- export { RangeRequestsPlugin } from "./RangeRequestsPlugin.js";
2
1
  export { createPartialResponse } from "./createPartialResponse.js";
2
+ export { RangeRequestsPlugin } from "./RangeRequestsPlugin.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/range-requests/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculateEffectiveBoundaries.d.ts","sourceRoot":"","sources":["../../../../src/lib/range-requests/utils/calculateEffectiveBoundaries.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,GAAI,MAAM,IAAI,EAAE,QAAQ,MAAM,EAAE,MAAM,MAAM,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAsCnH,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseRangeHeader.d.ts","sourceRoot":"","sources":["../../../../src/lib/range-requests/utils/parseRangeHeader.ts"],"names":[],"mappings":"AAWA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,aAAa,MAAM,KAClB;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CAgCd,CAAC"}
@@ -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,10 +1,10 @@
1
- import { PrecacheController, type PrecacheOptions } from "#lib/controllers/PrecacheController/PrecacheController.js";
2
- import { type GoogleAnalyticsInitializeOptions } from "#lib/googleAnalytics/initializeGoogleAnalytics.js";
3
- import type { PrecacheFallbackEntry } from "#lib/precaching/PrecacheFallbackPlugin.js";
1
+ import { type Serwist as SerwistState } from "#lib/core.js";
2
+ import type { GoogleAnalyticsOptions, Precache, PrecacheFallbackEntry, PrecacheOptions } from "#lib/extensions/index.js";
4
3
  import type { Strategy } from "#lib/strategies/Strategy.js";
5
- import type { Route } from "./Route.js";
6
- import { type HTTPMethod } from "./constants.js";
7
- import type { Controller, PrecacheEntry, RouteHandler, RouteHandlerCallback, RouteHandlerCallbackOptions, RouteMatchCallback, RouteMatchCallbackOptions, RuntimeCaching } from "./types.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";
8
8
  export interface FallbackEntry extends PrecacheFallbackEntry {
9
9
  }
10
10
  export interface FallbacksOptions {
@@ -13,6 +13,9 @@ export interface FallbacksOptions {
13
13
  */
14
14
  entries: FallbackEntry[];
15
15
  }
16
+ /**
17
+ * @deprecated Legacy `Serwist` class. Please migrate to `createSerwist`.
18
+ */
16
19
  export interface SerwistOptions {
17
20
  /**
18
21
  * A list of URLs that should be cached.
@@ -21,11 +24,7 @@ export interface SerwistOptions {
21
24
  /**
22
25
  * Options to customize how Serwist precaches the URLs in the precache list.
23
26
  */
24
- precacheOptions?: PrecacheOptions;
25
- /**
26
- * A list of controllers that run throughout Serwist's lifecycle.
27
- */
28
- controllers?: Controller[];
27
+ precacheOptions?: Omit<PrecacheOptions, "entries">;
29
28
  /**
30
29
  * Forces the waiting service worker to become the active one.
31
30
  *
@@ -58,15 +57,13 @@ export interface SerwistOptions {
58
57
  clientsClaim?: boolean;
59
58
  /**
60
59
  * A list of caching strategies.
61
- *
62
- * @deprecated Use {@linkcode RuntimeCacheController} instead.
63
60
  */
64
61
  runtimeCaching?: RuntimeCaching[];
65
62
  /**
66
- * Your configuration for {@linkcode initializeGoogleAnalytics}. This plugin is
63
+ * Your configuration for {@linkcode GoogleAnalytics}. This plugin is
67
64
  * only initialized when this option is not `undefined` or `false`.
68
65
  */
69
- offlineAnalyticsConfig?: Omit<GoogleAnalyticsInitializeOptions, "serwist"> | boolean;
66
+ offlineAnalyticsConfig?: GoogleAnalyticsOptions | boolean;
70
67
  /**
71
68
  * Disables Serwist's logging in development mode.
72
69
  *
@@ -79,34 +76,30 @@ export interface SerwistOptions {
79
76
  *
80
77
  * Note: This option mutates `runtimeCaching`. It also expects the URLs
81
78
  * defined in `entries` to have been precached beforehand.
82
- *
83
- * @deprecated Use {@linkcode RuntimeCacheController} instead.
84
79
  */
85
80
  fallbacks?: FallbacksOptions;
81
+ /**
82
+ * A list of extensions.
83
+ */
84
+ extensions?: Extension[];
86
85
  }
87
86
  /**
88
87
  * A class that helps bootstrap the service worker.
89
88
  *
89
+ * @deprecated Legacy `Serwist` class. Please migrate to `createSerwist`.
90
90
  * @see https://serwist.pages.dev/docs/serwist/core/serwist
91
91
  */
92
92
  export declare class Serwist {
93
- private readonly _routes;
94
- private readonly _defaultHandlerMap;
95
- private readonly _precacheController;
96
- private readonly _controllers;
97
- private _catchHandler?;
98
- constructor({ precacheEntries, precacheOptions, controllers, skipWaiting, importScripts, navigationPreload, cacheId, clientsClaim, runtimeCaching, offlineAnalyticsConfig, disableDevLogs, fallbacks, }?: SerwistOptions);
99
- /**
100
- * Accepts a callback name and returns an iterable of matching plugin callbacks.
101
- *
102
- * @param name The name fo the callback to run
103
- * @returns
104
- */
105
- iterateControllers<C extends keyof Controller>(name: C): Generator<NonNullable<Controller[C]>>;
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);
106
99
  /**
107
- * The `PrecacheController` used to handle precaching.
100
+ * The {@linkcode Precache} used to handle precaching.
108
101
  */
109
- get precache(): PrecacheController;
102
+ get precache(): Precache;
110
103
  /**
111
104
  * The strategy used to precache assets and respond to `fetch` events.
112
105
  */
@@ -116,6 +109,7 @@ export declare class Serwist {
116
109
  * instances.
117
110
  */
118
111
  get routes(): Map<HTTPMethod, Route[]>;
112
+ get state(): SerwistState;
119
113
  /**
120
114
  * Adds Serwist's event listeners. Before calling it, add your own listeners should you need to.
121
115
  */
@@ -235,7 +229,6 @@ export declare class Serwist {
235
229
  /**
236
230
  * Adds items to the precache list, removing duplicates and ensuring the information is valid.
237
231
  *
238
- * @deprecated Use `serwist.precache.addToCacheList` instead.
239
232
  * @param entries Array of entries to precache.
240
233
  */
241
234
  addToPrecacheList(entries: (PrecacheEntry | string)[]): void;
@@ -243,7 +236,6 @@ export declare class Serwist {
243
236
  * Returns a mapping of a precached URL to the corresponding cache key, taking
244
237
  * into account the revision information for the URL.
245
238
  *
246
- * @deprecated Use `serwist.precache.getUrlsToPrecacheKeys` instead.
247
239
  * @returns A URL to cache key mapping.
248
240
  */
249
241
  getUrlsToPrecacheKeys(): Map<string, string>;
@@ -251,7 +243,6 @@ export declare class Serwist {
251
243
  * Returns a list of all the URLs that have been precached by the current
252
244
  * service worker.
253
245
  *
254
- * @deprecated Use `serwist.precache.getPrecachedUrls` instead.
255
246
  * @returns The precached URLs.
256
247
  */
257
248
  getPrecachedUrls(): string[];
@@ -260,14 +251,12 @@ export declare class Serwist {
260
251
  * unversioned, like "/index.html", then the cache key will be the original
261
252
  * URL with a search parameter appended to it.
262
253
  *
263
- * @deprecated Use `serwist.precache.getPrecacheKeyForUrl` instead.
264
254
  * @param url A URL whose cache key you want to look up.
265
255
  * @returns The versioned URL that corresponds to a cache key
266
256
  * for the original URL, or undefined if that URL isn't precached.
267
257
  */
268
258
  getPrecacheKeyForUrl(url: string): string | undefined;
269
259
  /**
270
- * @deprecated Use `serwist.precache.getIntegrityForPrecacheKey` instead.
271
260
  * @param url A cache key whose SRI you want to look up.
272
261
  * @returns The subresource integrity associated with the cache key,
273
262
  * or undefined if it's not set.
@@ -287,7 +276,6 @@ export declare class Serwist {
287
276
  * response for the currently active service worker, even if the actual cache
288
277
  * key is `'/index.html?__WB_REVISION__=1234abcd'`.
289
278
  *
290
- * @deprecated Use `serwist.precache.matchPrecache` instead.
291
279
  * @param request The key (without revisioning parameters)
292
280
  * to look up in the precache.
293
281
  * @returns
@@ -297,10 +285,9 @@ export declare class Serwist {
297
285
  * Returns a function that looks up `url` in the precache (taking into
298
286
  * account revision information), and returns the corresponding `Response`.
299
287
  *
300
- * @deprecated Use `serwist.precache.createHandlerBoundToUrl` instead.
301
288
  * @param url The precached URL which will be used to lookup the response.
302
289
  * @return
303
290
  */
304
291
  createHandlerBoundToUrl(url: string): RouteHandlerCallback;
305
292
  }
306
- //# sourceMappingURL=Serwist.d.ts.map
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":"AAWA,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;AAI5D,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
+ {"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":"AAWA,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;AAI5D;;;;;;;;;;;;;;;;;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
+ {"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, StrategyPlugin } from "../../types.js";
1
+ import type { HandlerCallbackOptions, RouteHandlerObject, StrategyPlugin } from "#lib/types.js";
2
2
  import { StrategyHandler } from "./StrategyHandler.js";
3
3
  export interface StrategyOptions {
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Strategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/Strategy.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACjG,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
+ {"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, StrategyPlugin, StrategyPluginCallbackParam } from "../../types.js";
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
@@ -1 +1 @@
1
- {"version":3,"file":"StrategyHandler.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/StrategyHandler.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AACzH,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"}
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"}
@@ -1,3 +1,3 @@
1
- import type { StrategyPlugin } from "../../../types.js";
1
+ import type { StrategyPlugin } from "#lib/types.js";
2
2
  export declare const cacheOkAndOpaquePlugin: StrategyPlugin;
3
3
  //# sourceMappingURL=cacheOkAndOpaquePlugin.d.ts.map