@dereekb/dbx-web 9.19.5 → 9.20.0

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 (41) hide show
  1. package/calendar/package.json +2 -2
  2. package/esm2020/lib/extension/index.mjs +2 -1
  3. package/esm2020/lib/extension/model/index.mjs +9 -0
  4. package/esm2020/lib/extension/model/model.module.mjs +66 -0
  5. package/esm2020/lib/extension/model/model.state.service.mjs +25 -0
  6. package/esm2020/lib/extension/model/model.tracker.mjs +7 -0
  7. package/esm2020/lib/extension/model/model.tracker.service.mjs +42 -0
  8. package/esm2020/lib/extension/model/model.tracker.view.storage.mjs +65 -0
  9. package/esm2020/lib/extension/model/model.types.mjs +2 -0
  10. package/esm2020/lib/extension/model/model.types.service.mjs +68 -0
  11. package/esm2020/lib/extension/model/state/actions/actions.mjs +3 -0
  12. package/esm2020/lib/extension/model/state/actions/index.mjs +4 -0
  13. package/esm2020/lib/extension/model/state/actions/model.actions.mjs +3 -0
  14. package/esm2020/lib/extension/model/state/effects/tracker.effects.mjs +30 -0
  15. package/esm2020/lib/extension/model/state/index.mjs +6 -0
  16. package/esm2020/lib/extension/model/state/reducers/index.mjs +13 -0
  17. package/esm2020/lib/extension/model/state/reducers/model.module.config.mjs +8 -0
  18. package/esm2020/lib/extension/model/state/state.mjs +2 -0
  19. package/fesm2015/dereekb-dbx-web.mjs +305 -4
  20. package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
  21. package/fesm2020/dereekb-dbx-web.mjs +311 -4
  22. package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
  23. package/lib/extension/index.d.ts +1 -0
  24. package/lib/extension/model/index.d.ts +8 -0
  25. package/lib/extension/model/model.module.d.ts +19 -0
  26. package/lib/extension/model/model.state.service.d.ts +14 -0
  27. package/lib/extension/model/model.tracker.d.ts +18 -0
  28. package/lib/extension/model/model.tracker.service.d.ts +20 -0
  29. package/lib/extension/model/model.tracker.view.storage.d.ts +23 -0
  30. package/lib/extension/model/model.types.d.ts +27 -0
  31. package/lib/extension/model/model.types.service.d.ts +32 -0
  32. package/lib/extension/model/state/actions/actions.d.ts +1 -0
  33. package/lib/extension/model/state/actions/index.d.ts +3 -0
  34. package/lib/extension/model/state/actions/model.actions.d.ts +8 -0
  35. package/lib/extension/model/state/effects/tracker.effects.d.ts +16 -0
  36. package/lib/extension/model/state/index.d.ts +5 -0
  37. package/lib/extension/model/state/reducers/index.d.ts +15 -0
  38. package/lib/extension/model/state/reducers/model.module.config.d.ts +5 -0
  39. package/lib/extension/model/state/state.d.ts +2 -0
  40. package/mapbox/package.json +3 -3
  41. package/package.json +4 -3
