93 lines
10 KiB
JavaScript
93 lines
10 KiB
JavaScript
|
import { NgModule, Optional, NgZone, InjectionToken, APP_INITIALIZER, Injector } from '@angular/core';
|
||
|
import { ɵgetDefaultInstanceOf, ɵAngularFireSchedulers, VERSION, ɵisAnalyticsSupportedFactory } from '@angular/fire';
|
||
|
import { Analytics, ANALYTICS_PROVIDER_NAME, AnalyticsInstances } from './analytics';
|
||
|
import { FirebaseApps, FirebaseApp } from '@angular/fire/app';
|
||
|
import { registerVersion } from 'firebase/app';
|
||
|
import { ScreenTrackingService } from './screen-tracking.service';
|
||
|
import { UserTrackingService } from './user-tracking.service';
|
||
|
import * as i0 from "@angular/core";
|
||
|
import * as i1 from "./screen-tracking.service";
|
||
|
import * as i2 from "./user-tracking.service";
|
||
|
export const PROVIDED_ANALYTICS_INSTANCES = new InjectionToken('angularfire2.analytics-instances');
|
||
|
export function defaultAnalyticsInstanceFactory(provided, defaultApp) {
|
||
|
if (!ɵisAnalyticsSupportedFactory.sync()) {
|
||
|
return null;
|
||
|
}
|
||
|
const defaultAnalytics = ɵgetDefaultInstanceOf(ANALYTICS_PROVIDER_NAME, provided, defaultApp);
|
||
|
return defaultAnalytics && new Analytics(defaultAnalytics);
|
||
|
}
|
||
|
export function analyticsInstanceFactory(fn) {
|
||
|
return (zone, injector) => {
|
||
|
if (!ɵisAnalyticsSupportedFactory.sync()) {
|
||
|
return null;
|
||
|
}
|
||
|
const analytics = zone.runOutsideAngular(() => fn(injector));
|
||
|
return new Analytics(analytics);
|
||
|
};
|
||
|
}
|
||
|
const ANALYTICS_INSTANCES_PROVIDER = {
|
||
|
provide: AnalyticsInstances,
|
||
|
deps: [
|
||
|
[new Optional(), PROVIDED_ANALYTICS_INSTANCES],
|
||
|
]
|
||
|
};
|
||
|
const DEFAULT_ANALYTICS_INSTANCE_PROVIDER = {
|
||
|
provide: Analytics,
|
||
|
useFactory: defaultAnalyticsInstanceFactory,
|
||
|
deps: [
|
||
|
[new Optional(), PROVIDED_ANALYTICS_INSTANCES],
|
||
|
FirebaseApp,
|
||
|
]
|
||
|
};
|
||
|
export class AnalyticsModule {
|
||
|
constructor(_screenTrackingService, _userTrackingService) {
|
||
|
registerVersion('angularfire', VERSION.full, 'analytics');
|
||
|
}
|
||
|
}
|
||
|
AnalyticsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, deps: [{ token: i1.ScreenTrackingService, optional: true }, { token: i2.UserTrackingService, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
|
||
|
AnalyticsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule });
|
||
|
AnalyticsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, providers: [
|
||
|
DEFAULT_ANALYTICS_INSTANCE_PROVIDER,
|
||
|
ANALYTICS_INSTANCES_PROVIDER,
|
||
|
{
|
||
|
provide: APP_INITIALIZER,
|
||
|
useValue: ɵisAnalyticsSupportedFactory.async,
|
||
|
multi: true,
|
||
|
}
|
||
|
] });
|
||
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.3", ngImport: i0, type: AnalyticsModule, decorators: [{
|
||
|
type: NgModule,
|
||
|
args: [{
|
||
|
providers: [
|
||
|
DEFAULT_ANALYTICS_INSTANCE_PROVIDER,
|
||
|
ANALYTICS_INSTANCES_PROVIDER,
|
||
|
{
|
||
|
provide: APP_INITIALIZER,
|
||
|
useValue: ɵisAnalyticsSupportedFactory.async,
|
||
|
multi: true,
|
||
|
}
|
||
|
]
|
||
|
}]
|
||
|
}], ctorParameters: function () { return [{ type: i1.ScreenTrackingService, decorators: [{
|
||
|
type: Optional
|
||
|
}] }, { type: i2.UserTrackingService, decorators: [{
|
||
|
type: Optional
|
||
|
}] }]; } });
|
||
|
export function provideAnalytics(fn, ...deps) {
|
||
|
return {
|
||
|
ngModule: AnalyticsModule,
|
||
|
providers: [{
|
||
|
provide: PROVIDED_ANALYTICS_INSTANCES,
|
||
|
useFactory: analyticsInstanceFactory(fn),
|
||
|
multi: true,
|
||
|
deps: [
|
||
|
NgZone,
|
||
|
Injector,
|
||
|
ɵAngularFireSchedulers,
|
||
|
FirebaseApps,
|
||
|
...deps,
|
||
|
]
|
||
|
}]
|
||
|
};
|
||
|
}
|
||
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hbmFseXRpY3MvYW5hbHl0aWNzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUF1QixlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNILE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckgsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFFOUQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENBQWMsa0NBQWtDLENBQUMsQ0FBQztBQUVoSCxNQUFNLFVBQVUsK0JBQStCLENBQUMsUUFBdUMsRUFBRSxVQUF1QjtJQUM5RyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFBRSxPQUFPLElBQUksQ0FBQztLQUFFO0lBQzFELE1BQU0sZ0JBQWdCLEdBQUcscUJBQXFCLENBQW9CLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNqSCxPQUFPLGdCQUFnQixJQUFJLElBQUksU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDN0QsQ0FBQztBQUVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxFQUE2QztJQUNwRixPQUFPLENBQUMsSUFBWSxFQUFFLFFBQWtCLEVBQUUsRUFBRTtRQUMxQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQztTQUFFO1FBQzFELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLDRCQUE0QixHQUFHO0lBQ25DLE9BQU8sRUFBRSxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFO1FBQ0osQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLDRCQUE0QixDQUFFO0tBQ2hEO0NBQ0YsQ0FBQztBQUVGLE1BQU0sbUNBQW1DLEdBQUc7SUFDMUMsT0FBTyxFQUFFLFNBQVM7SUFDbEIsVUFBVSxFQUFFLCtCQUErQjtJQUMzQyxJQUFJLEVBQUU7UUFDSixDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsNEJBQTRCLENBQUU7UUFDL0MsV0FBVztLQUNaO0NBQ0YsQ0FBQztBQWFGLE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQ2Msc0JBQTZDLEVBQzdDLG9CQUF5QztRQUVyRCxlQUFlLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7NEdBTlUsZUFBZTs2R0FBZixlQUFlOzZHQUFmLGVBQWUsYUFWZjtRQUNULG1DQUFtQztRQUNuQyw0QkFBNEI7UUFDNUI7WUFDRSxPQUFPLEVBQUUsZUFBZTtZQUN4QixRQUFRLEVBQUUsNEJBQTRCLENBQUMsS0FBSztZQUM1QyxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0Y7MkZBRVUsZUFBZTtrQkFYM0IsUUFBUTttQkFBQztvQkFDUixTQUFTLEVBQUU7d0JBQ1QsbUNBQW1DO3dCQUNuQyw0QkFBNEI7d0JBQzVCOzRCQUNFLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsNEJBQTRCLENBQUMsS0FBSzs0QkFDNUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0Y7OzBCQUdJLFFBQVE7OzBCQUNSLFFBQVE7O0FBTWIsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQTZDLEVBQUUsR0FBRyxJQUFXO0lBQzVGLE9BQU87UUFDTCxRQUFRLEVBQUUsZUFBZTtRQUN6QixTQUFTLEVBQUUsQ0FBQztnQkFDVixPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxVQUFVLEVBQUUsd0JBQXdCLENBQUMsRUFBRSxDQUFDO2dCQUN4QyxLQUFLLEVBQUUsSUFBSTtnQkFDWCxJQUFJLEVBQUU7b0JBQ0osTUFBTTtvQkFDTixRQUFRO29CQUNSLHNCQUFzQjtvQkFDdEIsWUFBWTtvQkFDWixHQUFHLElBQUk7aUJBQ1I7YUFDRixDQUFDO0tBQ0gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgT3B0aW9uYWwsIE5nWm9uZSwgSW5qZWN0aW9uVG9rZW4sIE1vZHVsZVdpdGhQcm92aWRlcnMsIEFQUF9JTklUSUFMSVpFUiwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuYWx5dGljcyBhcyBGaXJlYmFzZUFuYWx5dGljcyB9IGZyb20gJ2ZpcmViYXNlL2FuYWx5dGljcyc7XG5pbXBvcnQgeyDJtWdldERlZmF1bHRJbnN0YW5jZU9mLCDJtUFuZ3VsYXJGaXJlU2NoZWR1bGVycywgVkVSU0lPTiwgybVpc0FuYWx5dGljc1N1cHBvcnRlZEZhY3RvcnkgfSBmcm9tICdAYW5ndWxhci9maXJlJztcbmltcG9ydCB7IEFuYWx5dGljcywgQU5BTFlUSUNTX1BST1ZJREVSX05BTUUsIEFuYWx5dGljc0luc3RhbmNlcyB9IGZyb20gJy4vYW5hbHl0aWNzJztcbmltcG9ydCB7IEZpcmViYXNlQXBwcywgRmlyZWJhc2VBcHAgfSBmcm9tICdAYW5ndWxhci9maXJlL2FwcCc7XG5pbXBvcnQgeyByZWdpc3RlclZlcnNpb24gfSBmcm9tICdmaXJlYmFzZS9hcHAnO1xuaW1wb3J0IHsgU2NyZWVuVHJhY2tpbmdTZXJ2aWNlIH0gZnJvbSAnLi9zY3JlZW4tdHJhY2tpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyVHJhY2tpbmdTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLXRyYWNraW5nLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgUFJPVklERURfQU5BTFlUSUNTX0lOU1RBTkNFUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBbmFseXRpY3NbXT4oJ2FuZ3VsYXJmaXJlMi5hbmFseXRpY3MtaW5zdGFuY2VzJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0QW5hb
|