@angular/fire 7.6.0 → 16.0.0-canary.4172abd

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 (513) hide show
  1. package/analytics/analytics.module.d.ts +2 -2
  2. package/analytics/is-analytics-supported-factory.d.ts +4 -0
  3. package/analytics/screen-tracking.service.d.ts +3 -3
  4. package/app-check/app-check.d.ts +0 -6
  5. package/app-check/app-check.module.d.ts +3 -4
  6. package/app-check/public_api.d.ts +2 -1
  7. package/auth/auth.module.d.ts +2 -2
  8. package/auth-guard/auth-guard.d.ts +6 -6
  9. package/compat/analytics/analytics.d.ts +1 -3
  10. package/compat/analytics/analytics.module.d.ts +1 -1
  11. package/compat/analytics/screen-tracking.service.d.ts +1 -1
  12. package/compat/analytics/user-tracking.service.d.ts +1 -1
  13. package/compat/auth/auth.d.ts +4 -4
  14. package/compat/auth-guard/auth-guard.d.ts +8 -6
  15. package/compat/database/database.d.ts +4 -4
  16. package/compat/database/interfaces.d.ts +14 -14
  17. package/compat/database/list/audit-trail.d.ts +1 -1
  18. package/compat/database/list/create-reference.d.ts +1 -1
  19. package/compat/database/list/data-operation.d.ts +1 -1
  20. package/compat/database/list/state-changes.d.ts +1 -1
  21. package/compat/database/object/create-reference.d.ts +1 -1
  22. package/compat/database/observable/fromRef.d.ts +1 -1
  23. package/compat/database/utils.d.ts +1 -1
  24. package/compat/firebase.app.module.d.ts +1 -1
  25. package/compat/firestore/collection/collection.d.ts +2 -2
  26. package/compat/firestore/collection-group/collection-group.d.ts +2 -2
  27. package/compat/firestore/document/document.d.ts +4 -4
  28. package/compat/firestore/firestore.d.ts +7 -7
  29. package/compat/firestore/interfaces.d.ts +19 -19
  30. package/compat/functions/functions.d.ts +3 -3
  31. package/compat/messaging/messaging.d.ts +2 -2
  32. package/compat/performance/performance.d.ts +2 -2
  33. package/compat/proxy.d.ts +8 -8
  34. package/compat/remote-config/interfaces.d.ts +1 -1
  35. package/compat/remote-config/remote-config.d.ts +15 -49
  36. package/compat/storage/interfaces.d.ts +8 -8
  37. package/compat/storage/observable/fromTask.d.ts +1 -2
  38. package/compat/storage/pipes/storageUrl.pipe.d.ts +1 -1
  39. package/compat/storage/ref.d.ts +1 -1
  40. package/compat/storage/storage.d.ts +3 -3
  41. package/compat/storage/task.d.ts +1 -1
  42. package/core.d.ts +8 -12
  43. package/database/database.module.d.ts +2 -2
  44. package/{esm2015/analytics/analytics.js → esm2022/analytics/analytics.mjs} +1 -1
  45. package/esm2022/analytics/analytics.module.mjs +94 -0
  46. package/esm2022/analytics/is-analytics-supported-factory.mjs +16 -0
  47. package/esm2022/analytics/overrides.mjs +3 -0
  48. package/esm2022/analytics/screen-tracking.service.mjs +148 -0
  49. package/esm2022/analytics/user-tracking.service.mjs +44 -0
  50. package/{esm2015/app/app.js → esm2022/app/app.mjs} +1 -1
  51. package/esm2022/app/app.module.mjs +85 -0
  52. package/esm2022/app-check/app-check.mjs +10 -0
  53. package/esm2022/app-check/app-check.module.mjs +78 -0
  54. package/esm2022/app-check/public_api.mjs +5 -0
  55. package/{esm2015/auth/auth.js → esm2022/auth/auth.mjs} +1 -1
  56. package/esm2022/auth/auth.module.mjs +71 -0
  57. package/esm2022/auth-guard/auth-guard.mjs +53 -0
  58. package/{esm2015/auth-guard/auth-guard.module.js → esm2022/auth-guard/auth-guard.module.mjs} +7 -7
  59. package/esm2022/compat/analytics/analytics.mjs +160 -0
  60. package/esm2022/compat/analytics/analytics.module.mjs +35 -0
  61. package/esm2022/compat/analytics/screen-tracking.service.mjs +49 -0
  62. package/esm2022/compat/analytics/user-tracking.service.mjs +53 -0
  63. package/esm2022/compat/auth/auth.mjs +161 -0
  64. package/{esm2015/compat/auth/auth.module.js → esm2022/compat/auth/auth.module.mjs} +7 -7
  65. package/{esm2015/compat/auth/public_api.js → esm2022/compat/auth/public_api.mjs} +1 -1
  66. package/esm2022/compat/auth-guard/auth-guard.mjs +53 -0
  67. package/{esm2015/compat/auth-guard/auth-guard.module.js → esm2022/compat/auth-guard/auth-guard.module.mjs} +7 -7
  68. package/{esm2015/compat/cache.js → esm2022/compat/cache.mjs} +4 -3
  69. package/esm2022/compat/database/database.mjs +119 -0
  70. package/{esm2015/compat/database/database.module.js → esm2022/compat/database/database.module.mjs} +7 -7
  71. package/esm2022/compat/database/interfaces.mjs +2 -0
  72. package/{esm2015/compat/database/list/audit-trail.js → esm2022/compat/database/list/audit-trail.mjs} +3 -3
  73. package/esm2022/compat/database/list/changes.mjs +85 -0
  74. package/esm2022/compat/database/list/create-reference.mjs +44 -0
  75. package/{esm2015/compat/database/list/data-operation.js → esm2022/compat/database/list/data-operation.mjs} +1 -1
  76. package/{esm2015/compat/database/list/snapshot-changes.js → esm2022/compat/database/list/snapshot-changes.mjs} +1 -1
  77. package/{esm2015/compat/database/list/state-changes.js → esm2022/compat/database/list/state-changes.mjs} +2 -2
  78. package/{esm2015/compat/database/object/create-reference.js → esm2022/compat/database/object/create-reference.mjs} +2 -2
  79. package/{esm2015/compat/database/object/snapshot-changes.js → esm2022/compat/database/object/snapshot-changes.mjs} +1 -1
  80. package/esm2022/compat/database/observable/fromRef.mjs +48 -0
  81. package/{esm2015/compat/database/utils.js → esm2022/compat/database/utils.mjs} +1 -1
  82. package/{esm2015/compat/firebase.app.js → esm2022/compat/firebase.app.mjs} +1 -1
  83. package/esm2022/compat/firebase.app.module.mjs +71 -0
  84. package/esm2022/compat/firestore/collection/changes.mjs +108 -0
  85. package/esm2022/compat/firestore/collection/collection.mjs +123 -0
  86. package/esm2022/compat/firestore/collection-group/collection-group.mjs +86 -0
  87. package/esm2022/compat/firestore/document/document.mjs +87 -0
  88. package/esm2022/compat/firestore/firestore.mjs +257 -0
  89. package/{esm2015/compat/firestore/firestore.module.js → esm2022/compat/firestore/firestore.module.mjs} +7 -7
  90. package/esm2022/compat/firestore/interfaces.mjs +2 -0
  91. package/esm2022/compat/firestore/observable/fromRef.mjs +40 -0
  92. package/esm2022/compat/functions/functions.mjs +69 -0
  93. package/{esm2015/compat/functions/functions.module.js → esm2022/compat/functions/functions.module.mjs} +7 -7
  94. package/{esm2015/compat/functions/public_api.js → esm2022/compat/functions/public_api.mjs} +1 -1
  95. package/esm2022/compat/messaging/messaging.mjs +81 -0
  96. package/{esm2015/compat/messaging/messaging.module.js → esm2022/compat/messaging/messaging.module.mjs} +7 -7
  97. package/esm2022/compat/performance/performance.mjs +105 -0
  98. package/esm2022/compat/performance/performance.module.mjs +27 -0
  99. package/esm2022/compat/performance/performance.service.mjs +28 -0
  100. package/esm2022/compat/proxy.mjs +58 -0
  101. package/esm2022/compat/remote-config/remote-config.mjs +206 -0
  102. package/{esm2015/compat/remote-config/remote-config.module.js → esm2022/compat/remote-config/remote-config.module.mjs} +7 -7
  103. package/esm2022/compat/storage/observable/fromTask.mjs +36 -0
  104. package/esm2022/compat/storage/pipes/storageUrl.pipe.mjs +58 -0
  105. package/{esm2015/compat/storage/ref.js → esm2022/compat/storage/ref.mjs} +3 -3
  106. package/esm2022/compat/storage/storage.mjs +95 -0
  107. package/esm2022/compat/storage/storage.module.mjs +22 -0
  108. package/{esm2015/compat/storage/task.js → esm2022/compat/storage/task.mjs} +2 -2
  109. package/esm2022/core.mjs +43 -0
  110. package/{esm2015/database/database.js → esm2022/database/database.mjs} +1 -1
  111. package/esm2022/database/database.module.mjs +74 -0
  112. package/{esm2015/firestore/firestore.js → esm2022/firestore/firestore.mjs} +1 -1
  113. package/esm2022/firestore/firestore.module.mjs +74 -0
  114. package/{esm2015/firestore/lite/lite.js → esm2022/firestore/lite/lite.mjs} +1 -1
  115. package/esm2022/firestore/lite/lite.module.mjs +73 -0
  116. package/esm2022/firestore/rxfire.mjs +15 -0
  117. package/{esm2015/functions/functions.js → esm2022/functions/functions.mjs} +1 -1
  118. package/esm2022/functions/functions.module.mjs +74 -0
  119. package/esm2022/messaging/is-messaging-supported-factory.mjs +16 -0
  120. package/{esm2015/messaging/messaging.js → esm2022/messaging/messaging.mjs} +1 -1
  121. package/esm2022/messaging/messaging.module.mjs +86 -0
  122. package/esm2022/messaging/overrides.mjs +3 -0
  123. package/{esm2015/performance/performance.js → esm2022/performance/performance.mjs} +1 -1
  124. package/esm2022/performance/performance.module.mjs +81 -0
  125. package/esm2022/remote-config/is-remote-config-supported-factory.mjs +16 -0
  126. package/esm2022/remote-config/overrides.mjs +3 -0
  127. package/{esm2015/remote-config/remote-config.js → esm2022/remote-config/remote-config.mjs} +1 -1
  128. package/esm2022/remote-config/remote-config.module.mjs +86 -0
  129. package/{esm2015/storage/storage.js → esm2022/storage/storage.mjs} +1 -1
  130. package/esm2022/storage/storage.module.mjs +74 -0
  131. package/esm2022/zones.mjs +194 -0
  132. package/{fesm2015/angular-fire-analytics.js → fesm2022/angular-fire-analytics.mjs} +64 -40
  133. package/fesm2022/angular-fire-analytics.mjs.map +1 -0
  134. package/{fesm2015/angular-fire-app-check.js → fesm2022/angular-fire-app-check.mjs} +16 -24
  135. package/fesm2022/angular-fire-app-check.mjs.map +1 -0
  136. package/{fesm2015/angular-fire-app.js → fesm2022/angular-fire-app.mjs} +10 -9
  137. package/fesm2022/angular-fire-app.mjs.map +1 -0
  138. package/{fesm2015/angular-fire-auth-guard.js → fesm2022/angular-fire-auth-guard.mjs} +31 -27
  139. package/fesm2022/angular-fire-auth-guard.mjs.map +1 -0
  140. package/{fesm2015/angular-fire-auth.js → fesm2022/angular-fire-auth.mjs} +10 -11
  141. package/fesm2022/angular-fire-auth.mjs.map +1 -0
  142. package/{fesm2015/angular-fire-compat-analytics.js → fesm2022/angular-fire-compat-analytics.mjs} +43 -41
  143. package/fesm2022/angular-fire-compat-analytics.mjs.map +1 -0
  144. package/{fesm2015/angular-fire-compat-auth-guard.js → fesm2022/angular-fire-compat-auth-guard.mjs} +30 -26
  145. package/fesm2022/angular-fire-compat-auth-guard.mjs.map +1 -0
  146. package/{fesm2015/angular-fire-compat-auth.js → fesm2022/angular-fire-compat-auth.mjs} +38 -16
  147. package/fesm2022/angular-fire-compat-auth.mjs.map +1 -0
  148. package/{fesm2015/angular-fire-compat-database.js → fesm2022/angular-fire-compat-database.mjs} +138 -132
  149. package/fesm2022/angular-fire-compat-database.mjs.map +1 -0
  150. package/{fesm2015/angular-fire-compat-firestore.js → fesm2022/angular-fire-compat-firestore.mjs} +119 -98
  151. package/fesm2022/angular-fire-compat-firestore.mjs.map +1 -0
  152. package/{fesm2015/angular-fire-compat-functions.js → fesm2022/angular-fire-compat-functions.mjs} +13 -12
  153. package/fesm2022/angular-fire-compat-functions.mjs.map +1 -0
  154. package/{fesm2015/angular-fire-compat-messaging.js → fesm2022/angular-fire-compat-messaging.mjs} +25 -19
  155. package/fesm2022/angular-fire-compat-messaging.mjs.map +1 -0
  156. package/{fesm2015/angular-fire-compat-performance.js → fesm2022/angular-fire-compat-performance.mjs} +29 -34
  157. package/fesm2022/angular-fire-compat-performance.mjs.map +1 -0
  158. package/{fesm2015/angular-fire-compat-remote-config.js → fesm2022/angular-fire-compat-remote-config.mjs} +35 -22
  159. package/fesm2022/angular-fire-compat-remote-config.mjs.map +1 -0
  160. package/{fesm2015/angular-fire-compat-storage.js → fesm2022/angular-fire-compat-storage.mjs} +30 -23
  161. package/fesm2022/angular-fire-compat-storage.mjs.map +1 -0
  162. package/{fesm2015/angular-fire-compat.js → fesm2022/angular-fire-compat.mjs} +25 -25
  163. package/fesm2022/angular-fire-compat.mjs.map +1 -0
  164. package/{fesm2015/angular-fire-database.js → fesm2022/angular-fire-database.mjs} +11 -12
  165. package/fesm2022/angular-fire-database.mjs.map +1 -0
  166. package/{fesm2015/angular-fire-firestore-lite.js → fesm2022/angular-fire-firestore-lite.mjs} +11 -12
  167. package/fesm2022/angular-fire-firestore-lite.mjs.map +1 -0
  168. package/{fesm2015/angular-fire-firestore.js → fesm2022/angular-fire-firestore.mjs} +15 -14
  169. package/fesm2022/angular-fire-firestore.mjs.map +1 -0
  170. package/{fesm2015/angular-fire-functions.js → fesm2022/angular-fire-functions.mjs} +12 -13
  171. package/fesm2022/angular-fire-functions.mjs.map +1 -0
  172. package/{fesm2015/angular-fire-messaging.js → fesm2022/angular-fire-messaging.mjs} +33 -19
  173. package/fesm2022/angular-fire-messaging.mjs.map +1 -0
  174. package/{fesm2015/angular-fire-performance.js → fesm2022/angular-fire-performance.mjs} +11 -11
  175. package/fesm2022/angular-fire-performance.mjs.map +1 -0
  176. package/{fesm2015/angular-fire-remote-config.js → fesm2022/angular-fire-remote-config.mjs} +34 -20
  177. package/fesm2022/angular-fire-remote-config.mjs.map +1 -0
  178. package/{fesm2015/angular-fire-storage.js → fesm2022/angular-fire-storage.mjs} +10 -11
  179. package/fesm2022/angular-fire-storage.mjs.map +1 -0
  180. package/{fesm2015/angular-fire.js → fesm2022/angular-fire.mjs} +33 -58
  181. package/fesm2022/angular-fire.mjs.map +1 -0
  182. package/firestore/firestore.module.d.ts +2 -2
  183. package/firestore/lite/lite.module.d.ts +2 -2
  184. package/firestore/rxfire.d.ts +3 -1
  185. package/functions/functions.module.d.ts +2 -2
  186. package/messaging/is-messaging-supported-factory.d.ts +4 -0
  187. package/messaging/messaging.module.d.ts +2 -2
  188. package/package.json +159 -9
  189. package/performance/performance.module.d.ts +2 -2
  190. package/publish.sh +1 -0
  191. package/remote-config/is-remote-config-supported-factory.d.ts +4 -0
  192. package/remote-config/remote-config.module.d.ts +2 -2
  193. package/schematics/add/index.js +2 -2
  194. package/schematics/common.js +9 -5
  195. package/schematics/deploy/actions.js +69 -69
  196. package/schematics/deploy/builder.js +7 -7
  197. package/schematics/firebaseTools.js +9 -5
  198. package/schematics/setup/index.js +27 -27
  199. package/schematics/setup/prompts.js +22 -18
  200. package/schematics/update/index.js +1 -1
  201. package/schematics/update/v7/index.js +7 -7
  202. package/schematics/utils.js +34 -34
  203. package/storage/storage.module.d.ts +2 -2
  204. package/README.md +0 -216
  205. package/analytics/package.json +0 -11
  206. package/app/package.json +0 -11
  207. package/app-check/package.json +0 -11
  208. package/auth/package.json +0 -11
  209. package/auth-guard/package.json +0 -11
  210. package/bundles/angular-fire-analytics.umd.js +0 -673
  211. package/bundles/angular-fire-analytics.umd.js.map +0 -1
  212. package/bundles/angular-fire-app-check.umd.js +0 -465
  213. package/bundles/angular-fire-app-check.umd.js.map +0 -1
  214. package/bundles/angular-fire-app.umd.js +0 -477
  215. package/bundles/angular-fire-app.umd.js.map +0 -1
  216. package/bundles/angular-fire-auth-guard.umd.js +0 -109
  217. package/bundles/angular-fire-auth-guard.umd.js.map +0 -1
  218. package/bundles/angular-fire-auth.umd.js +0 -557
  219. package/bundles/angular-fire-auth.umd.js.map +0 -1
  220. package/bundles/angular-fire-compat-analytics.umd.js +0 -672
  221. package/bundles/angular-fire-compat-analytics.umd.js.map +0 -1
  222. package/bundles/angular-fire-compat-auth-guard.umd.js +0 -112
  223. package/bundles/angular-fire-compat-auth-guard.umd.js.map +0 -1
  224. package/bundles/angular-fire-compat-auth.umd.js +0 -559
  225. package/bundles/angular-fire-compat-auth.umd.js.map +0 -1
  226. package/bundles/angular-fire-compat-database.umd.js +0 -799
  227. package/bundles/angular-fire-compat-database.umd.js.map +0 -1
  228. package/bundles/angular-fire-compat-firestore.umd.js +0 -1073
  229. package/bundles/angular-fire-compat-firestore.umd.js.map +0 -1
  230. package/bundles/angular-fire-compat-functions.umd.js +0 -443
  231. package/bundles/angular-fire-compat-functions.umd.js.map +0 -1
  232. package/bundles/angular-fire-compat-messaging.umd.js +0 -465
  233. package/bundles/angular-fire-compat-messaging.umd.js.map +0 -1
  234. package/bundles/angular-fire-compat-performance.umd.js +0 -212
  235. package/bundles/angular-fire-compat-performance.umd.js.map +0 -1
  236. package/bundles/angular-fire-compat-remote-config.umd.js +0 -605
  237. package/bundles/angular-fire-compat-remote-config.umd.js.map +0 -1
  238. package/bundles/angular-fire-compat-storage.umd.js +0 -598
  239. package/bundles/angular-fire-compat-storage.umd.js.map +0 -1
  240. package/bundles/angular-fire-compat.umd.js +0 -535
  241. package/bundles/angular-fire-compat.umd.js.map +0 -1
  242. package/bundles/angular-fire-database.umd.js +0 -557
  243. package/bundles/angular-fire-database.umd.js.map +0 -1
  244. package/bundles/angular-fire-firestore-lite.umd.js +0 -531
  245. package/bundles/angular-fire-firestore-lite.umd.js.map +0 -1
  246. package/bundles/angular-fire-firestore.umd.js +0 -565
  247. package/bundles/angular-fire-firestore.umd.js.map +0 -1
  248. package/bundles/angular-fire-functions.umd.js +0 -461
  249. package/bundles/angular-fire-functions.umd.js.map +0 -1
  250. package/bundles/angular-fire-messaging.umd.js +0 -473
  251. package/bundles/angular-fire-messaging.umd.js.map +0 -1
  252. package/bundles/angular-fire-performance.umd.js +0 -473
  253. package/bundles/angular-fire-performance.umd.js.map +0 -1
  254. package/bundles/angular-fire-remote-config.umd.js +0 -499
  255. package/bundles/angular-fire-remote-config.umd.js.map +0 -1
  256. package/bundles/angular-fire-storage.umd.js +0 -485
  257. package/bundles/angular-fire-storage.umd.js.map +0 -1
  258. package/bundles/angular-fire.umd.js +0 -308
  259. package/bundles/angular-fire.umd.js.map +0 -1
  260. package/compat/analytics/package.json +0 -11
  261. package/compat/auth/package.json +0 -11
  262. package/compat/auth-guard/package.json +0 -11
  263. package/compat/database/package.json +0 -11
  264. package/compat/firestore/package.json +0 -11
  265. package/compat/functions/package.json +0 -11
  266. package/compat/messaging/package.json +0 -11
  267. package/compat/package.json +0 -11
  268. package/compat/performance/package.json +0 -11
  269. package/compat/remote-config/package.json +0 -11
  270. package/compat/storage/package.json +0 -11
  271. package/database/package.json +0 -11
  272. package/docs/analytics.md +0 -67
  273. package/docs/app-check.md +0 -53
  274. package/docs/auth.md +0 -165
  275. package/docs/compat/analytics/getting-started.md +0 -137
  276. package/docs/compat/auth/getting-started.md +0 -162
  277. package/docs/compat/auth/router-guards.md +0 -104
  278. package/docs/compat/emulators/emulators.md +0 -134
  279. package/docs/compat/firestore/collections.md +0 -326
  280. package/docs/compat/firestore/documents.md +0 -115
  281. package/docs/compat/firestore/offline-data.md +0 -39
  282. package/docs/compat/firestore/querying-collections.md +0 -204
  283. package/docs/compat/functions/functions.md +0 -166
  284. package/docs/compat/messaging/messaging.md +0 -232
  285. package/docs/compat/performance/getting-started.md +0 -132
  286. package/docs/compat/remote-config/getting-started.md +0 -134
  287. package/docs/compat/rtdb/lists.md +0 -257
  288. package/docs/compat/rtdb/objects.md +0 -182
  289. package/docs/compat/rtdb/querying-lists.md +0 -155
  290. package/docs/compat/storage/storage.md +0 -257
  291. package/docs/compat.md +0 -70
  292. package/docs/database.md +0 -175
  293. package/docs/deploy/getting-started.md +0 -204
  294. package/docs/firebase.json +0 -16
  295. package/docs/firestore.md +0 -148
  296. package/docs/functions.md +0 -52
  297. package/docs/images/analytics-illo_1x.png +0 -0
  298. package/docs/images/auth-illo_1x.png +0 -0
  299. package/docs/images/cloud-messaging-illo_1x.png +0 -0
  300. package/docs/images/database-illo_1x.png +0 -0
  301. package/docs/images/firestore-illo_1x.png +0 -0
  302. package/docs/images/functions-illo_1x.png +0 -0
  303. package/docs/images/hosting-illo_1x.png +0 -0
  304. package/docs/images/performance-illo_1x.png +0 -0
  305. package/docs/images/reCAPTCHA-logo@1x.png +0 -0
  306. package/docs/images/remote-config-illo_1x.png +0 -0
  307. package/docs/images/storage-illo_1x.png +0 -0
  308. package/docs/install-and-setup.md +0 -114
  309. package/docs/install-angular-cli-windows10.md +0 -82
  310. package/docs/messaging.md +0 -25
  311. package/docs/performance.md +0 -57
  312. package/docs/remote-config.md +0 -53
  313. package/docs/storage.md +0 -90
  314. package/docs/universal/cloud-functions.md +0 -75
  315. package/docs/universal/getting-started.md +0 -153
  316. package/docs/universal/prerendering.md +0 -72
  317. package/docs/version-4-upgrade.md +0 -119
  318. package/docs/version-5-upgrade.md +0 -82
  319. package/docs/version-6-upgrade.md +0 -16
  320. package/docs/version-7-upgrade.md +0 -298
  321. package/esm2015/analytics/analytics.module.js +0 -93
  322. package/esm2015/analytics/overrides.js +0 -3
  323. package/esm2015/analytics/screen-tracking.service.js +0 -139
  324. package/esm2015/analytics/user-tracking.service.js +0 -43
  325. package/esm2015/app/app.module.js +0 -84
  326. package/esm2015/app-check/app-check.js +0 -16
  327. package/esm2015/app-check/app-check.module.js +0 -81
  328. package/esm2015/app-check/public_api.js +0 -4
  329. package/esm2015/auth/auth.module.js +0 -71
  330. package/esm2015/auth-guard/auth-guard.js +0 -49
  331. package/esm2015/compat/analytics/analytics.js +0 -163
  332. package/esm2015/compat/analytics/analytics.module.js +0 -32
  333. package/esm2015/compat/analytics/screen-tracking.service.js +0 -49
  334. package/esm2015/compat/analytics/user-tracking.service.js +0 -52
  335. package/esm2015/compat/auth/auth.js +0 -139
  336. package/esm2015/compat/auth-guard/auth-guard.js +0 -49
  337. package/esm2015/compat/database/database.js +0 -117
  338. package/esm2015/compat/database/interfaces.js +0 -2
  339. package/esm2015/compat/database/list/changes.js +0 -85
  340. package/esm2015/compat/database/list/create-reference.js +0 -41
  341. package/esm2015/compat/database/observable/fromRef.js +0 -47
  342. package/esm2015/compat/firebase.app.module.js +0 -69
  343. package/esm2015/compat/firestore/collection/changes.js +0 -107
  344. package/esm2015/compat/firestore/collection/collection.js +0 -117
  345. package/esm2015/compat/firestore/collection-group/collection-group.js +0 -81
  346. package/esm2015/compat/firestore/document/document.js +0 -82
  347. package/esm2015/compat/firestore/firestore.js +0 -254
  348. package/esm2015/compat/firestore/interfaces.js +0 -2
  349. package/esm2015/compat/firestore/observable/fromRef.js +0 -39
  350. package/esm2015/compat/functions/functions.js +0 -68
  351. package/esm2015/compat/messaging/messaging.js +0 -75
  352. package/esm2015/compat/performance/performance.js +0 -110
  353. package/esm2015/compat/performance/performance.module.js +0 -28
  354. package/esm2015/compat/performance/performance.service.js +0 -27
  355. package/esm2015/compat/proxy.js +0 -61
  356. package/esm2015/compat/remote-config/remote-config.js +0 -193
  357. package/esm2015/compat/storage/observable/fromTask.js +0 -34
  358. package/esm2015/compat/storage/pipes/storageUrl.pipe.js +0 -54
  359. package/esm2015/compat/storage/storage.js +0 -94
  360. package/esm2015/compat/storage/storage.module.js +0 -22
  361. package/esm2015/core.js +0 -79
  362. package/esm2015/database/database.module.js +0 -74
  363. package/esm2015/firestore/firestore.module.js +0 -74
  364. package/esm2015/firestore/lite/lite.module.js +0 -74
  365. package/esm2015/firestore/rxfire.js +0 -13
  366. package/esm2015/functions/functions.module.js +0 -74
  367. package/esm2015/messaging/messaging.module.js +0 -85
  368. package/esm2015/messaging/overrides.js +0 -3
  369. package/esm2015/performance/performance.module.js +0 -81
  370. package/esm2015/remote-config/overrides.js +0 -3
  371. package/esm2015/remote-config/remote-config.module.js +0 -85
  372. package/esm2015/storage/storage.module.js +0 -74
  373. package/esm2015/zones.js +0 -183
  374. package/fesm2015/angular-fire-analytics.js.map +0 -1
  375. package/fesm2015/angular-fire-app-check.js.map +0 -1
  376. package/fesm2015/angular-fire-app.js.map +0 -1
  377. package/fesm2015/angular-fire-auth-guard.js.map +0 -1
  378. package/fesm2015/angular-fire-auth.js.map +0 -1
  379. package/fesm2015/angular-fire-compat-analytics.js.map +0 -1
  380. package/fesm2015/angular-fire-compat-auth-guard.js.map +0 -1
  381. package/fesm2015/angular-fire-compat-auth.js.map +0 -1
  382. package/fesm2015/angular-fire-compat-database.js.map +0 -1
  383. package/fesm2015/angular-fire-compat-firestore.js.map +0 -1
  384. package/fesm2015/angular-fire-compat-functions.js.map +0 -1
  385. package/fesm2015/angular-fire-compat-messaging.js.map +0 -1
  386. package/fesm2015/angular-fire-compat-performance.js.map +0 -1
  387. package/fesm2015/angular-fire-compat-remote-config.js.map +0 -1
  388. package/fesm2015/angular-fire-compat-storage.js.map +0 -1
  389. package/fesm2015/angular-fire-compat.js.map +0 -1
  390. package/fesm2015/angular-fire-database.js.map +0 -1
  391. package/fesm2015/angular-fire-firestore-lite.js.map +0 -1
  392. package/fesm2015/angular-fire-firestore.js.map +0 -1
  393. package/fesm2015/angular-fire-functions.js.map +0 -1
  394. package/fesm2015/angular-fire-messaging.js.map +0 -1
  395. package/fesm2015/angular-fire-performance.js.map +0 -1
  396. package/fesm2015/angular-fire-remote-config.js.map +0 -1
  397. package/fesm2015/angular-fire-storage.js.map +0 -1
  398. package/fesm2015/angular-fire.js.map +0 -1
  399. package/firestore/lite/package.json +0 -11
  400. package/firestore/package.json +0 -11
  401. package/firestore-protos.js +0 -4
  402. package/functions/package.json +0 -11
  403. package/messaging/package.json +0 -11
  404. package/performance/package.json +0 -11
  405. package/remote-config/package.json +0 -11
  406. package/schematics/add/schema.json +0 -16
  407. package/schematics/builders.json +0 -10
  408. package/schematics/collection.json +0 -15
  409. package/schematics/deploy/schema.json +0 -119
  410. package/schematics/migration.json +0 -15
  411. package/schematics/setup/schema.json +0 -16
  412. package/storage/package.json +0 -11
  413. /package/analytics/{angular-fire-analytics.d.ts → index.d.ts} +0 -0
  414. /package/app/{angular-fire-app.d.ts → index.d.ts} +0 -0
  415. /package/app-check/{angular-fire-app-check.d.ts → index.d.ts} +0 -0
  416. /package/auth/{angular-fire-auth.d.ts → index.d.ts} +0 -0
  417. /package/auth-guard/{angular-fire-auth-guard.d.ts → index.d.ts} +0 -0
  418. /package/compat/analytics/{angular-fire-compat-analytics.d.ts → index.d.ts} +0 -0
  419. /package/compat/auth/{angular-fire-compat-auth.d.ts → index.d.ts} +0 -0
  420. /package/compat/auth-guard/{angular-fire-compat-auth-guard.d.ts → index.d.ts} +0 -0
  421. /package/compat/database/{angular-fire-compat-database.d.ts → index.d.ts} +0 -0
  422. /package/compat/firestore/{angular-fire-compat-firestore.d.ts → index.d.ts} +0 -0
  423. /package/compat/functions/{angular-fire-compat-functions.d.ts → index.d.ts} +0 -0
  424. /package/compat/{angular-fire-compat.d.ts → index.d.ts} +0 -0
  425. /package/compat/messaging/{angular-fire-compat-messaging.d.ts → index.d.ts} +0 -0
  426. /package/compat/performance/{angular-fire-compat-performance.d.ts → index.d.ts} +0 -0
  427. /package/compat/remote-config/{angular-fire-compat-remote-config.d.ts → index.d.ts} +0 -0
  428. /package/compat/storage/{angular-fire-compat-storage.d.ts → index.d.ts} +0 -0
  429. /package/database/{angular-fire-database.d.ts → index.d.ts} +0 -0
  430. /package/{esm2015/analytics/angular-fire-analytics.js → esm2022/analytics/angular-fire-analytics.mjs} +0 -0
  431. /package/{esm2015/analytics/firebase.js → esm2022/analytics/firebase.mjs} +0 -0
  432. /package/{esm2015/analytics/public_api.js → esm2022/analytics/public_api.mjs} +0 -0
  433. /package/{esm2015/angular-fire.js → esm2022/angular-fire.mjs} +0 -0
  434. /package/{esm2015/app/angular-fire-app.js → esm2022/app/angular-fire-app.mjs} +0 -0
  435. /package/{esm2015/app/firebase.js → esm2022/app/firebase.mjs} +0 -0
  436. /package/{esm2015/app/public_api.js → esm2022/app/public_api.mjs} +0 -0
  437. /package/{esm2015/app-check/angular-fire-app-check.js → esm2022/app-check/angular-fire-app-check.mjs} +0 -0
  438. /package/{esm2015/app-check/firebase.js → esm2022/app-check/firebase.mjs} +0 -0
  439. /package/{esm2015/auth/angular-fire-auth.js → esm2022/auth/angular-fire-auth.mjs} +0 -0
  440. /package/{esm2015/auth/firebase.js → esm2022/auth/firebase.mjs} +0 -0
  441. /package/{esm2015/auth/public_api.js → esm2022/auth/public_api.mjs} +0 -0
  442. /package/{esm2015/auth/rxfire.js → esm2022/auth/rxfire.mjs} +0 -0
  443. /package/{esm2015/auth-guard/angular-fire-auth-guard.js → esm2022/auth-guard/angular-fire-auth-guard.mjs} +0 -0
  444. /package/{esm2015/auth-guard/public_api.js → esm2022/auth-guard/public_api.mjs} +0 -0
  445. /package/{esm2015/compat/analytics/angular-fire-compat-analytics.js → esm2022/compat/analytics/angular-fire-compat-analytics.mjs} +0 -0
  446. /package/{esm2015/compat/analytics/base.js → esm2022/compat/analytics/base.mjs} +0 -0
  447. /package/{esm2015/compat/analytics/public_api.js → esm2022/compat/analytics/public_api.mjs} +0 -0
  448. /package/{esm2015/compat/angular-fire-compat.js → esm2022/compat/angular-fire-compat.mjs} +0 -0
  449. /package/{esm2015/compat/auth/angular-fire-compat-auth.js → esm2022/compat/auth/angular-fire-compat-auth.mjs} +0 -0
  450. /package/{esm2015/compat/auth/base.js → esm2022/compat/auth/base.mjs} +0 -0
  451. /package/{esm2015/compat/auth-guard/angular-fire-compat-auth-guard.js → esm2022/compat/auth-guard/angular-fire-compat-auth-guard.mjs} +0 -0
  452. /package/{esm2015/compat/auth-guard/public_api.js → esm2022/compat/auth-guard/public_api.mjs} +0 -0
  453. /package/{esm2015/compat/database/angular-fire-compat-database.js → esm2022/compat/database/angular-fire-compat-database.mjs} +0 -0
  454. /package/{esm2015/compat/database/list/remove.js → esm2022/compat/database/list/remove.mjs} +0 -0
  455. /package/{esm2015/compat/database/list/utils.js → esm2022/compat/database/list/utils.mjs} +0 -0
  456. /package/{esm2015/compat/database/public_api.js → esm2022/compat/database/public_api.mjs} +0 -0
  457. /package/{esm2015/compat/firestore/angular-fire-compat-firestore.js → esm2022/compat/firestore/angular-fire-compat-firestore.mjs} +0 -0
  458. /package/{esm2015/compat/firestore/public_api.js → esm2022/compat/firestore/public_api.mjs} +0 -0
  459. /package/{esm2015/compat/functions/angular-fire-compat-functions.js → esm2022/compat/functions/angular-fire-compat-functions.mjs} +0 -0
  460. /package/{esm2015/compat/functions/base.js → esm2022/compat/functions/base.mjs} +0 -0
  461. /package/{esm2015/compat/messaging/angular-fire-compat-messaging.js → esm2022/compat/messaging/angular-fire-compat-messaging.mjs} +0 -0
  462. /package/{esm2015/compat/messaging/base.js → esm2022/compat/messaging/base.mjs} +0 -0
  463. /package/{esm2015/compat/messaging/public_api.js → esm2022/compat/messaging/public_api.mjs} +0 -0
  464. /package/{esm2015/compat/performance/angular-fire-compat-performance.js → esm2022/compat/performance/angular-fire-compat-performance.mjs} +0 -0
  465. /package/{esm2015/compat/performance/base.js → esm2022/compat/performance/base.mjs} +0 -0
  466. /package/{esm2015/compat/performance/public_api.js → esm2022/compat/performance/public_api.mjs} +0 -0
  467. /package/{esm2015/compat/public_api.js → esm2022/compat/public_api.mjs} +0 -0
  468. /package/{esm2015/compat/remote-config/angular-fire-compat-remote-config.js → esm2022/compat/remote-config/angular-fire-compat-remote-config.mjs} +0 -0
  469. /package/{esm2015/compat/remote-config/base.js → esm2022/compat/remote-config/base.mjs} +0 -0
  470. /package/{esm2015/compat/remote-config/interfaces.js → esm2022/compat/remote-config/interfaces.mjs} +0 -0
  471. /package/{esm2015/compat/remote-config/public_api.js → esm2022/compat/remote-config/public_api.mjs} +0 -0
  472. /package/{esm2015/compat/storage/angular-fire-compat-storage.js → esm2022/compat/storage/angular-fire-compat-storage.mjs} +0 -0
  473. /package/{esm2015/compat/storage/interfaces.js → esm2022/compat/storage/interfaces.mjs} +0 -0
  474. /package/{esm2015/compat/storage/public_api.js → esm2022/compat/storage/public_api.mjs} +0 -0
  475. /package/{esm2015/database/angular-fire-database.js → esm2022/database/angular-fire-database.mjs} +0 -0
  476. /package/{esm2015/database/firebase.js → esm2022/database/firebase.mjs} +0 -0
  477. /package/{esm2015/database/public_api.js → esm2022/database/public_api.mjs} +0 -0
  478. /package/{esm2015/database/rxfire.js → esm2022/database/rxfire.mjs} +0 -0
  479. /package/{esm2015/firestore/angular-fire-firestore.js → esm2022/firestore/angular-fire-firestore.mjs} +0 -0
  480. /package/{esm2015/firestore/firebase.js → esm2022/firestore/firebase.mjs} +0 -0
  481. /package/{esm2015/firestore/lite/angular-fire-firestore-lite.js → esm2022/firestore/lite/angular-fire-firestore-lite.mjs} +0 -0
  482. /package/{esm2015/firestore/lite/firebase.js → esm2022/firestore/lite/firebase.mjs} +0 -0
  483. /package/{esm2015/firestore/lite/public_api.js → esm2022/firestore/lite/public_api.mjs} +0 -0
  484. /package/{esm2015/firestore/lite/rxfire.js → esm2022/firestore/lite/rxfire.mjs} +0 -0
  485. /package/{esm2015/firestore/public_api.js → esm2022/firestore/public_api.mjs} +0 -0
  486. /package/{esm2015/functions/angular-fire-functions.js → esm2022/functions/angular-fire-functions.mjs} +0 -0
  487. /package/{esm2015/functions/firebase.js → esm2022/functions/firebase.mjs} +0 -0
  488. /package/{esm2015/functions/public_api.js → esm2022/functions/public_api.mjs} +0 -0
  489. /package/{esm2015/functions/rxfire.js → esm2022/functions/rxfire.mjs} +0 -0
  490. /package/{esm2015/messaging/angular-fire-messaging.js → esm2022/messaging/angular-fire-messaging.mjs} +0 -0
  491. /package/{esm2015/messaging/firebase.js → esm2022/messaging/firebase.mjs} +0 -0
  492. /package/{esm2015/messaging/public_api.js → esm2022/messaging/public_api.mjs} +0 -0
  493. /package/{esm2015/performance/angular-fire-performance.js → esm2022/performance/angular-fire-performance.mjs} +0 -0
  494. /package/{esm2015/performance/firebase.js → esm2022/performance/firebase.mjs} +0 -0
  495. /package/{esm2015/performance/public_api.js → esm2022/performance/public_api.mjs} +0 -0
  496. /package/{esm2015/performance/rxfire.js → esm2022/performance/rxfire.mjs} +0 -0
  497. /package/{esm2015/public_api.js → esm2022/public_api.mjs} +0 -0
  498. /package/{esm2015/remote-config/angular-fire-remote-config.js → esm2022/remote-config/angular-fire-remote-config.mjs} +0 -0
  499. /package/{esm2015/remote-config/firebase.js → esm2022/remote-config/firebase.mjs} +0 -0
  500. /package/{esm2015/remote-config/public_api.js → esm2022/remote-config/public_api.mjs} +0 -0
  501. /package/{esm2015/remote-config/rxfire.js → esm2022/remote-config/rxfire.mjs} +0 -0
  502. /package/{esm2015/storage/angular-fire-storage.js → esm2022/storage/angular-fire-storage.mjs} +0 -0
  503. /package/{esm2015/storage/firebase.js → esm2022/storage/firebase.mjs} +0 -0
  504. /package/{esm2015/storage/public_api.js → esm2022/storage/public_api.mjs} +0 -0
  505. /package/{esm2015/storage/rxfire.js → esm2022/storage/rxfire.mjs} +0 -0
  506. /package/firestore/{angular-fire-firestore.d.ts → index.d.ts} +0 -0
  507. /package/firestore/lite/{angular-fire-firestore-lite.d.ts → index.d.ts} +0 -0
  508. /package/functions/{angular-fire-functions.d.ts → index.d.ts} +0 -0
  509. /package/{angular-fire.d.ts → index.d.ts} +0 -0
  510. /package/messaging/{angular-fire-messaging.d.ts → index.d.ts} +0 -0
  511. /package/performance/{angular-fire-performance.d.ts → index.d.ts} +0 -0
  512. /package/remote-config/{angular-fire-remote-config.d.ts → index.d.ts} +0 -0
  513. /package/storage/{angular-fire-storage.d.ts → index.d.ts} +0 -0
