@dereekb/dbx-firebase 12.6.12 → 12.6.14
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/esm2022/lib/model/modules/model/entities/index.mjs +7 -2
- package/esm2022/lib/model/modules/model/entities/model.entities.component.mjs +4 -7
- package/esm2022/lib/model/modules/model/entities/model.entities.entity.component.mjs +58 -12
- package/esm2022/lib/model/modules/model/entities/model.entities.mjs +10 -1
- package/esm2022/lib/model/modules/model/entities/model.entities.popover.button.component.mjs +3 -3
- package/esm2022/lib/model/modules/model/entities/model.entities.popover.component.mjs +4 -2
- package/esm2022/lib/model/modules/model/entities/model.entities.providers.mjs +20 -0
- package/esm2022/lib/model/modules/model/entities/model.entities.widget.entity.abstract.directive.mjs +18 -0
- package/esm2022/lib/model/modules/model/entities/model.entities.widget.entity.debug.component.mjs +27 -0
- package/esm2022/lib/model/modules/model/entities/model.entities.widget.mjs +51 -0
- package/esm2022/lib/model/modules/model/entities/model.entities.widget.service.mjs +34 -10
- package/esm2022/lib/model/modules/model/index.mjs +2 -1
- package/esm2022/lib/model/modules/model/model.key.component.mjs +47 -0
- package/esm2022/lib/model/modules/model/model.types.service.mjs +5 -3
- package/esm2022/lib/model/modules/store/store.document.mjs +6 -6
- package/esm2022/lib/providers.mjs +7 -3
- package/fesm2022/dereekb-dbx-firebase.mjs +265 -46
- package/fesm2022/dereekb-dbx-firebase.mjs.map +1 -1
- package/lib/model/modules/model/entities/index.d.ts +6 -1
- package/lib/model/modules/model/entities/model.entities.component.d.ts +3 -6
- package/lib/model/modules/model/entities/model.entities.d.ts +7 -0
- package/lib/model/modules/model/entities/model.entities.entity.component.d.ts +30 -12
- package/lib/model/modules/model/entities/model.entities.providers.d.ts +22 -0
- package/lib/model/modules/model/entities/model.entities.widget.d.ts +30 -0
- package/lib/model/modules/model/entities/model.entities.widget.entity.abstract.directive.d.ts +12 -0
- package/lib/model/modules/model/entities/model.entities.widget.entity.debug.component.d.ts +14 -0
- package/lib/model/modules/model/entities/model.entities.widget.service.d.ts +27 -5
- package/lib/model/modules/model/index.d.ts +1 -0
- package/lib/model/modules/model/model.key.component.d.ts +24 -0
- package/lib/model/modules/model/model.types.service.d.ts +4 -3
- package/lib/model/modules/store/store.document.d.ts +1 -1
- package/lib/providers.d.ts +5 -0
- package/package.json +1 -1
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
export * from './model.entities.component';
|
|
2
|
-
export * from './model.entities.popover.component';
|
|
3
2
|
export * from './model.entities.popover.button.component';
|
|
3
|
+
export * from './model.entities.popover.component';
|
|
4
|
+
export * from './model.entities.providers';
|
|
4
5
|
export * from './model.entities.source.directive';
|
|
6
|
+
export * from './model.entities';
|
|
7
|
+
export * from './model.entities.widget.entity.abstract.directive';
|
|
8
|
+
export * from './model.entities.widget.entity.debug.component';
|
|
9
|
+
export * from './model.entities.widget';
|
|
5
10
|
export * from './model.entities.widget.service';
|
|
@@ -5,15 +5,12 @@ import { Maybe } from '@dereekb/util';
|
|
|
5
5
|
import { LoadingState } from '@dereekb/rxjs';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export declare class DbxFirebaseModelEntitiesComponent implements OnDestroy {
|
|
8
|
-
/**
|
|
9
|
-
* All input entities.
|
|
10
|
-
*/
|
|
11
|
-
readonly entities: import("@angular/core").InputSignal<Observable<LoadingState<DbxFirebaseModelEntity[]>> | undefined>;
|
|
12
|
-
readonly entities$: Observable<LoadingState<DbxFirebaseModelEntity[]>>;
|
|
13
8
|
/**
|
|
14
9
|
* Whether the accordion should allow multiple expanded panels.
|
|
15
10
|
*/
|
|
16
11
|
readonly multi: import("@angular/core").InputSignal<boolean>;
|
|
12
|
+
readonly entities: import("@angular/core").InputSignal<Observable<LoadingState<DbxFirebaseModelEntity[]>> | undefined>;
|
|
13
|
+
readonly entities$: Observable<LoadingState<DbxFirebaseModelEntity[]>>;
|
|
17
14
|
readonly entitiesWithKeysState$: Observable<LoadingState<DbxFirebaseModelEntityWithKeyAndStore[]>>;
|
|
18
15
|
readonly entitiesWithKeys$: Observable<Maybe<DbxFirebaseModelEntityWithKeyAndStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>[]>>;
|
|
19
16
|
readonly entitiesWithKeysSignal: import("@angular/core").Signal<Maybe<DbxFirebaseModelEntityWithKeyAndStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>[]>>;
|
|
@@ -21,5 +18,5 @@ export declare class DbxFirebaseModelEntitiesComponent implements OnDestroy {
|
|
|
21
18
|
readonly context: import("@dereekb/rxjs").MutableLoadingStateContext<unknown, LoadingState<DbxFirebaseModelEntityWithKeyAndStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>[]>, import("@dereekb/rxjs").LoadingContextEvent & LoadingState<DbxFirebaseModelEntityWithKeyAndStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>[]>>;
|
|
22
19
|
ngOnDestroy(): void;
|
|
23
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelEntitiesComponent, never>;
|
|
24
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseModelEntitiesComponent, "dbx-firebase-model-entities", never, { "
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseModelEntitiesComponent, "dbx-firebase-model-entities", never, { "multi": { "alias": "multi"; "required": false; "isSignal": true; }; "entities": { "alias": "entities"; "required": false; "isSignal": true; }; }, {}, never, ["[empty]"], true, never>;
|
|
25
22
|
}
|
|
@@ -33,6 +33,13 @@ export interface DbxFirebaseModelEntityWithStore<T = any, D extends FirestoreDoc
|
|
|
33
33
|
*/
|
|
34
34
|
readonly store: DbxFirebaseDocumentReadOnlyStore<T, D>;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Returns true if the input entity has a defined store.
|
|
38
|
+
*
|
|
39
|
+
* @param entity
|
|
40
|
+
* @returns
|
|
41
|
+
*/
|
|
42
|
+
export declare function isDbxFirebaseModelEntityWithStore<T = any, D extends FirestoreDocument<T> = FirestoreDocument<T>>(entity: DbxFirebaseModelEntity): entity is DbxFirebaseModelEntityWithStore<T, D>;
|
|
36
43
|
/**
|
|
37
44
|
* An entity that has a key.
|
|
38
45
|
*/
|
|
@@ -1,18 +1,36 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
2
|
+
import { DbxFirebaseModelEntity, DbxFirebaseModelEntityWithStore } from './model.entities';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
2
4
|
import { DbxFirebaseModelEntitiesWidgetService } from './model.entities.widget.service';
|
|
3
|
-
import { DbxFirebaseModelTypesService } from '../model.types.service';
|
|
5
|
+
import { DbxFirebaseModelTypesService, type DbxFirebaseModelDisplayInfo, type DbxFirebaseModelTypeInfo } from '../model.types.service';
|
|
6
|
+
import { type Maybe } from '@dereekb/util';
|
|
4
7
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class DbxFirebaseModelEntitiesEntityComponent {
|
|
6
|
-
readonly
|
|
7
|
-
readonly
|
|
8
|
-
|
|
9
|
-
* The input entity
|
|
10
|
-
*/
|
|
8
|
+
export declare class DbxFirebaseModelEntitiesEntityComponent implements OnDestroy {
|
|
9
|
+
readonly widgetInjectionConfigFactory: import("./model.entities.widget").DbxFirebaseModelEntitiesWidgetInjectionConfigFactory;
|
|
10
|
+
readonly entitiesWidgetService: DbxFirebaseModelEntitiesWidgetService;
|
|
11
|
+
readonly dbxFirebaseModelTypesService: DbxFirebaseModelTypesService;
|
|
11
12
|
readonly entity: import("@angular/core").InputSignal<DbxFirebaseModelEntity>;
|
|
12
|
-
readonly
|
|
13
|
-
readonly
|
|
14
|
-
readonly
|
|
15
|
-
|
|
13
|
+
readonly entity$: Observable<DbxFirebaseModelEntity>;
|
|
14
|
+
readonly currentEntityWithStore$: Observable<DbxFirebaseModelEntityWithStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>> | null>;
|
|
15
|
+
readonly modelIdentity$: Observable<import("dist/packages/firebase/src").FirestoreModelTypeRef<string> & import("dist/packages/firebase/src").FirestoreCollectionNameRef<string> & import("dist/packages/firebase/src").FirestoreCollectionTypeRef & {
|
|
16
|
+
readonly type: import("dist/packages/firebase/src").FirestoreModelIdentityType;
|
|
17
|
+
}>;
|
|
18
|
+
readonly store$: Observable<import("@dereekb/dbx-firebase").DbxFirebaseDocumentReadOnlyStore<any, any>>;
|
|
19
|
+
readonly loadingState$: Observable<import("@dereekb/rxjs").LoadingState<any>>;
|
|
20
|
+
readonly currentData$: Observable<any>;
|
|
21
|
+
readonly currentWidgetEntry$: Observable<import("./model.entities.widget.service").DbxFirebaseModelEntitiesWidgetEntry>;
|
|
22
|
+
readonly currentTypeInfo$: Observable<Maybe<DbxFirebaseModelTypeInfo>>;
|
|
23
|
+
readonly hasTypeInfo$: Observable<boolean>;
|
|
24
|
+
readonly displayInfo$: Observable<DbxFirebaseModelDisplayInfo>;
|
|
25
|
+
readonly widgetInjectionConfig$: Observable<import("./model.entities.widget").DbxFirebaseModelEntitiesWidgetInjectionConfig | null>;
|
|
26
|
+
readonly hasTypeInfoSignal: import("@angular/core").Signal<boolean | undefined>;
|
|
27
|
+
readonly displayInfoSignal: import("@angular/core").Signal<import("@dereekb/dbx-core").IconAndTitle | undefined>;
|
|
28
|
+
readonly widgetInjectionConfigSignal: import("@angular/core").Signal<import("./model.entities.widget").DbxFirebaseModelEntitiesWidgetInjectionConfig | null | undefined>;
|
|
29
|
+
readonly entityWidgetConfigSignal: import("@angular/core").Signal<Maybe<import("@dereekb/dbx-core").DbxInjectionComponentConfig<unknown>>>;
|
|
30
|
+
readonly commonWidgetConfigSignal: import("@angular/core").Signal<Maybe<import("@dereekb/dbx-core").DbxInjectionComponentConfig<unknown>>>;
|
|
31
|
+
readonly debugWidgetConfigSignal: import("@angular/core").Signal<Maybe<import("@dereekb/dbx-core").DbxInjectionComponentConfig<unknown>>>;
|
|
32
|
+
readonly loadingContext: import("@dereekb/rxjs").MutableLoadingStateContext<unknown, import("@dereekb/rxjs").LoadingState<any>, import("@dereekb/rxjs").LoadingContextEvent & import("@dereekb/rxjs").LoadingState<any>>;
|
|
33
|
+
ngOnDestroy(): void;
|
|
16
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelEntitiesEntityComponent, never>;
|
|
17
35
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseModelEntitiesEntityComponent, "dbx-firebase-model-entities-entity", never, { "entity": { "alias": "entity"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
18
36
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type EnvironmentProviders, type Injector } from '@angular/core';
|
|
2
|
+
import { DbxFirebaseModelEntitiesWidgetServiceConfig } from './model.entities.widget.service';
|
|
3
|
+
/**
|
|
4
|
+
* Factory for DbxFirebaseModelEntitiesWidgetServiceConfig.
|
|
5
|
+
*/
|
|
6
|
+
export type DbxFirebaseModelEntitiesWidgetServiceConfigFactory = (injector: Injector) => DbxFirebaseModelEntitiesWidgetServiceConfig;
|
|
7
|
+
/**
|
|
8
|
+
* Configuration for provideDbxFirebaseModelEntitiesWidgetService().
|
|
9
|
+
*/
|
|
10
|
+
export interface ProvideDbxFirebaseModelEntitiesWidgetServiceConfig {
|
|
11
|
+
/**
|
|
12
|
+
* Factory for DbxFirebaseModelEntitiesWidgetServiceConfig.
|
|
13
|
+
*/
|
|
14
|
+
readonly dbxFirebaseModelEntitiesWidgetServiceConfigFactory: DbxFirebaseModelEntitiesWidgetServiceConfigFactory;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Creates EnvironmentProviders for DbxFirebaseModelEntitiesWidgetService.
|
|
18
|
+
*
|
|
19
|
+
* @param config Configuration
|
|
20
|
+
* @returns EnvironmentProviders
|
|
21
|
+
*/
|
|
22
|
+
export declare function provideDbxFirebaseModelEntitiesWidgetService(config: ProvideDbxFirebaseModelEntitiesWidgetServiceConfig): EnvironmentProviders;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { InjectionToken, type Injector } from '@angular/core';
|
|
2
|
+
import { type DbxFirebaseModelEntityWithStore } from './model.entities';
|
|
3
|
+
import { type DbxFirebaseModelEntitiesWidgetEntry } from './model.entities.widget.service';
|
|
4
|
+
import { type DbxInjectionComponentConfig } from '@dereekb/dbx-core';
|
|
5
|
+
import { type Maybe } from '@dereekb/util';
|
|
6
|
+
/**
|
|
7
|
+
* Injection token for providing DbxFirebaseModelEntityWithStore context to dynamically loaded widgets.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DBX_FIREBASE_MODEL_ENTITY_WITH_STORE_TOKEN: InjectionToken<DbxFirebaseModelEntityWithStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>>;
|
|
10
|
+
/**
|
|
11
|
+
* Contains the DbxInjectionComponentConfig for the different injected components a DbxFirebaseModelEntity
|
|
12
|
+
*/
|
|
13
|
+
export interface DbxFirebaseModelEntitiesWidgetInjectionConfig {
|
|
14
|
+
readonly entry: DbxFirebaseModelEntitiesWidgetEntry;
|
|
15
|
+
readonly entity: DbxFirebaseModelEntityWithStore;
|
|
16
|
+
readonly entityComponentConfig?: Maybe<DbxInjectionComponentConfig<unknown>>;
|
|
17
|
+
readonly commonComponentConfig?: Maybe<DbxInjectionComponentConfig<unknown>>;
|
|
18
|
+
readonly debugComponentConfig?: Maybe<DbxInjectionComponentConfig<unknown>>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Factory function used to create a DbxFirebaseModelEntitiesWidgetInjectionConfig given the input.
|
|
22
|
+
*/
|
|
23
|
+
export type DbxFirebaseModelEntitiesWidgetInjectionConfigFactory = (entry: DbxFirebaseModelEntitiesWidgetEntry, entity: DbxFirebaseModelEntityWithStore) => DbxFirebaseModelEntitiesWidgetInjectionConfig;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a DbxFirebaseModelEntitiesWidgetInjectionConfigFactory.
|
|
26
|
+
*
|
|
27
|
+
* @param injector Optional injector to use for the components.
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
export declare function dbxFirebaseModelEntityWidgetInjectionConfigFactory(injector?: Maybe<Injector>): DbxFirebaseModelEntitiesWidgetInjectionConfigFactory;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DbxFirebaseModelEntityWithStore } from './model.entities';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* An abstract DbxFirebase widget component that injects the entity data and provides some common accessors.
|
|
5
|
+
*/
|
|
6
|
+
export declare abstract class AbstractDbxFirebaseModelEntitiesWidgetDirective {
|
|
7
|
+
readonly entityData: DbxFirebaseModelEntityWithStore;
|
|
8
|
+
readonly store: import("@dereekb/dbx-firebase").DbxFirebaseDocumentReadOnlyStore<any, import("dist/packages/firebase/src").FirestoreDocument<any, import("dist/packages/firebase/src").FirestoreModelIdentity>>;
|
|
9
|
+
readonly data$: import("rxjs").Observable<any>;
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxFirebaseModelEntitiesWidgetDirective, never>;
|
|
11
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxFirebaseModelEntitiesWidgetDirective, never, never, {}, {}, never, never, false, never>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
2
|
+
import { AbstractDbxFirebaseModelEntitiesWidgetDirective } from './model.entities.widget.entity.abstract.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* A debug widget component that displays entity data and metadata.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseModelEntitiesDebugWidgetComponent extends AbstractDbxFirebaseModelEntitiesWidgetDirective implements OnDestroy {
|
|
8
|
+
readonly currentKey: import("@angular/core").Signal<import("dist/packages/util/src").Maybe<string>>;
|
|
9
|
+
readonly currentData: import("@angular/core").Signal<any>;
|
|
10
|
+
readonly context: import("@dereekb/rxjs").MutableLoadingStateContext<unknown, import("@dereekb/rxjs").LoadingState<any>, import("@dereekb/rxjs").LoadingContextEvent & import("@dereekb/rxjs").LoadingState<any>>;
|
|
11
|
+
ngOnDestroy(): void;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelEntitiesDebugWidgetComponent, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseModelEntitiesDebugWidgetComponent, "dbx-firebase-model-entities-debug-widget", never, {}, {}, never, never, true, never>;
|
|
14
|
+
}
|
|
@@ -8,9 +8,17 @@ export interface DbxFirebaseModelEntitiesWidgetEntry {
|
|
|
8
8
|
*/
|
|
9
9
|
readonly identity: FirestoreModelIdentity;
|
|
10
10
|
/**
|
|
11
|
-
* Widget component
|
|
11
|
+
* Widget component that is specific to this entity.
|
|
12
12
|
*/
|
|
13
|
-
readonly
|
|
13
|
+
readonly entityComponentClass?: Maybe<Type<unknown>>;
|
|
14
|
+
/**
|
|
15
|
+
* Overrides the "common" widget component used for all entities.
|
|
16
|
+
*/
|
|
17
|
+
readonly commonComponentClass?: Maybe<Type<unknown>>;
|
|
18
|
+
/**
|
|
19
|
+
* Optional widget component that is specific to this entity that provides additional debug information, and is displayed after the common widget.
|
|
20
|
+
*/
|
|
21
|
+
readonly debugComponentClass?: Maybe<Type<unknown>>;
|
|
14
22
|
}
|
|
15
23
|
/**
|
|
16
24
|
* Configuration provided in the root module for configuring entries.
|
|
@@ -20,24 +28,38 @@ export declare abstract class DbxFirebaseModelEntitiesWidgetServiceConfig {
|
|
|
20
28
|
* Entries to register.
|
|
21
29
|
*/
|
|
22
30
|
abstract entries: DbxFirebaseModelEntitiesWidgetEntry[];
|
|
31
|
+
/**
|
|
32
|
+
* The default "common" widget component used for all entities.
|
|
33
|
+
*/
|
|
34
|
+
abstract commonComponentClass?: Maybe<Type<unknown>>;
|
|
35
|
+
/**
|
|
36
|
+
* The default "debug" widget component used for all entities.
|
|
37
|
+
*/
|
|
38
|
+
abstract debugComponentClass?: Maybe<Type<unknown>>;
|
|
23
39
|
}
|
|
24
40
|
/**
|
|
25
41
|
* Service used to register widgets used for model entities.
|
|
26
42
|
*/
|
|
27
43
|
export declare class DbxFirebaseModelEntitiesWidgetService {
|
|
44
|
+
private _commonComponentClass;
|
|
45
|
+
private _debugComponentClass;
|
|
28
46
|
private readonly _entries;
|
|
29
47
|
constructor(initialConfig?: DbxFirebaseModelEntitiesWidgetServiceConfig);
|
|
48
|
+
getCommonComponentClass(): Maybe<Type<unknown>>;
|
|
49
|
+
setCommonComponentClass(componentClass: Maybe<Type<unknown>>): void;
|
|
50
|
+
getDebugComponentClass(): Maybe<Type<unknown>>;
|
|
51
|
+
setDebugComponentClass(componentClass: Maybe<Type<unknown>>): void;
|
|
30
52
|
/**
|
|
31
53
|
* Used to register one or more entries.
|
|
32
54
|
*
|
|
33
55
|
* If an entry with the same identity is already registered, this will override it by default.
|
|
34
56
|
*
|
|
35
|
-
* @param entries
|
|
36
|
-
* @param override
|
|
57
|
+
* @param entries The entries to register
|
|
58
|
+
* @param override Whether to override existing entries (default: true)
|
|
37
59
|
*/
|
|
38
60
|
register(entries: ArrayOrValue<DbxFirebaseModelEntitiesWidgetEntry>, override?: boolean): void;
|
|
39
61
|
getAllRegisteredWidgetIdentities(): FirestoreModelIdentity[];
|
|
40
|
-
getWidgetEntry(identity: FirestoreModelIdentity):
|
|
62
|
+
getWidgetEntry(identity: FirestoreModelIdentity): DbxFirebaseModelEntitiesWidgetEntry;
|
|
41
63
|
getWidgetEntries(identities: Iterable<FirestoreModelIdentity>): DbxFirebaseModelEntitiesWidgetEntry[];
|
|
42
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelEntitiesWidgetService, [{ optional: true; }]>;
|
|
43
65
|
static ɵprov: i0.ɵɵInjectableDeclaration<DbxFirebaseModelEntitiesWidgetService>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DbxFirebaseModelTypesService, DbxFirebaseModelTypesServiceInstance } from './model.types.service';
|
|
2
|
+
import { Maybe } from '@dereekb/util';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* An interactive display for a FirestoreModelKey.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxFirebaseModelKeyComponent {
|
|
8
|
+
readonly dbxFirebaseModelTypesService: DbxFirebaseModelTypesService;
|
|
9
|
+
readonly modelKey: import("@angular/core").InputSignal<string | undefined>;
|
|
10
|
+
readonly oneWayFlatModelKey: import("@angular/core").Signal<string | undefined>;
|
|
11
|
+
readonly twoWayFlatModelKey: import("@angular/core").Signal<string | undefined>;
|
|
12
|
+
readonly modelKey$: import("rxjs").Observable<string | undefined>;
|
|
13
|
+
readonly modelTypeInstance$: import("rxjs").Observable<DbxFirebaseModelTypesServiceInstance<any, string> | undefined>;
|
|
14
|
+
readonly modelIdentity$: import("rxjs").Observable<import("@dereekb/firebase").FirestoreModelIdentity | undefined>;
|
|
15
|
+
readonly typeInfo$: import("rxjs").Observable<Maybe<import("./model.types.service").DbxFirebaseModelTypeInfo<unknown>>>;
|
|
16
|
+
readonly modelTypeInstanceSignal: import("@angular/core").Signal<DbxFirebaseModelTypesServiceInstance<any, string> | undefined>;
|
|
17
|
+
readonly modelIdentitySignal: import("@angular/core").Signal<import("@dereekb/firebase").FirestoreModelIdentity | undefined>;
|
|
18
|
+
readonly typeInfoSignal: import("@angular/core").Signal<Maybe<import("./model.types.service").DbxFirebaseModelTypeInfo<unknown>>>;
|
|
19
|
+
readonly typeCanSegueToView: import("@angular/core").Signal<boolean>;
|
|
20
|
+
readonly sref$: import("rxjs").Observable<Maybe<import("@dereekb/dbx-core").SegueRef<object>>>;
|
|
21
|
+
readonly srefSignal: import("@angular/core").Signal<Maybe<import("@dereekb/dbx-core").SegueRef<object>>>;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelKeyComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFirebaseModelKeyComponent, "dbx-firebase-model-key", never, { "modelKey": { "alias": "modelKey"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
24
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { FirestoreCollectionType, FirestoreDocument, FirestoreDocumentData, FirestoreModelIdentity, FirestoreModelKey } from '@dereekb/firebase';
|
|
3
3
|
import { DbxModelTypeInfo, DbxModelTypesMap, DbxModelTypesService } from '@dereekb/dbx-web';
|
|
4
|
-
import { ArrayOrValue, FactoryWithRequiredInput, Maybe
|
|
4
|
+
import { ArrayOrValue, FactoryWithRequiredInput, Maybe } from '@dereekb/util';
|
|
5
5
|
import { ClickableAnchorLinkSegueRef, IconAndTitle, SegueRef } from '@dereekb/dbx-core';
|
|
6
6
|
import { ObservableOrValue } from '@dereekb/rxjs';
|
|
7
7
|
import { GrantedRole } from '@dereekb/model';
|
|
@@ -51,8 +51,8 @@ export declare class DbxFirebaseModelTypesService {
|
|
|
51
51
|
icon: string;
|
|
52
52
|
};
|
|
53
53
|
register(entries: ArrayOrValue<DbxFirebaseModelTypesServiceEntry>): void;
|
|
54
|
-
currentInfoForType(type:
|
|
55
|
-
infoForType(type:
|
|
54
|
+
currentInfoForType(type: FirestoreCollectionType): Observable<Maybe<DbxFirebaseModelTypeInfo>>;
|
|
55
|
+
infoForType(type: FirestoreCollectionType): Observable<DbxFirebaseModelTypeInfo>;
|
|
56
56
|
instanceForKey<D extends FirestoreDocument<any> = any, R extends GrantedRole = GrantedRole>(key$: ObservableOrValue<FirestoreModelKey>): DbxFirebaseModelTypesServiceInstance<D, R>;
|
|
57
57
|
instancePairsForKeys(keys: ArrayOrValue<ObservableOrValue<FirestoreModelKey>>): Observable<DbxFirebaseModelTypesServiceInstancePair<any, string>[]>;
|
|
58
58
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseModelTypesService, never>;
|
|
@@ -78,6 +78,7 @@ export interface DbxFirebaseModelTypesServiceInstance<D extends FirestoreDocumen
|
|
|
78
78
|
readonly key$: Observable<string>;
|
|
79
79
|
readonly modelType$: Observable<string>;
|
|
80
80
|
readonly snapshotData$: Observable<Maybe<FirestoreDocumentData<D>>>;
|
|
81
|
+
readonly safeTypeInfo$: Observable<Maybe<DbxFirebaseModelTypeInfo<unknown>>>;
|
|
81
82
|
readonly typeInfo$: Observable<DbxFirebaseModelTypeInfo<unknown>>;
|
|
82
83
|
readonly identity$: Observable<FirestoreModelIdentity>;
|
|
83
84
|
readonly segueRef$: Observable<Maybe<SegueRef>>;
|
|
@@ -37,9 +37,9 @@ export declare class AbstractDbxFirebaseDocumentStore<T, D extends FirestoreDocu
|
|
|
37
37
|
readonly twoWayFlatKey$: Observable<FlatFirestoreModelKey>;
|
|
38
38
|
readonly snapshot$: Observable<DocumentSnapshot<T>>;
|
|
39
39
|
readonly snapshotLoadingState$: Observable<LoadingState<DocumentSnapshot<T>>>;
|
|
40
|
+
readonly dataLoadingState$: Observable<LoadingState<DocumentDataWithIdAndKey<T>>>;
|
|
40
41
|
readonly currentData$: Observable<Maybe<DocumentDataWithIdAndKey<T>>>;
|
|
41
42
|
readonly data$: Observable<DocumentDataWithIdAndKey<T>>;
|
|
42
|
-
readonly dataLoadingState$: Observable<LoadingState<DocumentDataWithIdAndKey<T>>>;
|
|
43
43
|
readonly isLoadingData$: Observable<boolean>;
|
|
44
44
|
/**
|
|
45
45
|
* Returns false while hasRef$ is false, and then returns exists$.
|
package/lib/providers.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ import { type ProvideDbxFirebaseDevelopmentConfig } from './development/developm
|
|
|
11
11
|
import { type ProvideDbxFirebaseNotificationsConfig } from './modules/notification/notification.providers';
|
|
12
12
|
import { type ProvideDbxFirebaseModelContextServiceConfig } from './model/service/model.context.providers';
|
|
13
13
|
import { type ProvideDbxFirebaseModelTypesServiceConfig } from './model/modules/model/model.types.providers';
|
|
14
|
+
import { type ProvideDbxFirebaseModelEntitiesWidgetServiceConfig } from './model/modules/model/entities/model.entities.providers';
|
|
14
15
|
export interface ProvideDbxFirebaseConfig<T, M extends FirebaseFunctionsMap = FirebaseFunctionsMap> {
|
|
15
16
|
readonly app: ProvideDbxFirebaseAppConfig;
|
|
16
17
|
readonly emulator: ProvideDbxFirebaseEmulatorsConfig;
|
|
@@ -26,6 +27,10 @@ export interface ProvideDbxFirebaseConfig<T, M extends FirebaseFunctionsMap = Fi
|
|
|
26
27
|
* Configuration for provideDbxFirebaseModelTypesService().
|
|
27
28
|
*/
|
|
28
29
|
readonly modelTypesService: ProvideDbxFirebaseModelTypesServiceConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Configuration for provideDbxFirebaseModelEntitiesWidgetService().
|
|
32
|
+
*/
|
|
33
|
+
readonly modelEntitiesWidgetService?: Maybe<ProvideDbxFirebaseModelEntitiesWidgetServiceConfig>;
|
|
29
34
|
/**
|
|
30
35
|
* Configuration for provideDbxFirebaseDevelopment.
|
|
31
36
|
*
|