@dereekb/dbx-firebase 12.6.10 → 12.6.12

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.
Files changed (43) hide show
  1. package/esm2022/lib/model/modules/model/entities/index.mjs +6 -0
  2. package/esm2022/lib/model/modules/model/entities/model.entities.component.mjs +73 -0
  3. package/esm2022/lib/model/modules/model/entities/model.entities.entity.component.mjs +28 -0
  4. package/esm2022/lib/model/modules/model/entities/model.entities.mjs +6 -0
  5. package/esm2022/lib/model/modules/model/entities/model.entities.popover.button.component.mjs +44 -0
  6. package/esm2022/lib/model/modules/model/entities/model.entities.popover.component.mjs +35 -0
  7. package/esm2022/lib/model/modules/model/entities/model.entities.source.directive.mjs +38 -0
  8. package/esm2022/lib/model/modules/model/entities/model.entities.widget.service.mjs +59 -0
  9. package/esm2022/lib/model/modules/model/index.mjs +2 -1
  10. package/esm2022/lib/model/modules/model/model.types.service.mjs +1 -1
  11. package/esm2022/lib/model/modules/store/index.mjs +5 -1
  12. package/esm2022/lib/model/modules/store/store.document.context.store.directive.mjs +19 -0
  13. package/esm2022/lib/model/modules/store/store.document.context.store.link.mjs +45 -0
  14. package/esm2022/lib/model/modules/store/store.document.context.store.mjs +86 -0
  15. package/esm2022/lib/model/modules/store/store.document.crud.mjs +1 -1
  16. package/esm2022/lib/model/modules/store/store.document.directive.mjs +1 -1
  17. package/esm2022/lib/model/modules/store/store.document.mjs +16 -4
  18. package/esm2022/lib/model/modules/store/store.mjs +2 -0
  19. package/esm2022/lib/model/modules/store/store.subcollection.document.mjs +1 -1
  20. package/esm2022/lib/model/modules/store/store.subcollection.rxjs.mjs +1 -1
  21. package/fesm2022/dereekb-dbx-firebase.mjs +409 -10
  22. package/fesm2022/dereekb-dbx-firebase.mjs.map +1 -1
  23. package/lib/model/modules/model/entities/index.d.ts +5 -0
  24. package/lib/model/modules/model/entities/model.entities.component.d.ts +25 -0
  25. package/lib/model/modules/model/entities/model.entities.d.ts +49 -0
  26. package/lib/model/modules/model/entities/model.entities.entity.component.d.ts +18 -0
  27. package/lib/model/modules/model/entities/model.entities.popover.button.component.d.ts +18 -0
  28. package/lib/model/modules/model/entities/model.entities.popover.component.d.ts +45 -0
  29. package/lib/model/modules/model/entities/model.entities.source.directive.d.ts +8 -0
  30. package/lib/model/modules/model/entities/model.entities.widget.service.d.ts +44 -0
  31. package/lib/model/modules/model/index.d.ts +1 -0
  32. package/lib/model/modules/store/index.d.ts +4 -0
  33. package/lib/model/modules/store/store.d.ts +79 -0
  34. package/lib/model/modules/store/store.document.context.store.d.ts +59 -0
  35. package/lib/model/modules/store/store.document.context.store.directive.d.ts +8 -0
  36. package/lib/model/modules/store/store.document.context.store.link.d.ts +17 -0
  37. package/lib/model/modules/store/store.document.crud.d.ts +1 -1
  38. package/lib/model/modules/store/store.document.d.ts +16 -76
  39. package/lib/model/modules/store/store.document.directive.d.ts +1 -1
  40. package/lib/model/modules/store/store.subcollection.document.d.ts +2 -1
  41. package/lib/model/modules/store/store.subcollection.rxjs.d.ts +1 -1
  42. package/lib/modules/storagefile/storagefile.upload.module.d.ts +1 -1
  43. package/package.json +1 -1
@@ -1,18 +1,18 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Injectable, APP_INITIALIZER, makeEnvironmentProviders, InjectionToken, Component, Optional, Inject, model, computed, ChangeDetectionStrategy, signal, Directive, input, EventEmitter, output, NgModule, Injector, viewChild, HostListener, ElementRef, forwardRef, effect, Pipe } from '@angular/core';
2
+ import { inject, Injectable, APP_INITIALIZER, makeEnvironmentProviders, InjectionToken, Component, Optional, Inject, model, computed, ChangeDetectionStrategy, signal, Directive, input, EventEmitter, output, NgModule, Injector, viewChild, HostListener, ElementRef, forwardRef, effect, DestroyRef, Pipe } from '@angular/core';
3
3
  import { DbxAnalyticsService } from '@dereekb/dbx-analytics';
4
- import { asObservable, timeoutStartWith, filterMaybe, isNot, SubscriptionObject, lazyFrom, switchMapWhileTrue, loadingStateFromObs, distinctUntilKeysChange, cleanupDestroyable, iterationHasNextAndCanLoadMore, pageItemAccumulatorCurrentPage, accumulatorFlattenPageListLoadingState, useFirst, itemAccumulatorNextPageUntilResultsCount, iteratorNextPageUntilPage, iteratorNextPageUntilMaxPageLoadLimit, pageLoadingStateFromObs, useAsObservable, filterMaybeArray, mapEachAsync, invertObservableDecision, filterItemsWithObservableDecision, skipInitialMaybe, distinctUntilModelKeyChange, successResult, beginLoading, errorResult, isLoadingStateLoading, cleanup, mapLoadingState, mapLoadingStateValueWithOperator, throwErrorFromLoadingStateError, valueFromFinishedLoadingState, maybeValueFromObservableOrValue, distinctUntilHasDifferentValues, MultiSubscriptionObject, startWithBeginLoading, skipAllInitialMaybe } from '@dereekb/rxjs';
5
- import { switchMap, of, shareReplay, map, distinctUntilChanged, EMPTY, catchError, firstValueFrom, BehaviorSubject, combineLatest, first, from, tap, interval, exhaustMap, filter, take, startWith, Subject, throttleTime, NEVER, combineLatestWith, mergeMap, Observable } from 'rxjs';
4
+ import { asObservable, timeoutStartWith, filterMaybe, isNot, SubscriptionObject, lazyFrom, switchMapWhileTrue, loadingStateFromObs, distinctUntilKeysChange, cleanupDestroyable, iterationHasNextAndCanLoadMore, pageItemAccumulatorCurrentPage, accumulatorFlattenPageListLoadingState, useFirst, itemAccumulatorNextPageUntilResultsCount, iteratorNextPageUntilPage, iteratorNextPageUntilMaxPageLoadLimit, pageLoadingStateFromObs, useAsObservable, filterMaybeArray, mapEachAsync, invertObservableDecision, filterItemsWithObservableDecision, switchMapMaybe, beginLoading, mapLoadingStateValueWithOperator, valueFromFinishedLoadingState, loadingStateContext, skipInitialMaybe, distinctUntilModelKeyChange, successResult, errorResult, isLoadingStateLoading, cleanup, mapLoadingState, throwErrorFromLoadingStateError, maybeValueFromObservableOrValue, distinctUntilHasDifferentValues, MultiSubscriptionObject, startWithBeginLoading, skipAllInitialMaybe } from '@dereekb/rxjs';
5
+ import { switchMap, of, shareReplay, map, distinctUntilChanged, EMPTY, catchError, firstValueFrom, BehaviorSubject, combineLatest, first, from, tap, interval, exhaustMap, filter, take, startWith, Subject, throttleTime, NEVER, defaultIfEmpty, combineLatestWith, mergeMap, Observable } from 'rxjs';
6
6
  import * as i2 from '@dereekb/dbx-core';