@@ -1,16 +1,15 @@
1
- import { ɵgetAllInstancesOf, ɵisAnalyticsSupportedFactory, ɵzoneWrap, VERSION, ɵgetDefaultInstanceOf, ɵAngularFireSchedulers } from '@angular/fire';
1
+ import { ɵgetAllInstancesOf, ɵisSupportedError, ɵzoneWrap, VERSION, ɵgetDefaultInstanceOf, ɵAngularFireSchedulers } from '@angular/fire';
2
2
  import { timer, from, of } from 'rxjs';
3
3
  import { concatMap, distinct, filter, switchMap, map, groupBy, mergeMap, distinctUntilChanged, startWith, pairwise } from 'rxjs/operators';
4
4
  import * as i0 from '@angular/core';
5
5
  import { Injectable, Optional, InjectionToken, APP_INITIALIZER, NgModule, NgZone, Injector } from '@angular/core';
6
6
  import { FirebaseApp, FirebaseApps } from '@angular/fire/app';
7
7
  import { registerVersion } from 'firebase/app';
8
- import { __awaiter } from 'tslib';
8
+ import { isSupported as isSupported$1, getAnalytics as getAnalytics$1, initializeAnalytics as initializeAnalytics$1, logEvent as logEvent$1, setAnalyticsCollectionEnabled as setAnalyticsCollectionEnabled$1, setCurrentScreen as setCurrentScreen$1, settings as settings$1, setUserId as setUserId$1, setUserProperties as setUserProperties$1 } from 'firebase/analytics';
9
+ export * from 'firebase/analytics';
10
+ import * as i2 from '@angular/platform-browser';
9
11
  import * as i1$1 from '@angular/router';