@@ -5,7 +5,7 @@ import { BehaviorSubject, map, combineLatest, distinctUntilChanged, shareReplay,
5
5
  import * as i1$1 from '@angular/material/snack-bar';
6
6
  import { MAT_SNACK_BAR_DATA, MatSnackBarModule } from '@angular/material/snack-bar';
7
7
  import * as i1$2 from '@dereekb/dbx-core';
8
- import { AbstractSubscriptionDirective, safeMarkForCheck, AbstractDbxButtonDirective, provideDbxButton, DbxCoreButtonModule, AbstractTransitionWatcherDirective, AbstractDbxActionValueOnTriggerDirective, safeDetectChanges, DbxInjectionComponentModule, AbstractDbxActionHandlerDirective, provideActionStoreSource, AbstractDbxAnchorDirective, expandClickableAnchorLinkTrees, AbstractTransitionDirective, tapDetectChanges, DbxCoreFilterModule, asSegueRef, isSegueRefActive, DBX_INJECTION_COMPONENT_DATA, checkNgContentWrapperHasContent, anchorTypeForAnchor, AnchorType, DbxCoreActionModule, isIdleActionState, canTriggerAction } from '@dereekb/dbx-core';
8
+ import { AbstractSubscriptionDirective, safeMarkForCheck, AbstractDbxButtonDirective, provideDbxButton, DbxCoreButtonModule, AbstractTransitionWatcherDirective, AbstractDbxActionValueOnTriggerDirective, safeDetectChanges, DbxInjectionComponentModule, AbstractDbxActionHandlerDirective, provideActionStoreSource, AbstractDbxAnchorDirective, expandClickableAnchorLinkTrees, AbstractTransitionDirective, tapDetectChanges, DbxCoreFilterModule, asSegueRef, isSegueRefActive, DBX_INJECTION_COMPONENT_DATA, checkNgContentWrapperHasContent, anchorTypeForAnchor, AnchorType, DbxCoreActionModule, isIdleActionState, canTriggerAction, onDbxAppAuth, SimpleStorageAccessorFactory } from '@dereekb/dbx-core';
9
9
  import ms from 'ms';
10
10
  import * as i1 from '@angular/common';
11
11
  import { CommonModule } from '@angular/common';
@@ -15,7 +15,7 @@ import * as i3 from '@angular/material/progress-spinner';
15
15
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
16
16
  import * as i2$1 from '@angular/material/icon';
17
17
  import { MatIconModule } from '@angular/material/icon';
18
- import { getValueFromGetter, mergeObjects, splitCommaSeparatedStringToSet, objectHasNoKeys, modifier, combineMaps, addModifiers, removeModifiers, applyBestFit, isMaybeNot, isNotNullOrEmptyString, filterMaybeValues, mapIterable, toReadableError, isDefaultReadableError, build, ServerErrorResponse, UnauthorizedServerErrorResponse, maybeModifierMapToFunction } from '@dereekb/util';
18
+ import { getValueFromGetter, mergeObjects, splitCommaSeparatedStringToSet, objectHasNoKeys, modifier, combineMaps, addModifiers, removeModifiers, applyBestFit, isMaybeNot, isNotNullOrEmptyString, filterMaybeValues, mapIterable, toReadableError, isDefaultReadableError, build, ServerErrorResponse, UnauthorizedServerErrorResponse, maybeModifierMapToFunction, ModelRelationUtility, encodeModelKeyTypePair, useIterableOrValue } from '@dereekb/util';
19
19
  import * as i3$1 from '@angular/material/progress-bar';
20
20
  import { MatProgressBarModule } from '@angular/material/progress-bar';
21
21
  import * as i4$1 from '@angular/material/core';
@@ -34,7 +34,7 @@ import * as i1$6 from '@angular/cdk/overlay';
34
34
  import { GlobalPositionStrategy } from '@angular/cdk/overlay';
35
35
  import * as i3$2 from '@angular/flex-layout/flex';
36
36
  import { FlexLayoutModule } from '@angular/flex-layout';
37
- import { shareReplay as shareReplay$1 } from 'rxjs/operators';
37
+ import { shareReplay as shareReplay$1, mergeMap as mergeMap$1, map as map$1, catchError as catchError$1, distinctUntilChanged as distinctUntilChanged$1, tap as tap$1, filter as filter$1 } from 'rxjs/operators';
38
38
  import * as i3$3 from '@angular/material/list';
39
39
  import { MatListModule } from '@angular/material/list';
40
40
  import * as i4$3 from '@angular/material/tabs';
@@ -60,6 +60,12 @@ import linkifyStr from 'linkify-string';
60
60
  import * as i1$9 from '@angular/platform-browser';
61
61
  import * as i4$4 from '@angular/flex-layout/grid';
62
62
  import * as i2$4 from '@uirouter/core';
63
+ import * as i1$b from '@ngrx/store';
64
+ import { createAction, props, createReducer, on, combineReducers, createFeatureSelector, createSelector, StoreModule } from '@ngrx/store';
65
+ import * as i1$a from '@ngrx/effects';
66
+ import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
67
+ import { unixTimeNumberForNow } from '@dereekb/date';
68
+ import { capitalCase } from 'change-case';
63
69
 
64
70
  class DbxSpacerDirective {
65
71
  }
@@ -7827,6 +7833,301 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
7827
7833
  }]
