@angular/fire 7.6.1 → 16.0.0-canary.1350920
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.
- package/README.md +11 -27
- package/analytics/analytics.module.d.ts +2 -2
- package/analytics/firebase.d.ts +4 -1
- package/analytics/is-analytics-supported-factory.d.ts +4 -0
- package/analytics/screen-tracking.service.d.ts +3 -3
- package/app-check/app-check.d.ts +0 -6
- package/app-check/app-check.module.d.ts +3 -4
- package/app-check/firebase.d.ts +2 -1
- package/app-check/public_api.d.ts +2 -1
- package/auth/auth.module.d.ts +2 -2
- package/auth/firebase.d.ts +3 -1
- package/auth-guard/auth-guard.d.ts +6 -6
- package/compat/analytics/analytics.d.ts +1 -3
- package/compat/analytics/analytics.module.d.ts +1 -1
- package/compat/analytics/screen-tracking.service.d.ts +1 -1
- package/compat/analytics/user-tracking.service.d.ts +1 -1
- package/compat/auth/auth.d.ts +4 -4
- package/compat/auth-guard/auth-guard.d.ts +8 -6
- package/compat/database/database.d.ts +4 -4
- package/compat/database/interfaces.d.ts +14 -14
- package/compat/database/list/audit-trail.d.ts +1 -1
- package/compat/database/list/create-reference.d.ts +1 -1
- package/compat/database/list/data-operation.d.ts +1 -1
- package/compat/database/list/state-changes.d.ts +1 -1
- package/compat/database/object/create-reference.d.ts +1 -1
- package/compat/database/observable/fromRef.d.ts +1 -1
- package/compat/database/utils.d.ts +1 -1
- package/compat/firebase.app.module.d.ts +1 -1
- package/compat/firestore/collection/collection.d.ts +2 -2
- package/compat/firestore/collection-group/collection-group.d.ts +2 -2
- package/compat/firestore/document/document.d.ts +4 -4
- package/compat/firestore/firestore.d.ts +7 -7
- package/compat/firestore/interfaces.d.ts +19 -19
- package/compat/functions/functions.d.ts +3 -3
- package/compat/messaging/messaging.d.ts +2 -2
- package/compat/performance/performance.d.ts +2 -2
- package/compat/proxy.d.ts +8 -8
- package/compat/remote-config/interfaces.d.ts +1 -1
- package/compat/remote-config/remote-config.d.ts +15 -49
- package/compat/storage/interfaces.d.ts +8 -8
- package/compat/storage/observable/fromTask.d.ts +1 -2
- package/compat/storage/pipes/storageUrl.pipe.d.ts +1 -1
- package/compat/storage/ref.d.ts +1 -1
- package/compat/storage/storage.d.ts +3 -3
- package/compat/storage/task.d.ts +1 -1
- package/core.d.ts +8 -12
- package/database/database.module.d.ts +2 -2
- package/docs/app-check.md +1 -1
- package/docs/auth.md +6 -6
- package/docs/database.md +1 -1
- package/docs/deploy/getting-started.md +2 -2
- package/docs/firestore.md +1 -1
- package/docs/install-and-setup.md +1 -1
- package/docs/install-firebase-tools.md +78 -0
- package/docs/universal/cloud-functions.md +27 -6
- package/docs/universal/getting-started.md +9 -134
- package/{esm2015/analytics/analytics.js → esm2022/analytics/analytics.mjs} +1 -1
- package/esm2022/analytics/analytics.module.mjs +94 -0
- package/esm2022/analytics/firebase.mjs +17 -0
- package/esm2022/analytics/is-analytics-supported-factory.mjs +16 -0
- package/esm2022/analytics/overrides.mjs +3 -0
- package/esm2022/analytics/screen-tracking.service.mjs +148 -0
- package/esm2022/analytics/user-tracking.service.mjs +44 -0
- package/{esm2015/app/app.js → esm2022/app/app.mjs} +1 -1
- package/esm2022/app/app.module.mjs +85 -0
- package/esm2022/app-check/app-check.mjs +10 -0
- package/esm2022/app-check/app-check.module.mjs +78 -0
- package/esm2022/app-check/firebase.mjs +10 -0
- package/esm2022/app-check/public_api.mjs +5 -0
- package/{esm2015/auth/auth.js → esm2022/auth/auth.mjs} +1 -1
- package/esm2022/auth/auth.module.mjs +71 -0
- package/esm2022/auth/firebase.mjs +58 -0
- package/esm2022/auth-guard/auth-guard.mjs +53 -0
- package/{esm2015/auth-guard/auth-guard.module.js → esm2022/auth-guard/auth-guard.module.mjs} +7 -7
- package/esm2022/compat/analytics/analytics.mjs +160 -0
- package/esm2022/compat/analytics/analytics.module.mjs +35 -0
- package/esm2022/compat/analytics/screen-tracking.service.mjs +49 -0
- package/esm2022/compat/analytics/user-tracking.service.mjs +53 -0
- package/esm2022/compat/auth/auth.mjs +161 -0
- package/{esm2015/compat/auth/auth.module.js → esm2022/compat/auth/auth.module.mjs} +7 -7
- package/{esm2015/compat/auth/public_api.js → esm2022/compat/auth/public_api.mjs} +1 -1
- package/esm2022/compat/auth-guard/auth-guard.mjs +53 -0
- package/{esm2015/compat/auth-guard/auth-guard.module.js → esm2022/compat/auth-guard/auth-guard.module.mjs} +7 -7
- package/{esm2015/compat/cache.js → esm2022/compat/cache.mjs} +4 -3
- package/esm2022/compat/database/database.mjs +119 -0
- package/{esm2015/compat/database/database.module.js → esm2022/compat/database/database.module.mjs} +7 -7
- package/esm2022/compat/database/interfaces.mjs +2 -0
- package/{esm2015/compat/database/list/audit-trail.js → esm2022/compat/database/list/audit-trail.mjs} +3 -3
- package/esm2022/compat/database/list/changes.mjs +85 -0
- package/esm2022/compat/database/list/create-reference.mjs +44 -0
- package/{esm2015/compat/database/list/data-operation.js → esm2022/compat/database/list/data-operation.mjs} +1 -1
- package/{esm2015/compat/database/list/snapshot-changes.js → esm2022/compat/database/list/snapshot-changes.mjs} +1 -1
- package/{esm2015/compat/database/list/state-changes.js → esm2022/compat/database/list/state-changes.mjs} +2 -2
- package/{esm2015/compat/database/object/create-reference.js → esm2022/compat/database/object/create-reference.mjs} +2 -2
- package/{esm2015/compat/database/object/snapshot-changes.js → esm2022/compat/database/object/snapshot-changes.mjs} +1 -1
- package/esm2022/compat/database/observable/fromRef.mjs +48 -0
- package/{esm2015/compat/database/utils.js → esm2022/compat/database/utils.mjs} +1 -1
- package/{esm2015/compat/firebase.app.js → esm2022/compat/firebase.app.mjs} +1 -1
- package/esm2022/compat/firebase.app.module.mjs +71 -0
- package/esm2022/compat/firestore/collection/changes.mjs +108 -0
- package/esm2022/compat/firestore/collection/collection.mjs +123 -0
- package/esm2022/compat/firestore/collection-group/collection-group.mjs +86 -0
- package/esm2022/compat/firestore/document/document.mjs +87 -0
- package/esm2022/compat/firestore/firestore.mjs +257 -0
- package/{esm2015/compat/firestore/firestore.module.js → esm2022/compat/firestore/firestore.module.mjs} +7 -7
- package/esm2022/compat/firestore/interfaces.mjs +2 -0
- package/esm2022/compat/firestore/observable/fromRef.mjs +40 -0
- package/esm2022/compat/functions/functions.mjs +69 -0
- package/{esm2015/compat/functions/functions.module.js → esm2022/compat/functions/functions.module.mjs} +7 -7
- package/{esm2015/compat/functions/public_api.js → esm2022/compat/functions/public_api.mjs} +1 -1
- package/esm2022/compat/messaging/messaging.mjs +81 -0
- package/{esm2015/compat/messaging/messaging.module.js → esm2022/compat/messaging/messaging.module.mjs} +7 -7
- package/esm2022/compat/performance/performance.mjs +105 -0
- package/esm2022/compat/performance/performance.module.mjs +27 -0
- package/esm2022/compat/performance/performance.service.mjs +28 -0
- package/esm2022/compat/proxy.mjs +58 -0
- package/esm2022/compat/remote-config/remote-config.mjs +206 -0
- package/{esm2015/compat/remote-config/remote-config.module.js → esm2022/compat/remote-config/remote-config.module.mjs} +7 -7
- package/esm2022/compat/storage/observable/fromTask.mjs +36 -0
- package/esm2022/compat/storage/pipes/storageUrl.pipe.mjs +58 -0
- package/{esm2015/compat/storage/ref.js → esm2022/compat/storage/ref.mjs} +3 -3
- package/esm2022/compat/storage/storage.mjs +95 -0
- package/esm2022/compat/storage/storage.module.mjs +22 -0
- package/{esm2015/compat/storage/task.js → esm2022/compat/storage/task.mjs} +2 -2
- package/esm2022/core.mjs +43 -0
- package/{esm2015/database/database.js → esm2022/database/database.mjs} +1 -1
- package/esm2022/database/database.module.mjs +74 -0
- package/esm2022/firestore/firebase.mjs +73 -0
- package/{esm2015/firestore/firestore.js → esm2022/firestore/firestore.mjs} +1 -1
- package/esm2022/firestore/firestore.module.mjs +74 -0
- package/esm2022/firestore/lite/firebase.mjs +48 -0
- package/{esm2015/firestore/lite/lite.js → esm2022/firestore/lite/lite.mjs} +1 -1
- package/esm2022/firestore/lite/lite.module.mjs +73 -0
- package/esm2022/firestore/lite/rxfire.mjs +12 -0
- package/esm2022/firestore/rxfire.mjs +15 -0
- package/{esm2015/functions/functions.js → esm2022/functions/functions.mjs} +1 -1
- package/esm2022/functions/functions.module.mjs +74 -0
- package/esm2022/messaging/is-messaging-supported-factory.mjs +16 -0
- package/{esm2015/messaging/messaging.js → esm2022/messaging/messaging.mjs} +1 -1
- package/esm2022/messaging/messaging.module.mjs +86 -0
- package/esm2022/messaging/overrides.mjs +3 -0
- package/{esm2015/performance/performance.js → esm2022/performance/performance.mjs} +1 -1
- package/esm2022/performance/performance.module.mjs +81 -0
- package/esm2022/remote-config/is-remote-config-supported-factory.mjs +16 -0
- package/esm2022/remote-config/overrides.mjs +3 -0
- package/{esm2015/remote-config/remote-config.js → esm2022/remote-config/remote-config.mjs} +1 -1
- package/esm2022/remote-config/remote-config.module.mjs +86 -0
- package/{esm2015/storage/storage.js → esm2022/storage/storage.mjs} +1 -1
- package/esm2022/storage/storage.module.mjs +74 -0
- package/esm2022/zones.mjs +194 -0
- package/{fesm2015/angular-fire-analytics.js → fesm2022/angular-fire-analytics.mjs} +68 -41
- package/fesm2022/angular-fire-analytics.mjs.map +1 -0
- package/{fesm2015/angular-fire-app-check.js → fesm2022/angular-fire-app-check.mjs} +18 -25
- package/fesm2022/angular-fire-app-check.mjs.map +1 -0
- package/{fesm2015/angular-fire-app.js → fesm2022/angular-fire-app.mjs} +10 -9
- package/fesm2022/angular-fire-app.mjs.map +1 -0
- package/{fesm2015/angular-fire-auth-guard.js → fesm2022/angular-fire-auth-guard.mjs} +31 -27
- package/fesm2022/angular-fire-auth-guard.mjs.map +1 -0
- package/{fesm2015/angular-fire-auth.js → fesm2022/angular-fire-auth.mjs} +14 -13
- package/fesm2022/angular-fire-auth.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-analytics.js → fesm2022/angular-fire-compat-analytics.mjs} +43 -41
- package/fesm2022/angular-fire-compat-analytics.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-auth-guard.js → fesm2022/angular-fire-compat-auth-guard.mjs} +30 -26
- package/fesm2022/angular-fire-compat-auth-guard.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-auth.js → fesm2022/angular-fire-compat-auth.mjs} +38 -16
- package/fesm2022/angular-fire-compat-auth.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-database.js → fesm2022/angular-fire-compat-database.mjs} +138 -132
- package/fesm2022/angular-fire-compat-database.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-firestore.js → fesm2022/angular-fire-compat-firestore.mjs} +119 -98
- package/fesm2022/angular-fire-compat-firestore.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-functions.js → fesm2022/angular-fire-compat-functions.mjs} +13 -12
- package/fesm2022/angular-fire-compat-functions.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-messaging.js → fesm2022/angular-fire-compat-messaging.mjs} +25 -19
- package/fesm2022/angular-fire-compat-messaging.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-performance.js → fesm2022/angular-fire-compat-performance.mjs} +29 -34
- package/fesm2022/angular-fire-compat-performance.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-remote-config.js → fesm2022/angular-fire-compat-remote-config.mjs} +35 -22
- package/fesm2022/angular-fire-compat-remote-config.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat-storage.js → fesm2022/angular-fire-compat-storage.mjs} +30 -23
- package/fesm2022/angular-fire-compat-storage.mjs.map +1 -0
- package/{fesm2015/angular-fire-compat.js → fesm2022/angular-fire-compat.mjs} +25 -25
- package/fesm2022/angular-fire-compat.mjs.map +1 -0
- package/{fesm2015/angular-fire-database.js → fesm2022/angular-fire-database.mjs} +11 -12
- package/fesm2022/angular-fire-database.mjs.map +1 -0
- package/{fesm2015/angular-fire-firestore-lite.js → fesm2022/angular-fire-firestore-lite.mjs} +25 -15
- package/fesm2022/angular-fire-firestore-lite.mjs.map +1 -0
- package/fesm2022/angular-fire-firestore.mjs +180 -0
- package/fesm2022/angular-fire-firestore.mjs.map +1 -0
- package/{fesm2015/angular-fire-functions.js → fesm2022/angular-fire-functions.mjs} +12 -13
- package/fesm2022/angular-fire-functions.mjs.map +1 -0
- package/{fesm2015/angular-fire-messaging.js → fesm2022/angular-fire-messaging.mjs} +33 -19
- package/fesm2022/angular-fire-messaging.mjs.map +1 -0
- package/{fesm2015/angular-fire-performance.js → fesm2022/angular-fire-performance.mjs} +11 -11
- package/fesm2022/angular-fire-performance.mjs.map +1 -0
- package/{fesm2015/angular-fire-remote-config.js → fesm2022/angular-fire-remote-config.mjs} +34 -20
- package/fesm2022/angular-fire-remote-config.mjs.map +1 -0
- package/{fesm2015/angular-fire-storage.js → fesm2022/angular-fire-storage.mjs} +10 -11
- package/fesm2022/angular-fire-storage.mjs.map +1 -0
- package/{fesm2015/angular-fire.js → fesm2022/angular-fire.mjs} +33 -58
- package/fesm2022/angular-fire.mjs.map +1 -0
- package/firestore/firebase.d.ts +21 -1
- package/firestore/firestore.module.d.ts +2 -2
- package/firestore/lite/firebase.d.ts +10 -1
- package/firestore/lite/lite.module.d.ts +2 -2
- package/firestore/lite/rxfire.d.ts +3 -1
- package/firestore/rxfire.d.ts +3 -1
- package/functions/functions.module.d.ts +2 -2
- package/messaging/is-messaging-supported-factory.d.ts +4 -0
- package/messaging/messaging.module.d.ts +2 -2
- package/package.json +169 -18
- package/performance/performance.module.d.ts +2 -2
- package/remote-config/is-remote-config-supported-factory.d.ts +4 -0
- package/remote-config/remote-config.module.d.ts +2 -2
- package/schematics/add/index.js +2 -2
- package/schematics/common.js +9 -5
- package/schematics/deploy/actions.js +69 -69
- package/schematics/deploy/builder.js +7 -7
- package/schematics/firebaseTools.js +9 -5
- package/schematics/interfaces.js +9 -8
- package/schematics/setup/index.js +48 -64
- package/schematics/setup/prompts.js +22 -18
- package/schematics/update/index.js +1 -1
- package/schematics/update/v7/index.js +7 -7
- package/schematics/utils.js +87 -71
- package/storage/storage.module.d.ts +2 -2
- package/analytics/package.json +0 -11
- package/app/package.json +0 -11
- package/app-check/package.json +0 -11
- package/auth/package.json +0 -11
- package/auth-guard/package.json +0 -11
- package/bundles/angular-fire-analytics.umd.js +0 -673
- package/bundles/angular-fire-analytics.umd.js.map +0 -1
- package/bundles/angular-fire-app-check.umd.js +0 -465
- package/bundles/angular-fire-app-check.umd.js.map +0 -1
- package/bundles/angular-fire-app.umd.js +0 -477
- package/bundles/angular-fire-app.umd.js.map +0 -1
- package/bundles/angular-fire-auth-guard.umd.js +0 -109
- package/bundles/angular-fire-auth-guard.umd.js.map +0 -1
- package/bundles/angular-fire-auth.umd.js +0 -557
- package/bundles/angular-fire-auth.umd.js.map +0 -1
- package/bundles/angular-fire-compat-analytics.umd.js +0 -672
- package/bundles/angular-fire-compat-analytics.umd.js.map +0 -1
- package/bundles/angular-fire-compat-auth-guard.umd.js +0 -112
- package/bundles/angular-fire-compat-auth-guard.umd.js.map +0 -1
- package/bundles/angular-fire-compat-auth.umd.js +0 -559
- package/bundles/angular-fire-compat-auth.umd.js.map +0 -1
- package/bundles/angular-fire-compat-database.umd.js +0 -799
- package/bundles/angular-fire-compat-database.umd.js.map +0 -1
- package/bundles/angular-fire-compat-firestore.umd.js +0 -1073
- package/bundles/angular-fire-compat-firestore.umd.js.map +0 -1
- package/bundles/angular-fire-compat-functions.umd.js +0 -443
- package/bundles/angular-fire-compat-functions.umd.js.map +0 -1
- package/bundles/angular-fire-compat-messaging.umd.js +0 -465
- package/bundles/angular-fire-compat-messaging.umd.js.map +0 -1
- package/bundles/angular-fire-compat-performance.umd.js +0 -212
- package/bundles/angular-fire-compat-performance.umd.js.map +0 -1
- package/bundles/angular-fire-compat-remote-config.umd.js +0 -605
- package/bundles/angular-fire-compat-remote-config.umd.js.map +0 -1
- package/bundles/angular-fire-compat-storage.umd.js +0 -598
- package/bundles/angular-fire-compat-storage.umd.js.map +0 -1
- package/bundles/angular-fire-compat.umd.js +0 -535
- package/bundles/angular-fire-compat.umd.js.map +0 -1
- package/bundles/angular-fire-database.umd.js +0 -557
- package/bundles/angular-fire-database.umd.js.map +0 -1
- package/bundles/angular-fire-firestore-lite.umd.js +0 -531
- package/bundles/angular-fire-firestore-lite.umd.js.map +0 -1
- package/bundles/angular-fire-firestore.umd.js +0 -565
- package/bundles/angular-fire-firestore.umd.js.map +0 -1
- package/bundles/angular-fire-functions.umd.js +0 -461
- package/bundles/angular-fire-functions.umd.js.map +0 -1
- package/bundles/angular-fire-messaging.umd.js +0 -473
- package/bundles/angular-fire-messaging.umd.js.map +0 -1
- package/bundles/angular-fire-performance.umd.js +0 -473
- package/bundles/angular-fire-performance.umd.js.map +0 -1
- package/bundles/angular-fire-remote-config.umd.js +0 -499
- package/bundles/angular-fire-remote-config.umd.js.map +0 -1
- package/bundles/angular-fire-storage.umd.js +0 -485
- package/bundles/angular-fire-storage.umd.js.map +0 -1
- package/bundles/angular-fire.umd.js +0 -308
- package/bundles/angular-fire.umd.js.map +0 -1
- package/compat/analytics/package.json +0 -11
- package/compat/auth/package.json +0 -11
- package/compat/auth-guard/package.json +0 -11
- package/compat/database/package.json +0 -11
- package/compat/firestore/package.json +0 -11
- package/compat/functions/package.json +0 -11
- package/compat/messaging/package.json +0 -11
- package/compat/package.json +0 -11
- package/compat/performance/package.json +0 -11
- package/compat/remote-config/package.json +0 -11
- package/compat/storage/package.json +0 -11
- package/database/package.json +0 -11
- package/esm2015/analytics/analytics.module.js +0 -93
- package/esm2015/analytics/firebase.js +0 -14
- package/esm2015/analytics/overrides.js +0 -3
- package/esm2015/analytics/screen-tracking.service.js +0 -139
- package/esm2015/analytics/user-tracking.service.js +0 -43
- package/esm2015/app/app.module.js +0 -84
- package/esm2015/app-check/app-check.js +0 -16
- package/esm2015/app-check/app-check.module.js +0 -81
- package/esm2015/app-check/firebase.js +0 -9
- package/esm2015/app-check/public_api.js +0 -4
- package/esm2015/auth/auth.module.js +0 -71
- package/esm2015/auth/firebase.js +0 -56
- package/esm2015/auth-guard/auth-guard.js +0 -49
- package/esm2015/compat/analytics/analytics.js +0 -163
- package/esm2015/compat/analytics/analytics.module.js +0 -32
- package/esm2015/compat/analytics/screen-tracking.service.js +0 -49
- package/esm2015/compat/analytics/user-tracking.service.js +0 -52
- package/esm2015/compat/auth/auth.js +0 -139
- package/esm2015/compat/auth-guard/auth-guard.js +0 -49
- package/esm2015/compat/database/database.js +0 -117
- package/esm2015/compat/database/interfaces.js +0 -2
- package/esm2015/compat/database/list/changes.js +0 -85
- package/esm2015/compat/database/list/create-reference.js +0 -41
- package/esm2015/compat/database/observable/fromRef.js +0 -47
- package/esm2015/compat/firebase.app.module.js +0 -69
- package/esm2015/compat/firestore/collection/changes.js +0 -107
- package/esm2015/compat/firestore/collection/collection.js +0 -117
- package/esm2015/compat/firestore/collection-group/collection-group.js +0 -81
- package/esm2015/compat/firestore/document/document.js +0 -82
- package/esm2015/compat/firestore/firestore.js +0 -254
- package/esm2015/compat/firestore/interfaces.js +0 -2
- package/esm2015/compat/firestore/observable/fromRef.js +0 -39
- package/esm2015/compat/functions/functions.js +0 -68
- package/esm2015/compat/messaging/messaging.js +0 -75
- package/esm2015/compat/performance/performance.js +0 -110
- package/esm2015/compat/performance/performance.module.js +0 -28
- package/esm2015/compat/performance/performance.service.js +0 -27
- package/esm2015/compat/proxy.js +0 -61
- package/esm2015/compat/remote-config/remote-config.js +0 -193
- package/esm2015/compat/storage/observable/fromTask.js +0 -34
- package/esm2015/compat/storage/pipes/storageUrl.pipe.js +0 -54
- package/esm2015/compat/storage/storage.js +0 -94
- package/esm2015/compat/storage/storage.module.js +0 -22
- package/esm2015/core.js +0 -79
- package/esm2015/database/database.module.js +0 -74
- package/esm2015/firestore/firebase.js +0 -53
- package/esm2015/firestore/firestore.module.js +0 -74
- package/esm2015/firestore/lite/firebase.js +0 -39
- package/esm2015/firestore/lite/lite.module.js +0 -74
- package/esm2015/firestore/lite/rxfire.js +0 -10
- package/esm2015/firestore/rxfire.js +0 -13
- package/esm2015/functions/functions.module.js +0 -74
- package/esm2015/messaging/messaging.module.js +0 -85
- package/esm2015/messaging/overrides.js +0 -3
- package/esm2015/performance/performance.module.js +0 -81
- package/esm2015/remote-config/overrides.js +0 -3
- package/esm2015/remote-config/remote-config.module.js +0 -85
- package/esm2015/storage/storage.module.js +0 -74
- package/esm2015/zones.js +0 -183
- package/fesm2015/angular-fire-analytics.js.map +0 -1
- package/fesm2015/angular-fire-app-check.js.map +0 -1
- package/fesm2015/angular-fire-app.js.map +0 -1
- package/fesm2015/angular-fire-auth-guard.js.map +0 -1
- package/fesm2015/angular-fire-auth.js.map +0 -1
- package/fesm2015/angular-fire-compat-analytics.js.map +0 -1
- package/fesm2015/angular-fire-compat-auth-guard.js.map +0 -1
- package/fesm2015/angular-fire-compat-auth.js.map +0 -1
- package/fesm2015/angular-fire-compat-database.js.map +0 -1
- package/fesm2015/angular-fire-compat-firestore.js.map +0 -1
- package/fesm2015/angular-fire-compat-functions.js.map +0 -1
- package/fesm2015/angular-fire-compat-messaging.js.map +0 -1
- package/fesm2015/angular-fire-compat-performance.js.map +0 -1
- package/fesm2015/angular-fire-compat-remote-config.js.map +0 -1
- package/fesm2015/angular-fire-compat-storage.js.map +0 -1
- package/fesm2015/angular-fire-compat.js.map +0 -1
- package/fesm2015/angular-fire-database.js.map +0 -1
- package/fesm2015/angular-fire-firestore-lite.js.map +0 -1
- package/fesm2015/angular-fire-firestore.js +0 -159
- package/fesm2015/angular-fire-firestore.js.map +0 -1
- package/fesm2015/angular-fire-functions.js.map +0 -1
- package/fesm2015/angular-fire-messaging.js.map +0 -1
- package/fesm2015/angular-fire-performance.js.map +0 -1
- package/fesm2015/angular-fire-remote-config.js.map +0 -1
- package/fesm2015/angular-fire-storage.js.map +0 -1
- package/fesm2015/angular-fire.js.map +0 -1
- package/firestore/lite/package.json +0 -11
- package/firestore/package.json +0 -11
- package/firestore-protos.js +0 -4
- package/functions/package.json +0 -11
- package/messaging/package.json +0 -11
- package/performance/package.json +0 -11
- package/remote-config/package.json +0 -11
- package/storage/package.json +0 -11
- /package/analytics/{angular-fire-analytics.d.ts → index.d.ts} +0 -0
- /package/app/{angular-fire-app.d.ts → index.d.ts} +0 -0
- /package/app-check/{angular-fire-app-check.d.ts → index.d.ts} +0 -0
- /package/auth/{angular-fire-auth.d.ts → index.d.ts} +0 -0
- /package/auth-guard/{angular-fire-auth-guard.d.ts → index.d.ts} +0 -0
- /package/compat/analytics/{angular-fire-compat-analytics.d.ts → index.d.ts} +0 -0
- /package/compat/auth/{angular-fire-compat-auth.d.ts → index.d.ts} +0 -0
- /package/compat/auth-guard/{angular-fire-compat-auth-guard.d.ts → index.d.ts} +0 -0
- /package/compat/database/{angular-fire-compat-database.d.ts → index.d.ts} +0 -0
- /package/compat/firestore/{angular-fire-compat-firestore.d.ts → index.d.ts} +0 -0
- /package/compat/functions/{angular-fire-compat-functions.d.ts → index.d.ts} +0 -0
- /package/compat/{angular-fire-compat.d.ts → index.d.ts} +0 -0
- /package/compat/messaging/{angular-fire-compat-messaging.d.ts → index.d.ts} +0 -0
- /package/compat/performance/{angular-fire-compat-performance.d.ts → index.d.ts} +0 -0
- /package/compat/remote-config/{angular-fire-compat-remote-config.d.ts → index.d.ts} +0 -0
- /package/compat/storage/{angular-fire-compat-storage.d.ts → index.d.ts} +0 -0
- /package/database/{angular-fire-database.d.ts → index.d.ts} +0 -0
- /package/{esm2015/analytics/angular-fire-analytics.js → esm2022/analytics/angular-fire-analytics.mjs} +0 -0
- /package/{esm2015/analytics/public_api.js → esm2022/analytics/public_api.mjs} +0 -0
- /package/{esm2015/angular-fire.js → esm2022/angular-fire.mjs} +0 -0
- /package/{esm2015/app/angular-fire-app.js → esm2022/app/angular-fire-app.mjs} +0 -0
- /package/{esm2015/app/firebase.js → esm2022/app/firebase.mjs} +0 -0
- /package/{esm2015/app/public_api.js → esm2022/app/public_api.mjs} +0 -0
- /package/{esm2015/app-check/angular-fire-app-check.js → esm2022/app-check/angular-fire-app-check.mjs} +0 -0
- /package/{esm2015/auth/angular-fire-auth.js → esm2022/auth/angular-fire-auth.mjs} +0 -0
- /package/{esm2015/auth/public_api.js → esm2022/auth/public_api.mjs} +0 -0
- /package/{esm2015/auth/rxfire.js → esm2022/auth/rxfire.mjs} +0 -0
- /package/{esm2015/auth-guard/angular-fire-auth-guard.js → esm2022/auth-guard/angular-fire-auth-guard.mjs} +0 -0
- /package/{esm2015/auth-guard/public_api.js → esm2022/auth-guard/public_api.mjs} +0 -0
- /package/{esm2015/compat/analytics/angular-fire-compat-analytics.js → esm2022/compat/analytics/angular-fire-compat-analytics.mjs} +0 -0
- /package/{esm2015/compat/analytics/base.js → esm2022/compat/analytics/base.mjs} +0 -0
- /package/{esm2015/compat/analytics/public_api.js → esm2022/compat/analytics/public_api.mjs} +0 -0
- /package/{esm2015/compat/angular-fire-compat.js → esm2022/compat/angular-fire-compat.mjs} +0 -0
- /package/{esm2015/compat/auth/angular-fire-compat-auth.js → esm2022/compat/auth/angular-fire-compat-auth.mjs} +0 -0
- /package/{esm2015/compat/auth/base.js → esm2022/compat/auth/base.mjs} +0 -0
- /package/{esm2015/compat/auth-guard/angular-fire-compat-auth-guard.js → esm2022/compat/auth-guard/angular-fire-compat-auth-guard.mjs} +0 -0
- /package/{esm2015/compat/auth-guard/public_api.js → esm2022/compat/auth-guard/public_api.mjs} +0 -0
- /package/{esm2015/compat/database/angular-fire-compat-database.js → esm2022/compat/database/angular-fire-compat-database.mjs} +0 -0
- /package/{esm2015/compat/database/list/remove.js → esm2022/compat/database/list/remove.mjs} +0 -0
- /package/{esm2015/compat/database/list/utils.js → esm2022/compat/database/list/utils.mjs} +0 -0
- /package/{esm2015/compat/database/public_api.js → esm2022/compat/database/public_api.mjs} +0 -0
- /package/{esm2015/compat/firestore/angular-fire-compat-firestore.js → esm2022/compat/firestore/angular-fire-compat-firestore.mjs} +0 -0
- /package/{esm2015/compat/firestore/public_api.js → esm2022/compat/firestore/public_api.mjs} +0 -0
- /package/{esm2015/compat/functions/angular-fire-compat-functions.js → esm2022/compat/functions/angular-fire-compat-functions.mjs} +0 -0
- /package/{esm2015/compat/functions/base.js → esm2022/compat/functions/base.mjs} +0 -0
- /package/{esm2015/compat/messaging/angular-fire-compat-messaging.js → esm2022/compat/messaging/angular-fire-compat-messaging.mjs} +0 -0
- /package/{esm2015/compat/messaging/base.js → esm2022/compat/messaging/base.mjs} +0 -0
- /package/{esm2015/compat/messaging/public_api.js → esm2022/compat/messaging/public_api.mjs} +0 -0
- /package/{esm2015/compat/performance/angular-fire-compat-performance.js → esm2022/compat/performance/angular-fire-compat-performance.mjs} +0 -0
- /package/{esm2015/compat/performance/base.js → esm2022/compat/performance/base.mjs} +0 -0
- /package/{esm2015/compat/performance/public_api.js → esm2022/compat/performance/public_api.mjs} +0 -0
- /package/{esm2015/compat/public_api.js → esm2022/compat/public_api.mjs} +0 -0
- /package/{esm2015/compat/remote-config/angular-fire-compat-remote-config.js → esm2022/compat/remote-config/angular-fire-compat-remote-config.mjs} +0 -0
- /package/{esm2015/compat/remote-config/base.js → esm2022/compat/remote-config/base.mjs} +0 -0
- /package/{esm2015/compat/remote-config/interfaces.js → esm2022/compat/remote-config/interfaces.mjs} +0 -0
- /package/{esm2015/compat/remote-config/public_api.js → esm2022/compat/remote-config/public_api.mjs} +0 -0
- /package/{esm2015/compat/storage/angular-fire-compat-storage.js → esm2022/compat/storage/angular-fire-compat-storage.mjs} +0 -0
- /package/{esm2015/compat/storage/interfaces.js → esm2022/compat/storage/interfaces.mjs} +0 -0
- /package/{esm2015/compat/storage/public_api.js → esm2022/compat/storage/public_api.mjs} +0 -0
- /package/{esm2015/database/angular-fire-database.js → esm2022/database/angular-fire-database.mjs} +0 -0
- /package/{esm2015/database/firebase.js → esm2022/database/firebase.mjs} +0 -0
- /package/{esm2015/database/public_api.js → esm2022/database/public_api.mjs} +0 -0
- /package/{esm2015/database/rxfire.js → esm2022/database/rxfire.mjs} +0 -0
- /package/{esm2015/firestore/angular-fire-firestore.js → esm2022/firestore/angular-fire-firestore.mjs} +0 -0
- /package/{esm2015/firestore/lite/angular-fire-firestore-lite.js → esm2022/firestore/lite/angular-fire-firestore-lite.mjs} +0 -0
- /package/{esm2015/firestore/lite/public_api.js → esm2022/firestore/lite/public_api.mjs} +0 -0
- /package/{esm2015/firestore/public_api.js → esm2022/firestore/public_api.mjs} +0 -0
- /package/{esm2015/functions/angular-fire-functions.js → esm2022/functions/angular-fire-functions.mjs} +0 -0
- /package/{esm2015/functions/firebase.js → esm2022/functions/firebase.mjs} +0 -0
- /package/{esm2015/functions/public_api.js → esm2022/functions/public_api.mjs} +0 -0
- /package/{esm2015/functions/rxfire.js → esm2022/functions/rxfire.mjs} +0 -0
- /package/{esm2015/messaging/angular-fire-messaging.js → esm2022/messaging/angular-fire-messaging.mjs} +0 -0
- /package/{esm2015/messaging/firebase.js → esm2022/messaging/firebase.mjs} +0 -0
- /package/{esm2015/messaging/public_api.js → esm2022/messaging/public_api.mjs} +0 -0
- /package/{esm2015/performance/angular-fire-performance.js → esm2022/performance/angular-fire-performance.mjs} +0 -0
- /package/{esm2015/performance/firebase.js → esm2022/performance/firebase.mjs} +0 -0
- /package/{esm2015/performance/public_api.js → esm2022/performance/public_api.mjs} +0 -0
- /package/{esm2015/performance/rxfire.js → esm2022/performance/rxfire.mjs} +0 -0
- /package/{esm2015/public_api.js → esm2022/public_api.mjs} +0 -0
- /package/{esm2015/remote-config/angular-fire-remote-config.js → esm2022/remote-config/angular-fire-remote-config.mjs} +0 -0
- /package/{esm2015/remote-config/firebase.js → esm2022/remote-config/firebase.mjs} +0 -0
- /package/{esm2015/remote-config/public_api.js → esm2022/remote-config/public_api.mjs} +0 -0
- /package/{esm2015/remote-config/rxfire.js → esm2022/remote-config/rxfire.mjs} +0 -0
- /package/{esm2015/storage/angular-fire-storage.js → esm2022/storage/angular-fire-storage.mjs} +0 -0
- /package/{esm2015/storage/firebase.js → esm2022/storage/firebase.mjs} +0 -0
- /package/{esm2015/storage/public_api.js → esm2022/storage/public_api.mjs} +0 -0
- /package/{esm2015/storage/rxfire.js → esm2022/storage/rxfire.mjs} +0 -0
- /package/firestore/{angular-fire-firestore.d.ts → index.d.ts} +0 -0
- /package/firestore/lite/{angular-fire-firestore-lite.d.ts → index.d.ts} +0 -0
- /package/functions/{angular-fire-functions.d.ts → index.d.ts} +0 -0
- /package/{angular-fire.d.ts → index.d.ts} +0 -0
- /package/messaging/{angular-fire-messaging.d.ts → index.d.ts} +0 -0
- /package/performance/{angular-fire-performance.d.ts → index.d.ts} +0 -0
- /package/remote-config/{angular-fire-remote-config.d.ts → index.d.ts} +0 -0
- /package/storage/{angular-fire-storage.d.ts → index.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angular-fire-compat-analytics.mjs","sources":["../../../src/compat/analytics/base.ts","../../../src/compat/analytics/analytics.ts","../../../src/compat/analytics/user-tracking.service.ts","../../../src/compat/analytics/screen-tracking.service.ts","../../../src/compat/analytics/analytics.module.ts","../../../src/compat/analytics/angular-fire-compat-analytics.ts"],"sourcesContent":["// DO NOT MODIFY, this file is autogenerated by tools/build.ts\n// Export a null object with the same keys as firebase/compat/analytics, so Proxy can work with proxy-polyfill in Internet Explorer\nexport const proxyPolyfillCompat = {\n app: null,\n logEvent: null,\n setCurrentScreen: null,\n setUserId: null,\n setUserProperties: null,\n setAnalyticsCollectionEnabled: null,\n};\n","import { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';\nimport { ɵAngularFireSchedulers } from '@angular/fire';\nimport { ɵPromiseProxy, ɵapplyMixins, ɵcacheInstance, ɵlazySDKProxy } from '@angular/fire/compat';\nimport { FirebaseApp } from '@angular/fire/compat';\nimport { isSupported } from 'firebase/analytics';\nimport firebase from 'firebase/compat/app';\nimport { EMPTY, of } from 'rxjs';\nimport { map, observeOn, shareReplay, switchMap } from 'rxjs/operators';\nimport { proxyPolyfillCompat } from './base';\n\nexport type Config = Record<string, any>;\n\nexport const COLLECTION_ENABLED = new InjectionToken<boolean>('angularfire2.analytics.analyticsCollectionEnabled');\nexport const APP_VERSION = new InjectionToken<string>('angularfire2.analytics.appVersion');\nexport const APP_NAME = new InjectionToken<string>('angularfire2.analytics.appName');\nexport const DEBUG_MODE = new InjectionToken<boolean>('angularfire2.analytics.debugMode');\nexport const CONFIG = new InjectionToken<Config>('angularfire2.analytics.config');\n\nconst APP_NAME_KEY = 'app_name';\nconst APP_VERSION_KEY = 'app_version';\nconst DEBUG_MODE_KEY = 'debug_mode';\nconst GTAG_CONFIG_COMMAND = 'config';\nconst GTAG_FUNCTION_NAME = 'gtag'; // TODO rename these\nconst DATA_LAYER_NAME = 'dataLayer';\nconst SEND_TO_KEY = 'send_to';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface AngularFireAnalytics extends ɵPromiseProxy<firebase.analytics.Analytics> {\n}\n\n@Injectable({\n providedIn: 'any'\n})\nexport class AngularFireAnalytics {\n\n private measurementId: string;\n private analyticsInitialized = new Promise<void>(() => undefined);\n\n async updateConfig(config: Config) {\n await this.analyticsInitialized;\n window[GTAG_FUNCTION_NAME](GTAG_CONFIG_COMMAND, this.measurementId, { ...config, update: true });\n }\n\n constructor(\n app: FirebaseApp,\n @Optional() @Inject(COLLECTION_ENABLED) analyticsCollectionEnabled: boolean | null,\n @Optional() @Inject(APP_VERSION) providedAppVersion: string | null,\n @Optional() @Inject(APP_NAME) providedAppName: string | null,\n @Optional() @Inject(DEBUG_MODE) debugModeEnabled: boolean | null,\n @Optional() @Inject(CONFIG) providedConfig: Config | null,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) platformId: Object,\n zone: NgZone,\n schedulers: ɵAngularFireSchedulers,\n ) {\n\n if (isPlatformBrowser(platformId)) {\n\n window[DATA_LAYER_NAME] = window[DATA_LAYER_NAME] || [];\n\n // It turns out we can't rely on the measurementId in the Firebase config JSON\n // this identifier is not stable. firebase/analytics does a call to get a fresh value\n // falling back on the one in the config. Rather than do that ourselves we should listen\n // on our gtag function for a analytics config command\n // e.g, ['config', measurementId, { origin: 'firebase', firebase_id }]\n const parseMeasurementId = (...args: any[]) => {\n if (args[0] === 'config' && args[2].origin === 'firebase') {\n this.measurementId = args[1];\n return true;\n } else {\n return false;\n }\n };\n\n const patchGtag = (fn?: (...args: any[]) => void) => {\n window[GTAG_FUNCTION_NAME] = (...args: any[]) => {\n if (fn) {\n fn(...args);\n }\n // Inject app_name and app_version into events\n // TODO(jamesdaniels): I'm doing this as documented but it's still not\n // showing up in the console. Investigate. Guessing it's just part of the\n // whole GA4 transition mess.\n if (args[0] === 'event' && args[2][SEND_TO_KEY] === this.measurementId) {\n if (providedAppName) {\n args[2][APP_NAME_KEY] = providedAppName;\n }\n if (providedAppVersion) {\n args[2][APP_VERSION_KEY] = providedAppVersion;\n }\n }\n if (debugModeEnabled && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.info(...args);\n }\n /**\n * According to the gtag documentation, this function that defines a custom data layer cannot be\n * an arrow function because 'arguments' is not an array. It is actually an object that behaves\n * like an array and contains more information then just indexes. Transforming this into arrow function\n * caused issue #2505 where analytics no longer sent any data.\n */\n (function(..._args: any[]) {\n window[DATA_LAYER_NAME].push(arguments);\n })(...args);\n };\n };\n\n // Unclear if we still need to but I was running into config/events I passed\n // to gtag before ['js' timestamp] weren't getting parsed, so let's make a promise\n // that resolves when firebase/analytics has configured gtag.js that we wait on\n // before sending anything\n const firebaseAnalyticsAlreadyInitialized = window[DATA_LAYER_NAME].some(parseMeasurementId);\n if (firebaseAnalyticsAlreadyInitialized) {\n this.analyticsInitialized = Promise.resolve();\n patchGtag();\n } else {\n this.analyticsInitialized = new Promise(resolve => {\n patchGtag((...args) => {\n if (parseMeasurementId(...args)) {\n resolve();\n }\n });\n });\n }\n\n if (providedConfig) {\n this.updateConfig(providedConfig);\n }\n if (debugModeEnabled) {\n this.updateConfig({ [DEBUG_MODE_KEY]: 1 });\n }\n\n } else {\n\n this.analyticsInitialized = Promise.resolve();\n\n }\n\n const analytics = of(undefined).pipe(\n observeOn(schedulers.outsideAngular),\n switchMap(isSupported),\n switchMap(supported => supported ? zone.runOutsideAngular(() => import('firebase/compat/analytics')) : EMPTY),\n map(() => {\n return ɵcacheInstance(`analytics`, 'AngularFireAnalytics', app.name, () => {\n const analytics = app.analytics();\n if (analyticsCollectionEnabled === false) {\n analytics.setAnalyticsCollectionEnabled(false);\n }\n return analytics;\n }, [app, analyticsCollectionEnabled, providedConfig, debugModeEnabled]);\n }),\n shareReplay({ bufferSize: 1, refCount: false })\n );\n\n return ɵlazySDKProxy(this, analytics, zone);\n\n }\n\n}\n\nɵapplyMixins(AngularFireAnalytics, [proxyPolyfillCompat]);\n","import { isPlatformServer } from '@angular/common';\nimport { Inject, Injectable, NgZone, OnDestroy, PLATFORM_ID } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport { AngularFireAuth } from '@angular/fire/compat/auth';\nimport firebase from 'firebase/compat/app';\nimport { Subscription } from 'rxjs';\nimport { AngularFireAnalytics } from './analytics';\n\n@Injectable()\nexport class UserTrackingService implements OnDestroy {\n\n initialized: Promise<void>;\n private disposables: Subscription[] = [];\n\n // TODO a user properties injector\n constructor(\n analytics: AngularFireAnalytics,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) platformId: Object,\n auth: AngularFireAuth,\n zone: NgZone,\n ) {\n firebase.registerVersion('angularfire', VERSION.full, 'compat-user-tracking');\n if (!isPlatformServer(platformId)) {\n let resolveInitialized;\n this.initialized = zone.runOutsideAngular(() => new Promise(resolve => resolveInitialized = resolve));\n this.disposables = [\n auth.authState.subscribe(user => {\n analytics.setUserId(user?.uid);\n resolveInitialized();\n }),\n auth.credential.subscribe(credential => {\n if (credential) {\n const method = credential.user.isAnonymous ? 'anonymous' : credential.additionalUserInfo.providerId;\n if (credential.additionalUserInfo.isNewUser) {\n analytics.logEvent('sign_up', { method });\n }\n analytics.logEvent('login', { method });\n }\n })\n ];\n } else {\n this.initialized = Promise.resolve();\n }\n\n }\n\n ngOnDestroy() {\n this.disposables.forEach(it => it.unsubscribe());\n }\n}\n","import { ComponentFactoryResolver, Injectable, NgZone, OnDestroy, Optional } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport { ɵscreenViewEvent } from '@angular/fire/analytics';\nimport { Title } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\nimport firebase from 'firebase/compat/app';\nimport { Subscription } from 'rxjs';\nimport { switchMap } from 'rxjs/operators';\nimport { AngularFireAnalytics } from './analytics';\nimport { UserTrackingService } from './user-tracking.service';\n\nconst SCREEN_VIEW_EVENT = 'screen_view';\n\n@Injectable()\nexport class ScreenTrackingService implements OnDestroy {\n\n private disposable: Subscription | undefined;\n\n constructor(\n analytics: AngularFireAnalytics,\n @Optional() router: Router,\n @Optional() title: Title,\n componentFactoryResolver: ComponentFactoryResolver,\n zone: NgZone,\n @Optional() userTrackingService: UserTrackingService,\n ) {\n firebase.registerVersion('angularfire', VERSION.full, 'compat-screen-tracking');\n if (!router || !analytics) { return this; }\n zone.runOutsideAngular(() => {\n this.disposable = ɵscreenViewEvent(router, title, componentFactoryResolver).pipe(\n switchMap(async params => {\n if (userTrackingService) {\n await userTrackingService.initialized;\n }\n return await analytics.logEvent(SCREEN_VIEW_EVENT, params);\n })\n ).subscribe();\n });\n }\n\n ngOnDestroy() {\n if (this.disposable) {\n this.disposable.unsubscribe();\n }\n }\n\n}\n","import { NgModule, Optional } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { AngularFireAnalytics } from './analytics';\nimport { ScreenTrackingService } from './screen-tracking.service';\nimport { UserTrackingService } from './user-tracking.service';\n\n@NgModule({\n providers: [ AngularFireAnalytics ]\n})\nexport class AngularFireAnalyticsModule {\n constructor(\n analytics: AngularFireAnalytics,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n @Optional() screenTracking: ScreenTrackingService,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n @Optional() userTracking: UserTrackingService,\n ) {\n firebase.registerVersion('angularfire', VERSION.full, 'analytics-compat');\n // calling anything on analytics will eagerly load the SDK\n analytics.app.then(() => undefined);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i2","i1.AngularFireAnalytics","i4.UserTrackingService","i2.ScreenTrackingService","i3.UserTrackingService"],"mappings":"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"}
|
package/{fesm2015/angular-fire-compat-auth-guard.js → fesm2022/angular-fire-compat-auth-guard.mjs}
RENAMED
|
@@ -1,37 +1,39 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, NgModule } from '@angular/core';
|
|
3
|
+
import * as i2 from '@angular/fire/compat/auth';
|
|
3
4
|
import * as i1 from '@angular/router';
|
|
4
5
|
import { of, pipe } from 'rxjs';
|
|
5
6
|
import { map, take, switchMap } from 'rxjs/operators';
|
|
6
|
-
import * as i2 from '@angular/fire/compat/auth';
|
|
7
|
-
import firebase from 'firebase/compat/app';
|
|
8
7
|
import { VERSION } from '@angular/fire';
|
|
8
|
+
import firebase from 'firebase/compat/app';
|
|
9
9
|
|
|
10
10
|
const loggedIn = map(user => !!user);
|
|
11
11
|
class AngularFireAuthGuard {
|
|
12
|
+
router;
|
|
13
|
+
auth;
|
|
12
14
|
constructor(router, auth) {
|
|
13
15
|
this.router = router;
|
|
14
16
|
this.auth = auth;
|
|
15
|
-
this.canActivate = (next, state) => {
|
|
16
|
-
const authPipeFactory = next.data.authGuardPipe || (() => loggedIn);
|
|
17
|
-
return this.auth.user.pipe(take(1), authPipeFactory(next, state), map(can => {
|
|
18
|
-
if (typeof can === 'boolean') {
|
|
19
|
-
return can;
|
|
20
|
-
}
|
|
21
|
-
else if (Array.isArray(can)) {
|
|
22
|
-
return this.router.createUrlTree(can);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
// TODO(EdricChan03): Add tests
|
|
26
|
-
return this.router.parseUrl(can);
|
|
27
|
-
}
|
|
28
|
-
}));
|
|
29
|
-
};
|
|
30
17
|
}
|
|
18
|
+
canActivate = (next, state) => {
|
|
19
|
+
const authPipeFactory = next.data.authGuardPipe || (() => loggedIn);
|
|
20
|
+
return this.auth.user.pipe(take(1), authPipeFactory(next, state), map(can => {
|
|
21
|
+
if (typeof can === 'boolean') {
|
|
22
|
+
return can;
|
|
23
|
+
}
|
|
24
|
+
else if (Array.isArray(can)) {
|
|
25
|
+
return this.router.createUrlTree(can);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// TODO(EdricChan03): Add tests
|
|
29
|
+
return this.router.parseUrl(can);
|
|
30
|
+
}
|
|
31
|
+
}));
|
|
32
|
+
};
|
|
33
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuard, deps: [{ token: i1.Router }, { token: i2.AngularFireAuth }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
34
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuard, providedIn: 'any' });
|
|
31
35
|
}
|
|
32
|
-
|
|
33
|
-
AngularFireAuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthGuard, providedIn: 'any' });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthGuard, decorators: [{
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuard, decorators: [{
|
|
35
37
|
type: Injectable,
|
|
36
38
|
args: [{
|
|
37
39
|
providedIn: 'any'
|
|
@@ -44,7 +46,9 @@ const isNotAnonymous = map(user => !!user && !user.isAnonymous);
|
|
|
44
46
|
const idTokenResult = switchMap((user) => user ? user.getIdTokenResult() : of(null));
|
|
45
47
|
const emailVerified = map(user => !!user && user.emailVerified);
|
|
46
48
|
const customClaims = pipe(idTokenResult, map(idTokenResult => idTokenResult ? idTokenResult.claims : []));
|
|
47
|
-
const hasCustomClaim =
|
|
49
|
+
const hasCustomClaim =
|
|
50
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
51
|
+
(claim) => pipe(customClaims, map(claims => claims.hasOwnProperty(claim)));
|
|
48
52
|
const redirectUnauthorizedTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn || redirect));
|
|
49
53
|
const redirectLoggedInTo = (redirect) => pipe(loggedIn, map(loggedIn => loggedIn && redirect || true));
|
|
50
54
|
|
|
@@ -52,11 +56,11 @@ class AngularFireAuthGuardModule {
|
|
|
52
56
|
constructor() {
|
|
53
57
|
firebase.registerVersion('angularfire', VERSION.full, 'auth-guard-compat');
|
|
54
58
|
}
|
|
59
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
60
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuardModule });
|
|
61
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuardModule, providers: [AngularFireAuthGuard] });
|
|
55
62
|
}
|
|
56
|
-
|
|
57
|
-
AngularFireAuthGuardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthGuardModule });
|
|
58
|
-
AngularFireAuthGuardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthGuardModule, providers: [AngularFireAuthGuard] });
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthGuardModule, decorators: [{
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthGuardModule, decorators: [{
|
|
60
64
|
type: NgModule,
|
|
61
65
|
args: [{
|
|
62
66
|
providers: [AngularFireAuthGuard]
|
|
@@ -68,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImpor
|
|
|
68
72
|
*/
|
|
69
73
|
|
|
70
74
|
export { AngularFireAuthGuard, AngularFireAuthGuardModule, canActivate, customClaims, emailVerified, hasCustomClaim, idTokenResult, isNotAnonymous, loggedIn, redirectLoggedInTo, redirectUnauthorizedTo };
|
|
71
|
-
//# sourceMappingURL=angular-fire-compat-auth-guard.
|
|
75
|
+
//# sourceMappingURL=angular-fire-compat-auth-guard.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angular-fire-compat-auth-guard.mjs","sources":["../../../src/compat/auth-guard/auth-guard.ts","../../../src/compat/auth-guard/auth-guard.module.ts","../../../src/compat/auth-guard/angular-fire-compat-auth-guard.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { AngularFireAuth } from '@angular/fire/compat/auth';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport firebase from 'firebase/compat/app';\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<firebase.User|null>, Observable<boolean|string|any[]>>;\n\nexport const loggedIn: AuthPipe = map(user => !!user);\n\n@Injectable({\n providedIn: 'any'\n})\nexport class AngularFireAuthGuard implements CanActivate {\n\n constructor(private router: Router, private auth: AngularFireAuth) {}\n\n canActivate = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n const authPipeFactory = next.data.authGuardPipe as AuthPipeGenerator || (() => loggedIn);\n return this.auth.user.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: [ AngularFireAuthGuard ], data: { authGuardPipe: pipe }\n});\n\n\nexport const isNotAnonymous: AuthPipe = map(user => !!user && !user.isAnonymous);\nexport const idTokenResult = switchMap((user: firebase.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 firebase from 'firebase/compat/app';\nimport { AngularFireAuthGuard } from './auth-guard';\n\n@NgModule({\n providers: [ AngularFireAuthGuard ]\n})\nexport class AngularFireAuthGuardModule {\n constructor() {\n firebase.registerVersion('angularfire', VERSION.full, 'auth-guard-compat');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
import 'firebase/compat/auth';
|
|
2
|
+
import { isPlatformServer } from '@angular/common';
|
|
2
3
|
import * as i0 from '@angular/core';
|
|
3
4
|
import { InjectionToken, PLATFORM_ID, Injectable, Inject, Optional, NgModule } from '@angular/core';
|
|
4
|
-
import { Subject, of, Observable, from, merge } from 'rxjs';
|
|
5
|
-
import { observeOn, switchMap, map, shareReplay, first, switchMapTo, subscribeOn, filter } from 'rxjs/operators';
|
|
6
5
|
import * as i1 from '@angular/fire';
|
|
7
6
|
import { keepUnstableUntilFirst, VERSION } from '@angular/fire';
|
|
8
|
-
import { ɵcacheInstance, ɵfirebaseAppFactory, ɵlazySDKProxy, FIREBASE_OPTIONS, FIREBASE_APP_NAME, ɵapplyMixins } from '@angular/fire/compat';
|
|
9
|
-
import { isPlatformServer } from '@angular/common';
|
|
10
7
|
import * as i2 from '@angular/fire/app-check';
|
|
8
|
+
import { ɵcacheInstance, ɵfirebaseAppFactory, ɵlazySDKProxy, FIREBASE_OPTIONS, FIREBASE_APP_NAME, ɵapplyMixins } from '@angular/fire/compat';
|
|
9
|
+
import { Subject, of, Observable, from, merge } from 'rxjs';
|
|
10
|
+
import { observeOn, switchMap, map, shareReplay, first, switchMapTo, subscribeOn, filter } from 'rxjs/operators';
|
|
11
11
|
import firebase from 'firebase/compat/app';
|
|
12
12
|
|
|
13
13
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
@@ -78,8 +78,30 @@ const ɵauthFactory = (app, zone, useEmulator, tenantId, languageCode, useDevice
|
|
|
78
78
|
return auth;
|
|
79
79
|
}, [useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence]);
|
|
80
80
|
class AngularFireAuth {
|
|
81
|
+
/**
|
|
82
|
+
* Observable of authentication state; as of Firebase 4.0 this is only triggered via sign-in/out
|
|
83
|
+
*/
|
|
84
|
+
authState;
|
|
85
|
+
/**
|
|
86
|
+
* Observable of the currently signed-in user's JWT token used to identify the user to a Firebase service (or null).
|
|
87
|
+
*/
|
|
88
|
+
idToken;
|
|
89
|
+
/**
|
|
90
|
+
* Observable of the currently signed-in user (or null).
|
|
91
|
+
*/
|
|
92
|
+
user;
|
|
93
|
+
/**
|
|
94
|
+
* Observable of the currently signed-in user's IdTokenResult object which contains the ID token JWT string and other
|
|
95
|
+
* helper properties for getting different data associated with the token as well as all the decoded payload claims
|
|
96
|
+
* (or null).
|
|
97
|
+
*/
|
|
98
|
+
idTokenResult;
|
|
99
|
+
/**
|
|
100
|
+
* Observable of the currently signed-in user's credential, or null
|
|
101
|
+
*/
|
|
102
|
+
credential;
|
|
81
103
|
constructor(options, name,
|
|
82
|
-
//
|
|
104
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
83
105
|
platformId, zone, schedulers, useEmulator, // can't use the tuple here
|
|
84
106
|
settings, // can't use firebase.auth.AuthSettings here
|
|
85
107
|
tenantId, languageCode, useDeviceLanguage, persistence, _appCheckInstances) {
|
|
@@ -94,7 +116,7 @@ class AngularFireAuth {
|
|
|
94
116
|
// as we're completely lazy. Let's eagerly load the Auth SDK here.
|
|
95
117
|
// There could potentially be race conditions still... but this greatly decreases the odds while
|
|
96
118
|
// we reevaluate the API.
|
|
97
|
-
|
|
119
|
+
auth.pipe(first()).subscribe();
|
|
98
120
|
const redirectResult = auth.pipe(switchMap(auth => auth.getRedirectResult().then(it => it, () => null)), keepUnstableUntilFirst, shareReplay({ bufferSize: 1, refCount: false }));
|
|
99
121
|
const authStateChanged = auth.pipe(switchMap(auth => new Observable(sub => ({ unsubscribe: zone.runOutsideAngular(() => auth.onAuthStateChanged(next => sub.next(next), err => sub.error(err), () => sub.complete())) }))));
|
|
100
122
|
const idTokenChanged = auth.pipe(switchMap(auth => new Observable(sub => ({ unsubscribe: zone.runOutsideAngular(() => auth.onIdTokenChanged(next => sub.next(next), err => sub.error(err), () => sub.complete())) }))));
|
|
@@ -108,7 +130,7 @@ class AngularFireAuth {
|
|
|
108
130
|
this.authState.pipe(filter(it => !it))).pipe(
|
|
109
131
|
// handle the { user: { } } when a user is already logged in, rather have null
|
|
110
132
|
// TODO handle the type corcersion better
|
|
111
|
-
map(credential =>
|
|
133
|
+
map(credential => credential?.user ? credential : null), subscribeOn(schedulers.outsideAngular), observeOn(schedulers.insideAngular));
|
|
112
134
|
}
|
|
113
135
|
return ɵlazySDKProxy(this, auth, zone, { spy: {
|
|
114
136
|
apply: (name, _, val) => {
|
|
@@ -122,10 +144,10 @@ class AngularFireAuth {
|
|
|
122
144
|
}
|
|
123
145
|
} });
|
|
124
146
|
}
|
|
147
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", 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 });
|
|
148
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuth, providedIn: 'any' });
|
|
125
149
|
}
|
|
126
|
-
|
|
127
|
-
AngularFireAuth.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuth, providedIn: 'any' });
|
|
128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuth, decorators: [{
|
|
150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuth, decorators: [{
|
|
129
151
|
type: Injectable,
|
|
130
152
|
args: [{
|
|
131
153
|
providedIn: 'any'
|
|
@@ -180,11 +202,11 @@ class AngularFireAuthModule {
|
|
|
180
202
|
constructor() {
|
|
181
203
|
firebase.registerVersion('angularfire', VERSION.full, 'auth-compat');
|
|
182
204
|
}
|
|
205
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
206
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthModule });
|
|
207
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthModule, providers: [AngularFireAuth] });
|
|
183
208
|
}
|
|
184
|
-
|
|
185
|
-
AngularFireAuthModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthModule });
|
|
186
|
-
AngularFireAuthModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthModule, providers: [AngularFireAuth] });
|
|
187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AngularFireAuthModule, decorators: [{
|
|
209
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: AngularFireAuthModule, decorators: [{
|
|
188
210
|
type: NgModule,
|
|
189
211
|
args: [{
|
|
190
212
|
providers: [AngularFireAuth]
|
|
@@ -196,4 +218,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImpor
|
|
|
196
218
|
*/
|
|
197
219
|
|
|
198
220
|
export { AngularFireAuth, AngularFireAuthModule, LANGUAGE_CODE, PERSISTENCE, SETTINGS, TENANT_ID, USE_DEVICE_LANGUAGE, USE_EMULATOR, ɵauthFactory };
|
|
199
|
-
//# sourceMappingURL=angular-fire-compat-auth.
|
|
221
|
+
//# sourceMappingURL=angular-fire-compat-auth.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angular-fire-compat-auth.mjs","sources":["../../../src/compat/auth/base.ts","../../../src/compat/auth/auth.ts","../../../src/compat/auth/auth.module.ts","../../../src/compat/auth/angular-fire-compat-auth.ts"],"sourcesContent":["// DO NOT MODIFY, this file is autogenerated by tools/build.ts\n// Export a null object with the same keys as firebase/compat/auth, so Proxy can work with proxy-polyfill in Internet Explorer\nexport const proxyPolyfillCompat = {\n name: null,\n config: null,\n emulatorConfig: null,\n app: null,\n applyActionCode: null,\n checkActionCode: null,\n confirmPasswordReset: null,\n createUserWithEmailAndPassword: null,\n currentUser: null,\n fetchSignInMethodsForEmail: null,\n isSignInWithEmailLink: null,\n getRedirectResult: null,\n languageCode: null,\n settings: null,\n onAuthStateChanged: null,\n onIdTokenChanged: null,\n sendSignInLinkToEmail: null,\n sendPasswordResetEmail: null,\n setPersistence: null,\n signInAndRetrieveDataWithCredential: null,\n signInAnonymously: null,\n signInWithCredential: null,\n signInWithCustomToken: null,\n signInWithEmailAndPassword: null,\n signInWithPhoneNumber: null,\n signInWithEmailLink: null,\n signInWithPopup: null,\n signInWithRedirect: null,\n signOut: null,\n tenantId: null,\n updateCurrentUser: null,\n useDeviceLanguage: null,\n useEmulator: null,\n verifyPasswordResetCode: null,\n};\n","import { isPlatformServer } from '@angular/common';\nimport { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';\nimport { keepUnstableUntilFirst, ɵAngularFireSchedulers } from '@angular/fire';\nimport { AppCheckInstances } from '@angular/fire/app-check';\nimport { ɵPromiseProxy, ɵapplyMixins, ɵlazySDKProxy } from '@angular/fire/compat';\nimport { FIREBASE_APP_NAME, FIREBASE_OPTIONS, FirebaseApp, ɵcacheInstance, ɵfirebaseAppFactory } from '@angular/fire/compat';\nimport { FirebaseOptions } from 'firebase/app';\nimport firebase from 'firebase/compat/app';\nimport { Observable, Subject, from, merge, of } from 'rxjs';\nimport { filter, first, map, observeOn, shareReplay, subscribeOn, switchMap, switchMapTo } from 'rxjs/operators';\nimport { proxyPolyfillCompat } from './base';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface AngularFireAuth extends ɵPromiseProxy<firebase.auth.Auth> {}\n\ntype UseEmulatorArguments = Parameters<firebase.auth.Auth['useEmulator']>;\nexport const USE_EMULATOR = new InjectionToken<UseEmulatorArguments>('angularfire2.auth.use-emulator');\n\nexport const SETTINGS = new InjectionToken<firebase.auth.AuthSettings>('angularfire2.auth.settings');\nexport const TENANT_ID = new InjectionToken<string>('angularfire2.auth.tenant-id');\nexport const LANGUAGE_CODE = new InjectionToken<string>('angularfire2.auth.langugage-code');\nexport const USE_DEVICE_LANGUAGE = new InjectionToken<boolean>('angularfire2.auth.use-device-language');\nexport const PERSISTENCE = new InjectionToken<string>('angularfire.auth.persistence');\n\nexport const ɵauthFactory = (\n app: FirebaseApp, zone: NgZone, useEmulator: UseEmulatorArguments|null,\n tenantId: string, languageCode: string|null, useDeviceLanguage: boolean|null,\n settings: firebase.auth.AuthSettings|null, persistence: string|null,\n) => ɵcacheInstance(`${app.name}.auth`, 'AngularFireAuth', app.name, () => {\n const auth = zone.runOutsideAngular(() => app.auth());\n if (useEmulator) {\n auth.useEmulator(...useEmulator);\n }\n if (tenantId) {\n auth.tenantId = tenantId;\n }\n auth.languageCode = languageCode;\n if (useDeviceLanguage) {\n auth.useDeviceLanguage();\n }\n if (settings) {\n for (const [k, v] of Object.entries(settings)) {\n auth.settings[k] = v;\n }\n }\n if (persistence) {\n auth.setPersistence(persistence);\n }\n return auth;\n}, [useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence]);\n\n@Injectable({\n providedIn: 'any'\n})\nexport class AngularFireAuth {\n\n /**\n * Observable of authentication state; as of Firebase 4.0 this is only triggered via sign-in/out\n */\n public readonly authState: Observable<firebase.User|null>;\n\n /**\n * Observable of the currently signed-in user's JWT token used to identify the user to a Firebase service (or null).\n */\n public readonly idToken: Observable<string|null>;\n\n /**\n * Observable of the currently signed-in user (or null).\n */\n public readonly user: Observable<firebase.User|null>;\n\n /**\n * Observable of the currently signed-in user's IdTokenResult object which contains the ID token JWT string and other\n * helper properties for getting different data associated with the token as well as all the decoded payload claims\n * (or null).\n */\n public readonly idTokenResult: Observable<firebase.auth.IdTokenResult|null>;\n\n /**\n * Observable of the currently signed-in user's credential, or null\n */\n public readonly credential: Observable<Required<firebase.auth.UserCredential>|null>;\n\n constructor(\n @Inject(FIREBASE_OPTIONS) options: FirebaseOptions,\n @Optional() @Inject(FIREBASE_APP_NAME) name: string|null|undefined,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) platformId: Object,\n zone: NgZone,\n schedulers: ɵAngularFireSchedulers,\n @Optional() @Inject(USE_EMULATOR) useEmulator: any, // can't use the tuple here\n @Optional() @Inject(SETTINGS) settings: any, // can't use firebase.auth.AuthSettings here\n @Optional() @Inject(TENANT_ID) tenantId: string | null,\n @Optional() @Inject(LANGUAGE_CODE) languageCode: string | null,\n @Optional() @Inject(USE_DEVICE_LANGUAGE) useDeviceLanguage: boolean | null,\n @Optional() @Inject(PERSISTENCE) persistence: string | null,\n @Optional() _appCheckInstances: AppCheckInstances,\n ) {\n const logins = new Subject<Required<firebase.auth.UserCredential>>();\n\n const auth = of(undefined).pipe(\n observeOn(schedulers.outsideAngular),\n switchMap(() => zone.runOutsideAngular(() => import('firebase/compat/auth'))),\n map(() => ɵfirebaseAppFactory(options, zone, name)),\n map(app => ɵauthFactory(app, zone, useEmulator, tenantId, languageCode, useDeviceLanguage, settings, persistence)),\n shareReplay({ bufferSize: 1, refCount: false }),\n );\n\n if (isPlatformServer(platformId)) {\n\n this.authState = this.user = this.idToken = this.idTokenResult = this.credential = of(null);\n\n } else {\n\n // HACK, as we're exporting auth.Auth, rather than auth, developers importing firebase.auth\n // (e.g, `import { auth } from 'firebase/compat/app'`) are getting an undefined auth object unexpectedly\n // as we're completely lazy. Let's eagerly load the Auth SDK here.\n // There could potentially be race conditions still... but this greatly decreases the odds while\n // we reevaluate the API.\n auth.pipe(first()).subscribe();\n\n const redirectResult = auth.pipe(\n switchMap(auth => auth.getRedirectResult().then(it => it, () => null)),\n keepUnstableUntilFirst,\n shareReplay({ bufferSize: 1, refCount: false }),\n );\n\n const authStateChanged = auth.pipe(\n switchMap(auth => new Observable<firebase.User|null>(sub =>\n ({ unsubscribe: zone.runOutsideAngular(() => auth.onAuthStateChanged(\n next => sub.next(next),\n err => sub.error(err),\n () => sub.complete()\n ))})\n )),\n );\n\n const idTokenChanged = auth.pipe(\n switchMap(auth => new Observable<firebase.User|null>(sub =>\n ({ unsubscribe: zone.runOutsideAngular(() => auth.onIdTokenChanged(\n next => sub.next(next),\n err => sub.error(err),\n () => sub.complete()\n ))})\n ))\n );\n\n this.authState = redirectResult.pipe(\n switchMapTo(authStateChanged),\n subscribeOn(schedulers.outsideAngular),\n observeOn(schedulers.insideAngular),\n );\n\n this.user = redirectResult.pipe(\n switchMapTo(idTokenChanged),\n subscribeOn(schedulers.outsideAngular),\n observeOn(schedulers.insideAngular),\n );\n\n this.idToken = this.user.pipe(\n switchMap(user => user ? from(user.getIdToken()) : of(null))\n );\n\n this.idTokenResult = this.user.pipe(\n switchMap(user => user ? from(user.getIdTokenResult()) : of(null))\n );\n\n this.credential = merge(\n redirectResult,\n logins,\n // pipe in null authState to make credential zipable, just a weird devexp if\n // authState and user go null to still have a credential\n this.authState.pipe(filter(it => !it))\n ).pipe(\n // handle the { user: { } } when a user is already logged in, rather have null\n // TODO handle the type corcersion better\n map(credential => credential?.user ? credential as Required<firebase.auth.UserCredential> : null),\n subscribeOn(schedulers.outsideAngular),\n observeOn(schedulers.insideAngular),\n );\n\n }\n\n return ɵlazySDKProxy(this, auth, zone, { spy: {\n apply: (name, _, val) => {\n // If they call a signIn or createUser function listen into the promise\n // this will give us the user credential, push onto the logins Subject\n // to be consumed in .credential\n if (name.startsWith('signIn') || name.startsWith('createUser')) {\n // TODO fix the types, the trouble is UserCredential has everything optional\n val.then((user: firebase.auth.UserCredential) => logins.next(user as any));\n }\n }\n }});\n\n }\n\n}\n\nɵapplyMixins(AngularFireAuth, [proxyPolyfillCompat]);\n","import { NgModule } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { AngularFireAuth } from './auth';\n\n@NgModule({\n providers: [ AngularFireAuth ]\n})\nexport class AngularFireAuthModule {\n constructor() {\n firebase.registerVersion('angularfire', VERSION.full, 'auth-compat');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|