@mediusinc/mng-commons-audit 5.0.0-rc.1 → 5.0.0-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/api/models/entityChange.mjs +2 -43
- package/esm2022/lib/api/models/guiEntityModel.mjs +2 -38
- package/esm2022/lib/api/models/guiPropertyModel.mjs +2 -68
- package/esm2022/lib/api/models/guiRelationModel.mjs +2 -32
- package/esm2022/lib/api/models/revEntityWithChangesDto.mjs +2 -38
- package/esm2022/lib/api/models/revEntityWithStateDto.mjs +2 -48
- package/esm2022/lib/api/services/audit-api.service.mjs +38 -0
- package/esm2022/lib/api/services/audit-revisions-api.service.mjs +28 -22
- package/esm2022/lib/api/services/audit.service.mjs +32 -20
- package/esm2022/lib/audit.routes.mjs +11 -11
- package/esm2022/lib/components/entity-changes-field/entity-changes-field.component.mjs +6 -7
- package/esm2022/lib/components/pages/audit/audit.page.component.mjs +3 -3
- package/esm2022/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.mjs +17 -18
- package/esm2022/lib/components/pages/revisions/audit-revisions.page.component.mjs +19 -23
- package/esm2022/lib/models/entity-revision-change-state.model.mjs +2 -9
- package/esm2022/lib/models/entity-revision-changes.model.mjs +2 -9
- package/esm2022/lib/models/guiEntityModelWithI18n.model.mjs +2 -10
- package/esm2022/lib/models/rev-entity-detailed.model.mjs +2 -10
- package/esm2022/lib/models/rev-entity.model.mjs +2 -9
- package/esm2022/lib/models/revEntityWithId.model.mjs +2 -11
- package/esm2022/lib/utils/audit.util.mjs +24 -24
- package/fesm2022/mediusinc-mng-commons-audit.mjs +157 -218
- package/fesm2022/mediusinc-mng-commons-audit.mjs.map +1 -1
- package/i18n/en.json +7 -9
- package/i18n/sl.json +7 -9
- package/lib/api/models/entityChange.d.ts +1 -5
- package/lib/api/models/guiEntityModel.d.ts +1 -5
- package/lib/api/models/guiPropertyModel.d.ts +1 -5
- package/lib/api/models/guiRelationModel.d.ts +1 -5
- package/lib/api/models/revEntityWithChangesDto.d.ts +1 -5
- package/lib/api/models/revEntityWithStateDto.d.ts +1 -5
- package/lib/api/services/audit-api.service.d.ts +12 -0
- package/lib/api/services/audit-revisions-api.service.d.ts +3 -7
- package/lib/api/services/audit.service.d.ts +2 -6
- package/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.d.ts +4 -3
- package/lib/components/pages/revisions/audit-revisions.page.component.d.ts +2 -2
- package/lib/models/entity-revision-change-state.model.d.ts +1 -1
- package/lib/models/entity-revision-changes.model.d.ts +1 -1
- package/lib/models/guiEntityModelWithI18n.model.d.ts +1 -1
- package/lib/models/rev-entity-detailed.model.d.ts +1 -1
- package/lib/models/rev-entity.model.d.ts +1 -1
- package/lib/models/revEntityWithId.model.d.ts +1 -1
- package/package.json +2 -3
- package/version-info.json +11 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { createRoute, createRouteRedirect, createRoutes } from '@mediusinc/mng-commons/core';
|
|
2
|
+
import { createTableviewRoute } from '@mediusinc/mng-commons/tableview';
|
|
3
3
|
import { AuditService } from './api/services/audit.service';
|
|
4
4
|
import { AuditPageComponent } from './components/pages/audit/audit.page.component';
|
|
5
5
|
import { AuditEntityRevisionsPageComponent } from './components/pages/entity-revisions/audit-entity-revisions.page.component';
|
|
@@ -11,30 +11,30 @@ import { COMMONS_AUDIT_MODULE_CONFIG_IT } from './service/module-config.token';
|
|
|
11
11
|
* @param routeConfig Optionally provide route configs.
|
|
12
12
|
*/
|
|
13
13
|
export function provideAuditRoutes(config, routeConfig) {
|
|
14
|
-
const routeBuilder =
|
|
14
|
+
const routeBuilder = createRoute('', config.rootPageComponent ?? AuditPageComponent)
|
|
15
15
|
.withProvider(AuditService)
|
|
16
16
|
.withProvider({
|
|
17
17
|
provide: COMMONS_AUDIT_MODULE_CONFIG_IT,
|
|
18
18
|
useValue: config
|
|
19
19
|
})
|
|
20
|
-
.addChildBuilder(
|
|
20
|
+
.addChildBuilder(createRouteRedirect('', routeConfig?.defaultRedirect ?? 'revisions', 'full'));
|
|
21
21
|
if (routeConfig?.preRevisionRoutes?.length) {
|
|
22
22
|
routeConfig.preRevisionRoutes.forEach(r => routeBuilder.addChildBuilder(r));
|
|
23
23
|
}
|
|
24
|
-
const revisionsRouteBuilder =
|
|
24
|
+
const revisionsRouteBuilder = createTableviewRoute('revisions', config.revisionsPageComponent ?? AuditRevisionsPageComponent)
|
|
25
25
|
.withTitle('pages.revisions.title')
|
|
26
26
|
.withAdd(false)
|
|
27
27
|
.withDelete(false)
|
|
28
28
|
.withEdit(false);
|
|
29
29
|
if (routeConfig?.revisionsMenuItem) {
|
|
30
|
-
revisionsRouteBuilder.
|
|
30
|
+
revisionsRouteBuilder.withMenuItemOpts(routeConfig.revisionsMenuItem);
|
|
31
31
|
}
|
|
32
32
|
else {
|
|
33
33
|
revisionsRouteBuilder.withMenuItem('pi pi-book', 'pages.revisions.title');
|
|
34
34
|
}
|
|
35
|
-
const entityRevisionsRouteBuilder =
|
|
35
|
+
const entityRevisionsRouteBuilder = createRoute('entity-revisions', config.entityRevisionsPageComponent ?? AuditEntityRevisionsPageComponent).withTitle('pages.entityRevisions.title');
|
|
36
36
|
if (routeConfig?.entityRevisionsMenuItem) {
|
|
37
|
-
entityRevisionsRouteBuilder.
|
|
37
|
+
entityRevisionsRouteBuilder.withMenuItemOpts(routeConfig.entityRevisionsMenuItem);
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
40
40
|
entityRevisionsRouteBuilder.withMenuItem('pi pi-building', 'pages.entityRevisions.title');
|
|
@@ -42,10 +42,10 @@ export function provideAuditRoutes(config, routeConfig) {
|
|
|
42
42
|
routeBuilder
|
|
43
43
|
.addChildBuilder(revisionsRouteBuilder)
|
|
44
44
|
.addChildBuilder(entityRevisionsRouteBuilder)
|
|
45
|
-
.addChildBuilder(
|
|
45
|
+
.addChildBuilder(createTableviewRoute('entity-revisions/:entityClass', config.entityRevisionsPageComponent ?? AuditEntityRevisionsPageComponent).withTitle('pages.entityRevisions.title'));
|
|
46
46
|
if (routeConfig?.postRevisionRoutes?.length) {
|
|
47
47
|
routeConfig.postRevisionRoutes.forEach(r => routeBuilder.addChildBuilder(r));
|
|
48
48
|
}
|
|
49
|
-
return
|
|
49
|
+
return createRoutes().add(routeBuilder).build();
|
|
50
50
|
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9hdWRpdC5yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFnQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDMUgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFdEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzFELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLDJFQUEyRSxDQUFDO0FBQzVILE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDO0FBRXhHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRTdFOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQzlCLE1BQWdDLEVBQ2hDLFdBTUM7SUFFRCxNQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxrQkFBa0IsQ0FBQztTQUMvRSxZQUFZLENBQUMsWUFBWSxDQUFDO1NBQzFCLFlBQVksQ0FBQztRQUNWLE9BQU8sRUFBRSw4QkFBOEI7UUFDdkMsUUFBUSxFQUFFLE1BQU07S0FDbkIsQ0FBQztTQUNELGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLGVBQWUsSUFBSSxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUVuRyxJQUFJLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUN6QyxXQUFXLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxNQUFNLHFCQUFxQixHQUFHLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsc0JBQXNCLElBQUksMkJBQTJCLENBQUM7U0FDeEgsU0FBUyxDQUFDLHVCQUF1QixDQUFDO1NBQ2xDLE9BQU8sQ0FBQyxLQUFLLENBQUM7U0FDZCxVQUFVLENBQUMsS0FBSyxDQUFDO1NBQ2pCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixJQUFJLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO1FBQ2pDLHFCQUFxQixDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzFFLENBQUM7U0FBTSxDQUFDO1FBQ0oscUJBQXFCLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxNQUFNLDJCQUEyQixHQUFHLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsNEJBQTRCLElBQUksaUNBQWlDLENBQUMsQ0FBQyxTQUFTLENBQ25KLDZCQUE2QixDQUNoQyxDQUFDO0lBQ0YsSUFBSSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsQ0FBQztRQUN2QywyQkFBMkIsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUN0RixDQUFDO1NBQU0sQ0FBQztRQUNKLDJCQUEyQixDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSw2QkFBNkIsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRCxZQUFZO1NBQ1AsZUFBZSxDQUFDLHFCQUFxQixDQUFDO1NBQ3RDLGVBQWUsQ0FBQywyQkFBMkIsQ0FBQztTQUM1QyxlQUFlLENBQ1osb0JBQW9CLENBQUMsK0JBQStCLEVBQUUsTUFBTSxDQUFDLDRCQUE0QixJQUFJLGlDQUFpQyxDQUFDLENBQUMsU0FBUyxDQUFDLDZCQUE2QixDQUFDLENBQzNLLENBQUM7SUFFTixJQUFJLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUMxQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxPQUFPLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSb3V0ZXN9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7Q29tbW9uc01lbnVJdGVtLCBSb3V0ZUJ1aWxkZXIsIGNyZWF0ZVJvdXRlLCBjcmVhdGVSb3V0ZVJlZGlyZWN0LCBjcmVhdGVSb3V0ZXN9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge2NyZWF0ZVRhYmxldmlld1JvdXRlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5cbmltcG9ydCB7QXVkaXRTZXJ2aWNlfSBmcm9tICcuL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7QXVkaXRQYWdlQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvcGFnZXMvYXVkaXQvYXVkaXQucGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHtBdWRpdEVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHtBdWRpdFJldmlzaW9uc1BhZ2VDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9wYWdlcy9yZXZpc2lvbnMvYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7Q29tbW9uc0F1ZGl0TW9kdWxlQ29uZmlnfSBmcm9tICcuL21vZGVscy9jb25maWcubW9kZWwnO1xuaW1wb3J0IHtDT01NT05TX0FVRElUX01PRFVMRV9DT05GSUdfSVR9IGZyb20gJy4vc2VydmljZS9tb2R1bGUtY29uZmlnLnRva2VuJztcblxuLyoqXG4gKiBQcm92aWRlcyByb3V0ZXMgZm9yIHRoZSBtbmctY29tbW9ucy1hdWRpdCBmdW5jdGlvbmFsaXRpZXMuXG4gKiBAcGFyYW0gY29uZmlnIE1vZHVsZSBjb25maWcgZm9yIGF1ZGl0IHNlY3Rpb24uXG4gKiBAcGFyYW0gcm91dGVDb25maWcgT3B0aW9uYWxseSBwcm92aWRlIHJvdXRlIGNvbmZpZ3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQXVkaXRSb3V0ZXMoXG4gICAgY29uZmlnOiBDb21tb25zQXVkaXRNb2R1bGVDb25maWcsXG4gICAgcm91dGVDb25maWc/OiB7XG4gICAgICAgIGRlZmF1bHRSZWRpcmVjdD86IHN0cmluZztcbiAgICAgICAgcHJlUmV2aXNpb25Sb3V0ZXM/OiBSb3V0ZUJ1aWxkZXJbXTtcbiAgICAgICAgcG9zdFJldmlzaW9uUm91dGVzPzogUm91dGVCdWlsZGVyW107XG4gICAgICAgIHJldmlzaW9uc01lbnVJdGVtPzogQ29tbW9uc01lbnVJdGVtO1xuICAgICAgICBlbnRpdHlSZXZpc2lvbnNNZW51SXRlbT86IENvbW1vbnNNZW51SXRlbTtcbiAgICB9XG4pOiBSb3V0ZXMge1xuICAgIGNvbnN0IHJvdXRlQnVpbGRlciA9IGNyZWF0ZVJvdXRlKCcnLCBjb25maWcucm9vdFBhZ2VDb21wb25lbnQgPz8gQXVkaXRQYWdlQ29tcG9uZW50KVxuICAgICAgICAud2l0aFByb3ZpZGVyKEF1ZGl0U2VydmljZSlcbiAgICAgICAgLndpdGhQcm92aWRlcih7XG4gICAgICAgICAgICBwcm92aWRlOiBDT01NT05TX0FVRElUX01PRFVMRV9DT05GSUdfSVQsXG4gICAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICAgICAgIH0pXG4gICAgICAgIC5hZGRDaGlsZEJ1aWxkZXIoY3JlYXRlUm91dGVSZWRpcmVjdCgnJywgcm91dGVDb25maWc/LmRlZmF1bHRSZWRpcmVjdCA/PyAncmV2aXNpb25zJywgJ2Z1bGwnKSk7XG5cbiAgICBpZiAocm91dGVDb25maWc/LnByZVJldmlzaW9uUm91dGVzPy5sZW5ndGgpIHtcbiAgICAgICAgcm91dGVDb25maWcucHJlUmV2aXNpb25Sb3V0ZXMuZm9yRWFjaChyID0+IHJvdXRlQnVpbGRlci5hZGRDaGlsZEJ1aWxkZXIocikpO1xuICAgIH1cblxuICAgIGNvbnN0IHJldmlzaW9uc1JvdXRlQnVpbGRlciA9IGNyZWF0ZVRhYmxldmlld1JvdXRlKCdyZXZpc2lvbnMnLCBjb25maWcucmV2aXNpb25zUGFnZUNvbXBvbmVudCA/PyBBdWRpdFJldmlzaW9uc1BhZ2VDb21wb25lbnQpXG4gICAgICAgIC53aXRoVGl0bGUoJ3BhZ2VzLnJldmlzaW9ucy50aXRsZScpXG4gICAgICAgIC53aXRoQWRkKGZhbHNlKVxuICAgICAgICAud2l0aERlbGV0ZShmYWxzZSlcbiAgICAgICAgLndpdGhFZGl0KGZhbHNlKTtcbiAgICBpZiAocm91dGVDb25maWc/LnJldmlzaW9uc01lbnVJdGVtKSB7XG4gICAgICAgIHJldmlzaW9uc1JvdXRlQnVpbGRlci53aXRoTWVudUl0ZW1PcHRzKHJvdXRlQ29uZmlnLnJldmlzaW9uc01lbnVJdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXZpc2lvbnNSb3V0ZUJ1aWxkZXIud2l0aE1lbnVJdGVtKCdwaSBwaS1ib29rJywgJ3BhZ2VzLnJldmlzaW9ucy50aXRsZScpO1xuICAgIH1cblxuICAgIGNvbnN0IGVudGl0eVJldmlzaW9uc1JvdXRlQnVpbGRlciA9IGNyZWF0ZVJvdXRlKCdlbnRpdHktcmV2aXNpb25zJywgY29uZmlnLmVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQgPz8gQXVkaXRFbnRpdHlSZXZpc2lvbnNQYWdlQ29tcG9uZW50KS53aXRoVGl0bGUoXG4gICAgICAgICdwYWdlcy5lbnRpdHlSZXZpc2lvbnMudGl0bGUnXG4gICAgKTtcbiAgICBpZiAocm91dGVDb25maWc/LmVudGl0eVJldmlzaW9uc01lbnVJdGVtKSB7XG4gICAgICAgIGVudGl0eVJldmlzaW9uc1JvdXRlQnVpbGRlci53aXRoTWVudUl0ZW1PcHRzKHJvdXRlQ29uZmlnLmVudGl0eVJldmlzaW9uc01lbnVJdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBlbnRpdHlSZXZpc2lvbnNSb3V0ZUJ1aWxkZXIud2l0aE1lbnVJdGVtKCdwaSBwaS1idWlsZGluZycsICdwYWdlcy5lbnRpdHlSZXZpc2lvbnMudGl0bGUnKTtcbiAgICB9XG5cbiAgICByb3V0ZUJ1aWxkZXJcbiAgICAgICAgLmFkZENoaWxkQnVpbGRlcihyZXZpc2lvbnNSb3V0ZUJ1aWxkZXIpXG4gICAgICAgIC5hZGRDaGlsZEJ1aWxkZXIoZW50aXR5UmV2aXNpb25zUm91dGVCdWlsZGVyKVxuICAgICAgICAuYWRkQ2hpbGRCdWlsZGVyKFxuICAgICAgICAgICAgY3JlYXRlVGFibGV2aWV3Um91dGUoJ2VudGl0eS1yZXZpc2lvbnMvOmVudGl0eUNsYXNzJywgY29uZmlnLmVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQgPz8gQXVkaXRFbnRpdHlSZXZpc2lvbnNQYWdlQ29tcG9uZW50KS53aXRoVGl0bGUoJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy50aXRsZScpXG4gICAgICAgICk7XG5cbiAgICBpZiAocm91dGVDb25maWc/LnBvc3RSZXZpc2lvblJvdXRlcz8ubGVuZ3RoKSB7XG4gICAgICAgIHJvdXRlQ29uZmlnLnBvc3RSZXZpc2lvblJvdXRlcy5mb3JFYWNoKHIgPT4gcm91dGVCdWlsZGVyLmFkZENoaWxkQnVpbGRlcihyKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZVJvdXRlcygpLmFkZChyb3V0ZUJ1aWxkZXIpLmJ1aWxkKCk7XG59XG4iXX0=
|
|
@@ -4,11 +4,10 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
|
4
4
|
import { BehaviorSubject } from 'rxjs';
|
|
5
5
|
import { CommonsInternalError } from '@mediusinc/mng-commons/core';
|
|
6
6
|
import { TableComponent } from '@mediusinc/mng-commons/table';
|
|
7
|
-
import {
|
|
7
|
+
import { TablePaginationModeEnum, tableDescriptor } from '@mediusinc/mng-commons/table/api';
|
|
8
8
|
import { AFormlyCustomFieldComponent } from '@mediusinc/mng-commons/tableview/api';
|
|
9
9
|
import { RevisionTypeDto, revisionTypeEnum } from '../../api/models/revisionType';
|
|
10
10
|
import { AuditService } from '../../api/services/audit.service';
|
|
11
|
-
import { EntityRevisionChangeState } from '../../models/entity-revision-change-state.model';
|
|
12
11
|
import { AuditUtil } from '../../utils/audit.util';
|
|
13
12
|
import * as i0 from "@angular/core";
|
|
14
13
|
export class EntityChangesFieldComponent extends AFormlyCustomFieldComponent {
|
|
@@ -47,7 +46,7 @@ export class EntityChangesFieldComponent extends AFormlyCustomFieldComponent {
|
|
|
47
46
|
}
|
|
48
47
|
}
|
|
49
48
|
const guiEntityModel = this.auditModel.filter(m => m.entityName === entityChanges.entityType)[0];
|
|
50
|
-
const desc =
|
|
49
|
+
const desc = tableDescriptor({ i18nBase: guiEntityModel.entityName }).withClassName('py-2');
|
|
51
50
|
if (guiEntityModel.entityName) {
|
|
52
51
|
desc.withTitle(guiEntityModel.entityName);
|
|
53
52
|
}
|
|
@@ -67,13 +66,13 @@ export class EntityChangesFieldComponent extends AFormlyCustomFieldComponent {
|
|
|
67
66
|
desc.withTrackProperty(`EntityChangeField_${entityChanges.entityType ?? 'default'}`);
|
|
68
67
|
return desc;
|
|
69
68
|
}
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
69
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EntityChangesFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
70
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: EntityChangesFieldComponent, isStandalone: true, selector: "mng-entity-changes-field", inputs: { injector: "injector" }, usesInheritance: true, ngImport: i0, template: "@if (modelFetched | async) {\n <div>\n @for (ec of entityChanges; track ec) {\n <mng-table [items]=\"ec.items\" [descriptor]=\"createDescriptor(ec)\"></mng-table>\n }\n </div>\n} @else {\n <div class=\"text-center\">\n <i class=\"pi pi-spin pi-spinner\" style=\"font-size: 2rem\"></i>\n </div>\n}\n", styles: ["::ng-deep tr.audit-row-deleted{background:#ff3d331a!important}::ng-deep tr.audit-row-deleted .audit-cell{background:#f6544c4d!important}::ng-deep tr.audit-row-added{background-color:#1bc5621a!important}::ng-deep tr.audit-row-added .audit-cell{background:#1bc5624d!important}\n"], dependencies: [{ kind: "component", type: TableComponent, selector: "mng-table", inputs: ["descriptor", "items", "result", "loading", "dataProvider", "useQueryParams", "selectionMode", "selectionEnabled", "columnLastMinWidth", "captionComponent", "columnCustomLastComponent", "globalFilterFields"], outputs: ["tableLoad", "cellClick", "selectionChange", "captionComponentInstance", "columnCustomLastComponentInstance"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
72
71
|
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EntityChangesFieldComponent, decorators: [{
|
|
74
73
|
type: Component,
|
|
75
74
|
args: [{ standalone: true, selector: 'mng-entity-changes-field', imports: [TableComponent, AsyncPipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (modelFetched | async) {\n <div>\n @for (ec of entityChanges; track ec) {\n <mng-table [items]=\"ec.items\" [descriptor]=\"createDescriptor(ec)\"></mng-table>\n }\n </div>\n} @else {\n <div class=\"text-center\">\n <i class=\"pi pi-spin pi-spinner\" style=\"font-size: 2rem\"></i>\n </div>\n}\n", styles: ["::ng-deep tr.audit-row-deleted{background:#ff3d331a!important}::ng-deep tr.audit-row-deleted .audit-cell{background:#f6544c4d!important}::ng-deep tr.audit-row-added{background-color:#1bc5621a!important}::ng-deep tr.audit-row-added .audit-cell{background:#1bc5624d!important}\n"] }]
|
|
76
75
|
}], propDecorators: { injector: [{
|
|
77
76
|
type: Input
|
|
78
77
|
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VudGl0eS1jaGFuZ2VzLWZpZWxkL2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lbnRpdHktY2hhbmdlcy1maWVsZC9lbnRpdHktY2hhbmdlcy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVyQyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGVBQWUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzFGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBSWpGLE9BQU8sRUFBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDOUQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0saURBQWlELENBQUM7QUFFMUYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHdCQUF3QixDQUFDOztBQVVqRCxNQUFNLE9B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c0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtUYWJsZUNvbXBvbmVudH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZSc7XG5pbXBvcnQge1RhYmxlRGVzY3JpcHRvciwgVGFibGVQYWdpbmF0aW9uTW9kZUVudW19IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcbmltcG9ydCB7QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldy9hcGknO1xuXG5pbXBvcnQge0VudGl0eUNoYW5nZUR0b30gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9lbnRpdHlDaGFuZ2UnO1xuaW1wb3J0IHtHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5pbXBvcnQge1JldmlzaW9uVHlwZUR0bywgcmV2aXNpb25UeXBlRW51bX0gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9yZXZpc2lvblR5cGUnO1xuaW1wb3J0IHtBdWRpdFNlcnZpY2V9IGZyb20gJy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7RW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZX0gZnJvbSAnLi4vLi4vbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwnO1xuaW1wb3J0IHtFbnRpdHlSZXZpc2lvbkNoYW5nZXN9IGZyb20gJy4uLy4uL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbCc7XG5pbXBvcnQge0F1ZGl0VXRpbH0gZnJvbSAnLi4vLi4vdXRpbHMvYXVkaXQudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctZW50aXR5LWNoYW5nZXMtZmllbGQnLFxuICAgIGltcG9ydHM6IFtUYWJsZUNvbXBvbmVudCwgQXN5bmNQaXBlXSxcbiAgICBzdHlsZVVybHM6IFsnZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJ2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnQgZXh0ZW5kcyBBRm9ybWx5Q3VzdG9tRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpbmplY3Rvcj86IEluamVjdG9yO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgcHVibGljIGVudGl0eUNoYW5nZXM6IEVudGl0eVJldmlzaW9uQ2hhbmdlc1tdID0gW107XG4gICAgcHVibGljIG1vZGVsRmV0Y2hlZCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSBhdWRpdE1vZGVsOiBHdWlFbnRpdHlNb2RlbER0b1tdID0gW107XG4gICAgcHJpdmF0ZSBmaWVsZFZhbHVlPzoge1trZXk6IHN0cmluZ106IEFycmF5PEVudGl0eUNoYW5nZUR0bz59O1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGRWYWx1ZSA9IHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgYXMge1trZXk6IHN0cmluZ106IEFycmF5PEVudGl0eUNoYW5nZUR0bz59O1xuICAgICAgICB0aGlzLmluamVjdG9yXG4gICAgICAgICAgICA/LmdldChBdWRpdFNlcnZpY2UsIHVuZGVmaW5lZCwge29wdGlvbmFsOiB0cnVlfSlcbiAgICAgICAgICAgID8uYXVkaXRNb2RlbCQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgICAgIG5leHQ6IG1vZGVsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdWRpdE1vZGVsID0gbW9kZWw7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkVmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW50aXR5Q2hhbmdlcyA9IEF1ZGl0VXRpbC5tYXBJdGVtc1RvRW50aXR5Q2hhbmdlc0FycmF5KHRoaXMuZmllbGRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGVsRmV0Y2hlZC5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdFcnJvciB3aGlsZSB0cnlpbmcgdG8gZmV0Y2ggYXVkaXQgbW9kZWwgZnJvbSBhdWRpdCBzZXJ2aWNlJywge25hbWU6ICdFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnRFcnJvcicsIGNhdXNlOiBlcnJ9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlRGVzY3JpcHRvcihlbnRpdHlDaGFuZ2VzOiBFbnRpdHlSZXZpc2lvbkNoYW5nZXMpIHtcbiAgICAgICAgY29uc3QgY2hhbmdlZEZpZWxkczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgaWYgKGVudGl0eUNoYW5nZXMuaXRlbXMgJiYgZW50aXR5Q2hhbmdlcy5pdGVtc1swXS5yZXZUeXBlID09PSBSZXZpc2lvblR5cGVEdG8uTW9kKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBlbnRpdHlDaGFuZ2VzLml0ZW1zWzBdKSB7XG4gICAgICAgICAgICAgICAgaWYgKGVudGl0eUNoYW5nZXMuaXRlbXNbMF1ba2V5XSAhPT0gZW50aXR5Q2hhbmdlcy5pdGVtc1sxXVtrZXldKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHMucHVzaChrZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGd1aUVudGl0eU1vZGVsID0gdGhpcy5hdWRpdE1vZGVsLmZpbHRlcihtID0+IG0uZW50aXR5TmFtZSA9PT0gZW50aXR5Q2hhbmdlcy5lbnRpdHlUeXBlKVswXTtcblxuICAgICAgICBjb25zdCBkZXNjID0gVGFibGVEZXNjcmlwdG9yLmZyb21DbGFzcyhFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgZ3VpRW50aXR5TW9kZWwuZW50aXR5TmFtZSkud2l0aENsYXNzTmFtZSgncHktMicpO1xuICAgICAgICBpZiAoZ3VpRW50aXR5TW9kZWwuZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgZGVzYy53aXRoVGl0bGUoZ3VpRW50aXR5TW9kZWwuZW50aXR5TmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBkZXNjLmFkZENvbHVtbkVudW0oJ3JldlR5cGUnLCByZXZpc2lvblR5cGVFbnVtKS53aXRoVGl0bGUoJ01uZ0VudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGUucHJvcGVydGllcy5yZXZUeXBlJyk7XG5cbiAgICAgICAgaWYgKGd1aUVudGl0eU1vZGVsLnByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRDb2x1bW5zRnJvbU1vZGVsKGRlc2MsIGd1aUVudGl0eU1vZGVsLnByb3BlcnRpZXMsIHVuZGVmaW5lZCwgZmFsc2UsIGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRlc2Mud2l0aFJvd0NsYXNzTmFtZSh1bmRlZmluZWQsIChfLCBpdGVtKSA9PiAoaXRlbSA/IChpdGVtLmNvbG9yID09PSAnZ3JlZW4nID8gJ2F1ZGl0LXJvdy1hZGRlZCcgOiAnYXVkaXQtcm93LWRlbGV0ZWQnKSA6ICcnKSk7XG4gICAgICAgIGRlc2MuY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgICAgICBpZiAoY2hhbmdlZEZpZWxkcy5sZW5ndGggPiAwICYmIGNoYW5nZWRGaWVsZHMuc29tZSh2YWwgPT4gY29sLnByb3BlcnR5ID09PSB2YWwpKSB7XG4gICAgICAgICAgICAgICAgY29sLndpdGhDbGFzc05hbWUoJ2F1ZGl0LWNlbGwnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGVzYy53aXRoUGFnaW5hdGlvbk1vZGUoVGFibGVQYWdpbmF0aW9uTW9kZUVudW0uUGFnaW5hdGlvbik7XG4gICAgICAgIGRlc2Mud2l0aEN1cnJlbnRDb2x1bW5zUmVvcmRlcmFibGUoKTtcbiAgICAgICAgZGVzYy53aXRoQ3VycmVudENvbHVtbnNUb2dnbGVhYmxlKCk7XG4gICAgICAgIGRlc2Mud2l0aFRyYWNrUHJvcGVydHkoYEVudGl0eUNoYW5nZUZpZWxkXyR7ZW50aXR5Q2hhbmdlcy5lbnRpdHlUeXBlID8/ICdkZWZhdWx0J31gKTtcblxuICAgICAgICByZXR1cm4gZGVzYztcbiAgICB9XG59XG4iLCJAaWYgKG1vZGVsRmV0Y2hlZCB8IGFzeW5jKSB7XG4gICAgPGRpdj5cbiAgICAgICAgQGZvciAoZWMgb2YgZW50aXR5Q2hhbmdlczsgdHJhY2sgZWMpIHtcbiAgICAgICAgICAgIDxtbmctdGFibGUgW2l0ZW1zXT1cImVjLml0ZW1zXCIgW2Rlc2NyaXB0b3JdPVwiY3JlYXRlRGVzY3JpcHRvcihlYylcIj48L21uZy10YWJsZT5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+XG4gICAgICAgIDxpIGNsYXNzPVwicGkgcGktc3BpbiBwaS1zcGlubmVyXCIgc3R5bGU9XCJmb250LXNpemU6IDJyZW1cIj48L2k+XG4gICAgPC9kaXY+XG59XG4iXX0=
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VudGl0eS1jaGFuZ2VzLWZpZWxkL2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lbnRpdHktY2hhbmdlcy1maWVsZC9lbnRpdHktY2hhbmdlcy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVyQyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLHVCQUF1QixFQUFFLGVBQWUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzFGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBSWpGLE9BQU8sRUFBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHOUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHdCQUF3QixDQUFDOztBQVVqRCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsMkJBQTJCO0lBUjVFOztRQVdZLGVBQVUsR0FBRyxN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RSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN2QixJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzlFLEdBQUcsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDcEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsYUFBYSxDQUFDLFVBQVUsSUFBSSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXJGLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7OEdBbEVRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDZJQzNCeEMsd1ZBV0EsOFVEV2MsY0FBYyxvWUFBRSxTQUFTOzsyRkFLMUIsMkJBQTJCO2tCQVJ2QyxTQUFTO2lDQUNNLElBQUksWUFDTiwwQkFBMEIsV0FDM0IsQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLG1CQUduQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUcvQixRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtUYWJsZUNvbXBvbmVudH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZSc7XG5pbXBvcnQge1RhYmxlUGFnaW5hdGlvbk1vZGVFbnVtLCB0YWJsZURlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcbmltcG9ydCB7QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldy9hcGknO1xuXG5pbXBvcnQge0VudGl0eUNoYW5nZUR0b30gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9lbnRpdHlDaGFuZ2UnO1xuaW1wb3J0IHtHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5pbXBvcnQge1JldmlzaW9uVHlwZUR0bywgcmV2aXNpb25UeXBlRW51bX0gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9yZXZpc2lvblR5cGUnO1xuaW1wb3J0IHtBdWRpdFNlcnZpY2V9IGZyb20gJy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7RW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZX0gZnJvbSAnLi4vLi4vbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwnO1xuaW1wb3J0IHtFbnRpdHlSZXZpc2lvbkNoYW5nZXN9IGZyb20gJy4uLy4uL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbCc7XG5pbXBvcnQge0F1ZGl0VXRpbH0gZnJvbSAnLi4vLi4vdXRpbHMvYXVkaXQudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctZW50aXR5LWNoYW5nZXMtZmllbGQnLFxuICAgIGltcG9ydHM6IFtUYWJsZUNvbXBvbmVudCwgQXN5bmNQaXBlXSxcbiAgICBzdHlsZVVybHM6IFsnZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJ2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnQgZXh0ZW5kcyBBRm9ybWx5Q3VzdG9tRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpbmplY3Rvcj86IEluamVjdG9yO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgcHVibGljIGVudGl0eUNoYW5nZXM6IEVudGl0eVJldmlzaW9uQ2hhbmdlc1tdID0gW107XG4gICAgcHVibGljIG1vZGVsRmV0Y2hlZCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSBhdWRpdE1vZGVsOiBHdWlFbnRpdHlNb2RlbER0b1tdID0gW107XG4gICAgcHJpdmF0ZSBmaWVsZFZhbHVlPzoge1trZXk6IHN0cmluZ106IEFycmF5PEVudGl0eUNoYW5nZUR0bz59O1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGRWYWx1ZSA9IHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgYXMge1trZXk6IHN0cmluZ106IEFycmF5PEVudGl0eUNoYW5nZUR0bz59O1xuICAgICAgICB0aGlzLmluamVjdG9yXG4gICAgICAgICAgICA/LmdldChBdWRpdFNlcnZpY2UsIHVuZGVmaW5lZCwge29wdGlvbmFsOiB0cnVlfSlcbiAgICAgICAgICAgID8uYXVkaXRNb2RlbCQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgICAgIG5leHQ6IG1vZGVsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdWRpdE1vZGVsID0gbW9kZWw7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkVmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW50aXR5Q2hhbmdlcyA9IEF1ZGl0VXRpbC5tYXBJdGVtc1RvRW50aXR5Q2hhbmdlc0FycmF5KHRoaXMuZmllbGRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGVsRmV0Y2hlZC5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdFcnJvciB3aGlsZSB0cnlpbmcgdG8gZmV0Y2ggYXVkaXQgbW9kZWwgZnJvbSBhdWRpdCBzZXJ2aWNlJywge25hbWU6ICdFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnRFcnJvcicsIGNhdXNlOiBlcnJ9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlRGVzY3JpcHRvcihlbnRpdHlDaGFuZ2VzOiBFbnRpdHlSZXZpc2lvbkNoYW5nZXMpIHtcbiAgICAgICAgY29uc3QgY2hhbmdlZEZpZWxkczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgaWYgKGVudGl0eUNoYW5nZXMuaXRlbXMgJiYgZW50aXR5Q2hhbmdlcy5pdGVtc1swXS5yZXZUeXBlID09PSBSZXZpc2lvblR5cGVEdG8uTW9kKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBlbnRpdHlDaGFuZ2VzLml0ZW1zWzBdKSB7XG4gICAgICAgICAgICAgICAgaWYgKGVudGl0eUNoYW5nZXMuaXRlbXNbMF1ba2V5XSAhPT0gZW50aXR5Q2hhbmdlcy5pdGVtc1sxXVtrZXldKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHMucHVzaChrZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGd1aUVudGl0eU1vZGVsID0gdGhpcy5hdWRpdE1vZGVsLmZpbHRlcihtID0+IG0uZW50aXR5TmFtZSA9PT0gZW50aXR5Q2hhbmdlcy5lbnRpdHlUeXBlKVswXTtcblxuICAgICAgICBjb25zdCBkZXNjID0gdGFibGVEZXNjcmlwdG9yPEVudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGU+KHtpMThuQmFzZTogZ3VpRW50aXR5TW9kZWwuZW50aXR5TmFtZX0pLndpdGhDbGFzc05hbWUoJ3B5LTInKTtcbiAgICAgICAgaWYgKGd1aUVudGl0eU1vZGVsLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgIGRlc2Mud2l0aFRpdGxlKGd1aUVudGl0eU1vZGVsLmVudGl0eU5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVzYy5hZGRDb2x1bW5FbnVtKCdyZXZUeXBlJywgcmV2aXNpb25UeXBlRW51bSkud2l0aFRpdGxlKCdNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlLnByb3BlcnRpZXMucmV2VHlwZScpO1xuXG4gICAgICAgIGlmIChndWlFbnRpdHlNb2RlbC5wcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICBBdWRpdFV0aWwuYWRkQ29sdW1uc0Zyb21Nb2RlbChkZXNjLCBndWlFbnRpdHlNb2RlbC5wcm9wZXJ0aWVzLCB1bmRlZmluZWQsIGZhbHNlLCBmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBkZXNjLndpdGhSb3dDbGFzc05hbWUodW5kZWZpbmVkLCAoXywgaXRlbSkgPT4gKGl0ZW0gPyAoaXRlbS5jb2xvciA9PT0gJ2dyZWVuJyA/ICdhdWRpdC1yb3ctYWRkZWQnIDogJ2F1ZGl0LXJvdy1kZWxldGVkJykgOiAnJykpO1xuICAgICAgICBkZXNjLmNvbHVtbnMuZm9yRWFjaChjb2wgPT4ge1xuICAgICAgICAgICAgaWYgKGNoYW5nZWRGaWVsZHMubGVuZ3RoID4gMCAmJiBjaGFuZ2VkRmllbGRzLnNvbWUodmFsID0+IGNvbC5wcm9wZXJ0eSA9PT0gdmFsKSkge1xuICAgICAgICAgICAgICAgIGNvbC53aXRoQ2xhc3NOYW1lKCdhdWRpdC1jZWxsJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRlc2Mud2l0aFBhZ2luYXRpb25Nb2RlKFRhYmxlUGFnaW5hdGlvbk1vZGVFbnVtLlBhZ2luYXRpb24pO1xuICAgICAgICBkZXNjLndpdGhDdXJyZW50Q29sdW1uc1Jlb3JkZXJhYmxlKCk7XG4gICAgICAgIGRlc2Mud2l0aEN1cnJlbnRDb2x1bW5zVG9nZ2xlYWJsZSgpO1xuICAgICAgICBkZXNjLndpdGhUcmFja1Byb3BlcnR5KGBFbnRpdHlDaGFuZ2VGaWVsZF8ke2VudGl0eUNoYW5nZXMuZW50aXR5VHlwZSA/PyAnZGVmYXVsdCd9YCk7XG5cbiAgICAgICAgcmV0dXJuIGRlc2M7XG4gICAgfVxufVxuIiwiQGlmIChtb2RlbEZldGNoZWQgfCBhc3luYykge1xuICAgIDxkaXY+XG4gICAgICAgIEBmb3IgKGVjIG9mIGVudGl0eUNoYW5nZXM7IHRyYWNrIGVjKSB7XG4gICAgICAgICAgICA8bW5nLXRhYmxlIFtpdGVtc109XCJlYy5pdGVtc1wiIFtkZXNjcmlwdG9yXT1cImNyZWF0ZURlc2NyaXB0b3IoZWMpXCI+PC9tbmctdGFibGU+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn0gQGVsc2Uge1xuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXNwaW4gcGktc3Bpbm5lclwiIHN0eWxlPVwiZm9udC1zaXplOiAycmVtXCI+PC9pPlxuICAgIDwvZGl2PlxufVxuIl19
|
|
@@ -2,10 +2,10 @@ import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
|
2
2
|
import { RouterOutlet } from '@angular/router';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class AuditPageComponent {
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
6
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: AuditPageComponent, isStandalone: true, selector: "mng-audit-page", ngImport: i0, template: "<router-outlet></router-outlet>\n", dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7
7
|
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditPageComponent, decorators: [{
|
|
9
9
|
type: Component,
|
|
10
10
|
args: [{ standalone: true, selector: 'mng-audit-page', imports: [RouterOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "<router-outlet></router-outlet>\n" }]
|
|
11
11
|
}] });
|
package/esm2022/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.mjs
CHANGED
|
@@ -9,13 +9,11 @@ import { throwError } from 'rxjs';
|
|
|
9
9
|
import { map } from 'rxjs/operators';
|
|
10
10
|
import { CommonsInternalError } from '@mediusinc/mng-commons/core';
|
|
11
11
|
import { DropdownComponent } from '@mediusinc/mng-commons/form';
|
|
12
|
-
import {
|
|
12
|
+
import { lookupDataProviderWithService } from '@mediusinc/mng-commons/form/api';
|
|
13
13
|
import { TableviewComponent } from '@mediusinc/mng-commons/tableview';
|
|
14
|
-
import {
|
|
14
|
+
import { actionEditorDetails, tableviewDataProviderWithService, tableviewDescriptor } from '@mediusinc/mng-commons/tableview/api';
|
|
15
15
|
import { AuditRevisionsApiService } from '../../../api/services/audit-revisions-api.service';
|
|
16
16
|
import { AuditService } from '../../../api/services/audit.service';
|
|
17
|
-
import { GuiEntityModelWithI18n } from '../../../models/guiEntityModelWithI18n.model';
|
|
18
|
-
import { RevEntityWithId } from '../../../models/revEntityWithId.model';
|
|
19
17
|
import { AuditUtil } from '../../../utils/audit.util';
|
|
20
18
|
import * as i0 from "@angular/core";
|
|
21
19
|
import * as i1 from "@angular/forms";
|
|
@@ -47,7 +45,7 @@ export class AuditEntityRevisionsPageComponent {
|
|
|
47
45
|
if (!revModel || !selectedRevisionEntity?.entityName) {
|
|
48
46
|
return undefined;
|
|
49
47
|
}
|
|
50
|
-
const desc =
|
|
48
|
+
const desc = tableviewDescriptor({ id: 'mergedId', i18nBase: selectedRevisionEntity.entityName });
|
|
51
49
|
AuditUtil.buildDescriptorForEntityRevision(desc, revModel, selectedRevisionEntity);
|
|
52
50
|
desc.table.withColumnsResizable();
|
|
53
51
|
desc.table.withCurrentColumnsReorderable();
|
|
@@ -62,16 +60,17 @@ export class AuditEntityRevisionsPageComponent {
|
|
|
62
60
|
}
|
|
63
61
|
const entityName = selectedRevisionEntity.entityName;
|
|
64
62
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
65
|
-
return
|
|
63
|
+
return tableviewDataProviderWithService(AuditRevisionsApiService).withGetAll((params, service) => selectedRevisionEntity.entityName
|
|
66
64
|
? service.listRevisionsWithStateForEntityType(params, entityName).pipe(map(res => {
|
|
67
65
|
const revEntityWithStateAndIdList = [];
|
|
68
66
|
for (const revEntityWithState of res.data) {
|
|
69
|
-
const revEntityWithStateAndId =
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
67
|
+
const revEntityWithStateAndId = {
|
|
68
|
+
mergedId: revEntityWithState.revEntity?.['rev'] + '_' + revEntityWithState.entityState?.['id'],
|
|
69
|
+
revType: revEntityWithState.revType,
|
|
70
|
+
revEntity: revEntityWithState.revEntity,
|
|
71
|
+
entityState: revEntityWithState.entityState,
|
|
72
|
+
entityClassName: revEntityWithState.entityClassName
|
|
73
|
+
};
|
|
75
74
|
revEntityWithStateAndIdList.push(revEntityWithStateAndId);
|
|
76
75
|
}
|
|
77
76
|
return { data: revEntityWithStateAndIdList, totalCount: res.totalCount };
|
|
@@ -85,7 +84,7 @@ export class AuditEntityRevisionsPageComponent {
|
|
|
85
84
|
return [];
|
|
86
85
|
}
|
|
87
86
|
const entityName = selectedRevisionEntity.entityName;
|
|
88
|
-
const detailsAction =
|
|
87
|
+
const detailsAction = actionEditorDetails(descriptor.detailsEditor, AuditRevisionsApiService)
|
|
89
88
|
.withFetchFunction(ctx => {
|
|
90
89
|
if (!entityName) {
|
|
91
90
|
return throwError(() => new CommonsInternalError('No revision entity is provided for details.'));
|
|
@@ -100,7 +99,7 @@ export class AuditEntityRevisionsPageComponent {
|
|
|
100
99
|
.withEditorTitle('pages.entityRevisions.actions.details.editor.title');
|
|
101
100
|
return [detailsAction];
|
|
102
101
|
});
|
|
103
|
-
this.revisionEntitiesLookupProvider =
|
|
102
|
+
this.revisionEntitiesLookupProvider = lookupDataProviderWithService(AuditService).withLookup(() => this.auditService.auditModel$.pipe(map(model => {
|
|
104
103
|
const modelI18n = model;
|
|
105
104
|
modelI18n.sort((m1, m2) => {
|
|
106
105
|
if (m1.entityName && m2.entityName) {
|
|
@@ -138,11 +137,11 @@ export class AuditEntityRevisionsPageComponent {
|
|
|
138
137
|
this.router.navigate(['/audit/entity-revisions/']);
|
|
139
138
|
}
|
|
140
139
|
}
|
|
141
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
142
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
140
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditEntityRevisionsPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
141
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: AuditEntityRevisionsPageComponent, isStandalone: true, selector: "mng-audit-entity-revisions-page", providers: [AuditRevisionsApiService], ngImport: i0, template: "<div class=\"card\">\n <div class=\"field mb-0\">\n <mng-dropdown\n id=\"revisionEntityDropdown\"\n [placeholder]=\"'pages.entityRevisions.dropdown.placeholder' | translate\"\n optionsLabelProperty=\"entityNameI18n\"\n [ngModel]=\"selectedRevisionEntity()\"\n (valueChange)=\"onRevisionEntityChange($event)\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"\n [showClear]=\"true\"></mng-dropdown>\n @if (!selectedRevisionEntity()) {\n <small class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n }\n </div>\n</div>\n@if (showTableview() && descriptor()) {\n <mng-tableview [descriptor]=\"descriptor()!\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n", dependencies: [{ kind: "component", type: DropdownComponent, selector: "mng-dropdown", inputs: ["dataProvider", "options", "optionsTrackProperty", "optionsLabelProperty", "optionsLabelTranslate", "optionsValueProperty", "optionsDisabledProperty", "multiselect", "placeholder", "showClear", "selectFirstItem", "className", "dropdownClassName", "changeValueOnBlur", "loading", "disabled"], outputs: ["valueChange", "blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: TableviewComponent, selector: "mng-tableview", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
143
142
|
}
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditEntityRevisionsPageComponent, decorators: [{
|
|
145
144
|
type: Component,
|
|
146
145
|
args: [{ standalone: true, selector: 'mng-audit-entity-revisions-page', imports: [DropdownComponent, FormsModule, AsyncPipe, TranslateModule, FormlyModule, TableviewComponent], providers: [AuditRevisionsApiService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"card\">\n <div class=\"field mb-0\">\n <mng-dropdown\n id=\"revisionEntityDropdown\"\n [placeholder]=\"'pages.entityRevisions.dropdown.placeholder' | translate\"\n optionsLabelProperty=\"entityNameI18n\"\n [ngModel]=\"selectedRevisionEntity()\"\n (valueChange)=\"onRevisionEntityChange($event)\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"\n [showClear]=\"true\"></mng-dropdown>\n @if (!selectedRevisionEntity()) {\n <small class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n }\n </div>\n</div>\n@if (showTableview() && descriptor()) {\n <mng-tableview [descriptor]=\"descriptor()!\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n" }]
|
|
147
146
|
}], ctorParameters: () => [] });
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZW50aXR5LXJldmlzaW9ucy9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGVBQWUsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxvQkFBb0IsRUFBVyxNQUFNLDZCQUE2QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFN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LENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0wsQ0FBQzs4R0F4SVEsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsOEVBSC9CLENBQUMsd0JBQXdCLENBQUMsMEJDN0J6QyxzMkJBb0JBLDRDRFFjLGlCQUFpQix3V0FBRSxXQUFXLDhWQUFhLGVBQWUsMkZBQUUsWUFBWSwrQkFBRSxrQkFBa0I7OzJGQUk3RixpQ0FBaUM7a0JBUjdDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGlDQUFpQyxXQUVsQyxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxhQUM1RixDQUFDLHdCQUF3QixDQUFDLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtGb3JtbHlNb2R1bGV9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHt0aHJvd0Vycm9yfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7Q29tbW9uc0ludGVybmFsRXJyb3IsIE51bGxhYmxlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9mb3JtJztcbmltcG9ydCB7TG9va3VwRGF0YVByb3ZpZGVyfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2Zvcm0vYXBpJztcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5pbXBvcnQge0FjdGlvbkRlc2NyaXB0b3JJbnN0LCBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvciwgVGFibGV2aWV3RGF0YVByb3ZpZGVyLCBUYWJsZXZpZXdEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldy9hcGknO1xuXG5pbXBvcnQge0d1aUVudGl0eU1vZGVsRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL2d1aUVudGl0eU1vZGVsJztcbmltcG9ydCB7QXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQtcmV2aXNpb25zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7QXVkaXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQuc2VydmljZSc7XG5pbXBvcnQge0d1aUVudGl0eU1vZGVsV2l0aEkxOG59IGZyb20gJy4uLy4uLy4uL21vZGVscy9ndWlFbnRpdHlNb2RlbFdpdGhJMThuLm1vZGVsJztcbmltcG9ydCB7UmV2RW50aXR5V2l0aElkfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsJztcbmltcG9ydCB7QXVkaXRVdGlsfSBmcm9tICcuLi8uLi8uLi91dGlscy9hdWRpdC51dGlsJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1hdWRpdC1lbnRpdHktcmV2aXNpb25zLXBhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGltcG9ydHM6IFtEcm9wZG93bkNvbXBvbmVudCwgRm9ybXNNb2R1bGUsIEFzeW5jUGlwZSwgVHJhbnNsYXRlTW9kdWxlLCBGb3JtbHlNb2R1bGUsIFRhYmxldmlld0NvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdEVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdWRpdFNlcnZpY2UgPSBpbmplY3QoQXVkaXRTZXJ2aWNlKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmV2TW9kZWwgPSB0b1NpZ25hbCh0aGlzLmF1ZGl0U2VydmljZS5yZXZNb2RlbCQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXVkaXRNb2RlbCA9IHRvU2lnbmFsKHRoaXMuYXVkaXRTZXJ2aWNlLmF1ZGl0TW9kZWwkKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVudGl0eUNsYXNzID0gdG9TaWduYWwodGhpcy5yb3V0ZS5wYXJhbU1hcC5waXBlKG1hcChwbSA9PiBwbS5nZXQoJ2VudGl0eUNsYXNzJykgPz8gdW5kZWZpbmVkKSkpO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGVudGl0aWVzID0gdGhpcy5hdWRpdE1vZGVsKCk7XG4gICAgICAgIGNvbnN0IGVudGl0eUNsYXNzID0gdGhpcy5lbnRpdHlDbGFzcygpO1xuICAgICAgICBpZiAoZW50aXR5Q2xhc3MgJiYgZW50aXRpZXMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZSBvZiBlbnRpdGllcykge1xuICAgICAgICAgICAgICAgIGlmIChlLmVudGl0eU5hbWUgPT09IGVudGl0eUNsYXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0pO1xuICAgIHB1YmxpYyByZWFkb25seSBkZXNjcmlwdG9yID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCByZXZNb2RlbCA9IHRoaXMucmV2TW9kZWwoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBpZiAoIXJldk1vZGVsIHx8ICFzZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVzYyA9IFRhYmxldmlld0Rlc2NyaXB0b3IuZnJvbUNsYXNzKFJldkVudGl0eVdpdGhJZCwgJ21lcmdlZElkJywgdW5kZWZpbmVkLCBzZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWUpO1xuICAgICAgICBBdWRpdFV0aWwuYnVpbGREZXNjcmlwdG9yRm9yRW50aXR5UmV2aXNpb24oZGVzYywgcmV2TW9kZWwsIHNlbGVjdGVkUmV2aXNpb25FbnRpdHkpO1xuXG4gICAgICAgIGRlc2MudGFibGUud2l0aENvbHVtbnNSZXNpemFibGUoKTtcbiAgICAgICAgZGVzYy50YWJsZS53aXRoQ3VycmVudENvbHVtbnNSZW9yZGVyYWJsZSgpO1xuICAgICAgICBkZXNjLnRhYmxlLndpdGhDdXJyZW50Q29sdW1uc1RvZ2dsZWFibGUoKTtcblxuICAgICAgICByZXR1cm4gZGVzYztcbiAgICB9KTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGF0YVByb3ZpZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCByZXZNb2RlbCA9IHRoaXMucmV2TW9kZWwoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBpZiAoIXJldk1vZGVsIHx8ICFzZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXR5TmFtZSA9IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkuZW50aXR5TmFtZTtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmV0dXJuIFRhYmxldmlld0RhdGFQcm92aWRlci5mcm9tQ2xhc3NXaXRoU2VydmljZTxSZXZFbnRpdHlXaXRoSWQsIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSwgYW55PihSZXZFbnRpdHlXaXRoSWQsIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSkud2l0aEdldEFsbChcbiAgICAgICAgICAgIChwYXJhbXMsIHNlcnZpY2UpID0+XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lXG4gICAgICAgICAgICAgICAgICAgID8gc2VydmljZS5saXN0UmV2aXNpb25zV2l0aFN0YXRlRm9yRW50aXR5VHlwZShwYXJhbXMsIGVudGl0eU5hbWUpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcChyZXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0ID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZSBvZiByZXMuZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZUFuZElkID0gbmV3IFJldkVudGl0eVdpdGhJZCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLm1lcmdlZElkID0gcmV2RW50aXR5V2l0aFN0YXRlLnJldkVudGl0eT8uWydyZXYnXSArICdfJyArIHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlTdGF0ZT8uWydpZCddO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLnJldlR5cGUgPSByZXZFbnRpdHlXaXRoU3RhdGUucmV2VHlwZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5yZXZFbnRpdHkgPSByZXZFbnRpdHlXaXRoU3RhdGUucmV2RW50aXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLmVudGl0eVN0YXRlID0gcmV2RW50aXR5V2l0aFN0YXRlLmVudGl0eVN0YXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLmVudGl0eUNsYXNzTmFtZSA9IHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlDbGFzc05hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0LnB1c2gocmV2RW50aXR5V2l0aFN0YXRlQW5kSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtkYXRhOiByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QsIHRvdGFsQ291bnQ6IHJlcy50b3RhbENvdW50fTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIDogdGhyb3dFcnJvcigoKSA9PiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgbGlzdC4nKSlcbiAgICAgICAgKTtcbiAgICB9KTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gdGhpcy5kZXNjcmlwdG9yKCk7XG4gICAgICAgIGlmICghc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT8uZW50aXR5TmFtZSB8fCAhZGVzY3JpcHRvcikge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXR5TmFtZSA9IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkuZW50aXR5TmFtZTtcbiAgICAgICAgY29uc3QgZGV0YWlsc0FjdGlvbiA9IEFjdGlvbkVkaXRvckRldGFpbHNEZXNjcmlwdG9yLmNyZWF0ZVdpdGhQcm92aWRlcihkZXNjcmlwdG9yLmRldGFpbHNFZGl0b3IsIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSlcbiAgICAgICAgICAgIC53aXRoRmV0Y2hGdW5jdGlvbihjdHggPT4ge1xuICAgICAgICAgICAgICAgIGlmICghZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgZGV0YWlscy4nKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghY3R4LnBhcmFtZXRlcnMuaXRlbUlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcignTm8gaXRlbSBpZCBmb3IgcmV2aXNpb24gZW50aXR5IGRldGFpbHMgaXMgcHJvdmlkZWQuJykpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXZJZCA9IGN0eC5wYXJhbWV0ZXJzLml0ZW1JZC50b1N0cmluZygpLnNwbGl0KCdfJylbMF07XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbUlkID0gY3R4LnBhcmFtZXRlcnMuaXRlbUlkLnRvU3RyaW5nKCkuc3BsaXQoJ18nKVsxXTtcbiAgICAgICAgICAgICAgICByZXR1cm4gY3R4LnNlcnZpY2VJbnN0YW5jZS5mZXRjaFJldmlzaW9uc1dpdGhTdGF0ZUZvckVudGl0eVR5cGUoZW50aXR5TmFtZSwgcmV2SWQsIGl0ZW1JZCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLndpdGhFZGl0b3JUaXRsZSgncGFnZXMuZW50aXR5UmV2aXNpb25zLmFjdGlvbnMuZGV0YWlscy5lZGl0b3IudGl0bGUnKTtcbiAgICAgICAgcmV0dXJuIFtkZXRhaWxzQWN0aW9uXSBhcyBBY3Rpb25EZXNjcmlwdG9ySW5zdDxSZXZFbnRpdHlXaXRoSWQ+W107XG4gICAgfSk7XG5cbiAgICBwdWJsaWMgcmV2aXNpb25FbnRpdGllc0xvb2t1cFByb3ZpZGVyID0gTG9va3VwRGF0YVByb3ZpZGVyLmZyb21DbGFzcyhHdWlFbnRpdHlNb2RlbFdpdGhJMThuKS53aXRoTG9va3VwKCgpID0+XG4gICAgICAgIHRoaXMuYXVkaXRTZXJ2aWNlLmF1ZGl0TW9kZWwkLnBpcGUoXG4gICAgICAgICAgICBtYXAobW9kZWwgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1vZGVsSTE4biA9IG1vZGVsIGFzIEd1aUVudGl0eU1vZGVsV2l0aEkxOG5bXTtcbiAgICAgICAgICAgICAgICBtb2RlbEkxOG4uc29ydCgobTEsIG0yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtMS5lbnRpdHlOYW1lICYmIG0yLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtMS5lbnRpdHlOYW1lLmxvY2FsZUNvbXBhcmUobTIuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobTEuZW50aXR5TmFtZSAmJiAhbTIuZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtb2RlbEkxOG4uZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdHJhbnNsYXRlZEVudGl0eU5hbWUgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdBdWRpdEVudGl0aWVzLicgKyBpdGVtLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmVudGl0eU5hbWVJMThuID0gdHJhbnNsYXRlZEVudGl0eU5hbWUuaW5jbHVkZXMoJ0F1ZGl0RW50aXRpZXMuJykgPyBpdGVtLmVudGl0eU5hbWUgOiB0cmFuc2xhdGVkRW50aXR5TmFtZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbW9kZWxJMThuO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICk7XG4gICAgcHVibGljIHNob3dUYWJsZXZpZXcgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gdGhpcy5kZXNjcmlwdG9yKCk7XG4gICAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge2FsbG93U2lnbmFsV3JpdGVzOiB0cnVlfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJldmlzaW9uRW50aXR5Q2hhbmdlKHZhbHVlOiBOdWxsYWJsZTxHdWlFbnRpdHlNb2RlbER0bz4pIHtcbiAgICAgICAgdGhpcy5zaG93VGFibGV2aWV3LnNldChmYWxzZSk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nICsgdmFsdWUuZW50aXR5TmFtZV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nXSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBtYi0wXCI+XG4gICAgICAgIDxtbmctZHJvcGRvd25cbiAgICAgICAgICAgIGlkPVwicmV2aXNpb25FbnRpdHlEcm9wZG93blwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy5kcm9wZG93bi5wbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgb3B0aW9uc0xhYmVsUHJvcGVydHk9XCJlbnRpdHlOYW1lSTE4blwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFJldmlzaW9uRW50aXR5KClcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uUmV2aXNpb25FbnRpdHlDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICBbZGF0YVByb3ZpZGVyXT1cInJldmlzaW9uRW50aXRpZXNMb29rdXBQcm92aWRlclwiXG4gICAgICAgICAgICBbc2hvd0NsZWFyXT1cInRydWVcIj48L21uZy1kcm9wZG93bj5cbiAgICAgICAgQGlmICghc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpKSB7XG4gICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJibG9ja1wiPlxuICAgICAgICAgICAgICAgIHt7ICdwYWdlcy5lbnRpdHlSZXZpc2lvbnMuZHJvcGRvd24uaGVscFRleHQnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L3NtYWxsPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1RhYmxldmlldygpICYmIGRlc2NyaXB0b3IoKSkge1xuICAgIDxtbmctdGFibGV2aWV3IFtkZXNjcmlwdG9yXT1cImRlc2NyaXB0b3IoKSFcIiBbZGF0YVByb3ZpZGVyXT1cImRhdGFQcm92aWRlcigpXCIgW2FjdGlvbnNdPVwiYWN0aW9ucygpXCI+PC9tbmctdGFibGV2aWV3PlxufVxuIl19
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZW50aXR5LXJldmlzaW9ucy9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGVBQWUsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxvQkFBb0IsRUFBVyxNQUFNLDZCQUE2QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFN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QixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxhQUM1RixDQUFDLHdCQUF3QixDQUFDLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtGb3JtbHlNb2R1bGV9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHt0aHJvd0Vycm9yfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7Q29tbW9uc0ludGVybmFsRXJyb3IsIE51bGxhYmxlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9mb3JtJztcbmltcG9ydCB7bG9va3VwRGF0YVByb3ZpZGVyV2l0aFNlcnZpY2V9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvZm9ybS9hcGknO1xuaW1wb3J0IHtUYWJsZXZpZXdDb21wb25lbnR9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3JztcbmltcG9ydCB7QWN0aW9uRGVzY3JpcHRvckluc3QsIGFjdGlvbkVkaXRvckRldGFpbHMsIHRhYmxldmlld0RhdGFQcm92aWRlcldpdGhTZXJ2aWNlLCB0YWJsZXZpZXdEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldy9hcGknO1xuXG5pbXBvcnQge0d1aUVudGl0eU1vZGVsRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL2d1aUVudGl0eU1vZGVsJztcbmltcG9ydCB7QXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQtcmV2aXNpb25zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7QXVkaXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQuc2VydmljZSc7XG5pbXBvcnQge0d1aUVudGl0eU1vZGVsV2l0aEkxOG59IGZyb20gJy4uLy4uLy4uL21vZGVscy9ndWlFbnRpdHlNb2RlbFdpdGhJMThuLm1vZGVsJztcbmltcG9ydCB7UmV2RW50aXR5V2l0aElkfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsJztcbmltcG9ydCB7QXVkaXRVdGlsfSBmcm9tICcuLi8uLi8uLi91dGlscy9hdWRpdC51dGlsJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1hdWRpdC1lbnRpdHktcmV2aXNpb25zLXBhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGltcG9ydHM6IFtEcm9wZG93bkNvbXBvbmVudCwgRm9ybXNNb2R1bGUsIEFzeW5jUGlwZSwgVHJhbnNsYXRlTW9kdWxlLCBGb3JtbHlNb2R1bGUsIFRhYmxldmlld0NvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdEVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdWRpdFNlcnZpY2UgPSBpbmplY3QoQXVkaXRTZXJ2aWNlKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmV2TW9kZWwgPSB0b1NpZ25hbCh0aGlzLmF1ZGl0U2VydmljZS5yZXZNb2RlbCQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXVkaXRNb2RlbCA9IHRvU2lnbmFsKHRoaXMuYXVkaXRTZXJ2aWNlLmF1ZGl0TW9kZWwkKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVudGl0eUNsYXNzID0gdG9TaWduYWwodGhpcy5yb3V0ZS5wYXJhbU1hcC5waXBlKG1hcChwbSA9PiBwbS5nZXQoJ2VudGl0eUNsYXNzJykgPz8gdW5kZWZpbmVkKSkpO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGVudGl0aWVzID0gdGhpcy5hdWRpdE1vZGVsKCk7XG4gICAgICAgIGNvbnN0IGVudGl0eUNsYXNzID0gdGhpcy5lbnRpdHlDbGFzcygpO1xuICAgICAgICBpZiAoZW50aXR5Q2xhc3MgJiYgZW50aXRpZXMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZSBvZiBlbnRpdGllcykge1xuICAgICAgICAgICAgICAgIGlmIChlLmVudGl0eU5hbWUgPT09IGVudGl0eUNsYXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0pO1xuICAgIHB1YmxpYyByZWFkb25seSBkZXNjcmlwdG9yID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCByZXZNb2RlbCA9IHRoaXMucmV2TW9kZWwoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBpZiAoIXJldk1vZGVsIHx8ICFzZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVzYyA9IHRhYmxldmlld0Rlc2NyaXB0b3I8UmV2RW50aXR5V2l0aElkPih7aWQ6ICdtZXJnZWRJZCcsIGkxOG5CYXNlOiBzZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWV9KTtcbiAgICAgICAgQXVkaXRVdGlsLmJ1aWxkRGVzY3JpcHRvckZvckVudGl0eVJldmlzaW9uKGRlc2MsIHJldk1vZGVsLCBzZWxlY3RlZFJldmlzaW9uRW50aXR5KTtcbiAgICAgICAgZGVzYy50YWJsZS53aXRoQ29sdW1uc1Jlc2l6YWJsZSgpO1xuICAgICAgICBkZXNjLnRhYmxlLndpdGhDdXJyZW50Q29sdW1uc1Jlb3JkZXJhYmxlKCk7XG4gICAgICAgIGRlc2MudGFibGUud2l0aEN1cnJlbnRDb2x1bW5zVG9nZ2xlYWJsZSgpO1xuXG4gICAgICAgIHJldHVybiBkZXNjO1xuICAgIH0pO1xuICAgIHB1YmxpYyByZWFkb25seSBkYXRhUHJvdmlkZXIgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJldk1vZGVsID0gdGhpcy5yZXZNb2RlbCgpO1xuICAgICAgICBjb25zdCBzZWxlY3RlZFJldmlzaW9uRW50aXR5ID0gdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5KCk7XG4gICAgICAgIGlmICghcmV2TW9kZWwgfHwgIXNlbGVjdGVkUmV2aXNpb25FbnRpdHk/LmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lO1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICByZXR1cm4gdGFibGV2aWV3RGF0YVByb3ZpZGVyV2l0aFNlcnZpY2U8QXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlLCBSZXZFbnRpdHlXaXRoSWQ+KEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSkud2l0aEdldEFsbCgocGFyYW1zLCBzZXJ2aWNlKSA9PlxuICAgICAgICAgICAgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lXG4gICAgICAgICAgICAgICAgPyBzZXJ2aWNlLmxpc3RSZXZpc2lvbnNXaXRoU3RhdGVGb3JFbnRpdHlUeXBlKHBhcmFtcywgZW50aXR5TmFtZSkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICBtYXAocmVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0ID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlIG9mIHJlcy5kYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZDogUmV2RW50aXR5V2l0aElkID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lcmdlZElkOiByZXZFbnRpdHlXaXRoU3RhdGUucmV2RW50aXR5Py5bJ3JldiddICsgJ18nICsgcmV2RW50aXR5V2l0aFN0YXRlLmVudGl0eVN0YXRlPy5bJ2lkJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2VHlwZTogcmV2RW50aXR5V2l0aFN0YXRlLnJldlR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5OiByZXZFbnRpdHlXaXRoU3RhdGUucmV2RW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eVN0YXRlOiByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5Q2xhc3NOYW1lOiByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5Q2xhc3NOYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0LnB1c2gocmV2RW50aXR5V2l0aFN0YXRlQW5kSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7ZGF0YTogcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0LCB0b3RhbENvdW50OiByZXMudG90YWxDb3VudH07XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA6IHRocm93RXJyb3IoKCkgPT4gbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdObyByZXZpc2lvbiBlbnRpdHkgaXMgcHJvdmlkZWQgZm9yIGxpc3QuJykpXG4gICAgICAgICk7XG4gICAgfSk7XG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkgPSB0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHkoKTtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IHRoaXMuZGVzY3JpcHRvcigpO1xuICAgICAgICBpZiAoIXNlbGVjdGVkUmV2aXNpb25FbnRpdHk/LmVudGl0eU5hbWUgfHwgIWRlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lO1xuICAgICAgICBjb25zdCBkZXRhaWxzQWN0aW9uID0gYWN0aW9uRWRpdG9yRGV0YWlsczxSZXZFbnRpdHlXaXRoSWQsIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZT4oZGVzY3JpcHRvci5kZXRhaWxzRWRpdG9yLCBBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2UpXG4gICAgICAgICAgICAud2l0aEZldGNoRnVuY3Rpb24oY3R4ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdObyByZXZpc2lvbiBlbnRpdHkgaXMgcHJvdmlkZWQgZm9yIGRldGFpbHMuJykpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIWN0eC5wYXJhbWV0ZXJzLml0ZW1JZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoJ05vIGl0ZW0gaWQgZm9yIHJldmlzaW9uIGVudGl0eSBkZXRhaWxzIGlzIHByb3ZpZGVkLicpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcmV2SWQgPSBjdHgucGFyYW1ldGVycy5pdGVtSWQudG9TdHJpbmcoKS5zcGxpdCgnXycpWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1JZCA9IGN0eC5wYXJhbWV0ZXJzLml0ZW1JZC50b1N0cmluZygpLnNwbGl0KCdfJylbMV07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGN0eC5zZXJ2aWNlSW5zdGFuY2UuZmV0Y2hSZXZpc2lvbnNXaXRoU3RhdGVGb3JFbnRpdHlUeXBlKGVudGl0eU5hbWUsIHJldklkLCBpdGVtSWQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC53aXRoRWRpdG9yVGl0bGUoJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy5hY3Rpb25zLmRldGFpbHMuZWRpdG9yLnRpdGxlJyk7XG4gICAgICAgIHJldHVybiBbZGV0YWlsc0FjdGlvbl0gYXMgQWN0aW9uRGVzY3JpcHRvckluc3Q8UmV2RW50aXR5V2l0aElkPltdO1xuICAgIH0pO1xuXG4gICAgcHVibGljIHJldmlzaW9uRW50aXRpZXNMb29rdXBQcm92aWRlciA9IGxvb2t1cERhdGFQcm92aWRlcldpdGhTZXJ2aWNlPEF1ZGl0U2VydmljZSwgR3VpRW50aXR5TW9kZWxXaXRoSTE4bj4oQXVkaXRTZXJ2aWNlKS53aXRoTG9va3VwKCgpID0+XG4gICAgICAgIHRoaXMuYXVkaXRTZXJ2aWNlLmF1ZGl0TW9kZWwkLnBpcGUoXG4gICAgICAgICAgICBtYXAobW9kZWwgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1vZGVsSTE4biA9IG1vZGVsIGFzIEd1aUVudGl0eU1vZGVsV2l0aEkxOG5bXTtcbiAgICAgICAgICAgICAgICBtb2RlbEkxOG4uc29ydCgobTEsIG0yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtMS5lbnRpdHlOYW1lICYmIG0yLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtMS5lbnRpdHlOYW1lLmxvY2FsZUNvbXBhcmUobTIuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobTEuZW50aXR5TmFtZSAmJiAhbTIuZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtb2RlbEkxOG4uZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdHJhbnNsYXRlZEVudGl0eU5hbWUgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdBdWRpdEVudGl0aWVzLicgKyBpdGVtLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmVudGl0eU5hbWVJMThuID0gdHJhbnNsYXRlZEVudGl0eU5hbWUuaW5jbHVkZXMoJ0F1ZGl0RW50aXRpZXMuJykgPyBpdGVtLmVudGl0eU5hbWUgOiB0cmFuc2xhdGVkRW50aXR5TmFtZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbW9kZWxJMThuO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICk7XG4gICAgcHVibGljIHNob3dUYWJsZXZpZXcgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gdGhpcy5kZXNjcmlwdG9yKCk7XG4gICAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge2FsbG93U2lnbmFsV3JpdGVzOiB0cnVlfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJldmlzaW9uRW50aXR5Q2hhbmdlKHZhbHVlOiBOdWxsYWJsZTxHdWlFbnRpdHlNb2RlbER0bz4pIHtcbiAgICAgICAgdGhpcy5zaG93VGFibGV2aWV3LnNldChmYWxzZSk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nICsgdmFsdWUuZW50aXR5TmFtZV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nXSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBtYi0wXCI+XG4gICAgICAgIDxtbmctZHJvcGRvd25cbiAgICAgICAgICAgIGlkPVwicmV2aXNpb25FbnRpdHlEcm9wZG93blwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy5kcm9wZG93bi5wbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgb3B0aW9uc0xhYmVsUHJvcGVydHk9XCJlbnRpdHlOYW1lSTE4blwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFJldmlzaW9uRW50aXR5KClcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uUmV2aXNpb25FbnRpdHlDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICBbZGF0YVByb3ZpZGVyXT1cInJldmlzaW9uRW50aXRpZXNMb29rdXBQcm92aWRlclwiXG4gICAgICAgICAgICBbc2hvd0NsZWFyXT1cInRydWVcIj48L21uZy1kcm9wZG93bj5cbiAgICAgICAgQGlmICghc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpKSB7XG4gICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJibG9ja1wiPlxuICAgICAgICAgICAgICAgIHt7ICdwYWdlcy5lbnRpdHlSZXZpc2lvbnMuZHJvcGRvd24uaGVscFRleHQnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L3NtYWxsPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1RhYmxldmlldygpICYmIGRlc2NyaXB0b3IoKSkge1xuICAgIDxtbmctdGFibGV2aWV3IFtkZXNjcmlwdG9yXT1cImRlc2NyaXB0b3IoKSFcIiBbZGF0YVByb3ZpZGVyXT1cImRhdGFQcm92aWRlcigpXCIgW2FjdGlvbnNdPVwiYWN0aW9ucygpXCI+PC9tbmctdGFibGV2aWV3PlxufVxuIl19
|
|
@@ -4,14 +4,11 @@ import { toSignal } from '@angular/core/rxjs-interop';
|
|
|
4
4
|
import { RouterOutlet } from '@angular/router';
|
|
5
5
|
import { map } from 'rxjs/operators';
|
|
6
6
|
import { itemIdToDefined } from '@mediusinc/mng-commons/core';
|
|
7
|
-
import {
|
|
7
|
+
import { model } from '@mediusinc/mng-commons/model';
|
|
8
8
|
import { TableviewComponent } from '@mediusinc/mng-commons/tableview';
|
|
9
|
-
import {
|
|
10
|
-
import { RevEntityWithChangesDto } from '../../../api/models/revEntityWithChangesDto';
|
|
9
|
+
import { TableviewEditorTypeEnum, actionEditorDetails, editorDescriptor, tableviewDataProviderWithService, tableviewDescriptor } from '@mediusinc/mng-commons/tableview/api';
|
|
11
10
|
import { AuditRevisionsApiService } from '../../../api/services/audit-revisions-api.service';
|
|
12
11
|
import { AuditService } from '../../../api/services/audit.service';
|
|
13
|
-
import { RevEntityDetailed } from '../../../models/rev-entity-detailed.model';
|
|
14
|
-
import { RevEntity } from '../../../models/rev-entity.model';
|
|
15
12
|
import { AuditUtil } from '../../../utils/audit.util';
|
|
16
13
|
import { EntityChangesFieldComponent } from '../../entity-changes-field/entity-changes-field.component';
|
|
17
14
|
import * as i0 from "@angular/core";
|
|
@@ -25,13 +22,13 @@ export class AuditRevisionsPageComponent {
|
|
|
25
22
|
const revModel = this.revModel();
|
|
26
23
|
if (revModel) {
|
|
27
24
|
const idProperty = revModel.properties?.filter(prop => prop.isId).map(prop => prop.resolvedPropertyName)[0];
|
|
28
|
-
const
|
|
25
|
+
const revEntModel = model({ id: 'rev', title: 'rev', i18nBase: 'MngRevEntity' });
|
|
29
26
|
if (revModel.entityName)
|
|
30
|
-
|
|
27
|
+
revEntModel.withI18nBase(revModel.entityName);
|
|
31
28
|
if (idProperty)
|
|
32
|
-
|
|
33
|
-
const desc =
|
|
34
|
-
const detailsDescriptor =
|
|
29
|
+
revEntModel.withIdPropertyUnsafe(idProperty);
|
|
30
|
+
const desc = tableviewDescriptor(revEntModel);
|
|
31
|
+
const detailsDescriptor = editorDescriptor({ i18nBase: 'MngRevEntity', tableviewEditorType: TableviewEditorTypeEnum.Details });
|
|
35
32
|
detailsDescriptor.model.withIdPropertyUnsafe('revEntity.' + idProperty);
|
|
36
33
|
if (revModel.properties) {
|
|
37
34
|
AuditUtil.addColumnsFromModel(desc.table, revModel.properties);
|
|
@@ -47,29 +44,28 @@ export class AuditRevisionsPageComponent {
|
|
|
47
44
|
desc.withDetailsDescriptor(detailsDescriptor); // MngRevEntity is extended by MngRevEntityWithChangesDto, so no real harm here
|
|
48
45
|
return desc;
|
|
49
46
|
}
|
|
50
|
-
return
|
|
47
|
+
return tableviewDescriptor();
|
|
51
48
|
});
|
|
52
|
-
this.dataProvider = signal(
|
|
49
|
+
this.dataProvider = signal(tableviewDataProviderWithService(AuditRevisionsApiService).withGetAll((params, service) => service.getRevisionList(params).pipe(map(res => ({ data: res.data, totalCount: res.totalCount })))));
|
|
53
50
|
this.actions = computed(() => {
|
|
54
|
-
|
|
55
|
-
const detailsAction = ActionEditorDetailsDescriptor.createWithProvider(this.descriptor().detailsEditor, AuditRevisionsApiService).withFetchFunction(ctx => {
|
|
56
|
-
console.log(ctx);
|
|
51
|
+
const detailsAction = actionEditorDetails(this.descriptor().detailsEditor, AuditRevisionsApiService).withFetchFunction(ctx => {
|
|
57
52
|
return ctx.serviceInstance.getAllChangesForRevision(itemIdToDefined(ctx.parameters.itemId)).pipe(map(item => {
|
|
58
|
-
const revEntityWithChanges =
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
const revEntityWithChanges = {
|
|
54
|
+
rev: ctx.parameters.itemId,
|
|
55
|
+
revEntity: item.revEntity,
|
|
56
|
+
entityNameChangesMap: item.entityNameChangesMap
|
|
57
|
+
};
|
|
62
58
|
return revEntityWithChanges;
|
|
63
59
|
}));
|
|
64
60
|
});
|
|
65
61
|
return [detailsAction];
|
|
66
62
|
});
|
|
67
63
|
}
|
|
68
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
69
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
64
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditRevisionsPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
65
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: AuditRevisionsPageComponent, isStandalone: true, selector: "mng-audit-revisions-page", providers: [AuditRevisionsApiService], ngImport: i0, template: "@if (showTableview()) {\n <mng-tableview [descriptor]=\"descriptor()\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n", dependencies: [{ kind: "component", type: TableviewComponent, selector: "mng-tableview", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
70
66
|
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
67
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AuditRevisionsPageComponent, decorators: [{
|
|
72
68
|
type: Component,
|
|
73
69
|
args: [{ standalone: true, selector: 'mng-audit-revisions-page', imports: [TableviewComponent, AsyncPipe, RouterOutlet, JsonPipe], providers: [AuditRevisionsApiService], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (showTableview()) {\n <mng-tableview [descriptor]=\"descriptor()\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n" }]
|
|
74
70
|
}] });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL3JldmlzaW9ucy9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvcmV2aXNpb25zL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBRUgsNkJBQTZCLEVBQzdCLGdCQUFnQixFQUVoQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHVCQUF1QixFQUMxQixNQUFNLHNDQUFzQyxDQUFDO0FBRTlDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxZQUFZ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UUFDaEUsQ0FBQyxDQUFDLENBQUM7S0FDTjs4R0E5RFksMkJBQTJCO2tHQUEzQiwyQkFBMkIsdUVBSHpCLENBQUMsd0JBQXdCLENBQUMsMEJDakN6QywySkFHQSw0Q0Q2QmMsa0JBQWtCOzsyRkFJbkIsMkJBQTJCO2tCQVJ2QyxTQUFTO2lDQUNNLElBQUksWUFDTiwwQkFBMEIsV0FFM0IsQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsQ0FBQyxhQUNyRCxDQUFDLHdCQUF3QixDQUFDLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIEpzb25QaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3RvciwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Um91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge2l0ZW1JZFRvRGVmaW5lZH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7TW9kZWxEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5pbXBvcnQge1xuICAgIEFjdGlvbkRlc2NyaXB0b3JJbnN0LFxuICAgIEFjdGlvbkVkaXRvckRldGFpbHNEZXNjcmlwdG9yLFxuICAgIEVkaXRvckRlc2NyaXB0b3IsXG4gICAgRWRpdG9yRGVzY3JpcHRvckluc3QsXG4gICAgVGFibGV2aWV3RGF0YVByb3ZpZGVyLFxuICAgIFRhYmxldmlld0Rlc2NyaXB0b3IsXG4gICAgVGFibGV2aWV3RWRpdG9yVHlwZUVudW1cbn0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZXZpZXcvYXBpJztcblxuaW1wb3J0IHtSZXZFbnRpdHlXaXRoQ2hhbmdlc0R0b30gZnJvbSAnLi4vLi4vLi4vYXBpL21vZGVscy9yZXZFbnRpdHlXaXRoQ2hhbmdlc0R0byc7XG5pbXBvcnQge0F1ZGl0UmV2aXNpb25zQXBpU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2F1ZGl0LXJldmlzaW9ucy1hcGkuc2VydmljZSc7XG5pbXBvcnQge0F1ZGl0U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2F1ZGl0LnNlcnZpY2UnO1xuaW1wb3J0IHtSZXZFbnRpdHlEZXRhaWxlZH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Jldi1lbnRpdHktZGV0YWlsZWQubW9kZWwnO1xuaW1wb3J0IHtSZXZFbnRpdHl9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZXYtZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7QXVkaXRVdGlsfSBmcm9tICcuLi8uLi8uLi91dGlscy9hdWRpdC51dGlsJztcbmltcG9ydCB7RW50aXR5Q2hhbmdlc0ZpZWxkQ29tcG9uZW50fSBmcm9tICcuLi8uLi9lbnRpdHktY2hhbmdlcy1maWVsZC9lbnRpdHktY2hhbmdlcy1maWVsZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnbW5nLWF1ZGl0LXJldmlzaW9ucy1wYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGltcG9ydHM6IFtUYWJsZXZpZXdDb21wb25lbnQsIEFzeW5jUGlwZSwgUm91dGVyT3V0bGV0LCBKc29uUGlwZV0sXG4gICAgcHJvdmlkZXJzOiBbQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdFJldmlzaW9uc1BhZ2VDb21wb25lbnQge1xuICAgIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgIHByaXZhdGUgYXVkaXRTZXJ2aWNlID0gaW5qZWN0KEF1ZGl0U2VydmljZSk7XG5cbiAgICBwcml2YXRlIHJldk1vZGVsID0gdG9TaWduYWwodGhpcy5hdWRpdFNlcnZpY2UucmV2TW9kZWwkKTtcbiAgICBwdWJsaWMgc2hvd1RhYmxldmlldyA9IGNvbXB1dGVkKCgpID0+IHRoaXMucmV2TW9kZWwoKSAhPSBudWxsKTtcblxuICAgIHB1YmxpYyBkZXNjcmlwdG9yID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCByZXZNb2RlbCA9IHRoaXMucmV2TW9kZWwoKTtcbiAgICAgICAgaWYgKHJldk1vZGVsKSB7XG4gICAgICAgICAgICBjb25zdCBpZFByb3BlcnR5ID0gcmV2TW9kZWwucHJvcGVydGllcz8uZmlsdGVyKHByb3AgPT4gcHJvcC5pc0lkKS5tYXAocHJvcCA9PiBwcm9wLnJlc29sdmVkUHJvcGVydHlOYW1lKVswXTtcblxuICAgICAgICAgICAgY29uc3QgbW9kZWwgPSBNb2RlbERlc2NyaXB0b3IuZnJvbUNsYXNzKFJldkVudGl0eSk7XG4gICAgICAgICAgICBpZiAocmV2TW9kZWwuZW50aXR5TmFtZSkgbW9kZWwud2l0aEkxOG5CYXNlKHJldk1vZGVsLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgaWYgKGlkUHJvcGVydHkpIG1vZGVsLndpdGhJZFByb3BlcnR5VW5zYWZlKGlkUHJvcGVydHkpO1xuXG4gICAgICAgICAgICBjb25zdCBkZXNjID0gVGFibGV2aWV3RGVzY3JpcHRvci5mcm9tTW9kZWwobW9kZWwpO1xuXG4gICAgICAgICAgICBjb25zdCBkZXRhaWxzRGVzY3JpcHRvciA9IEVkaXRvckRlc2NyaXB0b3IuZnJvbUNsYXNzKFJldkVudGl0eVdpdGhDaGFuZ2VzRHRvLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bS5EZXRhaWxzKTtcbiAgICAgICAgICAgIGRldGFpbHNEZXNjcmlwdG9yLm1vZGVsLndpdGhJZFByb3BlcnR5VW5zYWZlKCdyZXZFbnRpdHkuJyArIGlkUHJvcGVydHkpO1xuXG4gICAgICAgICAgICBpZiAocmV2TW9kZWwucHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRDb2x1bW5zRnJvbU1vZGVsKGRlc2MudGFibGUsIHJldk1vZGVsLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRGaWVsZHNGcm9tTW9kZWw8UmV2RW50aXR5V2l0aENoYW5nZXNEdG8+KGRldGFpbHNEZXNjcmlwdG9yLCByZXZNb2RlbC5wcm9wZXJ0aWVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGV0YWlsc0Rlc2NyaXB0b3JcbiAgICAgICAgICAgICAgICAuYWRkRmllbGQoJ2VudGl0eU5hbWVDaGFuZ2VzTWFwJylcbiAgICAgICAgICAgICAgICAuYXNDdXN0b21Db21wb25lbnQoRW50aXR5Q2hhbmdlc0ZpZWxkQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkV3JhcHBlcnM6IFsnZmllbGQtbm8tbGFiZWwnXSxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRzOiB7aW5qZWN0b3I6IHRoaXMuaW5qZWN0b3J9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAud2l0aERpc2FibGVkKCk7XG5cbiAgICAgICAgICAgIGRlc2Mud2l0aERldGFpbHNEZXNjcmlwdG9yKGRldGFpbHNEZXNjcmlwdG9yIGFzIEVkaXRvckRlc2NyaXB0b3JJbnN0PFJldkVudGl0eT4pOyAvLyBNbmdSZXZFbnRpdHkgaXMgZXh0ZW5kZWQgYnkgTW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG8sIHNvIG5vIHJlYWwgaGFybSBoZXJlXG5cbiAgICAgICAgICAgIHJldHVybiBkZXNjO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBUYWJsZXZpZXdEZXNjcmlwdG9yLmZyb21DbGFzcyhSZXZFbnRpdHkpO1xuICAgIH0pO1xuICAgIHB1YmxpYyBkYXRhUHJvdmlkZXIgPSBzaWduYWwoXG4gICAgICAgIFRhYmxldmlld0RhdGFQcm92aWRlci5mcm9tQ2xhc3NXaXRoU2VydmljZShSZXZFbnRpdHksIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSkud2l0aEdldEFsbCgocGFyYW1zLCBzZXJ2aWNlKSA9PlxuICAgICAgICAgICAgc2VydmljZS5nZXRSZXZpc2lvbkxpc3QocGFyYW1zKS5waXBlKG1hcChyZXMgPT4gKHtkYXRhOiByZXMuZGF0YSwgdG90YWxDb3VudDogcmVzLnRvdGFsQ291bnR9KSkpXG4gICAgICAgIClcbiAgICApO1xuICAgIHB1YmxpYyBhY3Rpb25zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmRlc2NyaXB0b3IoKSk7XG4gICAgICAgIGNvbnN0IGRldGFpbHNBY3Rpb24gPSBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvci5jcmVhdGVXaXRoUHJvdmlkZXIodGhpcy5kZXNjcmlwdG9yKCkuZGV0YWlsc0VkaXRvciwgQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlKS53aXRoRmV0Y2hGdW5jdGlvbihjdHggPT4ge1xuICAgICAgICAgICAgY29uc29sZS5sb2coY3R4KTtcbiAgICAgICAgICAgIHJldHVybiBjdHguc2VydmljZUluc3RhbmNlLmdldEFsbENoYW5nZXNGb3JSZXZpc2lvbihpdGVtSWRUb0RlZmluZWQoY3R4LnBhcmFtZXRlcnMuaXRlbUlkKSkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhDaGFuZ2VzID0gbmV3IFJldkVudGl0eURldGFpbGVkKCk7XG4gICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhDaGFuZ2VzLnJldiA9IGN0eC5wYXJhbWV0ZXJzLml0ZW1JZDtcbiAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aENoYW5nZXMucmV2RW50aXR5ID0gaXRlbS5yZXZFbnRpdHk7XG4gICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhDaGFuZ2VzLmVudGl0eU5hbWVDaGFuZ2VzTWFwID0gaXRlbS5lbnRpdHlOYW1lQ2hhbmdlc01hcDtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldkVudGl0eVdpdGhDaGFuZ2VzO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gW2RldGFpbHNBY3Rpb25dIGFzIEFjdGlvbkRlc2NyaXB0b3JJbnN0PFJldkVudGl0eT5bXTtcbiAgICB9KTtcbn1cbiIsIkBpZiAoc2hvd1RhYmxldmlldygpKSB7XG4gICAgPG1uZy10YWJsZXZpZXcgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvcigpXCIgW2RhdGFQcm92aWRlcl09XCJkYXRhUHJvdmlkZXIoKVwiIFthY3Rpb25zXT1cImFjdGlvbnMoKVwiPjwvbW5nLXRhYmxldmlldz5cbn1cbiJdfQ==
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL3JldmlzaW9ucy9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvcmV2aXNpb25zL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBR0gsdUJBQXVCLEVBQ3ZCLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUN0QixNQUFNLHNDQUFzQyxDQUFDO0FBRzlDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUdqRSxPQUFPLEVBQUMsU0FBUyxF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Z3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0b3IsIGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1JvdXRlck91dGxldH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtpdGVtSWRUb0RlZmluZWR9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge21vZGVsfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5pbXBvcnQge1xuICAgIEFjdGlvbkRlc2NyaXB0b3JJbnN0LFxuICAgIEVkaXRvckRlc2NyaXB0b3JJbnN0LFxuICAgIFRhYmxldmlld0VkaXRvclR5cGVFbnVtLFxuICAgIGFjdGlvbkVkaXRvckRldGFpbHMsXG4gICAgZWRpdG9yRGVzY3JpcHRvcixcbiAgICB0YWJsZXZpZXdEYXRhUHJvdmlkZXJXaXRoU2VydmljZSxcbiAgICB0YWJsZXZpZXdEZXNjcmlwdG9yXG59IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbmltcG9ydCB7UmV2RW50aXR5V2l0aENoYW5nZXNEdG99IGZyb20gJy4uLy4uLy4uL2FwaS9tb2RlbHMvcmV2RW50aXR5V2l0aENoYW5nZXNEdG8nO1xuaW1wb3J0IHtBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC1yZXZpc2lvbnMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHtBdWRpdFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7UmV2RW50aXR5RGV0YWlsZWR9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZXYtZW50aXR5LWRldGFpbGVkLm1vZGVsJztcbmltcG9ydCB7UmV2RW50aXR5fSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2LWVudGl0eS5tb2RlbCc7XG5pbXBvcnQge0F1ZGl0VXRpbH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYXVkaXQudXRpbCc7XG5pbXBvcnQge0VudGl0eUNoYW5nZXNGaWVsZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZW50aXR5LWNoYW5nZXMtZmllbGQvZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1hdWRpdC1yZXZpc2lvbnMtcGFnZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBpbXBvcnRzOiBbVGFibGV2aWV3Q29tcG9uZW50LCBBc3luY1BpcGUsIFJvdXRlck91dGxldCwgSnNvblBpcGVdLFxuICAgIHByb3ZpZGVyczogW0F1ZGl0UmV2aXNpb25zQXBpU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQXVkaXRSZXZpc2lvbnNQYWdlQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICBwcml2YXRlIGF1ZGl0U2VydmljZSA9IGluamVjdChBdWRpdFNlcnZpY2UpO1xuXG4gICAgcHJpdmF0ZSByZXZNb2RlbCA9IHRvU2lnbmFsKHRoaXMuYXVkaXRTZXJ2aWNlLnJldk1vZGVsJCk7XG4gICAgcHVibGljIHNob3dUYWJsZXZpZXcgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnJldk1vZGVsKCkgIT0gbnVsbCk7XG5cbiAgICBwdWJsaWMgZGVzY3JpcHRvciA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgcmV2TW9kZWwgPSB0aGlzLnJldk1vZGVsKCk7XG4gICAgICAgIGlmIChyZXZNb2RlbCkge1xuICAgICAgICAgICAgY29uc3QgaWRQcm9wZXJ0eSA9IHJldk1vZGVsLnByb3BlcnRpZXM/LmZpbHRlcihwcm9wID0+IHByb3AuaXNJZCkubWFwKHByb3AgPT4gcHJvcC5yZXNvbHZlZFByb3BlcnR5TmFtZSlbMF07XG5cbiAgICAgICAgICAgIGNvbnN0IHJldkVudE1vZGVsID0gbW9kZWw8UmV2RW50aXR5Pih7aWQ6ICdyZXYnLCB0aXRsZTogJ3JldicsIGkxOG5CYXNlOiAnTW5nUmV2RW50aXR5J30pO1xuICAgICAgICAgICAgaWYgKHJldk1vZGVsLmVudGl0eU5hbWUpIHJldkVudE1vZGVsLndpdGhJMThuQmFzZShyZXZNb2RlbC5lbnRpdHlOYW1lKTtcbiAgICAgICAgICAgIGlmIChpZFByb3BlcnR5KSByZXZFbnRNb2RlbC53aXRoSWRQcm9wZXJ0eVVuc2FmZShpZFByb3BlcnR5KTtcblxuICAgICAgICAgICAgY29uc3QgZGVzYyA9IHRhYmxldmlld0Rlc2NyaXB0b3IocmV2RW50TW9kZWwpO1xuXG4gICAgICAgICAgICBjb25zdCBkZXRhaWxzRGVzY3JpcHRvciA9IGVkaXRvckRlc2NyaXB0b3I8UmV2RW50aXR5V2l0aENoYW5nZXNEdG8+KHtpMThuQmFzZTogJ01uZ1JldkVudGl0eScsIHRhYmxldmlld0VkaXRvclR5cGU6IFRhYmxldmlld0VkaXRvclR5cGVFbnVtLkRldGFpbHN9KTtcbiAgICAgICAgICAgIGRldGFpbHNEZXNjcmlwdG9yLm1vZGVsLndpdGhJZFByb3BlcnR5VW5zYWZlKCdyZXZFbnRpdHkuJyArIGlkUHJvcGVydHkpO1xuXG4gICAgICAgICAgICBpZiAocmV2TW9kZWwucHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRDb2x1bW5zRnJvbU1vZGVsKGRlc2MudGFibGUsIHJldk1vZGVsLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRGaWVsZHNGcm9tTW9kZWw8UmV2RW50aXR5V2l0aENoYW5nZXNEdG8+KGRldGFpbHNEZXNjcmlwdG9yLCByZXZNb2RlbC5wcm9wZXJ0aWVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGV0YWlsc0Rlc2NyaXB0b3JcbiAgICAgICAgICAgICAgICAuYWRkRmllbGQoJ2VudGl0eU5hbWVDaGFuZ2VzTWFwJylcbiAgICAgICAgICAgICAgICAuYXNDdXN0b21Db21wb25lbnQoRW50aXR5Q2hhbmdlc0ZpZWxkQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkV3JhcHBlcnM6IFsnZmllbGQtbm8tbGFiZWwnXSxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRzOiB7aW5qZWN0b3I6IHRoaXMuaW5qZWN0b3J9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAud2l0aERpc2FibGVkKCk7XG5cbiAgICAgICAgICAgIGRlc2Mud2l0aERldGFpbHNEZXNjcmlwdG9yKGRldGFpbHNEZXNjcmlwdG9yIGFzIEVkaXRvckRlc2NyaXB0b3JJbnN0PFJldkVudGl0eT4pOyAvLyBNbmdSZXZFbnRpdHkgaXMgZXh0ZW5kZWQgYnkgTW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG8sIHNvIG5vIHJlYWwgaGFybSBoZXJlXG5cbiAgICAgICAgICAgIHJldHVybiBkZXNjO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEZXNjcmlwdG9yPFJldkVudGl0eT4oKTtcbiAgICB9KTtcbiAgICBwdWJsaWMgZGF0YVByb3ZpZGVyID0gc2lnbmFsKFxuICAgICAgICB0YWJsZXZpZXdEYXRhUHJvdmlkZXJXaXRoU2VydmljZTxBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2UsIFJldkVudGl0eT4oQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlKS53aXRoR2V0QWxsKChwYXJhbXMsIHNlcnZpY2UpID0+XG4gICAgICAgICAgICBzZXJ2aWNlLmdldFJldmlzaW9uTGlzdChwYXJhbXMpLnBpcGUobWFwKHJlcyA9PiAoe2RhdGE6IHJlcy5kYXRhLCB0b3RhbENvdW50OiByZXMudG90YWxDb3VudH0pKSlcbiAgICAgICAgKVxuICAgICk7XG4gICAgcHVibGljIGFjdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRldGFpbHNBY3Rpb24gPSBhY3Rpb25FZGl0b3JEZXRhaWxzKHRoaXMuZGVzY3JpcHRvcigpLmRldGFpbHNFZGl0b3IsIEF1ZGl0UmV2aXNpb25zQXBpU2VydmljZSkud2l0aEZldGNoRnVuY3Rpb24oY3R4ID0+IHtcbiAgICAgICAgICAgIHJldHVybiBjdHguc2VydmljZUluc3RhbmNlLmdldEFsbENoYW5nZXNGb3JSZXZpc2lvbihpdGVtSWRUb0RlZmluZWQoY3R4LnBhcmFtZXRlcnMuaXRlbUlkKSkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhDaGFuZ2VzOiBSZXZFbnRpdHlEZXRhaWxlZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldjogY3R4LnBhcmFtZXRlcnMuaXRlbUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5OiBpdGVtLnJldkVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eU5hbWVDaGFuZ2VzTWFwOiBpdGVtLmVudGl0eU5hbWVDaGFuZ2VzTWFwXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXZFbnRpdHlXaXRoQ2hhbmdlcztcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIFtkZXRhaWxzQWN0aW9uXSBhcyBBY3Rpb25EZXNjcmlwdG9ySW5zdDxSZXZFbnRpdHk+W107XG4gICAgfSk7XG59XG4iLCJAaWYgKHNob3dUYWJsZXZpZXcoKSkge1xuICAgIDxtbmctdGFibGV2aWV3IFtkZXNjcmlwdG9yXT1cImRlc2NyaXB0b3IoKVwiIFtkYXRhUHJvdmlkZXJdPVwiZGF0YVByb3ZpZGVyKClcIiBbYWN0aW9uc109XCJhY3Rpb25zKClcIj48L21uZy10YWJsZXZpZXc+XG59XG4iXX0=
|
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
let EntityRevisionChangeState = class EntityRevisionChangeState {
|
|
4
|
-
};
|
|
5
|
-
EntityRevisionChangeState = __decorate([
|
|
6
|
-
TypeName('MngEntityRevisionChangeState')
|
|
7
|
-
], EntityRevisionChangeState);
|
|
8
|
-
export { EntityRevisionChangeState };
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUs5QyxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtDQUlyQyxDQUFBO0FBSlkseUJBQXlCO0lBRHJDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQztHQUM1Qix5QkFBeUIsQ0FJckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge1JldmlzaW9uVHlwZUR0b30gZnJvbSAnLi4vYXBpL21vZGVscy9yZXZpc2lvblR5cGUnO1xuXG5AVHlwZU5hbWUoJ01uZ0VudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGUnKVxuZXhwb3J0IGNsYXNzIEVudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGUge1xuICAgIHJldlR5cGU/OiBSZXZpc2lvblR5cGVEdG87XG4gICAgY29sb3I/OiAnZ3JlZW4nIHwgJ3JlZCc7XG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cbiJdfQ==
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UmV2aXNpb25UeXBlRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL3JldmlzaW9uVHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZSB7XG4gICAgcmV2VHlwZT86IFJldmlzaW9uVHlwZUR0bztcbiAgICBjb2xvcj86ICdncmVlbicgfCAncmVkJztcbiAgICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuIl19
|
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
let EntityRevisionChanges = class EntityRevisionChanges {
|
|
4
|
-
};
|
|
5
|
-
EntityRevisionChanges = __decorate([
|
|
6
|
-
TypeName('MngEntityChanges')
|
|
7
|
-
], EntityRevisionChanges);
|
|
8
|
-
export { EntityRevisionChanges };
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBSzlDLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0NBR2pDLENBQUE7QUFIWSxxQkFBcUI7SUFEakMsUUFBUSxDQUFDLGtCQUFrQixDQUFDO0dBQ2hCLHFCQUFxQixDQUdqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZU5hbWV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmltcG9ydCB7RW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZX0gZnJvbSAnLi9lbnRpdHktcmV2aXNpb24tY2hhbmdlLXN0YXRlLm1vZGVsJztcblxuQFR5cGVOYW1lKCdNbmdFbnRpdHlDaGFuZ2VzJylcbmV4cG9ydCBjbGFzcyBFbnRpdHlSZXZpc2lvbkNoYW5nZXMge1xuICAgIGVudGl0eVR5cGU/OiBzdHJpbmc7XG4gICAgaXRlbXM/OiBFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlW107XG59XG4iXX0=
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlfSBmcm9tICcuL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eVJldmlzaW9uQ2hhbmdlcyB7XG4gICAgZW50aXR5VHlwZT86IHN0cmluZztcbiAgICBpdGVtcz86IEVudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGVbXTtcbn1cbiJdfQ==
|
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { GuiEntityModelDto } from '../api/models/guiEntityModel';
|
|
4
|
-
let GuiEntityModelWithI18n = class GuiEntityModelWithI18n extends GuiEntityModelDto {
|
|
5
|
-
};
|
|
6
|
-
GuiEntityModelWithI18n = __decorate([
|
|
7
|
-
TypeName('MngGuiEntityModelWithI18n')
|
|
8
|
-
], GuiEntityModelWithI18n);
|
|
9
|
-
export { GuiEntityModelWithI18n };
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2d1aUVudGl0eU1vZGVsV2l0aEkxOG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUd4RCxJQUFNLHNCQUFzQixHQUE1QixNQUFNLHNCQUF1QixTQUFRLGlCQUFpQjtDQUU1RCxDQUFBO0FBRlksc0JBQXNCO0lBRGxDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQztHQUN6QixzQkFBc0IsQ0FFbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge0d1aUVudGl0eU1vZGVsRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL2d1aUVudGl0eU1vZGVsJztcblxuQFR5cGVOYW1lKCdNbmdHdWlFbnRpdHlNb2RlbFdpdGhJMThuJylcbmV4cG9ydCBjbGFzcyBHdWlFbnRpdHlNb2RlbFdpdGhJMThuIGV4dGVuZHMgR3VpRW50aXR5TW9kZWxEdG8ge1xuICAgIGVudGl0eU5hbWVJMThuPzogc3RyaW5nO1xufVxuIl19
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2d1aUVudGl0eU1vZGVsV2l0aEkxOG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R3VpRW50aXR5TW9kZWxEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvZ3VpRW50aXR5TW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEd1aUVudGl0eU1vZGVsV2l0aEkxOG4gZXh0ZW5kcyBHdWlFbnRpdHlNb2RlbER0byB7XG4gICAgZW50aXR5TmFtZUkxOG4/OiBzdHJpbmc7XG59XG4iXX0=
|