10
12
  import { ActivationEnd, ɵEmptyOutletComponent } from '@angular/router';
11
- import * as i2 from '@angular/platform-browser';
12
- import { getAnalytics as getAnalytics$1, initializeAnalytics as initializeAnalytics$1, logEvent as logEvent$1, setAnalyticsCollectionEnabled as setAnalyticsCollectionEnabled$1, setCurrentScreen as setCurrentScreen$1, settings as settings$1, setUserId as setUserId$1, setUserProperties as setUserProperties$1 } from 'firebase/analytics';
13
- export * from 'firebase/analytics';
14
13
  import * as i1 from '@angular/fire/auth';
15
14
  import { authState } from '@angular/fire/auth';
16
15
 
@@ -27,7 +26,21 @@ class AnalyticsInstances {
27
26
  }
28
27
  const analyticInstance$ = timer(0, 300).pipe(concatMap(() => from(ɵgetAllInstancesOf(ANALYTICS_PROVIDER_NAME))), distinct());
29
28
 
30
- const isSupported = ɵisAnalyticsSupportedFactory.async;
29
+ const isAnalyticsSupportedValueSymbol = '__angularfire_symbol__analyticsIsSupportedValue';
30
+ const isAnalyticsSupportedPromiseSymbol = '__angularfire_symbol__analyticsIsSupported';
31
+ globalThis[isAnalyticsSupportedPromiseSymbol] ||= isSupported$1().then(it => globalThis[isAnalyticsSupportedValueSymbol] = it).catch(() => globalThis[isAnalyticsSupportedValueSymbol] = false);
32
+ const isAnalyticsSupportedFactory = {
33
+ async: () => globalThis[isAnalyticsSupportedPromiseSymbol],
34
+ sync: () => {
35
+ const ret = globalThis[isAnalyticsSupportedValueSymbol];
36
+ if (ret === undefined) {
37
+ throw new Error(ɵisSupportedError('Analytics'));
38
+ }
39
+ return ret;
40
+ }
41
+ };
42
+
43
+ const isSupported = isAnalyticsSupportedFactory.async;
31
44
 