7
7
  import { loggedInObsFromIsLoggedIn, loggedOutObsFromIsLoggedIn, authUserIdentifier, DbxInjectionContext, DbxInjectionComponent, AbstractForwardDbxInjectionContextDirective, DbxInjectionContextDirective, DBX_INJECTION_COMPONENT_DATA, DbxAuthService, DbxActionButtonDirective, DbxActionDirective, DbxActionEnforceModifiedDirective, DbxActionHandlerDirective, DbxActionAutoTriggerDirective, provideDbxRouteModelIdDirectiveDelegate, provideDbxRouteModelKeyDirectiveDelegate, AbstractSubscriptionDirective, AbstractIfDirective, LockSetComponentStore, newWithInjector, CutTextPipe, DbxActionContextStoreSourceInstance, DbxActionHandlerInstance, SimpleStorageAccessorFactory, dbxRouteParamReaderInstance, DbxRouteParamDefaultRedirectInstance } from '@dereekb/dbx-core';
8
8
  import { Auth, authState, idToken, GoogleAuthProvider, FacebookAuthProvider, TwitterAuthProvider, GithubAuthProvider, signInWithPopup, createUserWithEmailAndPassword, signInWithEmailAndPassword, signInAnonymously, reauthenticateWithPopup, provideAuth, getAuth, connectAuthEmulator } from '@angular/fire/auth';
9
- import { AUTH_ADMIN_ROLE, cachedGetter, urlWithoutParameters, addToSet, removeFromSet, filterMaybeArrayValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, addToSetCopy, iterableToArray, runAsyncTasksForValues, pushArrayItemsIntoArray, forEachKeyValue, countAllInNestedArray, invertDecision, readableError, isMaybeSo, firstValue, splitJoinRemainder, MS_IN_HOUR, SECONDS_IN_MINUTE, MS_IN_DAY, unixDateTimeSecondsNumberForNow, MS_IN_MINUTE, addMilliseconds, unixDateTimeSecondsNumberFromDate, dateFromDateOrTimeSecondsNumber, MS_IN_SECOND, isPast, separateValues } from '@dereekb/util';
9
+ import { AUTH_ADMIN_ROLE, cachedGetter, urlWithoutParameters, addToSet, removeFromSet, filterMaybeArrayValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, addToSetCopy, iterableToArray, runAsyncTasksForValues, pushArrayItemsIntoArray, forEachKeyValue, countAllInNestedArray, invertDecision, separateValues, sortByNumberFunction, readableError, isMaybeSo, firstValue, splitJoinRemainder, MS_IN_HOUR, SECONDS_IN_MINUTE, MS_IN_DAY, unixDateTimeSecondsNumberForNow, MS_IN_MINUTE, addMilliseconds, unixDateTimeSecondsNumberFromDate, dateFromDateOrTimeSecondsNumber, MS_IN_SECOND, isPast } from '@dereekb/util';
10
10
  import { safeFormatToISO8601DateString, msToSeconds, isSameDate } from '@dereekb/date';
11
11
  import { sendPasswordResetEmail } from 'firebase/auth';
12
12
  import { getToken, initializeAppCheck, ReCaptchaV3Provider } from 'firebase/app-check';
13
13
  import { AppCheck, provideAppCheck } from '@angular/fire/app-check';
14
14
  import * as i1$1 from '@dereekb/dbx-web';
15
- import { DbxLinkComponent, DbxActionModule, DbxButtonModule, DbxErrorComponent, DbxActionErrorDirective, DbxButtonComponent, DbxButtonSpacerDirective, DbxRouterAnchorModule, DbxWidgetService, AbstractDbxSelectionListWrapperDirective, provideDbxListViewWrapper, DbxListWrapperComponentImportsModule, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, AbstractDbxSelectionListViewDirective, provideDbxListView, DbxSelectionValueListViewComponentImportsModule, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, AbstractDbxValueListViewItemComponent, TwoColumnsContextStore, DbxAnchorComponent, DbxTwoColumnFullLeftDirective, DbxWidgetViewComponent, DbxTwoColumnComponent, DbxTwoBlockComponent, DbxTwoColumnRightComponent, AbstractPopupDirective, DbxPopupService, DbxPopupContentComponent, DbxPopupControlsComponent, DbxModelTypesService, DbxModelTrackerService, allDbxModelViewTrackerEventModelKeys, DbxListItemAnchorModifierDirective, DbxValueListItemModifierDirective, AbstractPopoverDirective, DbxPopoverContentComponent, DbxPopoverHeaderComponent, DbxPopoverScrollContentDirective, DbxListEmptyContentComponent, AbstractPopoverRefDirective, DbxPopoverService, DbxIconButtonComponent, DbxModelObjectStateService, DbxListViewWrapper, AbstractDbxWidgetComponent, DbxPopoverInteractionModule, DbxListModifierModule, DbxWebFilePreviewService, DbxActionSnackbarErrorDirective, DbxActionDialogDirective, DbxFileUploadComponent, DbxLoadingComponent, DbxActionLoadingContextDirective, DbxFileUploadActionSyncDirective } from '@dereekb/dbx-web';
15
+ import { DbxLinkComponent, DbxActionModule, DbxButtonModule, DbxErrorComponent, DbxActionErrorDirective, DbxButtonComponent, DbxButtonSpacerDirective, DbxRouterAnchorModule, DbxWidgetService, AbstractDbxSelectionListWrapperDirective, provideDbxListViewWrapper, DbxListWrapperComponentImportsModule, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, AbstractDbxSelectionListViewDirective, provideDbxListView, DbxSelectionValueListViewComponentImportsModule, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, AbstractDbxValueListViewItemComponent, TwoColumnsContextStore, DbxAnchorComponent, DbxTwoColumnFullLeftDirective, DbxWidgetViewComponent, DbxTwoColumnComponent, DbxTwoBlockComponent, DbxTwoColumnRightComponent, AbstractPopupDirective, DbxPopupService, DbxPopupContentComponent, DbxPopupControlsComponent, DbxModelTypesService, DbxModelTrackerService, allDbxModelViewTrackerEventModelKeys, DbxListItemAnchorModifierDirective, DbxValueListItemModifierDirective, AbstractPopoverDirective, DbxPopoverContentComponent, DbxPopoverHeaderComponent, DbxPopoverScrollContentDirective, DbxListEmptyContentComponent, AbstractPopoverRefDirective, DbxPopoverService, DbxIconButtonComponent, DbxLoadingComponent, DbxModelObjectStateService, DbxListViewWrapper, AbstractDbxWidgetComponent, DbxPopoverInteractionModule, DbxListModifierModule, DbxWebFilePreviewService, DbxActionSnackbarErrorDirective, DbxActionDialogDirective, DbxFileUploadComponent, DbxActionLoadingContextDirective, DbxFileUploadActionSyncDirective } from '@dereekb/dbx-web';
16
16
  import * as i1 from '@angular/material/icon';
17
17
  import { MatIconModule } from '@angular/material/icon';
18
18
  import * as i1$2 from '@dereekb/dbx-form';
@@ -30,8 +30,9 @@ import { provideStorage, getStorage, connectStorageEmulator, Storage } from '@an
30
30
  import { provideFunctions, getFunctions, connectFunctionsEmulator, Functions } from '@angular/fire/functions';
