@dereekb/dbx-web 9.19.4 → 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.
- package/calendar/package.json +2 -2
- package/esm2020/lib/extension/index.mjs +2 -1
- package/esm2020/lib/extension/model/index.mjs +9 -0
- package/esm2020/lib/extension/model/model.module.mjs +66 -0
- package/esm2020/lib/extension/model/model.state.service.mjs +25 -0
- package/esm2020/lib/extension/model/model.tracker.mjs +7 -0
- package/esm2020/lib/extension/model/model.tracker.service.mjs +42 -0
- package/esm2020/lib/extension/model/model.tracker.view.storage.mjs +65 -0
- package/esm2020/lib/extension/model/model.types.mjs +2 -0
- package/esm2020/lib/extension/model/model.types.service.mjs +68 -0
- package/esm2020/lib/extension/model/state/actions/actions.mjs +3 -0
- package/esm2020/lib/extension/model/state/actions/index.mjs +4 -0
- package/esm2020/lib/extension/model/state/actions/model.actions.mjs +3 -0
- package/esm2020/lib/extension/model/state/effects/tracker.effects.mjs +30 -0
- package/esm2020/lib/extension/model/state/index.mjs +6 -0
- package/esm2020/lib/extension/model/state/reducers/index.mjs +13 -0
- package/esm2020/lib/extension/model/state/reducers/model.module.config.mjs +8 -0
- package/esm2020/lib/extension/model/state/state.mjs +2 -0
- package/fesm2015/dereekb-dbx-web.mjs +305 -4
- package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web.mjs +311 -4
- package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
- package/lib/extension/index.d.ts +1 -0
- package/lib/extension/model/index.d.ts +8 -0
- package/lib/extension/model/model.module.d.ts +19 -0
- package/lib/extension/model/model.state.service.d.ts +14 -0
- package/lib/extension/model/model.tracker.d.ts +18 -0
- package/lib/extension/model/model.tracker.service.d.ts +20 -0
- package/lib/extension/model/model.tracker.view.storage.d.ts +23 -0
- package/lib/extension/model/model.types.d.ts +27 -0
- package/lib/extension/model/model.types.service.d.ts +32 -0
- package/lib/extension/model/state/actions/actions.d.ts +1 -0
- package/lib/extension/model/state/actions/index.d.ts +3 -0
- package/lib/extension/model/state/actions/model.actions.d.ts +8 -0
- package/lib/extension/model/state/effects/tracker.effects.d.ts +16 -0
- package/lib/extension/model/state/index.d.ts +5 -0
- package/lib/extension/model/state/reducers/index.d.ts +15 -0
- package/lib/extension/model/state/reducers/model.module.config.d.ts +5 -0
- package/lib/extension/model/state/state.d.ts +2 -0
- package/mapbox/package.json +3 -3
- package/package.json +4 -3
package/calendar/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/dbx-web/calendar",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.20.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^14.2.0",
|
|
6
6
|
"@angular/core": "^14.2.0",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"rxjs": "^7.5.0",
|
|
9
9
|
"@angular/material": "^14.2.0",
|
|
10
10
|
"angular-calendar": "^0.30.1",
|
|
11
|
-
"@dereekb/dbx-web": "9.
|
|
11
|
+
"@dereekb/dbx-web": "9.20.0"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"tslib": "^2.3.0"
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
+
export * from './model';
|
|
1
2
|
export * from './widget';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldCc7XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './state';
|
|
2
|
+
export * from './model.module';
|
|
3
|
+
export * from './model.state.service';
|
|
4
|
+
export * from './model.tracker.service';
|
|
5
|
+
export * from './model.tracker';
|
|
6
|
+
export * from './model.tracker.view.storage';
|
|
7
|
+
export * from './model.types.service';
|
|
8
|
+
export * from './model.types';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zdGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsLnN0YXRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC50cmFja2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC50cmFja2VyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC50eXBlcy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwudHlwZXMnO1xuIl19
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { DbxInjectionComponentModule, SimpleStorageAccessorFactory } from '@dereekb/dbx-core';
|
|
4
|
+
import { EffectsModule } from '@ngrx/effects';
|
|
5
|
+
import { StoreModule } from '@ngrx/store';
|
|
6
|
+
import { DbxListLayoutModule } from '../../layout/list/list.layout.module';
|
|
7
|
+
import { DbxModelTrackerService } from './model.tracker.service';
|
|
8
|
+
import { DbxModelViewTrackerStorage } from './model.tracker.view.storage';
|
|
9
|
+
import { fromDbxModel } from './state';
|
|
10
|
+
import { DbxModelTrackerEffects } from './state/effects/tracker.effects';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@ngrx/effects";
|
|
13
|
+
import * as i2 from "@ngrx/store";
|
|
14
|
+
export function appObjectViewTrackerStorageFactory(storageAccessorFactory) {
|
|
15
|
+
const accessor = storageAccessorFactory.createStorageAccessor({
|
|
16
|
+
prefix: 'mtvs'
|
|
17
|
+
});
|
|
18
|
+
return new DbxModelViewTrackerStorage(accessor);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Contains components related to displaying content related to models identified only by their model key.
|
|
22
|
+
*/
|
|
23
|
+
export class DbxModelInfoModule {
|
|
24
|
+
static forRoot() {
|
|
25
|
+
return {
|
|
26
|
+
ngModule: DbxModelInfoModule,
|
|
27
|
+
providers: [
|
|
28
|
+
DbxModelTrackerService,
|
|
29
|
+
{
|
|
30
|
+
provide: DbxModelViewTrackerStorage,
|
|
31
|
+
useFactory: appObjectViewTrackerStorageFactory,
|
|
32
|
+
deps: [SimpleStorageAccessorFactory]
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
DbxModelInfoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
39
|
+
DbxModelInfoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
|
|
40
|
+
//
|
|
41
|
+
CommonModule,
|
|
42
|
+
DbxListLayoutModule,
|
|
43
|
+
DbxInjectionComponentModule, i1.EffectsFeatureModule, i2.StoreFeatureModule] });
|
|
44
|
+
DbxModelInfoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
|
|
45
|
+
//
|
|
46
|
+
CommonModule,
|
|
47
|
+
DbxListLayoutModule,
|
|
48
|
+
DbxInjectionComponentModule,
|
|
49
|
+
EffectsModule.forFeature([DbxModelTrackerEffects]),
|
|
50
|
+
StoreModule.forFeature(fromDbxModel.featureKey, fromDbxModel.reducers)] });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelInfoModule, decorators: [{
|
|
52
|
+
type: NgModule,
|
|
53
|
+
args: [{
|
|
54
|
+
imports: [
|
|
55
|
+
//
|
|
56
|
+
CommonModule,
|
|
57
|
+
DbxListLayoutModule,
|
|
58
|
+
DbxInjectionComponentModule,
|
|
59
|
+
EffectsModule.forFeature([DbxModelTrackerEffects]),
|
|
60
|
+
StoreModule.forFeature(fromDbxModel.featureKey, fromDbxModel.reducers)
|
|
61
|
+
],
|
|
62
|
+
declarations: [],
|
|
63
|
+
exports: []
|
|
64
|
+
}]
|
|
65
|
+
}] });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBRXpFLE1BQU0sVUFBVSxrQ0FBa0MsQ0FBQyxzQkFBb0Q7SUFDckcsTUFBTSxRQUFRLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQThCO1FBQ3pGLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7R0FFRztBQWFILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1Qsc0JBQXNCO2dCQUN0QjtvQkFDRSxPQUFPLEVBQUUsMEJBQTBCO29CQUNuQyxVQUFVLEVBQUUsa0NBQWtDO29CQUM5QyxJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztpQkFDckM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOztnSEFiVSxrQkFBa0I7aUhBQWxCLGtCQUFrQjtRQVYzQixFQUFFO1FBQ0YsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQiwyQkFBMkI7aUhBT2xCLGtCQUFrQjtRQVYzQixFQUFFO1FBQ0YsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQiwyQkFBMkI7UUFDM0IsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDbEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUM7NEZBSzdELGtCQUFrQjtrQkFaOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsRUFBRTt3QkFDRixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQzt3QkFDbEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUM7cUJBQ3ZFO29CQUNELFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLCBTaW1wbGVTdG9yYWdlQWNjZXNzb3JGYWN0b3J5IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBEYnhMaXN0TGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vbGF5b3V0L2xpc3QvbGlzdC5sYXlvdXQubW9kdWxlJztcbmltcG9ydCB7IERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldCB9IGZyb20gJy4vbW9kZWwudHJhY2tlcic7XG5pbXBvcnQgeyBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi9tb2RlbC50cmFja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UgfSBmcm9tICcuL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlJztcbmltcG9ydCB7IGZyb21EYnhNb2RlbCB9IGZyb20gJy4vc3RhdGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxUcmFja2VyRWZmZWN0cyB9IGZyb20gJy4vc3RhdGUvZWZmZWN0cy90cmFja2VyLmVmZmVjdHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwT2JqZWN0Vmlld1RyYWNrZXJTdG9yYWdlRmFjdG9yeShzdG9yYWdlQWNjZXNzb3JGYWN0b3J5OiBTaW1wbGVTdG9yYWdlQWNjZXNzb3JGYWN0b3J5KTogRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2Uge1xuICBjb25zdCBhY2Nlc3NvciA9IHN0b3JhZ2VBY2Nlc3NvckZhY3RvcnkuY3JlYXRlU3RvcmFnZUFjY2Vzc29yPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4oe1xuICAgIHByZWZpeDogJ210dnMnXG4gIH0pO1xuXG4gIHJldHVybiBuZXcgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UoYWNjZXNzb3IpO1xufVxuXG4vKipcbiAqIENvbnRhaW5zIGNvbXBvbmVudHMgcmVsYXRlZCB0byBkaXNwbGF5aW5nIGNvbnRlbnQgcmVsYXRlZCB0byBtb2RlbHMgaWRlbnRpZmllZCBvbmx5IGJ5IHRoZWlyIG1vZGVsIGtleS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC8vXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieExpc3RMYXlvdXRNb2R1bGUsXG4gICAgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRGJ4TW9kZWxUcmFja2VyRWZmZWN0c10pLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoZnJvbURieE1vZGVsLmZlYXR1cmVLZXksIGZyb21EYnhNb2RlbC5yZWR1Y2VycylcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgZXhwb3J0czogW11cbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxJbmZvTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhNb2RlbEluZm9Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieE1vZGVsSW5mb01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UsXG4gICAgICAgICAgdXNlRmFjdG9yeTogYXBwT2JqZWN0Vmlld1RyYWNrZXJTdG9yYWdlRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbU2ltcGxlU3RvcmFnZUFjY2Vzc29yRmFjdG9yeV1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Store } from '@ngrx/store';
|
|
3
|
+
import { onDbxModel } from './state';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@ngrx/store";
|
|
6
|
+
export class DbxModelObjectStateService {
|
|
7
|
+
constructor(store) {
|
|
8
|
+
this.store = store;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Emit a model viewed event.
|
|
12
|
+
*/
|
|
13
|
+
emitModelViewEvent({ modelKeyTypeNamePair }) {
|
|
14
|
+
this.store.dispatch(onDbxModel.DbxModelStateModelActions.emitObjectViewEvent({ modelKeyTypeNamePair }));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
DbxModelObjectStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
18
|
+
DbxModelObjectStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, providedIn: 'root' });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelObjectStateService, decorators: [{
|
|
20
|
+
type: Injectable,
|
|
21
|
+
args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvbW9kZWwuc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBT3JDLE1BQU0sT0FBTywwQkFBMEI7SUFDckMsWUFBcUIsS0FBK0I7UUFBL0IsVUFBSyxHQUFMLEtBQUssQ0FBMEI7SUFBRyxDQUFDO0lBRXhEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsRUFBRSxvQkFBb0IsRUFBOEI7UUFDckUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLHlCQUF5QixDQUFDLG1CQUFtQixDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUcsQ0FBQzs7d0hBUlUsMEJBQTBCOzRIQUExQiwwQkFBMEIsY0FGekIsTUFBTTs0RkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBvbkRieE1vZGVsIH0gZnJvbSAnLi9zdGF0ZSc7XG5pbXBvcnQgeyBEYnhNb2RlbE9iamVjdFZpZXdlZFBhcmFtcyB9IGZyb20gJy4vc3RhdGUvYWN0aW9ucy9tb2RlbC5hY3Rpb25zJztcbmltcG9ydCB7IERieE1vZGVsRnVsbFN0YXRlIH0gZnJvbSAnLi9zdGF0ZS9zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERieE1vZGVsT2JqZWN0U3RhdGVTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocmVhZG9ubHkgc3RvcmU6IFN0b3JlPERieE1vZGVsRnVsbFN0YXRlPikge31cblxuICAvKipcbiAgICogRW1pdCBhIG1vZGVsIHZpZXdlZCBldmVudC5cbiAgICovXG4gIGVtaXRNb2RlbFZpZXdFdmVudCh7IG1vZGVsS2V5VHlwZU5hbWVQYWlyIH06IERieE1vZGVsT2JqZWN0Vmlld2VkUGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChvbkRieE1vZGVsLkRieE1vZGVsU3RhdGVNb2RlbEFjdGlvbnMuZW1pdE9iamVjdFZpZXdFdmVudCh7IG1vZGVsS2V5VHlwZU5hbWVQYWlyIH0pKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export function allDbxModelViewTrackerEventSetModelKeys(eventSet) {
|
|
2
|
+
return allDbxModelViewTrackerEventModelKeys(eventSet.e);
|
|
3
|
+
}
|
|
4
|
+
export function allDbxModelViewTrackerEventModelKeys(events) {
|
|
5
|
+
return events.map((y) => y.m.key);
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvbW9kZWwudHJhY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTSxVQUFVLHVDQUF1QyxDQUFDLFFBQXFDO0lBQzNGLE9BQU8sb0NBQW9DLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzFELENBQUM7QUFFRCxNQUFNLFVBQVUsb0NBQW9DLENBQUMsTUFBa0M7SUFDckYsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbml4RGF0ZVRpbWVOdW1iZXIsIE1vZGVsS2V5VHlwZVBhaXIsIE1heWJlLCBNb2RlbEtleSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieE1vZGVsVmlld1RyYWNrZXJFdmVudCB7XG4gIGQ/OiBVbml4RGF0ZVRpbWVOdW1iZXI7XG4gIG06IE1vZGVsS2V5VHlwZVBhaXI7XG4gIGZvbGRlcj86IE1heWJlPHN0cmluZz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0IHtcbiAgLyoqXG4gICAqIFRoZSBsYXRlc3QgZGF0ZS90aW1lIG51bWJlci5cbiAgICovXG4gIGw6IFVuaXhEYXRlVGltZU51bWJlcjtcbiAgLyoqXG4gICAqIExpc3Qgb2YgZXZlbnRzLlxuICAgKi9cbiAgZTogRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50W107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhbGxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXRNb2RlbEtleXMoZXZlbnRTZXQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldCk6IE1vZGVsS2V5W10ge1xuICByZXR1cm4gYWxsRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50TW9kZWxLZXlzKGV2ZW50U2V0LmUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWxsRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50TW9kZWxLZXlzKGV2ZW50czogRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50W10pOiBNb2RlbEtleVtdIHtcbiAgcmV0dXJuIGV2ZW50cy5tYXAoKHkpID0+IHkubS5rZXkpO1xufVxuIl19
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { DbxModelViewTrackerStorage } from './model.tracker.view.storage';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./model.tracker.view.storage";
|
|
5
|
+
/**
|
|
6
|
+
* Service used for tracking/logging different kinds of events on objects.
|
|
7
|
+
*/
|
|
8
|
+
export class DbxModelTrackerService {
|
|
9
|
+
constructor(viewTrackerStorage) {
|
|
10
|
+
this.viewTrackerStorage = viewTrackerStorage;
|
|
11
|
+
}
|
|
12
|
+
get defaultFolder() {
|
|
13
|
+
return this._defaultFolder;
|
|
14
|
+
}
|
|
15
|
+
set defaultFolder(folder) {
|
|
16
|
+
this._defaultFolder = folder ?? undefined;
|
|
17
|
+
}
|
|
18
|
+
// MARK: View
|
|
19
|
+
trackViewedObject(modelKeyTypeNamePair, folder = this._defaultFolder) {
|
|
20
|
+
this.viewTrackerStorage
|
|
21
|
+
.addEvent({
|
|
22
|
+
m: modelKeyTypeNamePair,
|
|
23
|
+
folder
|
|
24
|
+
})
|
|
25
|
+
.subscribe();
|
|
26
|
+
}
|
|
27
|
+
getAllViewEvents(folder = this._defaultFolder) {
|
|
28
|
+
return this.viewTrackerStorage.getAllEvents(folder);
|
|
29
|
+
}
|
|
30
|
+
getViewEventSet(folder = this._defaultFolder) {
|
|
31
|
+
return this.viewTrackerStorage.getEventSet(folder);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
DbxModelTrackerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, deps: [{ token: i1.DbxModelViewTrackerStorage }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
35
|
+
DbxModelTrackerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, providedIn: 'root' });
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerService, decorators: [{
|
|
37
|
+
type: Injectable,
|
|
38
|
+
args: [{
|
|
39
|
+
providedIn: 'root'
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: function () { return [{ type: i1.DbxModelViewTrackerStorage }]; } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC50cmFja2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBRTFFOztHQUVHO0FBSUgsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUE2QixrQkFBOEM7UUFBOUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUE0QjtJQUFHLENBQUM7SUFFL0UsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxNQUFxQjtRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sSUFBSSxTQUFTLENBQUM7SUFDNUMsQ0FBQztJQUVELGFBQWE7SUFDYixpQkFBaUIsQ0FBQyxvQkFBMEMsRUFBRSxTQUF3QixJQUFJLENBQUMsY0FBYztRQUN2RyxJQUFJLENBQUMsa0JBQWtCO2FBQ3BCLFFBQVEsQ0FBQztZQUNSLENBQUMsRUFBRSxvQkFBb0I7WUFDdkIsTUFBTTtTQUNQLENBQUM7YUFDRCxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBd0IsSUFBSSxDQUFDLGNBQWM7UUFDMUQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxlQUFlLENBQUMsU0FBd0IsSUFBSSxDQUFDLGNBQWM7UUFDekQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7O29IQTdCVSxzQkFBc0I7d0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXliZSwgTW9kZWxLZXlUeXBlTmFtZVBhaXIgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCwgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0IH0gZnJvbSAnLi9tb2RlbC50cmFja2VyJztcbmltcG9ydCB7IERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlIH0gZnJvbSAnLi9tb2RlbC50cmFja2VyLnZpZXcuc3RvcmFnZSc7XG5cbi8qKlxuICogU2VydmljZSB1c2VkIGZvciB0cmFja2luZy9sb2dnaW5nIGRpZmZlcmVudCBraW5kcyBvZiBldmVudHMgb24gb2JqZWN0cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxUcmFja2VyU2VydmljZSB7XG4gIHByaXZhdGUgX2RlZmF1bHRGb2xkZXI6IE1heWJlPHN0cmluZz47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB2aWV3VHJhY2tlclN0b3JhZ2U6IERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlKSB7fVxuXG4gIGdldCBkZWZhdWx0Rm9sZGVyKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9kZWZhdWx0Rm9sZGVyO1xuICB9XG5cbiAgc2V0IGRlZmF1bHRGb2xkZXIoZm9sZGVyOiBNYXliZTxzdHJpbmc+KSB7XG4gICAgdGhpcy5fZGVmYXVsdEZvbGRlciA9IGZvbGRlciA/PyB1bmRlZmluZWQ7XG4gIH1cblxuICAvLyBNQVJLOiBWaWV3XG4gIHRyYWNrVmlld2VkT2JqZWN0KG1vZGVsS2V5VHlwZU5hbWVQYWlyOiBNb2RlbEtleVR5cGVOYW1lUGFpciwgZm9sZGVyOiBNYXliZTxzdHJpbmc+ID0gdGhpcy5fZGVmYXVsdEZvbGRlcik6IHZvaWQge1xuICAgIHRoaXMudmlld1RyYWNrZXJTdG9yYWdlXG4gICAgICAuYWRkRXZlbnQoe1xuICAgICAgICBtOiBtb2RlbEtleVR5cGVOYW1lUGFpcixcbiAgICAgICAgZm9sZGVyXG4gICAgICB9KVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZ2V0QWxsVmlld0V2ZW50cyhmb2xkZXI6IE1heWJlPHN0cmluZz4gPSB0aGlzLl9kZWZhdWx0Rm9sZGVyKTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLnZpZXdUcmFja2VyU3RvcmFnZS5nZXRBbGxFdmVudHMoZm9sZGVyKTtcbiAgfVxuXG4gIGdldFZpZXdFdmVudFNldChmb2xkZXI6IE1heWJlPHN0cmluZz4gPSB0aGlzLl9kZWZhdWx0Rm9sZGVyKTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+IHtcbiAgICByZXR1cm4gdGhpcy52aWV3VHJhY2tlclN0b3JhZ2UuZ2V0RXZlbnRTZXQoZm9sZGVyKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { unixTimeNumberForNow } from '@dereekb/date';
|
|
3
|
+
import { StorageAccessor } from '@dereekb/dbx-core';
|
|
4
|
+
import { encodeModelKeyTypePair, ModelRelationUtility } from '@dereekb/util';
|
|
5
|
+
import { of } from 'rxjs';
|
|
6
|
+
import { map, mergeMap, catchError } from 'rxjs/operators';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@dereekb/dbx-core";
|
|
9
|
+
/**
|
|
10
|
+
* Used for managing DbxModelViewTrackerEvent storage.
|
|
11
|
+
*/
|
|
12
|
+
export class DbxModelViewTrackerStorage {
|
|
13
|
+
constructor(storageAccessor) {
|
|
14
|
+
this.storageAccessor = storageAccessor;
|
|
15
|
+
}
|
|
16
|
+
get storageKey() {
|
|
17
|
+
return DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY;
|
|
18
|
+
}
|
|
19
|
+
get maxEventsToKeep() {
|
|
20
|
+
return DbxModelViewTrackerStorage.MAX_EVENTS;
|
|
21
|
+
}
|
|
22
|
+
addEvent(event) {
|
|
23
|
+
const storageKey = this.getStorageKeyForFolder(event.folder);
|
|
24
|
+
return this._getEventSetForStorageKey(storageKey).pipe(mergeMap((set) => {
|
|
25
|
+
const nextEvent = {
|
|
26
|
+
d: event.d ?? unixTimeNumberForNow(),
|
|
27
|
+
m: event.m
|
|
28
|
+
};
|
|
29
|
+
const e = ModelRelationUtility.removeDuplicates(set.e, (x) => encodeModelKeyTypePair(x.m), [encodeModelKeyTypePair(nextEvent.m)]);
|
|
30
|
+
e.push(nextEvent);
|
|
31
|
+
e.sort((a, b) => (b.d ?? 0) - (a.d ?? 0));
|
|
32
|
+
return this.storageAccessor.set(storageKey, {
|
|
33
|
+
l: Math.max(set.l ?? 0, nextEvent.d),
|
|
34
|
+
e: e.slice(0, this.maxEventsToKeep)
|
|
35
|
+
});
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
getAllEvents(folder) {
|
|
39
|
+
return this.getEventSet(folder).pipe(map((x) => x.e));
|
|
40
|
+
}
|
|
41
|
+
getEventSet(folder) {
|
|
42
|
+
const storageKey = this.getStorageKeyForFolder(folder);
|
|
43
|
+
return this._getEventSetForStorageKey(storageKey);
|
|
44
|
+
}
|
|
45
|
+
_getEventSetForStorageKey(storageKey) {
|
|
46
|
+
return this.storageAccessor.get(storageKey).pipe(catchError((e) => {
|
|
47
|
+
return of(undefined);
|
|
48
|
+
}), map((result) => result ?? { e: [], l: 0 }));
|
|
49
|
+
}
|
|
50
|
+
getStorageKeyForFolder(folder) {
|
|
51
|
+
const storageKey = `${this.storageKey}_${folder ?? 'default'}`;
|
|
52
|
+
return storageKey;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY = 'dbxModelViewTrackerEvents';
|
|
56
|
+
DbxModelViewTrackerStorage.MAX_EVENTS = 60;
|
|
57
|
+
DbxModelViewTrackerStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, deps: [{ token: i1.StorageAccessor }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
|
+
DbxModelViewTrackerStorage.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, providedIn: 'root' });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, decorators: [{
|
|
60
|
+
type: Injectable,
|
|
61
|
+
args: [{
|
|
62
|
+
providedIn: 'root'
|
|
63
|
+
}]
|
|
64
|
+
}], ctorParameters: function () { return [{ type: i1.StorageAccessor }]; } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQXdDLHNCQUFzQixFQUFFLG9CQUFvQixFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQzFILE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUczRDs7R0FFRztBQUlILE1BQU0sT0FBTywwQkFBMEI7SUFJckMsWUFBcUIsZUFBNkQ7UUFBN0Qsb0JBQWUsR0FBZixlQUFlLENBQThDO0lBQUcsQ0FBQztJQUV0RixJQUFjLFVBQVU7UUFDdEIsT0FBTywwQkFBMEIsQ0FBQyxvQ0FBb0MsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQTBCLENBQUMsVUFBVSxDQUFDO0lBQy9DLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBK0I7UUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQ3BELFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2YsTUFBTSxTQUFTLEdBQUc7Z0JBQ2hCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxJQUFJLG9CQUFvQixFQUFFO2dCQUNwQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDWCxDQUFDO1lBRUYsTUFBTSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFMUMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUU7Z0JBQzFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDO2FBQ3BDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQXNCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQXNCO1FBQ2hDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2RCxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU8seUJBQXlCLENBQUMsVUFBa0I7UUFDbEQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQzlDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUVELHNCQUFzQixDQUFDLE1BQXNCO1FBQzNDLE1BQU0sVUFBVSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxNQUFNLElBQUksU0FBUyxFQUFFLENBQUM7UUFDL0QsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQzs7QUF2RGUsK0RBQW9DLEdBQUcsMkJBQTJCLENBQUM7QUFDbkUscUNBQVUsR0FBRyxFQUFFLENBQUM7d0hBRnJCLDBCQUEwQjs0SEFBMUIsMEJBQTBCLGNBRnpCLE1BQU07NEZBRVAsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHVuaXhUaW1lTnVtYmVyRm9yTm93IH0gZnJvbSAnQGRlcmVla2IvZGF0ZSc7XG5pbXBvcnQgeyBTdG9yYWdlQWNjZXNzb3IgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBVbml4RGF0ZVRpbWVOdW1iZXIsIE1vZGVsS2V5VHlwZVBhaXIsIGVuY29kZU1vZGVsS2V5VHlwZVBhaXIsIE1vZGVsUmVsYXRpb25VdGlsaXR5LCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgbWVyZ2VNYXAsIGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQsIERieE1vZGVsVmlld1RyYWNrZXJFdmVudCB9IGZyb20gJy4vbW9kZWwudHJhY2tlcic7XG5cbi8qKlxuICogVXNlZCBmb3IgbWFuYWdpbmcgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50IHN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlIHtcbiAgc3RhdGljIHJlYWRvbmx5IE9CSkVDVF9WSUVXX1RSQUNLRVJfU1RPUkFHRV9MSVNUX0tFWSA9ICdkYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRzJztcbiAgc3RhdGljIHJlYWRvbmx5IE1BWF9FVkVOVFMgPSA2MDtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBzdG9yYWdlQWNjZXNzb3I6IFN0b3JhZ2VBY2Nlc3NvcjxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+KSB7fVxuXG4gIHByb3RlY3RlZCBnZXQgc3RvcmFnZUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5PQkpFQ1RfVklFV19UUkFDS0VSX1NUT1JBR0VfTElTVF9LRVk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IG1heEV2ZW50c1RvS2VlcCgpOiBudW1iZXIge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5NQVhfRVZFTlRTO1xuICB9XG5cbiAgYWRkRXZlbnQoZXZlbnQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSB0aGlzLmdldFN0b3JhZ2VLZXlGb3JGb2xkZXIoZXZlbnQuZm9sZGVyKTtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RXZlbnRTZXRGb3JTdG9yYWdlS2V5KHN0b3JhZ2VLZXkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoc2V0KSA9PiB7XG4gICAgICAgIGNvbnN0IG5leHRFdmVudCA9IHtcbiAgICAgICAgICBkOiBldmVudC5kID8/IHVuaXhUaW1lTnVtYmVyRm9yTm93KCksXG4gICAgICAgICAgbTogZXZlbnQubVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGUgPSBNb2RlbFJlbGF0aW9uVXRpbGl0eS5yZW1vdmVEdXBsaWNhdGVzKHNldC5lLCAoeCkgPT4gZW5jb2RlTW9kZWxLZXlUeXBlUGFpcih4Lm0pLCBbZW5jb2RlTW9kZWxLZXlUeXBlUGFpcihuZXh0RXZlbnQubSldKTtcbiAgICAgICAgZS5wdXNoKG5leHRFdmVudCk7XG4gICAgICAgIGUuc29ydCgoYSwgYikgPT4gKGIuZCA/PyAwKSAtIChhLmQgPz8gMCkpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2VBY2Nlc3Nvci5zZXQoc3RvcmFnZUtleSwge1xuICAgICAgICAgIGw6IE1hdGgubWF4KHNldC5sID8/IDAsIG5leHRFdmVudC5kKSxcbiAgICAgICAgICBlOiBlLnNsaWNlKDAsIHRoaXMubWF4RXZlbnRzVG9LZWVwKVxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFsbEV2ZW50cyhmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmdldEV2ZW50U2V0KGZvbGRlcikucGlwZShtYXAoKHgpID0+IHguZSkpO1xuICB9XG5cbiAgZ2V0RXZlbnRTZXQoZm9sZGVyPzogTWF5YmU8c3RyaW5nPik6IE9ic2VydmFibGU8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0PiB7XG4gICAgY29uc3Qgc3RvcmFnZUtleSA9IHRoaXMuZ2V0U3RvcmFnZUtleUZvckZvbGRlcihmb2xkZXIpO1xuICAgIHJldHVybiB0aGlzLl9nZXRFdmVudFNldEZvclN0b3JhZ2VLZXkoc3RvcmFnZUtleSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFdmVudFNldEZvclN0b3JhZ2VLZXkoc3RvcmFnZUtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlQWNjZXNzb3IuZ2V0KHN0b3JhZ2VLZXkpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgfSksXG4gICAgICBtYXAoKHJlc3VsdCkgPT4gcmVzdWx0ID8/IHsgZTogW10sIGw6IDAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U3RvcmFnZUtleUZvckZvbGRlcihmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogc3RyaW5nIHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gYCR7dGhpcy5zdG9yYWdlS2V5fV8ke2ZvbGRlciA/PyAnZGVmYXVsdCd9YDtcbiAgICByZXR1cm4gc3RvcmFnZUtleTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWd1ZVJlZiB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IEZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dCwgTW9kZWxLZXksIE1vZGVsVHlwZVN0cmluZyB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieE1vZGVsVHlwZUNvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICogUG9wdXAgbGFiZWwgdGhhdCBjYW4gYmUgdXNlZCBmb3IgdGhlc2UgdHlwZXMuXG4gICAqL1xuICBsYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIE5hbWUgdXNlZCBpbiBhbmFseXRpY3MgZXZlbnRzLiBJZiBub3QgcHJvdmlkZWQsIGxhYmVsIGlzIHVzZWQgYnkgZGVmYXVsdC5cbiAgICovXG4gIGFuYWx5dGljc05hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNb2RlbCB0eXBlIHRoaXMgY29uZmlndXJhdGlvbiBpcyBmb3IuXG4gICAqL1xuICBtb2RlbFR5cGU6IE1vZGVsVHlwZVN0cmluZztcbiAgLyoqXG4gICAqIFNyZWYgZmFjdG9yeSBmb3Igdmlld2luZyBvYmplY3RzIG9mIHRoaXMgdHlwZS5cbiAgICovXG4gIHNyZWY/OiBGYWN0b3J5V2l0aFJlcXVpcmVkSW5wdXQ8U2VndWVSZWYsIE1vZGVsS2V5PjtcbiAgLyoqXG4gICAqIEljb24gdXNlZCB0byByZXByZXNlbnQgdGhpcyBtb2RlbC5cbiAgICovXG4gIGljb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4TW9kZWxUeXBlQ29uZmlndXJhdGlvbk1hcCB7XG4gIFtrZXk6IHN0cmluZ106IERieE1vZGVsVHlwZUNvbmZpZ3VyYXRpb247XG59XG4iXX0=
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Store } from '@ngrx/store';
|
|
3
|
+
import { map, shareReplay } from 'rxjs/operators';
|
|
4
|
+
import { capitalCase } from 'change-case';
|
|
5
|
+
import { BehaviorSubject } from 'rxjs';
|
|
6
|
+
import { useIterableOrValue } from '@dereekb/util';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@ngrx/store";
|
|
9
|
+
export class DbxModelTypesService {
|
|
10
|
+
constructor(store) {
|
|
11
|
+
this.store = store;
|
|
12
|
+
this._configs = new BehaviorSubject({});
|
|
13
|
+
// MARK: Accessors
|
|
14
|
+
this.typesMap$ = this._configs.pipe(map((types) => {
|
|
15
|
+
const typesMap = {};
|
|
16
|
+
Object.keys(types).forEach((type) => {
|
|
17
|
+
const config = types[type];
|
|
18
|
+
const label = config.label || capitalCase(type);
|
|
19
|
+
const analyticsName = config.analyticsName || label;
|
|
20
|
+
typesMap[type] = {
|
|
21
|
+
...config,
|
|
22
|
+
label,
|
|
23
|
+
analyticsName,
|
|
24
|
+
icon: config.icon ?? DbxModelTypesService.DEFAULT_ICON,
|
|
25
|
+
canSegueToView: Boolean(config.sref)
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
return typesMap;
|
|
29
|
+
}), shareReplay(1));
|
|
30
|
+
this.iconMap$ = this.typesMap$.pipe(map((types) => {
|
|
31
|
+
const iconsMap = {};
|
|
32
|
+
Object.keys(types).forEach((type) => {
|
|
33
|
+
iconsMap[type] = types[type].icon;
|
|
34
|
+
});
|
|
35
|
+
return iconsMap;
|
|
36
|
+
}), shareReplay(1));
|
|
37
|
+
}
|
|
38
|
+
// MARK: Configuration
|
|
39
|
+
addTypeConfigs(configs) {
|
|
40
|
+
const types = {
|
|
41
|
+
...this._configs.value
|
|
42
|
+
};
|
|
43
|
+
useIterableOrValue(configs, (config) => {
|
|
44
|
+
types[config.modelType] = config;
|
|
45
|
+
});
|
|
46
|
+
this._configs.next(types);
|
|
47
|
+
}
|
|
48
|
+
addTypeConfigsMap(configs) {
|
|
49
|
+
const newConfig = {
|
|
50
|
+
...this._configs.value,
|
|
51
|
+
...configs
|
|
52
|
+
};
|
|
53
|
+
this._configs.next(newConfig);
|
|
54
|
+
}
|
|
55
|
+
iconForType(type) {
|
|
56
|
+
return this.iconMap$.pipe(map((x) => x[type]));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
DbxModelTypesService.DEFAULT_ICON = 'help_outline';
|
|
60
|
+
DbxModelTypesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
61
|
+
DbxModelTypesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, providedIn: 'root' });
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTypesService, decorators: [{
|
|
63
|
+
type: Injectable,
|
|
64
|
+
args: [{
|
|
65
|
+
providedIn: 'root'
|
|
66
|
+
}]
|
|
67
|
+
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHlwZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvbW9kZWwudHlwZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBYyxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUEyQyxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBdUI1RixNQUFNLE9BQU8sb0JBQW9CO0lBSy9CLFlBQXFCLEtBQStCO1FBQS9CLFVBQUssR0FBTCxLQUFLLENBQTBCO1FBSjVDLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBK0IsRUFBRSxDQUFDLENBQUM7UUE0QnpFLGtCQUFrQjtRQUNULGNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDWixNQUFNLFFBQVEsR0FBa0MsRUFBRSxDQUFDO1lBRW5ELE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2xDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFM0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2hELE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDO2dCQUVwRCxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ2YsR0FBRyxNQUFNO29CQUNULEtBQUs7b0JBQ0wsYUFBYTtvQkFDYixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxvQkFBb0IsQ0FBQyxZQUFZO29CQUN0RCxjQUFjLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7aUJBQ2hDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztZQUVILE9BQU8sUUFBK0IsQ0FBQztRQUN6QyxDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGFBQVEsR0FBaUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ25FLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ1osTUFBTSxRQUFRLEdBQStCLEVBQUUsQ0FBQztZQUVoRCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNsQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNwQyxDQUFDLENBQUMsQ0FBQztZQUVILE9BQU8sUUFBNEIsQ0FBQztRQUN0QyxDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQTVEcUQsQ0FBQztJQUV4RCxzQkFBc0I7SUFDdEIsY0FBYyxDQUFDLE9BQWdEO1FBQzdELE1BQU0sS0FBSyxHQUFHO1lBQ1osR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUs7U0FDdkIsQ0FBQztRQUVGLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELGlCQUFpQixDQUFDLE9BQXFDO1FBQ3JELE1BQU0sU0FBUyxHQUFpQztZQUM5QyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSztZQUN0QixHQUFHLE9BQU87U0FDWCxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQXdDRCxXQUFXLENBQUMsSUFBcUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQzs7QUFsRWUsaUNBQVksR0FBRyxjQUFjLENBQUM7a0hBSG5DLG9CQUFvQjtzSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07NEZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNhcGl0YWxDYXNlIH0gZnJvbSAnY2hhbmdlLWNhc2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcnJheU9yVmFsdWUsIEJ1aWxkaW5nLCBNb2RlbFR5cGVTdHJpbmcsIHVzZUl0ZXJhYmxlT3JWYWx1ZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4TW9kZWxGdWxsU3RhdGUsIGZyb21EYnhNb2RlbCB9IGZyb20gJy4vc3RhdGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxUeXBlQ29uZmlndXJhdGlvbiwgRGJ4TW9kZWxUeXBlQ29uZmlndXJhdGlvbk1hcCB9IGZyb20gJy4vbW9kZWwudHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieE1vZGVsVHlwZUluZm8gZXh0ZW5kcyBEYnhNb2RlbFR5cGVDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IGEgcmVzcG9uc2UgaXMgZXhwZWN0ZWQgZm9yIHNlZ3Vlc1xuICAgKiB0byBhIHZpZXcgZm9yIG9iamVjdHMgb2YgdGhpcyB0eXBlLlxuICAgKi9cbiAgY2FuU2VndWVUb1ZpZXc6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4TW9kZWxUeXBlc01hcDxJIGV4dGVuZHMgRGJ4TW9kZWxUeXBlSW5mbz4ge1xuICByZWFkb25seSBbdHlwZTogc3RyaW5nXTogSTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhNb2RlbEljb25zTWFwIHtcbiAgcmVhZG9ubHkgW3R5cGU6IHN0cmluZ106IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxUeXBlc1NlcnZpY2U8SSBleHRlbmRzIERieE1vZGVsVHlwZUluZm8gPSBEYnhNb2RlbFR5cGVJbmZvPiB7XG4gIHByaXZhdGUgX2NvbmZpZ3MgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERieE1vZGVsVHlwZUNvbmZpZ3VyYXRpb25NYXA+KHt9KTtcblxuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9JQ09OID0gJ2hlbHBfb3V0bGluZSc7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgc3RvcmU6IFN0b3JlPERieE1vZGVsRnVsbFN0YXRlPikge31cblxuICAvLyBNQVJLOiBDb25maWd1cmF0aW9uXG4gIGFkZFR5cGVDb25maWdzKGNvbmZpZ3M6IEFycmF5T3JWYWx1ZTxEYnhNb2RlbFR5cGVDb25maWd1cmF0aW9uPikge1xuICAgIGNvbnN0IHR5cGVzID0ge1xuICAgICAgLi4udGhpcy5fY29uZmlncy52YWx1ZVxuICAgIH07XG5cbiAgICB1c2VJdGVyYWJsZU9yVmFsdWUoY29uZmlncywgKGNvbmZpZykgPT4ge1xuICAgICAgdHlwZXNbY29uZmlnLm1vZGVsVHlwZV0gPSBjb25maWc7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9jb25maWdzLm5leHQodHlwZXMpO1xuICB9XG5cbiAgYWRkVHlwZUNvbmZpZ3NNYXAoY29uZmlnczogRGJ4TW9kZWxUeXBlQ29uZmlndXJhdGlvbk1hcCkge1xuICAgIGNvbnN0IG5ld0NvbmZpZzogRGJ4TW9kZWxUeXBlQ29uZmlndXJhdGlvbk1hcCA9IHtcbiAgICAgIC4uLnRoaXMuX2NvbmZpZ3MudmFsdWUsXG4gICAgICAuLi5jb25maWdzXG4gICAgfTtcblxuICAgIHRoaXMuX2NvbmZpZ3MubmV4dChuZXdDb25maWcpO1xuICB9XG5cbiAgLy8gTUFSSzogQWNjZXNzb3JzXG4gIHJlYWRvbmx5IHR5cGVzTWFwJCA9IHRoaXMuX2NvbmZpZ3MucGlwZShcbiAgICBtYXAoKHR5cGVzKSA9PiB7XG4gICAgICBjb25zdCB0eXBlc01hcDogQnVpbGRpbmc8RGJ4TW9kZWxUeXBlc01hcDxJPj4gPSB7fTtcblxuICAgICAgT2JqZWN0LmtleXModHlwZXMpLmZvckVhY2goKHR5cGUpID0+IHtcbiAgICAgICAgY29uc3QgY29uZmlnID0gdHlwZXNbdHlwZV07XG5cbiAgICAgICAgY29uc3QgbGFiZWwgPSBjb25maWcubGFiZWwgfHwgY2FwaXRhbENhc2UodHlwZSk7XG4gICAgICAgIGNvbnN0IGFuYWx5dGljc05hbWUgPSBjb25maWcuYW5hbHl0aWNzTmFtZSB8fCBsYWJlbDtcblxuICAgICAgICB0eXBlc01hcFt0eXBlXSA9IHtcbiAgICAgICAgICAuLi5jb25maWcsXG4gICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgYW5hbHl0aWNzTmFtZSxcbiAgICAgICAgICBpY29uOiBjb25maWcuaWNvbiA/PyBEYnhNb2RlbFR5cGVzU2VydmljZS5ERUZBVUxUX0lDT04sXG4gICAgICAgICAgY2FuU2VndWVUb1ZpZXc6IEJvb2xlYW4oY29uZmlnLnNyZWYpXG4gICAgICAgIH0gYXMgSTtcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gdHlwZXNNYXAgYXMgRGJ4TW9kZWxUeXBlc01hcDxJPjtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGljb25NYXAkOiBPYnNlcnZhYmxlPERieE1vZGVsSWNvbnNNYXA+ID0gdGhpcy50eXBlc01hcCQucGlwZShcbiAgICBtYXAoKHR5cGVzKSA9PiB7XG4gICAgICBjb25zdCBpY29uc01hcDogQnVpbGRpbmc8RGJ4TW9kZWxJY29uc01hcD4gPSB7fTtcblxuICAgICAgT2JqZWN0LmtleXModHlwZXMpLmZvckVhY2goKHR5cGUpID0+IHtcbiAgICAgICAgaWNvbnNNYXBbdHlwZV0gPSB0eXBlc1t0eXBlXS5pY29uO1xuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBpY29uc01hcCBhcyBEYnhNb2RlbEljb25zTWFwO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgaWNvbkZvclR5cGUodHlwZTogTW9kZWxUeXBlU3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5pY29uTWFwJC5waXBlKG1hcCgoeCkgPT4geFt0eXBlXSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { createAction } from '@ngrx/store';
|
|
2
|
+
export const dbxModelResetState = createAction('[App/Model] Reset State');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvc3RhdGUvYWN0aW9ucy9hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQVMsTUFBTSxhQUFhLENBQUM7QUFHbEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsWUFBWSxDQUFDLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQXJyYXlPclZhbHVlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBkYnhNb2RlbFJlc2V0U3RhdGUgPSBjcmVhdGVBY3Rpb24oJ1tBcHAvTW9kZWxdIFJlc2V0IFN0YXRlJyk7XG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as DbxModelStateActions from './actions';
|
|
2
|
+
import * as DbxModelStateModelActions from './model.actions';
|
|
3
|
+
export { DbxModelStateActions, DbxModelStateModelActions };
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL3N0YXRlL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLG9CQUFvQixNQUFNLFdBQVcsQ0FBQztBQUNsRCxPQUFPLEtBQUsseUJBQXlCLE1BQU0saUJBQWlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHlCQUF5QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBEYnhNb2RlbFN0YXRlQWN0aW9ucyBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0ICogYXMgRGJ4TW9kZWxTdGF0ZU1vZGVsQWN0aW9ucyBmcm9tICcuL21vZGVsLmFjdGlvbnMnO1xuXG5leHBvcnQgeyBEYnhNb2RlbFN0YXRlQWN0aW9ucywgRGJ4TW9kZWxTdGF0ZU1vZGVsQWN0aW9ucyB9O1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { createAction, props } from '@ngrx/store';
|
|
2
|
+
export const emitObjectViewEvent = createAction('[App/Model/Type] Object Viewed', props());
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvc3RhdGUvYWN0aW9ucy9tb2RlbC5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBVWxELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLFlBQVksQ0FBQyxnQ0FBZ0MsRUFBRSxLQUFLLEVBQThCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsS2V5VHlwZU5hbWVQYWlyLCBNb2RlbEtleVR5cGVQYWlyIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieE1vZGVsT2JqZWN0Vmlld2VkUGFyYW1zIHtcbiAgbW9kZWxLZXlUeXBlTmFtZVBhaXI6IE1vZGVsS2V5VHlwZU5hbWVQYWlyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieE1vZGVsR29Ub09iamVjdFZpZXdQYXJhbXMge1xuICBtb2RlbEtleVR5cGVQYWlyOiBNb2RlbEtleVR5cGVQYWlyO1xufVxuXG5leHBvcnQgY29uc3QgZW1pdE9iamVjdFZpZXdFdmVudCA9IGNyZWF0ZUFjdGlvbignW0FwcC9Nb2RlbC9UeXBlXSBPYmplY3QgVmlld2VkJywgcHJvcHM8RGJ4TW9kZWxPYmplY3RWaWV3ZWRQYXJhbXM+KCkpO1xuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Actions, ofType, createEffect } from '@ngrx/effects';
|
|
3
|
+
import { distinctUntilChanged, filter, map, tap } from 'rxjs/operators';
|
|
4
|
+
import { onDbxAppAuth } from '@dereekb/dbx-core';
|
|
5
|
+
import { DbxModelTrackerService } from '../../model.tracker.service';
|
|
6
|
+
import { onDbxModel } from '..';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@ngrx/effects";
|
|
9
|
+
import * as i2 from "../../model.tracker.service";
|
|
10
|
+
/**
|
|
11
|
+
* Used to pass Object Store events to the ObjectTracker.
|
|
12
|
+
*/
|
|
13
|
+
export class DbxModelTrackerEffects {
|
|
14
|
+
constructor(actions$, dbxModelTrackerService) {
|
|
15
|
+
this.actions$ = actions$;
|
|
16
|
+
this.dbxModelTrackerService = dbxModelTrackerService;
|
|
17
|
+
this.trackModelViewed$ = createEffect(() => this.actions$.pipe(ofType(onDbxModel.DbxModelStateModelActions.emitObjectViewEvent), distinctUntilChanged((a, b) => a?.modelKeyTypeNamePair.key === b?.modelKeyTypeNamePair.key && a?.type === b?.type), tap((x) => {
|
|
18
|
+
this.dbxModelTrackerService.trackViewedObject(x.modelKeyTypeNamePair);
|
|
19
|
+
})), { dispatch: false });
|
|
20
|
+
this.changeTrackerFolderToMatchAuth$ = createEffect(() => this.actions$.pipe(ofType(onDbxAppAuth.DbxAppAuthUserActions.setUserIdentifier), map((x) => x.id), filter((x) => Boolean(x)), distinctUntilChanged(), tap((accountId) => {
|
|
21
|
+
this.dbxModelTrackerService.defaultFolder = accountId;
|
|
22
|
+
})), { dispatch: false });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
DbxModelTrackerEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects, deps: [{ token: i1.Actions }, { token: i2.DbxModelTrackerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
26
|
+
DbxModelTrackerEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxModelTrackerEffects, decorators: [{
|
|
28
|
+
type: Injectable
|
|
29
|
+
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.DbxModelTrackerService }]; } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlci5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9zdGF0ZS9lZmZlY3RzL3RyYWNrZXIuZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQzs7OztBQUVoQzs7R0FFRztBQUVILE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFBNkIsUUFBaUIsRUFBbUIsc0JBQThDO1FBQWxGLGFBQVEsR0FBUixRQUFRLENBQVM7UUFBbUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUV0RyxzQkFBaUIsR0FBRyxZQUFZLENBQ3ZDLEdBQUcsRUFBRSxDQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsVUFBVSxDQUFDLHlCQUF5QixDQUFDLG1CQUFtQixDQUFDLEVBQ2hFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLG9CQUFvQixDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsb0JBQW9CLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUNsSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNSLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FDSCxFQUNILEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUNwQixDQUFDO1FBRU8sb0NBQStCLEdBQUcsWUFBWSxDQUNyRCxHQUFHLEVBQUUsQ0FDSCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUM1RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDaEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDekIsb0JBQW9CLEVBQUUsRUFDdEIsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQ0gsRUFDSCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDcEIsQ0FBQztJQTFCZ0gsQ0FBQzs7b0hBRHhHLHNCQUFzQjt3SEFBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZlR5cGUsIGNyZWF0ZUVmZmVjdCB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvbkRieEFwcEF1dGggfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbW9kZWwudHJhY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IG9uRGJ4TW9kZWwgfSBmcm9tICcuLic7XG5cbi8qKlxuICogVXNlZCB0byBwYXNzIE9iamVjdCBTdG9yZSBldmVudHMgdG8gdGhlIE9iamVjdFRyYWNrZXIuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYnhNb2RlbFRyYWNrZXJFZmZlY3RzIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhY3Rpb25zJDogQWN0aW9ucywgcHJpdmF0ZSByZWFkb25seSBkYnhNb2RlbFRyYWNrZXJTZXJ2aWNlOiBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlKSB7fVxuXG4gIHJlYWRvbmx5IHRyYWNrTW9kZWxWaWV3ZWQkID0gY3JlYXRlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShvbkRieE1vZGVsLkRieE1vZGVsU3RhdGVNb2RlbEFjdGlvbnMuZW1pdE9iamVjdFZpZXdFdmVudCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiBhPy5tb2RlbEtleVR5cGVOYW1lUGFpci5rZXkgPT09IGI/Lm1vZGVsS2V5VHlwZU5hbWVQYWlyLmtleSAmJiBhPy50eXBlID09PSBiPy50eXBlKSxcbiAgICAgICAgdGFwKCh4KSA9PiB7XG4gICAgICAgICAgdGhpcy5kYnhNb2RlbFRyYWNrZXJTZXJ2aWNlLnRyYWNrVmlld2VkT2JqZWN0KHgubW9kZWxLZXlUeXBlTmFtZVBhaXIpO1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICB7IGRpc3BhdGNoOiBmYWxzZSB9XG4gICk7XG5cbiAgcmVhZG9ubHkgY2hhbmdlVHJhY2tlckZvbGRlclRvTWF0Y2hBdXRoJCA9IGNyZWF0ZUVmZmVjdChcbiAgICAoKSA9PlxuICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUob25EYnhBcHBBdXRoLkRieEFwcEF1dGhVc2VyQWN0aW9ucy5zZXRVc2VySWRlbnRpZmllciksXG4gICAgICAgIG1hcCgoeCkgPT4geC5pZCksXG4gICAgICAgIGZpbHRlcigoeCkgPT4gQm9vbGVhbih4KSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoYWNjb3VudElkKSA9PiB7XG4gICAgICAgICAgdGhpcy5kYnhNb2RlbFRyYWNrZXJTZXJ2aWNlLmRlZmF1bHRGb2xkZXIgPSBhY2NvdW50SWQ7XG4gICAgICAgIH0pXG4gICAgICApLFxuICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH1cbiAgKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './state';
|
|
2
|
+
export * from './actions';
|
|
3
|
+
import * as onDbxModel from './actions';
|
|
4
|
+
import * as fromDbxModel from './reducers';
|
|
5
|
+
export { onDbxModel, fromDbxModel };
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL3N0YXRlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsV0FBVyxDQUFDO0FBRTFCLE9BQU8sS0FBSyxVQUFVLE1BQU0sV0FBVyxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxZQUFZLE1BQU0sWUFBWSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucyc7XG5cbmltcG9ydCAqIGFzIG9uRGJ4TW9kZWwgZnJvbSAnLi9hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21EYnhNb2RlbCBmcm9tICcuL3JlZHVjZXJzJztcblxuZXhwb3J0IHsgb25EYnhNb2RlbCwgZnJvbURieE1vZGVsIH07XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { combineReducers, createFeatureSelector, createSelector } from '@ngrx/store';
|
|
2
|
+
import * as fromObjectModuleConfig from './model.module.config';
|
|
3
|
+
export const featureKey = 'app.model';
|
|
4
|
+
export function reducers(state, action) {
|
|
5
|
+
return combineReducers({
|
|
6
|
+
[fromObjectModuleConfig.stateFeatureKey]: fromObjectModuleConfig.reducer
|
|
7
|
+
})(state, action);
|
|
8
|
+
}
|
|
9
|
+
// MARK: Context
|
|
10
|
+
export const selectDbxModelFeature = createFeatureSelector(featureKey);
|
|
11
|
+
// MARK: Module Config
|
|
12
|
+
export const selectDbxModelFeatureObjectModuleConfig = createSelector(selectDbxModelFeature, (state) => state[fromObjectModuleConfig.stateFeatureKey]);
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL3N0YXRlL3JlZHVjZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTdGLE9BQU8sS0FBSyxzQkFBc0IsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBVXRDLE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBZ0MsRUFBRSxNQUFjO0lBQ3ZFLE9BQU8sZUFBZSxDQUFDO1FBQ3JCLENBQUMsc0JBQXNCLENBQUMsZUFBZSxDQUFDLEVBQUUsc0JBQXNCLENBQUMsT0FBTztLQUN6RSxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3BCLENBQUM7QUFFRCxnQkFBZ0I7QUFDaEIsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcscUJBQXFCLENBQXVCLFVBQVUsQ0FBQyxDQUFDO0FBRTdGLHNCQUFzQjtBQUN0QixNQUFNLENBQUMsTUFBTSx1Q0FBdUMsR0FBRyxjQUFjLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxLQUFvQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiwgY29tYmluZVJlZHVjZXJzLCBjcmVhdGVGZWF0dXJlU2VsZWN0b3IsIGNyZWF0ZVNlbGVjdG9yIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5pbXBvcnQgKiBhcyBmcm9tT2JqZWN0TW9kdWxlQ29uZmlnIGZyb20gJy4vbW9kZWwubW9kdWxlLmNvbmZpZyc7XG5pbXBvcnQgeyBEYnhNb2RlbE1vZHVsZVN0YXRlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vbW9kZWwubW9kdWxlLmNvbmZpZyc7XG5cbmV4cG9ydCBjb25zdCBmZWF0dXJlS2V5ID0gJ2FwcC5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4TW9kZWxTdGF0ZSB7XG4gIFtmcm9tT2JqZWN0TW9kdWxlQ29uZmlnLnN0YXRlRmVhdHVyZUtleV06IERieE1vZGVsTW9kdWxlU3RhdGVDb25maWd1cmF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlIHtcbiAgW2ZlYXR1cmVLZXldOiBEYnhNb2RlbFN0YXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVkdWNlcnMoc3RhdGU6IERieE1vZGVsU3RhdGUgfCB1bmRlZmluZWQsIGFjdGlvbjogQWN0aW9uKSB7XG4gIHJldHVybiBjb21iaW5lUmVkdWNlcnMoe1xuICAgIFtmcm9tT2JqZWN0TW9kdWxlQ29uZmlnLnN0YXRlRmVhdHVyZUtleV06IGZyb21PYmplY3RNb2R1bGVDb25maWcucmVkdWNlclxuICB9KShzdGF0ZSwgYWN0aW9uKTtcbn1cblxuLy8gTUFSSzogQ29udGV4dFxuZXhwb3J0IGNvbnN0IHNlbGVjdERieE1vZGVsRmVhdHVyZSA9IGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxTdGF0ZSwgRGJ4TW9kZWxTdGF0ZT4oZmVhdHVyZUtleSk7XG5cbi8vIE1BUks6IE1vZHVsZSBDb25maWdcbmV4cG9ydCBjb25zdCBzZWxlY3REYnhNb2RlbEZlYXR1cmVPYmplY3RNb2R1bGVDb25maWcgPSBjcmVhdGVTZWxlY3RvcihzZWxlY3REYnhNb2RlbEZlYXR1cmUsIChzdGF0ZTogRGJ4TW9kZWxTdGF0ZSkgPT4gc3RhdGVbZnJvbU9iamVjdE1vZHVsZUNvbmZpZy5zdGF0ZUZlYXR1cmVLZXldKTtcbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createReducer, on } from '@ngrx/store';
|
|
2
|
+
import { DbxModelStateActions } from '../actions';
|
|
3
|
+
export const stateFeatureKey = 'model.module.config';
|
|
4
|
+
export const initialState = {
|
|
5
|
+
types: {}
|
|
6
|
+
};
|
|
7
|
+
export const reducer = createReducer(initialState, on(DbxModelStateActions.dbxModelResetState, () => initialState));
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwubW9kdWxlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvc3RhdGUvcmVkdWNlcnMvbW9kZWwubW9kdWxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFJbEQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBRXJELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBcUM7SUFDNUQsS0FBSyxFQUFFLEVBQUU7Q0FDVixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FDbEMsWUFBWSxFQUNaLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFycmF5T3JWYWx1ZSwgdXNlSXRlcmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHsgRGJ4TW9kZWxTdGF0ZUFjdGlvbnMgfSBmcm9tICcuLi9hY3Rpb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhNb2RlbE1vZHVsZVN0YXRlQ29uZmlndXJhdGlvbiB7fVxuXG5leHBvcnQgY29uc3Qgc3RhdGVGZWF0dXJlS2V5ID0gJ21vZGVsLm1vZHVsZS5jb25maWcnO1xuXG5leHBvcnQgY29uc3QgaW5pdGlhbFN0YXRlOiBEYnhNb2RlbE1vZHVsZVN0YXRlQ29uZmlndXJhdGlvbiA9IHtcbiAgdHlwZXM6IHt9XG59O1xuXG5leHBvcnQgY29uc3QgcmVkdWNlciA9IGNyZWF0ZVJlZHVjZXIoXG4gIGluaXRpYWxTdGF0ZSxcbiAgb24oRGJ4TW9kZWxTdGF0ZUFjdGlvbnMuZGJ4TW9kZWxSZXNldFN0YXRlLCAoKSA9PiBpbml0aWFsU3RhdGUpXG4pO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL3N0YXRlL3N0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcm9tRGJ4TW9kZWwgZnJvbSAnLi9yZWR1Y2Vycyc7XG5cbmV4cG9ydCB0eXBlIERieE1vZGVsRnVsbFN0YXRlID0gZnJvbURieE1vZGVsLlN0YXRlO1xuIl19
|