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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/dist/NavigationRoute.d.ts +6 -7
  2. package/dist/NavigationRoute.d.ts.map +1 -1
  3. package/dist/PrecacheRoute.d.ts +2 -2
  4. package/dist/PrecacheRoute.d.ts.map +1 -1
  5. package/dist/RegExpRoute.d.ts +4 -4
  6. package/dist/RegExpRoute.d.ts.map +1 -1
  7. package/dist/Route.d.ts +10 -10
  8. package/dist/Route.d.ts.map +1 -1
  9. package/dist/Serwist.d.ts +39 -44
  10. package/dist/Serwist.d.ts.map +1 -1
  11. package/dist/chunks/printInstallDetails.js +1587 -0
  12. package/dist/chunks/resultingClientExists.js +1 -1
  13. package/dist/chunks/waitUntil.js +426 -1
  14. package/dist/copyResponse.d.ts +8 -10
  15. package/dist/copyResponse.d.ts.map +1 -1
  16. package/dist/disableDevLogs.d.ts +1 -1
  17. package/dist/index.d.ts +41 -12
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.internal.d.ts +3 -1
  20. package/dist/index.internal.d.ts.map +1 -1
  21. package/dist/index.internal.js +1 -2
  22. package/dist/index.js +1464 -8
  23. package/dist/index.legacy.d.ts +4 -8
  24. package/dist/index.legacy.d.ts.map +1 -1
  25. package/dist/index.legacy.js +166 -16
  26. package/dist/legacy/PrecacheController.d.ts +1 -1
  27. package/dist/legacy/PrecacheController.d.ts.map +1 -1
  28. package/dist/legacy/PrecacheRoute.d.ts.map +1 -1
  29. package/dist/legacy/Router.d.ts +1 -1
  30. package/dist/legacy/Router.d.ts.map +1 -1
  31. package/dist/legacy/constants.d.ts.map +1 -0
  32. package/dist/legacy/fallbacks.d.ts +1 -1
  33. package/dist/legacy/fallbacks.d.ts.map +1 -1
  34. package/dist/legacy/handlePrecaching.d.ts.map +1 -1
  35. package/dist/legacy/initializeGoogleAnalytics.d.ts +38 -0
  36. package/dist/legacy/initializeGoogleAnalytics.d.ts.map +1 -0
  37. package/dist/legacy/installSerwist.d.ts +69 -3
  38. package/dist/legacy/installSerwist.d.ts.map +1 -1
  39. package/dist/legacy/registerRoute.d.ts +1 -1
  40. package/dist/legacy/registerRoute.d.ts.map +1 -1
  41. package/dist/{plugins → lib}/backgroundSync/BackgroundSyncPlugin.d.ts +3 -3
  42. package/dist/lib/backgroundSync/BackgroundSyncPlugin.d.ts.map +1 -0
  43. package/dist/{plugins/backgroundSync/Queue.d.ts → lib/backgroundSync/BackgroundSyncQueue.d.ts} +29 -13
  44. package/dist/lib/backgroundSync/BackgroundSyncQueue.d.ts.map +1 -0
  45. package/dist/{plugins/backgroundSync/QueueDb.d.ts → lib/backgroundSync/BackgroundSyncQueueDb.d.ts} +7 -7
  46. package/dist/lib/backgroundSync/BackgroundSyncQueueDb.d.ts.map +1 -0
  47. package/dist/{plugins/backgroundSync/QueueStore.d.ts → lib/backgroundSync/BackgroundSyncQueueStore.d.ts} +7 -7
  48. package/dist/lib/backgroundSync/BackgroundSyncQueueStore.d.ts.map +1 -0
  49. package/dist/lib/backgroundSync/StorableRequest.d.ts.map +1 -0
  50. package/dist/lib/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +1 -0
  51. package/dist/{plugins → lib}/broadcastUpdate/BroadcastUpdatePlugin.d.ts +1 -1
  52. package/dist/lib/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +1 -0
  53. package/dist/lib/broadcastUpdate/constants.d.ts +5 -0
  54. package/dist/lib/broadcastUpdate/constants.d.ts.map +1 -0
  55. package/dist/lib/broadcastUpdate/responsesAreSame.d.ts.map +1 -0
  56. package/dist/{plugins → lib}/broadcastUpdate/types.d.ts +3 -3
  57. package/dist/lib/broadcastUpdate/types.d.ts.map +1 -0
  58. package/dist/lib/cacheableResponse/CacheableResponse.d.ts.map +1 -0
  59. package/dist/lib/cacheableResponse/CacheableResponsePlugin.d.ts.map +1 -0
  60. package/dist/{plugins → lib}/expiration/CacheExpiration.d.ts +1 -1
  61. package/dist/lib/expiration/CacheExpiration.d.ts.map +1 -0
  62. package/dist/{plugins → lib}/expiration/ExpirationPlugin.d.ts +1 -1
  63. package/dist/lib/expiration/ExpirationPlugin.d.ts.map +1 -0
  64. package/dist/lib/expiration/models/CacheTimestampsModel.d.ts.map +1 -0
  65. package/dist/lib/googleAnalytics/constants.d.ts +10 -0
  66. package/dist/lib/googleAnalytics/constants.d.ts.map +1 -0
  67. package/dist/{plugins/googleAnalytics/initialize.d.ts → lib/googleAnalytics/initializeGoogleAnalytics.d.ts} +2 -2
  68. package/dist/lib/googleAnalytics/initializeGoogleAnalytics.d.ts.map +1 -0
  69. package/dist/{plugins → lib}/precaching/PrecacheFallbackPlugin.d.ts +1 -1
  70. package/dist/lib/precaching/PrecacheFallbackPlugin.d.ts.map +1 -0
  71. package/dist/lib/rangeRequests/RangeRequestsPlugin.d.ts.map +1 -0
  72. package/dist/lib/rangeRequests/createPartialResponse.d.ts.map +1 -0
  73. package/dist/lib/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +1 -0
  74. package/dist/lib/rangeRequests/utils/parseRangeHeader.d.ts.map +1 -0
  75. package/dist/{strategies → lib/strategies}/CacheFirst.d.ts +1 -1
  76. package/dist/lib/strategies/CacheFirst.d.ts.map +1 -0
  77. package/dist/{strategies → lib/strategies}/CacheOnly.d.ts +2 -2
  78. package/dist/lib/strategies/CacheOnly.d.ts.map +1 -0
  79. package/dist/{strategies → lib/strategies}/NetworkFirst.d.ts +2 -2
  80. package/dist/lib/strategies/NetworkFirst.d.ts.map +1 -0
  81. package/dist/{strategies → lib/strategies}/NetworkOnly.d.ts +2 -2
  82. package/dist/lib/strategies/NetworkOnly.d.ts.map +1 -0
  83. package/dist/{PrecacheStrategy.d.ts → lib/strategies/PrecacheStrategy.d.ts} +5 -5
  84. package/dist/lib/strategies/PrecacheStrategy.d.ts.map +1 -0
  85. package/dist/{strategies → lib/strategies}/StaleWhileRevalidate.d.ts +1 -1
  86. package/dist/lib/strategies/StaleWhileRevalidate.d.ts.map +1 -0
  87. package/dist/{strategies → lib/strategies}/Strategy.d.ts +15 -17
  88. package/dist/lib/strategies/Strategy.d.ts.map +1 -0
  89. package/dist/{strategies → lib/strategies}/StrategyHandler.d.ts +35 -41
  90. package/dist/lib/strategies/StrategyHandler.d.ts.map +1 -0
  91. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +3 -0
  92. package/dist/lib/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +1 -0
  93. package/dist/lib/strategies/utils/messages.d.ts.map +1 -0
  94. package/dist/navigationPreload.d.ts +3 -3
  95. package/dist/types.d.ts +12 -7
  96. package/dist/types.d.ts.map +1 -1
  97. package/dist/utils/PrecacheCacheKeyPlugin.d.ts +1 -1
  98. package/dist/utils/PrecacheCacheKeyPlugin.d.ts.map +1 -1
  99. package/dist/utils/assert.d.ts.map +1 -1
  100. package/dist/utils/cleanupOutdatedCaches.d.ts.map +1 -0
  101. package/dist/utils/clientsClaim.d.ts.map +1 -0
  102. package/dist/{parseRoute.d.ts → utils/parseRoute.d.ts} +3 -3
  103. package/dist/utils/parseRoute.d.ts.map +1 -0
  104. package/package.json +7 -21
  105. package/src/NavigationRoute.ts +6 -7
  106. package/src/PrecacheRoute.ts +5 -5
  107. package/src/RegExpRoute.ts +5 -5
  108. package/src/Route.ts +11 -11
  109. package/src/Serwist.ts +73 -80
  110. package/src/copyResponse.ts +7 -9
  111. package/src/disableDevLogs.ts +1 -1
  112. package/src/index.internal.ts +4 -0
  113. package/src/index.legacy.ts +14 -18
  114. package/src/index.ts +105 -19
  115. package/src/legacy/PrecacheController.ts +8 -8
  116. package/src/legacy/PrecacheFallbackPlugin.ts +1 -1
  117. package/src/legacy/PrecacheRoute.ts +3 -3
  118. package/src/legacy/Router.ts +5 -5
  119. package/src/legacy/fallbacks.ts +3 -3
  120. package/src/legacy/handlePrecaching.ts +1 -1
  121. package/src/legacy/initializeGoogleAnalytics.ts +218 -0
  122. package/src/legacy/installSerwist.ts +156 -5
  123. package/src/legacy/registerRoute.ts +1 -1
  124. package/src/{plugins → lib}/backgroundSync/BackgroundSyncPlugin.ts +6 -6
  125. package/src/{plugins/backgroundSync/Queue.ts → lib/backgroundSync/BackgroundSyncQueue.ts} +47 -26
  126. package/src/{plugins/backgroundSync/QueueDb.ts → lib/backgroundSync/BackgroundSyncQueueDb.ts} +16 -16
  127. package/src/{plugins/backgroundSync/QueueStore.ts → lib/backgroundSync/BackgroundSyncQueueStore.ts} +13 -13
  128. package/src/{plugins → lib}/backgroundSync/StorableRequest.ts +2 -2
  129. package/src/{plugins → lib}/broadcastUpdate/BroadcastCacheUpdate.ts +14 -9
  130. package/src/{plugins → lib}/broadcastUpdate/BroadcastUpdatePlugin.ts +1 -1
  131. package/src/lib/broadcastUpdate/constants.ts +12 -0
  132. package/src/{plugins → lib}/broadcastUpdate/types.ts +3 -3
  133. package/src/{plugins → lib}/cacheableResponse/CacheableResponse.ts +5 -5
  134. package/src/{plugins → lib}/expiration/CacheExpiration.ts +7 -7
  135. package/src/{plugins → lib}/expiration/ExpirationPlugin.ts +10 -10
  136. package/src/lib/googleAnalytics/constants.ts +22 -0
  137. package/src/{plugins/googleAnalytics/initialize.ts → lib/googleAnalytics/initializeGoogleAnalytics.ts} +9 -9
  138. package/src/{strategies → lib/strategies}/CacheFirst.ts +5 -5
  139. package/src/{strategies → lib/strategies}/CacheOnly.ts +6 -6
  140. package/src/{strategies → lib/strategies}/NetworkFirst.ts +7 -7
  141. package/src/{strategies → lib/strategies}/NetworkOnly.ts +7 -7
  142. package/src/{PrecacheStrategy.ts → lib/strategies/PrecacheStrategy.ts} +14 -10
  143. package/src/{strategies → lib/strategies}/StaleWhileRevalidate.ts +5 -5
  144. package/src/{strategies → lib/strategies}/Strategy.ts +19 -21
  145. package/src/{strategies → lib/strategies}/StrategyHandler.ts +45 -51
  146. package/src/{strategies → lib/strategies}/plugins/cacheOkAndOpaquePlugin.ts +1 -1
  147. package/src/{strategies → lib/strategies}/utils/messages.ts +2 -2
  148. package/src/models/messages/messages.ts +1 -1
  149. package/src/navigationPreload.ts +3 -3
  150. package/src/registerQuotaErrorCallback.ts +1 -1
  151. package/src/types.ts +12 -7
  152. package/src/utils/PrecacheCacheKeyPlugin.ts +1 -1
  153. package/src/utils/assert.ts +1 -1
  154. package/src/{cleanupOutdatedCaches.ts → utils/cleanupOutdatedCaches.ts} +3 -4
  155. package/src/utils/executeQuotaErrorCallbacks.ts +1 -1
  156. package/src/{parseRoute.ts → utils/parseRoute.ts} +21 -23
  157. package/src/utils/welcome.ts +1 -1
  158. package/dist/PrecacheStrategy.d.ts.map +0 -1
  159. package/dist/chunks/NetworkOnly.js +0 -599
  160. package/dist/chunks/PrecacheFallbackPlugin.js +0 -634
  161. package/dist/chunks/Serwist.js +0 -1034
  162. package/dist/chunks/registerQuotaErrorCallback.js +0 -17
  163. package/dist/chunks/timeout.js +0 -400
  164. package/dist/cleanupOutdatedCaches.d.ts.map +0 -1
  165. package/dist/clientsClaim.d.ts.map +0 -1
  166. package/dist/index.plugins.d.ts +0 -41
  167. package/dist/index.plugins.d.ts.map +0 -1
  168. package/dist/index.plugins.js +0 -669
  169. package/dist/index.strategies.d.ts +0 -22
  170. package/dist/index.strategies.d.ts.map +0 -1
  171. package/dist/index.strategies.js +0 -144
  172. package/dist/parseRoute.d.ts.map +0 -1
  173. package/dist/plugins/backgroundSync/BackgroundSyncPlugin.d.ts.map +0 -1
  174. package/dist/plugins/backgroundSync/Queue.d.ts.map +0 -1
  175. package/dist/plugins/backgroundSync/QueueDb.d.ts.map +0 -1
  176. package/dist/plugins/backgroundSync/QueueStore.d.ts.map +0 -1
  177. package/dist/plugins/backgroundSync/StorableRequest.d.ts.map +0 -1
  178. package/dist/plugins/broadcastUpdate/BroadcastCacheUpdate.d.ts.map +0 -1
  179. package/dist/plugins/broadcastUpdate/BroadcastUpdatePlugin.d.ts.map +0 -1
  180. package/dist/plugins/broadcastUpdate/constants.d.ts +0 -5
  181. package/dist/plugins/broadcastUpdate/constants.d.ts.map +0 -1
  182. package/dist/plugins/broadcastUpdate/responsesAreSame.d.ts.map +0 -1
  183. package/dist/plugins/broadcastUpdate/types.d.ts.map +0 -1
  184. package/dist/plugins/cacheableResponse/CacheableResponse.d.ts.map +0 -1
  185. package/dist/plugins/cacheableResponse/CacheableResponsePlugin.d.ts.map +0 -1
  186. package/dist/plugins/expiration/CacheExpiration.d.ts.map +0 -1
  187. package/dist/plugins/expiration/ExpirationPlugin.d.ts.map +0 -1
  188. package/dist/plugins/expiration/models/CacheTimestampsModel.d.ts.map +0 -1
  189. package/dist/plugins/googleAnalytics/constants.d.ts.map +0 -1
  190. package/dist/plugins/googleAnalytics/initialize.d.ts.map +0 -1
  191. package/dist/plugins/precaching/PrecacheFallbackPlugin.d.ts.map +0 -1
  192. package/dist/plugins/rangeRequests/RangeRequestsPlugin.d.ts.map +0 -1
  193. package/dist/plugins/rangeRequests/createPartialResponse.d.ts.map +0 -1
  194. package/dist/plugins/rangeRequests/utils/calculateEffectiveBoundaries.d.ts.map +0 -1
  195. package/dist/plugins/rangeRequests/utils/parseRangeHeader.d.ts.map +0 -1
  196. package/dist/strategies/CacheFirst.d.ts.map +0 -1
  197. package/dist/strategies/CacheOnly.d.ts.map +0 -1
  198. package/dist/strategies/NetworkFirst.d.ts.map +0 -1
  199. package/dist/strategies/NetworkOnly.d.ts.map +0 -1
  200. package/dist/strategies/StaleWhileRevalidate.d.ts.map +0 -1
  201. package/dist/strategies/Strategy.d.ts.map +0 -1
  202. package/dist/strategies/StrategyHandler.d.ts.map +0 -1
  203. package/dist/strategies/plugins/cacheOkAndOpaquePlugin.d.ts +0 -3
  204. package/dist/strategies/plugins/cacheOkAndOpaquePlugin.d.ts.map +0 -1
  205. package/dist/strategies/utils/messages.d.ts.map +0 -1
  206. package/src/index.plugins.ts +0 -95
  207. package/src/index.strategies.ts +0 -26
  208. package/src/plugins/broadcastUpdate/constants.ts +0 -12
  209. package/dist/{plugins/googleAnalytics → legacy}/constants.d.ts +0 -0
  210. package/dist/{plugins → lib}/backgroundSync/StorableRequest.d.ts +0 -0
  211. package/dist/{plugins → lib}/broadcastUpdate/BroadcastCacheUpdate.d.ts +0 -0
  212. package/dist/{plugins → lib}/broadcastUpdate/responsesAreSame.d.ts +0 -0
  213. package/dist/{plugins → lib}/cacheableResponse/CacheableResponse.d.ts +0 -0
  214. package/dist/{plugins → lib}/cacheableResponse/CacheableResponsePlugin.d.ts +0 -0
  215. package/dist/{plugins → lib}/expiration/models/CacheTimestampsModel.d.ts +0 -0
  216. package/dist/{plugins → lib}/rangeRequests/RangeRequestsPlugin.d.ts +0 -0
  217. package/dist/{plugins → lib}/rangeRequests/createPartialResponse.d.ts +0 -0
  218. package/dist/{plugins → lib}/rangeRequests/utils/calculateEffectiveBoundaries.d.ts +0 -0
  219. package/dist/{plugins → lib}/rangeRequests/utils/parseRangeHeader.d.ts +0 -0
  220. package/dist/{strategies → lib/strategies}/utils/messages.d.ts +0 -0
  221. package/dist/{cleanupOutdatedCaches.d.ts → utils/cleanupOutdatedCaches.d.ts} +0 -0
  222. package/dist/{clientsClaim.d.ts → utils/clientsClaim.d.ts} +0 -0
  223. package/src/{plugins/googleAnalytics → legacy}/constants.ts +0 -0
  224. package/src/{plugins → lib}/broadcastUpdate/responsesAreSame.ts +0 -0
  225. package/src/{plugins → lib}/cacheableResponse/CacheableResponsePlugin.ts +0 -0
  226. package/src/{plugins → lib}/expiration/models/CacheTimestampsModel.ts +0 -0
  227. package/src/{plugins → lib}/precaching/PrecacheFallbackPlugin.ts +1 -1
  228. package/src/{plugins → lib}/rangeRequests/RangeRequestsPlugin.ts +0 -0
  229. package/src/{plugins → lib}/rangeRequests/createPartialResponse.ts +1 -1
  230. package/src/{plugins → lib}/rangeRequests/utils/calculateEffectiveBoundaries.ts +1 -1
  231. package/src/{plugins → lib}/rangeRequests/utils/parseRangeHeader.ts +1 -1
  232. /package/src/{clientsClaim.ts → utils/clientsClaim.ts} +0 -0