7828
7834
  }] });
7829
7835
 
7836
+ const dbxModelResetState = createAction('[App/Model] Reset State');
7837
+
7838
+ var actions = /*#__PURE__*/Object.freeze({
7839
+ __proto__: null,
7840
+ dbxModelResetState: dbxModelResetState
7841
+ });
7842
+
7843
+ const emitObjectViewEvent = createAction('[App/Model/Type] Object Viewed', props());
7844
+
7845
+ var model_actions = /*#__PURE__*/Object.freeze({
7846
+ __proto__: null,
7847
+ emitObjectViewEvent: emitObjectViewEvent
7848
+ });
7849
+
7850
+ var index$1 = /*#__PURE__*/Object.freeze({
7851
+ __proto__: null,
7852
+ DbxModelStateActions: actions,
7853
+ DbxModelStateModelActions: model_actions
7854
+ });
7855
+
7856
+ const stateFeatureKey = 'model.module.config';
7857
+ const initialState = {
7858
+ types: {}
7859
+ };
7860
+ const reducer = createReducer(initialState, on(dbxModelResetState, () => initialState));
7861
+
7862
+ const featureKey = 'app.model';
7863
+ function reducers(state, action) {
7864
+ return combineReducers({
7865
+ [stateFeatureKey]: reducer
7866
+ })(state, action);
7867
+ }
7868
+ // MARK: Context
7869
+ const selectDbxModelFeature = createFeatureSelector(featureKey);
7870
+ // MARK: Module Config
7871
+ const selectDbxModelFeatureObjectModuleConfig = createSelector(selectDbxModelFeature, (state) => state[stateFeatureKey]);
7872
+
7873
+ var index = /*#__PURE__*/Object.freeze({
7874
+ __proto__: null,
7875
+ featureKey: featureKey,
7876
+ reducers: reducers,
7877
+ selectDbxModelFeature: selectDbxModelFeature,
7878
+ selectDbxModelFeatureObjectModuleConfig: selectDbxModelFeatureObjectModuleConfig
7879
+ });
7880
+
7881
+ /**
7882
+ * Used for managing DbxModelViewTrackerEvent storage.
7883
+ */
7884
+ class DbxModelViewTrackerStorage {
7885
+ constructor(storageAccessor) {
7886
+ this.storageAccessor = storageAccessor;
7887
+ }
7888
+ get storageKey() {
7889
+ return DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY;
7890
+ }
7891
+ get maxEventsToKeep() {
7892
+ return DbxModelViewTrackerStorage.MAX_EVENTS;
7893
+ }
7894
+ addEvent(event) {
7895
+ const storageKey = this.getStorageKeyForFolder(event.folder);
7896
+ return this._getEventSetForStorageKey(storageKey).pipe(mergeMap$1((set) => {
7897
+ var _a, _b;
7898
+ const nextEvent = {
7899
+ d: (_a = event.d) !== null && _a !== void 0 ? _a : unixTimeNumberForNow(),
7900
+ m: event.m
7901
+ };
7902
+ const e = ModelRelationUtility.removeDuplicates(set.e, (x) => encodeModelKeyTypePair(x.m), [encodeModelKeyTypePair(nextEvent.m)]);
7903
+ e.push(nextEvent);
7904
+ e.sort((a, b) => { var _a, _b; return ((_a = b.d) !== null && _a !== void 0 ? _a : 0) - ((_b = a.d) !== null && _b !== void 0 ? _b : 0); });
7905
+ return this.storageAccessor.set(storageKey, {
7906
+ l: Math.max((_b = set.l) !== null && _b !== void 0 ? _b : 0, nextEvent.d),
7907
+ e: e.slice(0, this.maxEventsToKeep)
7908
+ });
7909
+ }));
7910
+ }
7911
+ getAllEvents(folder) {
7912
+ return this.getEventSet(folder).pipe(map$1((x) => x.e));
7913
+ }
7914
+ getEventSet(folder) {
7915
+ const storageKey = this.getStorageKeyForFolder(folder);
7916
+ return this._getEventSetForStorageKey(storageKey);
7917
+ }
7918
+ _getEventSetForStorageKey(storageKey) {
7919
+ return this.storageAccessor.get(storageKey).pipe(catchError$1((e) => {
7920
+ return of(undefined);
7921
+ }), map$1((result) => result !== null && result !== void 0 ? result : { e: [], l: 0 }));
7922
+ }
7923
+ getStorageKeyForFolder(folder) {
7924
+ const storageKey = `${this.storageKey}_${folder !== null && folder !== void 0 ? folder : 'default'}`;
7925
+ return storageKey;
7926
+ }
7927
+ }
7928
+ DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY = 'dbxModelViewTrackerEvents';
7929
+ DbxModelViewTrackerStorage.MAX_EVENTS = 60;
7930
+ DbxModelViewTrackerStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, deps: [{ token: i1$2.StorageAccessor }], target: i0.ɵɵFactoryTarget.Injectable });
7931
+ DbxModelViewTrackerStorage.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, providedIn: 'root' });
7932
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, decorators: [{
7933
+ type: Injectable,
7934
+ args: [{
7935
+ providedIn: 'root'
7936
+ }]
7937
+ }], ctorParameters: function () { return [{ type: i1$2.StorageAccessor }]; } });
7938
+
7939
+ /**
7940
+ * Service used for tracking/logging different kinds of events on objects.
7941
+ */
7942
+ class DbxModelTrackerService {
7943
+ constructor(viewTrackerStorage) {
7944
+ this.viewTrackerStorage = viewTrackerStorage;
7945
+ }
7946
+ get defaultFolder() {
7947
+ return this._defaultFolder;
7948
+ }
7949
+ set defaultFolder(folder) {
7950
+ this._defaultFolder = folder !== null && folder !== void 0 ? folder : undefined;
7951
+ }
7952
+ // MARK: View
7953
+ trackViewedObject(modelKeyTypeNamePair, folder = this._defaultFolder) {
7954
+ this.viewTrackerStorage
7955
+ .addEvent({
7956
+ m: modelKeyTypeNamePair,
7957
+ folder
7958
+ })
7959
+ .subscribe();
7960
+ }
7961
+ getAllViewEvents(folder = this._defaultFolder) {
7962
+ return this.viewTrackerStorage.getAllEvents(folder);
7963
+ }
7964
+ getViewEventSet(folder = this._defaultFolder) {
7965
+ return this.viewTrackerStorage.getEventSet(folder);
7966
+ }
7967
+ }
7968
+ DbxModelTrackerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, deps: [{ token: DbxModelViewTrackerStorage }], target: i0.ɵɵFactoryTarget.Injectable });
7969
+ DbxModelTrackerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, providedIn: 'root' });
7970
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, decorators: [{
7971
+ type: Injectable,
7972
+ args: [{
7973
+ providedIn: 'root'
7974
+ }]
7975
+ }], ctorParameters: function () { return [{ type: DbxModelViewTrackerStorage }]; } });
7976
+
7977
+ /**
7978
+ * Used to pass Object Store events to the ObjectTracker.
7979
+ */
7980
+ class DbxModelTrackerEffects {
7981
+ constructor(actions$, dbxModelTrackerService) {
7982
+ this.actions$ = actions$;
7983
+ this.dbxModelTrackerService = dbxModelTrackerService;
7984
+ this.trackModelViewed$ = createEffect(() => this.actions$.pipe(ofType(emitObjectViewEvent), distinctUntilChanged$1((a, b) => (a === null || a === void 0 ? void 0 : a.modelKeyTypeNamePair.key) === (b === null || b === void 0 ? void 0 : b.modelKeyTypeNamePair.key) && (a === null || a === void 0 ? void 0 : a.type) === (b === null || b === void 0 ? void 0 : b.type)), tap$1((x) => {
7985
+ this.dbxModelTrackerService.trackViewedObject(x.modelKeyTypeNamePair);
7986
+ })), { dispatch: false });
7987
+ this.changeTrackerFolderToMatchAuth$ = createEffect(() => this.actions$.pipe(ofType(onDbxAppAuth.DbxAppAuthUserActions.setUserIdentifier), map$1((x) => x.id), filter$1((x) => Boolean(x)), distinctUntilChanged$1(), tap$1((accountId) => {
7988
+ this.dbxModelTrackerService.defaultFolder = accountId;
7989
+ })), { dispatch: false });
7990
+ }
7991
+ }
7992
+ DbxModelTrackerEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects, deps: [{ token: i1$a.Actions }, { token: DbxModelTrackerService }], target: i0.ɵɵFactoryTarget.Injectable });
7993
+ DbxModelTrackerEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects });
7994
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects, decorators: [{
7995
+ type: Injectable
7996
+ }], ctorParameters: function () { return [{ type: i1$a.Actions }, { type: DbxModelTrackerService }]; } });
7997
+
7998
+ function appObjectViewTrackerStorageFactory(storageAccessorFactory) {
7999
+ const accessor = storageAccessorFactory.createStorageAccessor({
8000
+ prefix: 'mtvs'
8001
+ });
8002
+ return new DbxModelViewTrackerStorage(accessor);
8003
+ }
8004
+ /**
8005
+ * Contains components related to displaying content related to models identified only by their model key.
8006
+ */
8007
+ class DbxModelInfoModule {
8008
+ static forRoot() {
8009
+ return {
8010
+ ngModule: DbxModelInfoModule,
8011
+ providers: [
8012
+ DbxModelTrackerService,
8013
+ {
8014
+ provide: DbxModelViewTrackerStorage,
8015
+ useFactory: appObjectViewTrackerStorageFactory,
8016
+ deps: [SimpleStorageAccessorFactory]
8017
+ }
8018
+ ]
8019
+ };
8020
+ }
8021
+ }
8022
+ DbxModelInfoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8023
+ DbxModelInfoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
8024
+ //
8025
+ CommonModule,
8026
+ DbxListLayoutModule,
8027
+ DbxInjectionComponentModule, i1$a.EffectsFeatureModule, i1$b.StoreFeatureModule
8028
+ ] });
8029
+ DbxModelInfoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
8030
+ //
8031
+ CommonModule,
8032
+ DbxListLayoutModule,
8033
+ DbxInjectionComponentModule,
8034
+ EffectsModule.forFeature([DbxModelTrackerEffects]),
8035
+ StoreModule.forFeature(featureKey, reducers)
8036
+ ] });
8037
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, decorators: [{
8038
+ type: NgModule,
8039
+ args: [{
8040
+ imports: [
8041
+ //
8042
+ CommonModule,
8043
+ DbxListLayoutModule,
8044
+ DbxInjectionComponentModule,
8045
+ EffectsModule.forFeature([DbxModelTrackerEffects]),
8046
+ StoreModule.forFeature(featureKey, reducers)
8047
+ ],
8048
+ declarations: [],
8049
+ exports: []
8050
+ }]
8051
+ }] });
8052
+
8053
+ class DbxModelObjectStateService {
8054
+ constructor(store) {
8055
+ this.store = store;
8056
+ }
8057
+ /**
8058
+ * Emit a model viewed event.
8059
+ */
8060
+ emitModelViewEvent({ modelKeyTypeNamePair }) {
8061
+ this.store.dispatch(emitObjectViewEvent({ modelKeyTypeNamePair }));
8062
+ }
8063
+ }
8064
+ DbxModelObjectStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, deps: [{ token: i1$b.Store }], target: i0.ɵɵFactoryTarget.Injectable });
8065
+ DbxModelObjectStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, providedIn: 'root' });
8066
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, decorators: [{
8067
+ type: Injectable,
8068
+ args: [{
8069
+ providedIn: 'root'
8070
+ }]
8071
+ }], ctorParameters: function () { return [{ type: i1$b.Store }]; } });
8072
+
8073
+ function allDbxModelViewTrackerEventSetModelKeys(eventSet) {
8074
+ return allDbxModelViewTrackerEventModelKeys(eventSet.e);
8075
+ }
8076
+ function allDbxModelViewTrackerEventModelKeys(events) {
8077
+ return events.map((y) => y.m.key);
8078
+ }
8079
+
8080
+ class DbxModelTypesService {
8081
+ constructor(store) {
8082
+ this.store = store;
8083
+ this._configs = new BehaviorSubject({});
8084
+ // MARK: Accessors
8085
+ this.typesMap$ = this._configs.pipe(map$1((types) => {
8086
+ const typesMap = {};
8087
+ Object.keys(types).forEach((type) => {
8088
+ var _a;
8089
+ const config = types[type];
8090
+ const label = config.label || capitalCase(type);
8091
+ const analyticsName = config.analyticsName || label;
8092
+ typesMap[type] = Object.assign(Object.assign({}, config), { label,
8093
+ analyticsName, icon: (_a = config.icon) !== null && _a !== void 0 ? _a : DbxModelTypesService.DEFAULT_ICON, canSegueToView: Boolean(config.sref) });
8094
+ });
8095
+ return typesMap;
8096
+ }), shareReplay$1(1));
8097
+ this.iconMap$ = this.typesMap$.pipe(map$1((types) => {
8098
+ const iconsMap = {};
8099
+ Object.keys(types).forEach((type) => {
8100
+ iconsMap[type] = types[type].icon;
8101
+ });
8102
+ return iconsMap;
8103
+ }), shareReplay$1(1));
8104
+ }
8105
+ // MARK: Configuration
8106
+ addTypeConfigs(configs) {
8107
+ const types = Object.assign({}, this._configs.value);
8108
+ useIterableOrValue(configs, (config) => {
8109
+ types[config.modelType] = config;
8110
+ });
8111
+ this._configs.next(types);
8112
+ }
8113
+ addTypeConfigsMap(configs) {
8114
+ const newConfig = Object.assign(Object.assign({}, this._configs.value), configs);
8115
+ this._configs.next(newConfig);
8116
+ }
8117
+ iconForType(type) {
8118
+ return this.iconMap$.pipe(map$1((x) => x[type]));
8119
+ }
8120
+ }
8121
+ DbxModelTypesService.DEFAULT_ICON = 'help_outline';
8122
+ DbxModelTypesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, deps: [{ token: i1$b.Store }], target: i0.ɵɵFactoryTarget.Injectable });
8123
+ DbxModelTypesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, providedIn: 'root' });
8124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, decorators: [{
8125
+ type: Injectable,
8126
+ args: [{
8127
+ providedIn: 'root'
8128
+ }]
8129
+ }], ctorParameters: function () { return [{ type: i1$b.Store }]; } });
8130
+
7830
8131
  /**
7831
8132
  * Service used to register widgets.
7832
8133
  */