32
45
  // DO NOT MODIFY, this file is autogenerated by tools/build.ts
33
46
  const getAnalytics = ɵzoneWrap(getAnalytics$1, true);
@@ -40,8 +53,9 @@ const setUserId = ɵzoneWrap(setUserId$1, true);
40
53
  const setUserProperties = ɵzoneWrap(setUserProperties$1, true);
41
54
 
42
55
  class UserTrackingService {
56
+ initialized;
57
+ disposables = [];
43
58
  constructor(auth, zone, injector) {
44
- this.disposables = [];
45
59
  registerVersion('angularfire', VERSION.full, 'user-tracking');
46
60
  let resolveInitialized;
47
61
  this.initialized = zone.runOutsideAngular(() => new Promise(resolve => { resolveInitialized = resolve; }));
@@ -54,7 +68,7 @@ class UserTrackingService {
54
68
  this.disposables = [
55
69
  // TODO add credential tracking back in
56
70
  authState(auth).subscribe(user => {
57
- setUserId(analytics, user === null || user === void 0 ? void 0 : user.uid);
71
+ setUserId(analytics, user?.uid);
58
72
  resolveInitialized();
59
73
  }),
60
74
  ];
@@ -67,10 +81,10 @@ class UserTrackingService {
67
81
  ngOnDestroy() {
68
82
  this.disposables.forEach(it => it.unsubscribe());
69
83
  }
84
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: UserTrackingService, deps: [{ token: i1.Auth }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
85
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: UserTrackingService });
70
86
  }
71
- UserTrackingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: UserTrackingService, deps: [{ token: i1.Auth }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
72
- UserTrackingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: UserTrackingService });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: UserTrackingService, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: UserTrackingService, decorators: [{
74
88
  type: Injectable
75
89
  }], ctorParameters: function () { return [{ type: i1.Auth }, { type: i0.NgZone }, { type: i0.Injector }]; } });
76
90
 
@@ -90,7 +104,7 @@ const SCREEN_VIEW_EVENT = 'screen_view';
90
104
  const EVENT_ORIGIN_AUTO = 'auto';
91
105
  const SCREEN_INSTANCE_DELIMITER = '#';
92
106
  // this is an INT64 in iOS/Android but use INT32 cause javascript
93
- let nextScreenInstanceID = Math.floor(Math.random() * (Math.pow(2, 32) - 1)) - Math.pow(2, 31);
107
+ let nextScreenInstanceID = Math.floor(Math.random() * (2 ** 32 - 1)) - 2 ** 31;
94
108
  const knownScreenInstanceIDs = {};