@@ -1,8 +1,3 @@
1
- import { NavigationRoute } from "./NavigationRoute.js";
2
- import { PrecacheStrategy } from "./PrecacheStrategy.js";
3
- import { RegExpRoute } from "./RegExpRoute.js";
4
- import { Route } from "./Route.js";
5
- import { cleanupOutdatedCaches } from "./cleanupOutdatedCaches.js";
6
1
  import { PrecacheController } from "./legacy/PrecacheController.js";
7
2
  import { PrecacheFallbackPlugin } from "./legacy/PrecacheFallbackPlugin.js";
8
3
  import type { PrecacheFallbackEntry, PrecacheFallbackPluginOptions } from "./legacy/PrecacheFallbackPlugin.js";
@@ -15,6 +10,8 @@ import type { FallbackEntry, FallbacksOptions } from "./legacy/fallbacks.js";
15
10
  import { fallbacks } from "./legacy/fallbacks.js";
16
11
  import { getCacheKeyForURL } from "./legacy/getCacheKeyForURL.js";
17
12
  import { type HandlePrecachingOptions, handlePrecaching } from "./legacy/handlePrecaching.js";
13
+ import type { GoogleAnalyticsInitializeOptions } from "./legacy/initializeGoogleAnalytics.js";
14
+ import { initializeGoogleAnalytics } from "./legacy/initializeGoogleAnalytics.js";
18
15
  import { type InstallSerwistOptions, installSerwist } from "./legacy/installSerwist.js";
