UNPKG

6.5 kBSource Map (JSON)View Raw
1{"version":3,"file":"angular-fire-functions.js","sources":["../../../src/functions/functions.ts","../../../src/functions/functions.module.ts","../../../src/functions/rxfire.ts","../../../src/functions/firebase.ts","../../../src/functions/angular-fire-functions.ts"],"sourcesContent":["import { Functions as FirebaseFunctions } from 'firebase/functions';\nimport { ɵgetAllInstancesOf } from '@angular/fire';\nimport { from, timer } from 'rxjs';\nimport { concatMap, distinct } from 'rxjs/operators';\n\n// see notes in core/firebase.app.module.ts for why we're building the class like this\n// tslint:disable-next-line:no-empty-interface\nexport interface Functions extends FirebaseFunctions {}\n\nexport class Functions {\n constructor(functions: FirebaseFunctions) {\n return functions;\n }\n}\n\nexport const FUNCTIONS_PROVIDER_NAME = 'functions';\n\n// tslint:disable-next-line:no-empty-interface\nexport interface FunctionsInstances extends Array<FirebaseFunctions> {}\n\nexport class FunctionsInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseFunctions>(FUNCTIONS_PROVIDER_NAME);\n }\n}\n\nexport const functionInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseFunctions>(FUNCTIONS_PROVIDER_NAME))),\n distinct(),\n);\n","import { NgModule, Optional, NgZone, InjectionToken, ModuleWithProviders, Injector } from '@angular/core';\nimport { Functions as FirebaseFunctions } from 'firebase/functions';\nimport { ɵgetDefaultInstanceOf, ɵAngularFireSchedulers, VERSION } from '@angular/fire';\nimport { Functions, FunctionsInstances, FUNCTIONS_PROVIDER_NAME } from './functions';\nimport { FirebaseApps, FirebaseApp } from '@angular/fire/app';\nimport { AuthInstances } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { AppCheckInstances } from '@angular/fire/app-check';\n\nexport const PROVIDED_FUNCTIONS_INSTANCES = new InjectionToken<Functions[]>('angularfire2.functions-instances');\n\nexport function defaultFunctionsInstanceFactory(provided: FirebaseFunctions[]|undefined, defaultApp: FirebaseApp) {\n const defaultAuth = ɵgetDefaultInstanceOf<FirebaseFunctions>(FUNCTIONS_PROVIDER_NAME, provided, defaultApp);\n return defaultAuth && new Functions(defaultAuth);\n}\n\nexport function functionsInstanceFactory(fn: (injector: Injector) => FirebaseFunctions) {\n return (zone: NgZone, injector: Injector) => {\n const functions = zone.runOutsideAngular(() => fn(injector));\n return new Functions(functions);\n };\n}\n\nconst FUNCTIONS_INSTANCES_PROVIDER = {\n provide: FunctionsInstances,\n deps: [\n [new Optional(), PROVIDED_FUNCTIONS_INSTANCES ],\n ]\n};\n\nconst DEFAULT_FUNCTIONS_INSTANCE_PROVIDER = {\n provide: Functions,\n useFactory: defaultFunctionsInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_FUNCTIONS_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_FUNCTIONS_INSTANCE_PROVIDER,\n FUNCTIONS_INSTANCES_PROVIDER,\n ]\n})\nexport class FunctionsModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'fn');\n }\n}\n\nexport function provideFunctions(fn: () => FirebaseFunctions, ...deps: any[]): ModuleWithProviders<FunctionsModule> {\n return {\n ngModule: FunctionsModule,\n providers: [{\n provide: PROVIDED_FUNCTIONS_INSTANCES,\n useFactory: functionsInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n // Defensively load Auth first, if provided\n [new Optional(), AuthInstances ],\n [new Optional(), AppCheckInstances ],\n ...deps,\n ]\n }]\n };\n}\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n httpsCallable as _httpsCallable\n} from 'rxfire/functions';\n\nexport const httpsCallableData = ɵzoneWrap(_httpsCallable, true);\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/functions';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n connectFunctionsEmulator as _connectFunctionsEmulator,\n getFunctions as _getFunctions,\n httpsCallable as _httpsCallable\n} from 'firebase/functions';\n\nexport const connectFunctionsEmulator = ɵzoneWrap(_connectFunctionsEmulator, true);\nexport const getFunctions = ɵzoneWrap(_getFunctions, true);\nexport const httpsCallable = ɵzoneWrap(_httpsCallable, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["_httpsCallable","_connectFunctionsEmulator","_getFunctions"],"mappings":";;;;;;;;;;;;;MASa,SAAS;IACpB,YAAY,SAA4B;QACtC,OAAO,SAAS,CAAC;KAClB;CACF;AAEM,MAAM,uBAAuB,GAAG,WAAW,CAAC;MAKtC,kBAAkB;IAC7B;QACE,OAAO,kBAAkB,CAAoB,uBAAuB,CAAC,CAAC;KACvE;CACF;MAEY,iBAAiB,GAAG,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CACjD,SAAS,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAoB,uBAAuB,CAAC,CAAC,CAAC,EACrF,QAAQ,EAAE;;ACnBL,MAAM,4BAA4B,GAAG,IAAI,cAAc,CAAc,kCAAkC,CAAC,CAAC;SAEhG,+BAA+B,CAAC,QAAuC,EAAE,UAAuB;IAC9G,MAAM,WAAW,GAAG,qBAAqB,CAAoB,uBAAuB,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC5G,OAAO,WAAW,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;AACnD,CAAC;SAEe,wBAAwB,CAAC,EAA6C;IACpF,OAAO,CAAC,IAAY,EAAE,QAAkB;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7D,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,4BAA4B,GAAG;IACnC,OAAO,EAAE,kBAAkB;IAC3B,IAAI,EAAE;QACJ,CAAC,IAAI,QAAQ,EAAE,EAAE,4BAA4B,CAAE;KAChD;CACF,CAAC;AAEF,MAAM,mCAAmC,GAAG;IAC1C,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,+BAA+B;IAC3C,IAAI,EAAE;QACJ,CAAC,IAAI,QAAQ,EAAE,EAAE,4BAA4B,CAAE;QAC/C,WAAW;KACZ;CACF,CAAC;MAQW,eAAe;IAC1B;QACE,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KACpD;;4GAHU,eAAe;6GAAf,eAAe;6GAAf,eAAe,aALf;QACT,mCAAmC;QACnC,4BAA4B;KAC7B;2FAEU,eAAe;kBAN3B,QAAQ;mBAAC;oBACR,SAAS,EAAE;wBACT,mCAAmC;wBACnC,4BAA4B;qBAC7B;iBACF;;SAOe,gBAAgB,CAAC,EAA2B,EAAE,GAAG,IAAW;IAC1E,OAAO;QACL,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,CAAC;gBACV,OAAO,EAAE,4BAA4B;gBACrC,UAAU,EAAE,wBAAwB,CAAC,EAAE,CAAC;gBACxC,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE;oBACJ,MAAM;oBACN,QAAQ;oBACR,sBAAsB;oBACtB,YAAY;;oBAEZ,CAAC,IAAI,QAAQ,EAAE,EAAE,aAAa,CAAE;oBAChC,CAAC,IAAI,QAAQ,EAAE,EAAE,iBAAiB,CAAE;oBACpC,GAAG,IAAI;iBACR;aACF,CAAC;KACH,CAAC;AACJ;;ACtEA;MAMa,iBAAiB,GAAG,SAAS,CAACA,eAAc,EAAE,IAAI;;ACN/D;MASa,wBAAwB,GAAG,SAAS,CAACC,0BAAyB,EAAE,IAAI,EAAE;MACtE,YAAY,GAAG,SAAS,CAACC,cAAa,EAAE,IAAI,EAAE;MAC9C,aAAa,GAAG,SAAS,CAACF,eAAc,EAAE,IAAI;;ACX3D;;;;;;"}
\No newline at end of file