UNPKG

@angular/fire

Version:

The official library for Firebase and Angular

86 lines 8.79 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Inject, Injectable, InjectionToken, NgZone, Optional } from '@angular/core'; import { from, of } from 'rxjs'; import { map, observeOn, shareReplay, switchMap, tap } from 'rxjs/operators'; import { FIREBASE_APP_NAME, FIREBASE_OPTIONS, ɵAngularFireSchedulers, ɵfirebaseAppFactory, ɵlazySDKProxy } from '@angular/fire'; import * as i0 from "@angular/core"; import * as i1 from "@angular/fire"; /** @type {?} */ export const ORIGIN = new InjectionToken('angularfire2.functions.origin'); /** @type {?} */ export const REGION = new InjectionToken('angularfire2.functions.region'); // WARNING: interface has both a type and a value, skipping emit export class AngularFireFunctions { /** * @param {?} options * @param {?} nameOrConfig * @param {?} zone * @param {?} region * @param {?} origin */ constructor(options, nameOrConfig, zone, region, origin) { /** @type {?} */ const schedulers = new ɵAngularFireSchedulers(zone); /** @type {?} */ const functions = of(undefined).pipe(observeOn(schedulers.outsideAngular), switchMap((/** * @return {?} */ () => import('firebase/functions'))), map((/** * @return {?} */ () => ɵfirebaseAppFactory(options, zone, nameOrConfig))), map((/** * @param {?} app * @return {?} */ app => app.functions(region || undefined))), tap((/** * @param {?} functions * @return {?} */ functions => { if (origin) { functions.useFunctionsEmulator(origin); } })), shareReplay({ bufferSize: 1, refCount: false })); this.httpsCallable = (/** * @template T, R * @param {?} name * @return {?} */ (name) => (/** * @param {?} data * @return {?} */ (data) => from(functions).pipe(observeOn(schedulers.outsideAngular), switchMap((/** * @param {?} functions * @return {?} */ functions => functions.httpsCallable(name)(data))), map((/** * @param {?} r * @return {?} */ r => (/** @type {?} */ (r.data))))))); return ɵlazySDKProxy(this, functions, zone); } } AngularFireFunctions.decorators = [ { type: Injectable, args: [{ providedIn: 'any' },] } ]; /** @nocollapse */ AngularFireFunctions.ctorParameters = () => [ { type: undefined, decorators: [{ type: Inject, args: [FIREBASE_OPTIONS,] }] }, { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [FIREBASE_APP_NAME,] }] }, { type: NgZone }, { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [REGION,] }] }, { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [ORIGIN,] }] } ]; /** @nocollapse */ AngularFireFunctions.ɵprov = i0.ɵɵdefineInjectable({ factory: function AngularFireFunctions_Factory() { return new AngularFireFunctions(i0.ɵɵinject(i1.FIREBASE_OPTIONS), i0.ɵɵinject(i1.FIREBASE_APP_NAME, 8), i0.ɵɵinject(i0.NgZone), i0.ɵɵinject(REGION, 8), i0.ɵɵinject(ORIGIN, 8)); }, token: AngularFireFunctions, providedIn: "any" }); if (false) { /** @type {?} */ AngularFireFunctions.prototype.httpsCallable; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Z1bmN0aW9ucy9mdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFHaEIsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUNuQixhQUFhLEVBRWQsTUFBTSxlQUFlLENBQUM7Ozs7QUFHdkIsTUFBTSxPQUFPLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUywrQkFBK0IsQ0FBQzs7QUFDakYsTUFBTSxPQUFPLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUywrQkFBK0IsQ0FBQzs7QUFTakYsTUFBTSxPQUFPLG9CQUFvQjs7Ozs7Ozs7SUFJL0IsWUFDNEIsT0FBd0IsRUFDWCxZQUEyRCxFQUNsRyxJQUFZLEVBQ2dCLE1BQXFCLEVBQ3JCLE1BQXFCOztjQUUzQyxVQUFVLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxJQUFJLENBQUM7O2NBRTdDLFNBQVMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNsQyxTQUFTLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUNwQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsRUFBQyxFQUM3QyxHQUFHOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFDLEVBQzNELEdBQUc7Ozs7UUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxFQUFDLEVBQzlDLEdBQUc7Ozs7UUFBQyxTQUFTLENBQUMsRUFBRTtZQUNkLElBQUksTUFBTSxFQUFFO2dCQUNWLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN4QztRQUNILENBQUMsRUFBQyxFQUNGLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQ2hEO1FBRUQsSUFBSSxDQUFDLGFBQWE7Ozs7O1FBQUcsQ0FBbUIsSUFBWSxFQUFFLEVBQUU7Ozs7UUFDdEQsQ0FBQyxJQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQy9CLFNBQVMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQ3BDLFNBQVM7Ozs7UUFBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUMsRUFDM0QsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsbUJBQUEsQ0FBQyxDQUFDLElBQUksRUFBSyxFQUFDLENBQ3RCLENBQUEsQ0FBQSxDQUFDO1FBRUosT0FBTyxhQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUU5QyxDQUFDOzs7WUF0Q0YsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxLQUFLO2FBQ2xCOzs7OzRDQU1JLE1BQU0sU0FBQyxnQkFBZ0I7NENBQ3ZCLFFBQVEsWUFBSSxNQUFNLFNBQUMsaUJBQWlCO1lBL0JJLE1BQU07NENBaUM5QyxRQUFRLFlBQUksTUFBTSxTQUFDLE1BQU07NENBQ3pCLFFBQVEsWUFBSSxNQUFNLFNBQUMsTUFBTTs7Ozs7SUFQNUIsNkNBQThGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgTmdab25lLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgb2JzZXJ2ZU9uLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBGSVJFQkFTRV9BUFBfTkFNRSxcbiAgRklSRUJBU0VfT1BUSU9OUyxcbiAgRmlyZWJhc2VBcHBDb25maWcsXG4gIEZpcmViYXNlT3B0aW9ucyxcbiAgybVBbmd1bGFyRmlyZVNjaGVkdWxlcnMsXG4gIMm1ZmlyZWJhc2VBcHBGYWN0b3J5LFxuICDJtWxhenlTREtQcm94eSxcbiAgybVQcm9taXNlUHJveHlcbn0gZnJvbSAnQGFuZ3VsYXIvZmlyZSc7XG5pbXBvcnQgeyBmdW5jdGlvbnMgfSBmcm9tICdmaXJlYmFzZS9hcHAnO1xuXG5leHBvcnQgY29uc3QgT1JJR0lOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ2FuZ3VsYXJmaXJlMi5mdW5jdGlvbnMub3JpZ2luJyk7XG5leHBvcnQgY29uc3QgUkVHSU9OID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ2FuZ3VsYXJmaXJlMi5mdW5jdGlvbnMucmVnaW9uJyk7XG5cbi8vIG92ZXJyaWRlIGh0dHBzQ2FsbGFibGUgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCA1LnhcbmV4cG9ydCBpbnRlcmZhY2UgQW5ndWxhckZpcmVGdW5jdGlvbnMgZXh0ZW5kcyBPbWl0PMm1UHJvbWlzZVByb3h5PGZ1bmN0aW9ucy5GdW5jdGlvbnM+LCAnaHR0cHNDYWxsYWJsZSc+IHtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAnYW55J1xufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRmlyZUZ1bmN0aW9ucyB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGh0dHBzQ2FsbGFibGU6IDxUID0gYW55LCBSID0gYW55PihuYW1lOiBzdHJpbmcpID0+IChkYXRhOiBUKSA9PiBPYnNlcnZhYmxlPFI+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRklSRUJBU0VfT1BUSU9OUykgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRklSRUJBU0VfQVBQX05BTUUpIG5hbWVPckNvbmZpZzogc3RyaW5nIHwgRmlyZWJhc2VBcHBDb25maWcgfCBudWxsIHwgdW5kZWZpbmVkLFxuICAgIHpvbmU6IE5nWm9uZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFJFR0lPTikgcmVnaW9uOiBzdHJpbmcgfCBudWxsLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoT1JJR0lOKSBvcmlnaW46IHN0cmluZyB8IG51bGxcbiAgKSB7XG4gICAgY29uc3Qgc2NoZWR1bGVycyA9IG5ldyDJtUFuZ3VsYXJGaXJlU2NoZWR1bGVycyh6b25lKTtcblxuICAgIGNvbnN0IGZ1bmN0aW9ucyA9IG9mKHVuZGVmaW5lZCkucGlwZShcbiAgICAgIG9ic2VydmVPbihzY2hlZHVsZXJzLm91dHNpZGVBbmd1bGFyKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBpbXBvcnQoJ2ZpcmViYXNlL2Z1bmN0aW9ucycpKSxcbiAgICAgIG1hcCgoKSA9PiDJtWZpcmViYXNlQXBwRmFjdG9yeShvcHRpb25zLCB6b25lLCBuYW1lT3JDb25maWcpKSxcbiAgICAgIG1hcChhcHAgPT4gYXBwLmZ1bmN0aW9ucyhyZWdpb24gfHwgdW5kZWZpbmVkKSksXG4gICAgICB0YXAoZnVuY3Rpb25zID0+IHtcbiAgICAgICAgaWYgKG9yaWdpbikge1xuICAgICAgICAgIGZ1bmN0aW9ucy51c2VGdW5jdGlvbnNFbXVsYXRvcihvcmlnaW4pO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IGZhbHNlIH0pXG4gICAgKTtcblxuICAgIHRoaXMuaHR0cHNDYWxsYWJsZSA9IDxUID0gYW55LCBSID0gYW55PihuYW1lOiBzdHJpbmcpID0+XG4gICAgICAoZGF0YTogVCkgPT4gZnJvbShmdW5jdGlvbnMpLnBpcGUoXG4gICAgICAgIG9ic2VydmVPbihzY2hlZHVsZXJzLm91dHNpZGVBbmd1bGFyKSxcbiAgICAgICAgc3dpdGNoTWFwKGZ1bmN0aW9ucyA9PiBmdW5jdGlvbnMuaHR0cHNDYWxsYWJsZShuYW1lKShkYXRhKSksXG4gICAgICAgIG1hcChyID0+IHIuZGF0YSBhcyBSKVxuICAgICAgKTtcblxuICAgIHJldHVybiDJtWxhenlTREtQcm94eSh0aGlzLCBmdW5jdGlvbnMsIHpvbmUpO1xuXG4gIH1cblxufVxuIl19