@angular/fire 18.0.1 → 19.0.0-canary.a58b329

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 (264) hide show
  1. package/README.md +2 -2
  2. package/analytics/firebase.d.ts +2 -2
  3. package/analytics/screen-tracking.service.d.ts +1 -1
  4. package/auth/rxfire.d.ts +2 -2
  5. package/compat/database/database.d.ts +1 -1
  6. package/compat/firestore/firestore.d.ts +1 -1
  7. package/compat/storage/pipes/storageUrl.pipe.d.ts +2 -2
  8. package/compat/storage/storage.d.ts +1 -1
  9. package/compat/storage/storage.module.d.ts +1 -1
  10. package/database/rxfire.d.ts +4 -4
  11. package/docs/install-and-setup.md +10 -5
  12. package/docs/vertexai.md +3 -3
  13. package/fesm2022/angular-fire-analytics.mjs +12 -12
  14. package/fesm2022/angular-fire-analytics.mjs.map +1 -1
  15. package/fesm2022/angular-fire-app-check.mjs +4 -4
  16. package/fesm2022/angular-fire-app-check.mjs.map +1 -1
  17. package/fesm2022/angular-fire-app.mjs +4 -4
  18. package/fesm2022/angular-fire-app.mjs.map +1 -1
  19. package/fesm2022/angular-fire-auth-guard.mjs +7 -7
  20. package/fesm2022/angular-fire-auth-guard.mjs.map +1 -1
  21. package/fesm2022/angular-fire-auth.mjs +6 -6
  22. package/fesm2022/angular-fire-auth.mjs.map +1 -1
  23. package/fesm2022/angular-fire-compat-analytics.mjs +13 -13
  24. package/fesm2022/angular-fire-compat-analytics.mjs.map +1 -1
  25. package/fesm2022/angular-fire-compat-auth-guard.mjs +7 -7
  26. package/fesm2022/angular-fire-compat-auth-guard.mjs.map +1 -1
  27. package/fesm2022/angular-fire-compat-auth.mjs +7 -7
  28. package/fesm2022/angular-fire-compat-auth.mjs.map +1 -1
  29. package/fesm2022/angular-fire-compat-database.mjs +7 -7
  30. package/fesm2022/angular-fire-compat-database.mjs.map +1 -1
  31. package/fesm2022/angular-fire-compat-firestore.mjs +9 -9
  32. package/fesm2022/angular-fire-compat-firestore.mjs.map +1 -1
  33. package/fesm2022/angular-fire-compat-functions.mjs +7 -7
  34. package/fesm2022/angular-fire-compat-functions.mjs.map +1 -1
  35. package/fesm2022/angular-fire-compat-messaging.mjs +7 -7
  36. package/fesm2022/angular-fire-compat-messaging.mjs.map +1 -1
  37. package/fesm2022/angular-fire-compat-performance.mjs +10 -10
  38. package/fesm2022/angular-fire-compat-performance.mjs.map +1 -1
  39. package/fesm2022/angular-fire-compat-remote-config.mjs +7 -7
  40. package/fesm2022/angular-fire-compat-remote-config.mjs.map +1 -1
  41. package/fesm2022/angular-fire-compat-storage.mjs +16 -15
  42. package/fesm2022/angular-fire-compat-storage.mjs.map +1 -1
  43. package/fesm2022/angular-fire-compat.mjs +4 -4
  44. package/fesm2022/angular-fire-compat.mjs.map +1 -1
  45. package/fesm2022/angular-fire-database.mjs +8 -8
  46. package/fesm2022/angular-fire-database.mjs.map +1 -1
  47. package/fesm2022/angular-fire-firestore-lite.mjs +11 -10
  48. package/fesm2022/angular-fire-firestore-lite.mjs.map +1 -1
  49. package/fesm2022/angular-fire-firestore.mjs +14 -13
  50. package/fesm2022/angular-fire-firestore.mjs.map +1 -1
  51. package/fesm2022/angular-fire-functions.mjs +4 -4
  52. package/fesm2022/angular-fire-functions.mjs.map +1 -1
  53. package/fesm2022/angular-fire-messaging.mjs +4 -4
  54. package/fesm2022/angular-fire-messaging.mjs.map +1 -1
  55. package/fesm2022/angular-fire-performance.mjs +6 -6
  56. package/fesm2022/angular-fire-performance.mjs.map +1 -1
  57. package/fesm2022/angular-fire-remote-config.mjs +9 -9
  58. package/fesm2022/angular-fire-remote-config.mjs.map +1 -1
  59. package/fesm2022/angular-fire-storage.mjs +4 -4
  60. package/fesm2022/angular-fire-storage.mjs.map +1 -1
  61. package/fesm2022/{angular-fire-vertexai-preview.mjs → angular-fire-vertexai.mjs} +8 -8
  62. package/fesm2022/angular-fire-vertexai.mjs.map +1 -0
  63. package/fesm2022/angular-fire.mjs +37 -57
  64. package/fesm2022/angular-fire.mjs.map +1 -1
  65. package/firestore/firebase.d.ts +2 -1
  66. package/firestore/lite/firebase.d.ts +2 -1
  67. package/firestore/lite/rxfire.d.ts +4 -4
  68. package/firestore/rxfire.d.ts +7 -7
  69. package/package.json +16 -75
  70. package/performance/rxfire.d.ts +2 -2
  71. package/publish.sh +1 -0
  72. package/remote-config/rxfire.d.ts +5 -5
  73. package/schematics/add/index.js +1 -13
  74. package/schematics/deploy/actions.js +138 -394
  75. package/schematics/deploy/builder.js +139 -61
  76. package/schematics/setup/index.js +94 -64
  77. package/schematics/update/index.js +1 -7
  78. package/schematics/update/v7/index.js +1 -67
  79. package/schematics/versions.json +2 -3
  80. package/vertexai/firebase.d.ts +4 -0
  81. package/{vertexai-preview → vertexai}/index.d.ts +1 -1
  82. package/vertexai/package.json +3 -0
  83. package/{vertexai-preview → vertexai}/vertexai.d.ts +1 -1
  84. package/{vertexai-preview → vertexai}/vertexai.module.d.ts +1 -1
  85. package/zones.d.ts +3 -2
  86. package/esm2022/analytics/analytics.mjs +0 -16
  87. package/esm2022/analytics/analytics.module.mjs +0 -101
  88. package/esm2022/analytics/angular-fire-analytics.mjs +0 -5
  89. package/esm2022/analytics/firebase.mjs +0 -17
  90. package/esm2022/analytics/is-analytics-supported-factory.mjs +0 -16
  91. package/esm2022/analytics/overrides.mjs +0 -3
  92. package/esm2022/analytics/public_api.mjs +0 -6
  93. package/esm2022/analytics/screen-tracking.service.mjs +0 -148
  94. package/esm2022/analytics/user-tracking.service.mjs +0 -44
  95. package/esm2022/angular-fire.mjs +0 -5
  96. package/esm2022/app/angular-fire-app.mjs +0 -5
  97. package/esm2022/app/app.mjs +0 -15
  98. package/esm2022/app/app.module.mjs +0 -91
  99. package/esm2022/app/firebase.mjs +0 -13
  100. package/esm2022/app/public_api.mjs +0 -4
  101. package/esm2022/app-check/angular-fire-app-check.mjs +0 -5
  102. package/esm2022/app-check/app-check.mjs +0 -10
  103. package/esm2022/app-check/app-check.module.mjs +0 -80
  104. package/esm2022/app-check/firebase.mjs +0 -10
  105. package/esm2022/app-check/public_api.mjs +0 -5
  106. package/esm2022/auth/angular-fire-auth.mjs +0 -5
  107. package/esm2022/auth/auth.mjs +0 -16
  108. package/esm2022/auth/auth.module.mjs +0 -73
  109. package/esm2022/auth/firebase.mjs +0 -59
  110. package/esm2022/auth/public_api.mjs +0 -5
  111. package/esm2022/auth/rxfire.mjs +0 -7
  112. package/esm2022/auth-guard/angular-fire-auth-guard.mjs +0 -5
  113. package/esm2022/auth-guard/auth-guard.mjs +0 -53
  114. package/esm2022/auth-guard/auth-guard.module.mjs +0 -20
  115. package/esm2022/auth-guard/public_api.mjs +0 -3
  116. package/esm2022/compat/analytics/analytics.mjs +0 -160
  117. package/esm2022/compat/analytics/analytics.module.mjs +0 -35
  118. package/esm2022/compat/analytics/angular-fire-compat-analytics.mjs +0 -5
  119. package/esm2022/compat/analytics/base.mjs +0 -11
  120. package/esm2022/compat/analytics/public_api.mjs +0 -5
  121. package/esm2022/compat/analytics/screen-tracking.service.mjs +0 -49
  122. package/esm2022/compat/analytics/user-tracking.service.mjs +0 -53
  123. package/esm2022/compat/angular-fire-compat.mjs +0 -5
  124. package/esm2022/compat/auth/angular-fire-compat-auth.mjs +0 -5
  125. package/esm2022/compat/auth/auth.mjs +0 -161
  126. package/esm2022/compat/auth/auth.module.mjs +0 -20
  127. package/esm2022/compat/auth/base.mjs +0 -39
  128. package/esm2022/compat/auth/public_api.mjs +0 -4
  129. package/esm2022/compat/auth-guard/angular-fire-compat-auth-guard.mjs +0 -5
  130. package/esm2022/compat/auth-guard/auth-guard.mjs +0 -53
  131. package/esm2022/compat/auth-guard/auth-guard.module.mjs +0 -20
  132. package/esm2022/compat/auth-guard/public_api.mjs +0 -3
  133. package/esm2022/compat/cache.mjs +0 -33
  134. package/esm2022/compat/database/angular-fire-compat-database.mjs +0 -5
  135. package/esm2022/compat/database/database.mjs +0 -119
  136. package/esm2022/compat/database/database.module.mjs +0 -20
  137. package/esm2022/compat/database/interfaces.mjs +0 -2
  138. package/esm2022/compat/database/list/audit-trail.mjs +0 -47
  139. package/esm2022/compat/database/list/changes.mjs +0 -85
  140. package/esm2022/compat/database/list/create-reference.mjs +0 -44
  141. package/esm2022/compat/database/list/data-operation.mjs +0 -11
  142. package/esm2022/compat/database/list/remove.mjs +0 -16
  143. package/esm2022/compat/database/list/snapshot-changes.mjs +0 -7
  144. package/esm2022/compat/database/list/state-changes.mjs +0 -9
  145. package/esm2022/compat/database/list/utils.mjs +0 -8
  146. package/esm2022/compat/database/object/create-reference.mjs +0 -19
  147. package/esm2022/compat/database/object/snapshot-changes.mjs +0 -7
  148. package/esm2022/compat/database/observable/fromRef.mjs +0 -48
  149. package/esm2022/compat/database/public_api.mjs +0 -9
  150. package/esm2022/compat/database/utils.mjs +0 -36
  151. package/esm2022/compat/firebase.app.mjs +0 -6
  152. package/esm2022/compat/firebase.app.module.mjs +0 -71
  153. package/esm2022/compat/firestore/angular-fire-compat-firestore.mjs +0 -5
  154. package/esm2022/compat/firestore/collection/changes.mjs +0 -108
  155. package/esm2022/compat/firestore/collection/collection.mjs +0 -123
  156. package/esm2022/compat/firestore/collection-group/collection-group.mjs +0 -86
  157. package/esm2022/compat/firestore/document/document.mjs +0 -87
  158. package/esm2022/compat/firestore/firestore.mjs +0 -257
  159. package/esm2022/compat/firestore/firestore.module.mjs +0 -32
  160. package/esm2022/compat/firestore/interfaces.mjs +0 -2
  161. package/esm2022/compat/firestore/observable/fromRef.mjs +0 -40
  162. package/esm2022/compat/firestore/public_api.mjs +0 -9
  163. package/esm2022/compat/functions/angular-fire-compat-functions.mjs +0 -5
  164. package/esm2022/compat/functions/base.mjs +0 -8
  165. package/esm2022/compat/functions/functions.mjs +0 -69
  166. package/esm2022/compat/functions/functions.module.mjs +0 -20
  167. package/esm2022/compat/functions/public_api.mjs +0 -4
  168. package/esm2022/compat/messaging/angular-fire-compat-messaging.mjs +0 -5
  169. package/esm2022/compat/messaging/base.mjs +0 -9
  170. package/esm2022/compat/messaging/messaging.mjs +0 -81
  171. package/esm2022/compat/messaging/messaging.module.mjs +0 -20
  172. package/esm2022/compat/messaging/public_api.mjs +0 -3
  173. package/esm2022/compat/performance/angular-fire-compat-performance.mjs +0 -5
  174. package/esm2022/compat/performance/base.mjs +0 -9
  175. package/esm2022/compat/performance/performance.mjs +0 -105
  176. package/esm2022/compat/performance/performance.module.mjs +0 -27
  177. package/esm2022/compat/performance/performance.service.mjs +0 -28
  178. package/esm2022/compat/performance/public_api.mjs +0 -4
  179. package/esm2022/compat/proxy.mjs +0 -58
  180. package/esm2022/compat/public_api.mjs +0 -5
  181. package/esm2022/compat/remote-config/angular-fire-compat-remote-config.mjs +0 -5
  182. package/esm2022/compat/remote-config/base.mjs +0 -20
  183. package/esm2022/compat/remote-config/interfaces.mjs +0 -2
  184. package/esm2022/compat/remote-config/public_api.mjs +0 -3
  185. package/esm2022/compat/remote-config/remote-config.mjs +0 -206
  186. package/esm2022/compat/remote-config/remote-config.module.mjs +0 -20
  187. package/esm2022/compat/storage/angular-fire-compat-storage.mjs +0 -5
  188. package/esm2022/compat/storage/interfaces.mjs +0 -2
  189. package/esm2022/compat/storage/observable/fromTask.mjs +0 -36
  190. package/esm2022/compat/storage/pipes/storageUrl.pipe.mjs +0 -56
  191. package/esm2022/compat/storage/public_api.mjs +0 -7
  192. package/esm2022/compat/storage/ref.mjs +0 -28
  193. package/esm2022/compat/storage/storage.mjs +0 -95
  194. package/esm2022/compat/storage/storage.module.mjs +0 -22
  195. package/esm2022/compat/storage/task.mjs +0 -21
  196. package/esm2022/core.mjs +0 -43
  197. package/esm2022/database/angular-fire-database.mjs +0 -5
  198. package/esm2022/database/database.mjs +0 -16
  199. package/esm2022/database/database.module.mjs +0 -76
  200. package/esm2022/database/firebase.mjs +0 -44
  201. package/esm2022/database/public_api.mjs +0 -5
  202. package/esm2022/database/rxfire.mjs +0 -13
  203. package/esm2022/firestore/angular-fire-firestore.mjs +0 -5
  204. package/esm2022/firestore/firebase.mjs +0 -73
  205. package/esm2022/firestore/firestore.mjs +0 -16
  206. package/esm2022/firestore/firestore.module.mjs +0 -76
  207. package/esm2022/firestore/lite/angular-fire-firestore-lite.mjs +0 -5
  208. package/esm2022/firestore/lite/firebase.mjs +0 -48
  209. package/esm2022/firestore/lite/lite.mjs +0 -16
  210. package/esm2022/firestore/lite/lite.module.mjs +0 -75
  211. package/esm2022/firestore/lite/public_api.mjs +0 -5
  212. package/esm2022/firestore/lite/rxfire.mjs +0 -12
  213. package/esm2022/firestore/public_api.mjs +0 -5
  214. package/esm2022/firestore/rxfire.mjs +0 -15
  215. package/esm2022/functions/angular-fire-functions.mjs +0 -5
  216. package/esm2022/functions/firebase.mjs +0 -9
  217. package/esm2022/functions/functions.mjs +0 -16
  218. package/esm2022/functions/functions.module.mjs +0 -76
  219. package/esm2022/functions/public_api.mjs +0 -5
  220. package/esm2022/functions/rxfire.mjs +0 -5
  221. package/esm2022/messaging/angular-fire-messaging.mjs +0 -5
  222. package/esm2022/messaging/firebase.mjs +0 -10
  223. package/esm2022/messaging/is-messaging-supported-factory.mjs +0 -16
  224. package/esm2022/messaging/messaging.mjs +0 -16
  225. package/esm2022/messaging/messaging.module.mjs +0 -93
  226. package/esm2022/messaging/overrides.mjs +0 -3
  227. package/esm2022/messaging/public_api.mjs +0 -4
  228. package/esm2022/performance/angular-fire-performance.mjs +0 -5
  229. package/esm2022/performance/firebase.mjs +0 -8
  230. package/esm2022/performance/performance.mjs +0 -16
  231. package/esm2022/performance/performance.module.mjs +0 -83
  232. package/esm2022/performance/public_api.mjs +0 -5
  233. package/esm2022/performance/rxfire.mjs +0 -8
  234. package/esm2022/public_api.mjs +0 -3
  235. package/esm2022/remote-config/angular-fire-remote-config.mjs +0 -5
  236. package/esm2022/remote-config/firebase.mjs +0 -17
  237. package/esm2022/remote-config/is-remote-config-supported-factory.mjs +0 -16
  238. package/esm2022/remote-config/overrides.mjs +0 -3
  239. package/esm2022/remote-config/public_api.mjs +0 -5
  240. package/esm2022/remote-config/remote-config.mjs +0 -16
  241. package/esm2022/remote-config/remote-config.module.mjs +0 -93
  242. package/esm2022/remote-config/rxfire.mjs +0 -9
  243. package/esm2022/storage/angular-fire-storage.mjs +0 -5
  244. package/esm2022/storage/firebase.mjs +0 -20
  245. package/esm2022/storage/public_api.mjs +0 -5
  246. package/esm2022/storage/rxfire.mjs +0 -6
  247. package/esm2022/storage/storage.mjs +0 -16
  248. package/esm2022/storage/storage.module.mjs +0 -76
  249. package/esm2022/vertexai-preview/angular-fire-vertexai-preview.mjs +0 -5
  250. package/esm2022/vertexai-preview/firebase.mjs +0 -7
  251. package/esm2022/vertexai-preview/public_api.mjs +0 -4
  252. package/esm2022/vertexai-preview/vertexai.mjs +0 -16
  253. package/esm2022/vertexai-preview/vertexai.module.mjs +0 -73
  254. package/esm2022/zones.mjs +0 -194
  255. package/fesm2022/angular-fire-vertexai-preview.mjs.map +0 -1
  256. package/schematics/common.js +0 -81
  257. package/schematics/deploy/functions-templates.js +0 -57
  258. package/schematics/firebaseTools.js +0 -78
  259. package/schematics/interfaces.js +0 -16
  260. package/schematics/setup/prompts.js +0 -195
  261. package/schematics/utils.js +0 -189
  262. package/vertexai-preview/firebase.d.ts +0 -4
  263. package/vertexai-preview/package.json +0 -3
  264. /package/{vertexai-preview → vertexai}/public_api.d.ts +0 -0