95
109
  const getScreenInstanceID = (params) => {
96
110
  // unique the screen class against the outlet name
@@ -98,6 +112,7 @@ const getScreenInstanceID = (params) => {
98
112
  params[SCREEN_CLASS_KEY],
99
113
  params[OUTLET_KEY]
100
114
  ].join(SCREEN_INSTANCE_DELIMITER);
115
+ // eslint-disable-next-line no-prototype-builtins
101
116
  if (knownScreenInstanceIDs.hasOwnProperty(screenInstanceKey)) {
102
117
  return knownScreenInstanceIDs[screenInstanceKey];
103
118
  }
@@ -110,11 +125,10 @@ const getScreenInstanceID = (params) => {
110
125
  const ɵscreenViewEvent = (router, title, componentFactoryResolver) => {
111
126
  const activationEndEvents = router.events.pipe(filter(e => e instanceof ActivationEnd));
112
127
  return activationEndEvents.pipe(switchMap(activationEnd => {
113
- var _a;
114
128
  // router parseUrl is having trouble with outlets when they're empty
115
129
  // e.g, /asdf/1(bob://sally:asdf), so put another slash in when empty
116
130
  const urlTree = router.parseUrl(router.url.replace(/(?:\().+(?:\))/g, a => a.replace('://', ':///')));
117
- const pagePath = ((_a = urlTree.root.children[activationEnd.snapshot.outlet]) === null || _a === void 0 ? void 0 : _a.toString()) || '';
131
+ const pagePath = urlTree.root.children[activationEnd.snapshot.outlet]?.toString() || '';
118
132
  const actualSnapshot = router.routerState.root.children.map(it => it).find(it => it.outlet === activationEnd.snapshot.outlet);
119
133
  if (!actualSnapshot) {
120
134
  return of(null);
@@ -123,7 +137,7 @@ const ɵscreenViewEvent = (router, title, componentFactoryResolver) => {
123
137
  while (actualDeep.firstChild) {
124
138
  actualDeep = actualDeep.firstChild;
125
139
  }
126
- const screenName = actualDeep.pathFromRoot.map(s => { var _a; return (_a = s.routeConfig) === null || _a === void 0 ? void 0 : _a.path; }).filter(it => it).join('/') || '/';
140
+ const screenName = actualDeep.pathFromRoot.map(s => s.routeConfig?.path).filter(it => it).join('/') || '/';
127
141
  const params = {
128
142
  [SCREEN_NAME_KEY]: screenName,
129
143
  [PAGE_PATH_KEY]: `/${pagePath}`,
@@ -149,17 +163,27 @@ const ɵscreenViewEvent = (router, title, componentFactoryResolver) => {
149
163
  component = activationEnd.snapshot.component;
150
164
  }
151
165
  if (typeof component === 'string') {
152
- return of(Object.assign(Object.assign({}, params), { [SCREEN_CLASS_KEY]: component }));
166
+ return of({ ...params, [SCREEN_CLASS_KEY]: component });
153
167
  }
154
168
  else if (component) {
155
169
  const componentFactory = componentFactoryResolver.resolveComponentFactory(component);
156
- return of(Object.assign(Object.assign({}, params), { [SCREEN_CLASS_KEY]: componentFactory.selector }));
170
+ return of({ ...params, [SCREEN_CLASS_KEY]: componentFactory.selector });
157
171
  }
158
172
  // lazy loads cause extra activations, ignore
159
173
  return of(null);
160
- }), filter(it => !!it), map(params => (Object.assign({ [FIREBASE_SCREEN_CLASS_KEY]: params[SCREEN_CLASS_KEY], [FIREBASE_SCREEN_INSTANCE_ID_KEY]: getScreenInstanceID(params) }, params))), groupBy(it => it[OUTLET_KEY]), mergeMap(it => it.pipe(distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)), startWith(undefined), pairwise(), map(([prior, current]) => prior ? Object.assign({ [FIREBASE_PREVIOUS_SCREEN_CLASS_KEY]: prior[SCREEN_CLASS_KEY], [FIREBASE_PREVIOUS_SCREEN_NAME_KEY]: prior[SCREEN_NAME_KEY], [FIREBASE_PREVIOUS_SCREEN_INSTANCE_ID_KEY]: prior[FIREBASE_SCREEN_INSTANCE_ID_KEY] }, current) : current))));
174
+ }), filter(it => !!it), map(params => ({
175
+ [FIREBASE_SCREEN_CLASS_KEY]: params[SCREEN_CLASS_KEY],
176
+ [FIREBASE_SCREEN_INSTANCE_ID_KEY]: getScreenInstanceID(params),
177
+ ...params
178
+ })), groupBy(it => it[OUTLET_KEY]), mergeMap(it => it.pipe(distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)), startWith(undefined), pairwise(), map(([prior, current]) => prior ? {
179
+ [FIREBASE_PREVIOUS_SCREEN_CLASS_KEY]: prior[SCREEN_CLASS_KEY],
180
+ [FIREBASE_PREVIOUS_SCREEN_NAME_KEY]: prior[SCREEN_NAME_KEY],
181
+ [FIREBASE_PREVIOUS_SCREEN_INSTANCE_ID_KEY]: prior[FIREBASE_SCREEN_INSTANCE_ID_KEY],
182
+ ...current
183
+ } : current))));
161
184
  };
162
185
  class ScreenTrackingService {
186
+ disposable;
163
187
  constructor(router, title, componentFactoryResolver, zone, userTrackingService, injector) {
164
188
  registerVersion('angularfire', VERSION.full, 'screen-tracking');
165
189
  // The APP_INITIALIZER that is making isSupported() sync for the sake of convenient DI
@@ -171,12 +195,12 @@ class ScreenTrackingService {
171
195
  return;
172
196
  }
173
197
  zone.runOutsideAngular(() => {
174
- this.disposable = ɵscreenViewEvent(router, title, componentFactoryResolver).pipe(switchMap((params) => __awaiter(this, void 0, void 0, function* () {
198
+ this.disposable = ɵscreenViewEvent(router, title, componentFactoryResolver).pipe(switchMap(async (params) => {
175
199
  if (userTrackingService) {
176
- yield userTrackingService.initialized;
200
+ await userTrackingService.initialized;
177
201
  }
178
202
  return logEvent(analytics, SCREEN_VIEW_EVENT, params);
179
- }))).subscribe();
203
+ })).subscribe();
180
204
  });
181
205
  });
182
206
  }
@@ -185,10 +209,10 @@ class ScreenTrackingService {
185
209
  this.disposable.unsubscribe();
186
210
  }
187
211
  }
212
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScreenTrackingService, deps: [{ token: i1$1.Router, optional: true }, { token: i2.Title, optional: true }, { token: i0.ComponentFactoryResolver }, { token: i0.NgZone }, { token: UserTrackingService, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
213
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScreenTrackingService });
188
214
  }