31
31
  import { provideFirestore, persistentMultipleTabManager, persistentSingleTabManager, persistentLocalCache, initializeFirestore, connectFirestoreEmulator, Firestore } from '@angular/fire/firestore';
32
32
  import { HTTP_INTERCEPTORS } from '@angular/common/http';
33
- import { __decorate, __param, __metadata } from 'tslib';
33
+ import { MatExpansionPanel, MatExpansionPanelHeader, MatExpansionPanelTitle, MatExpansionPanelDescription, MatExpansionPanelContent, MatAccordion } from '@angular/material/expansion';
34
34
  import { ComponentStore } from '@ngrx/component-store';
35
+ import { __decorate, __param, __metadata } from 'tslib';
35
36
  import { MatDialog } from '@angular/material/dialog';
36
37
  import { BaseError } from 'make-error';
37
38
 
@@ -3476,6 +3477,334 @@ function dbxFirebaseSourceSelectLoadSource(config) {
3476
3477
  };
3477
3478
  }
3478
3479
 
3480
+ /**
3481
+ * Configuration provided in the root module for configuring entries.
3482
+ */
3483
+ class DbxFirebaseModelEntitiesWidgetServiceConfig {
3484
+ }
3485
+ /**
3486
+ * Service used to register widgets used for model entities.
3487
+ */
3488
+ class DbxFirebaseModelEntitiesWidgetService {
3489
+ _entries = new Map();
3490
+ constructor(initialConfig) {
3491
+ if (initialConfig?.entries) {
3492
+ this.register(initialConfig.entries);
3493
+ }
3494
+ }
3495
+ /**
3496
+ * Used to register one or more entries.
3497
+ *
3498
+ * If an entry with the same identity is already registered, this will override it by default.
3499
+ *
3500
+ * @param entries
3501
+ * @param override
3502
+ */
3503
+ register(entries, override = true) {
3504
+ const entriesArray = asArray(entries);
3505
+ entriesArray.forEach((entry) => {
3506
+ if (override || !this._entries.has(entry.identity)) {
3507
+ this._entries.set(entry.identity, entry);
3508
+ }
3509
+ });
3510
+ }
3511
+ // MARK: Get
3512
+ getAllRegisteredWidgetIdentities() {
3513
+ return Array.from(this._entries.keys());
3514
+ }
3515
+ getWidgetEntry(identity) {
3516
+ return this._entries.get(identity);
3517
+ }
3518
+ getWidgetEntries(identities) {
3519
+ return filterMaybeArrayValues(mapIterable(identities ?? [], (x) => this._entries.get(x)));
3520
+ }
3521
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesWidgetService, deps: [{ token: DbxFirebaseModelEntitiesWidgetServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
3522
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesWidgetService, providedIn: 'root' });
3523
+ }
3524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesWidgetService, decorators: [{
3525
+ type: Injectable,
3526
+ args: [{
3527
+ providedIn: 'root'
3528
+ }]
3529
+ }], ctorParameters: () => [{ type: DbxFirebaseModelEntitiesWidgetServiceConfig, decorators: [{
3530
+ type: Optional
3531
+ }, {
3532
+ type: Inject,
3533
+ args: [DbxFirebaseModelEntitiesWidgetServiceConfig]
3534
+ }] }] });
3535
+
3536
+ class DbxFirebaseModelEntitiesEntityComponent {
3537
+ widgetService = inject(DbxFirebaseModelEntitiesWidgetService);
3538
+ modelTypesService = inject(DbxFirebaseModelTypesService);
3539
+ /**
3540
+ * The input entity
3541
+ */
3542
+ entity = input.required();
3543
+ modelIdentity = computed(() => this.entity().modelIdentity);
3544
+ entity$ = toObservable(this.entity);
3545
+ store$ = this.entity$.pipe(map((x) => x.store), filterMaybe(), distinctUntilChanged(), shareReplay(1));
3546
+ loadingState$ = this.store$.pipe(switchMap((x) => x.dataLoadingState$));
3547
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesEntityComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3548
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseModelEntitiesEntityComponent, isStandalone: true, selector: "dbx-firebase-model-entities-entity", inputs: { entity: { classPropertyName: "entity", publicName: "entity", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <span class=\"bold dbx-button-spacer\">Name</span>\n <!-- TODO: use the display info to show the name -->\n </mat-panel-title>\n <mat-panel-description>\n <!-- TODO: ... -->\n </mat-panel-description>\n </mat-expansion-panel-header>\n <ng-template matExpansionPanelContent>\n <!-- TODO: Content -->\n </ng-template>\n</mat-expansion-panel>\n", dependencies: [{ kind: "component", type: MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "directive", type: MatExpansionPanelContent, selector: "ng-template[matExpansionPanelContent]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3549
+ }
3550
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesEntityComponent, decorators: [{
3551
+ type: Component,
3552
+ args: [{ selector: 'dbx-firebase-model-entities-entity', imports: [DbxInjectionComponent, MatExpansionPanel, MatExpansionPanelHeader, MatExpansionPanelTitle, MatExpansionPanelDescription, MatExpansionPanelContent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <span class=\"bold dbx-button-spacer\">Name</span>\n <!-- TODO: use the display info to show the name -->\n </mat-panel-title>\n <mat-panel-description>\n <!-- TODO: ... -->\n </mat-panel-description>\n </mat-expansion-panel-header>\n <ng-template matExpansionPanelContent>\n <!-- TODO: Content -->\n </ng-template>\n</mat-expansion-panel>\n" }]
3553
+ }] });
3554
+
3555
+ class DbxFirebaseModelEntitiesComponent {
3556
+ /**
3557
+ * All input entities.
3558
+ */
3559
+ entities = input();
3560
+ entities$ = toObservable(this.entities).pipe(switchMapMaybe(), map((x) => x ?? beginLoading()), shareReplay(1));
3561
+ /**
3562
+ * Whether the accordion should allow multiple expanded panels.
3563
+ */
3564
+ multi = input(true);
3565
+ entitiesWithKeysState$ = this.entities$.pipe(mapLoadingStateValueWithOperator(switchMap((entities) => {
3566
+ const entitiesWithStore = (entities ?? []).filter((x) => Boolean(x.store));
3567
+ const entitiesWithKeys = combineLatest(entitiesWithStore.map((x) => {
3568
+ const obs = x.store.currentKey$.pipe(map((key) => (key ? { key, ...x } : null)));
3569
+ return obs;
3570
+ }));
3571
+ return entitiesWithKeys.pipe(filterMaybeArray(), defaultIfEmpty([]));
3572
+ })), shareReplay(1));
3573
+ entitiesWithKeys$ = this.entitiesWithKeysState$.pipe(valueFromFinishedLoadingState(), shareReplay(1));
3574
+ entitiesWithKeysSignal = toSignal(this.entitiesWithKeys$, { initialValue: [] });
3575
+ hasNoEntitiesSignal = computed(() => !this.entitiesWithKeysSignal()?.length);
3576
+ context = loadingStateContext({ obs: this.entitiesWithKeysState$ });
3577
+ ngOnDestroy() {
3578
+ this.context.destroy();
3579
+ }
3580
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3581
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxFirebaseModelEntitiesComponent, isStandalone: true, selector: "dbx-firebase-model-entities", inputs: { entities: { classPropertyName: "entities", publicName: "entities", isSignal: true, isRequired: false, transformFunction: null }, multi: { classPropertyName: "multi", publicName: "multi", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
3582
+ <dbx-loading [linear]="true" [context]="context">
3583
+ <mat-accordion [multi]="multi()">
3584
+ @for (entity of entitiesWithKeysSignal(); track entity.key) {
3585
+ <dbx-firebase-model-entities-entity [entity]="entity"></dbx-firebase-model-entities-entity>
3586
+ }
3587
+ </mat-accordion>
3588
+ @if (hasNoEntitiesSignal()) {
3589
+ <dbx-list-empty-content>
3590
+ <ng-content select="[empty]"></ng-content>
3591
+ </dbx-list-empty-content>
3592
+ }
3593
+ </dbx-loading>
3594
+ `, isInline: true, dependencies: [{ kind: "directive", type: MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: DbxLoadingComponent, selector: "dbx-loading", inputs: ["padding", "show", "text", "mode", "color", "diameter", "linear", "loading", "error", "context"] }, { kind: "component", type: DbxFirebaseModelEntitiesEntityComponent, selector: "dbx-firebase-model-entities-entity", inputs: ["entity"] }, { kind: "component", type: DbxListEmptyContentComponent, selector: "dbx-list-empty-content" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3595
+ }
3596
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesComponent, decorators: [{
3597
+ type: Component,
3598
+ args: [{
3599
+ selector: 'dbx-firebase-model-entities',
3600
+ template: `
3601
+ <dbx-loading [linear]="true" [context]="context">
3602
+ <mat-accordion [multi]="multi()">
3603
+ @for (entity of entitiesWithKeysSignal(); track entity.key) {
3604
+ <dbx-firebase-model-entities-entity [entity]="entity"></dbx-firebase-model-entities-entity>
3605
+ }
3606
+ </mat-accordion>
3607
+ @if (hasNoEntitiesSignal()) {
3608
+ <dbx-list-empty-content>
3609
+ <ng-content select="[empty]"></ng-content>
3610
+ </dbx-list-empty-content>
3611
+ }
3612
+ </dbx-loading>
3613
+ `,
3614
+ imports: [MatAccordion, DbxLoadingComponent, DbxFirebaseModelEntitiesEntityComponent, DbxListEmptyContentComponent],
3615
+ changeDetection: ChangeDetectionStrategy.OnPush,
3616
+ standalone: true
3617
+ }]
3618
+ }] });
3619
+
3620
+ const DEFAULT_DBX_FIREBASE_MODEL_ENTITIES_COMPONENT_POPOVER_KEY = 'entities';
3621
+ class DbxFirebaseModelEntitiesPopoverComponent extends AbstractPopoverDirective {
3622
+ entities$ = this.popover.data?.entities$;
3623
+ static openPopover(popupService, { origin, header, icon, emptyText, entities$ }, popoverKey) {
3624
+ return popupService.open({
3625
+ key: popoverKey ?? DEFAULT_DBX_FIREBASE_MODEL_ENTITIES_COMPONENT_POPOVER_KEY,
3626
+ origin,
3627
+ componentClass: DbxFirebaseModelEntitiesPopoverComponent,
3628
+ data: {
3629
+ header,
3630
+ icon,
3631
+ emptyText,
3632
+ entities$
3633
+ },
3634
+ isResizable: true
3635
+ });
3636
+ }
3637
+ get config() {
3638
+ return this.popover.data;
3639
+ }
3640
+ icon = this.config.icon ?? 'data_object';
3641
+ header = this.config.header ?? 'Entities';
3642
+ emptyText = this.config.emptyText ?? 'No entities found in current context.';
3643
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
3644
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseModelEntitiesPopoverComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<dbx-popover-content>\n <!-- Header -->\n <dbx-popover-header [icon]=\"icon\" [header]=\"header\"></dbx-popover-header>\n <!-- Content -->\n <dbx-popover-scroll-content>\n <dbx-firebase-model-entities [entities]=\"entities$\">\n <p empty>{{ emptyText }}</p>\n </dbx-firebase-model-entities>\n </dbx-popover-scroll-content>\n</dbx-popover-content>\n", dependencies: [{ kind: "component", type: DbxPopoverContentComponent, selector: "dbx-popover-content" }, { kind: "component", type: DbxPopoverHeaderComponent, selector: "dbx-popover-header", inputs: ["header", "icon"] }, { kind: "directive", type: DbxPopoverScrollContentDirective, selector: "dbx-popover-scroll-content,[dbxPopoverScrollContent],.dbx-popover-scroll-content" }, { kind: "component", type: DbxFirebaseModelEntitiesComponent, selector: "dbx-firebase-model-entities", inputs: ["entities", "multi"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3645
+ }
3646
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesPopoverComponent, decorators: [{
3647
+ type: Component,
3648
+ args: [{ imports: [DbxPopoverContentComponent, DbxPopoverHeaderComponent, DbxPopoverScrollContentDirective, DbxFirebaseModelEntitiesComponent, DbxListEmptyContentComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<dbx-popover-content>\n <!-- Header -->\n <dbx-popover-header [icon]=\"icon\" [header]=\"header\"></dbx-popover-header>\n <!-- Content -->\n <dbx-popover-scroll-content>\n <dbx-firebase-model-entities [entities]=\"entities$\">\n <p empty>{{ emptyText }}</p>\n </dbx-firebase-model-entities>\n </dbx-popover-scroll-content>\n</dbx-popover-content>\n" }]
3649
+ }] });
3650
+
3651
+ /**
3652
+ * Provides a source of entities.
3653
+ */
3654
+ class DbxFirebaseModelEntitiesSource {
3655
+ }
3656
+
3657
+ class DbxFirebaseModelEntitiesPopoverButtonComponent extends AbstractPopoverRefDirective {
3658
+ _dbxPopoverService = inject(DbxPopoverService);
3659
+ entitiesSource = inject(DbxFirebaseModelEntitiesSource);
3660
+ buttonElement = viewChild.required('button', { read: ElementRef });
3661
+ config = input();
3662
+ _makePopoverRef(origin) {
3663
+ const config = this.config();
3664
+ const entities$ = this.entitiesSource.entities$;
3665
+ if (!origin) {
3666
+ throw new Error('Missing origin.');
3667
+ }
3668
+ return DbxFirebaseModelEntitiesPopoverComponent.openPopover(this._dbxPopoverService, {
3669
+ origin,
3670
+ ...config,
3671
+ entities$
3672
+ });
3673
+ }
3674
+ showEntitiesPopover() {
3675
+ const origin = this.buttonElement();
3676
+ this.showPopover(origin);
3677
+ }
3678
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesPopoverButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
3679
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxFirebaseModelEntitiesPopoverButtonComponent, isStandalone: true, selector: "dbx-firebase-model-entities-popover-button", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["button"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
3680
+ <dbx-icon-button #button (buttonClick)="showEntitiesPopover()" icon="data_object"></dbx-icon-button>
3681
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxIconButtonComponent, selector: "dbx-icon-button" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3682
+ }
3683
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseModelEntitiesPopoverButtonComponent, decorators: [{
3684
+ type: Component,
3685
+ args: [{
3686
+ selector: 'dbx-firebase-model-entities-popover-button',
3687
+ template: `
3688
+ <dbx-icon-button #button (buttonClick)="showEntitiesPopover()" icon="data_object"></dbx-icon-button>
3689
+ `,
3690
+ standalone: true,
3691
+ imports: [DbxIconButtonComponent],
3692
+ changeDetection: ChangeDetectionStrategy.OnPush
3693
+ }]
3694
+ }] });
3695
+
3696
+ class DbxFirebaseDocumentStoreContextStore extends ComponentStore {
3697
+ constructor() {
3698
+ super({
3699
+ nextEntryNumber: 0,
3700
+ currentEntryCount: 0,
3701
+ stores: new Map(),
3702
+ lastStoresChangeAt: new Date()
3703
+ });
3704
+ }
3705
+ // MARK: Accessors
3706
+ stores$ = this.select((state) => [state.stores, state.currentEntryCount, state.nextEntryNumber], {
3707
+ debounce: true, // NOTE: The addStore/removeStore functions use the same map, so we overload the equal function to properly trigger changes to the map.
3708
+ equal: (a, b) => a[1] === b[1] && a[2] === b[2] // only considered different if the nextEntryNumber changes
3709
+ }).pipe(map((x) => x[0]), shareReplay(1));
3710
+ lastStoresChangeAt$ = this.select((state) => state.lastStoresChangeAt).pipe(distinctUntilChanged(isSameDate), shareReplay(1));
3711
+ entriesGroupedByIdentity$ = this.stores$.pipe(switchMap((stores) => {
3712
+ let entriesObs;
3713
+ const allEntries = Array.from(stores.values());
3714
+ const { included: hasIdentity, excluded: noIdentity } = separateValues(allEntries, (x) => x.modelIdentity != null);
3715
+ if (noIdentity.length > 0) {
3716
+ entriesObs = combineLatest(noIdentity.map((entryWithoutCachedIdentity) => entryWithoutCachedIdentity.store.modelIdentity$.pipe(first(), map((z) => {
3717
+ // set the model identity on the entry
3718
+ entryWithoutCachedIdentity.modelIdentity = z;
3719
+ // return the entry
3720
+ return entryWithoutCachedIdentity;
3721
+ })))).pipe(map(() => {
3722
+ return allEntries; // all the entries should have an identity now
3723
+ }));
3724
+ }
3725
+ else {
3726
+ entriesObs = of(hasIdentity);
3727
+ }
3728
+ return entriesObs;
3729
+ }), map((x) => {
3730
+ // sort in ascending order by entry number
3731
+ x.sort(sortByNumberFunction((x) => x.entryNumber));
3732
+ return x;
3733
+ }), shareReplay(1));
3734
+ // MARK: State Changes
3735
+ addStore = this.updater(addStore);
3736
+ removeStore = this.updater(removeStore);
3737
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3738
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextStore });
3739
+ }
3740
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextStore, decorators: [{
3741
+ type: Injectable
3742
+ }], ctorParameters: () => [] });
3743
+ function addStore(state, store) {
3744
+ const { stores, nextEntryNumber } = state;
3745
+ let nextState;
3746
+ if (stores.has(store)) {
3747
+ nextState = state;
3748
+ }
3749
+ else {
3750
+ // add the entry
3751
+ const entry = {
3752
+ store,
3753
+ entryNumber: nextEntryNumber
3754
+ };
3755
+ stores.set(store, entry);
3756
+ // update the last changed date
3757
+ nextState = { ...state, currentEntryCount: state.currentEntryCount + 1, lastStoresChangeAt: new Date(), nextEntryNumber: nextEntryNumber + 1 };
3758
+ }
3759
+ return nextState;
3760
+ }
3761
+ function removeStore(state, store) {
3762
+ const { stores } = state;
3763
+ let nextState;
3764
+ if (!stores.has(store)) {
3765
+ nextState = state;
3766
+ }
3767
+ else {
3768
+ // remove the entry
3769
+ stores.delete(store);
3770
+ // update the last changed date
3771
+ nextState = { ...state, currentEntryCount: state.currentEntryCount - 1, lastStoresChangeAt: new Date() };
3772
+ }
3773
+ return nextState;
3774
+ }
3775
+
3776
+ const dbxFirebaseDocumentStoreContextModelEntitiesSourceFactory = (storeContextStore) => {
3777
+ const entities$ = storeContextStore.entriesGroupedByIdentity$.pipe(map((entries) => entries.map((entry) => ({ store: entry.store, modelIdentity: entry.modelIdentity }))));
3778
+ const source = {
3779
+ entities$: loadingStateFromObs(entities$)
3780
+ };
3781
+ return source;
3782
+ };
3783
+ class DbxFirebaseDocumentStoreContextModelEntitiesSourceDirective {
3784
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextModelEntitiesSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3785
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseDocumentStoreContextModelEntitiesSourceDirective, isStandalone: true, selector: "[dbxFirebaseDocumentStoreContextModelEntitiesSource]", providers: [
3786
+ {
3787
+ provide: DbxFirebaseModelEntitiesSource,
3788
+ useFactory: dbxFirebaseDocumentStoreContextModelEntitiesSourceFactory,
3789
+ deps: [DbxFirebaseDocumentStoreContextStore]
3790
+ }
3791
+ ], ngImport: i0 });
3792
+ }
3793
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextModelEntitiesSourceDirective, decorators: [{
3794
+ type: Directive,
3795
+ args: [{
3796
+ selector: '[dbxFirebaseDocumentStoreContextModelEntitiesSource]',
3797
+ providers: [
3798
+ {
3799
+ provide: DbxFirebaseModelEntitiesSource,
3800
+ useFactory: dbxFirebaseDocumentStoreContextModelEntitiesSourceFactory,
3801
+ deps: [DbxFirebaseDocumentStoreContextStore]
3802
+ }
3803
+ ],
3804
+ standalone: true
3805
+ }]
3806
+ }] });
3807
+
3479
3808
  /**
3480
3809
  * Abstract directive that contains a DbxFirebaseDocumentStore and provides an interface for communicating with other directives.
3481
3810
  */
@@ -4003,7 +4332,54 @@ function modelDoesNotExistError() {
4003
4332
  return readableError(DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, 'The document does not exist.');
4004
4333
  }
4005
4334
 
4335
+ /**
4336
+ * Injection token for DbxFirebaseDocumentStoreContextStore.
4337
+ */
4338
+ const DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN = new InjectionToken('DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN');
4339
+ /**
4340
+ * Provides the DbxFirebaseDocumentStoreContextStore.
4341
+ */
4342
+ function provideDbxFirebaseDocumentStoreContextStore() {
4343
+ return [
4344
+ {
4345
+ // Create/Provide a "nearest" DbxFirebaseDocumentStoreContextStore.
4346
+ provide: DbxFirebaseDocumentStoreContextStore
4347
+ },
4348
+ {
4349
+ // Also make that context store available to the DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN.
4350
+ provide: DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN,
4351
+ useExisting: DbxFirebaseDocumentStoreContextStore,
4352
+ multi: true
4353
+ }
4354
+ ];
4355
+ }
4356
+ /**
4357
+ * Links a DbxFirebaseDocumentStore to parent DbxFirebaseDocumentStoreContextStore instances.
4358
+ *
4359
+ * This should be called in an injectable context.
4360
+ */
4361
+ function linkDocumentStoreToParentContextStores(store) {
4362
+ const contextStores = inject(DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN, { optional: true });
4363
+ const destroyRef = inject(DestroyRef);
4364
+ if (contextStores) {
4365
+ // add the store to each available context store
4366
+ contextStores.forEach((contextStore) => {
4367
+ contextStore.addStore(store);
4368
+ });
4369
+ // remove the store from each available context store when the context is destroyed
4370
+ destroyRef.onDestroy(() => {
4371
+ contextStores.forEach((contextStore) => {
4372
+ contextStore.removeStore(store);
4373
+ });
4374
+ });
4375
+ }
4376
+ }
4377
+
4006
4378
  class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
4379
+ constructor(initialState) {
4380
+ super(initialState);
4381
+ linkDocumentStoreToParentContextStores(this);
4382
+ }
4007
4383
  // MARK: Effects
4008
4384
  // MARK: Accessors
4009
4385
  currentFirestoreCollectionLike$ = this.state$.pipe(map((x) => x.firestoreCollection ?? x.firestoreCollectionLike), distinctUntilChanged(), shareReplay(1));
@@ -4039,6 +4415,8 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
4039
4415
  hasRef$ = this.currentDocument$.pipe(map((x) => x?.documentRef != null), distinctUntilChanged(), shareReplay(1));
4040
4416
  document$ = this.currentDocument$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
4041
4417
  documentLoadingState$ = this.currentDocument$.pipe(map((x) => (x ? successResult(x) : beginLoading())), shareReplay(1));
4418
+ currentId$ = this.currentDocument$.pipe(map((x) => x?.id), shareReplay(1));
4419
+ currentKey$ = this.currentDocument$.pipe(map((x) => x?.key), shareReplay(1));
4042
4420
  id$ = this.document$.pipe(map((x) => x.id), shareReplay(1));
4043
4421
  key$ = this.document$.pipe(map((x) => x.key), shareReplay(1));
4044
4422
  keyModelIds$ = this.key$.pipe(map(firestoreModelIdsFromKey), shareReplay(1));
@@ -4097,7 +4475,7 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
4097
4475
  return of(result);
4098
4476
  }), shareReplay(1));
4099
4477
  doesNotExist$ = this.exists$.pipe(map((x) => !x), shareReplay(1));
4100
- modelIdentity$ = this.document$.pipe(map((x) => x.modelIdentity), shareReplay(1));
4478
+ modelIdentity$ = this.firestoreCollectionLike$.pipe(map((x) => x.modelIdentity), shareReplay(1));
4101
4479
  // MARK: State Changes
4102
4480
  setId = this.updater((state, id) => (id ? { ...state, id, key: undefined, ref: undefined } : { ...state, id }));
4103
4481
  setKey = this.updater((state, key) => (key ? { ...state, key, id: undefined, ref: undefined } : { ...state, key }));
@@ -4107,12 +4485,17 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
4107
4485
  clearRefs = this.updater((state) => ({ ...state, id: undefined, key: undefined, ref: undefined }));
4108
4486
  setFirestoreCollection = this.updater((state, firestoreCollection) => ({ ...state, firestoreCollection }));
4109
4487
  setFirestoreCollectionLike = this.updater((state, firestoreCollectionLike) => ({ ...state, firestoreCollectionLike }));
4110
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxFirebaseDocumentStore, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
4488
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxFirebaseDocumentStore, deps: [{ token: null, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
4111
4489
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxFirebaseDocumentStore });
4112
4490
  }
4113
4491
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxFirebaseDocumentStore, decorators: [{
4114
4492
  type: Injectable
4115
- }] });
4493
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
4494
+ type: Inject,
4495
+ args: [null]
4496
+ }, {
4497
+ type: Optional
4498
+ }] }] });
4116
4499
  function injectSingleItemIdIntoState(state) {
4117
4500
  const id = state?.firestoreCollection?.singleItemIdentifier;
4118
4501
  if (state && id != null) {
@@ -4475,6 +4858,22 @@ function provideDbxFirebaseCollectionWithParentStoreDirective(sourceType, storeT
4475
4858
  return providers;
4476
4859
  }
4477
4860
 
4861
+ /**
4862
+ * Directive that provides a DbxFirebaseDocumentStoreContextStore.
4863
+ */
4864
+ class DbxFirebaseDocumentStoreContextStoreDirective {
4865
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextStoreDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4866
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseDocumentStoreContextStoreDirective, isStandalone: true, selector: "[dbxFirebaseDocumentStoreContextStore]", providers: provideDbxFirebaseDocumentStoreContextStore(), ngImport: i0 });
4867
+ }
4868
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseDocumentStoreContextStoreDirective, decorators: [{
4869
+ type: Directive,
4870
+ args: [{
4871
+ selector: '[dbxFirebaseDocumentStoreContextStore]',
4872
+ providers: provideDbxFirebaseDocumentStoreContextStore(),
4873
+ standalone: true
4874
+ }]
4875
+ }] });
4876
+
4478
4877
  class SystemStateCollectionStore extends AbstractDbxFirebaseCollectionStore {
4479
4878
  constructor(collections) {
4480
4879
  super({ firestoreCollection: collections.systemStateCollection });
@@ -6791,5 +7190,5 @@ function provideDbxFirebase(config) {
6791
7190
  * Generated bundle index. Do not edit.
6792
7191
  */
6793
7192
 
6794
- export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, AbstractDbxFirebaseNotificationItemWidgetComponent, AbstractRootSingleItemDbxFirebaseDocument, AbstractSingleItemDbxFirebaseDocument, AbstractSystemStateDocumentStoreAccessor, DBX_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_COMPONENT_CONFIGURATION, DBX_FIREBASE_APP_OPTIONS_TOKEN, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_ID_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_KEY_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_USE_PARAM_VALUE, DBX_FIREBASE_LOGIN_COMPONENTS, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_STORAGEFILE_DOWNLOAD_STORAGE_ACCESSOR_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_CONFIG_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_TOKEN, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_ANALYTICS_USER_PROPERTIES_FACTORY, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_DBX_FIREBASE_MODEL_HISTORY_COMPONENT_POPOVER_KEY, DEFAULT_DBX_FIREBASE_NOTIFICATION_ITEM_STORE_POPOVER_KEY, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_COLLECTION_CHANGE_TRIGGER_FUNCTION, DEFAULT_FIREBASE_DEVELOPMENT_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_POPUP_KEY, DEFAULT_FIREBASE_DEVELOPMENT_SCHEDULER_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_WIDGET_PROVIDERS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DEFAULT_FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE, DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY, DbxFirebaseAnalyticsUserEventsListenerService, DbxFirebaseAnalyticsUserSource, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionChangeTriggerInstance, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDevelopmentDirective, DbxFirebaseDevelopmentModule, DbxFirebaseDevelopmentPopupComponent, DbxFirebaseDevelopmentPopupContentComponent, DbxFirebaseDevelopmentPopupContentFormComponent, DbxFirebaseDevelopmentSchedulerListComponent, DbxFirebaseDevelopmentSchedulerListViewComponent, DbxFirebaseDevelopmentSchedulerListViewItemComponent, DbxFirebaseDevelopmentSchedulerService, DbxFirebaseDevelopmentSchedulerWidgetComponent, DbxFirebaseDevelopmentService, DbxFirebaseDevelopmentWidgetService, DbxFirebaseDocumentLoaderInstance, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreIdFromTwoWayModelKeyDirective, DbxFirebaseDocumentStoreTwoWayKeyProvider, DbxFirebaseDocumentStoreTwoWayModelKeySourceDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseEmulatorService, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelContextService, DbxFirebaseModelHistoryComponent, DbxFirebaseModelHistoryModule, DbxFirebaseModelHistoryPopoverButtonComponent, DbxFirebaseModelHistoryPopoverComponent, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModelTrackerService, DbxFirebaseModelTypeInstanceListComponent, DbxFirebaseModelTypeInstanceListViewComponent, DbxFirebaseModelTypeInstanceListViewItemComponent, DbxFirebaseModelTypesModule, DbxFirebaseModelTypesService, DbxFirebaseModelTypesServiceConfig, DbxFirebaseModelViewedEventDirective, DbxFirebaseModule, DbxFirebaseNotificationBoxCollectionStoreDirective, DbxFirebaseNotificationBoxDocumentStoreDirective, DbxFirebaseNotificationCollectionStoreDirective, DbxFirebaseNotificationDocumentStoreDirective, DbxFirebaseNotificationItemContentComponent, DbxFirebaseNotificationItemDefaultViewComponent, DbxFirebaseNotificationItemListComponent, DbxFirebaseNotificationItemListViewComponent, DbxFirebaseNotificationItemListViewItemComponent, DbxFirebaseNotificationItemStore, DbxFirebaseNotificationItemStorePopoverButtonComponent, DbxFirebaseNotificationItemStorePopoverComponent, DbxFirebaseNotificationItemViewComponent, DbxFirebaseNotificationItemWidgetService, DbxFirebaseNotificationModule, DbxFirebaseNotificationSummaryCollectionStoreDirective, DbxFirebaseNotificationSummaryDocumentStoreDirective, DbxFirebaseNotificationTemplateService, DbxFirebaseNotificationUserCollectionStoreDirective, DbxFirebaseNotificationUserDocumentStoreDirective, DbxFirebaseParsedEmulatorsConfig, DbxFirebasePipeModule, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirebaseStorageFileCollectionStoreDirective, DbxFirebaseStorageFileDocumentStoreDirective, DbxFirebaseStorageFileDownloadButtonComponent, DbxFirebaseStorageFileDownloadService, DbxFirebaseStorageFileDownloadStorage, DbxFirebaseStorageFileUploadActionHandlerDirective, DbxFirebaseStorageFileUploadInitializeDocumentDirective, DbxFirebaseStorageFileUploadModule, DbxFirebaseStorageFileUploadStore, DbxFirebaseStorageFileUploadStoreDirective, DbxFirebaseStorageFileUploadSyncDirective, DbxFirebaseStorageModule, DbxFirebaseStorageService, DbxFirebaseSystemStateCollectionStoreDirective, DbxFirebaseSystemStateDocumentStoreDirective, DbxFirestoreContextService, DbxLimitedFirebaseDocumentLoaderInstance, FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE_PREFIX, FlatFirestoreModelKeyPipe, NotificationBoxCollectionStore, NotificationBoxDocumentStore, NotificationCollectionStore, NotificationDocumentStore, NotificationSummaryCollectionStore, NotificationSummaryDocumentStore, NotificationUserCollectionStore, NotificationUserDocumentStore, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, StorageFileCollectionStore, StorageFileDocumentStore, StorageFileUploadFilesError, SystemStateCollectionStore, SystemStateDocumentStore, TwoWayFlatFirestoreModelKeyPipe, authRolesObsWithClaimsService, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthServiceFunction, dbxFirebaseAuthContextInfo, dbxFirebaseCollectionChangeTrigger, dbxFirebaseCollectionChangeTriggerForStore, dbxFirebaseCollectionChangeTriggerForWatcher, dbxFirebaseCollectionChangeWatcher, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, dbxFirebaseDocumentLoaderInstance, dbxFirebaseDocumentLoaderInstanceWithAccessor, dbxFirebaseIdRouteParamRedirect, dbxFirebaseInContextFirebaseModelServiceInstance, dbxFirebaseInContextFirebaseModelServiceInstanceFactory, dbxFirebaseKeyRouteParamRedirect, dbxFirebaseModelContextServiceInfoInstanceFactory, dbxFirebaseModelTypesServiceInstance, dbxFirebaseModelTypesServiceInstancePairForKeysFactory, dbxFirebaseSourceSelectLoadSource, dbxFirebaseStorageFileDownloadServiceCustomSourceFromObs, dbxFirebaseStorageProvidersContextConfigFactory, dbxLimitedFirebaseDocumentLoaderInstance, dbxLimitedFirebaseDocumentLoaderInstanceWithAccessor, dbxWidgetTypeForNotificationTemplateType, defaultDbxFirebaseAuthServiceDelegateWithClaimsService, defaultDbxFirebaseStorageFileDownloadStorageAccessorFactory, developmentFirebaseServerSchedulerWidgetEntry, enableAppCheckDebugTokenGeneration, firebaseAuthTokenFromUser, firebaseCollectionStoreCreateFunction, firebaseCollectionStoreCrudFunction, firebaseContextServiceEntityMap, firebaseDocumentStoreCreateFunction, firebaseDocumentStoreCrudFunction, firebaseDocumentStoreDeleteFunction, firebaseDocumentStoreReadFunction, firebaseDocumentStoreUpdateFunction, importsAndExports$1 as importsAndExports, modelDoesNotExistError, provideDbxFirebase, provideDbxFirebaseAnalyticsUserEventsListenerService, provideDbxFirebaseApp, provideDbxFirebaseAuth, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDevelopment, provideDbxFirebaseDocumentStoreDirective, provideDbxFirebaseDocumentStoreTwoWayKeyProvider, provideDbxFirebaseEmulator, provideDbxFirebaseFunctions, provideDbxFirebaseLogin, provideDbxFirebaseModelContextService, provideDbxFirebaseNotifications, provideDbxFirebaseStorageFileService, provideDbxFirestoreCollection, provideNotificationFirestoreCollections, provideStorageFileFirestoreCollections, provideSystemStateFirestoreCollections, providedDbxFirebaseStorage, readDbxAnalyticsUserPropertiesFromAuthUserInfo, readValueFromIdToken, setParentStoreEffect, stateFromTokenForLoggedInUserFunction, storageFileUploadFiles, storageFileUploadHandler };
7193
+ export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, AbstractDbxFirebaseNotificationItemWidgetComponent, AbstractRootSingleItemDbxFirebaseDocument, AbstractSingleItemDbxFirebaseDocument, AbstractSystemStateDocumentStoreAccessor, DBX_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_COMPONENT_CONFIGURATION, DBX_FIREBASE_APP_OPTIONS_TOKEN, DBX_FIREBASE_DOCUMENT_STORE_CONTEXT_STORE_TOKEN, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_ID_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_KEY_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_USE_PARAM_VALUE, DBX_FIREBASE_LOGIN_COMPONENTS, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_STORAGEFILE_DOWNLOAD_STORAGE_ACCESSOR_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_CONFIG_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_TOKEN, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_ANALYTICS_USER_PROPERTIES_FACTORY, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_DBX_FIREBASE_MODEL_ENTITIES_COMPONENT_POPOVER_KEY, DEFAULT_DBX_FIREBASE_MODEL_HISTORY_COMPONENT_POPOVER_KEY, DEFAULT_DBX_FIREBASE_NOTIFICATION_ITEM_STORE_POPOVER_KEY, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_COLLECTION_CHANGE_TRIGGER_FUNCTION, DEFAULT_FIREBASE_DEVELOPMENT_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_POPUP_KEY, DEFAULT_FIREBASE_DEVELOPMENT_SCHEDULER_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_WIDGET_PROVIDERS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DEFAULT_FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE, DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY, DbxFirebaseAnalyticsUserEventsListenerService, DbxFirebaseAnalyticsUserSource, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionChangeTriggerInstance, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDevelopmentDirective, DbxFirebaseDevelopmentModule, DbxFirebaseDevelopmentPopupComponent, DbxFirebaseDevelopmentPopupContentComponent, DbxFirebaseDevelopmentPopupContentFormComponent, DbxFirebaseDevelopmentSchedulerListComponent, DbxFirebaseDevelopmentSchedulerListViewComponent, DbxFirebaseDevelopmentSchedulerListViewItemComponent, DbxFirebaseDevelopmentSchedulerService, DbxFirebaseDevelopmentSchedulerWidgetComponent, DbxFirebaseDevelopmentService, DbxFirebaseDevelopmentWidgetService, DbxFirebaseDocumentLoaderInstance, DbxFirebaseDocumentStoreContextModelEntitiesSourceDirective, DbxFirebaseDocumentStoreContextStore, DbxFirebaseDocumentStoreContextStoreDirective, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreIdFromTwoWayModelKeyDirective, DbxFirebaseDocumentStoreTwoWayKeyProvider, DbxFirebaseDocumentStoreTwoWayModelKeySourceDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseEmulatorService, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelContextService, DbxFirebaseModelEntitiesComponent, DbxFirebaseModelEntitiesPopoverButtonComponent, DbxFirebaseModelEntitiesPopoverComponent, DbxFirebaseModelEntitiesWidgetService, DbxFirebaseModelEntitiesWidgetServiceConfig, DbxFirebaseModelHistoryComponent, DbxFirebaseModelHistoryModule, DbxFirebaseModelHistoryPopoverButtonComponent, DbxFirebaseModelHistoryPopoverComponent, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModelTrackerService, DbxFirebaseModelTypeInstanceListComponent, DbxFirebaseModelTypeInstanceListViewComponent, DbxFirebaseModelTypeInstanceListViewItemComponent, DbxFirebaseModelTypesModule, DbxFirebaseModelTypesService, DbxFirebaseModelTypesServiceConfig, DbxFirebaseModelViewedEventDirective, DbxFirebaseModule, DbxFirebaseNotificationBoxCollectionStoreDirective, DbxFirebaseNotificationBoxDocumentStoreDirective, DbxFirebaseNotificationCollectionStoreDirective, DbxFirebaseNotificationDocumentStoreDirective, DbxFirebaseNotificationItemContentComponent, DbxFirebaseNotificationItemDefaultViewComponent, DbxFirebaseNotificationItemListComponent, DbxFirebaseNotificationItemListViewComponent, DbxFirebaseNotificationItemListViewItemComponent, DbxFirebaseNotificationItemStore, DbxFirebaseNotificationItemStorePopoverButtonComponent, DbxFirebaseNotificationItemStorePopoverComponent, DbxFirebaseNotificationItemViewComponent, DbxFirebaseNotificationItemWidgetService, DbxFirebaseNotificationModule, DbxFirebaseNotificationSummaryCollectionStoreDirective, DbxFirebaseNotificationSummaryDocumentStoreDirective, DbxFirebaseNotificationTemplateService, DbxFirebaseNotificationUserCollectionStoreDirective, DbxFirebaseNotificationUserDocumentStoreDirective, DbxFirebaseParsedEmulatorsConfig, DbxFirebasePipeModule, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirebaseStorageFileCollectionStoreDirective, DbxFirebaseStorageFileDocumentStoreDirective, DbxFirebaseStorageFileDownloadButtonComponent, DbxFirebaseStorageFileDownloadService, DbxFirebaseStorageFileDownloadStorage, DbxFirebaseStorageFileUploadActionHandlerDirective, DbxFirebaseStorageFileUploadInitializeDocumentDirective, DbxFirebaseStorageFileUploadModule, DbxFirebaseStorageFileUploadStore, DbxFirebaseStorageFileUploadStoreDirective, DbxFirebaseStorageFileUploadSyncDirective, DbxFirebaseStorageModule, DbxFirebaseStorageService, DbxFirebaseSystemStateCollectionStoreDirective, DbxFirebaseSystemStateDocumentStoreDirective, DbxFirestoreContextService, DbxLimitedFirebaseDocumentLoaderInstance, FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE_PREFIX, FlatFirestoreModelKeyPipe, NotificationBoxCollectionStore, NotificationBoxDocumentStore, NotificationCollectionStore, NotificationDocumentStore, NotificationSummaryCollectionStore, NotificationSummaryDocumentStore, NotificationUserCollectionStore, NotificationUserDocumentStore, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, StorageFileCollectionStore, StorageFileDocumentStore, StorageFileUploadFilesError, SystemStateCollectionStore, SystemStateDocumentStore, TwoWayFlatFirestoreModelKeyPipe, authRolesObsWithClaimsService, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthServiceFunction, dbxFirebaseAuthContextInfo, dbxFirebaseCollectionChangeTrigger, dbxFirebaseCollectionChangeTriggerForStore, dbxFirebaseCollectionChangeTriggerForWatcher, dbxFirebaseCollectionChangeWatcher, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, dbxFirebaseDocumentLoaderInstance, dbxFirebaseDocumentLoaderInstanceWithAccessor, dbxFirebaseDocumentStoreContextModelEntitiesSourceFactory, dbxFirebaseIdRouteParamRedirect, dbxFirebaseInContextFirebaseModelServiceInstance, dbxFirebaseInContextFirebaseModelServiceInstanceFactory, dbxFirebaseKeyRouteParamRedirect, dbxFirebaseModelContextServiceInfoInstanceFactory, dbxFirebaseModelTypesServiceInstance, dbxFirebaseModelTypesServiceInstancePairForKeysFactory, dbxFirebaseSourceSelectLoadSource, dbxFirebaseStorageFileDownloadServiceCustomSourceFromObs, dbxFirebaseStorageProvidersContextConfigFactory, dbxLimitedFirebaseDocumentLoaderInstance, dbxLimitedFirebaseDocumentLoaderInstanceWithAccessor, dbxWidgetTypeForNotificationTemplateType, defaultDbxFirebaseAuthServiceDelegateWithClaimsService, defaultDbxFirebaseStorageFileDownloadStorageAccessorFactory, developmentFirebaseServerSchedulerWidgetEntry, enableAppCheckDebugTokenGeneration, firebaseAuthTokenFromUser, firebaseCollectionStoreCreateFunction, firebaseCollectionStoreCrudFunction, firebaseContextServiceEntityMap, firebaseDocumentStoreCreateFunction, firebaseDocumentStoreCrudFunction, firebaseDocumentStoreDeleteFunction, firebaseDocumentStoreReadFunction, firebaseDocumentStoreUpdateFunction, importsAndExports$1 as importsAndExports, linkDocumentStoreToParentContextStores, modelDoesNotExistError, provideDbxFirebase, provideDbxFirebaseAnalyticsUserEventsListenerService, provideDbxFirebaseApp, provideDbxFirebaseAuth, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDevelopment, provideDbxFirebaseDocumentStoreContextStore, provideDbxFirebaseDocumentStoreDirective, provideDbxFirebaseDocumentStoreTwoWayKeyProvider, provideDbxFirebaseEmulator, provideDbxFirebaseFunctions, provideDbxFirebaseLogin, provideDbxFirebaseModelContextService, provideDbxFirebaseNotifications, provideDbxFirebaseStorageFileService, provideDbxFirestoreCollection, provideNotificationFirestoreCollections, provideStorageFileFirestoreCollections, provideSystemStateFirestoreCollections, providedDbxFirebaseStorage, readDbxAnalyticsUserPropertiesFromAuthUserInfo, readValueFromIdToken, setParentStoreEffect, stateFromTokenForLoggedInUserFunction, storageFileUploadFiles, storageFileUploadHandler };
6795
7194
  //# sourceMappingURL=dereekb-dbx-firebase.mjs.map