serwist 10.0.0-preview.7 → 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
@@ -1 +1 @@
1
- {"version":3,"file":"cacheOkAndOpaquePlugin.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,eAAO,MAAM,sBAAsB,EAAE,cAepC,CAAC"}
1
+ {"version":3,"file":"cacheOkAndOpaquePlugin.d.ts","sourceRoot":"","sources":["../../../../src/lib/strategies/plugins/cacheOkAndOpaquePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,sBAAsB,EAAE,cAepC,CAAC"}
@@ -1,8 +1,7 @@
1
- import type { PrecacheControllerOptions, PrecacheEntry, PrecacheOptions, PrecacheRouteOptions } from "#lib/controllers/PrecacheController/PrecacheController.js";
2
- import type { Prettify } from "@serwist/utils";
3
- import type { Serwist } from "./Serwist.js";
1
+ import type { MaybePromise, Prettify } from "@serwist/utils";
2
+ import type { PrecacheEntry, PrecacheExtensionOptions, PrecacheOptions, PrecacheRouteOptions } from "#lib/extensions/index.js";
4
3
  import type { HTTPMethod } from "./constants.js";
5
- export type PromiseOrNot<T> = T | Promise<T>;
4
+ export type { MaybePromise as PromiseOrNot };
6
5
  export interface MapLikeObject {
7
6
  [key: string]: any;
8
7
  }
@@ -11,33 +10,6 @@ export interface MapLikeObject {
11
10
  * in the future.
12
11
  */
13
12
  export type PluginState = MapLikeObject;
14
- export interface InitCallbackParam {
15
- serwist: Serwist;
16
- }
17
- export type InitCallback = (param: InitCallbackParam) => PromiseOrNot<void>;
18
- export interface InstallCallbackParam {
19
- event: ExtendableEvent;
20
- serwist: Serwist;
21
- }
22
- export type InstallCallback = (param: InstallCallbackParam) => PromiseOrNot<void>;
23
- export interface ActivateCallbackParam {
24
- event: ExtendableEvent;
25
- serwist: Serwist;
26
- }
27
- export type ActivateCallback = (param: ActivateCallbackParam) => PromiseOrNot<void>;
28
- /**
29
- * An object with optional lifecycle callback properties for Serwist's operations.
30
- */
31
- export interface Controller {
32
- init?: InitCallback;
33
- install?: InstallCallback;
34
- activate?: ActivateCallback;
35
- }
36
- export interface ControllerParam {
37
- init: InitCallbackParam;
38
- install: InstallCallbackParam;
39
- activate: ActivateCallbackParam;
40
- }
41
13
  /**
42
14
  * Options passed to a {@linkcode RouteMatchCallback} function.
43
15
  */
@@ -157,7 +129,7 @@ export interface CacheDidUpdateCallbackParam {
157
129
  oldResponse?: Response | null;
158
130
  state?: PluginState;
159
131
  }
160
- export type CacheDidUpdateCallback = (param: CacheDidUpdateCallbackParam) => PromiseOrNot<any>;
132
+ export type CacheDidUpdateCallback = (param: CacheDidUpdateCallbackParam) => MaybePromise<any>;
161
133
  export interface CacheKeyWillBeUsedCallbackParam {
162
134
  mode: string;
163
135
  request: Request;
@@ -165,14 +137,14 @@ export interface CacheKeyWillBeUsedCallbackParam {
165
137
  params?: any;
166
138
  state?: PluginState;
167
139
  }
168
- export type CacheKeyWillBeUsedCallback = (param: CacheKeyWillBeUsedCallbackParam) => PromiseOrNot<Request | string>;
140
+ export type CacheKeyWillBeUsedCallback = (param: CacheKeyWillBeUsedCallbackParam) => MaybePromise<Request | string>;
169
141
  export interface CacheWillUpdateCallbackParam {
170
142
  request: Request;
171
143
  response: Response;
172
144
  event: ExtendableEvent;
173
145
  state?: PluginState;
174
146
  }
175
- export type CacheWillUpdateCallback = (param: CacheWillUpdateCallbackParam) => PromiseOrNot<any>;
147
+ export type CacheWillUpdateCallback = (param: CacheWillUpdateCallbackParam) => MaybePromise<any>;
176
148
  export interface CachedResponseWillBeUsedCallbackParam {
177
149
  /**
178
150
  * Name of the cache the response is in.
@@ -192,7 +164,7 @@ export interface CachedResponseWillBeUsedCallbackParam {
192
164
  matchOptions?: CacheQueryOptions;
193
165
  state?: PluginState;
194
166
  }
195
- export type CachedResponseWillBeUsedCallback = (param: CachedResponseWillBeUsedCallbackParam) => PromiseOrNot<any>;
167
+ export type CachedResponseWillBeUsedCallback = (param: CachedResponseWillBeUsedCallbackParam) => MaybePromise<any>;
196
168
  export interface FetchDidFailCallbackParam {
197
169
  error: Error;
198
170
  originalRequest: Request;
@@ -200,41 +172,41 @@ export interface FetchDidFailCallbackParam {
200
172
  event: ExtendableEvent;
201
173
  state?: PluginState;
202
174
  }
203
- export type FetchDidFailCallback = (param: FetchDidFailCallbackParam) => PromiseOrNot<any>;
175
+ export type FetchDidFailCallback = (param: FetchDidFailCallbackParam) => MaybePromise<any>;
204
176
  export interface FetchDidSucceedCallbackParam {
205
177
  request: Request;
206
178
  response: Response;
207
179
  event: ExtendableEvent;
208
180
  state?: PluginState;
209
181
  }
210
- export type FetchDidSucceedCallback = (param: FetchDidSucceedCallbackParam) => PromiseOrNot<Response>;
182
+ export type FetchDidSucceedCallback = (param: FetchDidSucceedCallbackParam) => MaybePromise<Response>;
211
183
  export interface RequestWillFetchCallbackParam {
212
184
  request: Request;
213
185
  event: ExtendableEvent;
214
186
  state?: PluginState;
215
187
  }
216
- export type RequestWillFetchCallback = (param: RequestWillFetchCallbackParam) => PromiseOrNot<Request>;
188
+ export type RequestWillFetchCallback = (param: RequestWillFetchCallbackParam) => MaybePromise<Request>;
217
189
  export interface HandlerWillRespondCallbackParam {
218
190
  request: Request;
219
191
  response: Response;
220
192
  event: ExtendableEvent;
221
193
  state?: PluginState;
222
194
  }
223
- export type HandlerWillRespondCallback = (param: HandlerWillRespondCallbackParam) => PromiseOrNot<Response>;
195
+ export type HandlerWillRespondCallback = (param: HandlerWillRespondCallbackParam) => MaybePromise<Response>;
224
196
  export interface HandlerDidErrorCallbackParam {
225
197
  request: Request;
226
198
  event: ExtendableEvent;
227
199
  error: Error;
228
200
  state?: PluginState;
229
201
  }
230
- export type HandlerDidErrorCallback = (param: HandlerDidErrorCallbackParam) => PromiseOrNot<Response | undefined>;
202
+ export type HandlerDidErrorCallback = (param: HandlerDidErrorCallbackParam) => MaybePromise<Response | undefined>;
231
203
  export interface HandlerDidRespondCallbackParam {
232
204
  request: Request;
233
205
  event: ExtendableEvent;
234
206
  response?: Response;
235
207
  state?: PluginState;
236
208
  }
237
- export type HandlerDidRespondCallback = (param: HandlerDidRespondCallbackParam) => PromiseOrNot<any>;
209
+ export type HandlerDidRespondCallback = (param: HandlerDidRespondCallbackParam) => MaybePromise<any>;
238
210
  export interface HandlerDidCompleteCallbackParam {
239
211
  request: Request;
240
212
  error?: Error;
@@ -242,7 +214,7 @@ export interface HandlerDidCompleteCallbackParam {
242
214
  response?: Response;
243
215
  state?: PluginState;
244
216
  }
245
- export type HandlerDidCompleteCallback = (param: HandlerDidCompleteCallbackParam) => PromiseOrNot<any>;
217
+ export type HandlerDidCompleteCallback = (param: HandlerDidCompleteCallbackParam) => MaybePromise<any>;
246
218
  /**
247
219
  * An object with optional lifecycle callback properties for the fetch and
248
220
  * cache operations.
@@ -319,5 +291,5 @@ export interface CleanupResult {
319
291
  export type UrlManipulation = ({ url }: {
320
292
  url: URL;
321
293
  }) => URL[];
322
- export type { StrategyPlugin as SerwistPlugin, StrategyPluginCallbackParam as SerwistPluginCallbackParam, PrecacheEntry, PrecacheRouteOptions, PrecacheControllerOptions, PrecacheOptions, };
294
+ export type { StrategyPlugin as SerwistPlugin, StrategyPluginCallbackParam as SerwistPluginCallbackParam, PrecacheEntry, PrecacheRouteOptions, PrecacheExtensionOptions, PrecacheOptions, };
323
295
  //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,24 @@
1
+ import type { PartialCacheNameDetails } from "#utils/cacheNames.js";
2
+ /**
3
+ * Disables Serwist's logging in development mode.
4
+ *
5
+ * @see https://serwist.pages.dev/docs/serwist/core/disable-dev-logs
6
+ */
7
+ export declare const disableDevLogs: () => void;
8
+ /**
9
+ * Modifies the default cache names used by Serwist packages.
10
+ * Cache names are generated as `<prefix>-<Cache Name>-<suffix>`.
11
+ *
12
+ * @param details
13
+ */
14
+ export declare const setCacheNameDetails: (details: PartialCacheNameDetails) => void;
15
+ /**
16
+ * Adds a function to the set of quotaErrorCallbacks that will be executed if
17
+ * there's a quota error.
18
+ *
19
+ * @param callback
20
+ */
21
+ export declare const registerQuotaErrorCallback: (callback: Function) => void;
1
22
  /**
2
23
  * Allows developers to copy a response and modify its `headers`, `status`,
3
24
  * or `statusText` values (the [valid options](https://developer.mozilla.org/en-US/docs/Web/API/Response/Response#options)
@@ -15,4 +36,4 @@
15
36
  * @param modifier The function used to modify the options of the `Response` object.
16
37
  */
17
38
  export declare const copyResponse: (response: Response, modifier?: (responseInit: ResponseInit) => ResponseInit) => Promise<Response>;
18
- //# sourceMappingURL=copyResponse.d.ts.map
39
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AASpE;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,IAEjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,SAAS,uBAAuB,KAAG,IAiCtE,CAAC;AAEF;;;;;GAKG;AAEH,eAAO,MAAM,0BAA0B,GAAI,UAAU,QAAQ,KAAG,IAc/D,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,GAAU,UAAU,QAAQ,EAAE,WAAW,CAAC,YAAY,EAAE,YAAY,KAAK,YAAY,KAAG,OAAO,CAAC,QAAQ,CA8BhI,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { MapLikeObject } from "../../types.js";
1
+ import type { MapLikeObject } from "#lib/types.js";
2
2
  import { type MessageKey } from "./messages.js";
3
3
  export declare const messageGenerator: ((code: string, ...args: any[]) => string) | ((code: MessageKey, details?: MapLikeObject) => string);
4
4
  //# sourceMappingURL=messageGenerator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageGenerator.d.ts","sourceRoot":"","sources":["../../../src/models/messages/messageGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,EAAY,MAAM,eAAe,CAAC;AAmB1D,eAAO,MAAM,gBAAgB,UAjBL,MAAM,WAAW,GAAG,EAAE,uBAQb,UAAU,YAAW,aAAa,YASiC,CAAC"}
1
+ {"version":3,"file":"messageGenerator.d.ts","sourceRoot":"","sources":["../../../src/models/messages/messageGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,KAAK,UAAU,EAAY,MAAM,eAAe,CAAC;AAmB1D,eAAO,MAAM,gBAAgB,UAjBL,MAAM,WAAW,GAAG,EAAE,uBAQb,UAAU,YAAW,aAAa,YASiC,CAAC"}
@@ -1,5 +1,5 @@
1
+ import type { MapLikeObject } from "#lib/types.js";
1
2
  import type { MessageKey } from "#models/messages/messages.js";
2
- import type { MapLikeObject } from "../types.js";
3
3
  /**
4
4
  * Serwist errors should be thrown with this class.
5
5
  * This allows use to ensure the type easily in tests,
@@ -1 +1 @@
1
- {"version":3,"file":"SerwistError.d.ts","sourceRoot":"","sources":["../../src/utils/SerwistError.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;;;;;OAOG;gBACS,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,aAAa;CAQ3D"}
1
+ {"version":3,"file":"SerwistError.d.ts","sourceRoot":"","sources":["../../src/utils/SerwistError.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE/D;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;;;;;OAOG;gBACS,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,aAAa;CAQ3D"}
@@ -1,4 +1,4 @@
1
- import type { MapLikeObject } from "../types.js";
1
+ import type { MapLikeObject } from "#lib/types.js";
2
2
  declare const finalAssertExports: {
3
3
  hasMethod: (object: MapLikeObject, expectedMethod: string, details: MapLikeObject) => void;
4
4
  isArray: (value: any[], details: MapLikeObject) => void;
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../src/utils/assert.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAmEnD,QAAA,MAAM,kBAAkB;wBApDG,aAAa,kBAAkB,MAAM,WAAW,aAAa;qBANhE,GAAG,EAAE,WAAW,aAAa;yBAsB3C,OAAO,iBAEA,QAAQ,WACd,aAAa;qBAQA,GAAG,eAAe,GAAG,EAAE,WAAW,aAAa;qBAnB/C,OAAO,gBAAgB,MAAM,WAAW,aAAa;4BA2BpE,GAAG,iBAEK,QAAQ,WACd,aAAa;QAwBjB,CAAC;AAER,OAAO,EAAE,kBAAkB,IAAI,MAAM,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cacheNames.d.ts","sourceRoot":"","sources":["../../src/utils/cacheNames.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAoBpG,eAAO,MAAM,UAAU;6BACI,uBAAuB,KAAG,IAAI;6CAQd,MAAM,KAAG,MAAM;sCAGtB,MAAM,KAAG,MAAM;qBAGlC,MAAM;qCAGY,MAAM,KAAG,MAAM;qBAGjC,MAAM;CAGtB,CAAC"}
1
+ {"version":3,"file":"cacheNames.d.ts","sourceRoot":"","sources":["../../src/utils/cacheNames.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAoBpG,eAAO,MAAM,UAAU;6BACI,uBAAuB,KAAG,IAAI;6CAQd,MAAM,KAAG,MAAM;sCAGtB,MAAM,KAAG,MAAM;qBAGlC,MAAM;qCAGY,MAAM,KAAG,MAAM;qBAGjC,MAAM;CAGtB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { PrecacheEntry } from "../types.js";
1
+ import type { PrecacheEntry } from "#lib/types.js";
2
2
  interface CacheKey {
3
3
  cacheKey: string;
4
4
  url: string;
@@ -1 +1 @@
1
- {"version":3,"file":"createCacheKey.d.ts","sourceRoot":"","sources":["../../src/utils/createCacheKey.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,UAAU,QAAQ;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAKD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,aAAa,GAAG,MAAM,KAAG,QAuC9D,CAAC"}
1
+ {"version":3,"file":"createCacheKey.d.ts","sourceRoot":"","sources":["../../src/utils/createCacheKey.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,UAAU,QAAQ;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAKD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,aAAa,GAAG,MAAM,KAAG,QAuC9D,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { PrecacheRouteOptions } from "../types.js";
1
+ import type { PrecacheRouteOptions } from "#lib/types.js";
2
2
  /**
3
3
  * Generator function that yields possible variations on the original URL to
4
4
  * check, one at a time.
@@ -1 +1 @@
1
- {"version":3,"file":"generateURLVariations.d.ts","sourceRoot":"","sources":["../../src/utils/generateURLVariations.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxD;;;;;;;;GAQG;AACH,wBAAiB,qBAAqB,CACpC,GAAG,EAAE,MAAM,EACX,EACE,cAA6B,EAC7B,2BAAmD,EACnD,SAAgB,EAChB,eAAe,GAChB,GAAE,oBAAyB,GAC3B,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CA0BlC"}
1
+ {"version":3,"file":"generateURLVariations.d.ts","sourceRoot":"","sources":["../../src/utils/generateURLVariations.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAG1D;;;;;;;;GAQG;AACH,wBAAiB,qBAAqB,CACpC,GAAG,EAAE,MAAM,EACX,EACE,cAA6B,EAC7B,2BAAmD,EACnD,SAAgB,EAChB,eAAe,GAChB,GAAE,oBAAyB,GAC3B,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CA0BlC"}
@@ -14,10 +14,10 @@ declare global {
14
14
  * before using it.
15
15
  */
16
16
  export declare const logger: {
17
- error: (...args: any[]) => void;
18
17
  debug: (...args: any[]) => void;
19
18
  log: (...args: any[]) => void;
20
19
  warn: (...args: any[]) => void;
20
+ error: (...args: any[]) => void;
21
21
  groupCollapsed: (...args: any[]) => void;
22
22
  groupEnd: (...args: any[]) => void;
23
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAQA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,iBAAiB;QACzB,qBAAqB,EAAE,OAAO,CAAC;KAChC;IAED,UAAU,MAAM;QACd,qBAAqB,EAAE,OAAO,CAAC;KAChC;CACF;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM;qBAmEoC,GAAG,EAAE,KAAK,IAAI;qBAAd,GAAG,EAAE,KAAK,IAAI;mBAAd,GAAG,EAAE,KAAK,IAAI;oBAAd,GAAG,EAAE,KAAK,IAAI;8BAAd,GAAG,EAAE,KAAK,IAAI;wBAAd,GAAG,EAAE,KAAK,IAAI;CAE3D,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAQA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,iBAAiB;QACzB,qBAAqB,EAAE,OAAO,CAAC;KAChC;IAED,UAAU,MAAM;QACd,qBAAqB,EAAE,OAAO,CAAC;KAChC;CACF;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM;qBAmEoC,GAAG,EAAE,KAAK,IAAI;mBAAd,GAAG,EAAE,KAAK,IAAI;oBAAd,GAAG,EAAE,KAAK,IAAI;qBAAd,GAAG,EAAE,KAAK,IAAI;8BAAd,GAAG,EAAE,KAAK,IAAI;wBAAd,GAAG,EAAE,KAAK,IAAI;CAE3D,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { RouteHandler, RouteHandlerObject } from "../types.js";
1
+ import type { RouteHandler, RouteHandlerObject } from "#lib/types.js";
2
2
  /**
3
3
  * @param handler Either a function, or an object with a
4
4
  * 'handle' method.
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeHandler.d.ts","sourceRoot":"","sources":["../../src/utils/normalizeHandler.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGpE;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,YAAY,KAAG,kBAqBxD,CAAC"}
1
+ {"version":3,"file":"normalizeHandler.d.ts","sourceRoot":"","sources":["../../src/utils/normalizeHandler.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGtE;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,YAAY,KAAG,kBAqBxD,CAAC"}
@@ -1,6 +1,6 @@
1
- import { Route } from "../Route.js";
2
- import type { HTTPMethod } from "../constants.js";
3
- import type { RouteHandler, RouteMatchCallback } from "../types.js";
1
+ import type { HTTPMethod } from "#lib/constants.js";
2
+ import { Route } from "#lib/route.js";
3
+ import type { RouteHandler, RouteMatchCallback } from "#lib/types.js";
4
4
  /**
5
5
  * Parses a `RegExp`, string, or function with a caching strategy into a {@linkcode Route}. This is for
6
6
  * when you want to create a {@linkcode Route}, but you don't want to register it just yet: sometimes
@@ -1 +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,GAAI,SAAS,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,EAAE,UAAU,YAAY,EAAE,SAAS,UAAU,KAAG,KAyD/H,CAAC"}
1
+ {"version":3,"file":"parseRoute.d.ts","sourceRoot":"","sources":["../../src/utils/parseRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAe,KAAK,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAItE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,GAAI,SAAS,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,EAAE,UAAU,YAAY,EAAE,SAAS,UAAU,KAAG,KAyD/H,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { StrategyPlugin } from "../types.js";
1
+ import type { StrategyPlugin } from "#lib/types.js";
2
2
  export declare const pluginUtils: {
3
3
  filter: (plugins: StrategyPlugin[], callbackName: string) => StrategyPlugin[];
4
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pluginUtils.d.ts","sourceRoot":"","sources":["../../src/utils/pluginUtils.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,eAAO,MAAM,WAAW;sBACJ,cAAc,EAAE,gBAAgB,MAAM,KAAG,cAAc,EAAE;CAG5E,CAAC"}
1
+ {"version":3,"file":"pluginUtils.d.ts","sourceRoot":"","sources":["../../src/utils/pluginUtils.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,WAAW;sBACJ,cAAc,EAAE,gBAAgB,MAAM,KAAG,cAAc,EAAE;CAG5E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "serwist",
3
- "version": "10.0.0-preview.7",
3
+ "version": "10.0.0-preview.9",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "description": "A Swiss Army knife for service workers.",
@@ -65,13 +65,13 @@
65
65
  "./package.json": "./package.json"
66
66
  },
67
67
  "dependencies": {
68
- "idb": "8.0.2",
69
- "@serwist/utils": "10.0.0-preview.7"
68
+ "idb": "8.0.3",
69
+ "@serwist/utils": "10.0.0-preview.9"
70
70
  },
71
71
  "devDependencies": {
72
- "rollup": "4.40.0",
72
+ "rollup": "4.45.1",
73
73
  "typescript": "5.8.3",
74
- "@serwist/configs": "10.0.0-preview.7"
74
+ "@serwist/configs": "10.0.0-preview.9"
75
75
  },
76
76
  "peerDependencies": {
77
77
  "typescript": ">=5.0.0"
@@ -1,5 +1,3 @@
1
- import { Deferred } from "#utils/Deferred.js";
2
- import { SerwistError } from "#utils/SerwistError.js";
3
1
  import { assert } from "#utils/assert.js";
4
2
  import { cacheMatchIgnoreParams } from "#utils/cacheMatchIgnoreParams.js";
5
3
  import { cacheNames as privateCacheNames } from "#utils/cacheNames.js";
@@ -7,11 +5,13 @@ import { canConstructReadableStream } from "#utils/canConstructReadableStream.js
7
5
  import { canConstructResponseFromBodyStream } from "#utils/canConstructResponseFromBodyStream.js";
8
6
  import { cleanupOutdatedCaches } from "#utils/cleanupOutdatedCaches.js";
9
7
  import { clientsClaim } from "#utils/clientsClaim.js";
8
+ import { Deferred } from "#utils/Deferred.js";
10
9
  import { dontWaitFor } from "#utils/dontWaitFor.js";
11
10
  import { executeQuotaErrorCallbacks } from "#utils/executeQuotaErrorCallbacks.js";
12
11
  import { getFriendlyURL } from "#utils/getFriendlyURL.js";
13
12
  import { logger } from "#utils/logger.js";
14
13
  import { resultingClientExists } from "#utils/resultingClientExists.js";
14
+ import { SerwistError } from "#utils/SerwistError.js";
15
15
  import { timeout } from "#utils/timeout.js";
16
16
  import { waitUntil } from "#utils/waitUntil.js";
17
17
 
package/src/index.ts CHANGED
@@ -1,47 +1,41 @@
1
- import type { NavigationRouteMatchOptions } from "./NavigationRoute.js";
2
- import { NavigationRoute } from "./NavigationRoute.js";
3
- import { RegExpRoute } from "./RegExpRoute.js";
4
- import { Route } from "./Route.js";
5
- import { Serwist, type SerwistOptions } from "./Serwist.js";
6
- import { cacheNames } from "./cacheNames.js";
7
- import type { HTTPMethod } from "./constants.js";
8
- import { copyResponse } from "./copyResponse.js";
9
- import { disableDevLogs } from "./disableDevLogs.js";
10
- import { disableNavigationPreload, enableNavigationPreload, isNavigationPreloadSupported } from "./navigationPreload.js";
11
- import { registerQuotaErrorCallback } from "./registerQuotaErrorCallback.js";
12
- import { setCacheNameDetails } from "./setCacheNameDetails.js";
1
+ import { cacheNames } from "#lib/cache-name.js";
2
+ import type { HTTPMethod } from "#lib/constants.js";
3
+ import { disableNavigationPreload, enableNavigationPreload, isNavigationPreloadSupported } from "#lib/navigation-preload.js";
4
+ import type { NavigationRouteMatchOptions } from "#lib/route.js";
5
+ import { NavigationRoute, RegExpRoute, Route } from "#lib/route.js";
6
+ import { Serwist, type SerwistOptions } from "#lib/serwist.js";
7
+ import { copyResponse, disableDevLogs, registerQuotaErrorCallback, setCacheNameDetails } from "#lib/utils.js";
13
8
 
14
9
  // Background synchronizing
15
10
  export {
16
11
  BackgroundSyncPlugin,
17
12
  BackgroundSyncQueue,
13
+ type BackgroundSyncQueueEntry,
14
+ type BackgroundSyncQueueOptions,
18
15
  BackgroundSyncQueueStore,
19
16
  StorableRequest,
20
- type BackgroundSyncQueueOptions,
21
- type BackgroundSyncQueueEntry,
22
- } from "#lib/backgroundSync/index.js";
17
+ } from "#lib/background-sync/index.js";
23
18
 
24
19
  // Broadcasting updates
25
20
  export {
26
- BroadcastCacheUpdate,
27
- BroadcastUpdatePlugin,
28
21
  BROADCAST_UPDATE_DEFAULT_HEADERS,
29
- responsesAreSame,
22
+ BroadcastCacheUpdate,
30
23
  type BroadcastCacheUpdateOptions,
24
+ type BroadcastMessage,
31
25
  type BroadcastPayload,
32
26
  type BroadcastPayloadGenerator,
33
- type BroadcastMessage,
34
- } from "#lib/broadcastUpdate/index.js";
27
+ BroadcastUpdatePlugin,
28
+ responsesAreSame,
29
+ } from "#lib/broadcast-update/index.js";
35
30
 
36
31
  // Setting cacheability criteria
37
32
  export {
38
33
  CacheableResponse,
39
- CacheableResponsePlugin,
40
34
  type CacheableResponseOptions,
41
- } from "#lib/cacheableResponse/index.js";
35
+ CacheableResponsePlugin,
36
+ } from "#lib/cacheable-response/index.js";
42
37
 
43
38
  // Controllers
44
- export { PrecacheStrategy, PrecacheRoute, RuntimeCacheController } from "#lib/controllers/index.js";
45
39
 
46
40
  // Expiring outdated responses
47
41
  export {
@@ -50,33 +44,38 @@ export {
50
44
  type ExpirationPluginOptions,
51
45
  } from "#lib/expiration/index.js";
52
46
 
53
- // Google Analytics
54
- export { initializeGoogleAnalytics, type GoogleAnalyticsInitializeOptions } from "#lib/googleAnalytics/index.js";
55
-
56
- // Precaching
47
+ // Extensions
57
48
  export {
58
- PrecacheFallbackPlugin,
49
+ GoogleAnalytics,
50
+ type GoogleAnalyticsInitializeOptions,
51
+ type GoogleAnalyticsOptions,
52
+ initializeGoogleAnalytics,
59
53
  type PrecacheFallbackEntry,
54
+ PrecacheFallbackPlugin,
60
55
  type PrecacheFallbackPluginOptions,
61
- } from "#lib/precaching/index.js";
56
+ PrecacheRoute,
57
+ PrecacheStrategy,
58
+ RuntimeCache,
59
+ type RuntimeCacheOptions,
60
+ } from "#lib/extensions/index.js";
62
61
 
63
62
  // Handling range requests
64
63
  export {
65
64
  createPartialResponse,
66
65
  RangeRequestsPlugin,
67
- } from "#lib/rangeRequests/index.js";
66
+ } from "#lib/range-requests/index.js";
68
67
 
69
68
  // Built-in caching strategies
70
69
  export {
71
70
  CacheFirst,
72
71
  CacheOnly,
73
72
  NetworkFirst,
73
+ type NetworkFirstOptions,
74
74
  NetworkOnly,
75
+ type NetworkOnlyOptions,
75
76
  StaleWhileRevalidate,
76
77
  Strategy,
77
78
  StrategyHandler,
78
- type NetworkFirstOptions,
79
- type NetworkOnlyOptions,
80
79
  type StrategyOptions,
81
80
  } from "#lib/strategies/index.js";
82
81
 
@@ -96,5 +95,24 @@ export {
96
95
  RegExpRoute,
97
96
  Route,
98
97
  };
98
+
99
+ // Core (modern)
100
+ // TODO(v11): rename once we remove legacy `Serwist` and `SerwistOptions`
101
+ export type { Serwist as SerwistState, SerwistOptions as CreateSerwistOptions } from "#lib/core.js";
102
+ export { createSerwist } from "#lib/core.js";
103
+ // Extension
104
+ export type * from "#lib/extension.js";
105
+ export {
106
+ addEventListeners,
107
+ createActivateHandler,
108
+ createCacheHandler,
109
+ createFetchHandler,
110
+ createInstallHandler,
111
+ iterateExtensions,
112
+ setCatchHandler,
113
+ setDefaultHandler,
114
+ } from "#lib/functions/handlers.js";
115
+ export { findMatchingRoute, handleRequest, registerCapture, registerRoute, unregisterRoute } from "#lib/functions/router.js";
116
+
99
117
  export type { HTTPMethod, SerwistOptions, NavigationRouteMatchOptions };
100
- export type * from "./types.js";
118
+ export type * from "#lib/types.js";
@@ -6,7 +6,7 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
- import type { FetchDidFailCallbackParam, StrategyPlugin } from "../../types.js";
9
+ import type { FetchDidFailCallbackParam, StrategyPlugin } from "#lib/types.js";
10
10
  import type { BackgroundSyncQueueOptions } from "./BackgroundSyncQueue.js";
11
11
  import { BackgroundSyncQueue } from "./BackgroundSyncQueue.js";
12
12
 
@@ -5,10 +5,10 @@
5
5
  license that can be found in the LICENSE file or at
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
- import { SerwistError } from "#utils/SerwistError.js";
9
8
  import { assert } from "#utils/assert.js";
10
9
  import { getFriendlyURL } from "#utils/getFriendlyURL.js";
11
10
  import { logger } from "#utils/logger.js";
11
+ import { SerwistError } from "#utils/SerwistError.js";
12
12
  import type { BackgroundSyncQueueStoreEntry, UnidentifiedQueueStoreEntry } from "./BackgroundSyncQueueDb.js";
13
13
  import { BackgroundSyncQueueStore } from "./BackgroundSyncQueueStore.js";
14
14
  import { StorableRequest } from "./StorableRequest.js";
@@ -350,7 +350,7 @@ export class BackgroundSyncQueue {
350
350
  * the queue (which registers a retry for the next sync event).
351
351
  */
352
352
  async replayRequests(): Promise<void> {
353
- let entry: BackgroundSyncQueueEntry | undefined = undefined;
353
+ let entry: BackgroundSyncQueueEntry | undefined;
354
354
  while ((entry = await this.shiftRequest())) {
355
355
  try {
356
356
  await fetch(entry.request.clone());
@@ -358,7 +358,7 @@ export class BackgroundSyncQueue {
358
358
  if (process.env.NODE_ENV !== "production") {
359
359
  logger.log(`Request for '${getFriendlyURL(entry.request.url)}' ` + `has been replayed in queue '${this._name}'`);
360
360
  }
361
- } catch (error) {
361
+ } catch {
362
362
  await this.unshiftRequest(entry);
363
363
 
364
364
  if (process.env.NODE_ENV !== "production") {
@@ -409,7 +409,7 @@ export class BackgroundSyncQueue {
409
409
  const syncComplete = async () => {
410
410
  this._syncInProgress = true;
411
411
 
412
- let syncError: Error | undefined = undefined;
412
+ let syncError: Error | undefined;
413
413
  try {
414
414
  await this._onSync({ queue: this });
415
415
  } catch (error) {
@@ -81,7 +81,7 @@ export class BackgroundSyncQueueDb {
81
81
  async getAllEntriesByQueueName(queueName: string): Promise<BackgroundSyncQueueStoreEntry[]> {
82
82
  const db = await this.getDb();
83
83
  const results = await db.getAllFromIndex(REQUEST_OBJECT_STORE_NAME, QUEUE_NAME_INDEX, IDBKeyRange.only(queueName));
84
- return results ? results : new Array<BackgroundSyncQueueStoreEntry>();
84
+ return results ? results : ([] as BackgroundSyncQueueStoreEntry[]);
85
85
  }
86
86
 
87
87
  /**
@@ -52,7 +52,6 @@ export class BackgroundSyncQueueStore {
52
52
  });
53
53
  }
54
54
 
55
- // biome-ignore lint/performance/noDelete: Don't specify an ID since one is automatically generated.
56
55
  delete entry.id;
57
56
  entry.queueName = this._queueName;
58
57
 
@@ -86,7 +85,6 @@ export class BackgroundSyncQueueStore {
86
85
  // Pick an ID one less than the lowest ID in the object store.
87
86
  entry.id = firstId - 1;
88
87
  } else {
89
- // biome-ignore lint/performance/noDelete: Let the auto-incrementor assign the ID.
90
88
  delete entry.id;
91
89
  }
92
90
  entry.queueName = this._queueName;
@@ -6,8 +6,8 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
+ import type { MapLikeObject } from "#lib/types.js";
9
10
  import { assert } from "#utils/assert.js";
10
- import type { MapLikeObject } from "../../types.js";
11
11
 
12
12
  type SerializableProperties = "method" | "referrer" | "referrerPolicy" | "mode" | "credentials" | "cache" | "redirect" | "integrity" | "keepalive";
13
13
 
@@ -6,11 +6,11 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
+ import type { CacheDidUpdateCallbackParam } from "#lib/types.js";
9
10
  import { assert } from "#utils/assert.js";
10
11
  import { logger } from "#utils/logger.js";
11
12
  import { resultingClientExists } from "#utils/resultingClientExists.js";
12
13
  import { timeout } from "#utils/timeout.js";
13
- import type { CacheDidUpdateCallbackParam } from "../../types.js";
14
14
  import {
15
15
  BROADCAST_UPDATE_DEFAULT_HEADERS,
16
16
  BROADCAST_UPDATE_DEFAULT_NOTIFY,
@@ -6,7 +6,7 @@
6
6
  https://opensource.org/licenses/MIT.
7
7
  */
8
8
 
9
- import type { CacheDidUpdateCallbackParam, StrategyPlugin } from "../../types.js";
9
+ import type { CacheDidUpdateCallbackParam, StrategyPlugin } from "#lib/types.js";
10
10
  import { BroadcastCacheUpdate } from "./BroadcastCacheUpdate.js";
11
11
  import type { BroadcastCacheUpdateOptions } from "./types.js";
12
12