189
- ScreenTrackingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: ScreenTrackingService, deps: [{ token: i1$1.Router, optional: true }, { token: i2.Title, optional: true }, { token: i0.ComponentFactoryResolver }, { token: i0.NgZone }, { token: UserTrackingService, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
190
- ScreenTrackingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: ScreenTrackingService });
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: ScreenTrackingService, decorators: [{
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScreenTrackingService, decorators: [{
192
216
  type: Injectable
193
217
  }], ctorParameters: function () { return [{ type: i1$1.Router, decorators: [{
194
218
  type: Optional
@@ -200,7 +224,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImpor
200
224
 
201
225
  const PROVIDED_ANALYTICS_INSTANCES = new InjectionToken('angularfire2.analytics-instances');
202
226
  function defaultAnalyticsInstanceFactory(provided, defaultApp) {
203
- if (isAnalyticsSupportedFactory.sync()) {
227
+ if (!isAnalyticsSupportedFactory.sync()) {
204
228
  return null;
205
229
  }
206
230
  const defaultAnalytics = ɵgetDefaultInstanceOf(ANALYTICS_PROVIDER_NAME, provided, defaultApp);
@@ -208,7 +232,7 @@ function defaultAnalyticsInstanceFactory(provided, defaultApp) {
208
232
  }
209
233
  function analyticsInstanceFactory(fn) {
210
234
  return (zone, injector) => {
211
- if (isAnalyticsSupportedFactory.sync()) {
235
+ if (!isAnalyticsSupportedFactory.sync()) {
212
236
  return null;
213
237
  }
214
238
  const analytics = zone.runOutsideAngular(() => fn(injector));
@@ -233,19 +257,19 @@ class AnalyticsModule {
233
257
  constructor(_screenTrackingService, _userTrackingService) {
234
258
  registerVersion('angularfire', VERSION.full, 'analytics');
235
259
  }
260
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AnalyticsModule, deps: [{ token: ScreenTrackingService, optional: true }, { token: UserTrackingService, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
261
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: AnalyticsModule });
262
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AnalyticsModule, providers: [
263
+ DEFAULT_ANALYTICS_INSTANCE_PROVIDER,
264
+ ANALYTICS_INSTANCES_PROVIDER,
265
+ {
266
+ provide: APP_INITIALIZER,
267
+ useValue: isAnalyticsSupportedFactory.async,
268
+ multi: true,
269
+ }
270
+ ] });
236
271
  }
237
- AnalyticsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, deps: [{ token: ScreenTrackingService, optional: true }, { token: UserTrackingService, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
238
- AnalyticsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule });
239
- AnalyticsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, providers: [
240
- DEFAULT_ANALYTICS_INSTANCE_PROVIDER,
241
- ANALYTICS_INSTANCES_PROVIDER,
242
- {
243
- provide: APP_INITIALIZER,
244
- useValue: ɵisAnalyticsSupportedFactory.async,
245
- multi: true,
246
- }
247
- ] });
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, decorators: [{
272
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AnalyticsModule, decorators: [{
249
273
  type: NgModule,
250
274
  args: [{
251
275
  providers: [
@@ -253,7 +277,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImpor
253
277
  ANALYTICS_INSTANCES_PROVIDER,
254
278
  {
255
279
  provide: APP_INITIALIZER,
256
- useValue: ɵisAnalyticsSupportedFactory.async,
280
+ useValue: isAnalyticsSupportedFactory.async,
257
281
  multi: true,
258
282
  }
259
283
  ]
@@ -286,4 +310,4 @@ function provideAnalytics(fn, ...deps) {
286
310
  */
287
311
 
288
312
  export { Analytics, AnalyticsInstances, AnalyticsModule, ScreenTrackingService, UserTrackingService, analyticInstance$, getAnalytics, initializeAnalytics, isSupported, logEvent, provideAnalytics, setAnalyticsCollectionEnabled, setCurrentScreen, setUserId, setUserProperties, settings, ɵscreenViewEvent };
289
- //# sourceMappingURL=angular-fire-analytics.js.map
313
+ //# sourceMappingURL=angular-fire-analytics.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-fire-analytics.mjs","sources":["../../../src/analytics/analytics.ts","../../../src/analytics/is-analytics-supported-factory.ts","../../../src/analytics/overrides.ts","../../../src/analytics/firebase.ts","../../../src/analytics/user-tracking.service.ts","../../../src/analytics/screen-tracking.service.ts","../../../src/analytics/analytics.module.ts","../../../src/analytics/angular-fire-analytics.ts"],"sourcesContent":["import { ɵgetAllInstancesOf } from '@angular/fire';\nimport { Analytics as FirebaseAnalytics } from 'firebase/analytics';\nimport { from, timer } from 'rxjs';\nimport { concatMap, distinct } from 'rxjs/operators';\n\n// see notes in core/firebase.app.module.ts for why we're building the class like this\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Analytics extends FirebaseAnalytics {}\n\nexport class Analytics {\n constructor(analytics: FirebaseAnalytics) {\n return analytics;\n }\n}\n\nexport const ANALYTICS_PROVIDER_NAME = 'analytics';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface AnalyticsInstances extends Array<FirebaseAnalytics> {}\n\nexport class AnalyticsInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseAnalytics>(ANALYTICS_PROVIDER_NAME);\n }\n}\n\nexport const analyticInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseAnalytics>(ANALYTICS_PROVIDER_NAME))),\n distinct(),\n);\n","import { ɵisSupportedError } from '@angular/fire';\nimport { isSupported } from 'firebase/analytics';\n\nconst isAnalyticsSupportedValueSymbol = '__angularfire_symbol__analyticsIsSupportedValue';\nconst isAnalyticsSupportedPromiseSymbol = '__angularfire_symbol__analyticsIsSupported';\n\nglobalThis[isAnalyticsSupportedPromiseSymbol] ||= isSupported().then(it =>\n globalThis[isAnalyticsSupportedValueSymbol] = it\n).catch(() =>\n globalThis[isAnalyticsSupportedValueSymbol] = false\n);\nexport const isAnalyticsSupportedFactory = {\n async: () => globalThis[isAnalyticsSupportedPromiseSymbol],\n sync: () => {\n const ret = globalThis[isAnalyticsSupportedValueSymbol];\n if (ret === undefined) { throw new Error(ɵisSupportedError('Analytics')); }\n return ret;\n }\n};\n","import { isAnalyticsSupportedFactory } from './is-analytics-supported-factory';\n\nexport const isSupported = isAnalyticsSupportedFactory.async;\n\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/analytics';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n getAnalytics as _getAnalytics,\n initializeAnalytics as _initializeAnalytics,\n logEvent as _logEvent,\n setAnalyticsCollectionEnabled as _setAnalyticsCollectionEnabled,\n setCurrentScreen as _setCurrentScreen,\n settings as _settings,\n setUserId as _setUserId,\n setUserProperties as _setUserProperties\n} from 'firebase/analytics';\n\nexport {\n isSupported\n} from './overrides';\n\nexport const getAnalytics = ɵzoneWrap(_getAnalytics, true);\nexport const initializeAnalytics = ɵzoneWrap(_initializeAnalytics, true);\nexport const logEvent = ɵzoneWrap(_logEvent, true);\nexport const setAnalyticsCollectionEnabled = ɵzoneWrap(_setAnalyticsCollectionEnabled, true);\nexport const setCurrentScreen = ɵzoneWrap(_setCurrentScreen, true);\nexport const settings = ɵzoneWrap(_settings, true);\nexport const setUserId = ɵzoneWrap(_setUserId, true);\nexport const setUserProperties = ɵzoneWrap(_setUserProperties, true);\n","import { Injectable, Injector, NgZone, OnDestroy } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport { Auth, authState } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { Subscription } from 'rxjs';\nimport { Analytics } from './analytics';\nimport { isSupported, setUserId } from './firebase';\n\n@Injectable()\nexport class UserTrackingService implements OnDestroy {\n\n public readonly initialized: Promise<void>;\n private disposables: Subscription[] = [];\n\n constructor(\n auth: Auth,\n zone: NgZone,\n injector: Injector,\n ) {\n registerVersion('angularfire', VERSION.full, 'user-tracking');\n let resolveInitialized: () => void;\n this.initialized = zone.runOutsideAngular(() => new Promise(resolve => { resolveInitialized = resolve; }));\n // The APP_INITIALIZER that is making isSupported() sync for the sake of convenient DI\n // may not be done when services are initialized. Guard the functionality by first ensuring\n // that the (global) promise has resolved, then get Analytics from the injector.\n isSupported().then(() => {\n const analytics = injector.get(Analytics);\n if (analytics) {\n this.disposables = [\n // TODO add credential tracking back in\n authState(auth).subscribe(user => {\n setUserId(analytics, user?.uid);\n resolveInitialized();\n }),\n ];\n } else {\n resolveInitialized();\n }\n });\n }\n\n ngOnDestroy() {\n this.disposables.forEach(it => it.unsubscribe());\n }\n}\n","import { ComponentFactoryResolver, Injectable, Injector, NgZone, OnDestroy, Optional } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport { Title } from '@angular/platform-browser';\nimport { ActivationEnd, Router, ɵEmptyOutletComponent } from '@angular/router';\nimport { registerVersion } from 'firebase/app';\nimport { Observable, Subscription, of } from 'rxjs';\nimport { distinctUntilChanged, filter, groupBy, map, mergeMap, pairwise, startWith, switchMap } from 'rxjs/operators';\nimport { Analytics } from './analytics';\nimport { isSupported, logEvent } from './firebase';\nimport { UserTrackingService } from './user-tracking.service';\n\nconst FIREBASE_EVENT_ORIGIN_KEY = 'firebase_event_origin';\nconst FIREBASE_PREVIOUS_SCREEN_CLASS_KEY = 'firebase_previous_class';\nconst FIREBASE_PREVIOUS_SCREEN_INSTANCE_ID_KEY = 'firebase_previous_id';\nconst FIREBASE_PREVIOUS_SCREEN_NAME_KEY = 'firebase_previous_screen';\nconst FIREBASE_SCREEN_CLASS_KEY = 'firebase_screen_class';\nconst FIREBASE_SCREEN_INSTANCE_ID_KEY = 'firebase_screen_id';\nconst FIREBASE_SCREEN_NAME_KEY = 'firebase_screen';\nconst OUTLET_KEY = 'outlet';\nconst PAGE_PATH_KEY = 'page_path';\nconst PAGE_TITLE_KEY = 'page_title';\nconst SCREEN_CLASS_KEY = 'screen_class';\nconst SCREEN_NAME_KEY = 'screen_name';\nconst SCREEN_VIEW_EVENT = 'screen_view';\nconst EVENT_ORIGIN_AUTO = 'auto';\nconst SCREEN_INSTANCE_DELIMITER = '#';\n\n// this is an INT64 in iOS/Android but use INT32 cause javascript\nlet nextScreenInstanceID = Math.floor(Math.random() * (2 ** 32 - 1)) - 2 ** 31;\n\nconst knownScreenInstanceIDs: Record<string, number> = {};\n\nconst getScreenInstanceID = (params: Record<string, any>) => {\n // unique the screen class against the outlet name\n const screenInstanceKey = [\n params[SCREEN_CLASS_KEY],\n params[OUTLET_KEY]\n ].join(SCREEN_INSTANCE_DELIMITER);\n // eslint-disable-next-line no-prototype-builtins\n if (knownScreenInstanceIDs.hasOwnProperty(screenInstanceKey)) {\n return knownScreenInstanceIDs[screenInstanceKey];\n } else {\n const ret = nextScreenInstanceID++;\n knownScreenInstanceIDs[screenInstanceKey] = ret;\n return ret;\n }\n};\n\nexport const ɵscreenViewEvent = (\n router: Router,\n title: Title|null,\n componentFactoryResolver: ComponentFactoryResolver,\n): Observable<{\n [SCREEN_NAME_KEY]: string,\n [PAGE_PATH_KEY]: string,\n [FIREBASE_EVENT_ORIGIN_KEY]: 'auto',\n [FIREBASE_SCREEN_NAME_KEY]: string,\n [OUTLET_KEY]: string,\n [PAGE_TITLE_KEY]?: string,\n [SCREEN_CLASS_KEY]: string,\n [FIREBASE_SCREEN_CLASS_KEY]: string,\n [FIREBASE_SCREEN_INSTANCE_ID_KEY]: number,\n [FIREBASE_PREVIOUS_SCREEN_CLASS_KEY]: string,\n [FIREBASE_PREVIOUS_SCREEN_NAME_KEY]: string,\n [FIREBASE_PREVIOUS_SCREEN_INSTANCE_ID_KEY]: number,\n}> => {\n const activationEndEvents = router.events.pipe(filter<ActivationEnd>(e => e instanceof ActivationEnd));\n return activationEndEvents.pipe(\n switchMap<ActivationEnd, Observable<Record<string, any>|null>>(activationEnd => {\n // router parseUrl is having trouble with outlets when they're empty\n // e.g, /asdf/1(bob://sally:asdf), so put another slash in when empty\n const urlTree = router.parseUrl(router.url.replace(/(?:\\().+(?:\\))/g, a => a.replace('://', ':///')));\n const pagePath = urlTree.root.children[activationEnd.snapshot.outlet]?.toString() || '';\n const actualSnapshot = router.routerState.root.children.map(it => it).find(it => it.outlet === activationEnd.snapshot.outlet);\n\n if (!actualSnapshot) {\n return of(null);\n }\n\n let actualDeep = actualSnapshot;\n while (actualDeep.firstChild) {\n actualDeep = actualDeep.firstChild;\n }\n const screenName = actualDeep.pathFromRoot.map(s => s.routeConfig?.path).filter(it => it).join('/') || '/';\n\n const params = {\n [SCREEN_NAME_KEY]: screenName,\n [PAGE_PATH_KEY]: `/${pagePath}`,\n [FIREBASE_EVENT_ORIGIN_KEY]: EVENT_ORIGIN_AUTO,\n [FIREBASE_SCREEN_NAME_KEY]: screenName,\n [OUTLET_KEY]: activationEnd.snapshot.outlet\n };\n if (title) {\n params[PAGE_TITLE_KEY] = title.getTitle();\n }\n\n let component = actualSnapshot.component;\n if (component) {\n if (component === ɵEmptyOutletComponent) {\n let deepSnapshot = activationEnd.snapshot;\n // TODO when might there be mutple children, different outlets? explore\n while (deepSnapshot.firstChild) {\n deepSnapshot = deepSnapshot.firstChild;\n }\n component = deepSnapshot.component;\n }\n } else {\n component = activationEnd.snapshot.component;\n }\n\n if (typeof component === 'string') {\n return of({ ...params, [SCREEN_CLASS_KEY]: component });\n } else if (component) {\n const componentFactory = componentFactoryResolver.resolveComponentFactory(component);\n return of({ ...params, [SCREEN_CLASS_KEY]: componentFactory.selector });\n }\n // lazy loads cause extra activations, ignore\n return of(null);\n }),\n filter(it => !!it),\n map(params => ({\n [FIREBASE_SCREEN_CLASS_KEY]: params[SCREEN_CLASS_KEY],\n [FIREBASE_SCREEN_INSTANCE_ID_KEY]: getScreenInstanceID(params),\n ...params\n })),\n groupBy(it => it[OUTLET_KEY]),\n mergeMap(it => it.pipe(\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n startWith<any, any>(undefined),\n pairwise(),\n map(([prior, current]) =>\n prior ? {\n [FIREBASE_PREVIOUS_SCREEN_CLASS_KEY]: prior[SCREEN_CLASS_KEY],\n [FIREBASE_PREVIOUS_SCREEN_NAME_KEY]: prior[SCREEN_NAME_KEY],\n [FIREBASE_PREVIOUS_SCREEN_INSTANCE_ID_KEY]: prior[FIREBASE_SCREEN_INSTANCE_ID_KEY],\n ...current\n } : current\n ),\n ))\n );\n};\n\n@Injectable()\nexport class ScreenTrackingService implements OnDestroy {\n\n private disposable: Subscription | undefined;\n\n constructor(\n @Optional() router: Router,\n @Optional() title: Title,\n componentFactoryResolver: ComponentFactoryResolver,\n zone: NgZone,\n @Optional() userTrackingService: UserTrackingService,\n injector: Injector,\n ) {\n registerVersion('angularfire', VERSION.full, 'screen-tracking');\n // The APP_INITIALIZER that is making isSupported() sync for the sake of convenient DI\n // may not be done when services are initialized. Guard the functionality by first ensuring\n // that the (global) promise has resolved, then get Analytics from the injector.\n isSupported().then(() => {\n const analytics = injector.get(Analytics);\n if (!router || !analytics) { return; }\n zone.runOutsideAngular(() => {\n this.disposable = ɵscreenViewEvent(router, title, componentFactoryResolver).pipe(\n switchMap(async params => {\n if (userTrackingService) { await userTrackingService.initialized; }\n return logEvent(analytics, SCREEN_VIEW_EVENT, params);\n })\n ).subscribe();\n });\n });\n }\n\n ngOnDestroy() {\n if (this.disposable) {\n this.disposable.unsubscribe();\n }\n }\n\n}\n","import { APP_INITIALIZER, InjectionToken, Injector, ModuleWithProviders, NgModule, NgZone, Optional } from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { Analytics as FirebaseAnalytics } from 'firebase/analytics';\nimport { registerVersion } from 'firebase/app';\nimport { ANALYTICS_PROVIDER_NAME, Analytics, AnalyticsInstances } from './analytics';\nimport { isAnalyticsSupportedFactory } from './is-analytics-supported-factory';\nimport { ScreenTrackingService } from './screen-tracking.service';\nimport { UserTrackingService } from './user-tracking.service';\n\nexport const PROVIDED_ANALYTICS_INSTANCES = new InjectionToken<Analytics[]>('angularfire2.analytics-instances');\n\nexport function defaultAnalyticsInstanceFactory(provided: FirebaseAnalytics[]|undefined, defaultApp: FirebaseApp) {\n if (!isAnalyticsSupportedFactory.sync()) { return null; }\n const defaultAnalytics = ɵgetDefaultInstanceOf<FirebaseAnalytics>(ANALYTICS_PROVIDER_NAME, provided, defaultApp);\n return defaultAnalytics && new Analytics(defaultAnalytics);\n}\n\nexport function analyticsInstanceFactory(fn: (injector: Injector) => FirebaseAnalytics) {\n return (zone: NgZone, injector: Injector) => {\n if (!isAnalyticsSupportedFactory.sync()) { return null; }\n const analytics = zone.runOutsideAngular(() => fn(injector));\n return new Analytics(analytics);\n };\n}\n\nconst ANALYTICS_INSTANCES_PROVIDER = {\n provide: AnalyticsInstances,\n deps: [\n [new Optional(), PROVIDED_ANALYTICS_INSTANCES ],\n ]\n};\n\nconst DEFAULT_ANALYTICS_INSTANCE_PROVIDER = {\n provide: Analytics,\n useFactory: defaultAnalyticsInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_ANALYTICS_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_ANALYTICS_INSTANCE_PROVIDER,\n ANALYTICS_INSTANCES_PROVIDER,\n {\n provide: APP_INITIALIZER,\n useValue: isAnalyticsSupportedFactory.async,\n multi: true,\n }\n ]\n})\nexport class AnalyticsModule {\n constructor(\n @Optional() _screenTrackingService: ScreenTrackingService,\n @Optional() _userTrackingService: UserTrackingService,\n ) {\n registerVersion('angularfire', VERSION.full, 'analytics');\n }\n}\n\nexport function provideAnalytics(fn: (injector: Injector) => FirebaseAnalytics, ...deps: any[]): ModuleWithProviders<AnalyticsModule> {\n return {\n ngModule: AnalyticsModule,\n providers: [{\n provide: PROVIDED_ANALYTICS_INSTANCES,\n useFactory: analyticsInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n ...deps,\n ]\n }]\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["isSupported","_getAnalytics","_initializeAnalytics","_logEvent","_setAnalyticsCollectionEnabled","_setCurrentScreen","_settings","_setUserId","_setUserProperties","i1","i3.UserTrackingService","i1.ScreenTrackingService","i2.UserTrackingService"],"mappings":"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"}
@@ -1,49 +1,41 @@
1
- import { ɵgetAllInstancesOf, ɵgetDefaultInstanceOf, VERSION, ɵAngularFireSchedulers, ɵzoneWrap } from '@angular/fire';
1
+ import { ɵgetAllInstancesOf, ɵAPP_CHECK_PROVIDER_NAME, ɵgetDefaultInstanceOf, ɵAppCheckInstances, VERSION, ɵAngularFireSchedulers, ɵzoneWrap } from '@angular/fire';
2
+ export { ɵAppCheckInstances as AppCheckInstances } from '@angular/fire';
2
3
  import { timer, from } from 'rxjs';
3
4
  import { concatMap, distinct } from 'rxjs/operators';
5
+ import { isPlatformServer } from '@angular/common';
4
6
  import * as i0 from '@angular/core';
5
7
  import { InjectionToken, isDevMode, Optional, PLATFORM_ID, NgModule, NgZone, Injector } from '@angular/core';
6
8
  import { FirebaseApp, FirebaseApps } from '@angular/fire/app';
7
9
  import { registerVersion } from 'firebase/app';
8
- import { isPlatformServer } from '@angular/common';
9
10
  import { getToken as getToken$1, initializeAppCheck as initializeAppCheck$1, onTokenChanged as onTokenChanged$1, setTokenAutoRefreshEnabled as setTokenAutoRefreshEnabled$1 } from 'firebase/app-check';
10
11
  export * from 'firebase/app-check';
11
12
 
12
- const APP_CHECK_PROVIDER_NAME = 'app-check';
13
13
  class AppCheck {
14
14
  constructor(appCheck) {
15
15
  return appCheck;
16
16
  }
17
17
  }
18
- class AppCheckInstances {
19
- constructor() {
20
- return ɵgetAllInstancesOf(APP_CHECK_PROVIDER_NAME);
21
- }
22
- }
23
- const appCheckInstance$ = timer(0, 300).pipe(concatMap(() => from(ɵgetAllInstancesOf(APP_CHECK_PROVIDER_NAME))), distinct());
18
+ const appCheckInstance$ = timer(0, 300).pipe(concatMap(() => from(ɵgetAllInstancesOf(ɵAPP_CHECK_PROVIDER_NAME))), distinct());
24
19
 
25
20
  const PROVIDED_APP_CHECK_INSTANCES = new InjectionToken('angularfire2.app-check-instances');
26
- const APP_CHECK_NAMESPACE_SYMBOL = Symbol('angularfire2.app-check.namespace');
27
21
  function defaultAppCheckInstanceFactory(provided, defaultApp) {
28
- const defaultAppCheck = ɵgetDefaultInstanceOf(APP_CHECK_PROVIDER_NAME, provided, defaultApp);
22
+ const defaultAppCheck = ɵgetDefaultInstanceOf(ɵAPP_CHECK_PROVIDER_NAME, provided, defaultApp);
29
23
  return defaultAppCheck && new AppCheck(defaultAppCheck);
30
24
  }
31
25
  const LOCALHOSTS = ['localhost', '0.0.0.0', '127.0.0.1'];
32
26
  const isLocalhost = typeof window !== 'undefined' && LOCALHOSTS.includes(window.location.hostname);
33
27
  function appCheckInstanceFactory(fn) {
34
- // tslint:disable-next-line:ban-types
35
28
  return (zone, injector, platformId) => {
36
- var _a;
37
29
  // Node should use admin token provider, browser devmode and localhost should use debug token
38
30
  if (!isPlatformServer(platformId) && (isDevMode() || isLocalhost)) {
39
- (_a = globalThis.FIREBASE_APPCHECK_DEBUG_TOKEN) !== null && _a !== void 0 ? _a : (globalThis.FIREBASE_APPCHECK_DEBUG_TOKEN = true);
31
+ globalThis.FIREBASE_APPCHECK_DEBUG_TOKEN ??= true;
40
32
  }
41
33
  const appCheck = zone.runOutsideAngular(() => fn(injector));
42
34
  return new AppCheck(appCheck);
43
35
  };
44
36
  }
45
37
  const APP_CHECK_INSTANCES_PROVIDER = {
46
- provide: AppCheckInstances,
38
+ provide: ɵAppCheckInstances,
47
39
  deps: [
48
40
  [new Optional(), PROVIDED_APP_CHECK_INSTANCES],
49
41
  ]
@@ -61,14 +53,14 @@ class AppCheckModule {
61
53
  constructor() {
62
54
  registerVersion('angularfire', VERSION.full, 'app-check');
63
55
  }
56
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AppCheckModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
57
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: AppCheckModule });
58
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AppCheckModule, providers: [
59
+ DEFAULT_APP_CHECK_INSTANCE_PROVIDER,
60
+ APP_CHECK_INSTANCES_PROVIDER,
61
+ ] });
64
62
  }
65
- AppCheckModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AppCheckModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
66
- AppCheckModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AppCheckModule });
67
- AppCheckModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AppCheckModule, providers: [
68
- DEFAULT_APP_CHECK_INSTANCE_PROVIDER,
69
- APP_CHECK_INSTANCES_PROVIDER,
70
- ] });
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AppCheckModule, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AppCheckModule, decorators: [{
72
64
  type: NgModule,
73
65
  args: [{
74
66
  providers: [
@@ -106,5 +98,5 @@ const setTokenAutoRefreshEnabled = ɵzoneWrap(setTokenAutoRefreshEnabled$1, true
106
98
  * Generated bundle index. Do not edit.
107
99
  */
108
100
 
109
- export { AppCheck, AppCheckInstances, AppCheckModule, appCheckInstance$, getToken, initializeAppCheck, onTokenChanged, provideAppCheck, setTokenAutoRefreshEnabled };
110
- //# sourceMappingURL=angular-fire-app-check.js.map
101
+ export { AppCheck, AppCheckModule, appCheckInstance$, getToken, initializeAppCheck, onTokenChanged, provideAppCheck, setTokenAutoRefreshEnabled };
102
+ //# sourceMappingURL=angular-fire-app-check.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-fire-app-check.mjs","sources":["../../../src/app-check/app-check.ts","../../../src/app-check/app-check.module.ts","../../../src/app-check/firebase.ts","../../../src/app-check/angular-fire-app-check.ts"],"sourcesContent":["import { ɵAPP_CHECK_PROVIDER_NAME, ɵgetAllInstancesOf } from '@angular/fire';\nimport { AppCheck as FirebaseAppCheck } from 'firebase/app-check';\nimport { from, timer } from 'rxjs';\nimport { concatMap, distinct } from 'rxjs/operators';\n\n// see notes in core/firebase.app.module.ts for why we're building the class like this\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface AppCheck extends FirebaseAppCheck {}\n\nexport class AppCheck {\n constructor(appCheck: FirebaseAppCheck) {\n return appCheck;\n }\n}\n\nexport const appCheckInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseAppCheck>(ɵAPP_CHECK_PROVIDER_NAME))),\n distinct(),\n);\n","import { isPlatformServer } from '@angular/common';\nimport { InjectionToken, Injector, ModuleWithProviders, NgModule, NgZone, Optional, PLATFORM_ID, isDevMode } from '@angular/core';\nimport { VERSION, ɵAPP_CHECK_PROVIDER_NAME, ɵAngularFireSchedulers, ɵAppCheckInstances, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { registerVersion } from 'firebase/app';\nimport { AppCheck as FirebaseAppCheck } from 'firebase/app-check';\nimport { AppCheck } from './app-check';\n\nexport const PROVIDED_APP_CHECK_INSTANCES = new InjectionToken<AppCheck[]>('angularfire2.app-check-instances');\n\nexport function defaultAppCheckInstanceFactory(provided: FirebaseAppCheck[]|undefined, defaultApp: FirebaseApp) {\n const defaultAppCheck = ɵgetDefaultInstanceOf<FirebaseAppCheck>(ɵAPP_CHECK_PROVIDER_NAME, provided, defaultApp);\n return defaultAppCheck && new AppCheck(defaultAppCheck);\n}\n\nconst LOCALHOSTS = ['localhost', '0.0.0.0', '127.0.0.1'];\nconst isLocalhost = typeof window !== 'undefined' && LOCALHOSTS.includes(window.location.hostname);\n\nexport function appCheckInstanceFactory(fn: (injector: Injector) => FirebaseAppCheck) {\n return (zone: NgZone, injector: Injector, platformId: unknown) => {\n // Node should use admin token provider, browser devmode and localhost should use debug token\n if (!isPlatformServer(platformId) && (isDevMode() || isLocalhost)) {\n globalThis.FIREBASE_APPCHECK_DEBUG_TOKEN ??= true;\n }\n const appCheck = zone.runOutsideAngular(() => fn(injector));\n return new AppCheck(appCheck);\n };\n}\n\nconst APP_CHECK_INSTANCES_PROVIDER = {\n provide: ɵAppCheckInstances,\n deps: [\n [new Optional(), PROVIDED_APP_CHECK_INSTANCES ],\n ]\n};\n\nconst DEFAULT_APP_CHECK_INSTANCE_PROVIDER = {\n provide: AppCheck,\n useFactory: defaultAppCheckInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_APP_CHECK_INSTANCES ],\n FirebaseApp,\n PLATFORM_ID,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_APP_CHECK_INSTANCE_PROVIDER,\n APP_CHECK_INSTANCES_PROVIDER,\n ]\n})\nexport class AppCheckModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'app-check');\n }\n}\n\nexport function provideAppCheck(fn: (injector: Injector) => FirebaseAppCheck, ...deps: any[]): ModuleWithProviders<AppCheckModule> {\n return {\n ngModule: AppCheckModule,\n providers: [{\n provide: PROVIDED_APP_CHECK_INSTANCES,\n useFactory: appCheckInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n PLATFORM_ID,\n ɵAngularFireSchedulers,\n FirebaseApps,\n ...deps,\n ]\n }]\n };\n}\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/app-check';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n getToken as _getToken,\n initializeAppCheck as _initializeAppCheck,\n onTokenChanged as _onTokenChanged,\n setTokenAutoRefreshEnabled as _setTokenAutoRefreshEnabled\n} from 'firebase/app-check';\n\nexport const getToken = ɵzoneWrap(_getToken, true);\nexport const initializeAppCheck = ɵzoneWrap(_initializeAppCheck, true);\nexport const onTokenChanged = ɵzoneWrap(_onTokenChanged, true);\nexport const setTokenAutoRefreshEnabled = ɵzoneWrap(_setTokenAutoRefreshEnabled, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["_getToken","_initializeAppCheck","_onTokenChanged","_setTokenAutoRefreshEnabled"],"mappings":"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"}
@@ -52,20 +52,21 @@ function firebaseAppFactory(fn) {
52
52
  };
53
53
  }
54
54
  class FirebaseAppModule {
55
- // tslint:disable-next-line:ban-types
55
+ // eslint-disable-next-line @typescript-eslint/ban-types
56
56
  constructor(platformId) {
57
57
  registerVersion$1('angularfire', VERSION.full, 'core');
58
58
  registerVersion$1('angularfire', VERSION.full, 'app');
59
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
59
60
  registerVersion$1('angular', VERSION$1.full, platformId.toString());
60
61
  }
62
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FirebaseAppModule, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.NgModule });
63
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: FirebaseAppModule });
64
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FirebaseAppModule, providers: [
65
+ DEFAULT_FIREBASE_APP_PROVIDER,
66
+ FIREBASE_APPS_PROVIDER,
67
+ ] });
61
68
  }
62
- FirebaseAppModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: FirebaseAppModule, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.NgModule });
63
- FirebaseAppModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: FirebaseAppModule });
64
- FirebaseAppModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: FirebaseAppModule, providers: [
65
- DEFAULT_FIREBASE_APP_PROVIDER,
66
- FIREBASE_APPS_PROVIDER,
67
- ] });
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: FirebaseAppModule, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FirebaseAppModule, decorators: [{
69
70
  type: NgModule,
70
71
  args: [{
71
72
  providers: [
@@ -111,4 +112,4 @@ const setLogLevel = ɵzoneWrap(setLogLevel$1, true);
111
112
  */
112
113
 
113
114
  export { FirebaseApp, FirebaseAppModule, FirebaseApps, deleteApp, firebaseApp$, getApp, getApps, initializeApp, onLog, provideFirebaseApp, registerVersion, setLogLevel };
114
- //# sourceMappingURL=angular-fire-app.js.map
115
+ //# sourceMappingURL=angular-fire-app.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-fire-app.mjs","sources":["../../../src/app/app.ts","../../../src/app/app.module.ts","../../../src/app/firebase.ts","../../../src/app/angular-fire-app.ts"],"sourcesContent":["import { FirebaseApp as IFirebaseApp, getApps } from 'firebase/app';\nimport { from, timer } from 'rxjs';\nimport { concatMap, distinct } from 'rxjs/operators';\n\n// Need to turn the FirebaseApp interface exported by firebase/app into a class\n// as types don't work in Angular DI. We want developers to be able to inject FirebaseApp like so\n// constructor(app: FirebaseApp)\n// the cleanest way to achieve this that I found is to export a new interface and class\n// the interface just extends the interface you want to turn into the class. This informs tyepscript\n// that the class has all the same methods/properties as the interface you want to extend without\n// breaking if Firebase adds/removes APIs in future releases. This was a big problem for @angular/fire\n// back when we constructed our own class. Then in the \"new class\" we just return the FirebaseApp in the\n// constructor, this also has the added benefit of Firebase methods taking our DI class without\n// casting. E.g,\n// constructor(private app: FirebaseApp) { }\n// ngOnDestroy() { deleteApp(this.app); }\n//\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface FirebaseApp extends IFirebaseApp {}\n\nexport class FirebaseApp {\n constructor(app: IFirebaseApp) {\n return app;\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface FirebaseApps extends Array<IFirebaseApp> {}\n\nexport class FirebaseApps {\n constructor() {\n return getApps();\n }\n}\n\nexport const firebaseApp$ = timer(0, 300).pipe(\n concatMap(() => from(getApps())),\n distinct(),\n);\n","import {\n Inject,\n InjectionToken,\n Injector,\n ModuleWithProviders,\n VERSION as NG_VERSION,\n NgModule,\n NgZone,\n Optional,\n PLATFORM_ID,\n} from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers } from '@angular/fire';\nimport { FirebaseApp as IFirebaseApp, getApp, registerVersion } from 'firebase/app';\nimport { FirebaseApp, FirebaseApps } from './app';\n\nexport function defaultFirebaseAppFactory(provided: FirebaseApp[]|undefined) {\n // Use the provided app, if there is only one, otherwise fetch the default app\n if (provided && provided.length === 1) { return provided[0]; }\n return new FirebaseApp(getApp());\n}\n\n// With FIREBASE_APPS I wanted to capture the default app instance, if it is initialized by\n// the reserved URL; ɵPROVIDED_FIREBASE_APPS is not for public consumption and serves to ensure that all\n// provideFirebaseApp(...) calls are satisfied before FirebaseApp$ or FirebaseApp is resolved\nexport const PROVIDED_FIREBASE_APPS = new InjectionToken<FirebaseApp[]>('angularfire2._apps');\n\n// Injecting FirebaseApp will now only inject the default Firebase App\n// this allows allows beginners to import /__/firebase/init.js to auto initialize Firebase App\n// from the reserved URL.\nconst DEFAULT_FIREBASE_APP_PROVIDER = {\n provide: FirebaseApp,\n useFactory: defaultFirebaseAppFactory,\n deps: [\n [new Optional(), PROVIDED_FIREBASE_APPS ],\n ],\n};\n\nconst FIREBASE_APPS_PROVIDER = {\n provide: FirebaseApps,\n deps: [\n [new Optional(), PROVIDED_FIREBASE_APPS ],\n ],\n};\n\nexport function firebaseAppFactory(fn: (injector: Injector) => IFirebaseApp) {\n return (zone: NgZone, injector: Injector) => {\n const app = zone.runOutsideAngular(() => fn(injector));\n return new FirebaseApp(app);\n };\n}\n\n@NgModule({\n providers: [\n DEFAULT_FIREBASE_APP_PROVIDER,\n FIREBASE_APPS_PROVIDER,\n ]\n})\nexport class FirebaseAppModule {\n // eslint-disable-next-line @typescript-eslint/ban-types\n constructor(@Inject(PLATFORM_ID) platformId: Object) {\n registerVersion('angularfire', VERSION.full, 'core');\n registerVersion('angularfire', VERSION.full, 'app');\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n registerVersion('angular', NG_VERSION.full, platformId.toString());\n }\n}\n\n// Calling initializeApp({ ... }, 'name') multiple times will add more FirebaseApps into the FIREBASE_APPS\n// injection scope. This allows developers to more easily work with multiple Firebase Applications. Downside\n// is that DI for app name and options doesn't really make sense anymore.\nexport function provideFirebaseApp(fn: (injector: Injector) => IFirebaseApp, ...deps: any[]): ModuleWithProviders<FirebaseAppModule> {\n return {\n ngModule: FirebaseAppModule,\n providers: [{\n provide: PROVIDED_FIREBASE_APPS,\n useFactory: firebaseAppFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n ...deps,\n ],\n }],\n };\n}\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/app';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n deleteApp as _deleteApp,\n getApp as _getApp,\n getApps as _getApps,\n initializeApp as _initializeApp,\n onLog as _onLog,\n registerVersion as _registerVersion,\n setLogLevel as _setLogLevel\n} from 'firebase/app';\n\nexport const deleteApp = ɵzoneWrap(_deleteApp, true);\nexport const getApp = ɵzoneWrap(_getApp, true);\nexport const getApps = ɵzoneWrap(_getApps, true);\nexport const initializeApp = ɵzoneWrap(_initializeApp, true);\nexport const onLog = ɵzoneWrap(_onLog, true);\nexport const registerVersion = ɵzoneWrap(_registerVersion, true);\nexport const setLogLevel = ɵzoneWrap(_setLogLevel, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["getApps","getApp","registerVersion","NG_VERSION","_deleteApp","_getApp","_getApps","_initializeApp","_onLog","_registerVersion","_setLogLevel"],"mappings":"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"}
@@ -1,38 +1,40 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, NgModule } from '@angular/core';
3
+ import * as i2 from '@angular/fire/auth';
4
+ import { user } from '@angular/fire/auth';
3
5
  import * as i1 from '@angular/router';
4
6
  import { of, pipe } from 'rxjs';
5
7
  import { map, take, switchMap } from 'rxjs/operators';
6
- import * as i2 from '@angular/fire/auth';
7
- import { user } from '@angular/fire/auth';
8
- import { registerVersion } from 'firebase/app';
9
8
  import { VERSION } from '@angular/fire';
9
+ import { registerVersion } from 'firebase/app';
10
10
 
11
11
  const loggedIn = map(user => !!user);
12
12
  class AuthGuard {
13
+ router;
14
+ auth;
13
15
  constructor(router, auth) {
14
16
  this.router = router;
15
17
  this.auth = auth;
16
- this.canActivate = (next, state) => {
17
- const authPipeFactory = next.data.authGuardPipe || (() => loggedIn);
18
- return user(this.auth).pipe(take(1), authPipeFactory(next, state), map(can => {
19
- if (typeof can === 'boolean') {
20
- return can;
21
- }
22
- else if (Array.isArray(can)) {
23
- return this.router.createUrlTree(can);
24
- }
25
- else {
26
- // TODO(EdricChan03): Add tests
27
- return this.router.parseUrl(can);
28
- }
29
- }));
30
- };
31
18
  }
19
+ canActivate = (next, state) => {
20
+ const authPipeFactory = next.data.authGuardPipe || (() => loggedIn);
21
+ return user(this.auth).pipe(take(1), authPipeFactory(next, state), map(can => {
22
+ if (typeof can === 'boolean') {
23
+ return can;
24
+ }
25
+ else if (Array.isArray(can)) {
26
+ return this.router.createUrlTree(can);
27
+ }
28
+ else {
29
+ // TODO(EdricChan03): Add tests
30
+ return this.router.parseUrl(can);
31
+ }
32
+ }));
33
+ };
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuard, deps: [{ token: i1.Router }, { token: i2.Auth }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuard, providedIn: 'any' });
32
36
  }
33
- AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuard, deps: [{ token: i1.Router }, { token: i2.Auth }], target: i0.ɵɵFactoryTarget.Injectable });
34
- AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuard, providedIn: 'any' });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuard, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuard, decorators: [{
36
38
  type: Injectable,
37
39
  args: [{
38
40
  providedIn: 'any'
@@ -45,7 +47,9 @@ const isNotAnonymous = map(user => !!user && !user.isAnonymous);
45
47
  const idTokenResult = switchMap((user) => user ? user.getIdTokenResult() : of(null));
46
48
  const emailVerified = map(user => !!user && user.emailVerified);
47
49
  const customClaims = pipe(idTokenResult, map(idTokenResult => idTokenResult ? idTokenResult.claims : []));
48
- const hasCustomClaim = (claim) => pipe(customClaims, map(claims => claims.hasOwnProperty(claim)));
50
+ const hasCustomClaim =
51
+ // eslint-disable-next-line no-prototype-builtins
52
+ (claim) => pipe(customClaims, map(claims => claims.hasOwnProperty(claim)));
49
53
  const redirectUnauthorizedTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn || redirect));
50
54
  const redirectLoggedInTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn && redirect || true));