@@ -8076,5 +8377,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
8076
8377
  * Generated bundle index. Do not edit.
8077
8378
  */
8078
8379
 
8079
- export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxErrorWidgetComponent, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_LIST_ITEM_DEFAULT_DISABLE_FUNCTION, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MAT_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_STYLE_DEFAULT_CONFIG_TOKEN, DBX_VALUE_LIST_VIEW_ITEM, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_DIRECTIVE_TEMPLATE, DEFAULT_DBX_VALUE_LIST_CONFIG_MAP_VALUES, DEFAULT_DBX_VALUE_LIST_GRID_DIRECTIVE_TEMPLATE, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_DIRECTIVE_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_STATIC_LIST_DIRECTIVE_TEMPLATE, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDialogResult, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionModule, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorLinkComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxBarButtonComponent, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBlockLayoutModule, DbxButtonComponent, DbxButtonDisplayType, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerComponent, DbxCardBoxLayoutModule, DbxChipDirective, DbxColorDirective, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxFormDescriptionComponent, DbxHintComponent, DbxIconItemComponent, DbxIconSpacerDirective, DbxInteractionModule, DbxIntroActionSectionComponent, DbxItemLayoutModule, DbxKeypressModule, DbxLabelBlockComponent, DbxLabelComponent, DbxLayoutModule, DbxLinkifyComponent, DbxListComponent, DbxListEmptyContentComponent, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListLayoutModule, DbxListView, DbxListViewWrapper, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxNavbarComponent, DbxNoteComponent, DbxNoticeComponent, DbxOkComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentComponent, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressButtonsModule, DbxPromptBoxComponent, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptConfirmTypes, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorComponent, DbxReadableErrorModule, DbxRouterAnchorListModule, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterListModule, DbxRouterNavbarModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxScreenModule, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListItemViewComponent, DbxSelectionValueListViewComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxSpinnerButtonComponent, DbxStepComponent, DbxStepLayoutModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxSuccessComponent, DbxTextChipsComponent, DbxTextModule, DbxTwoBlocksComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadComponent, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxValueListGridItemViewComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListItemViewComponent, DbxValueListView, DbxValueListViewComponent, DbxWarnComponent, DbxWebAngularRouterModule, DbxWebModule, DbxWebRootModule, DbxWebUIRouterModule, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetModule, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, LoadingComponentState, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, addConfigToValueListItems, catchErrorServerParams, compactModeFromInput, compareScreenMediaWidthTypes, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, dbxColorBackground, dbxValueListItemDecisionFunction, disableRightClickInCdkBackdrop, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, provideDbxListView, provideDbxListViewWrapper, provideDbxPromptConfirm, provideDbxValueListView, provideDbxValueListViewModifier, provideTwoColumnsContext, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier };
8380
+ export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxErrorWidgetComponent, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_LIST_ITEM_DEFAULT_DISABLE_FUNCTION, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MAT_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_STYLE_DEFAULT_CONFIG_TOKEN, DBX_VALUE_LIST_VIEW_ITEM, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_DIRECTIVE_TEMPLATE, DEFAULT_DBX_VALUE_LIST_CONFIG_MAP_VALUES, DEFAULT_DBX_VALUE_LIST_GRID_DIRECTIVE_TEMPLATE, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_DIRECTIVE_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_STATIC_LIST_DIRECTIVE_TEMPLATE, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDialogResult, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionModule, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorLinkComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxBarButtonComponent, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBlockLayoutModule, DbxButtonComponent, DbxButtonDisplayType, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerComponent, DbxCardBoxLayoutModule, DbxChipDirective, DbxColorDirective, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxFormDescriptionComponent, DbxHintComponent, DbxIconItemComponent, DbxIconSpacerDirective, DbxInteractionModule, DbxIntroActionSectionComponent, DbxItemLayoutModule, DbxKeypressModule, DbxLabelBlockComponent, DbxLabelComponent, DbxLayoutModule, DbxLinkifyComponent, DbxListComponent, DbxListEmptyContentComponent, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListLayoutModule, DbxListView, DbxListViewWrapper, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelInfoModule, DbxModelObjectStateService, actions as DbxModelStateActions, model_actions as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNoteComponent, DbxNoticeComponent, DbxOkComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentComponent, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressButtonsModule, DbxPromptBoxComponent, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptConfirmTypes, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorComponent, DbxReadableErrorModule, DbxRouterAnchorListModule, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterListModule, DbxRouterNavbarModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxScreenModule, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListItemViewComponent, DbxSelectionValueListViewComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxSpinnerButtonComponent, DbxStepComponent, DbxStepLayoutModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxSuccessComponent, DbxTextChipsComponent, DbxTextModule, DbxTwoBlocksComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadComponent, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxValueListGridItemViewComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListItemViewComponent, DbxValueListView, DbxValueListViewComponent, DbxWarnComponent, DbxWebAngularRouterModule, DbxWebModule, DbxWebRootModule, DbxWebUIRouterModule, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetModule, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, LoadingComponentState, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, appObjectViewTrackerStorageFactory, catchErrorServerParams, compactModeFromInput, compareScreenMediaWidthTypes, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, dbxColorBackground, dbxValueListItemDecisionFunction, disableRightClickInCdkBackdrop, index as fromDbxModel, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, index$1 as onDbxModel, provideDbxListView, provideDbxListViewWrapper, provideDbxPromptConfirm, provideDbxValueListView, provideDbxValueListViewModifier, provideTwoColumnsContext, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier };
8080
8381
  //# sourceMappingURL=dereekb-dbx-web.mjs.map