19
16
  import { matchPrecache } from "./legacy/matchPrecache.js";
20
17
  import { precache } from "./legacy/precache.js";
@@ -26,7 +23,6 @@ import { setDefaultHandler } from "./legacy/setDefaultHandler.js";
26
23
  import { getSingletonPrecacheController, setSingletonPrecacheController } from "./legacy/singletonPrecacheController.js";
27
24
  import { getSingletonRouter, setSingletonRouter } from "./legacy/singletonRouter.js";
28
25
  import { unregisterRoute } from "./legacy/unregisterRoute.js";
29
- import { parseRoute } from "./parseRoute.js";
30
- export { NavigationRoute, PrecacheStrategy, RegExpRoute, Route, cleanupOutdatedCaches, parseRoute, addPlugins, addRoute, createHandlerBoundToURL, getCacheKeyForURL, fallbacks, matchPrecache, precache, precacheAndRoute, PrecacheController, PrecacheFallbackPlugin, PrecacheRoute, getSingletonPrecacheController, setSingletonPrecacheController, handlePrecaching, installSerwist, registerRuntimeCaching, registerRoute, Router, setCatchHandler, setDefaultHandler, getSingletonRouter, setSingletonRouter, unregisterRoute, };
31
- export type { HandlePrecachingOptions, InstallSerwistOptions, FallbackEntry, FallbacksOptions, PrecacheFallbackEntry, PrecacheFallbackPluginOptions };
26
+ export { addPlugins, addRoute, createHandlerBoundToURL, fallbacks, getCacheKeyForURL, initializeGoogleAnalytics, installSerwist, matchPrecache, precache, precacheAndRoute, PrecacheController, PrecacheFallbackPlugin, PrecacheRoute, getSingletonPrecacheController, setSingletonPrecacheController, handlePrecaching, registerRuntimeCaching, registerRoute, Router, setCatchHandler, setDefaultHandler, getSingletonRouter, setSingletonRouter, unregisterRoute, };
27
+ export type { HandlePrecachingOptions, GoogleAnalyticsInitializeOptions, InstallSerwistOptions, FallbackEntry, FallbacksOptions, PrecacheFallbackEntry, PrecacheFallbackPluginOptions, };
32
28
  //# sourceMappingURL=index.legacy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.legacy.d.ts","sourceRoot":"","sources":["../src/index.legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAC/G,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,KAAK,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,OAAO,EAAE,KAAK,qBAAqB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AACzH,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAIL,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,KAAK,EACL,qBAAqB,EACrB,UAAU,EAEV,UAAU,EACV,QAAQ,EACR,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,8BAA8B,EAC9B,8BAA8B,EAC9B,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,GAChB,CAAC;AACF,YAAY,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,CAAC"}