@@ -1,161 +0,0 @@
1
- import { isPlatformServer } from '@angular/common';
2
- import { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';
3
- import { keepUnstableUntilFirst, ɵAngularFireSchedulers } from '@angular/fire';
4
- import { AppCheckInstances } from '@angular/fire/app-check';
5
- import { ɵapplyMixins, ɵlazySDKProxy } from '@angular/fire/compat';
6
- import { FIREBASE_APP_NAME, FIREBASE_OPTIONS, ɵcacheInstance, ɵfirebaseAppFactory } from '@angular/fire/compat';
7
- import { Observable, Subject, from, merge, of } from 'rxjs';
8
- import { filter, first, map, observeOn, shareReplay, subscribeOn, switchMap, switchMapTo } from 'rxjs/operators';
9
- import { proxyPolyfillCompat } from './base';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@angular/fire";
12
- import * as i2 from "@angular/fire/app-check";
13
- export const USE_EMULATOR = new InjectionToken('angularfire2.auth.use-emulator');
14
- export const SETTINGS = new InjectionToken('angularfire2.auth.settings');
15
- export const TENANT_ID = new InjectionToken('angularfire2.auth.tenant-id');
16
- export const LANGUAGE_CODE = new InjectionToken('angularfire2.auth.langugage-code');
17
- export const USE_DEVICE_LANGUAGE = new InjectionToken('angularfire2.auth.use-device-language');
18
- export const PERSISTENCE = new InjectionToken('angularfire.auth.persistence');
19
- export const ɵauthFactory = (app, zone, useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence) => ɵcacheInstance(`${app.name}.auth`, 'AngularFireAuth', app.name, () => {
20
- const auth = zone.runOutsideAngular(() => app.auth());
21
- if (useEmulator) {
22
- auth.useEmulator(...useEmulator);
23
- }
24
- if (tenantId) {
25
- auth.tenantId = tenantId;
26
- }
27
- auth.languageCode = languageCode;
28
- if (useDeviceLanguage) {
29
- auth.useDeviceLanguage();
30
- }
31
- if (settings) {
32
- for (const [k, v] of Object.entries(settings)) {
33
- auth.settings[k] = v;
34
- }
35
- }
36
- if (persistence) {
37
- auth.setPersistence(persistence);
38
- }
39
- return auth;
40
- }, [useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence]);
41
- export class AngularFireAuth {
42
- /**
43
- * Observable of authentication state; as of Firebase 4.0 this is only triggered via sign-in/out
44
- */
45
- authState;
46
- /**
47
- * Observable of the currently signed-in user's JWT token used to identify the user to a Firebase service (or null).
48
- */
49
- idToken;
50
- /**
51
- * Observable of the currently signed-in user (or null).
52
- */
53
- user;
54
- /**
55
- * Observable of the currently signed-in user's IdTokenResult object which contains the ID token JWT string and other
56
- * helper properties for getting different data associated with the token as well as all the decoded payload claims
57
- * (or null).
58
- */
59
- idTokenResult;
60
- /**
61
- * Observable of the currently signed-in user's credential, or null
62
- */
63
- credential;
64
- constructor(options, name,
65
- // eslint-disable-next-line @typescript-eslint/ban-types
66
- platformId, zone, schedulers, useEmulator, // can't use the tuple here
67
- settings, // can't use firebase.auth.AuthSettings here
68
- tenantId, languageCode, useDeviceLanguage, persistence, _appCheckInstances) {
69
- const logins = new Subject();
70
- const auth = of(undefined).pipe(observeOn(schedulers.outsideAngular), switchMap(() => zone.runOutsideAngular(() => import('firebase/compat/auth'))), map(() => ɵfirebaseAppFactory(options, zone, name)), map(app => ɵauthFactory(app, zone, useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence)), shareReplay({ bufferSize: 1, refCount: false }));
71
- if (isPlatformServer(platformId)) {
72
- this.authState = this.user = this.idToken = this.idTokenResult = this.credential = of(null);
73
- }
74
- else {
75
- // HACK, as we're exporting auth.Auth, rather than auth, developers importing firebase.auth
76
- // (e.g, `import { auth } from 'firebase/compat/app'`) are getting an undefined auth object unexpectedly
77
- // as we're completely lazy. Let's eagerly load the Auth SDK here.
78
- // There could potentially be race conditions still... but this greatly decreases the odds while
79
- // we reevaluate the API.
80
- auth.pipe(first()).subscribe();
81
- const redirectResult = auth.pipe(switchMap(auth => auth.getRedirectResult().then(it => it, () => null)), keepUnstableUntilFirst, shareReplay({ bufferSize: 1, refCount: false }));
82
- const authStateChanged = auth.pipe(switchMap(auth => new Observable(sub => ({ unsubscribe: zone.runOutsideAngular(() => auth.onAuthStateChanged(next => sub.next(next), err => sub.error(err), () => sub.complete())) }))));
83
- const idTokenChanged = auth.pipe(switchMap(auth => new Observable(sub => ({ unsubscribe: zone.runOutsideAngular(() => auth.onIdTokenChanged(next => sub.next(next), err => sub.error(err), () => sub.complete())) }))));
84
- this.authState = redirectResult.pipe(switchMapTo(authStateChanged), subscribeOn(schedulers.outsideAngular), observeOn(schedulers.insideAngular));
85
- this.user = redirectResult.pipe(switchMapTo(idTokenChanged), subscribeOn(schedulers.outsideAngular), observeOn(schedulers.insideAngular));
86
- this.idToken = this.user.pipe(switchMap(user => user ? from(user.getIdToken()) : of(null)));
87
- this.idTokenResult = this.user.pipe(switchMap(user => user ? from(user.getIdTokenResult()) : of(null)));
88
- this.credential = merge(redirectResult, logins,
89
- // pipe in null authState to make credential zipable, just a weird devexp if
90
- // authState and user go null to still have a credential
91
- this.authState.pipe(filter(it => !it))).pipe(
92
- // handle the { user: { } } when a user is already logged in, rather have null
93
- // TODO handle the type corcersion better
94
- map(credential => credential?.user ? credential : null), subscribeOn(schedulers.outsideAngular), observeOn(schedulers.insideAngular));
95
- }
96
- return ɵlazySDKProxy(this, auth, zone, { spy: {
97
- apply: (name, _, val) => {
98
- // If they call a signIn or createUser function listen into the promise
99
- // this will give us the user credential, push onto the logins Subject
100
- // to be consumed in .credential
101
- if (name.startsWith('signIn') || name.startsWith('createUser')) {
102
- // TODO fix the types, the trouble is UserCredential has everything optional
103
- val.then((user) => logins.next(user));
104
- }
105
- }
106
- } });
107
- }
108
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuth, deps: [{ token: FIREBASE_OPTIONS }, { token: FIREBASE_APP_NAME, optional: true }, { token: PLATFORM_ID }, { token: i0.NgZone }, { token: i1.ɵAngularFireSchedulers }, { token: USE_EMULATOR, optional: true }, { token: SETTINGS, optional: true }, { token: TENANT_ID, optional: true }, { token: LANGUAGE_CODE, optional: true }, { token: USE_DEVICE_LANGUAGE, optional: true }, { token: PERSISTENCE, optional: true }, { token: i2.AppCheckInstances, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
109
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuth, providedIn: 'any' });
110
- }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuth, decorators: [{
112
- type: Injectable,
113
- args: [{
114
- providedIn: 'any'
115
- }]
116
- }], ctorParameters: () => [{ type: undefined, decorators: [{
117
- type: Inject,
118
- args: [FIREBASE_OPTIONS]
119
- }] }, { type: undefined, decorators: [{
120
- type: Optional
121
- }, {
122
- type: Inject,
123
- args: [FIREBASE_APP_NAME]
124
- }] }, { type: Object, decorators: [{
125
- type: Inject,
126
- args: [PLATFORM_ID]
127
- }] }, { type: i0.NgZone }, { type: i1.ɵAngularFireSchedulers }, { type: undefined, decorators: [{
128
- type: Optional
129
- }, {
130
- type: Inject,
131
- args: [USE_EMULATOR]
132
- }] }, { type: undefined, decorators: [{
133
- type: Optional
134
- }, {
135
- type: Inject,
136
- args: [SETTINGS]
137
- }] }, { type: undefined, decorators: [{
138
- type: Optional
139
- }, {
140
- type: Inject,
141
- args: [TENANT_ID]
142
- }] }, { type: undefined, decorators: [{
143
- type: Optional
144
- }, {
145
- type: Inject,
146
- args: [LANGUAGE_CODE]
147
- }] }, { type: undefined, decorators: [{
148
- type: Optional
149
- }, {
150
- type: Inject,
151
- args: [USE_DEVICE_LANGUAGE]
152
- }] }, { type: undefined, decorators: [{
153
- type: Optional
154
- }, {
155
- type: Inject,
156
- args: [PERSISTENCE]
157
- }] }, { type: i2.AppCheckInstances, decorators: [{
158
- type: Optional
159
- }] }] });
160
- ɵapplyMixins(AngularFireAuth, [proxyPolyfillCompat]);
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvYXV0aC9hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFpQixZQUFZLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFlLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRzdILE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sUUFBUSxDQUFDOzs7O0FBTTdDLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBdUIsZ0NBQWdDLENBQUMsQ0FBQztBQUV2RyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxjQUFjLENBQTZCLDRCQUE0QixDQUFDLENBQUM7QUFDckcsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLElBQUksY0FBYyxD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QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE5nWm9uZSwgT3B0aW9uYWwsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBrZWVwVW5zdGFibGVVbnRpbEZpcnN0LCDJtUFuZ3VsYXJGaXJlU2NoZWR1bGVycyB9IGZyb20gJ0Bhbmd1bGFyL2ZpcmUnO1xuaW1wb3J0IHsgQXBwQ2hlY2tJbnN0YW5jZXMgfSBmcm9tICdAYW5ndWxhci9maXJlL2FwcC1jaGVjayc7XG5pbXBvcnQgeyDJtVByb21pc2VQcm94eSwgybVhcHBseU1peGlucywgybVsYXp5U0RLUHJveHkgfSBmcm9tICdAYW5ndWxhci9maXJlL2NvbXBhdCc7XG5pbXBvcnQgeyBGSVJFQkFTRV9BUFBfTkFNRSwgRklSRUJBU0VfT1BUSU9OUywgRmlyZWJhc2VBcHAsIMm1Y2FjaGVJbnN0YW5jZSwgybVmaXJlYmFzZUFwcEZhY3RvcnkgfSBmcm9tICdAYW5ndWxhci9maXJlL2NvbXBhdCc7XG5pbXBvcnQgeyBGaXJlYmFzZU9wdGlvbnMgfSBmcm9tICdmaXJlYmFzZS9hcHAnO1xuaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlL2NvbXBhdC9hcHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgZnJvbSwgbWVyZ2UsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0LCBtYXAsIG9ic2VydmVPbiwgc2hhcmVSZXBsYXksIHN1YnNjcmliZU9uLCBzd2l0Y2hNYXAsIHN3aXRjaE1hcFRvIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcHJveHlQb2x5ZmlsbENvbXBhdCB9IGZyb20gJy4vYmFzZSc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJGaXJlQXV0aCBleHRlbmRzIMm1UHJvbWlzZVByb3h5PGZpcmViYXNlLmF1dGguQXV0aD4ge31cblxudHlwZSBVc2VFbXVsYXRvckFyZ3VtZW50cyA9IFBhcmFtZXRlcnM8ZmlyZWJhc2UuYXV0aC5BdXRoWyd1c2VFbXVsYXRvciddPjtcbmV4cG9ydCBjb25zdCBVU0VfRU1VTEFUT1IgPSBuZXcgSW5qZWN0aW9uVG9rZW48VXNlRW11bGF0b3JBcmd1bWVudHM+KCdhbmd1bGFyZmlyZTIuYXV0aC51c2UtZW11bGF0b3InKTtcblxuZXhwb3J0IGNvbnN0IFNFVFRJTkdTID0gbmV3IEluamVjdGlvblRva2VuPGZpcmViYXNlLmF1dGguQXV0aFNldHRpbmdzPignYW5ndWxhcmZpcmUyLmF1dGguc2V0dGluZ3MnKTtcbmV4cG9ydCBjb25zdCBURU5BTlRfSUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignYW5ndWxhcmZpcmUyLmF1dGgudGVuYW50LWlkJyk7XG5leHBvcnQgY29uc3QgTEFOR1VBR0VfQ09ERSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdhbmd1bGFyZmlyZTIuYXV0aC5sYW5ndWdhZ2UtY29kZScpO1xuZXhwb3J0IGNvbnN0IFVTRV9ERVZJQ0VfTEFOR1VBR0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ2FuZ3VsYXJmaXJlMi5hdXRoLnVzZS1kZXZpY2UtbGFuZ3VhZ2UnKTtcbmV4cG9ydCBjb25zdCBQRVJTSVNURU5DRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdhbmd1bGFyZmlyZS5hdXRoLnBlcnNpc3RlbmNlJyk7XG5cbmV4cG9ydCBjb25zdCDJtWF1dGhGYWN0b3J5ID0gKFxuICBhcHA6IEZpcmViYXNlQXBwLCB6b25lOiBOZ1pvbmUsIHVzZUVtdWxhdG9yOiBVc2VFbXVsYXRvckFyZ3VtZW50c3xudWxsLFxuICB0ZW5hbnRJZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IHN0cmluZ3xudWxsLCB1c2VEZXZpY2VMYW5ndWFnZTogYm9vbGVhbnxudWxsLFxuICBzZXR0aW5nczogZmlyZWJhc2UuYXV0aC5BdXRoU2V0dGluZ3N8bnVsbCwgcGVyc2lzdGVuY2U6IHN0cmluZ3xudWxsLFxuKSA9PiDJtWNhY2hlSW5zdGFuY2UoYCR7YXBwLm5hbWV9LmF1dGhgLCAnQW5ndWxhckZpcmVBdXRoJywgYXBwLm5hbWUsICgpID0+IHtcbiAgY29uc3QgYXV0aCA9IHpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gYXBwLmF1dGgoKSk7XG4gIGlmICh1c2VFbXVsYXRvcikge1xuICAgIGF1dGgudXNlRW11bGF0b3IoLi4udXNlRW11bGF0b3IpO1xuICB9XG4gIGlmICh0ZW5hbnRJZCkge1xuICAgIGF1dGgudGVuYW50SWQgPSB0ZW5hbnRJZDtcbiAgfVxuICBhdXRoLmxhbmd1YWdlQ29kZSA9IGxhbmd1YWdlQ29kZTtcbiAgaWYgKHVzZURldmljZUxhbmd1YWdlKSB7XG4gICAgYXV0aC51c2VEZXZpY2VMYW5ndWFnZSgpO1xuICB9XG4gIGlmIChzZXR0aW5ncykge1xuICAgIGZvciAoY29uc3QgW2ssIHZdIG9mIE9iamVjdC5lbnRyaWVzKHNldHRpbmdzKSkge1xuICAgICAgYXV0aC5zZXR0aW5nc1trXSA9IHY7XG4gICAgfVxuICB9XG4gIGlmIChwZXJzaXN0ZW5jZSkge1xuICAgIGF1dGguc2V0UGVyc2lzdGVuY2UocGVyc2lzdGVuY2UpO1xuICB9XG4gIHJldHVybiBhdXRoO1xufSwgW3VzZUVtdWxhdG9yLCB0ZW5hbnRJZCwgbGFuZ3VhZ2VDb2RlLCB1c2VEZXZpY2VMYW5ndWFnZSwgc2V0dGluZ3MsIHBlcnNpc3RlbmNlXSk7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ2FueSdcbn0pXG5leHBvcnQgY2xhc3MgQW5ndWxhckZpcmVBdXRoIHtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSBvZiBhdXRoZW50aWNhdGlvbiBzdGF0ZTsgYXMgb2YgRmlyZWJhc2UgNC4wIHRoaXMgaXMgb25seSB0cmlnZ2VyZWQgdmlhIHNpZ24taW4vb3V0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXV0aFN0YXRlOiBPYnNlcnZhYmxlPGZpcmViYXNlLlVzZXJ8bnVsbD47XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGN1cnJlbnRseSBzaWduZWQtaW4gdXNlcidzIEpXVCB0b2tlbiB1c2VkIHRvIGlkZW50aWZ5IHRoZSB1c2VyIHRvIGEgRmlyZWJhc2Ugc2VydmljZSAob3IgbnVsbCkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaWRUb2tlbjogT2JzZXJ2YWJsZTxzdHJpbmd8bnVsbD47XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGN1cnJlbnRseSBzaWduZWQtaW4gdXNlciAob3IgbnVsbCkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdXNlcjogT2JzZXJ2YWJsZTxmaXJlYmFzZS5Vc2VyfG51bGw+O1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIG9mIHRoZSBjdXJyZW50bHkgc2lnbmVkLWluIHVzZXIncyBJZFRva2VuUmVzdWx0IG9iamVjdCB3aGljaCBjb250YWlucyB0aGUgSUQgdG9rZW4gSldUIHN0cmluZyBhbmQgb3RoZXJcbiAgICogaGVscGVyIHByb3BlcnRpZXMgZm9yIGdldHRpbmcgZGlmZmVyZW50IGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSB0b2tlbiBhcyB3ZWxsIGFzIGFsbCB0aGUgZGVjb2RlZCBwYXlsb2FkIGNsYWltc1xuICAgKiAob3IgbnVsbCkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaWRUb2tlblJlc3VsdDogT2JzZXJ2YWJsZTxmaXJlYmFzZS5hdXRoLklkVG9rZW5SZXN1bHR8bnVsbD47XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGN1cnJlbnRseSBzaWduZWQtaW4gdXNlcidzIGNyZWRlbnRpYWwsIG9yIG51bGxcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsOiBPYnNlcnZhYmxlPFJlcXVpcmVkPGZpcmViYXNlLmF1dGguVXNlckNyZWRlbnRpYWw+fG51bGw+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRklSRUJBU0VfT1BUSU9OUykgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRklSRUJBU0VfQVBQX05BTUUpIG5hbWU6IHN0cmluZ3xudWxsfHVuZGVmaW5lZCxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICB6b25lOiBOZ1pvbmUsXG4gICAgc2NoZWR1bGVyczogybVBbmd1bGFyRmlyZVNjaGVkdWxlcnMsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChVU0VfRU1VTEFUT1IpIHVzZUVtdWxhdG9yOiBhbnksIC8vIGNhbid0IHVzZSB0aGUgdHVwbGUgaGVyZVxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoU0VUVElOR1MpIHNldHRpbmdzOiBhbnksIC8vIGNhbid0IHVzZSBmaXJlYmFzZS5hdXRoLkF1dGhTZXR0aW5ncyBoZXJlXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChURU5BTlRfSUQpIHRlbmFudElkOiBzdHJpbmcgfCBudWxsLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTEFOR1VBR0VfQ09ERSkgbGFuZ3VhZ2VDb2RlOiBzdHJpbmcgfCBudWxsLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVVNFX0RFVklDRV9MQU5HVUFHRSkgdXNlRGV2aWNlTGFuZ3VhZ2U6IGJvb2xlYW4gfCBudWxsLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoUEVSU0lTVEVOQ0UpIHBlcnNpc3RlbmNlOiBzdHJpbmcgfCBudWxsLFxuICAgIEBPcHRpb25hbCgpIF9hcHBDaGVja0luc3RhbmNlczogQXBwQ2hlY2tJbnN0YW5jZXMsXG4gICkge1xuICAgIGNvbnN0IGxvZ2lucyA9IG5ldyBTdWJqZWN0PFJlcXVpcmVkPGZpcmViYXNlLmF1dGguVXNlckNyZWRlbnRpYWw+PigpO1xuXG4gICAgY29uc3QgYXV0aCA9IG9mKHVuZGVmaW5lZCkucGlwZShcbiAgICAgIG9ic2VydmVPbihzY2hlZHVsZXJzLm91dHNpZGVBbmd1bGFyKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB6b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IGltcG9ydCgnZmlyZWJhc2UvY29tcGF0L2F1dGgnKSkpLFxuICAgICAgbWFwKCgpID0+IMm1ZmlyZWJhc2VBcHBGYWN0b3J5KG9wdGlvbnMsIHpvbmUsIG5hbWUpKSxcbiAgICAgIG1hcChhcHAgPT4gybVhdXRoRmFjdG9yeShhcHAsIHpvbmUsIHVzZUVtdWxhdG9yLCB0ZW5hbnRJZCwgbGFuZ3VhZ2VDb2RlLCB1c2VEZXZpY2VMYW5ndWFnZSwgc2V0dGluZ3MsIHBlcnNpc3RlbmNlKSksXG4gICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiBmYWxzZSB9KSxcbiAgICApO1xuXG4gICAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIocGxhdGZvcm1JZCkpIHtcblxuICAgICAgdGhpcy5hdXRoU3RhdGUgPSB0aGlzLnVzZXIgPSB0aGlzLmlkVG9rZW4gPSB0aGlzLmlkVG9rZW5SZXN1bHQgPSB0aGlzLmNyZWRlbnRpYWwgPSBvZihudWxsKTtcblxuICAgIH0gZWxzZSB7XG5cbiAgICAgIC8vIEhBQ0ssIGFzIHdlJ3JlIGV4cG9ydGluZyBhdXRoLkF1dGgsIHJhdGhlciB0aGFuIGF1dGgsIGRldmVsb3BlcnMgaW1wb3J0aW5nIGZpcmViYXNlLmF1dGhcbiAgICAgIC8vICAgICAgIChlLmcsIGBpbXBvcnQgeyBhdXRoIH0gZnJvbSAnZmlyZWJhc2UvY29tcGF0L2FwcCdgKSBhcmUgZ2V0dGluZyBhbiB1bmRlZmluZWQgYXV0aCBvYmplY3QgdW5leHBlY3RlZGx5XG4gICAgICAvLyAgICAgICBhcyB3ZSdyZSBjb21wbGV0ZWx5IGxhenkuIExldCdzIGVhZ2VybHkgbG9hZCB0aGUgQXV0aCBTREsgaGVyZS5cbiAgICAgIC8vICAgICAgIFRoZXJlIGNvdWxkIHBvdGVudGlhbGx5IGJlIHJhY2UgY29uZGl0aW9ucyBzdGlsbC4uLiBidXQgdGhpcyBncmVhdGx5IGRlY3JlYXNlcyB0aGUgb2RkcyB3aGlsZVxuICAgICAgLy8gICAgICAgd2UgcmVldmFsdWF0ZSB0aGUgQVBJLlxuICAgICAgYXV0aC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgpO1xuXG4gICAgICBjb25zdCByZWRpcmVjdFJlc3VsdCA9IGF1dGgucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKGF1dGggPT4gYXV0aC5nZXRSZWRpcmVjdFJlc3VsdCgpLnRoZW4oaXQgPT4gaXQsICgpID0+IG51bGwpKSxcbiAgICAgICAga2VlcFVuc3RhYmxlVW50aWxGaXJzdCxcbiAgICAgICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogZmFsc2UgfSksXG4gICAgICApO1xuXG4gICAgICBjb25zdCBhdXRoU3RhdGVDaGFuZ2VkID0gYXV0aC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoYXV0aCA9PiBuZXcgT2JzZXJ2YWJsZTxmaXJlYmFzZS5Vc2VyfG51bGw+KHN1YiA9PlxuICAgICAgICAgICh7IHVuc3Vic2NyaWJlOiB6b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IGF1dGgub25BdXRoU3RhdGVDaGFuZ2VkKFxuICAgICAgICAgICAgbmV4dCA9PiBzdWIubmV4dChuZXh0KSxcbiAgICAgICAgICAgIGVyciA9PiBzdWIuZXJyb3IoZXJyKSxcbiAgICAgICAgICAgICgpID0+IHN1Yi5jb21wbGV0ZSgpXG4gICAgICAgICAgKSl9KVxuICAgICAgICApKSxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGlkVG9rZW5DaGFuZ2VkID0gYXV0aC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoYXV0aCA9PiBuZXcgT2JzZXJ2YWJsZTxmaXJlYmFzZS5Vc2VyfG51bGw+KHN1YiA9PlxuICAgICAgICAgICh7IHVuc3Vic2NyaWJlOiB6b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IGF1dGgub25JZFRva2VuQ2hhbmdlZChcbiAgICAgICAgICAgIG5leHQgPT4gc3ViLm5leHQobmV4dCksXG4gICAgICAgICAgICBlcnIgPT4gc3ViLmVycm9yKGVyciksXG4gICAgICAgICAgICAoKSA9PiBzdWIuY29tcGxldGUoKVxuICAgICAgICAgICkpfSlcbiAgICAgICAgKSlcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuYXV0aFN0YXRlID0gcmVkaXJlY3RSZXN1bHQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwVG8oYXV0aFN0YXRlQ2hhbmdlZCksXG4gICAgICAgIHN1YnNjcmliZU9uKHNjaGVkdWxlcnMub3V0c2lkZUFuZ3VsYXIpLFxuICAgICAgICBvYnNlcnZlT24oc2NoZWR1bGVycy5pbnNpZGVBbmd1bGFyKSxcbiAgICAgICk7XG5cbiAgICAgIHRoaXMudXNlciA9IHJlZGlyZWN0UmVzdWx0LnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcFRvKGlkVG9rZW5DaGFuZ2VkKSxcbiAgICAgICAgc3Vic2NyaWJlT24oc2NoZWR1bGVycy5vdXRzaWRlQW5ndWxhciksXG4gICAgICAgIG9ic2VydmVPbihzY2hlZHVsZXJzLmluc2lkZUFuZ3VsYXIpLFxuICAgICAgKTtcblxuICAgICAgdGhpcy5pZFRva2VuID0gdGhpcy51c2VyLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCh1c2VyID0+IHVzZXIgPyBmcm9tKHVzZXIuZ2V0SWRUb2tlbigpKSA6IG9mKG51bGwpKVxuICAgICAgKTtcblxuICAgICAgdGhpcy5pZFRva2VuUmVzdWx0ID0gdGhpcy51c2VyLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCh1c2VyID0+IHVzZXIgPyBmcm9tKHVzZXIuZ2V0SWRUb2tlblJlc3VsdCgpKSA6IG9mKG51bGwpKVxuICAgICAgKTtcblxuICAgICAgdGhpcy5jcmVkZW50aWFsID0gbWVyZ2UoXG4gICAgICAgIHJlZGlyZWN0UmVzdWx0LFxuICAgICAgICBsb2dpbnMsXG4gICAgICAgIC8vIHBpcGUgaW4gbnVsbCBhdXRoU3RhdGUgdG8gbWFrZSBjcmVkZW50aWFsIHppcGFibGUsIGp1c3QgYSB3ZWlyZCBkZXZleHAgaWZcbiAgICAgICAgLy8gYXV0aFN0YXRlIGFuZCB1c2VyIGdvIG51bGwgdG8gc3RpbGwgaGF2ZSBhIGNyZWRlbnRpYWxcbiAgICAgICAgdGhpcy5hdXRoU3RhdGUucGlwZShmaWx0ZXIoaXQgPT4gIWl0KSlcbiAgICAgICkucGlwZShcbiAgICAgICAgLy8gaGFuZGxlIHRoZSB7IHVzZXI6IHsgfSB9IHdoZW4gYSB1c2VyIGlzIGFscmVhZHkgbG9nZ2VkIGluLCByYXRoZXIgaGF2ZSBudWxsXG4gICAgICAgIC8vIFRPRE8gaGFuZGxlIHRoZSB0eXBlIGNvcmNlcnNpb24gYmV0dGVyXG4gICAgICAgIG1hcChjcmVkZW50aWFsID0+IGNyZWRlbnRpYWw/LnVzZXIgPyBjcmVkZW50aWFsIGFzIFJlcXVpcmVkPGZpcmViYXNlLmF1dGguVXNlckNyZWRlbnRpYWw+IDogbnVsbCksXG4gICAgICAgIHN1YnNjcmliZU9uKHNjaGVkdWxlcnMub3V0c2lkZUFuZ3VsYXIpLFxuICAgICAgICBvYnNlcnZlT24oc2NoZWR1bGVycy5pbnNpZGVBbmd1bGFyKSxcbiAgICAgICk7XG5cbiAgICB9XG5cbiAgICByZXR1cm4gybVsYXp5U0RLUHJveHkodGhpcywgYXV0aCwgem9uZSwgeyBzcHk6IHtcbiAgICAgIGFwcGx5OiAobmFtZSwgXywgdmFsKSA9PiB7XG4gICAgICAgIC8vIElmIHRoZXkgY2FsbCBhIHNpZ25JbiBvciBjcmVhdGVVc2VyIGZ1bmN0aW9uIGxpc3RlbiBpbnRvIHRoZSBwcm9taXNlXG4gICAgICAgIC8vIHRoaXMgd2lsbCBnaXZlIHVzIHRoZSB1c2VyIGNyZWRlbnRpYWwsIHB1c2ggb250byB0aGUgbG9naW5zIFN1YmplY3RcbiAgICAgICAgLy8gdG8gYmUgY29uc3VtZWQgaW4gLmNyZWRlbnRpYWxcbiAgICAgICAgaWYgKG5hbWUuc3RhcnRzV2l0aCgnc2lnbkluJykgfHwgbmFtZS5zdGFydHNXaXRoKCdjcmVhdGVVc2VyJykpIHtcbiAgICAgICAgICAvLyBUT0RPIGZpeCB0aGUgdHlwZXMsIHRoZSB0cm91YmxlIGlzIFVzZXJDcmVkZW50aWFsIGhhcyBldmVyeXRoaW5nIG9wdGlvbmFsXG4gICAgICAgICAgdmFsLnRoZW4oKHVzZXI6IGZpcmViYXNlLmF1dGguVXNlckNyZWRlbnRpYWwpID0+IGxvZ2lucy5uZXh0KHVzZXIgYXMgYW55KSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9fSk7XG5cbiAgfVxuXG59XG5cbsm1YXBwbHlNaXhpbnMoQW5ndWxhckZpcmVBdXRoLCBbcHJveHlQb2x5ZmlsbENvbXBhdF0pO1xuIl19
@@ -1,20 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { VERSION } from '@angular/fire';
3
- import firebase from 'firebase/compat/app';
4
- import { AngularFireAuth } from './auth';
5
- import * as i0 from "@angular/core";
6
- export class AngularFireAuthModule {
7
- constructor() {
8
- firebase.registerVersion('angularfire', VERSION.full, 'auth-compat');
9
- }
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthModule });
12
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthModule, providers: [AngularFireAuth] });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthModule, decorators: [{
15
- type: NgModule,
16
- args: [{
17
- providers: [AngularFireAuth]
18
- }]
19
- }], ctorParameters: () => [] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcGF0L2F1dGgvYXV0aC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sUUFBUSxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxRQUFRLENBQUM7O0FBS3pDLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEM7UUFDRSxRQUFRLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7dUdBSFUscUJBQXFCO3dHQUFyQixxQkFBcUI7d0dBQXJCLHFCQUFxQixhQUZyQixDQUFFLGVBQWUsQ0FBRTs7MkZBRW5CLHFCQUFxQjtrQkFIakMsUUFBUTttQkFBQztvQkFDUixTQUFTLEVBQUUsQ0FBRSxlQUFlLENBQUU7aUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tICdAYW5ndWxhci9maXJlJztcbmltcG9ydCBmaXJlYmFzZSBmcm9tICdmaXJlYmFzZS9jb21wYXQvYXBwJztcbmltcG9ydCB7IEFuZ3VsYXJGaXJlQXV0aCB9IGZyb20gJy4vYXV0aCc7XG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogWyBBbmd1bGFyRmlyZUF1dGggXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRmlyZUF1dGhNb2R1bGUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBmaXJlYmFzZS5yZWdpc3RlclZlcnNpb24oJ2FuZ3VsYXJmaXJlJywgVkVSU0lPTi5mdWxsLCAnYXV0aC1jb21wYXQnKTtcbiAgfVxufVxuIl19
@@ -1,39 +0,0 @@
1
- // DO NOT MODIFY, this file is autogenerated by tools/build.ts
2
- // Export a null object with the same keys as firebase/compat/auth, so Proxy can work with proxy-polyfill in Internet Explorer
3
- export const proxyPolyfillCompat = {
4
- name: null,
5
- config: null,
6
- emulatorConfig: null,
7
- app: null,
8
- applyActionCode: null,
9
- checkActionCode: null,
10
- confirmPasswordReset: null,
11
- createUserWithEmailAndPassword: null,
12
- currentUser: null,
13
- fetchSignInMethodsForEmail: null,
14
- isSignInWithEmailLink: null,
15
- getRedirectResult: null,
16
- languageCode: null,
17
- settings: null,
18
- onAuthStateChanged: null,
19
- onIdTokenChanged: null,
20
- sendSignInLinkToEmail: null,
21
- sendPasswordResetEmail: null,
22
- setPersistence: null,
23
- signInAndRetrieveDataWithCredential: null,
24
- signInAnonymously: null,
25
- signInWithCredential: null,
26
- signInWithCustomToken: null,
27
- signInWithEmailAndPassword: null,
28
- signInWithPhoneNumber: null,
29
- signInWithEmailLink: null,
30
- signInWithPopup: null,
31
- signInWithRedirect: null,
32
- signOut: null,
33
- tenantId: null,
34
- updateCurrentUser: null,
35
- useDeviceLanguage: null,
36
- useEmulator: null,
37
- verifyPasswordResetCode: null,
38
- };
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvYXV0aC9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhEQUE4RDtBQUM5RCw4SEFBOEg7QUFDOUgsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDakMsSUFBSSxFQUFFLElBQUk7SUFDVixNQUFNLEVBQUUsSUFBSTtJQUNaLGNBQWMsRUFBRSxJQUFJO0lBQ3BCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsZUFBZSxFQUFFLElBQUk7SUFDckIsZUFBZSxFQUFFLElBQUk7SUFDckIsb0JBQW9CLEVBQUUsSUFBSTtJQUMxQiw4QkFBOEIsRUFBRSxJQUFJO0lBQ3BDLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLDBCQUEwQixFQUFFLElBQUk7SUFDaEMscUJBQXFCLEVBQUUsSUFBSTtJQUMzQixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLFFBQVEsRUFBRSxJQUFJO0lBQ2Qsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCLHFCQUFxQixFQUFFLElBQUk7SUFDM0Isc0JBQXNCLEVBQUUsSUFBSTtJQUM1QixjQUFjLEVBQUUsSUFBSTtJQUNwQixtQ0FBbUMsRUFBRSxJQUFJO0lBQ3pDLGlCQUFpQixFQUFFLElBQUk7SUFDdkIsb0JBQW9CLEVBQUUsSUFBSTtJQUMxQixxQkFBcUIsRUFBRSxJQUFJO0lBQzNCLDBCQUEwQixFQUFFLElBQUk7SUFDaEMscUJBQXFCLEVBQUUsSUFBSTtJQUMzQixtQkFBbUIsRUFBRSxJQUFJO0lBQ3pCLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLGtCQUFrQixFQUFFLElBQUk7SUFDeEIsT0FBTyxFQUFFLElBQUk7SUFDYixRQUFRLEVBQUUsSUFBSTtJQUNkLGlCQUFpQixFQUFFLElBQUk7SUFDdkIsaUJBQWlCLEVBQUUsSUFBSTtJQUN2QixXQUFXLEVBQUUsSUFBSTtJQUNqQix1QkFBdUIsRUFBRSxJQUFJO0NBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBETyBOT1QgTU9ESUZZLCB0aGlzIGZpbGUgaXMgYXV0b2dlbmVyYXRlZCBieSB0b29scy9idWlsZC50c1xuLy8gRXhwb3J0IGEgbnVsbCBvYmplY3Qgd2l0aCB0aGUgc2FtZSBrZXlzIGFzIGZpcmViYXNlL2NvbXBhdC9hdXRoLCBzbyBQcm94eSBjYW4gd29yayB3aXRoIHByb3h5LXBvbHlmaWxsIGluIEludGVybmV0IEV4cGxvcmVyXG5leHBvcnQgY29uc3QgcHJveHlQb2x5ZmlsbENvbXBhdCA9IHtcbiAgbmFtZTogbnVsbCxcbiAgY29uZmlnOiBudWxsLFxuICBlbXVsYXRvckNvbmZpZzogbnVsbCxcbiAgYXBwOiBudWxsLFxuICBhcHBseUFjdGlvbkNvZGU6IG51bGwsXG4gIGNoZWNrQWN0aW9uQ29kZTogbnVsbCxcbiAgY29uZmlybVBhc3N3b3JkUmVzZXQ6IG51bGwsXG4gIGNyZWF0ZVVzZXJXaXRoRW1haWxBbmRQYXNzd29yZDogbnVsbCxcbiAgY3VycmVudFVzZXI6IG51bGwsXG4gIGZldGNoU2lnbkluTWV0aG9kc0ZvckVtYWlsOiBudWxsLFxuICBpc1NpZ25JbldpdGhFbWFpbExpbms6IG51bGwsXG4gIGdldFJlZGlyZWN0UmVzdWx0OiBudWxsLFxuICBsYW5ndWFnZUNvZGU6IG51bGwsXG4gIHNldHRpbmdzOiBudWxsLFxuICBvbkF1dGhTdGF0ZUNoYW5nZWQ6IG51bGwsXG4gIG9uSWRUb2tlbkNoYW5nZWQ6IG51bGwsXG4gIHNlbmRTaWduSW5MaW5rVG9FbWFpbDogbnVsbCxcbiAgc2VuZFBhc3N3b3JkUmVzZXRFbWFpbDogbnVsbCxcbiAgc2V0UGVyc2lzdGVuY2U6IG51bGwsXG4gIHNpZ25JbkFuZFJldHJpZXZlRGF0YVdpdGhDcmVkZW50aWFsOiBudWxsLFxuICBzaWduSW5Bbm9ueW1vdXNseTogbnVsbCxcbiAgc2lnbkluV2l0aENyZWRlbnRpYWw6IG51bGwsXG4gIHNpZ25JbldpdGhDdXN0b21Ub2tlbjogbnVsbCxcbiAgc2lnbkluV2l0aEVtYWlsQW5kUGFzc3dvcmQ6IG51bGwsXG4gIHNpZ25JbldpdGhQaG9uZU51bWJlcjogbnVsbCxcbiAgc2lnbkluV2l0aEVtYWlsTGluazogbnVsbCxcbiAgc2lnbkluV2l0aFBvcHVwOiBudWxsLFxuICBzaWduSW5XaXRoUmVkaXJlY3Q6IG51bGwsXG4gIHNpZ25PdXQ6IG51bGwsXG4gIHRlbmFudElkOiBudWxsLFxuICB1cGRhdGVDdXJyZW50VXNlcjogbnVsbCxcbiAgdXNlRGV2aWNlTGFuZ3VhZ2U6IG51bGwsXG4gIHVzZUVtdWxhdG9yOiBudWxsLFxuICB2ZXJpZnlQYXNzd29yZFJlc2V0Q29kZTogbnVsbCxcbn07XG4iXX0=
@@ -1,4 +0,0 @@
1
- import 'firebase/compat/auth'; // removed in build process when not UMD
2
- export * from './auth';
3
- export * from './auth.module';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvYXV0aC9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sc0JBQXNCLENBQUMsQ0FBQyx3Q0FBd0M7QUFFdkUsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCAnZmlyZWJhc2UvY29tcGF0L2F1dGgnOyAvLyByZW1vdmVkIGluIGJ1aWxkIHByb2Nlc3Mgd2hlbiBub3QgVU1EXG5cbmV4cG9ydCAqIGZyb20gJy4vYXV0aCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgubW9kdWxlJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1maXJlLWNvbXBhdC1hdXRoLWd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBhdC9hdXRoLWd1YXJkL2FuZ3VsYXItZmlyZS1jb21wYXQtYXV0aC1ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
@@ -1,53 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { AngularFireAuth } from '@angular/fire/compat/auth';
3
- import { Router } from '@angular/router';
4
- import { of, pipe } from 'rxjs';
5
- import { map, switchMap, take } from 'rxjs/operators';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/router";
8
- import * as i2 from "@angular/fire/compat/auth";
9
- export const loggedIn = map(user => !!user);
10
- export class AngularFireAuthGuard {
11
- router;
12
- auth;
13
- constructor(router, auth) {
14
- this.router = router;
15
- this.auth = auth;
16
- }
17
- canActivate = (next, state) => {
18
- const authPipeFactory = next.data.authGuardPipe || (() => loggedIn);
19
- return this.auth.user.pipe(take(1), authPipeFactory(next, state), map(can => {
20
- if (typeof can === 'boolean') {
21
- return can;
22
- }
23
- else if (Array.isArray(can)) {
24
- return this.router.createUrlTree(can);
25
- }
26
- else {
27
- // TODO(EdricChan03): Add tests
28
- return this.router.parseUrl(can);
29
- }
30
- }));
31
- };
32
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuard, deps: [{ token: i1.Router }, { token: i2.AngularFireAuth }], target: i0.ɵɵFactoryTarget.Injectable });
33
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuard, providedIn: 'any' });
34
- }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuard, decorators: [{
36
- type: Injectable,
37
- args: [{
38
- providedIn: 'any'
39
- }]
40
- }], ctorParameters: () => [{ type: i1.Router }, { type: i2.AngularFireAuth }] });
41
- export const canActivate = (pipe) => ({
42
- canActivate: [AngularFireAuthGuard], data: { authGuardPipe: pipe }
43
- });
44
- export const isNotAnonymous = map(user => !!user && !user.isAnonymous);
45
- export const idTokenResult = switchMap((user) => user ? user.getIdTokenResult() : of(null));
46
- export const emailVerified = map(user => !!user && user.emailVerified);
47
- export const customClaims = pipe(idTokenResult, map(idTokenResult => idTokenResult ? idTokenResult.claims : []));
48
- export const hasCustomClaim =
49
- // eslint-disable-next-line no-prototype-builtins
50
- (claim) => pipe(customClaims, map(claims => claims.hasOwnProperty(claim)));
51
- export const redirectUnauthorizedTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn || redirect));
52
- export const redirectLoggedInTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn && redirect || true));
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvYXV0aC1ndWFyZC9hdXRoLWd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBdUMsTUFBTSxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBRW5HLE9BQU8sRUFBNkIsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUt0RCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQWEsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBS3RELE1BQU0sT0FBTyxvQkFBb0I7SUFFWDtJQUF3QjtJQUE1QyxZQUFvQixNQUFjLEVBQVUsSUFBcUI7UUFBN0MsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFNBQUksR0FBSixJQUFJLENBQWlCO0lBQUcsQ0FBQztJQUVyRSxXQUFXLEdBQUcsQ0FBQyxJQUE0QixFQUFFLEtBQTBCLEVBQUUsRUFBRTtRQUN6RSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWtDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDeEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQzVCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNSLElBQUksT0FBTyxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQzdCLE9BQU8sR0FBRyxDQUFDO1lBQ2IsQ0FBQztpQkFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDOUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sK0JBQStCO2dCQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQyxDQUFBO3VHQXBCVSxvQkFBb0I7MkdBQXBCLG9CQUFvQixjQUZuQixLQUFLOzsyRkFFTixvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCOztBQXlCRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELFdBQVcsRUFBRSxDQUFFLG9CQUFvQixDQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRTtDQUNyRSxDQUFDLENBQUM7QUFHSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQWEsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNqRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLENBQUMsSUFBd0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDaEgsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFhLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0FBQ2pGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNqSCxNQUFNLENBQUMsTUFBTSxjQUFjO0FBQ3pCLGlEQUFpRDtBQUNqRCxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBRSxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM5RSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FDakMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFDdEUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQzdCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuZ3VsYXJGaXJlQXV0aCB9IGZyb20gJ0Bhbmd1bGFyL2ZpcmUvY29tcGF0L2F1dGgnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGUsIFJvdXRlciwgUm91dGVyU3RhdGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgZmlyZWJhc2UgZnJvbSAnZmlyZWJhc2UvY29tcGF0L2FwcCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBVbmFyeUZ1bmN0aW9uLCBvZiwgcGlwZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCB0eXBlIEF1dGhQaXBlR2VuZXJhdG9yID0gKG5leHQ6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KSA9PiBBdXRoUGlwZTtcbmV4cG9ydCB0eXBlIEF1dGhQaXBlID0gVW5hcnlGdW5jdGlvbjxPYnNlcnZhYmxlPGZpcmViYXNlLlVzZXJ8bnVsbD4sIE9ic2VydmFibGU8Ym9vbGVhbnxzdHJpbmd8YW55W10+PjtcblxuZXhwb3J0IGNvbnN0IGxvZ2dlZEluOiBBdXRoUGlwZSA9IG1hcCh1c2VyID0+ICEhdXNlcik7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ2FueSdcbn0pXG5leHBvcnQgY2xhc3MgQW5ndWxhckZpcmVBdXRoR3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBhdXRoOiBBbmd1bGFyRmlyZUF1dGgpIHt9XG5cbiAgY2FuQWN0aXZhdGUgPSAobmV4dDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpID0+IHtcbiAgICBjb25zdCBhdXRoUGlwZUZhY3RvcnkgPSBuZXh0LmRhdGEuYXV0aEd1YXJkUGlwZSBhcyBBdXRoUGlwZUdlbmVyYXRvciB8fCAoKCkgPT4gbG9nZ2VkSW4pO1xuICAgIHJldHVybiB0aGlzLmF1dGgudXNlci5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIGF1dGhQaXBlRmFjdG9yeShuZXh0LCBzdGF0ZSksXG4gICAgICBtYXAoY2FuID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjYW4gPT09ICdib29sZWFuJykge1xuICAgICAgICAgIHJldHVybiBjYW47XG4gICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShjYW4pKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoY2FuKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBUT0RPKEVkcmljQ2hhbjAzKTogQWRkIHRlc3RzXG4gICAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLnBhcnNlVXJsKGNhbik7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG59XG5cbmV4cG9ydCBjb25zdCBjYW5BY3RpdmF0ZSA9IChwaXBlOiBBdXRoUGlwZUdlbmVyYXRvcikgPT4gKHtcbiAgY2FuQWN0aXZhdGU6IFsgQW5ndWxhckZpcmVBdXRoR3VhcmQgXSwgZGF0YTogeyBhdXRoR3VhcmRQaXBlOiBwaXBlIH1cbn0pO1xuXG5cbmV4cG9ydCBjb25zdCBpc05vdEFub255bW91czogQXV0aFBpcGUgPSBtYXAodXNlciA9PiAhIXVzZXIgJiYgIXVzZXIuaXNBbm9ueW1vdXMpO1xuZXhwb3J0IGNvbnN0IGlkVG9rZW5SZXN1bHQgPSBzd2l0Y2hNYXAoKHVzZXI6IGZpcmViYXNlLlVzZXJ8bnVsbCkgPT4gdXNlciA/IHVzZXIuZ2V0SWRUb2tlblJlc3VsdCgpIDogb2YobnVsbCkpO1xuZXhwb3J0IGNvbnN0IGVtYWlsVmVyaWZpZWQ6IEF1dGhQaXBlID0gbWFwKHVzZXIgPT4gISF1c2VyICYmIHVzZXIuZW1haWxWZXJpZmllZCk7XG5leHBvcnQgY29uc3QgY3VzdG9tQ2xhaW1zID0gcGlwZShpZFRva2VuUmVzdWx0LCBtYXAoaWRUb2tlblJlc3VsdCA9PiBpZFRva2VuUmVzdWx0ID8gaWRUb2tlblJlc3VsdC5jbGFpbXMgOiBbXSkpO1xuZXhwb3J0IGNvbnN0IGhhc0N1c3RvbUNsYWltOiAoY2xhaW06IHN0cmluZykgPT4gQXV0aFBpcGUgPVxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcHJvdG90eXBlLWJ1aWx0aW5zXG4gIChjbGFpbSkgPT4gcGlwZShjdXN0b21DbGFpbXMsIG1hcChjbGFpbXMgPT4gIGNsYWltcy5oYXNPd25Qcm9wZXJ0eShjbGFpbSkpKTtcbmV4cG9ydCBjb25zdCByZWRpcmVjdFVuYXV0aG9yaXplZFRvOiAocmVkaXJlY3Q6IHN0cmluZ3xhbnlbXSkgPT4gQXV0aFBpcGUgPVxuICAocmVkaXJlY3QpID0+IHBpcGUobG9nZ2VkSW4sIG1hcChsb2dnZWRJbiA9PiBsb2dnZWRJbiB8fCByZWRpcmVjdCkpO1xuZXhwb3J0IGNvbnN0IHJlZGlyZWN0TG9nZ2VkSW5UbzogKHJlZGlyZWN0OiBzdHJpbmd8YW55W10pID0+IEF1dGhQaXBlID1cbiAgKHJlZGlyZWN0KSA9PiBwaXBlKGxvZ2dlZEluLCBtYXAobG9nZ2VkSW4gPT4gbG9nZ2VkSW4gJiYgcmVkaXJlY3QgfHwgdHJ1ZSkpO1xuIl19
@@ -1,20 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { VERSION } from '@angular/fire';
3
- import firebase from 'firebase/compat/app';
4
- import { AngularFireAuthGuard } from './auth-guard';
5
- import * as i0 from "@angular/core";
6
- export class AngularFireAuthGuardModule {
7
- constructor() {
8
- firebase.registerVersion('angularfire', VERSION.full, 'auth-guard-compat');
9
- }
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuardModule });
12
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuardModule, providers: [AngularFireAuthGuard] });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireAuthGuardModule, decorators: [{
15
- type: NgModule,
16
- args: [{
17
- providers: [AngularFireAuthGuard]
18
- }]
19
- }], ctorParameters: () => [] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcGF0L2F1dGgtZ3VhcmQvYXV0aC1ndWFyZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sUUFBUSxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQztRQUNFLFFBQVEsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUM3RSxDQUFDO3VHQUhVLDBCQUEwQjt3R0FBMUIsMEJBQTBCO3dHQUExQiwwQkFBMEIsYUFGMUIsQ0FBRSxvQkFBb0IsQ0FBRTs7MkZBRXhCLDBCQUEwQjtrQkFIdEMsUUFBUTttQkFBQztvQkFDUixTQUFTLEVBQUUsQ0FBRSxvQkFBb0IsQ0FBRTtpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gJ0Bhbmd1bGFyL2ZpcmUnO1xuaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlL2NvbXBhdC9hcHAnO1xuaW1wb3J0IHsgQW5ndWxhckZpcmVBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFsgQW5ndWxhckZpcmVBdXRoR3VhcmQgXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRmlyZUF1dGhHdWFyZE1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGZpcmViYXNlLnJlZ2lzdGVyVmVyc2lvbignYW5ndWxhcmZpcmUnLCBWRVJTSU9OLmZ1bGwsICdhdXRoLWd1YXJkLWNvbXBhdCcpO1xuICB9XG59XG4iXX0=
@@ -1,3 +0,0 @@
1
- export * from './auth-guard';
2
- export * from './auth-guard.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvYXV0aC1ndWFyZC9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLWd1YXJkLm1vZHVsZSc7XG4iXX0=
@@ -1,33 +0,0 @@
1
- import { isDevMode } from '@angular/core';
2
- export function ɵcacheInstance(cacheKey, moduleName, appName, fn, deps) {
3
- const [, instance, cachedDeps] = globalThis.ɵAngularfireInstanceCache.find((it) => it[0] === cacheKey) || [];
4
- if (instance) {
5
- if (!matchDep(deps, cachedDeps)) {
6
- log('error', `${moduleName} was already initialized on the ${appName} Firebase App with different settings.${IS_HMR ? ' You may need to reload as Firebase is not HMR aware.' : ''}`);
7
- log('warn', { is: deps, was: cachedDeps });
8
- }
9
- return instance;
10
- }
11
- else {
12
- const newInstance = fn();
13
- globalThis.ɵAngularfireInstanceCache.push([cacheKey, newInstance, deps]);
14
- return newInstance;
15
- }
16
- }
17
- function matchDep(a, b) {
18
- try {
19
- return a.toString() === b.toString();
20
- }
21
- catch (_) {
22
- return a === b;
23
- }
24
- }
25
- const IS_HMR = typeof module !== 'undefined' && !!module.hot;
26
- const log = (level, ...args) => {
27
- if (isDevMode() && typeof console !== 'undefined') {
28
- // eslint-disable-next-line no-console
29
- console[level](...args);
30
- }
31
- };
32
- globalThis.ɵAngularfireInstanceCache ||= [];
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcGF0L2NhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsTUFBTSxVQUFVLGNBQWMsQ0FBSSxRQUFhLEVBQUUsVUFBa0IsRUFBRSxPQUFlLEVBQUUsRUFBVyxFQUFFLElBQVM7SUFDMUcsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxHQUFHLFVBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEgsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDaEMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLFVBQVUsbUNBQW1DLE9BQU8seUNBQXlDLE1BQU0sQ0FBQyxDQUFDLENBQUMsdURBQXVELENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdEwsR0FBRyxDQUFDLE1BQU0sRUFBRSxFQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxXQUFXLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDekIsVUFBVSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN6RSxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLENBQU0sRUFBRSxDQUFNO0lBQzlCLElBQUksQ0FBQztRQUNILE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sTUFBTSxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUUsTUFBYyxDQUFDLEdBQUcsQ0FBQztBQUV0RSxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQWtDLEVBQUUsR0FBRyxJQUFTLEVBQUUsRUFBRTtJQUMvRCxJQUFJLFNBQVMsRUFBRSxJQUFJLE9BQU8sT0FBTyxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQ2xELHNDQUFzQztRQUN0QyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsVUFBVSxDQUFDLHlCQUF5QixLQUFLLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gybVjYWNoZUluc3RhbmNlPFQ+KGNhY2hlS2V5OiBhbnksIG1vZHVsZU5hbWU6IHN0cmluZywgYXBwTmFtZTogc3RyaW5nLCBmbjogKCkgPT4gVCwgZGVwczogYW55KTogVCB7XG4gIGNvbnN0IFssIGluc3RhbmNlLCBjYWNoZWREZXBzXSA9IGdsb2JhbFRoaXMuybVBbmd1bGFyZmlyZUluc3RhbmNlQ2FjaGUuZmluZCgoaXQ6IGFueSkgPT4gaXRbMF0gPT09IGNhY2hlS2V5KSB8fCBbXTtcbiAgaWYgKGluc3RhbmNlKSB7XG4gICAgaWYgKCFtYXRjaERlcChkZXBzLCBjYWNoZWREZXBzKSkge1xuICAgICAgbG9nKCdlcnJvcicsIGAke21vZHVsZU5hbWV9IHdhcyBhbHJlYWR5IGluaXRpYWxpemVkIG9uIHRoZSAke2FwcE5hbWV9IEZpcmViYXNlIEFwcCB3aXRoIGRpZmZlcmVudCBzZXR0aW5ncy4ke0lTX0hNUiA/ICcgWW91IG1heSBuZWVkIHRvIHJlbG9hZCBhcyBGaXJlYmFzZSBpcyBub3QgSE1SIGF3YXJlLicgOiAnJ31gKTtcbiAgICAgIGxvZygnd2FybicsIHtpczogZGVwcywgd2FzOiBjYWNoZWREZXBzfSk7XG4gICAgfVxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBuZXdJbnN0YW5jZSA9IGZuKCk7XG4gICAgZ2xvYmFsVGhpcy7JtUFuZ3VsYXJmaXJlSW5zdGFuY2VDYWNoZS5wdXNoKFtjYWNoZUtleSwgbmV3SW5zdGFuY2UsIGRlcHNdKTtcbiAgICByZXR1cm4gbmV3SW5zdGFuY2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gbWF0Y2hEZXAoYTogYW55LCBiOiBhbnkpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYS50b1N0cmluZygpID09PSBiLnRvU3RyaW5nKCk7XG4gIH0gY2F0Y2ggKF8pIHtcbiAgICByZXR1cm4gYSA9PT0gYjtcbiAgfVxufVxuXG5jb25zdCBJU19ITVIgPSB0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiAhIShtb2R1bGUgYXMgYW55KS5ob3Q7XG5cbmNvbnN0IGxvZyA9IChsZXZlbDogJ2xvZyd8J2Vycm9yJ3wnaW5mbyd8J3dhcm4nLCAuLi5hcmdzOiBhbnkpID0+IHtcbiAgaWYgKGlzRGV2TW9kZSgpICYmIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgY29uc29sZVtsZXZlbF0oLi4uYXJncyk7XG4gIH1cbn07XG5cbmdsb2JhbFRoaXMuybVBbmd1bGFyZmlyZUluc3RhbmNlQ2FjaGUgfHw9IFtdO1xuIl19
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1maXJlLWNvbXBhdC1kYXRhYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvZGF0YWJhc2UvYW5ndWxhci1maXJlLWNvbXBhdC1kYXRhYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
@@ -1,119 +0,0 @@
1
- import { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';
2
- import { ɵAngularFireSchedulers } from '@angular/fire';
3
- import { AppCheckInstances } from '@angular/fire/app-check';
4
- import { FIREBASE_APP_NAME, FIREBASE_OPTIONS, ɵcacheInstance, ɵfirebaseAppFactory } from '@angular/fire/compat';
5
- import { SETTINGS as AUTH_SETTINGS, AngularFireAuth, LANGUAGE_CODE, PERSISTENCE, TENANT_ID, USE_EMULATOR as USE_AUTH_EMULATOR, USE_DEVICE_LANGUAGE, ɵauthFactory, } from '@angular/fire/compat/auth';
6
- import { createListReference } from './list/create-reference';
7
- import { createObjectReference } from './object/create-reference';
8
- import { getRef } from './utils';
9
- import 'firebase/compat/auth';
10
- import 'firebase/compat/database';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@angular/fire";
13
- import * as i2 from "@angular/fire/compat/auth";
14
- import * as i3 from "@angular/fire/app-check";
15
- export const URL = new InjectionToken('angularfire2.realtimeDatabaseURL');
16
- export const USE_EMULATOR = new InjectionToken('angularfire2.database.use-emulator');
17
- export class AngularFireDatabase {
18
- schedulers;
19
- database;
20
- constructor(options, name, databaseURL,
21
- // eslint-disable-next-line @typescript-eslint/ban-types
22
- platformId, zone, schedulers, _useEmulator, // tuple isn't working here
23
- auth, useAuthEmulator, authSettings, // can't use firebase.auth.AuthSettings here
24
- tenantId, languageCode, useDeviceLanguage, persistence, _appCheckInstances) {
25
- this.schedulers = schedulers;
26
- const useEmulator = _useEmulator;
27
- const app = ɵfirebaseAppFactory(options, zone, name);
28
- if (auth) {
29
- ɵauthFactory(app, zone, useAuthEmulator, tenantId, languageCode, useDeviceLanguage, authSettings, persistence);
30
- }
31
- this.database = ɵcacheInstance(`${app.name}.database.${databaseURL}`, 'AngularFireDatabase', app.name, () => {
32
- const database = zone.runOutsideAngular(() => app.database(databaseURL || undefined));
33
- if (useEmulator) {
34
- database.useEmulator(...useEmulator);
35
- }
36
- return database;
37
- }, [useEmulator]);
38
- }
39
- list(pathOrRef, queryFn) {
40
- const ref = this.schedulers.ngZone.runOutsideAngular(() => getRef(this.database, pathOrRef));
41
- let query = ref;
42
- if (queryFn) {
43
- query = queryFn(ref);
44
- }
45
- return createListReference(query, this);
46
- }
47
- object(pathOrRef) {
48
- const ref = this.schedulers.ngZone.runOutsideAngular(() => getRef(this.database, pathOrRef));
49
- return createObjectReference(ref, this);
50
- }
51
- createPushId() {
52
- const ref = this.schedulers.ngZone.runOutsideAngular(() => this.database.ref());
53
- return ref.push().key;
54
- }
55
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabase, deps: [{ token: FIREBASE_OPTIONS }, { token: FIREBASE_APP_NAME, optional: true }, { token: URL, optional: true }, { token: PLATFORM_ID }, { token: i0.NgZone }, { token: i1.ɵAngularFireSchedulers }, { token: USE_EMULATOR, optional: true }, { token: i2.AngularFireAuth, optional: true }, { token: USE_AUTH_EMULATOR, optional: true }, { token: AUTH_SETTINGS, optional: true }, { token: TENANT_ID, optional: true }, { token: LANGUAGE_CODE, optional: true }, { token: USE_DEVICE_LANGUAGE, optional: true }, { token: PERSISTENCE, optional: true }, { token: i3.AppCheckInstances, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
56
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabase, providedIn: 'any' });
57
- }
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabase, decorators: [{
59
- type: Injectable,
60
- args: [{
61
- providedIn: 'any'
62
- }]
63
- }], ctorParameters: () => [{ type: undefined, decorators: [{
64
- type: Inject,
65
- args: [FIREBASE_OPTIONS]
66
- }] }, { type: undefined, decorators: [{
67
- type: Optional
68
- }, {
69
- type: Inject,
70
- args: [FIREBASE_APP_NAME]
71
- }] }, { type: undefined, decorators: [{
72
- type: Optional
73
- }, {
74
- type: Inject,
75
- args: [URL]
76
- }] }, { type: Object, decorators: [{
77
- type: Inject,
78
- args: [PLATFORM_ID]
79
- }] }, { type: i0.NgZone }, { type: i1.ɵAngularFireSchedulers }, { type: undefined, decorators: [{
80
- type: Optional
81
- }, {
82
- type: Inject,
83
- args: [USE_EMULATOR]
84
- }] }, { type: i2.AngularFireAuth, decorators: [{
85
- type: Optional
86
- }] }, { type: undefined, decorators: [{
87
- type: Optional
88
- }, {
89
- type: Inject,
90
- args: [USE_AUTH_EMULATOR]
91
- }] }, { type: undefined, decorators: [{
92
- type: Optional
93
- }, {
94
- type: Inject,
95
- args: [AUTH_SETTINGS]
96
- }] }, { type: undefined, decorators: [{
97
- type: Optional
98
- }, {
99
- type: Inject,
100
- args: [TENANT_ID]
101
- }] }, { type: undefined, decorators: [{
102
- type: Optional
103
- }, {
104
- type: Inject,
105
- args: [LANGUAGE_CODE]
106
- }] }, { type: undefined, decorators: [{
107
- type: Optional
108
- }, {
109
- type: Inject,
110
- args: [USE_DEVICE_LANGUAGE]
111
- }] }, { type: undefined, decorators: [{
112
- type: Optional
113
- }, {
114
- type: Inject,
115
- args: [PERSISTENCE]
116
- }] }, { type: i3.AppCheckInstances, decorators: [{
117
- type: Optional
118
- }] }] });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcGF0L2RhdGFiYXNlL2RhdGFiYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hILE9BQU8sRUFDTCxRQUFRLElBQUksYUFBYSxFQUN6QixlQUFlLEVBQ2YsYUFBYSxFQUNiLFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxJQUFJLGlCQUFpQixFQUNqQyxtQkFBbUIsRUFDbkIsWUFBWSxHQUNiLE1BQU0sMkJBQTJCLENBQUM7QUFJbkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNqQyxPQUFPLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sMEJBQTBCLENBQUM7Ozs7O0FBRWxDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxJQUFJLGNBQWMsQ0FBUyxrQ0FBa0MsQ0FBQyxDQUFDO0FBR2xGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBdUIsb0NBQW9DLENBQUMsQ0FBQztBQUszRyxNQUFNLE9BQU8sbUJBQW1CO0lBVXJCO0lBVE8sUUFBUSxDQUE2QjtJQUVyRCxZQUM0QixPQUF3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Qjs7MEJBS0ksTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUN2QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3BDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsR0FBRzs7MEJBRXRCLE1BQU07MkJBQUMsV0FBVzs7MEJBR2xCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsWUFBWTs7MEJBQy9CLFFBQVE7OzBCQUNSLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDcEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDaEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxTQUFTOzswQkFDNUIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDaEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7OzBCQUN0QyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLFdBQVc7OzBCQUM5QixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgTmdab25lLCBPcHRpb25hbCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IMm1QW5ndWxhckZpcmVTY2hlZHVsZXJzIH0gZnJvbSAnQGFuZ3VsYXIvZmlyZSc7XG5pbXBvcnQgeyBBcHBDaGVja0luc3RhbmNlcyB9IGZyb20gJ0Bhbmd1bGFyL2ZpcmUvYXBwLWNoZWNrJztcbmltcG9ydCB7IEZJUkVCQVNFX0FQUF9OQU1FLCBGSVJFQkFTRV9PUFRJT05TLCDJtWNhY2hlSW5zdGFuY2UsIMm1ZmlyZWJhc2VBcHBGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvZmlyZS9jb21wYXQnO1xuaW1wb3J0IHtcbiAgU0VUVElOR1MgYXMgQVVUSF9TRVRUSU5HUyxcbiAgQW5ndWxhckZpcmVBdXRoLFxuICBMQU5HVUFHRV9DT0RFLFxuICBQRVJTSVNURU5DRSxcbiAgVEVOQU5UX0lELFxuICBVU0VfRU1VTEFUT1IgYXMgVVNFX0FVVEhfRU1VTEFUT1IsXG4gIFVTRV9ERVZJQ0VfTEFOR1VBR0UsXG4gIMm1YXV0aEZhY3RvcnksXG59IGZyb20gJ0Bhbmd1bGFyL2ZpcmUvY29tcGF0L2F1dGgnO1xuaW1wb3J0IHsgRmlyZWJhc2VPcHRpb25zIH0gZnJvbSAnZmlyZWJhc2UvYXBwJztcbmltcG9ydCBmaXJlYmFzZSBmcm9tICdmaXJlYmFzZS9jb21wYXQvYXBwJztcbmltcG9ydCB7IEFuZ3VsYXJGaXJlTGlzdCwgQW5ndWxhckZpcmVPYmplY3QsIERhdGFiYXNlUXVlcnksIFBhdGhSZWZlcmVuY2UsIFF1ZXJ5Rm4gfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlTGlzdFJlZmVyZW5jZSB9IGZyb20gJy4vbGlzdC9jcmVhdGUtcmVmZXJlbmNlJztcbmltcG9ydCB7IGNyZWF0ZU9iamVjdFJlZmVyZW5jZSB9IGZyb20gJy4vb2JqZWN0L2NyZWF0ZS1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgZ2V0UmVmIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgJ2ZpcmViYXNlL2NvbXBhdC9hdXRoJztcbmltcG9ydCAnZmlyZWJhc2UvY29tcGF0L2RhdGFiYXNlJztcblxuZXhwb3J0IGNvbnN0IFVSTCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdhbmd1bGFyZmlyZTIucmVhbHRpbWVEYXRhYmFzZVVSTCcpO1xuXG50eXBlIFVzZUVtdWxhdG9yQXJndW1lbnRzID0gUGFyYW1ldGVyczxmaXJlYmFzZS5kYXRhYmFzZS5EYXRhYmFzZVsndXNlRW11bGF0b3InXT47XG5leHBvcnQgY29uc3QgVVNFX0VNVUxBVE9SID0gbmV3IEluamVjdGlvblRva2VuPFVzZUVtdWxhdG9yQXJndW1lbnRzPignYW5ndWxhcmZpcmUyLmRhdGFiYXNlLnVzZS1lbXVsYXRvcicpO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdhbnknXG59KVxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJGaXJlRGF0YWJhc2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgZGF0YWJhc2U6IGZpcmViYXNlLmRhdGFiYXNlLkRhdGFiYXNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRklSRUJBU0VfT1BUSU9OUykgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRklSRUJBU0VfQVBQX05BTUUpIG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChVUkwpIGRhdGFiYXNlVVJMOiBzdHJpbmcgfCBudWxsLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0LFxuICAgIHpvbmU6IE5nWm9uZSxcbiAgICBwdWJsaWMgc2NoZWR1bGVyczogybVBbmd1bGFyRmlyZVNjaGVkdWxlcnMsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChVU0VfRU1VTEFUT1IpIF91c2VFbXVsYXRvcjogYW55LCAvLyB0dXBsZSBpc24ndCB3b3JraW5nIGhlcmVcbiAgICBAT3B0aW9uYWwoKSBhdXRoOiBBbmd1bGFyRmlyZUF1dGgsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChVU0VfQVVUSF9FTVVMQVRPUikgdXNlQXV0aEVtdWxhdG9yOiBhbnksXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChBVVRIX1NFVFRJTkdTKSBhdXRoU2V0dGluZ3M6IGFueSwgLy8gY2FuJ3QgdXNlIGZpcmViYXNlLmF1dGguQXV0aFNldHRpbmdzIGhlcmVcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRFTkFOVF9JRCkgdGVuYW50SWQ6IHN0cmluZyB8IG51bGwsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChMQU5HVUFHRV9DT0RFKSBsYW5ndWFnZUNvZGU6IHN0cmluZyB8IG51bGwsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChVU0VfREVWSUNFX0xBTkdVQUdFKSB1c2VEZXZpY2VMYW5ndWFnZTogYm9vbGVhbiB8IG51bGwsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChQRVJTSVNURU5DRSkgcGVyc2lzdGVuY2U6IHN0cmluZyB8IG51bGwsXG4gICAgQE9wdGlvbmFsKCkgX2FwcENoZWNrSW5zdGFuY2VzOiBBcHBDaGVja0luc3RhbmNlcyxcbiAgKSB7XG5cbiAgICBjb25zdCB1c2VFbXVsYXRvcjogVXNlRW11bGF0b3JBcmd1bWVudHMgfCBudWxsID0gX3VzZUVtdWxhdG9yO1xuICAgIGNvbnN0IGFwcCA9IMm1ZmlyZWJhc2VBcHBGYWN0b3J5KG9wdGlvbnMsIHpvbmUsIG5hbWUpO1xuXG4gICAgaWYgKGF1dGgpIHtcbiAgICAgIMm1YXV0aEZhY3RvcnkoYXBwLCB6b25lLCB1c2VBdXRoRW11bGF0b3IsIHRlbmFudElkLCBsYW5ndWFnZUNvZGUsIHVzZURldmljZUxhbmd1YWdlLCBhdXRoU2V0dGluZ3MsIHBlcnNpc3RlbmNlKTtcbiAgICB9XG5cbiAgICB0aGlzLmRhdGFiYXNlID0gybVjYWNoZUluc3RhbmNlKGAke2FwcC5uYW1lfS5kYXRhYmFzZS4ke2RhdGFiYXNlVVJMfWAsICdBbmd1bGFyRmlyZURhdGFiYXNlJywgYXBwLm5hbWUsICgpID0+IHtcbiAgICAgIGNvbnN0IGRhdGFiYXNlID0gem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBhcHAuZGF0YWJhc2UoZGF0YWJhc2VVUkwgfHwgdW5kZWZpbmVkKSk7XG4gICAgICBpZiAodXNlRW11bGF0b3IpIHtcbiAgICAgICAgZGF0YWJhc2UudXNlRW11bGF0b3IoLi4udXNlRW11bGF0b3IpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGRhdGFiYXNlO1xuICAgIH0sIFt1c2VFbXVsYXRvcl0pO1xuICB9XG5cbiAgbGlzdDxUPihwYXRoT3JSZWY6IFBhdGhSZWZlcmVuY2UsIHF1ZXJ5Rm4/OiBRdWVyeUZuKTogQW5ndWxhckZpcmVMaXN0PFQ+IHtcbiAgICBjb25zdCByZWYgPSB0aGlzLnNjaGVkdWxlcnMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IGdldFJlZih0aGlzLmRhdGFiYXNlLCBwYXRoT3JSZWYpKTtcbiAgICBsZXQgcXVlcnk6IERhdGFiYXNlUXVlcnkgPSByZWY7XG4gICAgaWYgKHF1ZXJ5Rm4pIHtcbiAgICAgIHF1ZXJ5ID0gcXVlcnlGbihyZWYpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlTGlzdFJlZmVyZW5jZTxUPihxdWVyeSwgdGhpcyk7XG4gIH1cblxuICBvYmplY3Q8VD4ocGF0aE9yUmVmOiBQYXRoUmVmZXJlbmNlKTogQW5ndWxhckZpcmVPYmplY3Q8VD4ge1xuICAgIGNvbnN0IHJlZiA9IHRoaXMuc2NoZWR1bGVycy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gZ2V0UmVmKHRoaXMuZGF0YWJhc2UsIHBhdGhPclJlZikpO1xuICAgIHJldHVybiBjcmVhdGVPYmplY3RSZWZlcmVuY2U8VD4ocmVmLCB0aGlzKTtcbiAgfVxuXG4gIGNyZWF0ZVB1c2hJZCgpIHtcbiAgICBjb25zdCByZWYgPSB0aGlzLnNjaGVkdWxlcnMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuZGF0YWJhc2UucmVmKCkpO1xuICAgIHJldHVybiByZWYucHVzaCgpLmtleTtcbiAgfVxuXG59XG5cbmV4cG9ydCB7XG4gIFBhdGhSZWZlcmVuY2UsXG4gIERhdGFiYXNlU25hcHNob3QsXG4gIENoaWxkRXZlbnQsXG4gIExpc3RlbkV2ZW50LFxuICBRdWVyeUZuLFxuICBBbmd1bGFyRmlyZUxpc3QsXG4gIEFuZ3VsYXJGaXJlT2JqZWN0LFxuICBBbmd1bGFyRmlyZUFjdGlvbixcbiAgQWN0aW9uLFxuICBTbmFwc2hvdEFjdGlvblxufSBmcm9tICcuL2ludGVyZmFjZXMnO1xuIl19
@@ -1,20 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { VERSION } from '@angular/fire';
3
- import firebase from 'firebase/compat/app';
4
- import { AngularFireDatabase } from './database';
5
- import * as i0 from "@angular/core";
6
- export class AngularFireDatabaseModule {
7
- constructor() {
8
- firebase.registerVersion('angularfire', VERSION.full, 'rtdb-compat');
9
- }
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabaseModule });
12
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabaseModule, providers: [AngularFireDatabase] });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AngularFireDatabaseModule, decorators: [{
15
- type: NgModule,
16
- args: [{
17
- providers: [AngularFireDatabase]
18
- }]
19
- }], ctorParameters: () => [] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBhdC9kYXRhYmFzZS9kYXRhYmFzZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sUUFBUSxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFLakQsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQztRQUNFLFFBQVEsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDdkUsQ0FBQzt1R0FIVSx5QkFBeUI7d0dBQXpCLHlCQUF5Qjt3R0FBekIseUJBQXlCLGFBRnpCLENBQUUsbUJBQW1CLENBQUU7OzJGQUV2Qix5QkFBeUI7a0JBSHJDLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFLENBQUUsbUJBQW1CLENBQUU7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tICdAYW5ndWxhci9maXJlJztcbmltcG9ydCBmaXJlYmFzZSBmcm9tICdmaXJlYmFzZS9jb21wYXQvYXBwJztcbmltcG9ydCB7IEFuZ3VsYXJGaXJlRGF0YWJhc2UgfSBmcm9tICcuL2RhdGFiYXNlJztcblxuQE5nTW9kdWxlKHtcbiAgcHJvdmlkZXJzOiBbIEFuZ3VsYXJGaXJlRGF0YWJhc2UgXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRmlyZURhdGFiYXNlTW9kdWxlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZmlyZWJhc2UucmVnaXN0ZXJWZXJzaW9uKCdhbmd1bGFyZmlyZScsIFZFUlNJT04uZnVsbCwgJ3J0ZGItY29tcGF0Jyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wYXQvZGF0YWJhc2UvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlL2NvbXBhdC9hcHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBGaXJlYmFzZU9wZXJhdGlvbiA9IHN0cmluZyB8IGZpcmViYXNlLmRhdGFiYXNlLlJlZmVyZW5jZSB8IGZpcmViYXNlLmRhdGFiYXNlLkRhdGFTbmFwc2hvdDtcblxuZXhwb3J0IGludGVyZmFjZSBBbmd1bGFyRmlyZUxpc3Q8VD4ge1xuICBxdWVyeTogRGF0YWJhc2VRdWVyeTtcbiAgdmFsdWVDaGFuZ2VzKGV2ZW50cz86IENoaWxkRXZlbnRbXSwgb3B0aW9ucz86IHVua25vd24pOiBPYnNlcnZhYmxlPFRbXT47XG4gIHZhbHVlQ2hhbmdlczxLIGV4dGVuZHMgc3RyaW5nPihldmVudHM/OiBDaGlsZEV2ZW50W10sIG9wdGlvbnM/OiB7aWRGaWVsZDogS30pOiBPYnNlcnZhYmxlPChUICYge1tUIGluIEtdPzogc3RyaW5nfSlbXT47XG4gIHNuYXBzaG90Q2hhbmdlcyhldmVudHM/OiBDaGlsZEV2ZW50W10pOiBPYnNlcnZhYmxlPFNuYXBzaG90QWN0aW9uPFQ+W10+O1xuICBzdGF0ZUNoYW5nZXMoZXZlbnRzPzogQ2hpbGRFdmVudFtdKTogT2JzZXJ2YWJsZTxTbmFwc2hvdEFjdGlvbjxUPj47XG4gIGF1ZGl0VHJhaWwoZXZlbnRzPzogQ2hpbGRFdmVudFtdKTogT2JzZXJ2YWJsZTxTbmFwc2hvdEFjdGlvbjxUPltdPjtcbiAgdXBkYXRlKGl0ZW06IEZpcmViYXNlT3BlcmF0aW9uLCBkYXRhOiBQYXJ0aWFsPFQ+KTogUHJvbWlzZTx2b2lkPjtcbiAgc2V0KGl0ZW06IEZpcmViYXNlT3BlcmF0aW9uLCBkYXRhOiBUKTogUHJvbWlzZTx2b2lkPjtcbiAgcHVzaChkYXRhOiBUKTogZmlyZWJhc2UuZGF0YWJhc2UuVGhlbmFibGVSZWZlcmVuY2U7XG4gIHJlbW92ZShpdGVtPzogRmlyZWJhc2VPcGVyYXRpb24pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJGaXJlT2JqZWN0PFQ+IHtcbiAgcXVlcnk6IERhdGFiYXNlUXVlcnk7XG4gIHZhbHVlQ2hhbmdlcygpOiBPYnNlcnZhYmxlPFQgfCBudWxsPjtcbiAgc25hcHNob3RDaGFuZ2VzKCk6IE9ic2VydmFibGU8U25hcHNob3RBY3Rpb248VD4+O1xuICB1cGRhdGUoZGF0YTogUGFydGlhbDxUPik6IFByb21pc2U8dm9pZD47XG4gIHNldChkYXRhOiBUKTogUHJvbWlzZTx2b2lkPjtcbiAgcmVtb3ZlKCk6IFByb21pc2U8dm9pZD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlyZWJhc2VPcGVyYXRpb25DYXNlcyB7XG4gIHN0cmluZ0Nhc2U6ICgpID0+IFByb21pc2U8dm9pZD47XG4gIGZpcmViYXNlQ2FzZT86ICgpID0+IFByb21pc2U8dm9pZD47XG4gIHNuYXBzaG90Q2FzZT86ICgpID0+IFByb21pc2U8dm9pZD47XG4gIHVud3JhcHBlZFNuYXBzaG90Q2FzZT86ICgpID0+IFByb21pc2U8dm9pZD47XG59XG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Rm4gPSAocmVmOiBEYXRhYmFzZVJlZmVyZW5jZSkgPT4gRGF0YWJhc2VRdWVyeTtcbmV4cG9ydCB0eXBlIENoaWxkRXZlbnQgPSAnY2hpbGRfYWRkZWQnIHwgJ2NoaWxkX3JlbW92ZWQnIHwgJ2NoaWxkX2NoYW5nZWQnIHwgJ2NoaWxkX21vdmVkJztcbmV4cG9ydCB0eXBlIExpc3RlbkV2ZW50ID0gJ3ZhbHVlJyB8IENoaWxkRXZlbnQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uPFQ+IHtcbiAgdHlwZTogTGlzdGVuRXZlbnQ7XG4gIHBheWxvYWQ6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW5ndWxhckZpcmVBY3Rpb248VD4gZXh0ZW5kcyBBY3Rpb248VD4ge1xuICBwcmV2S2V5OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBrZXk6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCB0eXBlIFNuYXBzaG90QWN0aW9uPFQ+ID0gQW5ndWxhckZpcmVBY3Rpb248RGF0YWJhc2VTbmFwc2hvdDxUPj47XG5cbmV4cG9ydCB0eXBlIFByaW1pdGl2ZSA9IG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VTbmFwc2hvdEV4aXN0czxUPiBleHRlbmRzIGZpcmViYXNlLmRhdGFiYXNlLkRhdGFTbmFwc2hvdCB7XG4gIGV4aXN0cygpOiB0cnVlO1xuICB2YWwoKTogVDtcbiAgZm9yRWFjaChhY3Rpb246IChhOiBEYXRhYmFzZVNuYXBzaG90PFQ+KSA9PiBib29sZWFuKTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYXRhYmFzZVNuYXBzaG90RG9lc05vdEV4aXN0PFQ+IGV4dGVuZHMgZmlyZWJhc2UuZGF0YWJhc2UuRGF0YVNuYXBzaG90IHtcbiAgZXhpc3RzKCk6IGZhbHNlO1xuICB2YWwoKTogbnVsbDtcbiAgZm9yRWFjaChhY3Rpb246IChhOiBEYXRhYmFzZVNuYXBzaG90PFQ+KSA9PiBib29sZWFuKTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRGF0YWJhc2VTbmFwc2hvdDxUPiA9IERhdGFiYXNlU25hcHNob3RFeGlzdHM8VD4gfCBEYXRhYmFzZVNuYXBzaG90RG9lc05vdEV4aXN0PFQ+O1xuXG5leHBvcnQgdHlwZSBEYXRhYmFzZVJlZmVyZW5jZSA9IGZpcmViYXNlLmRhdGFiYXNlLlJlZmVyZW5jZTtcbmV4cG9ydCB0eXBlIERhdGFiYXNlUXVlcnkgPSBmaXJlYmFzZS5kYXRhYmFzZS5RdWVyeTtcbmV4cG9ydCB0eXBlIERhdGFTbmFwc2hvdCA9IGZpcmViYXNlLmRhdGFiYXNlLkRhdGFTbmFwc2hvdDtcbmV4cG9ydCB0eXBlIFF1ZXJ5UmVmZXJlbmNlID0gRGF0YWJhc2VSZWZlcmVuY2UgfCBEYXRhYmFzZVF1ZXJ5O1xuZXhwb3J0IHR5cGUgUGF0aFJlZmVyZW5jZSA9IFF1ZXJ5UmVmZXJlbmNlIHwgc3RyaW5nO1xuIl19