@angular/fire 18.0.1-canary.831ab69 → 18.0.1-canary.a4faa10
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/analytics/firebase.d.ts +2 -2
- package/auth/rxfire.d.ts +2 -2
- package/database/rxfire.d.ts +4 -4
- package/docs/install-and-setup.md +10 -5
- package/esm2022/analytics/firebase.mjs +3 -3
- package/esm2022/auth/rxfire.mjs +3 -3
- package/esm2022/compat/firestore/collection/changes.mjs +3 -3
- package/esm2022/database/rxfire.mjs +5 -5
- package/esm2022/firestore/lite/rxfire.mjs +5 -5
- package/esm2022/firestore/rxfire.mjs +8 -8
- package/esm2022/performance/rxfire.mjs +3 -3
- package/esm2022/remote-config/rxfire.mjs +6 -6
- package/esm2022/vertexai-preview/firebase.mjs +3 -3
- package/esm2022/zones.mjs +37 -57
- package/fesm2022/angular-fire-analytics.mjs +2 -2
- package/fesm2022/angular-fire-analytics.mjs.map +1 -1
- package/fesm2022/angular-fire-auth.mjs +2 -2
- package/fesm2022/angular-fire-auth.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-firestore.mjs +2 -2
- package/fesm2022/angular-fire-compat-firestore.mjs.map +1 -1
- package/fesm2022/angular-fire-database.mjs +4 -4
- package/fesm2022/angular-fire-database.mjs.map +1 -1
- package/fesm2022/angular-fire-firestore-lite.mjs +4 -4
- package/fesm2022/angular-fire-firestore-lite.mjs.map +1 -1
- package/fesm2022/angular-fire-firestore.mjs +7 -7
- package/fesm2022/angular-fire-firestore.mjs.map +1 -1
- package/fesm2022/angular-fire-performance.mjs +2 -2
- package/fesm2022/angular-fire-performance.mjs.map +1 -1
- package/fesm2022/angular-fire-remote-config.mjs +5 -5
- package/fesm2022/angular-fire-remote-config.mjs.map +1 -1
- package/fesm2022/angular-fire-vertexai-preview.mjs +2 -2
- package/fesm2022/angular-fire-vertexai-preview.mjs.map +1 -1
- package/fesm2022/angular-fire.mjs +35 -55
- package/fesm2022/angular-fire.mjs.map +1 -1
- package/firestore/lite/rxfire.d.ts +4 -4
- package/firestore/rxfire.d.ts +7 -7
- package/package.json +1 -1
- package/performance/rxfire.d.ts +2 -2
- package/publish.sh +1 -0
- package/remote-config/rxfire.d.ts +5 -5
- package/vertexai-preview/firebase.d.ts +2 -2
- package/zones.d.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-fire-compat-firestore.mjs","sources":["../../../src/compat/firestore/observable/fromRef.ts","../../../src/compat/firestore/document/document.ts","../../../src/compat/firestore/collection/changes.ts","../../../src/compat/firestore/collection/collection.ts","../../../src/compat/firestore/collection-group/collection-group.ts","../../../src/compat/firestore/firestore.ts","../../../src/compat/firestore/firestore.module.ts","../../../src/compat/firestore/angular-fire-compat-firestore.ts"],"sourcesContent":["import { Observable, SchedulerLike, asyncScheduler } from 'rxjs';\nimport { map, pairwise, startWith } from 'rxjs/operators';\nimport { Action, DocumentReference, DocumentSnapshot, Query, QuerySnapshot, Reference } from '../interfaces';\n\nfunction _fromRef<R>(ref: Reference, scheduler: SchedulerLike = asyncScheduler): Observable<R> {\n return new Observable(subscriber => {\n let unsubscribe: () => void;\n if (scheduler != null) {\n scheduler.schedule(() => {\n unsubscribe = ref.onSnapshot({ includeMetadataChanges: true }, subscriber);\n });\n } else {\n unsubscribe = ref.onSnapshot({ includeMetadataChanges: true }, subscriber);\n }\n\n return () => {\n if (unsubscribe != null) {\n unsubscribe();\n }\n };\n });\n}\n\nexport function fromRef<R, T>(ref: DocumentReference<T> | Query<T>, scheduler?: SchedulerLike) {\n return _fromRef<R>(ref, scheduler);\n}\n\nexport function fromDocRef<T>(ref: DocumentReference<T>, scheduler?: SchedulerLike): Observable<Action<DocumentSnapshot<T>>> {\n return fromRef<DocumentSnapshot<T>, T>(ref, scheduler)\n .pipe(\n startWith<DocumentSnapshot<T>, undefined>(undefined),\n pairwise(),\n map((snapshots: [DocumentSnapshot<T>, DocumentSnapshot<T>]) => {\n const [priorPayload, payload] = snapshots;\n if (!payload.exists) {\n return { payload, type: 'removed' };\n }\n if (!priorPayload?.exists) {\n return { payload, type: 'added' };\n }\n return { payload, type: 'modified' };\n })\n );\n}\n\nexport function fromCollectionRef<T>(ref: Query<T>, scheduler?: SchedulerLike): Observable<Action<QuerySnapshot<T>>> {\n return fromRef<QuerySnapshot<T>, T>(ref, scheduler).pipe(map(payload => ({ payload, type: 'query' })));\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AngularFirestoreCollection } from '../collection/collection';\nimport { AngularFirestore, associateQuery } from '../firestore';\nimport { Action, DocumentData, DocumentReference, DocumentSnapshot, QueryFn, SetOptions } from '../interfaces';\nimport { fromDocRef } from '../observable/fromRef';\n\n/**\n * AngularFirestoreDocument service\n *\n * This class creates a reference to a Firestore Document. A reference is provided in\n * in the constructor. The class is generic which gives you type safety for data update\n * methods and data streaming.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const fakeStock = new AngularFirestoreDocument<Stock>(doc('stocks/FAKE'));\n * await fakeStock.set({ name: 'FAKE', price: 0.01 });\n * fakeStock.valueChanges().map(snap => {\n * if(snap.exists) return snap.data();\n * return null;\n * }).subscribe(value => console.log(value));\n * // OR! Transform using Observable.from() and the data is unwrapped for you\n * Observable.from(fakeStock).subscribe(value => console.log(value));\n */\nexport class AngularFirestoreDocument<T = DocumentData> {\n\n /**\n * The constructor takes in a DocumentReference to provide wrapper methods\n * for data operations, data streaming, and Symbol.observable.\n */\n constructor(public ref: DocumentReference<T>, private afs: AngularFirestore) { }\n\n /**\n * Create or overwrite a single document.\n */\n set(data: T, options?: SetOptions): Promise<void> {\n return this.ref.set(data, options);\n }\n\n /**\n * Update some fields of a document without overwriting the entire document.\n */\n update(data: Partial<T>): Promise<void> {\n return this.ref.update(data);\n }\n\n /**\n * Delete a document.\n */\n delete(): Promise<void> {\n return this.ref.delete();\n }\n\n /**\n * Create a reference to a sub-collection given a path and an optional query\n * function.\n */\n collection<R = DocumentData>(path: string, queryFn?: QueryFn): AngularFirestoreCollection<R> {\n const collectionRef = this.ref.collection(path) as firebase.firestore.CollectionReference<R>;\n const { ref, query } = associateQuery(collectionRef, queryFn);\n return new AngularFirestoreCollection(ref, query, this.afs);\n }\n\n /**\n * Listen to snapshot updates from the document.\n */\n snapshotChanges(): Observable<Action<DocumentSnapshot<T>>> {\n const scheduledFromDocRef$ = fromDocRef<T>(this.ref, this.afs.schedulers.outsideAngular);\n return scheduledFromDocRef$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to unwrapped snapshot updates from the document.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(options?: unknown): Observable<T | undefined>;\n valueChanges<K extends string>(options: { idField: K }): Observable<(T & { [T in K]: string }) | undefined>;\n valueChanges<K extends string>(options: { idField?: K } = {}): Observable<T | undefined> {\n return this.snapshotChanges().pipe(\n map(({ payload }) =>\n options.idField ? {\n ...payload.data(),\n ...{ [options.idField]: payload.id }\n } as T & { [T in K]: string } : payload.data()\n )\n );\n }\n\n /**\n * Retrieve the document once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.ref.get(options)).pipe(\n keepUnstableUntilFirst,\n );\n }\n}\n","import firebase from 'firebase/compat/app';\nimport { Observable, SchedulerLike } from 'rxjs';\nimport { distinctUntilChanged, map, pairwise, scan, startWith } from 'rxjs/operators';\nimport { Action, DocumentChange, DocumentChangeAction, DocumentChangeType, Query, QuerySnapshot } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\n\n\ntype ActionTupe = [Action<QuerySnapshot<firebase.firestore.DocumentData>>, Action<QuerySnapshot<firebase.firestore.DocumentData>>]\n/**\n * Return a stream of document changes on a query. These results are not in sort order but in\n * order of occurence.\n */\nexport function docChanges<T>(query: Query, scheduler?: SchedulerLike): Observable<DocumentChangeAction<T>[]> {\n return fromCollectionRef(query, scheduler)\n .pipe(\n startWith<Action<QuerySnapshot<firebase.firestore.DocumentData>>, undefined>(undefined),\n pairwise(),\n map((actionTuple: ActionTupe) => {\n const [priorAction, action] = actionTuple;\n const docChanges = action.payload.docChanges();\n const actions = docChanges.map(change => ({ type: change.type, payload: change }));\n // the metadata has changed from the prior emission\n if (priorAction && JSON.stringify(priorAction.payload.metadata) !== JSON.stringify(action.payload.metadata)) {\n // go through all the docs in payload and figure out which ones changed\n action.payload.docs.forEach((currentDoc, currentIndex) => {\n const docChange = docChanges.find(d => d.doc.ref.isEqual(currentDoc.ref));\n const priorDoc = priorAction?.payload.docs.find(d => d.ref.isEqual(currentDoc.ref));\n if (docChange && JSON.stringify(docChange.doc.metadata) === JSON.stringify(currentDoc.metadata) ||\n !docChange && priorDoc && JSON.stringify(priorDoc.metadata) === JSON.stringify(currentDoc.metadata)) {\n // document doesn't appear to have changed, don't log another action\n } else {\n // since the actions are processed in order just push onto the array\n actions.push({\n type: 'modified',\n payload: {\n oldIndex: currentIndex,\n newIndex: currentIndex,\n type: 'modified',\n doc: currentDoc\n }\n });\n }\n });\n }\n return actions as DocumentChangeAction<T>[];\n }),\n );\n}\n\n/**\n * Return a stream of document changes on a query. These results are in sort order.\n */\nexport function sortedChanges<T>(\n query: Query,\n events: DocumentChangeType[],\n scheduler?: SchedulerLike): Observable<DocumentChangeAction<T>[]> {\n return docChanges<T>(query, scheduler)\n .pipe(\n scan((current, changes) => combineChanges<T>(current, changes.map(it => it.payload), events), []),\n distinctUntilChanged(), // cut down on unneed change cycles\n map(changes => changes.map(c => ({ type: c.type, payload: c } as DocumentChangeAction<T>))));\n}\n\n/**\n * Combines the total result set from the current set of changes from an incoming set\n * of changes.\n */\nexport function combineChanges<T>(current: DocumentChange<T>[], changes: DocumentChange<T>[], events: DocumentChangeType[]) {\n changes.forEach(change => {\n // skip unwanted change types\n if (events.indexOf(change.type) > -1) {\n current = combineChange(current, change);\n }\n });\n return current;\n}\n\n/**\n * Splice arguments on top of a sliced array, to break top-level ===\n * this is useful for change-detection\n */\nfunction sliceAndSplice<T>(\n original: T[],\n start: number,\n deleteCount: number,\n ...args: T[]\n): T[] {\n const returnArray = original.slice();\n returnArray.splice(start, deleteCount, ...args);\n return returnArray;\n}\n\n/**\n * Creates a new sorted array from a new change.\n * Build our own because we allow filtering of action types ('added', 'removed', 'modified') before scanning\n * and so we have greater control over change detection (by breaking ===)\n */\nexport function combineChange<T>(combined: DocumentChange<T>[], change: DocumentChange<T>): DocumentChange<T>[] {\n switch (change.type) {\n case 'added':\n if (combined[change.newIndex] && combined[change.newIndex].doc.ref.isEqual(change.doc.ref)) {\n // Not sure why the duplicates are getting fired\n } else {\n return sliceAndSplice(combined, change.newIndex, 0, change);\n }\n break;\n case 'modified':\n if (combined[change.oldIndex] == null || combined[change.oldIndex].doc.ref.isEqual(change.doc.ref)) {\n // When an item changes position we first remove it\n // and then add it's new position\n if (change.oldIndex !== change.newIndex) {\n const copiedArray = combined.slice();\n copiedArray.splice(change.oldIndex, 1);\n copiedArray.splice(change.newIndex, 0, change);\n return copiedArray;\n } else {\n return sliceAndSplice(combined, change.newIndex, 1, change);\n }\n }\n break;\n case 'removed':\n if (combined[change.oldIndex] && combined[change.oldIndex].doc.ref.isEqual(change.doc.ref)) {\n return sliceAndSplice(combined, change.oldIndex, 1);\n }\n break;\n }\n return combined;\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { filter, map, pairwise, scan, startWith } from 'rxjs/operators';\nimport { AngularFirestoreDocument } from '../document/document';\nimport { AngularFirestore } from '../firestore';\nimport { CollectionReference, DocumentChangeAction, DocumentChangeType, DocumentData, DocumentReference, Query } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\nimport { docChanges, sortedChanges } from './changes';\n\ntype DocumentChangeTuple<T> = [DocumentChangeAction<T>[], DocumentChangeAction<T>[]];\n\nexport function validateEventsArray(events?: DocumentChangeType[]) {\n if (!events || events.length === 0) {\n events = ['added', 'removed', 'modified'];\n }\n return events;\n}\n\n/**\n * AngularFirestoreCollection service\n *\n * This class creates a reference to a Firestore Collection. A reference and a query are provided in\n * in the constructor. The query can be the unqueried reference if no query is desired.The class\n * is generic which gives you type safety for data update methods and data streaming.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const collectionRef = firebase.firestore.collection('stocks');\n * const query = collectionRef.where('price', '>', '0.01');\n * const fakeStock = new AngularFirestoreCollection<Stock>(collectionRef, query);\n *\n * // NOTE!: the updates are performed on the reference not the query\n * await fakeStock.add({ name: 'FAKE', price: 0.01 });\n *\n * // Subscribe to changes as snapshots. This provides you data updates as well as delta updates.\n * fakeStock.valueChanges().subscribe(value => console.log(value));\n */\nexport class AngularFirestoreCollection<T = DocumentData> {\n /**\n * The constructor takes in a CollectionReference and Query to provide wrapper methods\n * for data operations and data streaming.\n *\n * Note: Data operation methods are done on the reference not the query. This means\n * when you update data it is not updating data to the window of your query unless\n * the data fits the criteria of the query. See the AssociatedRefence type for details\n * on this implication.\n */\n constructor(\n public readonly ref: CollectionReference<T>,\n private readonly query: Query<T>,\n private readonly afs: AngularFirestore) { }\n\n /**\n * Listen to the latest change in the stream. This method returns changes\n * as they occur and they are not sorted by query order. This allows you to construct\n * your own data structure.\n */\n stateChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n let source = docChanges<T>(this.query, this.afs.schedulers.outsideAngular);\n if (events && events.length > 0) {\n source = source.pipe(\n map(actions => actions.filter(change => events.indexOf(change.type) > -1))\n );\n }\n return source.pipe(\n // We want to filter out empty arrays, but always emit at first, so the developer knows\n // that the collection has been resolve; even if it's empty\n startWith<DocumentChangeAction<T>[], undefined>(undefined),\n pairwise(),\n filter(([prior, current]: DocumentChangeTuple<T>) => current.length > 0 || !prior),\n map(([, current]) => current),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Create a stream of changes as they occur it time. This method is similar to stateChanges()\n * but it collects each event in an array over time.\n */\n auditTrail(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n return this.stateChanges(events).pipe(scan((current, action) => [...current, ...action], []));\n }\n\n /**\n * Create a stream of synchronized changes. This method keeps the local array in sorted\n * query order.\n */\n snapshotChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n const validatedEvents = validateEventsArray(events);\n const scheduledSortedChanges$ = sortedChanges<T>(this.query, validatedEvents, this.afs.schedulers.outsideAngular);\n return scheduledSortedChanges$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to all documents in the collection and its possible query as an Observable.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(): Observable<T[]>;\n // eslint-disable-next-line no-empty-pattern\n valueChanges({}): Observable<T[]>;\n valueChanges<K extends string>(options: {idField: K}): Observable<(T & { [T in K]: string })[]>;\n valueChanges<K extends string>(options: {idField?: K} = {}): Observable<T[]> {\n return fromCollectionRef<T>(this.query, this.afs.schedulers.outsideAngular)\n .pipe(\n map(actions => actions.payload.docs.map(a => {\n if (options.idField) {\n return {\n ...a.data() as any,\n ...{ [options.idField]: a.id }\n } as T & { [T in K]: string };\n } else {\n return a.data();\n }\n })),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Retrieve the results of the query once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.query.get(options)).pipe(\n keepUnstableUntilFirst,\n );\n }\n\n /**\n * Add data to a collection reference.\n *\n * Note: Data operation methods are done on the reference not the query. This means\n * when you update data it is not updating data to the window of your query unless\n * the data fits the criteria of the query.\n */\n add(data: T): Promise<DocumentReference<T>> {\n return this.ref.add(data);\n }\n\n /**\n * Create a reference to a single document in a collection.\n */\n doc<T2 = T>(path?: string): AngularFirestoreDocument<T2> {\n // TODO is there a better way to solve this type issue\n return new AngularFirestoreDocument(this.ref.doc(path) as any, this.afs);\n }\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { filter, map, scan } from 'rxjs/operators';\nimport { docChanges, sortedChanges } from '../collection/changes';\nimport { validateEventsArray } from '../collection/collection';\nimport { AngularFirestore } from '../firestore';\nimport { DocumentChangeAction, DocumentChangeType, DocumentData, Query } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\n\n/**\n * AngularFirestoreCollectionGroup service\n *\n * This class holds a reference to a Firestore Collection Group Query.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const collectionGroup = firebase.firestore.collectionGroup('stocks');\n * const query = collectionRef.where('price', '>', '0.01');\n * const fakeStock = new AngularFirestoreCollectionGroup<Stock>(query, afs);\n *\n * // Subscribe to changes as snapshots. This provides you data updates as well as delta updates.\n * fakeStock.valueChanges().subscribe(value => console.log(value));\n */\nexport class AngularFirestoreCollectionGroup<T = DocumentData> {\n /**\n * The constructor takes in a CollectionGroupQuery to provide wrapper methods\n * for data operations and data streaming.\n */\n constructor(\n private readonly query: Query<T>,\n private readonly afs: AngularFirestore) { }\n\n /**\n * Listen to the latest change in the stream. This method returns changes\n * as they occur and they are not sorted by query order. This allows you to construct\n * your own data structure.\n */\n stateChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n if (!events || events.length === 0) {\n return docChanges<T>(this.query, this.afs.schedulers.outsideAngular).pipe(\n keepUnstableUntilFirst\n );\n }\n return docChanges<T>(this.query, this.afs.schedulers.outsideAngular)\n .pipe(\n map(actions => actions.filter(change => events.indexOf(change.type) > -1)),\n filter(changes => changes.length > 0),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Create a stream of changes as they occur it time. This method is similar to stateChanges()\n * but it collects each event in an array over time.\n */\n auditTrail(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n return this.stateChanges(events).pipe(scan((current, action) => [...current, ...action], []));\n }\n\n /**\n * Create a stream of synchronized changes. This method keeps the local array in sorted\n * query order.\n */\n snapshotChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n const validatedEvents = validateEventsArray(events);\n const scheduledSortedChanges$ = sortedChanges<T>(this.query, validatedEvents, this.afs.schedulers.outsideAngular);\n return scheduledSortedChanges$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to all documents in the collection and its possible query as an Observable.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(): Observable<T[]>;\n // eslint-disable-next-line no-empty-pattern\n valueChanges({}): Observable<T[]>;\n valueChanges<K extends string>(options: {idField: K}): Observable<(T & { [T in K]: string })[]>;\n valueChanges<K extends string>(options: {idField?: K} = {}): Observable<T[]> {\n const fromCollectionRefScheduled$ = fromCollectionRef<T>(this.query, this.afs.schedulers.outsideAngular);\n return fromCollectionRefScheduled$\n .pipe(\n map(actions => actions.payload.docs.map(a => {\n if (options.idField) {\n return {\n [options.idField]: a.id,\n ...a.data()\n } as T & { [T in K]: string };\n } else {\n return a.data();\n }\n })),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Retrieve the results of the query once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.query.get(options)).pipe(\n keepUnstableUntilFirst\n );\n }\n\n}\n","import { isPlatformServer } from '@angular/common';\nimport { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';\nimport { ɵAngularFireSchedulers } from '@angular/fire';\nimport { AppCheckInstances } from '@angular/fire/app-check';\nimport { FIREBASE_APP_NAME, FIREBASE_OPTIONS, ɵcacheInstance, ɵfirebaseAppFactory } from '@angular/fire/compat';\nimport {\n SETTINGS as AUTH_SETTINGS,\n AngularFireAuth,\n LANGUAGE_CODE,\n PERSISTENCE,\n TENANT_ID,\n USE_EMULATOR as USE_AUTH_EMULATOR,\n USE_DEVICE_LANGUAGE,\n ɵauthFactory,\n} from '@angular/fire/compat/auth';\nimport { FirebaseOptions } from 'firebase/app';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from, of } from 'rxjs';\nimport { AngularFirestoreCollection } from './collection/collection';\nimport { AngularFirestoreCollectionGroup } from './collection-group/collection-group';\nimport { AngularFirestoreDocument } from './document/document';\nimport {\n AssociatedReference,\n CollectionReference,\n DocumentReference,\n PersistenceSettings,\n Query,\n QueryFn,\n QueryGroupFn,\n Settings\n} from './interfaces';\nimport 'firebase/compat/auth';\nimport 'firebase/compat/firestore';\n\n/**\n * The value of this token determines whether or not the firestore will have persistance enabled\n */\nexport const ENABLE_PERSISTENCE = new InjectionToken<boolean>('angularfire2.enableFirestorePersistence');\nexport const PERSISTENCE_SETTINGS = new InjectionToken<PersistenceSettings | undefined>('angularfire2.firestore.persistenceSettings');\nexport const SETTINGS = new InjectionToken<Settings>('angularfire2.firestore.settings');\n\ntype UseEmulatorArguments = Parameters<firebase.firestore.Firestore['useEmulator']>;\nexport const USE_EMULATOR = new InjectionToken<UseEmulatorArguments>('angularfire2.firestore.use-emulator');\n\n/**\n * A utility methods for associating a collection reference with\n * a query.\n *\n * @param collectionRef - A collection reference to query\n * @param queryFn - The callback to create a query\n *\n * Example:\n * const { query, ref } = associateQuery(docRef.collection('items'), ref => {\n * return ref.where('age', '<', 200);\n * });\n */\nexport function associateQuery<T>(collectionRef: CollectionReference<T>, queryFn = ref => ref): AssociatedReference<T> {\n const query = queryFn(collectionRef);\n const ref = collectionRef;\n return { query, ref };\n}\n\n/**\n * AngularFirestore Service\n *\n * This service is the main entry point for this feature module. It provides\n * an API for creating Collection and Reference services. These services can\n * then be used to do data updates and observable streams of the data.\n *\n * Example:\n *\n * import { Component } from '@angular/core';\n * import { AngularFirestore, AngularFirestoreCollection, AngularFirestoreDocument } from '@angular/fire/firestore';\n * import { Observable } from 'rxjs/Observable';\n * import { from } from 'rxjs/observable';\n *\n * @Component({\n * selector: 'app-my-component',\n * template: `\n * <h2>Items for {{ (profile | async)?.name }}\n * <ul>\n * <li *ngFor=\"let item of items | async\">{{ item.name }}</li>\n * </ul>\n * <div class=\"control-input\">\n * <input type=\"text\" #itemname />\n * <button (click)=\"addItem(itemname.value)\">Add Item</button>\n * </div>\n * `\n * })\n * export class MyComponent implements OnInit {\n *\n * // services for data operations and data streaming\n * private readonly itemsRef: AngularFirestoreCollection<Item>;\n * private readonly profileRef: AngularFirestoreDocument<Profile>;\n *\n * // observables for template\n * items: Observable<Item[]>;\n * profile: Observable<Profile>;\n *\n * // inject main service\n * constructor(private readonly afs: AngularFirestore) {}\n *\n * ngOnInit() {\n * this.itemsRef = afs.collection('items', ref => ref.where('user', '==', 'davideast').limit(10));\n * this.items = this.itemsRef.valueChanges().map(snap => snap.docs.map(data => doc.data()));\n * // this.items = from(this.itemsRef); // you can also do this with no mapping\n *\n * this.profileRef = afs.doc('users/davideast');\n * this.profile = this.profileRef.valueChanges();\n * }\n *\n * addItem(name: string) {\n * const user = 'davideast';\n * this.itemsRef.add({ name, user });\n * }\n * }\n */\n@Injectable({\n providedIn: 'any'\n})\nexport class AngularFirestore {\n public readonly firestore: firebase.firestore.Firestore;\n public readonly persistenceEnabled$: Observable<boolean>;\n\n /**\n * Each Feature of AngularFire has a FirebaseApp injected. This way we\n * don't rely on the main Firebase App instance and we can create named\n * apps and use multiple apps.\n */\n constructor(\n @Inject(FIREBASE_OPTIONS) options: FirebaseOptions,\n @Optional() @Inject(FIREBASE_APP_NAME) name: string | null | undefined,\n @Optional() @Inject(ENABLE_PERSISTENCE) shouldEnablePersistence: boolean | null,\n @Optional() @Inject(SETTINGS) settings: Settings | null,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) platformId: Object,\n zone: NgZone,\n public schedulers: ɵAngularFireSchedulers,\n @Optional() @Inject(PERSISTENCE_SETTINGS) persistenceSettings: PersistenceSettings | null,\n @Optional() @Inject(USE_EMULATOR) _useEmulator: any,\n @Optional() auth: AngularFireAuth,\n @Optional() @Inject(USE_AUTH_EMULATOR) useAuthEmulator: any,\n @Optional() @Inject(AUTH_SETTINGS) authSettings: 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 app = ɵfirebaseAppFactory(options, zone, name);\n const useEmulator: UseEmulatorArguments | null = _useEmulator;\n\n if (auth) {\n ɵauthFactory(app, zone, useAuthEmulator, tenantId, languageCode, useDeviceLanguage, authSettings, persistence);\n }\n\n [this.firestore, this.persistenceEnabled$] = ɵcacheInstance(`${app.name}.firestore`, 'AngularFirestore', app.name, () => {\n const firestore = zone.runOutsideAngular(() => app.firestore());\n if (settings) {\n firestore.settings(settings);\n }\n if (useEmulator) {\n firestore.useEmulator(...useEmulator);\n }\n\n if (shouldEnablePersistence && !isPlatformServer(platformId)) {\n // We need to try/catch here because not all enablePersistence() failures are caught\n // https://github.com/firebase/firebase-js-sdk/issues/608\n const enablePersistence = () => {\n try {\n return from(firestore.enablePersistence(persistenceSettings || undefined).then(() => true, () => false));\n } catch (e) {\n if (typeof console !== 'undefined') { console.warn(e); }\n return of(false);\n }\n };\n return [firestore, zone.runOutsideAngular(enablePersistence)];\n } else {\n return [firestore, of(false)];\n }\n\n }, [settings, useEmulator, shouldEnablePersistence]);\n }\n\n /**\n * Create a reference to a Firestore Collection based on a path or\n * CollectionReference and an optional query function to narrow the result\n * set.\n */\n collection<T>(path: string, queryFn?: QueryFn): AngularFirestoreCollection<T>;\n collection<T>(ref: CollectionReference, queryFn?: QueryFn): AngularFirestoreCollection<T>;\n collection<T>(pathOrRef: string | CollectionReference<T>, queryFn?: QueryFn): AngularFirestoreCollection<T> {\n let collectionRef: CollectionReference<T>;\n if (typeof pathOrRef === 'string') {\n collectionRef = this.firestore.collection(pathOrRef) as firebase.firestore.CollectionReference<T>;\n } else {\n collectionRef = pathOrRef;\n }\n const { ref, query } = associateQuery<T>(collectionRef, queryFn);\n const refInZone = this.schedulers.ngZone.run(() => ref);\n return new AngularFirestoreCollection<T>(refInZone, query, this);\n }\n\n /**\n * Create a reference to a Firestore Collection Group based on a collectionId\n * and an optional query function to narrow the result\n * set.\n */\n collectionGroup<T>(collectionId: string, queryGroupFn?: QueryGroupFn<T>): AngularFirestoreCollectionGroup<T> {\n const queryFn = queryGroupFn || (ref => ref);\n const collectionGroup: Query<T> = this.firestore.collectionGroup(collectionId) as firebase.firestore.Query<T>;\n return new AngularFirestoreCollectionGroup<T>(queryFn(collectionGroup), this);\n }\n\n /**\n * Create a reference to a Firestore Document based on a path or\n * DocumentReference. Note that documents are not queryable because they are\n * simply objects. However, documents have sub-collections that return a\n * Collection reference and can be queried.\n */\n doc<T>(path: string): AngularFirestoreDocument<T>;\n doc<T>(ref: DocumentReference): AngularFirestoreDocument<T>;\n doc<T>(pathOrRef: string | DocumentReference<T>): AngularFirestoreDocument<T> {\n let ref: DocumentReference<T>;\n if (typeof pathOrRef === 'string') {\n ref = this.firestore.doc(pathOrRef) as firebase.firestore.DocumentReference<T>;\n } else {\n ref = pathOrRef;\n }\n const refInZone = this.schedulers.ngZone.run(() => ref);\n return new AngularFirestoreDocument<T>(refInZone, this);\n }\n\n /**\n * Returns a generated Firestore Document Id.\n */\n createId() {\n return this.firestore.collection('_').doc().id;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { AngularFirestore, ENABLE_PERSISTENCE, PERSISTENCE_SETTINGS } from './firestore';\nimport { PersistenceSettings } from './interfaces';\n\n@NgModule({\n providers: [ AngularFirestore ]\n})\nexport class AngularFirestoreModule {\n constructor() {\n firebase.registerVersion('angularfire', VERSION.full, 'fst-compat');\n }\n /**\n * Attempt to enable persistent storage, if possible\n */\n static enablePersistence(persistenceSettings?: PersistenceSettings): ModuleWithProviders<AngularFirestoreModule> {\n return {\n ngModule: AngularFirestoreModule,\n providers: [\n { provide: ENABLE_PERSISTENCE, useValue: true },\n { provide: PERSISTENCE_SETTINGS, useValue: persistenceSettings },\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵfirebaseAppFactory","ɵauthFactory","ɵcacheInstance","USE_AUTH_EMULATOR","AUTH_SETTINGS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"angular-fire-compat-firestore.mjs","sources":["../../../src/compat/firestore/observable/fromRef.ts","../../../src/compat/firestore/document/document.ts","../../../src/compat/firestore/collection/changes.ts","../../../src/compat/firestore/collection/collection.ts","../../../src/compat/firestore/collection-group/collection-group.ts","../../../src/compat/firestore/firestore.ts","../../../src/compat/firestore/firestore.module.ts","../../../src/compat/firestore/angular-fire-compat-firestore.ts"],"sourcesContent":["import { Observable, SchedulerLike, asyncScheduler } from 'rxjs';\nimport { map, pairwise, startWith } from 'rxjs/operators';\nimport { Action, DocumentReference, DocumentSnapshot, Query, QuerySnapshot, Reference } from '../interfaces';\n\nfunction _fromRef<R>(ref: Reference, scheduler: SchedulerLike = asyncScheduler): Observable<R> {\n return new Observable(subscriber => {\n let unsubscribe: () => void;\n if (scheduler != null) {\n scheduler.schedule(() => {\n unsubscribe = ref.onSnapshot({ includeMetadataChanges: true }, subscriber);\n });\n } else {\n unsubscribe = ref.onSnapshot({ includeMetadataChanges: true }, subscriber);\n }\n\n return () => {\n if (unsubscribe != null) {\n unsubscribe();\n }\n };\n });\n}\n\nexport function fromRef<R, T>(ref: DocumentReference<T> | Query<T>, scheduler?: SchedulerLike) {\n return _fromRef<R>(ref, scheduler);\n}\n\nexport function fromDocRef<T>(ref: DocumentReference<T>, scheduler?: SchedulerLike): Observable<Action<DocumentSnapshot<T>>> {\n return fromRef<DocumentSnapshot<T>, T>(ref, scheduler)\n .pipe(\n startWith<DocumentSnapshot<T>, undefined>(undefined),\n pairwise(),\n map((snapshots: [DocumentSnapshot<T>, DocumentSnapshot<T>]) => {\n const [priorPayload, payload] = snapshots;\n if (!payload.exists) {\n return { payload, type: 'removed' };\n }\n if (!priorPayload?.exists) {\n return { payload, type: 'added' };\n }\n return { payload, type: 'modified' };\n })\n );\n}\n\nexport function fromCollectionRef<T>(ref: Query<T>, scheduler?: SchedulerLike): Observable<Action<QuerySnapshot<T>>> {\n return fromRef<QuerySnapshot<T>, T>(ref, scheduler).pipe(map(payload => ({ payload, type: 'query' })));\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AngularFirestoreCollection } from '../collection/collection';\nimport { AngularFirestore, associateQuery } from '../firestore';\nimport { Action, DocumentData, DocumentReference, DocumentSnapshot, QueryFn, SetOptions } from '../interfaces';\nimport { fromDocRef } from '../observable/fromRef';\n\n/**\n * AngularFirestoreDocument service\n *\n * This class creates a reference to a Firestore Document. A reference is provided in\n * in the constructor. The class is generic which gives you type safety for data update\n * methods and data streaming.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const fakeStock = new AngularFirestoreDocument<Stock>(doc('stocks/FAKE'));\n * await fakeStock.set({ name: 'FAKE', price: 0.01 });\n * fakeStock.valueChanges().map(snap => {\n * if(snap.exists) return snap.data();\n * return null;\n * }).subscribe(value => console.log(value));\n * // OR! Transform using Observable.from() and the data is unwrapped for you\n * Observable.from(fakeStock).subscribe(value => console.log(value));\n */\nexport class AngularFirestoreDocument<T = DocumentData> {\n\n /**\n * The constructor takes in a DocumentReference to provide wrapper methods\n * for data operations, data streaming, and Symbol.observable.\n */\n constructor(public ref: DocumentReference<T>, private afs: AngularFirestore) { }\n\n /**\n * Create or overwrite a single document.\n */\n set(data: T, options?: SetOptions): Promise<void> {\n return this.ref.set(data, options);\n }\n\n /**\n * Update some fields of a document without overwriting the entire document.\n */\n update(data: Partial<T>): Promise<void> {\n return this.ref.update(data);\n }\n\n /**\n * Delete a document.\n */\n delete(): Promise<void> {\n return this.ref.delete();\n }\n\n /**\n * Create a reference to a sub-collection given a path and an optional query\n * function.\n */\n collection<R = DocumentData>(path: string, queryFn?: QueryFn): AngularFirestoreCollection<R> {\n const collectionRef = this.ref.collection(path) as firebase.firestore.CollectionReference<R>;\n const { ref, query } = associateQuery(collectionRef, queryFn);\n return new AngularFirestoreCollection(ref, query, this.afs);\n }\n\n /**\n * Listen to snapshot updates from the document.\n */\n snapshotChanges(): Observable<Action<DocumentSnapshot<T>>> {\n const scheduledFromDocRef$ = fromDocRef<T>(this.ref, this.afs.schedulers.outsideAngular);\n return scheduledFromDocRef$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to unwrapped snapshot updates from the document.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(options?: unknown): Observable<T | undefined>;\n valueChanges<K extends string>(options: { idField: K }): Observable<(T & { [T in K]: string }) | undefined>;\n valueChanges<K extends string>(options: { idField?: K } = {}): Observable<T | undefined> {\n return this.snapshotChanges().pipe(\n map(({ payload }) =>\n options.idField ? {\n ...payload.data(),\n ...{ [options.idField]: payload.id }\n } as T & { [T in K]: string } : payload.data()\n )\n );\n }\n\n /**\n * Retrieve the document once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.ref.get(options)).pipe(\n keepUnstableUntilFirst,\n );\n }\n}\n","import firebase from 'firebase/compat/app';\nimport { Observable, SchedulerLike } from 'rxjs';\nimport { distinctUntilChanged, map, pairwise, scan, startWith } from 'rxjs/operators';\nimport { Action, DocumentChange, DocumentChangeAction, DocumentChangeType, Query, QuerySnapshot } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\n\n\ntype ActionTupe = [Action<QuerySnapshot<firebase.firestore.DocumentData>>, Action<QuerySnapshot<firebase.firestore.DocumentData>>]\n/**\n * Return a stream of document changes on a query. These results are not in sort order but in\n * order of occurence.\n */\nexport function docChanges<T>(query: Query, scheduler?: SchedulerLike): Observable<DocumentChangeAction<T>[]> {\n return fromCollectionRef(query, scheduler)\n .pipe(\n startWith<Action<QuerySnapshot<firebase.firestore.DocumentData>>, undefined>(undefined),\n pairwise(),\n map((actionTuple: ActionTupe) => {\n const [priorAction, action] = actionTuple;\n const docChanges = action.payload.docChanges();\n const actions = docChanges.map(change => ({ type: change.type, payload: change }));\n // the metadata has changed from the prior emission\n if (priorAction && JSON.stringify(priorAction.payload.metadata) !== JSON.stringify(action.payload.metadata)) {\n // go through all the docs in payload and figure out which ones changed\n action.payload.docs.forEach((currentDoc, currentIndex) => {\n const docChange = docChanges.find(d => d.doc.ref.isEqual(currentDoc.ref));\n const priorDoc = priorAction?.payload.docs.find(d => d.ref.isEqual(currentDoc.ref));\n if (docChange && JSON.stringify(docChange.doc.metadata) === JSON.stringify(currentDoc.metadata) ||\n !docChange && priorDoc && JSON.stringify(priorDoc.metadata) === JSON.stringify(currentDoc.metadata)) {\n // document doesn't appear to have changed, don't log another action\n } else {\n // since the actions are processed in order just push onto the array\n actions.push({\n type: 'modified',\n payload: {\n oldIndex: currentIndex,\n newIndex: currentIndex,\n type: 'modified',\n doc: currentDoc\n }\n });\n }\n });\n }\n return actions as DocumentChangeAction<T>[];\n }),\n );\n}\n\n/**\n * Return a stream of document changes on a query. These results are in sort order.\n */\nexport function sortedChanges<T>(\n query: Query,\n events: DocumentChangeType[],\n scheduler?: SchedulerLike): Observable<DocumentChangeAction<T>[]> {\n return docChanges<T>(query, scheduler)\n .pipe(\n scan((current, changes) => combineChanges<T>(current, changes.map(it => it.payload), events), []),\n distinctUntilChanged(), // cut down on unneed change cycles\n map(changes => changes.map(c => ({ type: c.type, payload: c } as DocumentChangeAction<T>))));\n}\n\n/**\n * Combines the total result set from the current set of changes from an incoming set\n * of changes.\n */\nexport function combineChanges<T>(current: DocumentChange<T>[], changes: DocumentChange<T>[], events: DocumentChangeType[]) {\n changes.forEach(change => {\n // skip unwanted change types\n if (events.indexOf(change.type) > -1) {\n current = combineChange(current, change);\n }\n });\n return current;\n}\n\n/**\n * Splice arguments on top of a sliced array, to break top-level ===\n * this is useful for change-detection\n */\nfunction sliceAndSplice<T>(\n original: T[],\n start: number,\n deleteCount: number,\n ...args: T[]\n): T[] {\n const returnArray = original.slice();\n returnArray.splice(start, deleteCount, ...args);\n return returnArray;\n}\n\n/**\n * Creates a new sorted array from a new change.\n * Build our own because we allow filtering of action types ('added', 'removed', 'modified') before scanning\n * and so we have greater control over change detection (by breaking ===)\n */\nexport function combineChange<T>(combined: DocumentChange<T>[], change: DocumentChange<T>): DocumentChange<T>[] {\n switch (change.type) {\n case 'added':\n if (combined[change.newIndex]?.doc.ref.isEqual(change.doc.ref)) {\n // Not sure why the duplicates are getting fired\n } else {\n return sliceAndSplice(combined, change.newIndex, 0, change);\n }\n break;\n case 'modified':\n if (combined[change.oldIndex] == null || combined[change.oldIndex].doc.ref.isEqual(change.doc.ref)) {\n // When an item changes position we first remove it\n // and then add it's new position\n if (change.oldIndex !== change.newIndex) {\n const copiedArray = combined.slice();\n copiedArray.splice(change.oldIndex, 1);\n copiedArray.splice(change.newIndex, 0, change);\n return copiedArray;\n } else {\n return sliceAndSplice(combined, change.newIndex, 1, change);\n }\n }\n break;\n case 'removed':\n if (combined[change.oldIndex]?.doc.ref.isEqual(change.doc.ref)) {\n return sliceAndSplice(combined, change.oldIndex, 1);\n }\n break;\n }\n return combined;\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { filter, map, pairwise, scan, startWith } from 'rxjs/operators';\nimport { AngularFirestoreDocument } from '../document/document';\nimport { AngularFirestore } from '../firestore';\nimport { CollectionReference, DocumentChangeAction, DocumentChangeType, DocumentData, DocumentReference, Query } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\nimport { docChanges, sortedChanges } from './changes';\n\ntype DocumentChangeTuple<T> = [DocumentChangeAction<T>[], DocumentChangeAction<T>[]];\n\nexport function validateEventsArray(events?: DocumentChangeType[]) {\n if (!events || events.length === 0) {\n events = ['added', 'removed', 'modified'];\n }\n return events;\n}\n\n/**\n * AngularFirestoreCollection service\n *\n * This class creates a reference to a Firestore Collection. A reference and a query are provided in\n * in the constructor. The query can be the unqueried reference if no query is desired.The class\n * is generic which gives you type safety for data update methods and data streaming.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const collectionRef = firebase.firestore.collection('stocks');\n * const query = collectionRef.where('price', '>', '0.01');\n * const fakeStock = new AngularFirestoreCollection<Stock>(collectionRef, query);\n *\n * // NOTE!: the updates are performed on the reference not the query\n * await fakeStock.add({ name: 'FAKE', price: 0.01 });\n *\n * // Subscribe to changes as snapshots. This provides you data updates as well as delta updates.\n * fakeStock.valueChanges().subscribe(value => console.log(value));\n */\nexport class AngularFirestoreCollection<T = DocumentData> {\n /**\n * The constructor takes in a CollectionReference and Query to provide wrapper methods\n * for data operations and data streaming.\n *\n * Note: Data operation methods are done on the reference not the query. This means\n * when you update data it is not updating data to the window of your query unless\n * the data fits the criteria of the query. See the AssociatedRefence type for details\n * on this implication.\n */\n constructor(\n public readonly ref: CollectionReference<T>,\n private readonly query: Query<T>,\n private readonly afs: AngularFirestore) { }\n\n /**\n * Listen to the latest change in the stream. This method returns changes\n * as they occur and they are not sorted by query order. This allows you to construct\n * your own data structure.\n */\n stateChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n let source = docChanges<T>(this.query, this.afs.schedulers.outsideAngular);\n if (events && events.length > 0) {\n source = source.pipe(\n map(actions => actions.filter(change => events.indexOf(change.type) > -1))\n );\n }\n return source.pipe(\n // We want to filter out empty arrays, but always emit at first, so the developer knows\n // that the collection has been resolve; even if it's empty\n startWith<DocumentChangeAction<T>[], undefined>(undefined),\n pairwise(),\n filter(([prior, current]: DocumentChangeTuple<T>) => current.length > 0 || !prior),\n map(([, current]) => current),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Create a stream of changes as they occur it time. This method is similar to stateChanges()\n * but it collects each event in an array over time.\n */\n auditTrail(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n return this.stateChanges(events).pipe(scan((current, action) => [...current, ...action], []));\n }\n\n /**\n * Create a stream of synchronized changes. This method keeps the local array in sorted\n * query order.\n */\n snapshotChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n const validatedEvents = validateEventsArray(events);\n const scheduledSortedChanges$ = sortedChanges<T>(this.query, validatedEvents, this.afs.schedulers.outsideAngular);\n return scheduledSortedChanges$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to all documents in the collection and its possible query as an Observable.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(): Observable<T[]>;\n // eslint-disable-next-line no-empty-pattern\n valueChanges({}): Observable<T[]>;\n valueChanges<K extends string>(options: {idField: K}): Observable<(T & { [T in K]: string })[]>;\n valueChanges<K extends string>(options: {idField?: K} = {}): Observable<T[]> {\n return fromCollectionRef<T>(this.query, this.afs.schedulers.outsideAngular)\n .pipe(\n map(actions => actions.payload.docs.map(a => {\n if (options.idField) {\n return {\n ...a.data() as any,\n ...{ [options.idField]: a.id }\n } as T & { [T in K]: string };\n } else {\n return a.data();\n }\n })),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Retrieve the results of the query once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.query.get(options)).pipe(\n keepUnstableUntilFirst,\n );\n }\n\n /**\n * Add data to a collection reference.\n *\n * Note: Data operation methods are done on the reference not the query. This means\n * when you update data it is not updating data to the window of your query unless\n * the data fits the criteria of the query.\n */\n add(data: T): Promise<DocumentReference<T>> {\n return this.ref.add(data);\n }\n\n /**\n * Create a reference to a single document in a collection.\n */\n doc<T2 = T>(path?: string): AngularFirestoreDocument<T2> {\n // TODO is there a better way to solve this type issue\n return new AngularFirestoreDocument(this.ref.doc(path) as any, this.afs);\n }\n}\n","import { keepUnstableUntilFirst } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from } from 'rxjs';\nimport { filter, map, scan } from 'rxjs/operators';\nimport { docChanges, sortedChanges } from '../collection/changes';\nimport { validateEventsArray } from '../collection/collection';\nimport { AngularFirestore } from '../firestore';\nimport { DocumentChangeAction, DocumentChangeType, DocumentData, Query } from '../interfaces';\nimport { fromCollectionRef } from '../observable/fromRef';\n\n/**\n * AngularFirestoreCollectionGroup service\n *\n * This class holds a reference to a Firestore Collection Group Query.\n *\n * This class uses Symbol.observable to transform into Observable using Observable.from().\n *\n * This class is rarely used directly and should be created from the AngularFirestore service.\n *\n * Example:\n *\n * const collectionGroup = firebase.firestore.collectionGroup('stocks');\n * const query = collectionRef.where('price', '>', '0.01');\n * const fakeStock = new AngularFirestoreCollectionGroup<Stock>(query, afs);\n *\n * // Subscribe to changes as snapshots. This provides you data updates as well as delta updates.\n * fakeStock.valueChanges().subscribe(value => console.log(value));\n */\nexport class AngularFirestoreCollectionGroup<T = DocumentData> {\n /**\n * The constructor takes in a CollectionGroupQuery to provide wrapper methods\n * for data operations and data streaming.\n */\n constructor(\n private readonly query: Query<T>,\n private readonly afs: AngularFirestore) { }\n\n /**\n * Listen to the latest change in the stream. This method returns changes\n * as they occur and they are not sorted by query order. This allows you to construct\n * your own data structure.\n */\n stateChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n if (!events || events.length === 0) {\n return docChanges<T>(this.query, this.afs.schedulers.outsideAngular).pipe(\n keepUnstableUntilFirst\n );\n }\n return docChanges<T>(this.query, this.afs.schedulers.outsideAngular)\n .pipe(\n map(actions => actions.filter(change => events.indexOf(change.type) > -1)),\n filter(changes => changes.length > 0),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Create a stream of changes as they occur it time. This method is similar to stateChanges()\n * but it collects each event in an array over time.\n */\n auditTrail(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n return this.stateChanges(events).pipe(scan((current, action) => [...current, ...action], []));\n }\n\n /**\n * Create a stream of synchronized changes. This method keeps the local array in sorted\n * query order.\n */\n snapshotChanges(events?: DocumentChangeType[]): Observable<DocumentChangeAction<T>[]> {\n const validatedEvents = validateEventsArray(events);\n const scheduledSortedChanges$ = sortedChanges<T>(this.query, validatedEvents, this.afs.schedulers.outsideAngular);\n return scheduledSortedChanges$.pipe(\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Listen to all documents in the collection and its possible query as an Observable.\n *\n * If the `idField` option is provided, document IDs are included and mapped to the\n * provided `idField` property name.\n */\n valueChanges(): Observable<T[]>;\n // eslint-disable-next-line no-empty-pattern\n valueChanges({}): Observable<T[]>;\n valueChanges<K extends string>(options: {idField: K}): Observable<(T & { [T in K]: string })[]>;\n valueChanges<K extends string>(options: {idField?: K} = {}): Observable<T[]> {\n const fromCollectionRefScheduled$ = fromCollectionRef<T>(this.query, this.afs.schedulers.outsideAngular);\n return fromCollectionRefScheduled$\n .pipe(\n map(actions => actions.payload.docs.map(a => {\n if (options.idField) {\n return {\n [options.idField]: a.id,\n ...a.data()\n } as T & { [T in K]: string };\n } else {\n return a.data();\n }\n })),\n keepUnstableUntilFirst\n );\n }\n\n /**\n * Retrieve the results of the query once.\n */\n get(options?: firebase.firestore.GetOptions) {\n return from(this.query.get(options)).pipe(\n keepUnstableUntilFirst\n );\n }\n\n}\n","import { isPlatformServer } from '@angular/common';\nimport { Inject, Injectable, InjectionToken, NgZone, Optional, PLATFORM_ID } from '@angular/core';\nimport { ɵAngularFireSchedulers } from '@angular/fire';\nimport { AppCheckInstances } from '@angular/fire/app-check';\nimport { FIREBASE_APP_NAME, FIREBASE_OPTIONS, ɵcacheInstance, ɵfirebaseAppFactory } from '@angular/fire/compat';\nimport {\n SETTINGS as AUTH_SETTINGS,\n AngularFireAuth,\n LANGUAGE_CODE,\n PERSISTENCE,\n TENANT_ID,\n USE_EMULATOR as USE_AUTH_EMULATOR,\n USE_DEVICE_LANGUAGE,\n ɵauthFactory,\n} from '@angular/fire/compat/auth';\nimport { FirebaseOptions } from 'firebase/app';\nimport firebase from 'firebase/compat/app';\nimport { Observable, from, of } from 'rxjs';\nimport { AngularFirestoreCollection } from './collection/collection';\nimport { AngularFirestoreCollectionGroup } from './collection-group/collection-group';\nimport { AngularFirestoreDocument } from './document/document';\nimport {\n AssociatedReference,\n CollectionReference,\n DocumentReference,\n PersistenceSettings,\n Query,\n QueryFn,\n QueryGroupFn,\n Settings\n} from './interfaces';\nimport 'firebase/compat/auth';\nimport 'firebase/compat/firestore';\n\n/**\n * The value of this token determines whether or not the firestore will have persistance enabled\n */\nexport const ENABLE_PERSISTENCE = new InjectionToken<boolean>('angularfire2.enableFirestorePersistence');\nexport const PERSISTENCE_SETTINGS = new InjectionToken<PersistenceSettings | undefined>('angularfire2.firestore.persistenceSettings');\nexport const SETTINGS = new InjectionToken<Settings>('angularfire2.firestore.settings');\n\ntype UseEmulatorArguments = Parameters<firebase.firestore.Firestore['useEmulator']>;\nexport const USE_EMULATOR = new InjectionToken<UseEmulatorArguments>('angularfire2.firestore.use-emulator');\n\n/**\n * A utility methods for associating a collection reference with\n * a query.\n *\n * @param collectionRef - A collection reference to query\n * @param queryFn - The callback to create a query\n *\n * Example:\n * const { query, ref } = associateQuery(docRef.collection('items'), ref => {\n * return ref.where('age', '<', 200);\n * });\n */\nexport function associateQuery<T>(collectionRef: CollectionReference<T>, queryFn = ref => ref): AssociatedReference<T> {\n const query = queryFn(collectionRef);\n const ref = collectionRef;\n return { query, ref };\n}\n\n/**\n * AngularFirestore Service\n *\n * This service is the main entry point for this feature module. It provides\n * an API for creating Collection and Reference services. These services can\n * then be used to do data updates and observable streams of the data.\n *\n * Example:\n *\n * import { Component } from '@angular/core';\n * import { AngularFirestore, AngularFirestoreCollection, AngularFirestoreDocument } from '@angular/fire/firestore';\n * import { Observable } from 'rxjs/Observable';\n * import { from } from 'rxjs/observable';\n *\n * @Component({\n * selector: 'app-my-component',\n * template: `\n * <h2>Items for {{ (profile | async)?.name }}\n * <ul>\n * <li *ngFor=\"let item of items | async\">{{ item.name }}</li>\n * </ul>\n * <div class=\"control-input\">\n * <input type=\"text\" #itemname />\n * <button (click)=\"addItem(itemname.value)\">Add Item</button>\n * </div>\n * `\n * })\n * export class MyComponent implements OnInit {\n *\n * // services for data operations and data streaming\n * private readonly itemsRef: AngularFirestoreCollection<Item>;\n * private readonly profileRef: AngularFirestoreDocument<Profile>;\n *\n * // observables for template\n * items: Observable<Item[]>;\n * profile: Observable<Profile>;\n *\n * // inject main service\n * constructor(private readonly afs: AngularFirestore) {}\n *\n * ngOnInit() {\n * this.itemsRef = afs.collection('items', ref => ref.where('user', '==', 'davideast').limit(10));\n * this.items = this.itemsRef.valueChanges().map(snap => snap.docs.map(data => doc.data()));\n * // this.items = from(this.itemsRef); // you can also do this with no mapping\n *\n * this.profileRef = afs.doc('users/davideast');\n * this.profile = this.profileRef.valueChanges();\n * }\n *\n * addItem(name: string) {\n * const user = 'davideast';\n * this.itemsRef.add({ name, user });\n * }\n * }\n */\n@Injectable({\n providedIn: 'any'\n})\nexport class AngularFirestore {\n public readonly firestore: firebase.firestore.Firestore;\n public readonly persistenceEnabled$: Observable<boolean>;\n\n /**\n * Each Feature of AngularFire has a FirebaseApp injected. This way we\n * don't rely on the main Firebase App instance and we can create named\n * apps and use multiple apps.\n */\n constructor(\n @Inject(FIREBASE_OPTIONS) options: FirebaseOptions,\n @Optional() @Inject(FIREBASE_APP_NAME) name: string | null | undefined,\n @Optional() @Inject(ENABLE_PERSISTENCE) shouldEnablePersistence: boolean | null,\n @Optional() @Inject(SETTINGS) settings: Settings | null,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) platformId: Object,\n zone: NgZone,\n public schedulers: ɵAngularFireSchedulers,\n @Optional() @Inject(PERSISTENCE_SETTINGS) persistenceSettings: PersistenceSettings | null,\n @Optional() @Inject(USE_EMULATOR) _useEmulator: any,\n @Optional() auth: AngularFireAuth,\n @Optional() @Inject(USE_AUTH_EMULATOR) useAuthEmulator: any,\n @Optional() @Inject(AUTH_SETTINGS) authSettings: 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 app = ɵfirebaseAppFactory(options, zone, name);\n const useEmulator: UseEmulatorArguments | null = _useEmulator;\n\n if (auth) {\n ɵauthFactory(app, zone, useAuthEmulator, tenantId, languageCode, useDeviceLanguage, authSettings, persistence);\n }\n\n [this.firestore, this.persistenceEnabled$] = ɵcacheInstance(`${app.name}.firestore`, 'AngularFirestore', app.name, () => {\n const firestore = zone.runOutsideAngular(() => app.firestore());\n if (settings) {\n firestore.settings(settings);\n }\n if (useEmulator) {\n firestore.useEmulator(...useEmulator);\n }\n\n if (shouldEnablePersistence && !isPlatformServer(platformId)) {\n // We need to try/catch here because not all enablePersistence() failures are caught\n // https://github.com/firebase/firebase-js-sdk/issues/608\n const enablePersistence = () => {\n try {\n return from(firestore.enablePersistence(persistenceSettings || undefined).then(() => true, () => false));\n } catch (e) {\n if (typeof console !== 'undefined') { console.warn(e); }\n return of(false);\n }\n };\n return [firestore, zone.runOutsideAngular(enablePersistence)];\n } else {\n return [firestore, of(false)];\n }\n\n }, [settings, useEmulator, shouldEnablePersistence]);\n }\n\n /**\n * Create a reference to a Firestore Collection based on a path or\n * CollectionReference and an optional query function to narrow the result\n * set.\n */\n collection<T>(path: string, queryFn?: QueryFn): AngularFirestoreCollection<T>;\n collection<T>(ref: CollectionReference, queryFn?: QueryFn): AngularFirestoreCollection<T>;\n collection<T>(pathOrRef: string | CollectionReference<T>, queryFn?: QueryFn): AngularFirestoreCollection<T> {\n let collectionRef: CollectionReference<T>;\n if (typeof pathOrRef === 'string') {\n collectionRef = this.firestore.collection(pathOrRef) as firebase.firestore.CollectionReference<T>;\n } else {\n collectionRef = pathOrRef;\n }\n const { ref, query } = associateQuery<T>(collectionRef, queryFn);\n const refInZone = this.schedulers.ngZone.run(() => ref);\n return new AngularFirestoreCollection<T>(refInZone, query, this);\n }\n\n /**\n * Create a reference to a Firestore Collection Group based on a collectionId\n * and an optional query function to narrow the result\n * set.\n */\n collectionGroup<T>(collectionId: string, queryGroupFn?: QueryGroupFn<T>): AngularFirestoreCollectionGroup<T> {\n const queryFn = queryGroupFn || (ref => ref);\n const collectionGroup: Query<T> = this.firestore.collectionGroup(collectionId) as firebase.firestore.Query<T>;\n return new AngularFirestoreCollectionGroup<T>(queryFn(collectionGroup), this);\n }\n\n /**\n * Create a reference to a Firestore Document based on a path or\n * DocumentReference. Note that documents are not queryable because they are\n * simply objects. However, documents have sub-collections that return a\n * Collection reference and can be queried.\n */\n doc<T>(path: string): AngularFirestoreDocument<T>;\n doc<T>(ref: DocumentReference): AngularFirestoreDocument<T>;\n doc<T>(pathOrRef: string | DocumentReference<T>): AngularFirestoreDocument<T> {\n let ref: DocumentReference<T>;\n if (typeof pathOrRef === 'string') {\n ref = this.firestore.doc(pathOrRef) as firebase.firestore.DocumentReference<T>;\n } else {\n ref = pathOrRef;\n }\n const refInZone = this.schedulers.ngZone.run(() => ref);\n return new AngularFirestoreDocument<T>(refInZone, this);\n }\n\n /**\n * Returns a generated Firestore Document Id.\n */\n createId() {\n return this.firestore.collection('_').doc().id;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { VERSION } from '@angular/fire';\nimport firebase from 'firebase/compat/app';\nimport { AngularFirestore, ENABLE_PERSISTENCE, PERSISTENCE_SETTINGS } from './firestore';\nimport { PersistenceSettings } from './interfaces';\n\n@NgModule({\n providers: [ AngularFirestore ]\n})\nexport class AngularFirestoreModule {\n constructor() {\n firebase.registerVersion('angularfire', VERSION.full, 'fst-compat');\n }\n /**\n * Attempt to enable persistent storage, if possible\n */\n static enablePersistence(persistenceSettings?: PersistenceSettings): ModuleWithProviders<AngularFirestoreModule> {\n return {\n ngModule: AngularFirestoreModule,\n providers: [\n { provide: ENABLE_PERSISTENCE, useValue: true },\n { provide: PERSISTENCE_SETTINGS, useValue: persistenceSettings },\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵfirebaseAppFactory","ɵauthFactory","ɵcacheInstance","USE_AUTH_EMULATOR","AUTH_SETTINGS"],"mappings":";;;;;;;;;;;;;;;AAIA,SAAS,QAAQ,CAAI,GAAc,EAAE,YAA2B,cAAc,EAAA;AAC5E,IAAA,OAAO,IAAI,UAAU,CAAC,UAAU,IAAG;AACjC,QAAA,IAAI,WAAuB,CAAC;AAC5B,QAAA,IAAI,SAAS,IAAI,IAAI,EAAE;AACrB,YAAA,SAAS,CAAC,QAAQ,CAAC,MAAK;AACtB,gBAAA,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;AAC7E,aAAC,CAAC,CAAC;SACJ;aAAM;AACL,YAAA,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;SAC5E;AAED,QAAA,OAAO,MAAK;AACV,YAAA,IAAI,WAAW,IAAI,IAAI,EAAE;AACvB,gBAAA,WAAW,EAAE,CAAC;aACf;AACH,SAAC,CAAC;AACJ,KAAC,CAAC,CAAC;AACL,CAAC;AAEe,SAAA,OAAO,CAAO,GAAoC,EAAE,SAAyB,EAAA;AAC3F,IAAA,OAAO,QAAQ,CAAI,GAAG,EAAE,SAAS,CAAC,CAAC;AACrC,CAAC;AAEe,SAAA,UAAU,CAAI,GAAyB,EAAE,SAAyB,EAAA;AAChF,IAAA,OAAO,OAAO,CAAyB,GAAG,EAAE,SAAS,CAAC;AACnD,SAAA,IAAI,CACH,SAAS,CAAiC,SAAS,CAAC,EACpD,QAAQ,EAAE,EACV,GAAG,CAAC,CAAC,SAAqD,KAAI;AAC5D,QAAA,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAC1C,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACnB,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SACrC;AACD,QAAA,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE;AACzB,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;SACnC;AACD,QAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;KACtC,CAAC,CACH,CAAC;AACN,CAAC;AAEe,SAAA,iBAAiB,CAAI,GAAa,EAAE,SAAyB,EAAA;IAC3E,OAAO,OAAO,CAAsB,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AACzG;;ACtCA;;;;;;;;;;;;;;;;;;;;;AAqBG;MACU,wBAAwB,CAAA;AAMhB,IAAA,GAAA,CAAA;AAAmC,IAAA,GAAA,CAAA;AAJtD;;;AAGG;IACH,WAAmB,CAAA,GAAyB,EAAU,GAAqB,EAAA;QAAxD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAsB;QAAU,IAAG,CAAA,GAAA,GAAH,GAAG,CAAkB;KAAK;AAEhF;;AAEG;IACH,GAAG,CAAC,IAAO,EAAE,OAAoB,EAAA;QAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACpC;AAED;;AAEG;AACH,IAAA,MAAM,CAAC,IAAgB,EAAA;QACrB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC9B;AAED;;AAEG;IACH,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;KAC1B;AAED;;;AAGG;IACH,UAAU,CAAmB,IAAY,EAAE,OAAiB,EAAA;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAA8C,CAAC;AAC7F,QAAA,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC9D,OAAO,IAAI,0BAA0B,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KAC7D;AAED;;AAEG;IACH,eAAe,GAAA;AACb,QAAA,MAAM,oBAAoB,GAAG,UAAU,CAAI,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACzF,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAC9B,sBAAsB,CACvB,CAAC;KACH;IAUD,YAAY,CAAmB,UAA2B,EAAE,EAAA;QAC1D,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAChC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,KACd,OAAO,CAAC,OAAO,GAAG;YAChB,GAAG,OAAO,CAAC,IAAI,EAAE;YACjB,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,EAAE,EAAE;SACT,GAAG,OAAO,CAAC,IAAI,EAAE,CAC/C,CACF,CAAC;KACH;AAED;;AAEG;AACH,IAAA,GAAG,CAAC,OAAuC,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACrC,sBAAsB,CACvB,CAAC;KACH;AACF;;ACnGD;;;AAGG;AACa,SAAA,UAAU,CAAI,KAAY,EAAE,SAAyB,EAAA;AACnE,IAAA,OAAO,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC;AACvC,SAAA,IAAI,CACH,SAAS,CAAoE,SAAS,CAAC,EACvF,QAAQ,EAAE,EACV,GAAG,CAAC,CAAC,WAAuB,KAAI;AAC9B,QAAA,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC;QAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;;QAEnF,IAAI,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;;AAE3G,YAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,YAAY,KAAI;gBACvD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1E,MAAM,QAAQ,GAAG,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;gBACpF,IAAI,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAC7F,CAAC,SAAS,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;;iBAEtG;qBAAM;;oBAEL,OAAO,CAAC,IAAI,CAAC;AACX,wBAAA,IAAI,EAAE,UAAU;AAChB,wBAAA,OAAO,EAAE;AACP,4BAAA,QAAQ,EAAE,YAAY;AACtB,4BAAA,QAAQ,EAAE,YAAY;AACtB,4BAAA,IAAI,EAAE,UAAU;AAChB,4BAAA,GAAG,EAAE,UAAU;AAChB,yBAAA;AACF,qBAAA,CAAC,CAAC;iBACJ;AACH,aAAC,CAAC,CAAC;SACJ;AACD,QAAA,OAAO,OAAoC,CAAC;KAC7C,CAAC,CACL,CAAC;AACJ,CAAC;AAED;;AAEG;SACa,aAAa,CAC3B,KAAY,EACZ,MAA4B,EAC5B,SAAyB,EAAA;AACzB,IAAA,OAAO,UAAU,CAAI,KAAK,EAAE,SAAS,CAAC;AACnC,SAAA,IAAI,CACH,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,cAAc,CAAI,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,EACjG,oBAAoB,EAAE;AACtB,IAAA,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAA8B,CAAA,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAED;;;AAGG;SACa,cAAc,CAAI,OAA4B,EAAE,OAA4B,EAAE,MAA4B,EAAA;AACxH,IAAA,OAAO,CAAC,OAAO,CAAC,MAAM,IAAG;;AAEvB,QAAA,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;AACpC,YAAA,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SAC1C;AACH,KAAC,CAAC,CAAC;AACH,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;AAGG;AACH,SAAS,cAAc,CACrB,QAAa,EACb,KAAa,EACb,WAAmB,EACnB,GAAG,IAAS,EAAA;AAEZ,IAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;IACrC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;AAChD,IAAA,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;AAIG;AACa,SAAA,aAAa,CAAI,QAA6B,EAAE,MAAyB,EAAA;AACvF,IAAA,QAAQ,MAAM,CAAC,IAAI;AACjB,QAAA,KAAK,OAAO;YACV,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;;aAE/D;iBAAM;AACL,gBAAA,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;aAC7D;YACD,MAAM;AACR,QAAA,KAAK,UAAU;AACb,YAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;;;gBAGlG,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,EAAE;AACvC,oBAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACrC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;oBACvC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AAC/C,oBAAA,OAAO,WAAW,CAAC;iBACpB;qBAAM;AACL,oBAAA,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;iBAC7D;aACF;YACD,MAAM;AACR,QAAA,KAAK,SAAS;YACZ,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC9D,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;aACrD;YACD,MAAM;KACT;AACD,IAAA,OAAO,QAAQ,CAAC;AAClB;;ACnHM,SAAU,mBAAmB,CAAC,MAA6B,EAAA;IAC/D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QAClC,MAAM,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;KAC3C;AACD,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;AAsBG;MACU,0BAA0B,CAAA;AAWnB,IAAA,GAAA,CAAA;AACC,IAAA,KAAA,CAAA;AACA,IAAA,GAAA,CAAA;AAZnB;;;;;;;;AAQG;AACH,IAAA,WAAA,CACkB,GAA2B,EAC1B,KAAe,EACf,GAAqB,EAAA;QAFtB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAwB;QAC1B,IAAK,CAAA,KAAA,GAAL,KAAK,CAAU;QACf,IAAG,CAAA,GAAA,GAAH,GAAG,CAAkB;KAAK;AAE7C;;;;AAIG;AACH,IAAA,YAAY,CAAC,MAA6B,EAAA;AACxC,QAAA,IAAI,MAAM,GAAG,UAAU,CAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAC3E,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/B,YAAA,MAAM,GAAG,MAAM,CAAC,IAAI,CAClB,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC3E,CAAC;SACH;QACD,OAAO,MAAM,CAAC,IAAI;;;AAGhB,QAAA,SAAS,CAAuC,SAAS,CAAC,EAC1D,QAAQ,EAAE,EACV,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAyB,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAClF,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,OAAO,CAAC,EAC7B,sBAAsB,CACvB,CAAC;KACH;AAED;;;AAGG;AACH,IAAA,UAAU,CAAC,MAA6B,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;KAC/F;AAED;;;AAGG;AACH,IAAA,eAAe,CAAC,MAA6B,EAAA;AAC3C,QAAA,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACpD,QAAA,MAAM,uBAAuB,GAAG,aAAa,CAAI,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AAClH,QAAA,OAAO,uBAAuB,CAAC,IAAI,CACjC,sBAAsB,CACvB,CAAC;KACH;IAYD,YAAY,CAAmB,UAAyB,EAAE,EAAA;AACxD,QAAA,OAAO,iBAAiB,CAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;AACxE,aAAA,IAAI,CACH,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAG;AAC1C,YAAA,IAAI,OAAO,CAAC,OAAO,EAAE;gBACnB,OAAO;oBACL,GAAG,CAAC,CAAC,IAAI,EAAS;oBAClB,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;iBACH,CAAC;aAC/B;iBAAM;AACL,gBAAA,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;aACjB;AACH,SAAC,CAAC,CAAC,EACH,sBAAsB,CACvB,CAAC;KACL;AAED;;AAEG;AACH,IAAA,GAAG,CAAC,OAAuC,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACvC,sBAAsB,CACvB,CAAC;KACH;AAED;;;;;;AAMG;AACH,IAAA,GAAG,CAAC,IAAO,EAAA;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KAC3B;AAED;;AAEG;AACH,IAAA,GAAG,CAAS,IAAa,EAAA;;AAEvB,QAAA,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KAC1E;AACF;;AChJD;;;;;;;;;;;;;;;;;AAiBG;MACU,+BAA+B,CAAA;AAMvB,IAAA,KAAA,CAAA;AACA,IAAA,GAAA,CAAA;AANnB;;;AAGG;IACH,WACmB,CAAA,KAAe,EACf,GAAqB,EAAA;QADrB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAU;QACf,IAAG,CAAA,GAAA,GAAH,GAAG,CAAkB;KAAK;AAE7C;;;;AAIG;AACH,IAAA,YAAY,CAAC,MAA6B,EAAA;QACxC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;AAClC,YAAA,OAAO,UAAU,CAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,CACvE,sBAAsB,CACvB,CAAC;SACH;AACD,QAAA,OAAO,UAAU,CAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;aACjE,IAAI,CACH,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAC1E,MAAM,CAAC,OAAO,IAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EACtC,sBAAsB,CACvB,CAAC;KACL;AAED;;;AAGG;AACH,IAAA,UAAU,CAAC,MAA6B,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;KAC/F;AAED;;;AAGG;AACH,IAAA,eAAe,CAAC,MAA6B,EAAA;AAC3C,QAAA,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACpD,QAAA,MAAM,uBAAuB,GAAG,aAAa,CAAI,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AAClH,QAAA,OAAO,uBAAuB,CAAC,IAAI,CACjC,sBAAsB,CACvB,CAAC;KACH;IAYD,YAAY,CAAmB,UAAyB,EAAE,EAAA;AACxD,QAAA,MAAM,2BAA2B,GAAG,iBAAiB,CAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACzG,QAAA,OAAO,2BAA2B;AAC/B,aAAA,IAAI,CACH,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAG;AAC1C,YAAA,IAAI,OAAO,CAAC,OAAO,EAAE;gBACnB,OAAO;AACL,oBAAA,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE;oBACvB,GAAG,CAAC,CAAC,IAAI,EAAE;iBACgB,CAAC;aAC/B;iBAAM;AACL,gBAAA,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;aACjB;AACH,SAAC,CAAC,CAAC,EACH,sBAAsB,CACvB,CAAC;KACL;AAED;;AAEG;AACH,IAAA,GAAG,CAAC,OAAuC,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACvC,sBAAsB,CACvB,CAAC;KACH;AAEF;;AC/ED;;AAEG;MACU,kBAAkB,GAAG,IAAI,cAAc,CAAU,yCAAyC,EAAE;MAC5F,oBAAoB,GAAG,IAAI,cAAc,CAAkC,4CAA4C,EAAE;MACzH,QAAQ,GAAG,IAAI,cAAc,CAAW,iCAAiC,EAAE;MAG3E,YAAY,GAAG,IAAI,cAAc,CAAuB,qCAAqC,EAAE;AAE5G;;;;;;;;;;;AAWG;AACG,SAAU,cAAc,CAAI,aAAqC,EAAE,OAAO,GAAG,GAAG,IAAI,GAAG,EAAA;AAC3F,IAAA,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,aAAa,CAAC;AAC1B,IAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDG;MAIU,gBAAgB,CAAA;AAiBlB,IAAA,UAAA,CAAA;AAhBO,IAAA,SAAS,CAA+B;AACxC,IAAA,mBAAmB,CAAsB;AAEzD;;;;AAIG;AACH,IAAA,WAAA,CAC4B,OAAwB,EACX,IAA+B,EAC9B,uBAAuC,EACjD,QAAyB;;AAElC,IAAA,UAAkB,EACvC,IAAY,EACL,UAAkC,EACC,mBAA+C,EACvD,YAAiB,EACvC,IAAqB,EACM,eAAoB,EACxB,YAAiB;AACrB,IAAA,QAAuB,EACnB,YAA2B,EACrB,iBAAiC,EACzC,WAA0B,EAC/C,kBAAqC,EAAA;QAV1C,IAAU,CAAA,UAAA,GAAV,UAAU,CAAwB;QAYzC,MAAM,GAAG,GAAGA,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,WAAW,GAAgC,YAAY,CAAC;QAE9D,IAAI,IAAI,EAAE;AACR,YAAAC,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;SAChH;QAED,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,mBAAmB,CAAC,GAAGC,cAAc,CAAC,CAAA,EAAG,GAAG,CAAC,IAAI,CAAY,UAAA,CAAA,EAAE,kBAAkB,EAAE,GAAG,CAAC,IAAI,EAAE,MAAK;AACtH,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;YAChE,IAAI,QAAQ,EAAE;AACZ,gBAAA,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aAC9B;YACD,IAAI,WAAW,EAAE;AACf,gBAAA,SAAS,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,CAAC;aACvC;YAED,IAAI,uBAAuB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;;;gBAG5D,MAAM,iBAAiB,GAAG,MAAK;AAC7B,oBAAA,IAAI;wBACF,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,mBAAmB,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC;qBAC1G;oBAAC,OAAO,CAAC,EAAE;AACV,wBAAA,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;AAAE,4BAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAAE;AACxD,wBAAA,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;qBAClB;AACH,iBAAC,CAAC;gBACF,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC;aAC/D;iBAAM;gBACL,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;aAC/B;SAEF,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,uBAAuB,CAAC,CAAC,CAAC;KACtD;IASD,UAAU,CAAI,SAA0C,EAAE,OAAiB,EAAA;AACzE,QAAA,IAAI,aAAqC,CAAC;AAC1C,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAA8C,CAAC;SACnG;aAAM;YACL,aAAa,GAAG,SAAS,CAAC;SAC3B;AACD,QAAA,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,cAAc,CAAI,aAAa,EAAE,OAAO,CAAC,CAAC;AACjE,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACxD,OAAO,IAAI,0BAA0B,CAAI,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;KAClE;AAED;;;;AAIG;IACH,eAAe,CAAI,YAAoB,EAAE,YAA8B,EAAA;QACrE,MAAM,OAAO,GAAG,YAAY,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAa,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,YAAY,CAAgC,CAAC;QAC9G,OAAO,IAAI,+BAA+B,CAAI,OAAO,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC;KAC/E;AAUD,IAAA,GAAG,CAAI,SAAwC,EAAA;AAC7C,QAAA,IAAI,GAAyB,CAAC;AAC9B,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAA4C,CAAC;SAChF;aAAM;YACL,GAAG,GAAG,SAAS,CAAC;SACjB;AACD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AACxD,QAAA,OAAO,IAAI,wBAAwB,CAAI,SAAS,EAAE,IAAI,CAAC,CAAC;KACzD;AAED;;AAEG;IACH,QAAQ,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KAChD;uGAtHU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAUjB,gBAAgB,EAAA,EAAA,EAAA,KAAA,EACJ,iBAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACjB,kBAAkB,EAClB,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,QAAQ,EAEpB,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,WAAW,EAGC,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,oBAAoB,6BACpB,YAAY,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAEZC,cAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACjBC,UAAa,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACb,SAAS,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACT,aAAa,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACb,mBAAmB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACnB,WAAW,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AA1BtB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,KAAK,EAAA,CAAA,CAAA;;2FAEN,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA,CAAA;;0BAWI,MAAM;2BAAC,gBAAgB,CAAA;;0BACvB,QAAQ;;0BAAI,MAAM;2BAAC,iBAAiB,CAAA;;0BACpC,QAAQ;;0BAAI,MAAM;2BAAC,kBAAkB,CAAA;;0BACrC,QAAQ;;0BAAI,MAAM;2BAAC,QAAQ,CAAA;;0BAE3B,MAAM;2BAAC,WAAW,CAAA;;0BAGlB,QAAQ;;0BAAI,MAAM;2BAAC,oBAAoB,CAAA;;0BACvC,QAAQ;;0BAAI,MAAM;2BAAC,YAAY,CAAA;;0BAC/B,QAAQ;;0BACR,QAAQ;;0BAAI,MAAM;2BAACD,cAAiB,CAAA;;0BACpC,QAAQ;;0BAAI,MAAM;2BAACC,UAAa,CAAA;;0BAChC,QAAQ;;0BAAI,MAAM;2BAAC,SAAS,CAAA;;0BAC5B,QAAQ;;0BAAI,MAAM;2BAAC,aAAa,CAAA;;0BAChC,QAAQ;;0BAAI,MAAM;2BAAC,mBAAmB,CAAA;;0BACtC,QAAQ;;0BAAI,MAAM;2BAAC,WAAW,CAAA;;0BAC9B,QAAQ;;;MC1IA,sBAAsB,CAAA;AACjC,IAAA,WAAA,GAAA;QACE,QAAQ,CAAC,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;KACrE;AACD;;AAEG;IACH,OAAO,iBAAiB,CAAC,mBAAyC,EAAA;QAChE,OAAO;AACL,YAAA,QAAQ,EAAE,sBAAsB;AAChC,YAAA,SAAS,EAAE;AACT,gBAAA,EAAE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC/C,gBAAA,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AACjE,aAAA;SACF,CAAC;KACH;uGAfU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;wGAAtB,sBAAsB,EAAA,CAAA,CAAA;wGAAtB,sBAAsB,EAAA,SAAA,EAFtB,CAAE,gBAAgB,CAAE,EAAA,CAAA,CAAA;;2FAEpB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,SAAS,EAAE,CAAE,gBAAgB,CAAE;AAChC,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -6,7 +6,7 @@ import { InjectionToken, Optional, NgModule, makeEnvironmentProviders, NgZone, I
|
|
|
6
6
|
import { FirebaseApp, FirebaseApps } from '@angular/fire/app';
|
|
7
7
|
import { AuthInstances } from '@angular/fire/auth';
|
|
8
8
|
import { registerVersion } from 'firebase/app';
|
|
9
|
-
import {
|
|
9
|
+
import { auditTrail as auditTrail$1, changeToData as changeToData$1, fromRef as fromRef$1, list as list$1, listVal as listVal$1, object as object$1, objectVal as objectVal$1, stateChanges as stateChanges$1 } from 'rxfire/database';
|
|
10
10
|
export { ListenEvent, ListenerMethods } from 'rxfire/database';
|
|
11
11
|
import { child as child$1, connectDatabaseEmulator as connectDatabaseEmulator$1, enableLogging as enableLogging$1, endAt as endAt$1, endBefore as endBefore$1, equalTo as equalTo$1, forceLongPolling as forceLongPolling$1, forceWebSockets as forceWebSockets$1, get as get$1, getDatabase as getDatabase$1, goOffline as goOffline$1, goOnline as goOnline$1, increment as increment$1, limitToFirst as limitToFirst$1, limitToLast as limitToLast$1, off as off$1, onChildAdded as onChildAdded$1, onChildChanged as onChildChanged$1, onChildMoved as onChildMoved$1, onChildRemoved as onChildRemoved$1, onDisconnect as onDisconnect$1, onValue as onValue$1, orderByChild as orderByChild$1, orderByKey as orderByKey$1, orderByPriority as orderByPriority$1, orderByValue as orderByValue$1, push as push$1, query as query$1, ref as ref$1, refFromURL as refFromURL$1, remove as remove$1, runTransaction as runTransaction$1, serverTimestamp as serverTimestamp$1, set as set$1, setPriority as setPriority$1, setWithPriority as setWithPriority$1, startAfter as startAfter$1, startAt as startAt$1, update as update$1 } from 'firebase/database';
|
|
12
12
|
export * from 'firebase/database';
|
|
@@ -93,14 +93,14 @@ function provideDatabase(fn, ...deps) {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
96
|
+
const auditTrail = _zoneWrap(auditTrail$1, true);
|
|
97
|
+
const changeToData = _zoneWrap(changeToData$1, true);
|
|
96
98
|
const fromRef = _zoneWrap(fromRef$1, true);
|
|
97
|
-
const stateChanges = _zoneWrap(stateChanges$1, true);
|
|
98
99
|
const list = _zoneWrap(list$1, true);
|
|
99
100
|
const listVal = _zoneWrap(listVal$1, true);
|
|
100
|
-
const auditTrail = _zoneWrap(auditTrail$1, true);
|
|
101
101
|
const object = _zoneWrap(object$1, true);
|
|
102
102
|
const objectVal = _zoneWrap(objectVal$1, true);
|
|
103
|
-
const
|
|
103
|
+
const stateChanges = _zoneWrap(stateChanges$1, true);
|
|
104
104
|
|
|
105
105
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
106
106
|
const child = _zoneWrap(child$1, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-fire-database.mjs","sources":["../../../src/database/database.ts","../../../src/database/database.module.ts","../../../src/database/rxfire.ts","../../../src/database/firebase.ts","../../../src/database/angular-fire-database.ts"],"sourcesContent":["import { ɵgetAllInstancesOf } from '@angular/fire';\nimport { Database as FirebaseDatabase } from 'firebase/database';\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// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Database extends FirebaseDatabase {}\n\nexport class Database {\n constructor(database: FirebaseDatabase) {\n return database;\n }\n}\n\nexport const DATABASE_PROVIDER_NAME = 'database';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface DatabaseInstances extends Array<FirebaseDatabase> {}\n\nexport class DatabaseInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME);\n }\n}\n\nexport const databaseInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME))),\n distinct(),\n);\n","import {\n EnvironmentProviders,\n InjectionToken,\n Injector,\n NgModule,\n NgZone,\n Optional,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { ɵAppCheckInstances } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { AuthInstances } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { Database as FirebaseDatabase } from 'firebase/database';\nimport { DATABASE_PROVIDER_NAME, Database, DatabaseInstances } from './database';\n\nexport const PROVIDED_DATABASE_INSTANCES = new InjectionToken<Database[]>('angularfire2.database-instances');\n\nexport function defaultDatabaseInstanceFactory(provided: FirebaseDatabase[]|undefined, defaultApp: FirebaseApp) {\n const defaultDatabase = ɵgetDefaultInstanceOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME, provided, defaultApp);\n return defaultDatabase && new Database(defaultDatabase);\n}\n\nexport function databaseInstanceFactory(fn: (injector: Injector) => FirebaseDatabase) {\n return (zone: NgZone, injector: Injector) => {\n const database = zone.runOutsideAngular(() => fn(injector));\n return new Database(database);\n };\n}\n\nconst DATABASE_INSTANCES_PROVIDER = {\n provide: DatabaseInstances,\n deps: [\n [new Optional(), PROVIDED_DATABASE_INSTANCES ],\n ]\n};\n\nconst DEFAULT_DATABASE_INSTANCE_PROVIDER = {\n provide: Database,\n useFactory: defaultDatabaseInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_DATABASE_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_DATABASE_INSTANCE_PROVIDER,\n DATABASE_INSTANCES_PROVIDER,\n ]\n})\nexport class DatabaseModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'rtdb');\n }\n}\n\nexport function provideDatabase(fn: (injector: Injector) => FirebaseDatabase, ...deps: any[]): EnvironmentProviders {\n registerVersion('angularfire', VERSION.full, 'rtdb');\n return makeEnvironmentProviders([\n DEFAULT_DATABASE_INSTANCE_PROVIDER,\n DATABASE_INSTANCES_PROVIDER,\n {\n provide: PROVIDED_DATABASE_INSTANCES,\n useFactory: databaseInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n // Database+Auth work better if Auth is loaded first\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 fromRef as _fromRef,\n stateChanges as _stateChanges,\n list as _list,\n listVal as _listVal,\n auditTrail as _auditTrail,\n object as _object,\n objectVal as _objectVal,\n changeToData as _changeToData\n} from 'rxfire/database';\n\nexport {\n ListenEvent,\n ListenerMethods\n} from 'rxfire/database';\n\nexport const fromRef = ɵzoneWrap(_fromRef, true);\nexport const stateChanges = ɵzoneWrap(_stateChanges, true);\nexport const list = ɵzoneWrap(_list, true);\nexport const listVal = ɵzoneWrap(_listVal, true);\nexport const auditTrail = ɵzoneWrap(_auditTrail, true);\nexport const object = ɵzoneWrap(_object, true);\nexport const objectVal = ɵzoneWrap(_objectVal, true);\nexport const changeToData = ɵzoneWrap(_changeToData, true);\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/database';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n child as _child,\n connectDatabaseEmulator as _connectDatabaseEmulator,\n enableLogging as _enableLogging,\n endAt as _endAt,\n endBefore as _endBefore,\n equalTo as _equalTo,\n forceLongPolling as _forceLongPolling,\n forceWebSockets as _forceWebSockets,\n get as _get,\n getDatabase as _getDatabase,\n goOffline as _goOffline,\n goOnline as _goOnline,\n increment as _increment,\n limitToFirst as _limitToFirst,\n limitToLast as _limitToLast,\n off as _off,\n onChildAdded as _onChildAdded,\n onChildChanged as _onChildChanged,\n onChildMoved as _onChildMoved,\n onChildRemoved as _onChildRemoved,\n onDisconnect as _onDisconnect,\n onValue as _onValue,\n orderByChild as _orderByChild,\n orderByKey as _orderByKey,\n orderByPriority as _orderByPriority,\n orderByValue as _orderByValue,\n push as _push,\n query as _query,\n ref as _ref,\n refFromURL as _refFromURL,\n remove as _remove,\n runTransaction as _runTransaction,\n serverTimestamp as _serverTimestamp,\n set as _set,\n setPriority as _setPriority,\n setWithPriority as _setWithPriority,\n startAfter as _startAfter,\n startAt as _startAt,\n update as _update\n} from 'firebase/database';\n\nexport const child = ɵzoneWrap(_child, true);\nexport const connectDatabaseEmulator = ɵzoneWrap(_connectDatabaseEmulator, true);\nexport const enableLogging = ɵzoneWrap(_enableLogging, true);\nexport const endAt = ɵzoneWrap(_endAt, true);\nexport const endBefore = ɵzoneWrap(_endBefore, true);\nexport const equalTo = ɵzoneWrap(_equalTo, true);\nexport const forceLongPolling = ɵzoneWrap(_forceLongPolling, true);\nexport const forceWebSockets = ɵzoneWrap(_forceWebSockets, true);\nexport const get = ɵzoneWrap(_get, true);\nexport const getDatabase = ɵzoneWrap(_getDatabase, true);\nexport const goOffline = ɵzoneWrap(_goOffline, true);\nexport const goOnline = ɵzoneWrap(_goOnline, true);\nexport const increment = ɵzoneWrap(_increment, true);\nexport const limitToFirst = ɵzoneWrap(_limitToFirst, true);\nexport const limitToLast = ɵzoneWrap(_limitToLast, true);\nexport const off = ɵzoneWrap(_off, true);\nexport const onChildAdded = ɵzoneWrap(_onChildAdded, true);\nexport const onChildChanged = ɵzoneWrap(_onChildChanged, true);\nexport const onChildMoved = ɵzoneWrap(_onChildMoved, true);\nexport const onChildRemoved = ɵzoneWrap(_onChildRemoved, true);\nexport const onDisconnect = ɵzoneWrap(_onDisconnect, true);\nexport const onValue = ɵzoneWrap(_onValue, true);\nexport const orderByChild = ɵzoneWrap(_orderByChild, true);\nexport const orderByKey = ɵzoneWrap(_orderByKey, true);\nexport const orderByPriority = ɵzoneWrap(_orderByPriority, true);\nexport const orderByValue = ɵzoneWrap(_orderByValue, true);\nexport const push = ɵzoneWrap(_push, true);\nexport const query = ɵzoneWrap(_query, true);\nexport const ref = ɵzoneWrap(_ref, true);\nexport const refFromURL = ɵzoneWrap(_refFromURL, true);\nexport const remove = ɵzoneWrap(_remove, true);\nexport const runTransaction = ɵzoneWrap(_runTransaction, true);\nexport const serverTimestamp = ɵzoneWrap(_serverTimestamp, true);\nexport const set = ɵzoneWrap(_set, true);\nexport const setPriority = ɵzoneWrap(_setPriority, true);\nexport const setWithPriority = ɵzoneWrap(_setWithPriority, true);\nexport const startAfter = ɵzoneWrap(_startAfter, true);\nexport const startAt = ɵzoneWrap(_startAt, true);\nexport const update = ɵzoneWrap(_update, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵgetAllInstancesOf","ɵgetDefaultInstanceOf","ɵAngularFireSchedulers","ɵAppCheckInstances","ɵzoneWrap","_fromRef","_stateChanges","_list","_listVal","_auditTrail","_object","_objectVal","_changeToData","_child","_connectDatabaseEmulator","_enableLogging","_endAt","_endBefore","_equalTo","_forceLongPolling","_forceWebSockets","_get","_getDatabase","_goOffline","_goOnline","_increment","_limitToFirst","_limitToLast","_off","_onChildAdded","_onChildChanged","_onChildMoved","_onChildRemoved","_onDisconnect","_onValue","_orderByChild","_orderByKey","_orderByPriority","_orderByValue","_push","_query","_ref","_refFromURL","_remove","_runTransaction","_serverTimestamp","_set","_setPriority","_setWithPriority","_startAfter","_startAt","_update"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"angular-fire-database.mjs","sources":["../../../src/database/database.ts","../../../src/database/database.module.ts","../../../src/database/rxfire.ts","../../../src/database/firebase.ts","../../../src/database/angular-fire-database.ts"],"sourcesContent":["import { ɵgetAllInstancesOf } from '@angular/fire';\nimport { Database as FirebaseDatabase } from 'firebase/database';\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// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Database extends FirebaseDatabase {}\n\nexport class Database {\n constructor(database: FirebaseDatabase) {\n return database;\n }\n}\n\nexport const DATABASE_PROVIDER_NAME = 'database';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface DatabaseInstances extends Array<FirebaseDatabase> {}\n\nexport class DatabaseInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME);\n }\n}\n\nexport const databaseInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME))),\n distinct(),\n);\n","import {\n EnvironmentProviders,\n InjectionToken,\n Injector,\n NgModule,\n NgZone,\n Optional,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { ɵAppCheckInstances } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { AuthInstances } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { Database as FirebaseDatabase } from 'firebase/database';\nimport { DATABASE_PROVIDER_NAME, Database, DatabaseInstances } from './database';\n\nexport const PROVIDED_DATABASE_INSTANCES = new InjectionToken<Database[]>('angularfire2.database-instances');\n\nexport function defaultDatabaseInstanceFactory(provided: FirebaseDatabase[]|undefined, defaultApp: FirebaseApp) {\n const defaultDatabase = ɵgetDefaultInstanceOf<FirebaseDatabase>(DATABASE_PROVIDER_NAME, provided, defaultApp);\n return defaultDatabase && new Database(defaultDatabase);\n}\n\nexport function databaseInstanceFactory(fn: (injector: Injector) => FirebaseDatabase) {\n return (zone: NgZone, injector: Injector) => {\n const database = zone.runOutsideAngular(() => fn(injector));\n return new Database(database);\n };\n}\n\nconst DATABASE_INSTANCES_PROVIDER = {\n provide: DatabaseInstances,\n deps: [\n [new Optional(), PROVIDED_DATABASE_INSTANCES ],\n ]\n};\n\nconst DEFAULT_DATABASE_INSTANCE_PROVIDER = {\n provide: Database,\n useFactory: defaultDatabaseInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_DATABASE_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_DATABASE_INSTANCE_PROVIDER,\n DATABASE_INSTANCES_PROVIDER,\n ]\n})\nexport class DatabaseModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'rtdb');\n }\n}\n\nexport function provideDatabase(fn: (injector: Injector) => FirebaseDatabase, ...deps: any[]): EnvironmentProviders {\n registerVersion('angularfire', VERSION.full, 'rtdb');\n return makeEnvironmentProviders([\n DEFAULT_DATABASE_INSTANCE_PROVIDER,\n DATABASE_INSTANCES_PROVIDER,\n {\n provide: PROVIDED_DATABASE_INSTANCES,\n useFactory: databaseInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n // Database+Auth work better if Auth is loaded first\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 auditTrail as _auditTrail,\n changeToData as _changeToData,\n fromRef as _fromRef,\n list as _list,\n listVal as _listVal,\n object as _object,\n objectVal as _objectVal,\n stateChanges as _stateChanges\n} from 'rxfire/database';\n\nexport {\n ListenEvent,\n ListenerMethods\n} from 'rxfire/database';\n\nexport const auditTrail = ɵzoneWrap(_auditTrail, true);\nexport const changeToData = ɵzoneWrap(_changeToData, true);\nexport const fromRef = ɵzoneWrap(_fromRef, true);\nexport const list = ɵzoneWrap(_list, true);\nexport const listVal = ɵzoneWrap(_listVal, true);\nexport const object = ɵzoneWrap(_object, true);\nexport const objectVal = ɵzoneWrap(_objectVal, true);\nexport const stateChanges = ɵzoneWrap(_stateChanges, true);\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/database';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n child as _child,\n connectDatabaseEmulator as _connectDatabaseEmulator,\n enableLogging as _enableLogging,\n endAt as _endAt,\n endBefore as _endBefore,\n equalTo as _equalTo,\n forceLongPolling as _forceLongPolling,\n forceWebSockets as _forceWebSockets,\n get as _get,\n getDatabase as _getDatabase,\n goOffline as _goOffline,\n goOnline as _goOnline,\n increment as _increment,\n limitToFirst as _limitToFirst,\n limitToLast as _limitToLast,\n off as _off,\n onChildAdded as _onChildAdded,\n onChildChanged as _onChildChanged,\n onChildMoved as _onChildMoved,\n onChildRemoved as _onChildRemoved,\n onDisconnect as _onDisconnect,\n onValue as _onValue,\n orderByChild as _orderByChild,\n orderByKey as _orderByKey,\n orderByPriority as _orderByPriority,\n orderByValue as _orderByValue,\n push as _push,\n query as _query,\n ref as _ref,\n refFromURL as _refFromURL,\n remove as _remove,\n runTransaction as _runTransaction,\n serverTimestamp as _serverTimestamp,\n set as _set,\n setPriority as _setPriority,\n setWithPriority as _setWithPriority,\n startAfter as _startAfter,\n startAt as _startAt,\n update as _update\n} from 'firebase/database';\n\nexport const child = ɵzoneWrap(_child, true);\nexport const connectDatabaseEmulator = ɵzoneWrap(_connectDatabaseEmulator, true);\nexport const enableLogging = ɵzoneWrap(_enableLogging, true);\nexport const endAt = ɵzoneWrap(_endAt, true);\nexport const endBefore = ɵzoneWrap(_endBefore, true);\nexport const equalTo = ɵzoneWrap(_equalTo, true);\nexport const forceLongPolling = ɵzoneWrap(_forceLongPolling, true);\nexport const forceWebSockets = ɵzoneWrap(_forceWebSockets, true);\nexport const get = ɵzoneWrap(_get, true);\nexport const getDatabase = ɵzoneWrap(_getDatabase, true);\nexport const goOffline = ɵzoneWrap(_goOffline, true);\nexport const goOnline = ɵzoneWrap(_goOnline, true);\nexport const increment = ɵzoneWrap(_increment, true);\nexport const limitToFirst = ɵzoneWrap(_limitToFirst, true);\nexport const limitToLast = ɵzoneWrap(_limitToLast, true);\nexport const off = ɵzoneWrap(_off, true);\nexport const onChildAdded = ɵzoneWrap(_onChildAdded, true);\nexport const onChildChanged = ɵzoneWrap(_onChildChanged, true);\nexport const onChildMoved = ɵzoneWrap(_onChildMoved, true);\nexport const onChildRemoved = ɵzoneWrap(_onChildRemoved, true);\nexport const onDisconnect = ɵzoneWrap(_onDisconnect, true);\nexport const onValue = ɵzoneWrap(_onValue, true);\nexport const orderByChild = ɵzoneWrap(_orderByChild, true);\nexport const orderByKey = ɵzoneWrap(_orderByKey, true);\nexport const orderByPriority = ɵzoneWrap(_orderByPriority, true);\nexport const orderByValue = ɵzoneWrap(_orderByValue, true);\nexport const push = ɵzoneWrap(_push, true);\nexport const query = ɵzoneWrap(_query, true);\nexport const ref = ɵzoneWrap(_ref, true);\nexport const refFromURL = ɵzoneWrap(_refFromURL, true);\nexport const remove = ɵzoneWrap(_remove, true);\nexport const runTransaction = ɵzoneWrap(_runTransaction, true);\nexport const serverTimestamp = ɵzoneWrap(_serverTimestamp, true);\nexport const set = ɵzoneWrap(_set, true);\nexport const setPriority = ɵzoneWrap(_setPriority, true);\nexport const setWithPriority = ɵzoneWrap(_setWithPriority, true);\nexport const startAfter = ɵzoneWrap(_startAfter, true);\nexport const startAt = ɵzoneWrap(_startAt, true);\nexport const update = ɵzoneWrap(_update, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵgetAllInstancesOf","ɵgetDefaultInstanceOf","ɵAngularFireSchedulers","ɵAppCheckInstances","ɵzoneWrap","_auditTrail","_changeToData","_fromRef","_list","_listVal","_object","_objectVal","_stateChanges","_child","_connectDatabaseEmulator","_enableLogging","_endAt","_endBefore","_equalTo","_forceLongPolling","_forceWebSockets","_get","_getDatabase","_goOffline","_goOnline","_increment","_limitToFirst","_limitToLast","_off","_onChildAdded","_onChildChanged","_onChildMoved","_onChildRemoved","_onDisconnect","_onValue","_orderByChild","_orderByKey","_orderByPriority","_orderByValue","_push","_query","_ref","_refFromURL","_remove","_runTransaction","_serverTimestamp","_set","_setPriority","_setWithPriority","_startAfter","_startAt","_update"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { InjectionToken, Optional, NgModule, makeEnvironmentProviders, NgZone, I
|
|
|
6
6
|
import { FirebaseApp, FirebaseApps } from '@angular/fire/app';
|
|
7
7
|
import { AuthInstances } from '@angular/fire/auth';
|
|
8
8
|
import { registerVersion } from 'firebase/app';
|
|
9
|
-
import { collection as collection$1,
|
|
9
|
+
import { collection as collection$1, collectionCount as collectionCount$1, collectionCountSnap as collectionCountSnap$1, collectionData as collectionData$1, doc as doc$1, docData as docData$1, fromRef as fromRef$1, snapToData as snapToData$1 } from 'rxfire/firestore/lite';
|
|
10
10
|
import { addDoc as addDoc$1, aggregateFieldEqual as aggregateFieldEqual$1, aggregateQuerySnapshotEqual as aggregateQuerySnapshotEqual$1, and as and$1, arrayRemove as arrayRemove$1, arrayUnion as arrayUnion$1, average as average$1, collection as collection$2, collectionGroup as collectionGroup$1, connectFirestoreEmulator as connectFirestoreEmulator$1, count as count$1, deleteDoc as deleteDoc$1, deleteField as deleteField$1, doc as doc$2, documentId as documentId$1, endAt as endAt$1, endBefore as endBefore$1, getAggregate as getAggregate$1, getCount as getCount$1, getDoc as getDoc$1, getDocs as getDocs$1, getFirestore as getFirestore$1, increment as increment$1, initializeFirestore as initializeFirestore$1, limit as limit$1, limitToLast as limitToLast$1, or as or$1, orderBy as orderBy$1, query as query$1, queryEqual as queryEqual$1, refEqual as refEqual$1, runTransaction as runTransaction$1, serverTimestamp as serverTimestamp$1, setDoc as setDoc$1, setLogLevel as setLogLevel$1, snapshotEqual as snapshotEqual$1, startAfter as startAfter$1, startAt as startAt$1, sum as sum$1, terminate as terminate$1, updateDoc as updateDoc$1, where as where$1, writeBatch as writeBatch$1 } from 'firebase/firestore/lite';
|
|
11
11
|
export * from 'firebase/firestore/lite';
|
|
12
12
|
|
|
@@ -93,13 +93,13 @@ function provideFirestore(fn, ...deps) {
|
|
|
93
93
|
|
|
94
94
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
95
95
|
const collectionSnapshots = _zoneWrap(collection$1, true);
|
|
96
|
-
const collectionData = _zoneWrap(collectionData$1, true);
|
|
97
|
-
const collectionCountSnap = _zoneWrap(collectionCountSnap$1, true);
|
|
98
96
|
const collectionCount = _zoneWrap(collectionCount$1, true);
|
|
97
|
+
const collectionCountSnap = _zoneWrap(collectionCountSnap$1, true);
|
|
98
|
+
const collectionData = _zoneWrap(collectionData$1, true);
|
|
99
99
|
const docSnapshots = _zoneWrap(doc$1, true);
|
|
100
100
|
const docData = _zoneWrap(docData$1, true);
|
|
101
|
-
const snapToData = _zoneWrap(snapToData$1, true);
|
|
102
101
|
const fromRef = _zoneWrap(fromRef$1, true);
|
|
102
|
+
const snapToData = _zoneWrap(snapToData$1, true);
|
|
103
103
|
|
|
104
104
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
105
105
|
const addDoc = _zoneWrap(addDoc$1, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-fire-firestore-lite.mjs","sources":["../../../src/firestore/lite/lite.ts","../../../src/firestore/lite/lite.module.ts","../../../src/firestore/lite/rxfire.ts","../../../src/firestore/lite/firebase.ts","../../../src/firestore/lite/angular-fire-firestore-lite.ts"],"sourcesContent":["import { ɵgetAllInstancesOf } from '@angular/fire';\nimport { Firestore as FirebaseFirestore } from 'firebase/firestore/lite';\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// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Firestore extends FirebaseFirestore {}\n\nexport class Firestore {\n constructor(firestore: FirebaseFirestore) {\n return firestore;\n }\n}\n\nexport const FIRESTORE_PROVIDER_NAME = 'firestore/lite';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface FirestoreInstances extends Array<FirebaseFirestore> {}\n\nexport class FirestoreInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME);\n }\n}\n\nexport const firestoreInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME))),\n distinct(),\n);\n","import {\n EnvironmentProviders,\n InjectionToken,\n Injector,\n NgModule,\n NgZone,\n Optional,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers, ɵAppCheckInstances, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { AuthInstances } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { Firestore as FirebaseFirestore } from 'firebase/firestore/lite';\nimport { FIRESTORE_PROVIDER_NAME, Firestore, FirestoreInstances } from './lite';\n\nexport const PROVIDED_FIRESTORE_INSTANCES = new InjectionToken<Firestore[]>('angularfire2.firestore-lite-instances');\n\nexport function defaultFirestoreInstanceFactory(provided: FirebaseFirestore[]|undefined, defaultApp: FirebaseApp) {\n const defaultFirestore = ɵgetDefaultInstanceOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME, provided, defaultApp);\n return defaultFirestore && new Firestore(defaultFirestore);\n}\n\nexport function firestoreInstanceFactory(fn: (injector: Injector) => FirebaseFirestore) {\n return (zone: NgZone, injector: Injector) => {\n const firestore = zone.runOutsideAngular(() => fn(injector));\n return new Firestore(firestore);\n };\n}\n\nconst FIRESTORE_INSTANCES_PROVIDER = {\n provide: FirestoreInstances,\n deps: [\n [new Optional(), PROVIDED_FIRESTORE_INSTANCES ],\n ]\n};\n\nconst DEFAULT_FIRESTORE_INSTANCE_PROVIDER = {\n provide: Firestore,\n useFactory: defaultFirestoreInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_FIRESTORE_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_FIRESTORE_INSTANCE_PROVIDER,\n FIRESTORE_INSTANCES_PROVIDER,\n ]\n})\nexport class FirestoreModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'lite');\n }\n}\n\nexport function provideFirestore(fn: (injector: Injector) => FirebaseFirestore, ...deps: any[]): EnvironmentProviders {\n registerVersion('angularfire', VERSION.full, 'lite');\n\n return makeEnvironmentProviders([\n DEFAULT_FIRESTORE_INSTANCE_PROVIDER,\n FIRESTORE_INSTANCES_PROVIDER,\n {\n provide: PROVIDED_FIRESTORE_INSTANCES,\n useFactory: firestoreInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n // Firestore+Auth work better if Auth is loaded first\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 collection as _collection,\n collectionData as _collectionData,\n collectionCountSnap as _collectionCountSnap,\n collectionCount as _collectionCount,\n doc as _doc,\n docData as _docData,\n snapToData as _snapToData,\n fromRef as _fromRef\n} from 'rxfire/firestore/lite';\n\nexport const collectionSnapshots = ɵzoneWrap(_collection, true);\nexport const collectionData = ɵzoneWrap(_collectionData, true);\nexport const collectionCountSnap = ɵzoneWrap(_collectionCountSnap, true);\nexport const collectionCount = ɵzoneWrap(_collectionCount, true);\nexport const docSnapshots = ɵzoneWrap(_doc, true);\nexport const docData = ɵzoneWrap(_docData, true);\nexport const snapToData = ɵzoneWrap(_snapToData, true);\nexport const fromRef = ɵzoneWrap(_fromRef, true);\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/firestore/lite';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n addDoc as _addDoc,\n aggregateFieldEqual as _aggregateFieldEqual,\n aggregateQuerySnapshotEqual as _aggregateQuerySnapshotEqual,\n and as _and,\n arrayRemove as _arrayRemove,\n arrayUnion as _arrayUnion,\n average as _average,\n collection as _collection,\n collectionGroup as _collectionGroup,\n connectFirestoreEmulator as _connectFirestoreEmulator,\n count as _count,\n deleteDoc as _deleteDoc,\n deleteField as _deleteField,\n doc as _doc,\n documentId as _documentId,\n endAt as _endAt,\n endBefore as _endBefore,\n getAggregate as _getAggregate,\n getCount as _getCount,\n getDoc as _getDoc,\n getDocs as _getDocs,\n getFirestore as _getFirestore,\n increment as _increment,\n initializeFirestore as _initializeFirestore,\n limit as _limit,\n limitToLast as _limitToLast,\n or as _or,\n orderBy as _orderBy,\n query as _query,\n queryEqual as _queryEqual,\n refEqual as _refEqual,\n runTransaction as _runTransaction,\n serverTimestamp as _serverTimestamp,\n setDoc as _setDoc,\n setLogLevel as _setLogLevel,\n snapshotEqual as _snapshotEqual,\n startAfter as _startAfter,\n startAt as _startAt,\n sum as _sum,\n terminate as _terminate,\n updateDoc as _updateDoc,\n where as _where,\n writeBatch as _writeBatch\n} from 'firebase/firestore/lite';\n\nexport const addDoc = ɵzoneWrap(_addDoc, true);\nexport const aggregateFieldEqual = ɵzoneWrap(_aggregateFieldEqual, true);\nexport const aggregateQuerySnapshotEqual = ɵzoneWrap(_aggregateQuerySnapshotEqual, true);\nexport const and = ɵzoneWrap(_and, true);\nexport const arrayRemove = ɵzoneWrap(_arrayRemove, true);\nexport const arrayUnion = ɵzoneWrap(_arrayUnion, true);\nexport const average = ɵzoneWrap(_average, true);\nexport const collection = ɵzoneWrap(_collection, true);\nexport const collectionGroup = ɵzoneWrap(_collectionGroup, true);\nexport const connectFirestoreEmulator = ɵzoneWrap(_connectFirestoreEmulator, true);\nexport const count = ɵzoneWrap(_count, true);\nexport const deleteDoc = ɵzoneWrap(_deleteDoc, true);\nexport const deleteField = ɵzoneWrap(_deleteField, true);\nexport const doc = ɵzoneWrap(_doc, true);\nexport const documentId = ɵzoneWrap(_documentId, true);\nexport const endAt = ɵzoneWrap(_endAt, true);\nexport const endBefore = ɵzoneWrap(_endBefore, true);\nexport const getAggregate = ɵzoneWrap(_getAggregate, true);\nexport const getCount = ɵzoneWrap(_getCount, true);\nexport const getDoc = ɵzoneWrap(_getDoc, true);\nexport const getDocs = ɵzoneWrap(_getDocs, true);\nexport const getFirestore = ɵzoneWrap(_getFirestore, true);\nexport const increment = ɵzoneWrap(_increment, true);\nexport const initializeFirestore = ɵzoneWrap(_initializeFirestore, true);\nexport const limit = ɵzoneWrap(_limit, true);\nexport const limitToLast = ɵzoneWrap(_limitToLast, true);\nexport const or = ɵzoneWrap(_or, true);\nexport const orderBy = ɵzoneWrap(_orderBy, true);\nexport const query = ɵzoneWrap(_query, true);\nexport const queryEqual = ɵzoneWrap(_queryEqual, true);\nexport const refEqual = ɵzoneWrap(_refEqual, true);\nexport const runTransaction = ɵzoneWrap(_runTransaction, true);\nexport const serverTimestamp = ɵzoneWrap(_serverTimestamp, true);\nexport const setDoc = ɵzoneWrap(_setDoc, true);\nexport const setLogLevel = ɵzoneWrap(_setLogLevel, true);\nexport const snapshotEqual = ɵzoneWrap(_snapshotEqual, true);\nexport const startAfter = ɵzoneWrap(_startAfter, true);\nexport const startAt = ɵzoneWrap(_startAt, true);\nexport const sum = ɵzoneWrap(_sum, true);\nexport const terminate = ɵzoneWrap(_terminate, true);\nexport const updateDoc = ɵzoneWrap(_updateDoc, true);\nexport const where = ɵzoneWrap(_where, true);\nexport const writeBatch = ɵzoneWrap(_writeBatch, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵgetAllInstancesOf","ɵgetDefaultInstanceOf","ɵAngularFireSchedulers","ɵAppCheckInstances","ɵzoneWrap","_collection","_collectionData","_collectionCountSnap","_collectionCount","_doc","_docData","_snapToData","_fromRef","_addDoc","_aggregateFieldEqual","_aggregateQuerySnapshotEqual","_and","_arrayRemove","_arrayUnion","_average","_collectionGroup","_connectFirestoreEmulator","_count","_deleteDoc","_deleteField","_documentId","_endAt","_endBefore","_getAggregate","_getCount","_getDoc","_getDocs","_getFirestore","_increment","_initializeFirestore","_limit","_limitToLast","_or","_orderBy","_query","_queryEqual","_refEqual","_runTransaction","_serverTimestamp","_setDoc","_setLogLevel","_snapshotEqual","_startAfter","_startAt","_sum","_terminate","_updateDoc","_where","_writeBatch"],"mappings":";;;;;;;;;;;;MASa,SAAS,CAAA;AACpB,IAAA,WAAA,CAAY,SAA4B,EAAA;AACtC,QAAA,OAAO,SAAS,CAAC;KAClB;AACF,CAAA;AAEM,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;MAK3C,kBAAkB,CAAA;AAC7B,IAAA,WAAA,GAAA;AACE,QAAA,OAAOA,kBAAkB,CAAoB,uBAAuB,CAAC,CAAC;KACvE;AACF,CAAA;AAEM,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAClD,SAAS,CAAC,MAAM,IAAI,CAACA,kBAAkB,CAAoB,uBAAuB,CAAC,CAAC,CAAC,EACrF,QAAQ,EAAE;;ACZL,MAAM,4BAA4B,GAAG,IAAI,cAAc,CAAc,uCAAuC,CAAC,CAAC;AAErG,SAAA,+BAA+B,CAAC,QAAuC,EAAE,UAAuB,EAAA;IAC9G,MAAM,gBAAgB,GAAGC,qBAAqB,CAAoB,uBAAuB,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AACjH,IAAA,OAAO,gBAAgB,IAAI,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAAC;AAC7D,CAAC;AAEK,SAAU,wBAAwB,CAAC,EAA6C,EAAA;AACpF,IAAA,OAAO,CAAC,IAAY,EAAE,QAAkB,KAAI;AAC1C,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC7D,QAAA,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,KAAC,CAAC;AACJ,CAAC;AAED,MAAM,4BAA4B,GAAG;AACnC,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,IAAI,EAAE;AACJ,QAAA,CAAC,IAAI,QAAQ,EAAE,EAAE,4BAA4B,CAAE;AAChD,KAAA;CACF,CAAC;AAEF,MAAM,mCAAmC,GAAG;AAC1C,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,UAAU,EAAE,+BAA+B;AAC3C,IAAA,IAAI,EAAE;AACJ,QAAA,CAAC,IAAI,QAAQ,EAAE,EAAE,4BAA4B,CAAE;QAC/C,WAAW;AACZ,KAAA;CACF,CAAC;MAQW,eAAe,CAAA;AAC1B,IAAA,WAAA,GAAA;QACE,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KACtD;uGAHU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;wGAAf,eAAe,EAAA,CAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EALf,SAAA,EAAA;YACT,mCAAmC;YACnC,4BAA4B;AAC7B,SAAA,EAAA,CAAA,CAAA;;2FAEU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;wBACT,mCAAmC;wBACnC,4BAA4B;AAC7B,qBAAA;AACF,iBAAA,CAAA;;SAOe,gBAAgB,CAAC,EAA6C,EAAE,GAAG,IAAW,EAAA;IAC5F,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAErD,IAAA,OAAO,wBAAwB,CAAC;QAC9B,mCAAmC;QACnC,4BAA4B;AAC5B,QAAA;AACE,YAAA,OAAO,EAAE,4BAA4B;AACrC,YAAA,UAAU,EAAE,wBAAwB,CAAC,EAAE,CAAC;AACxC,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,IAAI,EAAE;gBACJ,MAAM;gBACN,QAAQ;gBACRC,sBAAsB;gBACtB,YAAY;;AAEZ,gBAAA,CAAC,IAAI,QAAQ,EAAE,EAAE,aAAa,CAAE;AAChC,gBAAA,CAAC,IAAI,QAAQ,EAAE,EAAEC,kBAAkB,CAAE;AACrC,gBAAA,GAAG,IAAI;AACR,aAAA;AACF,SAAA;AACF,KAAA,CAAC,CAAC;AACL;;AChFA;AAaa,MAAA,mBAAmB,GAAGC,SAAS,CAACC,YAAW,EAAE,IAAI,EAAE;AACnD,MAAA,cAAc,GAAGD,SAAS,CAACE,gBAAe,EAAE,IAAI,EAAE;AAClD,MAAA,mBAAmB,GAAGF,SAAS,CAACG,qBAAoB,EAAE,IAAI,EAAE;AAC5D,MAAA,eAAe,GAAGH,SAAS,CAACI,iBAAgB,EAAE,IAAI,EAAE;AACpD,MAAA,YAAY,GAAGJ,SAAS,CAACK,KAAI,EAAE,IAAI,EAAE;AACrC,MAAA,OAAO,GAAGL,SAAS,CAACM,SAAQ,EAAE,IAAI,EAAE;AACpC,MAAA,UAAU,GAAGN,SAAS,CAACO,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,OAAO,GAAGP,SAAS,CAACQ,SAAQ,EAAE,IAAI;;ACpB/C;AAiDa,MAAA,MAAM,GAAGR,SAAS,CAACS,QAAO,EAAE,IAAI,EAAE;AAClC,MAAA,mBAAmB,GAAGT,SAAS,CAACU,qBAAoB,EAAE,IAAI,EAAE;AAC5D,MAAA,2BAA2B,GAAGV,SAAS,CAACW,6BAA4B,EAAE,IAAI,EAAE;AAC5E,MAAA,GAAG,GAAGX,SAAS,CAACY,KAAI,EAAE,IAAI,EAAE;AAC5B,MAAA,WAAW,GAAGZ,SAAS,CAACa,aAAY,EAAE,IAAI,EAAE;AAC5C,MAAA,UAAU,GAAGb,SAAS,CAACc,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,OAAO,GAAGd,SAAS,CAACe,SAAQ,EAAE,IAAI,EAAE;AACpC,MAAA,UAAU,GAAGf,SAAS,CAACC,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,eAAe,GAAGD,SAAS,CAACgB,iBAAgB,EAAE,IAAI,EAAE;AACpD,MAAA,wBAAwB,GAAGhB,SAAS,CAACiB,0BAAyB,EAAE,IAAI,EAAE;AACtE,MAAA,KAAK,GAAGjB,SAAS,CAACkB,OAAM,EAAE,IAAI,EAAE;AAChC,MAAA,SAAS,GAAGlB,SAAS,CAACmB,WAAU,EAAE,IAAI,EAAE;AACxC,MAAA,WAAW,GAAGnB,SAAS,CAACoB,aAAY,EAAE,IAAI,EAAE;AAC5C,MAAA,GAAG,GAAGpB,SAAS,CAACK,KAAI,EAAE,IAAI,EAAE;AAC5B,MAAA,UAAU,GAAGL,SAAS,CAACqB,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,KAAK,GAAGrB,SAAS,CAACsB,OAAM,EAAE,IAAI,EAAE;AAChC,MAAA,SAAS,GAAGtB,SAAS,CAACuB,WAAU,EAAE,IAAI,EAAE;AACxC,MAAA,YAAY,GAAGvB,SAAS,CAACwB,cAAa,EAAE,IAAI,EAAE;AAC9C,MAAA,QAAQ,GAAGxB,SAAS,CAACyB,UAAS,EAAE,IAAI,EAAE;AACtC,MAAA,MAAM,GAAGzB,SAAS,CAAC0B,QAAO,EAAE,IAAI,EAAE;AAClC,MAAA,OAAO,GAAG1B,SAAS,CAAC2B,SAAQ,EAAE,IAAI,EAAE;AACpC,MAAA,YAAY,GAAG3B,SAAS,CAAC4B,cAAa,EAAE,IAAI,EAAE;AAC9C,MAAA,SAAS,GAAG5B,SAAS,CAAC6B,WAAU,EAAE,IAAI,EAAE;AACxC,MAAA,mBAAmB,GAAG7B,SAAS,CAAC8B,qBAAoB,EAAE,IAAI,EAAE;AAC5D,MAAA,KAAK,GAAG9B,SAAS,CAAC+B,OAAM,EAAE,IAAI,EAAE;AAChC,MAAA,WAAW,GAAG/B,SAAS,CAACgC,aAAY,EAAE,IAAI,EAAE;AAC5C,MAAA,EAAE,GAAGhC,SAAS,CAACiC,IAAG,EAAE,IAAI,EAAE;AAC1B,MAAA,OAAO,GAAGjC,SAAS,CAACkC,SAAQ,EAAE,IAAI,EAAE;AACpC,MAAA,KAAK,GAAGlC,SAAS,CAACmC,OAAM,EAAE,IAAI,EAAE;AAChC,MAAA,UAAU,GAAGnC,SAAS,CAACoC,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,QAAQ,GAAGpC,SAAS,CAACqC,UAAS,EAAE,IAAI,EAAE;AACtC,MAAA,cAAc,GAAGrC,SAAS,CAACsC,gBAAe,EAAE,IAAI,EAAE;AAClD,MAAA,eAAe,GAAGtC,SAAS,CAACuC,iBAAgB,EAAE,IAAI,EAAE;AACpD,MAAA,MAAM,GAAGvC,SAAS,CAACwC,QAAO,EAAE,IAAI,EAAE;AAClC,MAAA,WAAW,GAAGxC,SAAS,CAACyC,aAAY,EAAE,IAAI,EAAE;AAC5C,MAAA,aAAa,GAAGzC,SAAS,CAAC0C,eAAc,EAAE,IAAI,EAAE;AAChD,MAAA,UAAU,GAAG1C,SAAS,CAAC2C,YAAW,EAAE,IAAI,EAAE;AAC1C,MAAA,OAAO,GAAG3C,SAAS,CAAC4C,SAAQ,EAAE,IAAI,EAAE;AACpC,MAAA,GAAG,GAAG5C,SAAS,CAAC6C,KAAI,EAAE,IAAI,EAAE;AAC5B,MAAA,SAAS,GAAG7C,SAAS,CAAC8C,WAAU,EAAE,IAAI,EAAE;AACxC,MAAA,SAAS,GAAG9C,SAAS,CAAC+C,WAAU,EAAE,IAAI,EAAE;AACxC,MAAA,KAAK,GAAG/C,SAAS,CAACgD,OAAM,EAAE,IAAI,EAAE;AAChC,MAAA,UAAU,GAAGhD,SAAS,CAACiD,YAAW,EAAE,IAAI;;AC3FrD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"angular-fire-firestore-lite.mjs","sources":["../../../src/firestore/lite/lite.ts","../../../src/firestore/lite/lite.module.ts","../../../src/firestore/lite/rxfire.ts","../../../src/firestore/lite/firebase.ts","../../../src/firestore/lite/angular-fire-firestore-lite.ts"],"sourcesContent":["import { ɵgetAllInstancesOf } from '@angular/fire';\nimport { Firestore as FirebaseFirestore } from 'firebase/firestore/lite';\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// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Firestore extends FirebaseFirestore {}\n\nexport class Firestore {\n constructor(firestore: FirebaseFirestore) {\n return firestore;\n }\n}\n\nexport const FIRESTORE_PROVIDER_NAME = 'firestore/lite';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface FirestoreInstances extends Array<FirebaseFirestore> {}\n\nexport class FirestoreInstances {\n constructor() {\n return ɵgetAllInstancesOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME);\n }\n}\n\nexport const firestoreInstance$ = timer(0, 300).pipe(\n concatMap(() => from(ɵgetAllInstancesOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME))),\n distinct(),\n);\n","import {\n EnvironmentProviders,\n InjectionToken,\n Injector,\n NgModule,\n NgZone,\n Optional,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { VERSION, ɵAngularFireSchedulers, ɵAppCheckInstances, ɵgetDefaultInstanceOf } from '@angular/fire';\nimport { FirebaseApp, FirebaseApps } from '@angular/fire/app';\nimport { AuthInstances } from '@angular/fire/auth';\nimport { registerVersion } from 'firebase/app';\nimport { Firestore as FirebaseFirestore } from 'firebase/firestore/lite';\nimport { FIRESTORE_PROVIDER_NAME, Firestore, FirestoreInstances } from './lite';\n\nexport const PROVIDED_FIRESTORE_INSTANCES = new InjectionToken<Firestore[]>('angularfire2.firestore-lite-instances');\n\nexport function defaultFirestoreInstanceFactory(provided: FirebaseFirestore[]|undefined, defaultApp: FirebaseApp) {\n const defaultFirestore = ɵgetDefaultInstanceOf<FirebaseFirestore>(FIRESTORE_PROVIDER_NAME, provided, defaultApp);\n return defaultFirestore && new Firestore(defaultFirestore);\n}\n\nexport function firestoreInstanceFactory(fn: (injector: Injector) => FirebaseFirestore) {\n return (zone: NgZone, injector: Injector) => {\n const firestore = zone.runOutsideAngular(() => fn(injector));\n return new Firestore(firestore);\n };\n}\n\nconst FIRESTORE_INSTANCES_PROVIDER = {\n provide: FirestoreInstances,\n deps: [\n [new Optional(), PROVIDED_FIRESTORE_INSTANCES ],\n ]\n};\n\nconst DEFAULT_FIRESTORE_INSTANCE_PROVIDER = {\n provide: Firestore,\n useFactory: defaultFirestoreInstanceFactory,\n deps: [\n [new Optional(), PROVIDED_FIRESTORE_INSTANCES ],\n FirebaseApp,\n ]\n};\n\n@NgModule({\n providers: [\n DEFAULT_FIRESTORE_INSTANCE_PROVIDER,\n FIRESTORE_INSTANCES_PROVIDER,\n ]\n})\nexport class FirestoreModule {\n constructor() {\n registerVersion('angularfire', VERSION.full, 'lite');\n }\n}\n\nexport function provideFirestore(fn: (injector: Injector) => FirebaseFirestore, ...deps: any[]): EnvironmentProviders {\n registerVersion('angularfire', VERSION.full, 'lite');\n\n return makeEnvironmentProviders([\n DEFAULT_FIRESTORE_INSTANCE_PROVIDER,\n FIRESTORE_INSTANCES_PROVIDER,\n {\n provide: PROVIDED_FIRESTORE_INSTANCES,\n useFactory: firestoreInstanceFactory(fn),\n multi: true,\n deps: [\n NgZone,\n Injector,\n ɵAngularFireSchedulers,\n FirebaseApps,\n // Firestore+Auth work better if Auth is loaded first\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 collection as _collection,\n collectionCount as _collectionCount,\n collectionCountSnap as _collectionCountSnap,\n collectionData as _collectionData,\n doc as _doc,\n docData as _docData,\n fromRef as _fromRef,\n snapToData as _snapToData\n} from 'rxfire/firestore/lite';\n\nexport const collectionSnapshots = ɵzoneWrap(_collection, true);\nexport const collectionCount = ɵzoneWrap(_collectionCount, true);\nexport const collectionCountSnap = ɵzoneWrap(_collectionCountSnap, true);\nexport const collectionData = ɵzoneWrap(_collectionData, true);\nexport const docSnapshots = ɵzoneWrap(_doc, true);\nexport const docData = ɵzoneWrap(_docData, true);\nexport const fromRef = ɵzoneWrap(_fromRef, true);\nexport const snapToData = ɵzoneWrap(_snapToData, true);\n","// DO NOT MODIFY, this file is autogenerated by tools/build.ts\nexport * from 'firebase/firestore/lite';\nimport { ɵzoneWrap } from '@angular/fire';\nimport {\n addDoc as _addDoc,\n aggregateFieldEqual as _aggregateFieldEqual,\n aggregateQuerySnapshotEqual as _aggregateQuerySnapshotEqual,\n and as _and,\n arrayRemove as _arrayRemove,\n arrayUnion as _arrayUnion,\n average as _average,\n collection as _collection,\n collectionGroup as _collectionGroup,\n connectFirestoreEmulator as _connectFirestoreEmulator,\n count as _count,\n deleteDoc as _deleteDoc,\n deleteField as _deleteField,\n doc as _doc,\n documentId as _documentId,\n endAt as _endAt,\n endBefore as _endBefore,\n getAggregate as _getAggregate,\n getCount as _getCount,\n getDoc as _getDoc,\n getDocs as _getDocs,\n getFirestore as _getFirestore,\n increment as _increment,\n initializeFirestore as _initializeFirestore,\n limit as _limit,\n limitToLast as _limitToLast,\n or as _or,\n orderBy as _orderBy,\n query as _query,\n queryEqual as _queryEqual,\n refEqual as _refEqual,\n runTransaction as _runTransaction,\n serverTimestamp as _serverTimestamp,\n setDoc as _setDoc,\n setLogLevel as _setLogLevel,\n snapshotEqual as _snapshotEqual,\n startAfter as _startAfter,\n startAt as _startAt,\n sum as _sum,\n terminate as _terminate,\n updateDoc as _updateDoc,\n where as _where,\n writeBatch as _writeBatch\n} from 'firebase/firestore/lite';\n\nexport const addDoc = ɵzoneWrap(_addDoc, true);\nexport const aggregateFieldEqual = ɵzoneWrap(_aggregateFieldEqual, true);\nexport const aggregateQuerySnapshotEqual = ɵzoneWrap(_aggregateQuerySnapshotEqual, true);\nexport const and = ɵzoneWrap(_and, true);\nexport const arrayRemove = ɵzoneWrap(_arrayRemove, true);\nexport const arrayUnion = ɵzoneWrap(_arrayUnion, true);\nexport const average = ɵzoneWrap(_average, true);\nexport const collection = ɵzoneWrap(_collection, true);\nexport const collectionGroup = ɵzoneWrap(_collectionGroup, true);\nexport const connectFirestoreEmulator = ɵzoneWrap(_connectFirestoreEmulator, true);\nexport const count = ɵzoneWrap(_count, true);\nexport const deleteDoc = ɵzoneWrap(_deleteDoc, true);\nexport const deleteField = ɵzoneWrap(_deleteField, true);\nexport const doc = ɵzoneWrap(_doc, true);\nexport const documentId = ɵzoneWrap(_documentId, true);\nexport const endAt = ɵzoneWrap(_endAt, true);\nexport const endBefore = ɵzoneWrap(_endBefore, true);\nexport const getAggregate = ɵzoneWrap(_getAggregate, true);\nexport const getCount = ɵzoneWrap(_getCount, true);\nexport const getDoc = ɵzoneWrap(_getDoc, true);\nexport const getDocs = ɵzoneWrap(_getDocs, true);\nexport const getFirestore = ɵzoneWrap(_getFirestore, true);\nexport const increment = ɵzoneWrap(_increment, true);\nexport const initializeFirestore = ɵzoneWrap(_initializeFirestore, true);\nexport const limit = ɵzoneWrap(_limit, true);\nexport const limitToLast = ɵzoneWrap(_limitToLast, true);\nexport const or = ɵzoneWrap(_or, true);\nexport const orderBy = ɵzoneWrap(_orderBy, true);\nexport const query = ɵzoneWrap(_query, true);\nexport const queryEqual = ɵzoneWrap(_queryEqual, true);\nexport const refEqual = ɵzoneWrap(_refEqual, true);\nexport const runTransaction = ɵzoneWrap(_runTransaction, true);\nexport const serverTimestamp = ɵzoneWrap(_serverTimestamp, true);\nexport const setDoc = ɵzoneWrap(_setDoc, true);\nexport const setLogLevel = ɵzoneWrap(_setLogLevel, true);\nexport const snapshotEqual = ɵzoneWrap(_snapshotEqual, true);\nexport const startAfter = ɵzoneWrap(_startAfter, true);\nexport const startAt = ɵzoneWrap(_startAt, true);\nexport const sum = ɵzoneWrap(_sum, true);\nexport const terminate = ɵzoneWrap(_terminate, true);\nexport const updateDoc = ɵzoneWrap(_updateDoc, true);\nexport const where = ɵzoneWrap(_where, true);\nexport const writeBatch = ɵzoneWrap(_writeBatch, true);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ɵgetAllInstancesOf","ɵgetDefaultInstanceOf","ɵAngularFireSchedulers","ɵAppCheckInstances","ɵzoneWrap","_collection","_collectionCount","_collectionCountSnap","_collectionData","_doc","_docData","_fromRef","_snapToData","_addDoc","_aggregateFieldEqual","_aggregateQuerySnapshotEqual","_and","_arrayRemove","_arrayUnion","_average","_collectionGroup","_connectFirestoreEmulator","_count","_deleteDoc","_deleteField","_documentId","_endAt","_endBefore","_getAggregate","_getCount","_getDoc","_getDocs","_getFirestore","_increment","_initializeFirestore","_limit","_limitToLast","_or","_orderBy","_query","_queryEqual","_refEqual","_runTransaction","_serverTimestamp","_setDoc","_setLogLevel","_snapshotEqual","_startAfter","_startAt","_sum","_terminate","_updateDoc","_where","_writeBatch"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { InjectionToken, Optional, NgModule, makeEnvironmentProviders, NgZone, I
|
|
|
6
6
|
import { FirebaseApp, FirebaseApps } from '@angular/fire/app';
|
|
7
7
|
import { AuthInstances } from '@angular/fire/auth';
|
|
8
8
|
import { registerVersion } from 'firebase/app';
|
|
9
|
-
import {
|
|
9
|
+
import { auditTrail as auditTrail$1, collection as collection$1, collectionChanges as collectionChanges$1, collectionCount as collectionCount$1, collectionCountSnap as collectionCountSnap$1, collectionData as collectionData$1, doc as doc$1, docData as docData$1, fromRef as fromRef$1, snapToData as snapToData$1, sortedChanges as sortedChanges$1 } from 'rxfire/firestore';
|
|
10
10
|
import { addDoc as addDoc$1, aggregateFieldEqual as aggregateFieldEqual$1, aggregateQuerySnapshotEqual as aggregateQuerySnapshotEqual$1, and as and$1, arrayRemove as arrayRemove$1, arrayUnion as arrayUnion$1, average as average$1, clearIndexedDbPersistence as clearIndexedDbPersistence$1, collection as collection$2, collectionGroup as collectionGroup$1, connectFirestoreEmulator as connectFirestoreEmulator$1, count as count$1, deleteAllPersistentCacheIndexes as deleteAllPersistentCacheIndexes$1, deleteDoc as deleteDoc$1, deleteField as deleteField$1, disableNetwork as disableNetwork$1, disablePersistentCacheIndexAutoCreation as disablePersistentCacheIndexAutoCreation$1, doc as doc$2, documentId as documentId$1, enableIndexedDbPersistence as enableIndexedDbPersistence$1, enableMultiTabIndexedDbPersistence as enableMultiTabIndexedDbPersistence$1, enableNetwork as enableNetwork$1, enablePersistentCacheIndexAutoCreation as enablePersistentCacheIndexAutoCreation$1, endAt as endAt$1, endBefore as endBefore$1, getAggregateFromServer as getAggregateFromServer$1, getCountFromServer as getCountFromServer$1, getDoc as getDoc$1, getDocFromCache as getDocFromCache$1, getDocFromServer as getDocFromServer$1, getDocs as getDocs$1, getDocsFromCache as getDocsFromCache$1, getDocsFromServer as getDocsFromServer$1, getFirestore as getFirestore$1, getPersistentCacheIndexManager as getPersistentCacheIndexManager$1, increment as increment$1, initializeFirestore as initializeFirestore$1, limit as limit$1, limitToLast as limitToLast$1, loadBundle as loadBundle$1, memoryEagerGarbageCollector as memoryEagerGarbageCollector$1, memoryLocalCache as memoryLocalCache$1, memoryLruGarbageCollector as memoryLruGarbageCollector$1, namedQuery as namedQuery$1, onSnapshot as onSnapshot$1, onSnapshotsInSync as onSnapshotsInSync$1, or as or$1, orderBy as orderBy$1, persistentLocalCache as persistentLocalCache$1, persistentMultipleTabManager as persistentMultipleTabManager$1, persistentSingleTabManager as persistentSingleTabManager$1, query as query$1, queryEqual as queryEqual$1, refEqual as refEqual$1, runTransaction as runTransaction$1, serverTimestamp as serverTimestamp$1, setDoc as setDoc$1, setIndexConfiguration as setIndexConfiguration$1, setLogLevel as setLogLevel$1, snapshotEqual as snapshotEqual$1, startAfter as startAfter$1, startAt as startAt$1, sum as sum$1, terminate as terminate$1, updateDoc as updateDoc$1, waitForPendingWrites as waitForPendingWrites$1, where as where$1, writeBatch as writeBatch$1 } from 'firebase/firestore';
|
|
11
11
|
export * from 'firebase/firestore';
|
|
12
12
|
|
|
@@ -92,17 +92,17 @@ function provideFirestore(fn, ...deps) {
|
|
|
92
92
|
}
|
|
93
93
|
|
|
94
94
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
95
|
-
const collectionChanges = _zoneWrap(collectionChanges$1, true);
|
|
96
|
-
const collectionSnapshots = _zoneWrap(collection$1, true);
|
|
97
|
-
const sortedChanges = _zoneWrap(sortedChanges$1, true);
|
|
98
95
|
const auditTrail = _zoneWrap(auditTrail$1, true);
|
|
99
|
-
const
|
|
100
|
-
const
|
|
96
|
+
const collectionSnapshots = _zoneWrap(collection$1, true);
|
|
97
|
+
const collectionChanges = _zoneWrap(collectionChanges$1, true);
|
|
101
98
|
const collectionCount = _zoneWrap(collectionCount$1, true);
|
|
99
|
+
const collectionCountSnap = _zoneWrap(collectionCountSnap$1, true);
|
|
100
|
+
const collectionData = _zoneWrap(collectionData$1, true);
|
|
102
101
|
const docSnapshots = _zoneWrap(doc$1, true);
|
|
103
102
|
const docData = _zoneWrap(docData$1, true);
|
|
104
|
-
const snapToData = _zoneWrap(snapToData$1, true);
|
|
105
103
|
const fromRef = _zoneWrap(fromRef$1, true);
|
|
104
|
+
const snapToData = _zoneWrap(snapToData$1, true);
|
|
105
|
+
const sortedChanges = _zoneWrap(sortedChanges$1, true);
|
|
106
106
|
|
|
107
107
|
// DO NOT MODIFY, this file is autogenerated by tools/build.ts
|
|
108
108
|
const addDoc = _zoneWrap(addDoc$1, true);
|