1
+ {"version":3,"file":"index.legacy.d.ts","sourceRoot":"","sources":["../src/index.legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAC/G,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,KAAK,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,KAAK,qBAAqB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AACzH,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EAEL,UAAU,EACV,QAAQ,EACR,uBAAuB,EACvB,SAAS,EACT,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,8BAA8B,EAC9B,8BAA8B,EAC9B,gBAAgB,EAChB,sBAAsB,EACtB,aAAa,EACb,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,GAChB,CAAC;AACF,YAAY,EACV,uBAAuB,EACvB,gCAAgC,EAChC,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,6BAA6B,GAC9B,CAAC"}
@@ -1,9 +1,5 @@
1
- import { g as PrecacheStrategy, h as createCacheKey, j as parallel, k as printInstallDetails, l as printCleanupDetails, m as PrecacheInstallReportPlugin, n as generateURLVariations, p as parseRoute, c as cleanupOutdatedCaches, N as NavigationRoute, S as Serwist } from './chunks/Serwist.js';
2
- export { R as RegExpRoute } from './chunks/Serwist.js';
3
- import { R as Route, n as normalizeHandler, d as defaultMethod } from './chunks/PrecacheFallbackPlugin.js';
4
- import { c as cacheNames, f as finalAssertExports, S as SerwistError, l as logger, g as getFriendlyURL } from './chunks/timeout.js';
5
- import { w as waitUntil } from './chunks/waitUntil.js';
6
- import { S as Strategy } from './chunks/NetworkOnly.js';
1
+ import { P as PrecacheStrategy, c as createCacheKey, p as parallel, f as printInstallDetails, h as printCleanupDetails, k as PrecacheInstallReportPlugin, R as Route, g as generateURLVariations, n as normalizeHandler, i as defaultMethod, j as parseRoute, S as Strategy, b as NavigationRoute, B as BackgroundSyncPlugin, N as NetworkOnly, a as NetworkFirst, e as enableNavigationPreload, s as setCacheNameDetails, d as disableDevLogs } from './chunks/printInstallDetails.js';
2
+ import { c as cacheNames, f as finalAssertExports, S as SerwistError, l as logger, w as waitUntil, g as getFriendlyURL, b as cleanupOutdatedCaches, a as clientsClaim } from './chunks/waitUntil.js';
7
3
  import 'idb';
8
4
 
9
5
  class PrecacheCacheKeyPlugin {
@@ -601,9 +597,169 @@ const handlePrecaching = ({ precacheController = getSingletonPrecacheController(
601
597
  }
602
598
  };
603
599
 
604
- const installSerwist = (options)=>{
605
- const serwist = new Serwist(options);
606
- serwist.addEventListeners();
600
+ const QUEUE_NAME = "serwist-google-analytics";
601
+ const MAX_RETENTION_TIME = 60 * 48;
602
+ const GOOGLE_ANALYTICS_HOST = "www.google-analytics.com";
603
+ const GTM_HOST = "www.googletagmanager.com";
604
+ const ANALYTICS_JS_PATH = "/analytics.js";
605
+ const GTAG_JS_PATH = "/gtag/js";
606
+ const GTM_JS_PATH = "/gtm.js";
607
+ const COLLECT_PATHS_REGEX = /^\/(\w+\/)?collect/;
608
+
609
+ const createOnSyncCallback = (config)=>{
610
+ return async ({ queue })=>{
611
+ let entry = undefined;
612
+ while(entry = await queue.shiftRequest()){
613
+ const { request, timestamp } = entry;
614
+ const url = new URL(request.url);
615
+ try {
616
+ const params = request.method === "POST" ? new URLSearchParams(await request.clone().text()) : url.searchParams;
617
+ const originalHitTime = timestamp - (Number(params.get("qt")) || 0);
618
+ const queueTime = Date.now() - originalHitTime;
619
+ params.set("qt", String(queueTime));
620
+ if (config.parameterOverrides) {
621
+ for (const param of Object.keys(config.parameterOverrides)){
622
+ const value = config.parameterOverrides[param];
623
+ params.set(param, value);
624
+ }
625
+ }
626
+ if (typeof config.hitFilter === "function") {
627
+ config.hitFilter.call(null, params);
628
+ }
629
+ await fetch(new Request(url.origin + url.pathname, {
630
+ body: params.toString(),
631
+ method: "POST",
632
+ mode: "cors",
633
+ credentials: "omit",
634
+ headers: {
635
+ "Content-Type": "text/plain"
636
+ }
637
+ }));
638
+ if (process.env.NODE_ENV !== "production") {
639
+ logger.log(`Request for '${getFriendlyURL(url.href)}' has been replayed`);
640
+ }
641
+ } catch (err) {
642
+ await queue.unshiftRequest(entry);
643
+ if (process.env.NODE_ENV !== "production") {
644
+ logger.log(`Request for '${getFriendlyURL(url.href)}' failed to replay, putting it back in the queue.`);
645
+ }
646
+ throw err;
647
+ }
648
+ }
649
+ if (process.env.NODE_ENV !== "production") {
650
+ logger.log("All Google Analytics request successfully replayed; " + "the queue is now empty!");
651
+ }
652
+ };
653
+ };
654
+ const createCollectRoutes = (bgSyncPlugin)=>{
655
+ const match = ({ url })=>url.hostname === GOOGLE_ANALYTICS_HOST && COLLECT_PATHS_REGEX.test(url.pathname);
656
+ const handler = new NetworkOnly({
657
+ plugins: [
658
+ bgSyncPlugin
659
+ ]
660
+ });
661
+ return [
662
+ new Route(match, handler, "GET"),
663
+ new Route(match, handler, "POST")
664
+ ];
665
+ };
666
+ const createAnalyticsJsRoute = (cacheName)=>{
667
+ const match = ({ url })=>url.hostname === GOOGLE_ANALYTICS_HOST && url.pathname === ANALYTICS_JS_PATH;
668
+ const handler = new NetworkFirst({
669
+ cacheName
670
+ });
671
+ return new Route(match, handler, "GET");
672
+ };
673
+ const createGtagJsRoute = (cacheName)=>{
674
+ const match = ({ url })=>url.hostname === GTM_HOST && url.pathname === GTAG_JS_PATH;
675
+ const handler = new NetworkFirst({
676
+ cacheName
677
+ });
678
+ return new Route(match, handler, "GET");
679
+ };
680
+ const createGtmJsRoute = (cacheName)=>{
681
+ const match = ({ url })=>url.hostname === GTM_HOST && url.pathname === GTM_JS_PATH;
682
+ const handler = new NetworkFirst({
683
+ cacheName
684
+ });
685
+ return new Route(match, handler, "GET");
686
+ };
687
+ const initializeGoogleAnalytics = ({ router = getSingletonRouter(), cacheName, ...options } = {})=>{
688
+ const resolvedCacheName = cacheNames.getGoogleAnalyticsName(cacheName);
689
+ const bgSyncPlugin = new BackgroundSyncPlugin(QUEUE_NAME, {
690
+ maxRetentionTime: MAX_RETENTION_TIME,
691
+ onSync: createOnSyncCallback(options)
692
+ });
693
+ const routes = [
694
+ createGtmJsRoute(resolvedCacheName),
695
+ createAnalyticsJsRoute(resolvedCacheName),
696
+ createGtagJsRoute(resolvedCacheName),
697
+ ...createCollectRoutes(bgSyncPlugin)
698
+ ];
699
+ for (const route of routes){
700
+ router.registerRoute(route);
701
+ }
702
+ };
703
+
704
+ const registerRuntimeCaching = (...runtimeCachingList)=>{
705
+ for (const entry of runtimeCachingList){
706
+ registerRoute(entry.matcher, entry.handler, entry.method);
707
+ }
708
+ };
709
+
710
+ const installSerwist = ({ precacheController = getSingletonPrecacheController(), router = getSingletonRouter(), precacheEntries, precacheOptions, cleanupOutdatedCaches, navigateFallback, navigateFallbackAllowlist, navigateFallbackDenylist, skipWaiting, importScripts, navigationPreload = false, cacheId, clientsClaim: clientsClaim$1 = false, runtimeCaching, offlineAnalyticsConfig, disableDevLogs: disableDevLogs$1 = false, fallbacks: fallbacks$1 })=>{
711
+ if (!!importScripts && importScripts.length > 0) self.importScripts(...importScripts);
712
+ if (navigationPreload) enableNavigationPreload();
713
+ if (cacheId !== undefined) {
714
+ setCacheNameDetails({
715
+ prefix: cacheId
716
+ });
717
+ }
718
+ if (skipWaiting) {
719
+ self.skipWaiting();
720
+ } else {
721
+ self.addEventListener("message", (event)=>{
722
+ if (event.data && event.data.type === "SKIP_WAITING") {
723
+ self.skipWaiting();
724
+ }
725
+ });
726
+ }
727
+ if (clientsClaim$1) clientsClaim();
728
+ handlePrecaching({
729
+ precacheController,
730
+ router,
731
+ precacheEntries,
732
+ precacheOptions,
733
+ cleanupOutdatedCaches,
734
+ navigateFallback,
735
+ navigateFallbackAllowlist,
736
+ navigateFallbackDenylist
737
+ });
738
+ if (runtimeCaching !== undefined) {
739
+ if (fallbacks$1 !== undefined) {
740
+ runtimeCaching = fallbacks({
741
+ precacheController,
742
+ router,
743
+ runtimeCaching,
744
+ entries: fallbacks$1.entries,
745
+ precacheOptions
746
+ });
747
+ }
748
+ registerRuntimeCaching(...runtimeCaching);
749
+ }
750
+ if (offlineAnalyticsConfig !== undefined) {
751
+ if (typeof offlineAnalyticsConfig === "boolean") {
752
+ offlineAnalyticsConfig && initializeGoogleAnalytics({
753
+ router
754
+ });
755
+ } else {
756
+ initializeGoogleAnalytics({
757
+ ...offlineAnalyticsConfig,
758
+ router
759
+ });
760
+ }
761
+ }
762
+ if (disableDevLogs$1) disableDevLogs();
607
763
  };
608
764
 
609
765
  const matchPrecache = (request)=>{
@@ -619,12 +775,6 @@ const precacheAndRoute = (entries, options)=>{
619
775
  addRoute(options);
620
776
  };
621
777
 
622
- const registerRuntimeCaching = (...runtimeCachingList)=>{
623
- for (const entry of runtimeCachingList){
624
- registerRoute(entry.matcher, entry.handler, entry.method);
625
- }
626
- };
627
-
628
778
  const setCatchHandler = (handler)=>{
629
779
  getSingletonRouter().setCatchHandler(handler);
630
780
  };
@@ -637,4 +787,4 @@ const unregisterRoute = (route)=>{
637
787
  getSingletonRouter().unregisterRoute(route);
638
788
  };
639
789
 
640
- export { NavigationRoute, PrecacheController, PrecacheFallbackPlugin, PrecacheRoute, PrecacheStrategy, Route, Router, addPlugins, addRoute, cleanupOutdatedCaches, createHandlerBoundToURL, fallbacks, getCacheKeyForURL, getSingletonPrecacheController, getSingletonRouter, handlePrecaching, installSerwist, matchPrecache, parseRoute, precache, precacheAndRoute, registerRoute, registerRuntimeCaching, setCatchHandler, setDefaultHandler, setSingletonPrecacheController, setSingletonRouter, unregisterRoute };
790
+ export { PrecacheController, PrecacheFallbackPlugin, PrecacheRoute, Router, addPlugins, addRoute, createHandlerBoundToURL, fallbacks, getCacheKeyForURL, getSingletonPrecacheController, getSingletonRouter, handlePrecaching, initializeGoogleAnalytics, installSerwist, matchPrecache, precache, precacheAndRoute, registerRoute, registerRuntimeCaching, setCatchHandler, setDefaultHandler, setSingletonPrecacheController, setSingletonRouter, unregisterRoute };
@@ -1,5 +1,5 @@
1
+ import type { Strategy } from "../lib/strategies/Strategy.js";
1
2
  import type { RouteHandlerCallback, SerwistPlugin } from "../types.js";
2
- import type { Strategy } from "../strategies/Strategy.js";
3
3
  import type { CleanupResult, InstallResult, PrecacheEntry } from "../types.js";
4
4
  interface PrecacheControllerOptions {
5
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PrecacheController.d.ts","sourceRoot":"","sources":["../../src/legacy/PrecacheController.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAU/E,UAAU,yBAAyB;IACjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,+BAA+B,CAAC,CAAU;IAClD,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6G;IAC/I,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAkC;IAE1E;;;;OAIG;gBACS,EAAE,SAAS,EAAE,OAAY,EAAE,iBAAwB,EAAE,oBAAwB,EAAE,GAAE,yBAA8B;IAY3H;;;OAGG;IACH,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAUnD;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAwDzD;;;;;;;;;OASG;IACH,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAmCvD;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAuBxD;;;;;OAKG;IACH,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAIzC;;;;;OAKG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;;;;;;;OAQG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKlD;;;;OAIG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI7D;;;;;;;;;;;;;;;;;OAiBG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAU7E;;;;;;OAMG;IACH,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB;CAY3D"}
1
+ {"version":3,"file":"PrecacheController.d.ts","sourceRoot":"","sources":["../../src/legacy/PrecacheController.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAe/E,UAAU,yBAAyB;IACjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,+BAA+B,CAAC,CAAU;IAClD,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6G;IAC/I,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAkC;IAE1E;;;;OAIG;gBACS,EAAE,SAAS,EAAE,OAAY,EAAE,iBAAwB,EAAE,oBAAwB,EAAE,GAAE,yBAA8B;IAY3H;;;OAGG;IACH,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAUnD;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAwDzD;;;;;;;;;OASG;IACH,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAmCvD;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAuBxD;;;;;OAKG;IACH,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAIzC;;;;;OAKG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;;;;;;;OAQG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKlD;;;;OAIG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI7D;;;;;;;;;;;;;;;;;OAiBG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAU7E;;;;;;OAMG;IACH,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB;CAY3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"PrecacheRoute.d.ts","sourceRoot":"","sources":["../../src/legacy/PrecacheRoute.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;;;GAKG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC;;;;;OAKG;gBACS,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,oBAAoB;CAkBnF"}
1
+ {"version":3,"file":"PrecacheRoute.d.ts","sourceRoot":"","sources":["../../src/legacy/PrecacheRoute.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;;;GAKG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC;;;;;OAKG;gBACS,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,oBAAoB;CAkBnF"}
@@ -1,6 +1,6 @@
1
- import type { RouteHandler, RouteHandlerCallbackOptions, RouteMatchCallback, RouteMatchCallbackOptions } from "../types.js";
2
1
  import type { Route } from "../Route.js";
3
2
  import type { HTTPMethod } from "../constants.js";
3
+ import type { RouteHandler, RouteHandlerCallbackOptions, RouteMatchCallback, RouteMatchCallbackOptions } from "../types.js";
4
4
  /**
5
5
  * `Router` can be used to process a `FetchEvent` using one or more `Route`(s), responding with a `Response`
6
6
  * if a matching route exists.
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/legacy/Router.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,2BAA2B,EAAsB,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAKhJ,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAgBlD;;;;;;;;;;;GAWG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsC;IACzE,OAAO,CAAC,qBAAqB,CAA2C;IACxE,OAAO,CAAC,qBAAqB,CAAuD;IACpF,OAAO,CAAC,aAAa,CAAC,CAAqB;IAE3C;;OAEG;;IAMH;;;OAGG;IACH,IAAI,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAErC;IAED;;;;OAIG;IACH,gBAAgB,IAAI,IAAI;IAaxB;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,gBAAgB,IAAI,IAAI;IAiCxB;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IAM3B;;;;;;;;OAQG;IACH,aAAa,CAAC,EACZ,OAAO,EACP,KAAK,GACN,EAAE;QACD;;WAEG;QACH,OAAO,EAAE,OAAO,CAAC;QACjB;;WAEG;QACH,KAAK,EAAE,eAAe,CAAC;KACxB,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS;IA8HjC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,yBAAyB,GAAG;QACjF,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;KAChD;IA+CD;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,GAAE,UAA0B,GAAG,IAAI;IAIlF;;;;;;OAMG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;;;;;;;;OASG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,KAAK;IAM1H;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IA+CjC;;;;OAIG;IACH,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAcpC"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/legacy/Router.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,2BAA2B,EAAsB,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAmBhJ;;;;;;;;;;;GAWG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsC;IACzE,OAAO,CAAC,qBAAqB,CAA2C;IACxE,OAAO,CAAC,qBAAqB,CAAuD;IACpF,OAAO,CAAC,aAAa,CAAC,CAAqB;IAE3C;;OAEG;;IAMH;;;OAGG;IACH,IAAI,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAErC;IAED;;;;OAIG;IACH,gBAAgB,IAAI,IAAI;IAaxB;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,gBAAgB,IAAI,IAAI;IAiCxB;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IAM3B;;;;;;;;OAQG;IACH,aAAa,CAAC,EACZ,OAAO,EACP,KAAK,GACN,EAAE;QACD;;WAEG;QACH,OAAO,EAAE,OAAO,CAAC;QACjB;;WAEG;QACH,KAAK,EAAE,eAAe,CAAC;KACxB,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS;IA8HjC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,yBAAyB,GAAG;QACjF,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;KAChD;IA+CD;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,GAAE,UAA0B,GAAG,IAAI;IAIlF;;;;;;OAMG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;;;;;;;;OASG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,KAAK;IAM1H;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IA+CjC;;;;OAIG;IACH,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAcpC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/legacy/constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,UAAU,6BAA6B,CAAC;AACrD,eAAO,MAAM,kBAAkB,QAAU,CAAC;AAC1C,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,QAAQ,6BAA6B,CAAC;AACnD,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AACjD,eAAO,MAAM,YAAY,aAAa,CAAC;AACvC,eAAO,MAAM,WAAW,YAAY,CAAC;AACrC,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAM/C,eAAO,MAAM,mBAAmB,QAAuB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { PrecacheRouteOptions, RuntimeCaching } from "../types.js";
2
2
  import type { PrecacheController } from "./PrecacheController.js";
3
- import type { Router } from "./Router.js";
4
3
  import type { PrecacheFallbackEntry } from "./PrecacheFallbackPlugin.js";
4
+ import type { Router } from "./Router.js";
5
5
  export interface FallbackEntry extends PrecacheFallbackEntry {
6
6
  /**
7
7
  * The revision used for precaching.
@@ -1 +1 @@
1
- {"version":3,"file":"fallbacks.d.ts","sourceRoot":"","sources":["../../src/legacy/fallbacks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEzE,MAAM,WAAW,aAAc,SAAQ,qBAAqB;IAC1D;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC;;OAEG;IACH,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,8EAMnB,gBAAgB,KAAG,cAAc,EAqBnC,CAAC"}
1
+ {"version":3,"file":"fallbacks.d.ts","sourceRoot":"","sources":["../../src/legacy/fallbacks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,MAAM,WAAW,aAAc,SAAQ,qBAAqB;IAC1D;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC;;OAEG;IACH,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,8EAMnB,gBAAgB,KAAG,cAAc,EAqBnC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlePrecaching.d.ts","sourceRoot":"","sources":["../../src/legacy/handlePrecaching.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK1C;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C;;OAEG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAC;IACrC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;CACrC;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,oKAS1B,uBAAuB,KAAG,IAgB5B,CAAC"}
1
+ {"version":3,"file":"handlePrecaching.d.ts","sourceRoot":"","sources":["../../src/legacy/handlePrecaching.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK1C;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C;;OAEG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAC;IACrC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;CACrC;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,oKAS1B,uBAAuB,KAAG,IAgB5B,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { Router } from "./Router.js";
2
+ /**
3
+ * @deprecated
4
+ */
5
+ export interface GoogleAnalyticsInitializeOptions {
6
+ /**
7
+ * An optional `Router` instance. If not provided, the singleton `Router`
8
+ * will be used.
9
+ */
10
+ router?: Router;
11
+ /**
12
+ * The cache name to store and retrieve analytics.js. Defaults to Serwist's default cache names.
13
+ */
14
+ cacheName?: string;
15
+ /**
16
+ * [Measurement Protocol parameters](https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters),
17
+ * expressed as key/value pairs, to be added to replayed Google Analytics
18
+ * requests. This can be used to, e.g., set a custom dimension indicating
19
+ * that the request was replayed.
20
+ */
21
+ parameterOverrides?: {
22
+ [paramName: string]: string;
23
+ };
24
+ /**
25
+ * A function that allows you to modify the hit parameters prior to replaying
26
+ * the hit. The function is invoked with the original hit's URLSearchParams
27
+ * object as its only argument.
28
+ */
29
+ hitFilter?: (params: URLSearchParams) => void;
30
+ }
31
+ /**
32
+ * Initialize Serwist's offline Google Analytics v3 support.
33
+ *
34
+ * @param options
35
+ * @deprecated Use `serwist.initializeGoogleAnalytics` instead.
36
+ */
37
+ export declare const initializeGoogleAnalytics: ({ router, cacheName, ...options }?: GoogleAnalyticsInitializeOptions) => void;
38
+ //# sourceMappingURL=initializeGoogleAnalytics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initializeGoogleAnalytics.d.ts","sourceRoot":"","sources":["../../src/legacy/initializeGoogleAnalytics.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAarC;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrD;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;CAC/C;AAyID;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,uCAA8D,gCAAgC,KAAQ,IAkB3I,CAAC"}
@@ -1,15 +1,81 @@
1
- import { type SerwistOptions } from "../Serwist.js";
1
+ import type { RuntimeCaching } from "../types.js";
2
+ import type { PrecacheController } from "./PrecacheController.js";
3
+ import type { Router } from "./Router.js";
4
+ import type { FallbacksOptions } from "./fallbacks.js";
5
+ import { type HandlePrecachingOptions } from "./handlePrecaching.js";
6
+ import type { GoogleAnalyticsInitializeOptions } from "./initializeGoogleAnalytics.js";
2
7
  /**
3
8
  * Options for `installSerwist`.
4
9
  *
5
10
  * @deprecated
6
11
  */
7
- export type InstallSerwistOptions = SerwistOptions;
12
+ export interface InstallSerwistOptions extends Omit<HandlePrecachingOptions, "precacheController" | "router"> {
13
+ /**
14
+ * An optional `PrecacheController` instance. If not provided, the singleton
15
+ * `PrecacheController` will be used.
16
+ */
17
+ precacheController?: PrecacheController;
18
+ /**
19
+ * An optional `Router` instance. If not provided, the singleton `Router`
20
+ * will be used.
21
+ */
22
+ router?: Router;
23
+ /**
24
+ * Forces the waiting service worker to become the active one.
25
+ *
26
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/skipWaiting
27
+ */
28
+ skipWaiting?: boolean;
29
+ /**
30
+ * Imports external scripts. They are executed in the order they
31
+ * are passed.
32
+ *
33
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/importScripts
34
+ */
35
+ importScripts?: string[];
36
+ /**
37
+ * Enables navigation preloading if it is supported.
38
+ *
39
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/navigationPreload
40
+ */
41
+ navigationPreload?: boolean;
42
+ /**
43
+ * Modifies the prefix of the default cache names used by Serwist packages.
44
+ */
45
+ cacheId?: string | undefined;
46
+ /**
47
+ * Claims any currently available clients once the service worker
48
+ * becomes active. This is normally used in conjunction with `skipWaiting()`.
49
+ *
50
+ * @default false
51
+ */
52
+ clientsClaim?: boolean;
53
+ /**
54
+ * A list of caching strategies.
55
+ */
56
+ runtimeCaching?: RuntimeCaching[];
57
+ /**
58
+ * Your configuration for `@serwist/google-analytics`. This plugin is
59
+ * only initialized when this option is not `undefined` or `false`.
60
+ */
61
+ offlineAnalyticsConfig?: GoogleAnalyticsInitializeOptions | boolean;
62
+ /**
63
+ * Disables Serwist's logging in development mode.
64
+ *
65
+ * @default false
66
+ */
67
+ disableDevLogs?: boolean;
68
+ /**
69
+ * Precaches routes so that they can be used as a fallback when
70
+ * a Strategy fails to generate a response.
71
+ */
72
+ fallbacks?: Pick<FallbacksOptions, "entries">;
73
+ }
8
74
  /**
9
75
  * Abstracts away the core APIs of Serwist.
10
76
  *
11
77
  * @param options - `installSerwist` options.
12
78
  * @deprecated
13
79
  */
14
- export declare const installSerwist: (options: InstallSerwistOptions) => void;
80
+ export declare const installSerwist: ({ precacheController, router, precacheEntries, precacheOptions, cleanupOutdatedCaches, navigateFallback, navigateFallbackAllowlist, navigateFallbackDenylist, skipWaiting, importScripts, navigationPreload, cacheId, clientsClaim, runtimeCaching, offlineAnalyticsConfig, disableDevLogs, fallbacks, }: InstallSerwistOptions) => void;
15
81
  //# sourceMappingURL=installSerwist.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"installSerwist.d.ts","sourceRoot":"","sources":["../../src/legacy/installSerwist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,YAAa,qBAAqB,KAAG,IAG/D,CAAC"}
1
+ {"version":3,"file":"installSerwist.d.ts","sourceRoot":"","sources":["../../src/legacy/installSerwist.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,KAAK,uBAAuB,EAAoB,MAAM,uBAAuB,CAAC;AAEvF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAOvF;;;;GAIG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,oBAAoB,GAAG,QAAQ,CAAC;IAC3G;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,gCAAgC,GAAG,OAAO,CAAC;IACpE;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;CAC/C;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,6SAkBxB,qBAAqB,KAAG,IA2D1B,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { RouteHandler, RouteMatchCallback } from "../types.js";
2
1
  import type { Route } from "../Route.js";
3
2
  import type { HTTPMethod } from "../constants.js";
3
+ import type { RouteHandler, RouteMatchCallback } from "../types.js";
4
4
  /**
5
5
  * Registers a `RegExp`, string, or function with a caching
6
6
  * strategy to a singleton `Router` instance.
@@ -1 +1 @@
1
- {"version":3,"file":"registerRoute.d.ts","sourceRoot":"","sources":["../../src/legacy/registerRoute.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,YAAa,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,YAAY,YAAY,WAAW,UAAU,KAAG,KAElI,CAAC"}
1
+ {"version":3,"file":"registerRoute.d.ts","sourceRoot":"","sources":["../../src/legacy/registerRoute.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGpE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,YAAa,MAAM,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,YAAY,YAAY,WAAW,UAAU,KAAG,KAElI,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { FetchDidFailCallbackParam, SerwistPlugin } from "../../types.js";
2
- import type { QueueOptions } from "./Queue.js";
2
+ import type { BackgroundSyncQueueOptions } from "./BackgroundSyncQueue.js";
3
3
  /**
4
4
  * A class implementing the `fetchDidFail` lifecycle callback. This makes it
5
5
  * easier to add failed requests to a background sync Queue.
@@ -11,9 +11,9 @@ export declare class BackgroundSyncPlugin implements SerwistPlugin {
11
11
  * documentation for parameter details.
12
12
  * @param options See the `serwist/plugins.BackgroundSyncQueue`
13
13
  * documentation for parameter details.
14
- * @see https://serwist.pages.dev/docs/background-sync/queue
14
+ * @see https://serwist.pages.dev/docs/core/background-sync-queue
15
15
  */
16
- constructor(name: string, options?: QueueOptions);
16
+ constructor(name: string, options?: BackgroundSyncQueueOptions);
17
17
  /**
18
18
  * @param options
19
19
  * @private
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackgroundSyncPlugin.d.ts","sourceRoot":"","sources":["../../../src/lib/backgroundSync/BackgroundSyncPlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAG3E;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,0BAA0B;IAI9D;;;OAGG;IACG,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,yBAAyB;CAG1D"}
@@ -1,8 +1,24 @@
1
+ interface SyncManager {
2
+ getTags(): Promise<string[]>;
3
+ register(tag: string): Promise<void>;
4
+ }
5
+ declare global {
6
+ interface ServiceWorkerRegistration {
7
+ readonly sync: SyncManager;
8
+ }
9
+ interface SyncEvent extends ExtendableEvent {
10
+ readonly lastChance: boolean;
11
+ readonly tag: string;
12
+ }
13
+ interface ServiceWorkerGlobalScopeEventMap {
14
+ sync: SyncEvent;
15
+ }
16
+ }
1
17
  interface OnSyncCallbackOptions {
2
- queue: Queue;
18
+ queue: BackgroundSyncQueue;
3
19
  }
4
20
  type OnSyncCallback = (options: OnSyncCallbackOptions) => void | Promise<void>;
5
- export interface QueueOptions {
21
+ export interface BackgroundSyncQueueOptions {
6
22
  /**
7
23
  * If `true`, instead of attempting to use background sync events, always attempt
8
24
  * to replay queued request at service worker startup. Most folks will not need
@@ -29,7 +45,7 @@ export interface QueueOptions {
29
45
  */
30
46
  onSync?: OnSyncCallback;
31
47
  }
32
- export interface QueueEntry {
48
+ export interface BackgroundSyncQueueEntry {
33
49
  /**
34
50
  * The request to store in the queue.
35
51
  */
@@ -54,7 +70,7 @@ export interface QueueEntry {
54
70
  * later. All parts of the storing and replaying process are observable via
55
71
  * callbacks.
56
72
  */
57
- export declare class Queue {
73
+ export declare class BackgroundSyncQueue {
58
74
  private readonly _name;
59
75
  private readonly _onSync;
60
76
  private readonly _maxRetentionTime;
@@ -71,7 +87,7 @@ export declare class Queue {
71
87
  * a duplicate name is detected.
72
88
  * @param options
73
89
  */
74
- constructor(name: string, { forceSyncFallback, onSync, maxRetentionTime }?: QueueOptions);
90
+ constructor(name: string, { forceSyncFallback, onSync, maxRetentionTime }?: BackgroundSyncQueueOptions);
75
91
  /**
76
92
  * @returns
77
93
  */
@@ -82,35 +98,35 @@ export declare class Queue {
82
98
  *
83
99
  * @param entry
84
100
  */
85
- pushRequest(entry: QueueEntry): Promise<void>;
101
+ pushRequest(entry: BackgroundSyncQueueEntry): Promise<void>;
86
102
  /**
87
103
  * Stores the passed request in IndexedDB (with its timestamp and any
88
104
  * metadata) at the beginning of the queue.
89
105
  *
90
106
  * @param entry
91
107
  */
92
- unshiftRequest(entry: QueueEntry): Promise<void>;
108
+ unshiftRequest(entry: BackgroundSyncQueueEntry): Promise<void>;
93
109
  /**
94
110
  * Removes and returns the last request in the queue (along with its
95
111
  * timestamp and any metadata).
96
112
  *
97
113
  * @returns
98
114
  */
99
- popRequest(): Promise<QueueEntry | undefined>;
115
+ popRequest(): Promise<BackgroundSyncQueueEntry | undefined>;
100
116
  /**
101
117
  * Removes and returns the first request in the queue (along with its
102
118
  * timestamp and any metadata).
103
119
  *
104
120
  * @returns
105
121
  */
106
- shiftRequest(): Promise<QueueEntry | undefined>;
122
+ shiftRequest(): Promise<BackgroundSyncQueueEntry | undefined>;
107
123
  /**
108
124
  * Returns all the entries that have not expired (per `maxRetentionTime`).
109
125
  * Any expired entries are removed from the queue.
110
126
  *
111
127
  * @returns
112
128
  */
113
- getAll(): Promise<QueueEntry[]>;
129
+ getAll(): Promise<BackgroundSyncQueueEntry[]>;
114
130
  /**
115
131
  * Returns the number of entries present in the queue.
116
132
  * Note that expired entries (per `maxRetentionTime`) are also included in this count.
@@ -125,7 +141,7 @@ export declare class Queue {
125
141
  * @param operation
126
142
  * @private
127
143
  */
128
- _addRequest({ request, metadata, timestamp }: QueueEntry, operation: "push" | "unshift"): Promise<void>;
144
+ _addRequest({ request, metadata, timestamp }: BackgroundSyncQueueEntry, operation: "push" | "unshift"): Promise<void>;
129
145
  /**
130
146
  * Removes and returns the first or last (depending on `operation`) entry
131
147
  * from the QueueStore that's not older than the `maxRetentionTime`.
@@ -134,7 +150,7 @@ export declare class Queue {
134
150
  * @returns
135
151
  * @private
136
152
  */
137
- _removeRequest(operation: "pop" | "shift"): Promise<QueueEntry | undefined>;
153
+ _removeRequest(operation: "pop" | "shift"): Promise<BackgroundSyncQueueEntry | undefined>;
138
154
  /**
139
155
  * Loops through each request in the queue and attempts to re-fetch it.
140
156
  * If any request fails to re-fetch, it's put back in the same position in
@@ -163,4 +179,4 @@ export declare class Queue {
163
179
  static get _queueNames(): Set<string>;
164
180
  }
165
181
  export {};
166
- //# sourceMappingURL=Queue.d.ts.map
182
+ //# sourceMappingURL=BackgroundSyncQueue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackgroundSyncQueue.d.ts","sourceRoot":"","sources":["../../../src/lib/backgroundSync/BackgroundSyncQueue.ts"],"names":[],"mappings":"AAgBA,UAAU,WAAW;IACnB,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,yBAAyB;QACjC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;KAC5B;IAED,UAAU,SAAU,SAAQ,eAAe;QACzC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;QAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;KACtB;IAED,UAAU,gCAAgC;QACxC,IAAI,EAAE,SAAS,CAAC;KACjB;CACF;AAKD,UAAU,qBAAqB;IAC7B,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,WAAW,0BAA0B;IACzC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AA2BD;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IACvD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAC7C,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,wBAAwB,CAAS;IAEzC;;;;;;;;OAQG;gBACS,IAAI,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAE,0BAA+B;IAgB1G;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBjE;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBpE;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAIjE;;;;;OAKG;IACG,YAAY,IAAI,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAInE;;;;;OAKG;IACG,MAAM,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAmBnD;;;;;OAKG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B;;;;;;OAMG;IACG,WAAW,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAsB,EAAE,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCxI;;;;;;;OAOG;IACG,cAAc,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IA0B/F;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBrC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAenC;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAmDxB;;;;;;OAMG;IACH,MAAM,KAAK,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,CAEpC;CACF"}