51
55
 
@@ -53,11 +57,11 @@ class AuthGuardModule {
53
57
  constructor() {
54
58
  registerVersion('angularfire', VERSION.full, 'auth-guard');
55
59
  }
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
61
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: AuthGuardModule });
62
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuardModule, providers: [AuthGuard] });
56
63
  }
57
- AuthGuardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
58
- AuthGuardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuardModule });
59
- AuthGuardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuardModule, providers: [AuthGuard] });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AuthGuardModule, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AuthGuardModule, decorators: [{
61
65
  type: NgModule,
62
66
  args: [{
63
67
  providers: [AuthGuard]
@@ -69,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImpor
69
73
  */
70
74
 
71
75
  export { AuthGuard, AuthGuardModule, canActivate, customClaims, emailVerified, hasCustomClaim, idTokenResult, isNotAnonymous, loggedIn, redirectLoggedInTo, redirectUnauthorizedTo };
72
- //# sourceMappingURL=angular-fire-auth-guard.js.map
76
+ //# sourceMappingURL=angular-fire-auth-guard.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-fire-auth-guard.mjs","sources":["../../../src/auth-guard/auth-guard.ts","../../../src/auth-guard/auth-guard.module.ts","../../../src/auth-guard/angular-fire-auth-guard.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Auth, user } from '@angular/fire/auth';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport { User } from 'firebase/auth';\nimport { Observable, UnaryFunction, of, pipe } from 'rxjs';\nimport { map, switchMap, take } from 'rxjs/operators';\n\nexport type AuthPipeGenerator = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot) => AuthPipe;\nexport type AuthPipe = UnaryFunction<Observable<User|null>, Observable<boolean|string|any[]>>;\n\nexport const loggedIn: AuthPipe = map(user => !!user);\n\n@Injectable({\n providedIn: 'any'\n})\nexport class AuthGuard implements CanActivate {\n\n constructor(private router: Router, private auth: Auth) {}\n\n canActivate = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n const authPipeFactory = next.data.authGuardPipe as AuthPipeGenerator || (() => loggedIn);\n return user(this.auth).pipe(\n take(1),\n authPipeFactory(next, state),\n map(can => {\n if (typeof can === 'boolean') {\n return can;\n } else if (Array.isArray(can)) {\n return this.router.createUrlTree(can);\n } else {\n // TODO(EdricChan03): Add tests\n return this.router.parseUrl(can);\n }\n })\n );\n }\n\n}\n\nexport const canActivate = (pipe: AuthPipeGenerator) => ({\n canActivate: [ AuthGuard ], data: { authGuardPipe: pipe }\n});\n\nexport const isNotAnonymous: AuthPipe = map(user => !!user && !user.isAnonymous);\nexport const idTokenResult = switchMap((user: User|null) => user ? user.getIdTokenResult() : of(null));\nexport const emailVerified: AuthPipe = map(user => !!user && user.emailVerified);\nexport const customClaims = pipe(idTokenResult, map(idTokenResult => idTokenResult ? idTokenResult.claims : []));\nexport const hasCustomClaim: (claim: string) => AuthPipe =\n // eslint-disable-next-line no-prototype-builtins\n (claim) => pipe(customClaims, map(claims => claims.hasOwnProperty(claim)));\nexport const redirectUnauthorizedTo: (redirect: string|any[]) => AuthPipe =\n (redirect) => pipe(loggedIn, map(loggedIn => loggedIn || redirect));\nexport const redirectLoggedInTo: (redirect: string|any[]) => AuthPipe =\n (redirect) => pipe(loggedIn, map(loggedIn => loggedIn && redirect || true));\n","import { NgModule } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport { registerVersion } from 'firebase/app';\nimport { AuthGuard } from './auth-guard';\n\n@NgModule({\n providers: [ AuthGuard ]\n})\nexport class AuthGuardModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'auth-guard');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}