vcomply-workflow-engine 6.1.49 → 6.1.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/esm2022/lib/constants/common.constants.mjs +2 -1
  2. package/esm2022/lib/pipes/pipes.module.mjs +10 -5
  3. package/esm2022/lib/pipes/responsibility-checked.pipe.mjs +19 -0
  4. package/esm2022/lib/services/common.service.mjs +15 -1
  5. package/esm2022/lib/sharedComponents/assessment-list/assessment-list.component.mjs +3 -3
  6. package/esm2022/lib/sharedComponents/assessment-preview/preview/preview.component.mjs +6 -3
  7. package/esm2022/lib/sharedComponents/frequency/frequency-container/frequency-container.component.mjs +5 -3
  8. package/esm2022/lib/sharedComponents/frequency/frequency-on-completion-of/frequency-on-completion-of.component.mjs +9 -12
  9. package/esm2022/lib/sharedComponents/frequency/frequency-responsibility-list/frequency-responsibility-list.component.mjs +53 -23
  10. package/esm2022/lib/sharedComponents/frequency/frequency-responsibility-list/sub-responsibility/sub-responsibility.component.mjs +7 -3
  11. package/esm2022/lib/sharedComponents/frequency/frequency.service.mjs +8 -4
  12. package/esm2022/lib/ui-kit/avatar-v2/avatar-v2.component.mjs +1 -2
  13. package/esm2022/lib/workflow-compliance/workflow-compliance.component.mjs +18 -3
  14. package/esm2022/lib/workflow-engine-container/workflow-engine-container.component.mjs +1 -2
  15. package/esm2022/lib/workflow-policy/workflow-policy.component.mjs +1 -1
  16. package/esm2022/lib/workflow-program/create-program-ui/assessment-picker/assessment-picker.component.mjs +1 -1
  17. package/fesm2022/vcomply-workflow-engine.mjs +126 -39
  18. package/fesm2022/vcomply-workflow-engine.mjs.map +1 -1
  19. package/lib/constants/common.constants.d.ts +1 -0
  20. package/lib/pipes/pipes.module.d.ts +3 -2
  21. package/lib/pipes/responsibility-checked.pipe.d.ts +7 -0
  22. package/lib/services/common.service.d.ts +9 -0
  23. package/lib/sharedComponents/assessment-preview/preview/preview.component.d.ts +2 -1
  24. package/lib/sharedComponents/frequency/frequency-container/frequency-container.component.d.ts +2 -1
  25. package/lib/sharedComponents/frequency/frequency-on-completion-of/frequency-on-completion-of.component.d.ts +2 -2
  26. package/lib/sharedComponents/frequency/frequency-responsibility-list/frequency-responsibility-list.component.d.ts +5 -2
  27. package/lib/sharedComponents/frequency/frequency-responsibility-list/sub-responsibility/sub-responsibility.component.d.ts +2 -1
  28. package/lib/workflow-compliance/workflow-compliance.component.d.ts +2 -0
  29. package/lib/workflow-risk/workflow-risk.component.d.ts +1 -1
  30. package/package.json +1 -1
@@ -1,2 +1,3 @@
1
1
  export const NO_DATA_FOUND_IMAGE = 'No results matched your search criteria.';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL2NvbnN0YW50cy9jb21tb24uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE5PX0RBVEFfRk9VTkRfSU1BR0UgPSAnTm8gcmVzdWx0cyBtYXRjaGVkIHlvdXIgc2VhcmNoIGNyaXRlcmlhLic7Il19
2
+ export const PAGINATION_LIMIT = 30;
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL2NvbnN0YW50cy9jb21tb24uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLDBDQUEwQyxDQUFDO0FBRTlFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBOT19EQVRBX0ZPVU5EX0lNQUdFID0gJ05vIHJlc3VsdHMgbWF0Y2hlZCB5b3VyIHNlYXJjaCBjcml0ZXJpYS4nO1xuXG5leHBvcnQgY29uc3QgUEFHSU5BVElPTl9MSU1JVCA9IDMwOyJdfQ==
@@ -14,6 +14,7 @@ import { WithinStructurePipe } from './within.pipe';
14
14
  import { UserPipe } from './user.pipe';
15
15
  import { GetEditorConfigPipe } from './get-editor-config.pipe';
16
16
  import { FormatDatePipe } from './format-date.pipe';
17
+ import { ResponsibilityCheckedPipe } from './responsibility-checked.pipe';
17
18
  import * as i0 from "@angular/core";
18
19
  export class PipesModule {
19
20
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -30,7 +31,8 @@ export class PipesModule {
30
31
  WithinStructurePipe,
31
32
  UserPipe,
32
33
  GetEditorConfigPipe,
33
- FormatDatePipe], imports: [CommonModule], exports: [DataTypePipe,
34
+ FormatDatePipe,
35
+ ResponsibilityCheckedPipe], imports: [CommonModule], exports: [DataTypePipe,
34
36
  FilterPipe,
35
37
  ListMapperPipe,
36
38
  SearchPipe,
@@ -43,7 +45,8 @@ export class PipesModule {
43
45
  WithinStructurePipe,
44
46
  UserPipe,
45
47
  GetEditorConfigPipe,
46
- FormatDatePipe] }); }
48
+ FormatDatePipe,
49
+ ResponsibilityCheckedPipe] }); }
47
50
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PipesModule, imports: [CommonModule] }); }
48
51
  }
49
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PipesModule, decorators: [{
@@ -63,7 +66,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
63
66
  WithinStructurePipe,
64
67
  UserPipe,
65
68
  GetEditorConfigPipe,
66
- FormatDatePipe
69
+ FormatDatePipe,
70
+ ResponsibilityCheckedPipe
67
71
  ],
68
72
  imports: [CommonModule],
69
73
  exports: [
@@ -80,8 +84,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
80
84
  WithinStructurePipe,
81
85
  UserPipe,
82
86
  GetEditorConfigPipe,
83
- FormatDatePipe
87
+ FormatDatePipe,
88
+ ResponsibilityCheckedPipe
84
89
  ],
85
90
  }]
86
91
  }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvcGlwZXMvcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyRkFBMkYsQ0FBQztBQUMvSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQXFDcEQsTUFBTSxPQUFPLFdBQVc7K0dBQVgsV0FBVztnSEFBWCxXQUFXLGlCQWpDcEIsWUFBWTtZQUNaLFVBQVU7WUFDVixjQUFjO1lBQ2QsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQix1QkFBdUI7WUFDdkIsY0FBYztZQUNkLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixRQUFRO1lBQ1IsbUJBQW1CO1lBQ25CLGNBQWMsYUFFTixZQUFZLGFBRXBCLFlBQVk7WUFDWixVQUFVO1lBQ1YsY0FBYztZQUNkLFVBQVU7WUFDVixnQkFBZ0I7WUFDaEIsdUJBQXVCO1lBQ3ZCLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIsUUFBUTtZQUNSLG1CQUFtQjtZQUNuQixjQUFjO2dIQUdMLFdBQVcsWUFsQlosWUFBWTs7NEZBa0JYLFdBQVc7a0JBbkN2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsY0FBYzt3QkFDZCxVQUFVO3dCQUNWLGdCQUFnQjt3QkFDaEIsdUJBQXVCO3dCQUN2QixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsUUFBUTt3QkFDUixtQkFBbUI7d0JBQ25CLGNBQWM7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixVQUFVO3dCQUNWLGNBQWM7d0JBQ2QsVUFBVTt3QkFDVixnQkFBZ0I7d0JBQ2hCLHVCQUF1Qjt3QkFDdkIsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IsbUJBQW1CO3dCQUNuQixjQUFjO3FCQUNmO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRhVHlwZVBpcGUgfSBmcm9tICcuL2RhdGEtdHlwZS5waXBlJztcbmltcG9ydCB7IEZpbHRlclBpcGUgfSBmcm9tICcuL2ZpbHRlci5waXBlJztcbmltcG9ydCB7IExpc3RNYXBwZXJQaXBlIH0gZnJvbSAnLi9saXN0LW1hcHBlci5waXBlJztcbmltcG9ydCB7IFNlYXJjaFBpcGUgfSBmcm9tICcuL3NlYXJjaC5waXBlJztcbmltcG9ydCB7IFNwYWNlQnJlYWtlclBpcGUgfSBmcm9tICcuL3NwYWNlLWJyZWFrZXIucGlwZSc7XG5pbXBvcnQgeyBVbmNhdGVnb3JpemVkRmlsdGVyUGlwZSB9IGZyb20gJy4vdW5jYXRlZ29yaXplZC1maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBVc2VyRmlsdGVyUGlwZSB9IGZyb20gJy4vdXNlci1maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBUb29sdGlwTWVzc2FnZVBpcGUgfSBmcm9tICcuLi93b3JrZmxvdy1wcm9ncmFtL2NyZWF0ZS1wcm9ncmFtLXVpL2RlZmluZS1mcmFtZXdvcmstbGlzdGluZy9waXBlcy90b29sdGlwLW1lc3NhZ2UucGlwZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXJQaXBlIH0gZnJvbSAnLi9kb20tc2FuaXRpemVyLnBpcGUnO1xuaW1wb3J0IHsgSXNSZWFkTW9yZVBpcGUgfSBmcm9tICcuL2lzLXJlYWQtbW9yZS5waXBlJztcbmltcG9ydCB7IFdpdGhpblN0cnVjdHVyZVBpcGUgfSBmcm9tICcuL3dpdGhpbi5waXBlJztcbmltcG9ydCB7IFVzZXJQaXBlIH0gZnJvbSAnLi91c2VyLnBpcGUnO1xuaW1wb3J0IHsgR2V0RWRpdG9yQ29uZmlnUGlwZSB9IGZyb20gJy4vZ2V0LWVkaXRvci1jb25maWcucGlwZSc7XG5pbXBvcnQgeyBGb3JtYXREYXRlUGlwZSB9IGZyb20gJy4vZm9ybWF0LWRhdGUucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERhdGFUeXBlUGlwZSxcbiAgICBGaWx0ZXJQaXBlLFxuICAgIExpc3RNYXBwZXJQaXBlLFxuICAgIFNlYXJjaFBpcGUsXG4gICAgU3BhY2VCcmVha2VyUGlwZSxcbiAgICBVbmNhdGVnb3JpemVkRmlsdGVyUGlwZSxcbiAgICBVc2VyRmlsdGVyUGlwZSxcbiAgICBUb29sdGlwTWVzc2FnZVBpcGUsXG4gICAgRG9tU2FuaXRpemVyUGlwZSxcbiAgICBJc1JlYWRNb3JlUGlwZSxcbiAgICBXaXRoaW5TdHJ1Y3R1cmVQaXBlLFxuICAgIFVzZXJQaXBlLFxuICAgIEdldEVkaXRvckNvbmZpZ1BpcGUsXG4gICAgRm9ybWF0RGF0ZVBpcGVcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBEYXRhVHlwZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBMaXN0TWFwcGVyUGlwZSxcbiAgICBTZWFyY2hQaXBlLFxuICAgIFNwYWNlQnJlYWtlclBpcGUsXG4gICAgVW5jYXRlZ29yaXplZEZpbHRlclBpcGUsXG4gICAgVXNlckZpbHRlclBpcGUsXG4gICAgVG9vbHRpcE1lc3NhZ2VQaXBlLFxuICAgIERvbVNhbml0aXplclBpcGUsXG4gICAgSXNSZWFkTW9yZVBpcGUsXG4gICAgV2l0aGluU3RydWN0dXJlUGlwZSxcbiAgICBVc2VyUGlwZSxcbiAgICBHZXRFZGl0b3JDb25maWdQaXBlLFxuICAgIEZvcm1hdERhdGVQaXBlXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFBpcGVzTW9kdWxlIHt9XG5cbiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvcGlwZXMvcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyRkFBMkYsQ0FBQztBQUMvSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQXVDMUUsTUFBTSxPQUFPLFdBQVc7K0dBQVgsV0FBVztnSEFBWCxXQUFXLGlCQW5DcEIsWUFBWTtZQUNaLFVBQVU7WUFDVixjQUFjO1lBQ2QsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQix1QkFBdUI7WUFDdkIsY0FBYztZQUNkLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixRQUFRO1lBQ1IsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCx5QkFBeUIsYUFFakIsWUFBWSxhQUVwQixZQUFZO1lBQ1osVUFBVTtZQUNWLGNBQWM7WUFDZCxVQUFVO1lBQ1YsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLFFBQVE7WUFDUixtQkFBbUI7WUFDbkIsY0FBYztZQUNkLHlCQUF5QjtnSEFHaEIsV0FBVyxZQW5CWixZQUFZOzs0RkFtQlgsV0FBVztrQkFyQ3ZCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixjQUFjO3dCQUNkLFVBQVU7d0JBQ1YsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCx5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixjQUFjO3dCQUNkLFVBQVU7d0JBQ1YsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCx5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRhVHlwZVBpcGUgfSBmcm9tICcuL2RhdGEtdHlwZS5waXBlJztcbmltcG9ydCB7IEZpbHRlclBpcGUgfSBmcm9tICcuL2ZpbHRlci5waXBlJztcbmltcG9ydCB7IExpc3RNYXBwZXJQaXBlIH0gZnJvbSAnLi9saXN0LW1hcHBlci5waXBlJztcbmltcG9ydCB7IFNlYXJjaFBpcGUgfSBmcm9tICcuL3NlYXJjaC5waXBlJztcbmltcG9ydCB7IFNwYWNlQnJlYWtlclBpcGUgfSBmcm9tICcuL3NwYWNlLWJyZWFrZXIucGlwZSc7XG5pbXBvcnQgeyBVbmNhdGVnb3JpemVkRmlsdGVyUGlwZSB9IGZyb20gJy4vdW5jYXRlZ29yaXplZC1maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBVc2VyRmlsdGVyUGlwZSB9IGZyb20gJy4vdXNlci1maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBUb29sdGlwTWVzc2FnZVBpcGUgfSBmcm9tICcuLi93b3JrZmxvdy1wcm9ncmFtL2NyZWF0ZS1wcm9ncmFtLXVpL2RlZmluZS1mcmFtZXdvcmstbGlzdGluZy9waXBlcy90b29sdGlwLW1lc3NhZ2UucGlwZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXJQaXBlIH0gZnJvbSAnLi9kb20tc2FuaXRpemVyLnBpcGUnO1xuaW1wb3J0IHsgSXNSZWFkTW9yZVBpcGUgfSBmcm9tICcuL2lzLXJlYWQtbW9yZS5waXBlJztcbmltcG9ydCB7IFdpdGhpblN0cnVjdHVyZVBpcGUgfSBmcm9tICcuL3dpdGhpbi5waXBlJztcbmltcG9ydCB7IFVzZXJQaXBlIH0gZnJvbSAnLi91c2VyLnBpcGUnO1xuaW1wb3J0IHsgR2V0RWRpdG9yQ29uZmlnUGlwZSB9IGZyb20gJy4vZ2V0LWVkaXRvci1jb25maWcucGlwZSc7XG5pbXBvcnQgeyBGb3JtYXREYXRlUGlwZSB9IGZyb20gJy4vZm9ybWF0LWRhdGUucGlwZSc7XG5pbXBvcnQgeyBSZXNwb25zaWJpbGl0eUNoZWNrZWRQaXBlIH0gZnJvbSAnLi9yZXNwb25zaWJpbGl0eS1jaGVja2VkLnBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBEYXRhVHlwZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBMaXN0TWFwcGVyUGlwZSxcbiAgICBTZWFyY2hQaXBlLFxuICAgIFNwYWNlQnJlYWtlclBpcGUsXG4gICAgVW5jYXRlZ29yaXplZEZpbHRlclBpcGUsXG4gICAgVXNlckZpbHRlclBpcGUsXG4gICAgVG9vbHRpcE1lc3NhZ2VQaXBlLFxuICAgIERvbVNhbml0aXplclBpcGUsXG4gICAgSXNSZWFkTW9yZVBpcGUsXG4gICAgV2l0aGluU3RydWN0dXJlUGlwZSxcbiAgICBVc2VyUGlwZSxcbiAgICBHZXRFZGl0b3JDb25maWdQaXBlLFxuICAgIEZvcm1hdERhdGVQaXBlLFxuICAgIFJlc3BvbnNpYmlsaXR5Q2hlY2tlZFBpcGVcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBEYXRhVHlwZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBMaXN0TWFwcGVyUGlwZSxcbiAgICBTZWFyY2hQaXBlLFxuICAgIFNwYWNlQnJlYWtlclBpcGUsXG4gICAgVW5jYXRlZ29yaXplZEZpbHRlclBpcGUsXG4gICAgVXNlckZpbHRlclBpcGUsXG4gICAgVG9vbHRpcE1lc3NhZ2VQaXBlLFxuICAgIERvbVNhbml0aXplclBpcGUsXG4gICAgSXNSZWFkTW9yZVBpcGUsXG4gICAgV2l0aGluU3RydWN0dXJlUGlwZSxcbiAgICBVc2VyUGlwZSxcbiAgICBHZXRFZGl0b3JDb25maWdQaXBlLFxuICAgIEZvcm1hdERhdGVQaXBlLFxuICAgIFJlc3BvbnNpYmlsaXR5Q2hlY2tlZFBpcGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUGlwZXNNb2R1bGUge31cblxuIl19
@@ -0,0 +1,19 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ResponsibilityCheckedPipe {
4
+ transform(value, selectedResponsibility) {
5
+ const { responsibility, eachAssignee } = value;
6
+ return (responsibility.id === selectedResponsibility.responsibility.id &&
7
+ eachAssignee.assignee === selectedResponsibility.eachAssignee.assignee &&
8
+ eachAssignee.responsibilityCenter === selectedResponsibility.eachAssignee.responsibilityCenter);
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResponsibilityCheckedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
11
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ResponsibilityCheckedPipe, name: "responsibilityChecked" }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResponsibilityCheckedPipe, decorators: [{
14
+ type: Pipe,
15
+ args: [{
16
+ name: 'responsibilityChecked'
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2liaWxpdHktY2hlY2tlZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvcGlwZXMvcmVzcG9uc2liaWxpdHktY2hlY2tlZC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8seUJBQXlCO0lBRXBDLFNBQVMsQ0FBQyxLQUFVLEVBQUUsc0JBQTJCO1FBQy9DLE1BQU0sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQy9DLE9BQU8sQ0FDTCxjQUFjLENBQUMsRUFBRSxLQUFLLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzlELFlBQVksQ0FBQyxRQUFRLEtBQUssc0JBQXNCLENBQUMsWUFBWSxDQUFDLFFBQVE7WUFDdEUsWUFBWSxDQUFDLG9CQUFvQixLQUFLLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FDL0YsQ0FBQTtJQUNILENBQUM7K0dBVFUseUJBQXlCOzZHQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBSHJDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ3Jlc3BvbnNpYmlsaXR5Q2hlY2tlZCdcbn0pXG5leHBvcnQgY2xhc3MgUmVzcG9uc2liaWxpdHlDaGVja2VkUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBzZWxlY3RlZFJlc3BvbnNpYmlsaXR5OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IHJlc3BvbnNpYmlsaXR5LCBlYWNoQXNzaWduZWUgfSA9IHZhbHVlO1xuICAgIHJldHVybiAoXG4gICAgICByZXNwb25zaWJpbGl0eS5pZCA9PT0gc2VsZWN0ZWRSZXNwb25zaWJpbGl0eS5yZXNwb25zaWJpbGl0eS5pZCAmJlxuICAgICAgZWFjaEFzc2lnbmVlLmFzc2lnbmVlID09PSBzZWxlY3RlZFJlc3BvbnNpYmlsaXR5LmVhY2hBc3NpZ25lZS5hc3NpZ25lZSAmJlxuICAgICAgZWFjaEFzc2lnbmVlLnJlc3BvbnNpYmlsaXR5Q2VudGVyID09PSBzZWxlY3RlZFJlc3BvbnNpYmlsaXR5LmVhY2hBc3NpZ25lZS5yZXNwb25zaWJpbGl0eUNlbnRlclxuICAgIClcbiAgfVxuXG59XG4iXX0=
@@ -84,6 +84,20 @@ export class CommonService {
84
84
  const removed = linkedResponsibilityIds.filter(id => !currentSet.has(id));
85
85
  return { added, removed };
86
86
  }
87
+ setPagination(res) {
88
+ const { limit, total, page } = res;
89
+ const responsibilities_from = (page - 1) * limit + 1;
90
+ const responsibilities_to = page * limit;
91
+ return {
92
+ responsibilities_from,
93
+ responsibilities_to,
94
+ total_responsibilities: total,
95
+ total_pages: Math.ceil(total / limit),
96
+ current_page: page,
97
+ per_page: limit,
98
+ total_count: total,
99
+ };
100
+ }
87
101
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
88
102
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonService, providedIn: 'root' }); }
89
103
  }
@@ -93,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
93
107
  providedIn: 'root',
94
108
  }]
95
109
  }] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDOztBQUtqRSxNQUFNLE9BQU8sYUFBYTtJQUgxQjtRQUlFLHFCQUFnQixHQUFHO1lBQ2pCLEtBQUssRUFBRSxJQUFJO1lBQ1gsS0FBSyxFQUFFLEVBQUU7WUFDVCxLQUFLLEVBQUUsSUFBSTtZQUNYLFNBQVMsRUFBRSxJQUFJO1lBQ2YsT0FBTyxFQUFFLEtBQUs7U0FDZixDQUFDO0tBOEdIO0lBN0dDLG1CQUFtQixDQUFDLGdCQUFxQjtRQUN2QyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1FBQ2xFLE1BQU0sYUFBYSxHQUFHLEtBQUssRUFBRSxNQUFpQixDQUFDO1FBRS9DLElBQUksQ0FBQyxhQUFhO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFakMsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLEVBQUUsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdELE1BQU0sMkJBQTJCLEdBQUcsUUFBUSxFQUFFLGFBQWEsQ0FDekQsNEJBQTRCLENBQzdCLENBQUM7UUFDRixNQUFNLGdCQUFnQixHQUFHLFFBQVEsRUFBRSxhQUFhLENBQzlDLDhCQUE4QixDQUMvQixDQUFDO1FBRUYsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RSxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sZUFBZSxHQUNu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QUMsQ0FBQztRQUUxRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBcEhVLGFBQWE7bUhBQWIsYUFBYSxjQUZaLE1BQU07OzRGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENvbW1vblNlcnZpY2Uge1xuICBkYXRlUGlja2VyT2JqZWN0ID0ge1xuICAgIGV2ZW50OiBudWxsLFxuICAgIGNsYXNzOiAnJyxcbiAgICBwb3B1cDogbnVsbCxcbiAgICBjb21wb25lbnQ6IG51bGwsXG4gICAgb3ZlcmxheTogZmFsc2UsXG4gIH07XG4gIGhhbmRsZURvY3VtZW50Q2xpY2soZGF0ZVBpY2tlck9iamVjdDogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyBldmVudCwgcG9wdXAsIGNsYXNzOiBjbGFzc05hbWUgfSA9IGRhdGVQaWNrZXJPYmplY3QgfHwge307XG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50Py50YXJnZXQgYXMgRWxlbWVudDtcblxuICAgIGlmICghdGFyZ2V0RWxlbWVudCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgZGF0ZUlucHV0RWxlbWVudCA9IGRvY3VtZW50Py5nZXRFbGVtZW50QnlJZChjbGFzc05hbWUpO1xuICAgIGNvbnN0IGRhdGVQaWNrZXJDYWxlbmRhckNvbnRhaW5lciA9IGRvY3VtZW50Py5xdWVyeVNlbGVjdG9yKFxuICAgICAgJy5kcC1kYXktY2FsZW5kYXItY29udGFpbmVyJ1xuICAgICk7XG4gICAgY29uc3QgbW9udGhZZWFyRWxlbWVudCA9IGRvY3VtZW50Py5xdWVyeVNlbGVjdG9yKFxuICAgICAgJy5kcC1tb250aC1jYWxlbmRhci1jb250YWluZXInXG4gICAgKTtcblxuICAgIGNvbnN0IGlzTm90TW9udGhZZWFyRWxlbWVudCA9ICFtb250aFllYXJFbGVtZW50Py5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICBjb25zdCBpc091dHNpZGVQb3B1cCA9ICFwb3B1cD8ubmF0aXZlRWxlbWVudD8uY29udGFpbnModGFyZ2V0RWxlbWVudCk7XG4gICAgY29uc3QgaXNPdXRzaWRlUG9wdXAyID1cbiAgICAgICFwb3B1cD8ubmF0aXZlRWxlbWVudD8uY2xhc3NOYW1lLmluY2x1ZGVzKCdkcC1jYWxlbmRhci1tb250aCcpO1xuXG4gICAgY29uc3QgaXNOb3REYXRlSW5wdXRFbGVtZW50ID0gdGFyZ2V0RWxlbWVudCAhPT0gZGF0ZUlucHV0RWxlbWVudDtcbiAgICBjb25zdCBpc05vdEluc2lkZUNhbGVuZGFyID1cbiAgICAgICFkYXRlUGlja2VyQ2FsZW5kYXJDb250YWluZXI/LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xuICAgIGNvbnN0IGlzTm90Q2FsZW5kYXJNb250aCA9XG4gICAgICAhdGFyZ2V0RWxlbWVudCB8fFxuICAgICAgdHlwZW9mIHRhcmdldEVsZW1lbnQ/LmNsYXNzTmFtZSAhPT0gJ3N0cmluZycgfHxcbiAgICAgICF0YXJnZXRFbGVtZW50Py5jbGFzc05hbWU/LmluY2x1ZGVzKCdkcC1jYWxlbmRhci1tb250aCcpO1xuXG4gICAgaWYgKFxuICAgICAgZGF0ZVBpY2tlckNhbGVuZGFyQ29udGFpbmVyICYmXG4gICAgICBpc05vdE1vbnRoWWVhckVsZW1lbnQgJiZcbiAgICAgIGlzT3V0c2lkZVBvcHVwICYmXG4gICAgICBpc05vdERhdGVJbnB1dEVsZW1lbnQgJiZcbiAgICAgIGlzTm90SW5zaWRlQ2FsZW5kYXIgJiZcbiAgICAgIGlzTm90Q2FsZW5kYXJNb250aCAmJlxuICAgICAgaXNPdXRzaWRlUG9wdXAyXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlRGF0ZVBpY2tlcklmT3BlbihcbiAgICAgICAgdGFyZ2V0RWxlbWVudCxcbiAgICAgICAgcG9wdXAsXG4gICAgICAgIGRhdGVQaWNrZXJPYmplY3Q/Lm92ZXJsYXksXG4gICAgICAgIGRhdGVQaWNrZXJPYmplY3Q/LmNvbXBvbmVudFxuICAgICAgKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VEYXRlUGlja2VySWZPcGVuKFxuICAgIHRhcmdldDogYW55LFxuICAgIG9wZW5lZEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgZGF0ZVBpY2tlck92ZXJsYXk6IGJvb2xlYW4sXG4gICAgRGF0ZVBpY2tlcjogYW55XG4gICk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICFvcGVuZWRFbGVtZW50Py5uYXRpdmVFbGVtZW50Py5jb250YWlucyh0YXJnZXQpICYmXG4gICAgICBEYXRlUGlja2VyPy5hcmVDYWxlbmRhcnNTaG93blxuICAgICkge1xuICAgICAgRGF0ZVBpY2tlcj8uYXBpPy5jbG9zZSgpO1xuICAgICAgZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAgLyoqXG4gICAqIFRyYW5zZm9ybXMgcHJvZ3JhbSBkYXRhIHRvIGlkZW50aWZ5IGFkZGVkIGFuZCByZW1vdmVkIHByb2dyYW0gSURzLlxuICAgKiBUaGlzIG1ldGhvZCBjb21wYXJlcyB0aGUgY3VycmVudCBwcm9ncmFtIHNlbGVjdGlvbiB3aXRoIHByZXZpb3VzbHkgbGlua2VkIHByb2dyYW1zXG4gICAqIHRvIGRldGVybWluZSB3aGljaCBwcm9ncmFtcyBoYXZlIGJlZW4gYWRkZWQgb3IgcmVtb3ZlZC5cbiAgICogXG4gICAqIEBwYXJhbSBpbnB1dCAtIEFuIG9iamVjdCBjb250YWluaW5nIHByb2dyYW0gc2VsZWN0aW9ucywgd2hlcmUgZWFjaCBrZXkgcmVwcmVzZW50cyBhIGNhdGVnb3J5XG4gICAqICAgICAgICAgICAgICAgYW5kIGl0cyB2YWx1ZSBpcyBhbiBhcnJheSBvZiBwcm9ncmFtIG9iamVjdHMgd2l0aCBhbiAnaWQnIHByb3BlcnR5LlxuICAgKiBAcGFyYW0gbGlua2VkUHJvZ3JhbUlkcyAtIEFycmF5IG9mIHByZXZpb3VzbHkgbGlua2VkIHByb2dyYW0gSURzXG4gICAqIFxuICAgKiBAcmV0dXJucyBBbiBvYmplY3QgY29udGFpbmluZzpcbiAgICogICAgICAgICAgLSBhZGRlZDogQXJyYXkgb2YgcHJvZ3JhbSBJRHMgdGhhdCBhcmUgbmV3bHkgc2VsZWN0ZWRcbiAgICogICAgICAgICAgLSByZW1vdmVkOiBBcnJheSBvZiBwcm9ncmFtIElEcyB0aGF0IHdlcmUgcHJldmlvdXNseSBsaW5rZWQgYnV0IGFyZSBubyBsb25nZXIgc2VsZWN0ZWRcbiAgICogXG4gICAqIEBleGFtcGxlXG4gICAqIC8vIElmIGlucHV0IGlzIHsgY2F0ZWdvcnkxOiBbe2lkOiAxfSwge2lkOiAyfV0sIGNhdGVnb3J5MjogW3tpZDogM31dIH1cbiAgICogLy8gQW5kIGxpbmtlZFByb2dyYW1JZHMgaXMgWzEsIDRdXG4gICAqIC8vIFJldHVybnMgeyBhZGRlZDogWzIsIDNdLCByZW1vdmVkOiBbNF0gfVxuICAgKi9cbiAgdHJhbnNmb3JtUHJvZ3JhbURhdGEoaW5wdXQ6IFJlY29yZDxzdHJpbmcsIEFycmF5PHsgcGlkOiBzdHJpbmcgfT4+LCBsaW5rZWRQcm9ncmFtSWRzOiBzdHJpbmdbXSA9IFtdKTogeyBhZGRlZDogc3RyaW5nW107IHJlbW92ZWQ6IHN0cmluZ1tdIH0ge1xuICBcbiAgICAvLyBGbGF0dGVuIGFsbCBwcm9ncmFtIElEcyBmcm9tIGlucHV0IG9iamVjdFxuICAgIGNvbnN0IGN1cnJlbnRQcm9ncmFtSWRzID0gKFtdIGFzIHsgcGlkOiBzdHJpbmcgfVtdKS5jb25jYXQoLi4uT2JqZWN0LnZhbHVlcyhpbnB1dCkpXG4gICAgICAubWFwKChwcm9ncmFtOiB7IHBpZDogc3RyaW5nIH0pID0+IHByb2dyYW0ucGlkKTtcblxuICAgIC8vIFVzZSBTZXQgZm9yIE8oMSkgbG9va3Vwc1xuICAgIGNvbnN0IGxpbmtlZFNldCA9IG5ldyBTZXQobGlua2VkUHJvZ3JhbUlkcyk7XG4gICAgY29uc3QgY3VycmVudFNldCA9IG5ldyBTZXQoY3VycmVudFByb2dyYW1JZHMpO1xuXG4gICAgLy8gRmluZCBhZGRlZCBhbmQgcmVtb3ZlZCBwcm9ncmFtcyB1c2luZyBTZXQgb3BlcmF0aW9uc1xuICAgIGNvbnN0IGFkZGVkID0gY3VycmVudFByb2dyYW1JZHMuZmlsdGVyKChpZDogc3RyaW5nKSA9PiAhbGlua2VkU2V0LmhhcyhpZCkpO1xuICAgIGNvbnN0IHJlbW92ZWQgPSBsaW5rZWRQcm9ncmFtSWRzLmZpbHRlcigoaWQ6IHN0cmluZykgPT4gIWN1cnJlbnRTZXQuaGFzKGlkKSk7XG5cbiAgICByZXR1cm4geyBhZGRlZCwgcmVtb3ZlZCB9O1xuICB9XG5cbiAgdHJhbnNmb3JtUmVzcG9uc2liaWxpdGllc0RhdGEoY3VycmVudFJlc3BvbnNpYmlsaXR5SWRzOiBudW1iZXJbXSwgbGlua2VkUmVzcG9uc2liaWxpdHlJZHM6IG51bWJlcltdID0gW10pOiB7IGFkZGVkOiBudW1iZXJbXTsgcmVtb3ZlZDogbnVtYmVyW10gfSB7XG4gICAgLy8gVXNlIFNldCBmb3IgTygxKSBsb29rdXBzXG4gICAgY29uc3QgbGlua2VkU2V0ID0gbmV3IFNldChsaW5rZWRSZXNwb25zaWJpbGl0eUlkcyk7XG4gICAgY29uc3QgY3VycmVudFNldCA9IG5ldyBTZXQoY3VycmVudFJlc3BvbnNpYmlsaXR5SWRzKTtcblxuICAgIC8vIEZpbmQgYWRkZWQgYW5kIHJlbW92ZWQgcmVzcG9uc2liaWxpdGllcyB1c2luZyBTZXQgb3BlcmF0aW9uc1xuICAgIGNvbnN0IGFkZGVkID0gY3VycmVudFJlc3BvbnNpYmlsaXR5SWRzLmZpbHRlcihpZCA9PiAhbGlua2VkU2V0LmhhcyhpZCkpO1xuICAgIGNvbnN0IHJlbW92ZWQgPSBsaW5rZWRSZXNwb25zaWJpbGl0eUlkcy5maWx0ZXIoaWQgPT4gIWN1cnJlbnRTZXQuaGFzKGlkKSk7XG5cbiAgICByZXR1cm4geyBhZGRlZCwgcmVtb3ZlZCB9O1xuICB9XG59XG4iXX0=
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDOztBQUtqRSxNQUFNLE9BQU8sYUFBYTtJQUgxQjtRQUlFLHFCQUFnQixHQUFHO1lBQ2pCLEtBQUssRUFBRSxJQUFJO1lBQ1gsS0FBSyxFQUFFLEVBQUU7WUFDVCxLQUFLLEVBQUUsSUFBSTtZQUNYLFNBQVMsRUFBRSxJQUFJO1lBQ2YsT0FBTyxFQUFFLEtBQUs7U0FDZixDQUFDO0tBNkhIO0lBNUhDLG1CQUFtQixDQUFDLGdCQUFxQjtRQUN2QyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1FBQ2xFLE1BQU0sYUFBYSxHQUFHLEtBQUssRUFBRSxNQUFpQixDQUFDO1FBRS9DLElBQUksQ0FBQyxhQUFhO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFakMsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLEVBQUUsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdELE1BQU0sMkJBQTJCLEdBQUcsUUFBUSxFQUFFLGFBQWEsQ0FDekQsNEJBQTRCLENBQzdCLENBQUM7UUFDRixNQUFNLGdCQUFnQixHQUFHLFFBQVEsRUFBRSxhQUFhLENBQzlDLDhCQUE4QixDQUMvQixDQUFDO1FBRUYsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RSxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sZUFBZSxHQUNu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QUMsQ0FBQztRQUUxRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBUTtRQUNwQixNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDbkMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUN6QyxPQUFPO1lBQ0wscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQixzQkFBc0IsRUFBRSxLQUFLO1lBQzdCLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDckMsWUFBWSxFQUFFLElBQUk7WUFDbEIsUUFBUSxFQUFFLEtBQUs7WUFDZixXQUFXLEVBQUUsS0FBSztTQUNuQixDQUFBO0lBQ0gsQ0FBQzsrR0FuSVUsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbW9uU2VydmljZSB7XG4gIGRhdGVQaWNrZXJPYmplY3QgPSB7XG4gICAgZXZlbnQ6IG51bGwsXG4gICAgY2xhc3M6ICcnLFxuICAgIHBvcHVwOiBudWxsLFxuICAgIGNvbXBvbmVudDogbnVsbCxcbiAgICBvdmVybGF5OiBmYWxzZSxcbiAgfTtcbiAgaGFuZGxlRG9jdW1lbnRDbGljayhkYXRlUGlja2VyT2JqZWN0OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IGV2ZW50LCBwb3B1cCwgY2xhc3M6IGNsYXNzTmFtZSB9ID0gZGF0ZVBpY2tlck9iamVjdCB8fCB7fTtcbiAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZXZlbnQ/LnRhcmdldCBhcyBFbGVtZW50O1xuXG4gICAgaWYgKCF0YXJnZXRFbGVtZW50KSByZXR1cm4gZmFsc2U7XG5cbiAgICBjb25zdCBkYXRlSW5wdXRFbGVtZW50ID0gZG9jdW1lbnQ/LmdldEVsZW1lbnRCeUlkKGNsYXNzTmFtZSk7XG4gICAgY29uc3QgZGF0ZVBpY2tlckNhbGVuZGFyQ29udGFpbmVyID0gZG9jdW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLmRwLWRheS1jYWxlbmRhci1jb250YWluZXInXG4gICAgKTtcbiAgICBjb25zdCBtb250aFllYXJFbGVtZW50ID0gZG9jdW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLmRwLW1vbnRoLWNhbGVuZGFyLWNvbnRhaW5lcidcbiAgICApO1xuXG4gICAgY29uc3QgaXNOb3RNb250aFllYXJFbGVtZW50ID0gIW1vbnRoWWVhckVsZW1lbnQ/LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xuICAgIGNvbnN0IGlzT3V0c2lkZVBvcHVwID0gIXBvcHVwPy5uYXRpdmVFbGVtZW50Py5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICBjb25zdCBpc091dHNpZGVQb3B1cDIgPVxuICAgICAgIXBvcHVwPy5uYXRpdmVFbGVtZW50Py5jbGFzc05hbWUuaW5jbHVkZXMoJ2RwLWNhbGVuZGFyLW1vbnRoJyk7XG5cbiAgICBjb25zdCBpc05vdERhdGVJbnB1dEVsZW1lbnQgPSB0YXJnZXRFbGVtZW50ICE9PSBkYXRlSW5wdXRFbGVtZW50O1xuICAgIGNvbnN0IGlzTm90SW5zaWRlQ2FsZW5kYXIgPVxuICAgICAgIWRhdGVQaWNrZXJDYWxlbmRhckNvbnRhaW5lcj8uY29udGFpbnModGFyZ2V0RWxlbWVudCk7XG4gICAgY29uc3QgaXNOb3RDYWxlbmRhck1vbnRoID1cbiAgICAgICF0YXJnZXRFbGVtZW50IHx8XG4gICAgICB0eXBlb2YgdGFyZ2V0RWxlbWVudD8uY2xhc3NOYW1lICE9PSAnc3RyaW5nJyB8fFxuICAgICAgIXRhcmdldEVsZW1lbnQ/LmNsYXNzTmFtZT8uaW5jbHVkZXMoJ2RwLWNhbGVuZGFyLW1vbnRoJyk7XG5cbiAgICBpZiAoXG4gICAgICBkYXRlUGlja2VyQ2FsZW5kYXJDb250YWluZXIgJiZcbiAgICAgIGlzTm90TW9udGhZZWFyRWxlbWVudCAmJlxuICAgICAgaXNPdXRzaWRlUG9wdXAgJiZcbiAgICAgIGlzTm90RGF0ZUlucHV0RWxlbWVudCAmJlxuICAgICAgaXNOb3RJbnNpZGVDYWxlbmRhciAmJlxuICAgICAgaXNOb3RDYWxlbmRhck1vbnRoICYmXG4gICAgICBpc091dHNpZGVQb3B1cDJcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2VEYXRlUGlja2VySWZPcGVuKFxuICAgICAgICB0YXJnZXRFbGVtZW50LFxuICAgICAgICBwb3B1cCxcbiAgICAgICAgZGF0ZVBpY2tlck9iamVjdD8ub3ZlcmxheSxcbiAgICAgICAgZGF0ZVBpY2tlck9iamVjdD8uY29tcG9uZW50XG4gICAgICApO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZURhdGVQaWNrZXJJZk9wZW4oXG4gICAgdGFyZ2V0OiBhbnksXG4gICAgb3BlbmVkRWxlbWVudDogRWxlbWVudFJlZixcbiAgICBkYXRlUGlja2VyT3ZlcmxheTogYm9vbGVhbixcbiAgICBEYXRlUGlja2VyOiBhbnlcbiAgKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIW9wZW5lZEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ/LmNvbnRhaW5zKHRhcmdldCkgJiZcbiAgICAgIERhdGVQaWNrZXI/LmFyZUNhbGVuZGFyc1Nob3duXG4gICAgKSB7XG4gICAgICBEYXRlUGlja2VyPy5hcGk/LmNsb3NlKCk7XG4gICAgICBkYXRlUGlja2VyT3ZlcmxheSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gICAvKipcbiAgICogVHJhbnNmb3JtcyBwcm9ncmFtIGRhdGEgdG8gaWRlbnRpZnkgYWRkZWQgYW5kIHJlbW92ZWQgcHJvZ3JhbSBJRHMuXG4gICAqIFRoaXMgbWV0aG9kIGNvbXBhcmVzIHRoZSBjdXJyZW50IHByb2dyYW0gc2VsZWN0aW9uIHdpdGggcHJldmlvdXNseSBsaW5rZWQgcHJvZ3JhbXNcbiAgICogdG8gZGV0ZXJtaW5lIHdoaWNoIHByb2dyYW1zIGhhdmUgYmVlbiBhZGRlZCBvciByZW1vdmVkLlxuICAgKiBcbiAgICogQHBhcmFtIGlucHV0IC0gQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvZ3JhbSBzZWxlY3Rpb25zLCB3aGVyZSBlYWNoIGtleSByZXByZXNlbnRzIGEgY2F0ZWdvcnlcbiAgICogICAgICAgICAgICAgICBhbmQgaXRzIHZhbHVlIGlzIGFuIGFycmF5IG9mIHByb2dyYW0gb2JqZWN0cyB3aXRoIGFuICdpZCcgcHJvcGVydHkuXG4gICAqIEBwYXJhbSBsaW5rZWRQcm9ncmFtSWRzIC0gQXJyYXkgb2YgcHJldmlvdXNseSBsaW5rZWQgcHJvZ3JhbSBJRHNcbiAgICogXG4gICAqIEByZXR1cm5zIEFuIG9iamVjdCBjb250YWluaW5nOlxuICAgKiAgICAgICAgICAtIGFkZGVkOiBBcnJheSBvZiBwcm9ncmFtIElEcyB0aGF0IGFyZSBuZXdseSBzZWxlY3RlZFxuICAgKiAgICAgICAgICAtIHJlbW92ZWQ6IEFycmF5IG9mIHByb2dyYW0gSURzIHRoYXQgd2VyZSBwcmV2aW91c2x5IGxpbmtlZCBidXQgYXJlIG5vIGxvbmdlciBzZWxlY3RlZFxuICAgKiBcbiAgICogQGV4YW1wbGVcbiAgICogLy8gSWYgaW5wdXQgaXMgeyBjYXRlZ29yeTE6IFt7aWQ6IDF9LCB7aWQ6IDJ9XSwgY2F0ZWdvcnkyOiBbe2lkOiAzfV0gfVxuICAgKiAvLyBBbmQgbGlua2VkUHJvZ3JhbUlkcyBpcyBbMSwgNF1cbiAgICogLy8gUmV0dXJucyB7IGFkZGVkOiBbMiwgM10sIHJlbW92ZWQ6IFs0XSB9XG4gICAqL1xuICB0cmFuc2Zvcm1Qcm9ncmFtRGF0YShpbnB1dDogUmVjb3JkPHN0cmluZywgQXJyYXk8eyBwaWQ6IHN0cmluZyB9Pj4sIGxpbmtlZFByb2dyYW1JZHM6IHN0cmluZ1tdID0gW10pOiB7IGFkZGVkOiBzdHJpbmdbXTsgcmVtb3ZlZDogc3RyaW5nW10gfSB7XG4gIFxuICAgIC8vIEZsYXR0ZW4gYWxsIHByb2dyYW0gSURzIGZyb20gaW5wdXQgb2JqZWN0XG4gICAgY29uc3QgY3VycmVudFByb2dyYW1JZHMgPSAoW10gYXMgeyBwaWQ6IHN0cmluZyB9W10pLmNvbmNhdCguLi5PYmplY3QudmFsdWVzKGlucHV0KSlcbiAgICAgIC5tYXAoKHByb2dyYW06IHsgcGlkOiBzdHJpbmcgfSkgPT4gcHJvZ3JhbS5waWQpO1xuXG4gICAgLy8gVXNlIFNldCBmb3IgTygxKSBsb29rdXBzXG4gICAgY29uc3QgbGlua2VkU2V0ID0gbmV3IFNldChsaW5rZWRQcm9ncmFtSWRzKTtcbiAgICBjb25zdCBjdXJyZW50U2V0ID0gbmV3IFNldChjdXJyZW50UHJvZ3JhbUlkcyk7XG5cbiAgICAvLyBGaW5kIGFkZGVkIGFuZCByZW1vdmVkIHByb2dyYW1zIHVzaW5nIFNldCBvcGVyYXRpb25zXG4gICAgY29uc3QgYWRkZWQgPSBjdXJyZW50UHJvZ3JhbUlkcy5maWx0ZXIoKGlkOiBzdHJpbmcpID0+ICFsaW5rZWRTZXQuaGFzKGlkKSk7XG4gICAgY29uc3QgcmVtb3ZlZCA9IGxpbmtlZFByb2dyYW1JZHMuZmlsdGVyKChpZDogc3RyaW5nKSA9PiAhY3VycmVudFNldC5oYXMoaWQpKTtcblxuICAgIHJldHVybiB7IGFkZGVkLCByZW1vdmVkIH07XG4gIH1cblxuICB0cmFuc2Zvcm1SZXNwb25zaWJpbGl0aWVzRGF0YShjdXJyZW50UmVzcG9uc2liaWxpdHlJZHM6IG51bWJlcltdLCBsaW5rZWRSZXNwb25zaWJpbGl0eUlkczogbnVtYmVyW10gPSBbXSk6IHsgYWRkZWQ6IG51bWJlcltdOyByZW1vdmVkOiBudW1iZXJbXSB9IHtcbiAgICAvLyBVc2UgU2V0IGZvciBPKDEpIGxvb2t1cHNcbiAgICBjb25zdCBsaW5rZWRTZXQgPSBuZXcgU2V0KGxpbmtlZFJlc3BvbnNpYmlsaXR5SWRzKTtcbiAgICBjb25zdCBjdXJyZW50U2V0ID0gbmV3IFNldChjdXJyZW50UmVzcG9uc2liaWxpdHlJZHMpO1xuXG4gICAgLy8gRmluZCBhZGRlZCBhbmQgcmVtb3ZlZCByZXNwb25zaWJpbGl0aWVzIHVzaW5nIFNldCBvcGVyYXRpb25zXG4gICAgY29uc3QgYWRkZWQgPSBjdXJyZW50UmVzcG9uc2liaWxpdHlJZHMuZmlsdGVyKGlkID0+ICFsaW5rZWRTZXQuaGFzKGlkKSk7XG4gICAgY29uc3QgcmVtb3ZlZCA9IGxpbmtlZFJlc3BvbnNpYmlsaXR5SWRzLmZpbHRlcihpZCA9PiAhY3VycmVudFNldC5oYXMoaWQpKTtcblxuICAgIHJldHVybiB7IGFkZGVkLCByZW1vdmVkIH07XG4gIH1cblxuICBzZXRQYWdpbmF0aW9uKHJlczogYW55KSB7XG4gICAgY29uc3QgeyBsaW1pdCwgdG90YWwsIHBhZ2UgfSA9IHJlcztcbiAgICBjb25zdCByZXNwb25zaWJpbGl0aWVzX2Zyb20gPSAocGFnZSAtIDEpICogbGltaXQgKyAxO1xuICAgIGNvbnN0IHJlc3BvbnNpYmlsaXRpZXNfdG8gPSBwYWdlICogbGltaXQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlc3BvbnNpYmlsaXRpZXNfZnJvbSxcbiAgICAgIHJlc3BvbnNpYmlsaXRpZXNfdG8sXG4gICAgICB0b3RhbF9yZXNwb25zaWJpbGl0aWVzOiB0b3RhbCxcbiAgICAgIHRvdGFsX3BhZ2VzOiBNYXRoLmNlaWwodG90YWwgLyBsaW1pdCksXG4gICAgICBjdXJyZW50X3BhZ2U6IHBhZ2UsXG4gICAgICBwZXJfcGFnZTogbGltaXQsXG4gICAgICB0b3RhbF9jb3VudDogdG90YWwsXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -187,11 +187,11 @@ export class AssessmentListComponent {
187
187
  this.isDeleted = true;
188
188
  }
189
189
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AssessmentListComponent, deps: [{ token: i1.ResponsibilityService }, { token: i2.AssessmentService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
190
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AssessmentListComponent, selector: "app-assessment-list", inputs: { isEdit: "isEdit", mode: "mode", selectedAssessment: "selectedAssessment", selectedAssessmentData: "selectedAssessmentData", program_ids: "program_ids", isFullScreen: "isFullScreen" }, outputs: { onAssessmentSelect: "onAssessmentSelect", cancelAssessment: "cancelAssessment" }, ngImport: i0, template: "<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"></app-preview>\n<div class=\"assessment-list\" [class.animate]=\"animation\" [class.full-screen]=\"isFullScreen\">\n <div *ngIf=\"!isFullScreen\" class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\n </div>\n <div class=\"assessment-list-body\">\n <div class=\"search-block\">\n <i class=\"icons\">&#xe90b;</i>\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\"\n placeholder=\"Search Assessment Category\" />\n </div>\n <app-workflow-pagination [pageCount]=\"assessmentCategory?.totalPage\" [total]=\"assessmentCategory?.totalRecords\"\n [start]=\"assessmentCategory?.start_value\" [end]=\"assessmentCategory?.end_value\" [activeAlphabet]=\"''\"\n (selectedAlphabet)=\"onAlphabetSelected($event)\"\n (selectedPage)=\"onPageSelection($event)\"></app-workflow-pagination>\n <div *ngIf=\"\n assessmentCategory.data.length === 0 && !isLoader && searchAssessments\n \" class=\"assessment-list-part vx-mb-4\">\n <app-no-data [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\n </div>\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Assessment already selected\"\n : \"Assessment already selected for this responsibility\"\n }}\n </div>\n <div class=\"assessment-list-item\">\n <div class=\"table-row\">\n <div class=\"table-column serial disabled\">\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"\n selectedAssessment?.assessmentDetails?.assessment_name\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ selectedAssessment?.assessmentDetails?.assessment_name }}\n </div>\n <div class=\"within-part\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? ' > ' +\n selectedAssessment?.category_details?.parent_tree\n : '')\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? \" > \" +\n selectedAssessment?.category_details?.parent_tree\n : \"\")\n }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ selectedAssessment?.assessmentDetails?.questions }}\n {{\n selectedAssessment?.assessmentDetails?.questions > 1\n ? \"Questions\"\n : \"Question\"\n }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Select an Assessment\"\n : \"Select an Assessment for this responsibility\"\n }}\n </div>\n\n <!--\n Assessment category list \n active class is used for highlighting opened element\n -->\n <ng-container *ngIf=\"!isLoader\">\n <div *ngFor=\"let data of assessmentCategory.data; let i = index\" class=\"assessment-list-item\" [class.active]=\"\n openedCategory.includes(i) ||\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\"\n [class.disabled]=\"data?.assessmentcount < 1\">\n <div class=\"table-column serial\">\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"true\">\n {{ dataPerPage * (assessmentPayload.page_no - 1) + (i + 1) }}\n </div>\n </div>\n <div class=\"table-column name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">\n {{ data?.category_name }}\n </div>\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">{{ data?.parent_tree }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column action\">\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled]=\"data?.assessmentcount < 1\"\n [disabled]=\"data?.assessmentcount < 1\">\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\n </button>\n </div>\n </div>\n\n <!-- Assessment list start from here -->\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"\n assessment.id === selectedAssessment?.assessment_id &&\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-column serial\">\n <div [id]=\"'sub-sr-no' + i + j\" class=\"sr-no\" appTooltip=\"{{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\n {{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"\n assessment?.id === selectedAssessment?.assessment_id &&\n data?.id === selectedAssessment?.category_id\n \" (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\n </div>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"value\" [appTooltip]=\"\n 'Mission and message, communications to external audiences'\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ assessment?.assessment_name }}\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(assessment)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ assessment?.questions }}\n {{ assessment?.questions > 1 ? \"Questions\" : \"Question\" }}\n </div>\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\n </div>\n <!-- No data image -->\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\"\n [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Data to Display'\"></app-no-data>\n\n <app-floating-bar [selectedData]=\"[]\" (closeEvent)=\"save()\" (closeList)=\"close()\"\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\" [selectedData]=\"\n selectedAssessment?.assessment_id\n ? [selectedAssessment?.assessmentDetails]\n : []\n \" [displayElementKey]=\"'assessment_name'\" [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\"\n (deleteEvent)=\"deleteEvent($event)\">\n </app-floating-bar>\n </div>\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .assessment-list{position:fixed;inset:0 500px 0 0}::ng-deep .assessment-list:before{background:#1e5dd3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .assessment-list.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .assessment-list-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .assessment-list-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .assessment-list-body .search-block{position:relative}::ng-deep .assessment-list-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .assessment-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .assessment-list-body .search-block i{position:absolute;left:1rem;top:1rem;pointer-events:none;color:#f1f1f1;font-size:12px}::ng-deep .assessment-list-body app-workflow-pagination .pagination-sec{padding-bottom:0!important}::ng-deep .assessment-list-body .assessment-list-part{height:calc(100vh - 242px);overflow:auto;padding:8px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-selected{margin-bottom:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-heading{color:#161b2f;font-size:12px;font-weight:600;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item{border:1px solid #f1f1f1;border-radius:2px;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .main-list{cursor:pointer}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item.active{border-color:#1e5dd3;box-shadow:0 3px 6px #4681ef26}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row{display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row.disabled{pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column{color:#747576;height:48px;position:relative;width:100%;display:flex;align-items:center;padding:0 4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no{width:16px;background:#f8f8f8;writing-mode:vertical-lr;color:#747576;font-size:10px;font-weight:500;display:flex;height:100%;align-items:center;justify-content:center;position:relative;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio{position:absolute;top:8px;left:0;opacity:0;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio .radio-item{position:absolute;left:8px;top:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name{width:calc(100% - 64px);min-width:calc(100% - 64px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner .value{color:#161b2f;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.arrow{background:transparent;border:none;border-radius:0;color:#747576;font-size:12px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;height:100%;width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.disabled{opacity:.5!important;pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name{width:calc(100% - 232px);min-width:calc(100% - 232px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .value{color:#747576;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question{width:200px;max-width:200px;justify-content:flex-end}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons{display:flex;opacity:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:22px;text-transform:uppercase;padding:0 8px;display:flex;align-items:center;margin:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row:hover .table-column.question .buttons{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row{border-top:1px solid #f1f1f1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no{color:#f8f8f8}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no app-cs-radio,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no app-cs-radio{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row .table-column{height:32px}::ng-deep .assessment-list-body ul{padding:0;margin:0}::ng-deep .assessment-list-body ul.assessment{max-height:calc(100vh - 240px);overflow:auto;padding:16px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body ul.assessment li{padding:0 0 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body ul.assessment li app-cs-radio{width:calc(100% - 260px)}::ng-deep .assessment-list-body ul.assessment li app-cs-radio .radio-item .value .name{font-size:12px;color:#161b2f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .assessment-list-body ul.assessment li .right{display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px}::ng-deep .assessment-list-body ul.assessment li .right .buttons{display:flex;width:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:24px;text-transform:uppercase;padding:0 8px;margin-left:12px;display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body ul.assessment li:hover .right .buttons{width:156px}::ng-deep .assessment-list-body app-no-data .no-data-wrapper{height:calc(100% - 118px)}::ng-deep .assessment-list.full-screen{width:100%}.within-part{display:flex;align-items:center;padding-right:12px}.within-part .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px;color:#747576}.within-box{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding:0 4px;margin-right:8px;line-height:12px}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"], dependencies: [{ kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value", "oneLine"], outputs: ["checkedEvent"] }, { kind: "directive", type: i7.ToolTipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.NoDataComponent, selector: "app-no-data", inputs: ["action", "noDataImage", "noDataText", "noDataButton", "noDataSecButton", "altText", "smallButton", "button"], outputs: ["buttonAction"] }, { kind: "component", type: i9.PreviewComponent, selector: "app-preview", inputs: ["questionData"], outputs: ["previewBack"] }, { kind: "component", type: i10.FloatingBarComponent, selector: "app-floating-bar", inputs: ["selectedData", "selectedGroups", "displayElementKey", "elementId", "singularText", "pluralText", "showNextButton", "showFrequencyText", "showWorkflow", "workflowText", "currentFrequency", "isDisabled", "workflowList", "selectedWorkflow", "workflowPlaceHolder", "mode", "defaultSelected", "groupsEnabled", "isResponsibility", "nonRemovableUsersList", "removePosition"], outputs: ["closeEvent", "deleteEvent", "closeList", "deleteGroupEvent", "workflowTypeChanged"] }, { kind: "component", type: i11.WorkflowPaginationComponent, selector: "app-workflow-pagination", inputs: ["activeAlphabet", "pageCount", "start", "end", "total", "noFilter", "currentPage"], outputs: ["selectedPage", "selectedAlphabet"] }, { kind: "component", type: i12.AssessmentListLoaderComponent, selector: "app-assessment-list-loader" }, { kind: "component", type: i13.AssessmentListSubLoaderComponent, selector: "app-assessment-list-sub-loader" }] }); }
190
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AssessmentListComponent, selector: "app-assessment-list", inputs: { isEdit: "isEdit", mode: "mode", selectedAssessment: "selectedAssessment", selectedAssessmentData: "selectedAssessmentData", program_ids: "program_ids", isFullScreen: "isFullScreen" }, outputs: { onAssessmentSelect: "onAssessmentSelect", cancelAssessment: "cancelAssessment" }, ngImport: i0, template: "<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"\n [isFullScreen]=\"isFullScreen\"></app-preview>\n<div class=\"assessment-list\" [class.animate]=\"animation\" [class.full-screen]=\"isFullScreen\">\n <div *ngIf=\"!isFullScreen\" class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\n </div>\n <div class=\"assessment-list-body\">\n <div class=\"search-block\">\n <i class=\"icons\">&#xe90b;</i>\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\"\n placeholder=\"Search Assessment Category\" />\n </div>\n <app-workflow-pagination [pageCount]=\"assessmentCategory?.totalPage\" [total]=\"assessmentCategory?.totalRecords\"\n [start]=\"assessmentCategory?.start_value\" [end]=\"assessmentCategory?.end_value\" [activeAlphabet]=\"''\"\n (selectedAlphabet)=\"onAlphabetSelected($event)\"\n (selectedPage)=\"onPageSelection($event)\"></app-workflow-pagination>\n <div *ngIf=\"\n assessmentCategory.data.length === 0 && !isLoader && searchAssessments\n \" class=\"assessment-list-part vx-mb-4\">\n <app-no-data [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\n </div>\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Assessment already selected\"\n : \"Assessment already selected for this responsibility\"\n }}\n </div>\n <div class=\"assessment-list-item\">\n <div class=\"table-row\">\n <div class=\"table-column serial disabled\">\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"\n selectedAssessment?.assessmentDetails?.assessment_name\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ selectedAssessment?.assessmentDetails?.assessment_name }}\n </div>\n <div class=\"within-part\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? ' > ' +\n selectedAssessment?.category_details?.parent_tree\n : '')\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? \" > \" +\n selectedAssessment?.category_details?.parent_tree\n : \"\")\n }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ selectedAssessment?.assessmentDetails?.questions }}\n {{\n selectedAssessment?.assessmentDetails?.questions > 1\n ? \"Questions\"\n : \"Question\"\n }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Select an Assessment\"\n : \"Select an Assessment for this responsibility\"\n }}\n </div>\n\n <!--\n Assessment category list \n active class is used for highlighting opened element\n -->\n <ng-container *ngIf=\"!isLoader\">\n <div *ngFor=\"let data of assessmentCategory.data; let i = index\" class=\"assessment-list-item\" [class.active]=\"\n openedCategory.includes(i) ||\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\"\n [class.disabled]=\"data?.assessmentcount < 1\">\n <div class=\"table-column serial\">\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"true\">\n {{ dataPerPage * (assessmentPayload.page_no - 1) + (i + 1) }}\n </div>\n </div>\n <div class=\"table-column name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">\n {{ data?.category_name }}\n </div>\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">{{ data?.parent_tree }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column action\">\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled]=\"data?.assessmentcount < 1\"\n [disabled]=\"data?.assessmentcount < 1\">\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\n </button>\n </div>\n </div>\n\n <!-- Assessment list start from here -->\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"\n assessment.id === selectedAssessment?.assessment_id &&\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-column serial\">\n <div [id]=\"'sub-sr-no' + i + j\" class=\"sr-no\" appTooltip=\"{{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\n {{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"\n assessment?.id === selectedAssessment?.assessment_id &&\n data?.id === selectedAssessment?.category_id\n \" (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\n </div>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"value\" [appTooltip]=\"\n 'Mission and message, communications to external audiences'\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ assessment?.assessment_name }}\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(assessment)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ assessment?.questions }}\n {{ assessment?.questions > 1 ? \"Questions\" : \"Question\" }}\n </div>\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\n </div>\n <!-- No data image -->\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\"\n [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Data to Display'\"></app-no-data>\n\n <app-floating-bar [selectedData]=\"[]\" (closeEvent)=\"save()\" (closeList)=\"close()\"\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\" [selectedData]=\"\n selectedAssessment?.assessment_id\n ? [selectedAssessment?.assessmentDetails]\n : []\n \" [displayElementKey]=\"'assessment_name'\" [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\"\n (deleteEvent)=\"deleteEvent($event)\">\n </app-floating-bar>\n </div>\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .assessment-list{position:fixed;inset:0 500px 0 0}::ng-deep .assessment-list:before{background:#1e5dd3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .assessment-list.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .assessment-list-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .assessment-list-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .assessment-list-body .search-block{position:relative}::ng-deep .assessment-list-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .assessment-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .assessment-list-body .search-block i{position:absolute;left:1rem;top:1rem;pointer-events:none;color:#f1f1f1;font-size:12px}::ng-deep .assessment-list-body app-workflow-pagination .pagination-sec{padding-bottom:0!important}::ng-deep .assessment-list-body .assessment-list-part{height:calc(100vh - 242px);overflow:auto;padding:8px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-selected{margin-bottom:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-heading{color:#161b2f;font-size:12px;font-weight:600;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item{border:1px solid #f1f1f1;border-radius:2px;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .main-list{cursor:pointer}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item.active{border-color:#1e5dd3;box-shadow:0 3px 6px #4681ef26}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row{display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row.disabled{pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column{color:#747576;height:48px;position:relative;width:100%;display:flex;align-items:center;padding:0 4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no{width:16px;background:#f8f8f8;writing-mode:vertical-lr;color:#747576;font-size:10px;font-weight:500;display:flex;height:100%;align-items:center;justify-content:center;position:relative;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio{position:absolute;top:8px;left:0;opacity:0;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio .radio-item{position:absolute;left:8px;top:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name{width:calc(100% - 64px);min-width:calc(100% - 64px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner .value{color:#161b2f;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.arrow{background:transparent;border:none;border-radius:0;color:#747576;font-size:12px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;height:100%;width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.disabled{opacity:.5!important;pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name{width:calc(100% - 232px);min-width:calc(100% - 232px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .value{color:#747576;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question{width:200px;max-width:200px;justify-content:flex-end}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons{display:flex;opacity:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:22px;text-transform:uppercase;padding:0 8px;display:flex;align-items:center;margin:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row:hover .table-column.question .buttons{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row{border-top:1px solid #f1f1f1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no{color:#f8f8f8}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no app-cs-radio,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no app-cs-radio{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row .table-column{height:32px}::ng-deep .assessment-list-body ul{padding:0;margin:0}::ng-deep .assessment-list-body ul.assessment{max-height:calc(100vh - 240px);overflow:auto;padding:16px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body ul.assessment li{padding:0 0 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body ul.assessment li app-cs-radio{width:calc(100% - 260px)}::ng-deep .assessment-list-body ul.assessment li app-cs-radio .radio-item .value .name{font-size:12px;color:#161b2f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .assessment-list-body ul.assessment li .right{display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px}::ng-deep .assessment-list-body ul.assessment li .right .buttons{display:flex;width:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:24px;text-transform:uppercase;padding:0 8px;margin-left:12px;display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body ul.assessment li:hover .right .buttons{width:156px}::ng-deep .assessment-list-body app-no-data .no-data-wrapper{height:calc(100% - 118px)}::ng-deep .assessment-list.full-screen{width:100%}::ng-deep .assessment-list.full-screen:before{display:none}.within-part{display:flex;align-items:center;padding-right:12px}.within-part .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px;color:#747576}.within-box{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding:0 4px;margin-right:8px;line-height:12px}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"], dependencies: [{ kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value", "oneLine"], outputs: ["checkedEvent"] }, { kind: "directive", type: i7.ToolTipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.NoDataComponent, selector: "app-no-data", inputs: ["action", "noDataImage", "noDataText", "noDataButton", "noDataSecButton", "altText", "smallButton", "button"], outputs: ["buttonAction"] }, { kind: "component", type: i9.PreviewComponent, selector: "app-preview", inputs: ["questionData", "isFullScreen"], outputs: ["previewBack"] }, { kind: "component", type: i10.FloatingBarComponent, selector: "app-floating-bar", inputs: ["selectedData", "selectedGroups", "displayElementKey", "elementId", "singularText", "pluralText", "showNextButton", "showFrequencyText", "showWorkflow", "workflowText", "currentFrequency", "isDisabled", "workflowList", "selectedWorkflow", "workflowPlaceHolder", "mode", "defaultSelected", "groupsEnabled", "isResponsibility", "nonRemovableUsersList", "removePosition"], outputs: ["closeEvent", "deleteEvent", "closeList", "deleteGroupEvent", "workflowTypeChanged"] }, { kind: "component", type: i11.WorkflowPaginationComponent, selector: "app-workflow-pagination", inputs: ["activeAlphabet", "pageCount", "start", "end", "total", "noFilter", "currentPage"], outputs: ["selectedPage", "selectedAlphabet"] }, { kind: "component", type: i12.AssessmentListLoaderComponent, selector: "app-assessment-list-loader" }, { kind: "component", type: i13.AssessmentListSubLoaderComponent, selector: "app-assessment-list-sub-loader" }] }); }
191
191
  }
192
192
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AssessmentListComponent, decorators: [{
193
193
  type: Component,
194
- args: [{ selector: 'app-assessment-list', template: "<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"></app-preview>\n<div class=\"assessment-list\" [class.animate]=\"animation\" [class.full-screen]=\"isFullScreen\">\n <div *ngIf=\"!isFullScreen\" class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\n </div>\n <div class=\"assessment-list-body\">\n <div class=\"search-block\">\n <i class=\"icons\">&#xe90b;</i>\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\"\n placeholder=\"Search Assessment Category\" />\n </div>\n <app-workflow-pagination [pageCount]=\"assessmentCategory?.totalPage\" [total]=\"assessmentCategory?.totalRecords\"\n [start]=\"assessmentCategory?.start_value\" [end]=\"assessmentCategory?.end_value\" [activeAlphabet]=\"''\"\n (selectedAlphabet)=\"onAlphabetSelected($event)\"\n (selectedPage)=\"onPageSelection($event)\"></app-workflow-pagination>\n <div *ngIf=\"\n assessmentCategory.data.length === 0 && !isLoader && searchAssessments\n \" class=\"assessment-list-part vx-mb-4\">\n <app-no-data [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\n </div>\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Assessment already selected\"\n : \"Assessment already selected for this responsibility\"\n }}\n </div>\n <div class=\"assessment-list-item\">\n <div class=\"table-row\">\n <div class=\"table-column serial disabled\">\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"\n selectedAssessment?.assessmentDetails?.assessment_name\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ selectedAssessment?.assessmentDetails?.assessment_name }}\n </div>\n <div class=\"within-part\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? ' > ' +\n selectedAssessment?.category_details?.parent_tree\n : '')\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? \" > \" +\n selectedAssessment?.category_details?.parent_tree\n : \"\")\n }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ selectedAssessment?.assessmentDetails?.questions }}\n {{\n selectedAssessment?.assessmentDetails?.questions > 1\n ? \"Questions\"\n : \"Question\"\n }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Select an Assessment\"\n : \"Select an Assessment for this responsibility\"\n }}\n </div>\n\n <!--\n Assessment category list \n active class is used for highlighting opened element\n -->\n <ng-container *ngIf=\"!isLoader\">\n <div *ngFor=\"let data of assessmentCategory.data; let i = index\" class=\"assessment-list-item\" [class.active]=\"\n openedCategory.includes(i) ||\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\"\n [class.disabled]=\"data?.assessmentcount < 1\">\n <div class=\"table-column serial\">\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"true\">\n {{ dataPerPage * (assessmentPayload.page_no - 1) + (i + 1) }}\n </div>\n </div>\n <div class=\"table-column name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">\n {{ data?.category_name }}\n </div>\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">{{ data?.parent_tree }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column action\">\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled]=\"data?.assessmentcount < 1\"\n [disabled]=\"data?.assessmentcount < 1\">\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\n </button>\n </div>\n </div>\n\n <!-- Assessment list start from here -->\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"\n assessment.id === selectedAssessment?.assessment_id &&\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-column serial\">\n <div [id]=\"'sub-sr-no' + i + j\" class=\"sr-no\" appTooltip=\"{{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\n {{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"\n assessment?.id === selectedAssessment?.assessment_id &&\n data?.id === selectedAssessment?.category_id\n \" (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\n </div>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"value\" [appTooltip]=\"\n 'Mission and message, communications to external audiences'\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ assessment?.assessment_name }}\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(assessment)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ assessment?.questions }}\n {{ assessment?.questions > 1 ? \"Questions\" : \"Question\" }}\n </div>\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\n </div>\n <!-- No data image -->\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\"\n [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Data to Display'\"></app-no-data>\n\n <app-floating-bar [selectedData]=\"[]\" (closeEvent)=\"save()\" (closeList)=\"close()\"\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\" [selectedData]=\"\n selectedAssessment?.assessment_id\n ? [selectedAssessment?.assessmentDetails]\n : []\n \" [displayElementKey]=\"'assessment_name'\" [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\"\n (deleteEvent)=\"deleteEvent($event)\">\n </app-floating-bar>\n </div>\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .assessment-list{position:fixed;inset:0 500px 0 0}::ng-deep .assessment-list:before{background:#1e5dd3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .assessment-list.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .assessment-list-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .assessment-list-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .assessment-list-body .search-block{position:relative}::ng-deep .assessment-list-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .assessment-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .assessment-list-body .search-block i{position:absolute;left:1rem;top:1rem;pointer-events:none;color:#f1f1f1;font-size:12px}::ng-deep .assessment-list-body app-workflow-pagination .pagination-sec{padding-bottom:0!important}::ng-deep .assessment-list-body .assessment-list-part{height:calc(100vh - 242px);overflow:auto;padding:8px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-selected{margin-bottom:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-heading{color:#161b2f;font-size:12px;font-weight:600;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item{border:1px solid #f1f1f1;border-radius:2px;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .main-list{cursor:pointer}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item.active{border-color:#1e5dd3;box-shadow:0 3px 6px #4681ef26}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row{display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row.disabled{pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column{color:#747576;height:48px;position:relative;width:100%;display:flex;align-items:center;padding:0 4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no{width:16px;background:#f8f8f8;writing-mode:vertical-lr;color:#747576;font-size:10px;font-weight:500;display:flex;height:100%;align-items:center;justify-content:center;position:relative;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio{position:absolute;top:8px;left:0;opacity:0;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio .radio-item{position:absolute;left:8px;top:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name{width:calc(100% - 64px);min-width:calc(100% - 64px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner .value{color:#161b2f;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.arrow{background:transparent;border:none;border-radius:0;color:#747576;font-size:12px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;height:100%;width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.disabled{opacity:.5!important;pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name{width:calc(100% - 232px);min-width:calc(100% - 232px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .value{color:#747576;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question{width:200px;max-width:200px;justify-content:flex-end}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons{display:flex;opacity:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:22px;text-transform:uppercase;padding:0 8px;display:flex;align-items:center;margin:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row:hover .table-column.question .buttons{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row{border-top:1px solid #f1f1f1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no{color:#f8f8f8}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no app-cs-radio,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no app-cs-radio{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row .table-column{height:32px}::ng-deep .assessment-list-body ul{padding:0;margin:0}::ng-deep .assessment-list-body ul.assessment{max-height:calc(100vh - 240px);overflow:auto;padding:16px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body ul.assessment li{padding:0 0 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body ul.assessment li app-cs-radio{width:calc(100% - 260px)}::ng-deep .assessment-list-body ul.assessment li app-cs-radio .radio-item .value .name{font-size:12px;color:#161b2f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .assessment-list-body ul.assessment li .right{display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px}::ng-deep .assessment-list-body ul.assessment li .right .buttons{display:flex;width:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:24px;text-transform:uppercase;padding:0 8px;margin-left:12px;display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body ul.assessment li:hover .right .buttons{width:156px}::ng-deep .assessment-list-body app-no-data .no-data-wrapper{height:calc(100% - 118px)}::ng-deep .assessment-list.full-screen{width:100%}.within-part{display:flex;align-items:center;padding-right:12px}.within-part .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px;color:#747576}.within-box{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding:0 4px;margin-right:8px;line-height:12px}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"] }]
194
+ args: [{ selector: 'app-assessment-list', template: "<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"\n [isFullScreen]=\"isFullScreen\"></app-preview>\n<div class=\"assessment-list\" [class.animate]=\"animation\" [class.full-screen]=\"isFullScreen\">\n <div *ngIf=\"!isFullScreen\" class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\n </div>\n <div class=\"assessment-list-body\">\n <div class=\"search-block\">\n <i class=\"icons\">&#xe90b;</i>\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\"\n placeholder=\"Search Assessment Category\" />\n </div>\n <app-workflow-pagination [pageCount]=\"assessmentCategory?.totalPage\" [total]=\"assessmentCategory?.totalRecords\"\n [start]=\"assessmentCategory?.start_value\" [end]=\"assessmentCategory?.end_value\" [activeAlphabet]=\"''\"\n (selectedAlphabet)=\"onAlphabetSelected($event)\"\n (selectedPage)=\"onPageSelection($event)\"></app-workflow-pagination>\n <div *ngIf=\"\n assessmentCategory.data.length === 0 && !isLoader && searchAssessments\n \" class=\"assessment-list-part vx-mb-4\">\n <app-no-data [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\n </div>\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Assessment already selected\"\n : \"Assessment already selected for this responsibility\"\n }}\n </div>\n <div class=\"assessment-list-item\">\n <div class=\"table-row\">\n <div class=\"table-column serial disabled\">\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"\n selectedAssessment?.assessmentDetails?.assessment_name\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ selectedAssessment?.assessmentDetails?.assessment_name }}\n </div>\n <div class=\"within-part\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? ' > ' +\n selectedAssessment?.category_details?.parent_tree\n : '')\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{\n selectedAssessment?.category_details?.category_name +\n (selectedAssessment?.category_details?.parent_tree\n ? \" > \" +\n selectedAssessment?.category_details?.parent_tree\n : \"\")\n }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ selectedAssessment?.assessmentDetails?.questions }}\n {{\n selectedAssessment?.assessmentDetails?.questions > 1\n ? \"Questions\"\n : \"Question\"\n }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"assessment-list-heading\">\n {{\n mode === \"policy\"\n ? \"Select an Assessment\"\n : \"Select an Assessment for this responsibility\"\n }}\n </div>\n\n <!--\n Assessment category list \n active class is used for highlighting opened element\n -->\n <ng-container *ngIf=\"!isLoader\">\n <div *ngFor=\"let data of assessmentCategory.data; let i = index\" class=\"assessment-list-item\" [class.active]=\"\n openedCategory.includes(i) ||\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\"\n [class.disabled]=\"data?.assessmentcount < 1\">\n <div class=\"table-column serial\">\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"true\">\n {{ dataPerPage * (assessmentPayload.page_no - 1) + (i + 1) }}\n </div>\n </div>\n <div class=\"table-column name\">\n <div class=\"name-inner\">\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">\n {{ data?.category_name }}\n </div>\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\n <span class=\"within-box\">Within</span>\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\"\n [tooltipMandatory]=\"false\">{{ data?.parent_tree }}</span>\n </div>\n </div>\n </div>\n <div class=\"table-column action\">\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled]=\"data?.assessmentcount < 1\"\n [disabled]=\"data?.assessmentcount < 1\">\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\n </button>\n </div>\n </div>\n\n <!-- Assessment list start from here -->\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"\n assessment.id === selectedAssessment?.assessment_id &&\n data.id === selectedAssessment?.category_id\n \">\n <div class=\"table-column serial\">\n <div [id]=\"'sub-sr-no' + i + j\" class=\"sr-no\" appTooltip=\"{{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\n {{\n dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)\n }}.{{ j + 1 }}\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"\n assessment?.id === selectedAssessment?.assessment_id &&\n data?.id === selectedAssessment?.category_id\n \" (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\n </div>\n </div>\n <div class=\"table-column sub-name\">\n <div class=\"value\" [appTooltip]=\"\n 'Mission and message, communications to external audiences'\n \" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">\n {{ assessment?.assessment_name }}\n </div>\n </div>\n <div class=\"table-column question\">\n <div class=\"buttons\">\n <button class=\"action-btn\" (click)=\"preview(assessment)\">\n <i class=\"icons\">&#xeae5;</i> Preview\n </button>\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\n </div>\n <div class=\"label\">\n {{ assessment?.questions }}\n {{ assessment?.questions > 1 ? \"Questions\" : \"Question\" }}\n </div>\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\n </div>\n </div>\n </ng-container>\n <!-- Loader loading isLoader -->\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\n </div>\n <!-- No data image -->\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\"\n [noDataImage]=\"ASSETS.search_data\" [noDataText]=\"'No Data to Display'\"></app-no-data>\n\n <app-floating-bar [selectedData]=\"[]\" (closeEvent)=\"save()\" (closeList)=\"close()\"\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\" [selectedData]=\"\n selectedAssessment?.assessment_id\n ? [selectedAssessment?.assessmentDetails]\n : []\n \" [displayElementKey]=\"'assessment_name'\" [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\"\n (deleteEvent)=\"deleteEvent($event)\">\n </app-floating-bar>\n </div>\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .assessment-list{position:fixed;inset:0 500px 0 0}::ng-deep .assessment-list:before{background:#1e5dd3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .assessment-list.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .assessment-list-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .assessment-list-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .assessment-list-body .search-block{position:relative}::ng-deep .assessment-list-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .assessment-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .assessment-list-body .search-block i{position:absolute;left:1rem;top:1rem;pointer-events:none;color:#f1f1f1;font-size:12px}::ng-deep .assessment-list-body app-workflow-pagination .pagination-sec{padding-bottom:0!important}::ng-deep .assessment-list-body .assessment-list-part{height:calc(100vh - 242px);overflow:auto;padding:8px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-selected{margin-bottom:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-heading{color:#161b2f;font-size:12px;font-weight:600;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item{border:1px solid #f1f1f1;border-radius:2px;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .main-list{cursor:pointer}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item.active{border-color:#1e5dd3;box-shadow:0 3px 6px #4681ef26}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row{display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row.disabled{pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column{color:#747576;height:48px;position:relative;width:100%;display:flex;align-items:center;padding:0 4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no{width:16px;background:#f8f8f8;writing-mode:vertical-lr;color:#747576;font-size:10px;font-weight:500;display:flex;height:100%;align-items:center;justify-content:center;position:relative;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio{position:absolute;top:8px;left:0;opacity:0;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio .radio-item{position:absolute;left:8px;top:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name{width:calc(100% - 64px);min-width:calc(100% - 64px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner .value{color:#161b2f;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.arrow{background:transparent;border:none;border-radius:0;color:#747576;font-size:12px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;height:100%;width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.disabled{opacity:.5!important;pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name{width:calc(100% - 232px);min-width:calc(100% - 232px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .value{color:#747576;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question{width:200px;max-width:200px;justify-content:flex-end}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons{display:flex;opacity:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:22px;text-transform:uppercase;padding:0 8px;display:flex;align-items:center;margin:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row:hover .table-column.question .buttons{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row{border-top:1px solid #f1f1f1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no{color:#f8f8f8}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no app-cs-radio,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no app-cs-radio{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row .table-column{height:32px}::ng-deep .assessment-list-body ul{padding:0;margin:0}::ng-deep .assessment-list-body ul.assessment{max-height:calc(100vh - 240px);overflow:auto;padding:16px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body ul.assessment li{padding:0 0 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body ul.assessment li app-cs-radio{width:calc(100% - 260px)}::ng-deep .assessment-list-body ul.assessment li app-cs-radio .radio-item .value .name{font-size:12px;color:#161b2f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .assessment-list-body ul.assessment li .right{display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px}::ng-deep .assessment-list-body ul.assessment li .right .buttons{display:flex;width:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:24px;text-transform:uppercase;padding:0 8px;margin-left:12px;display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body ul.assessment li:hover .right .buttons{width:156px}::ng-deep .assessment-list-body app-no-data .no-data-wrapper{height:calc(100% - 118px)}::ng-deep .assessment-list.full-screen{width:100%}::ng-deep .assessment-list.full-screen:before{display:none}.within-part{display:flex;align-items:center;padding-right:12px}.within-part .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px;color:#747576}.within-box{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding:0 4px;margin-right:8px;line-height:12px}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"] }]
195
195
  }], ctorParameters: function () { return [{ type: i1.ResponsibilityService }, { type: i2.AssessmentService }, { type: i3.AuthService }]; }, propDecorators: { isEdit: [{
196
196
  type: Input
197
197
  }], mode: [{
@@ -209,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
209
209
  }], cancelAssessment: [{
210
210
  type: Output
211
211
  }] } });
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXNzbWVudC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvYXNzZXNzbWVudC1saXN0L2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2Fzc2Vzc21lbnQtbGlzdC9hc3Nlc3NtZW50LWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEvRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQU0xRCxNQUFNLE9BQU8sdUJBQXVCO0lBZ0RsQyxZQUNVLHFCQUE0QyxFQUM1QyxpQkFBb0MsRUFDcEMsSUFBaUI7UUFGakIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFNBQUksR0FBSixJQUFJLENBQWE7UUFsRDNCLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFDaEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ1AsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDbkIsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO1FBQ25DLHNCQUFpQixHQUFHO1lBQ2xCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE9BQU8sRUFBRSxHQUFHO1lBQ1osS0FBSyxFQUFFLFFBQVE7WUFDZixXQUFXLEVBQUUsRUFBRTtZQUNmLGVBQWUsRUFBRSxFQUFF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O1FBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQzsrR0F2TVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsMFZDZHBDLG0vVEE0TE07OzRGRDlLTyx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0UscUJBQXFCO3NLQVN0QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQXNCRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBWUcsc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBRUcsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi93b3JrZmxvdy1zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vd29ya2Zsb3ctc2VydmljZXMvcmVzcG9uc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQge1xuICBBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0LFxuICBBc3Nlc3NtZW50TGlzdCxcbn0gZnJvbSAnLi9zZXJ2aWNlL2Fzc2Vzc21lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFzc2Vzc21lbnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlL2Fzc2Vzc21lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYXNzZXRzLmNvbnN0YW50cyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXNzZXNzbWVudC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBc3Nlc3NtZW50TGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEFTU0VUUyA9IEFTU0VUUztcbiAgYW5pbWF0aW9uID0gZmFsc2U7XG4gIHNlbGVjdGVkRGF0YTogYW55O1xuICBzdWJMaXN0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRWRpdCA9IGZhbHNlO1xuICBASW5wdXQoKSBtb2RlID0gJyc7XG4gIG9wZW5lZENhdGVnb3J5OiBBcnJheTxudW1iZXI+ID0gW107XG4gIGFzc2Vzc21lbnRQYXlsb2FkID0ge1xuICAgIHNlYXJjaF90aXRsZTogJycsXG4gICAgcGFnZV9ubzogJzEnLFxuICAgIHN0YXRlOiAnQUNUSVZFJyxcbiAgICBzZWFyY2hfdGV4dDogJycsXG4gICAgYWxwaGFiZXRfZmlsdGVyOiAnJyxcbiAgfTtcblxuICBkYXRhUGVyUGFnZSA9IDA7XG5cbiAgYXNzZXNzbWVudENhdGVnb3J5OiBBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0ID0ge1xuICAgIGRhdGE6IFtdLFxuICAgIHRvdGFsUGFnZTogMCxcbiAgICB0b3RhbFJlY29yZHM6IDAsXG4gICAgc3RhcnRfdmFsdWU6IDAsXG4gICAgZW5kX3ZhbHVlOiAwLFxuICAgIGN1cnJlbnRQYWdlOiAwLFxuICB9O1xuICBpc0xvYWRlciA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNlbGVjdGVkQXNzZXNzbWVudCA9IHtcbiAgICBhc3Nlc3NtZW50X2lkOiAnJyxcbiAgICBjYXRlZ29yeV9pZDogJycsXG4gICAgYXNzZXNzbWVudERldGFpbHM6IHVuZGVmaW5lZCxcbiAgICBjYXRlZ29yeV9kZXRhaWxzOiB1bmRlZmluZWQsXG4gIH07XG5cbiAgaXNEZWxldGVkID0gZmFsc2U7XG5cbiAgc2VhcmNoQXNzZXNzbWVudHMgPSAnJztcbiAgcHJldmlld1F1ZXN0aW9uRGF0YSE6IGFueTtcbiAgaXNQcmV2aWV3ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlbGVjdGVkQXNzZXNzbWVudERhdGE6IGFueTtcbiAgQElucHV0KCkgcHJvZ3JhbV9pZHM6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0Z1bGxTY3JlZW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgb25Bc3Nlc3NtZW50U2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKSBjYW5jZWxBc3Nlc3NtZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzcG9uc2liaWxpdHlTZXJ2aWNlOiBSZXNwb25zaWJpbGl0eVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhc3Nlc3NtZW50U2VydmljZTogQXNzZXNzbWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZVxuICApIHtcbiAgICB0aGlzLmRhdGFQZXJQYWdlID0gdGhpcy5yZXNwb25zaWJpbGl0eVNlcnZpY2UuZGF0YVBlclBhZ2U7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIH0sIDMwMCk7XG4gIH1cblxuICBvbkFzc2Vzc21lbnRTZWxlY3RlZChldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGEgPSBldmVudDtcbiAgfVxuXG4gIHByZXZpZXcoZXZ0OiBhbnkpIHtcbiAgICB0aGlzLmFzc2Vzc21lbnRTZXJ2aWNlLmdldEFzc2Vzc21lbnRRdWVzdGlvbnMoZXZ0Py5pZCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmF1dGgucHJldmlld1BhbmVsLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuaXNQcmV2aWV3ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5wcmV2aWV3UXVlc3Rpb25EYXRhID0gcmVzO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHByZXZpZXdCYWNrKCkge1xuICAgIHRoaXMuaXNQcmV2aWV3ID0gZmFsc2U7XG4gICAgdGhpcy5wcmV2aWV3UXVlc3Rpb25EYXRhID0ge307XG4gICAgdGhpcy5hdXRoLnByZXZpZXdQYW5lbC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggOiBBY2NlcHQgaW5kZXggb2YgZWxlbWVudFBvc2l0aW9uXG4gICAqXG4gICAqL1xuICBzaG93U3ViTGlzdChpbmRleDogbnVtYmVyLCBpZDogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMub3BlbmVkQ2F0ZWdvcnkuaW5jbHVkZXMoaW5kZXgpKSB7XG4gICAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gdGhpcy5vcGVuZWRDYXRlZ29yeS5maWx0ZXIoKGVsZSkgPT4gZWxlICE9PSBpbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbmVkQ2F0ZWdvcnkucHVzaChpbmRleCk7XG4gICAgICB0aGlzLmdldEFzc2Vzc21lbnRMaXN0KGluZGV4LCBpZCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wZW5lZENhdGVnb3J5O1xuICB9XG5cbiAgLy8gVE9ETzogUGFnaW5hdGlvblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50IDogcGFnZSBudW1iZXIgdGhhdCBoYXMgYmVlbiBzZWxlY3RlZFxuICAgKi9cbiAgb25QYWdlU2VsZWN0aW9uKGV2ZW50OiBudW1iZXIpIHtcbiAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gW107XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vID0gZXZlbnQudG9TdHJpbmcoKTtcbiAgICB0aGlzLmdldEFzc2Vzc21lbnRDYXRlZ29yeUxpc3QoKTtcbiAgfVxuXG4gIC8vIFRPRE86IFNlYXJjaFxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHNlYXJjaCA6IHNlYXJjaCB0ZXh0XG4gICAqL1xuICBvbkFzc2Vzc21lbnRTZWFyY2goc2VhcmNoOiBzdHJpbmcpIHtcbiAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gW107XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vID0gJzEnO1xuICAgIHRoaXMuYXNzZXNzbWVudFBheWxvYWQuc2VhcmNoX3RpdGxlID0gc2VhcmNoO1xuICAgIHRoaXMuYXNzZXNzbWVudFBheWxvYWQuc2VhcmNoX3RleHQgPSBzZWFyY2g7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gIH1cblxuICAvLyBUT0RPOiBGaWx0ZXIgYnkgYWxwaGFiZXRcbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCA6IEFzc2Vzc21lbnQgY2F0ZWdvcnkgZmlsdGVyIG9mIEFscGhhYmV0XG4gICAqL1xuICBvbkFscGhhYmV0U2VsZWN0ZWQoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMub3BlbmVkQ2F0ZWdvcnkgPSBbXTtcbiAgICB0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLnBhZ2Vfbm8gPSAnMSc7XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5hbHBoYWJldF9maWx0ZXIgPSBldmVudDtcbiAgICB0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLnNlYXJjaF90ZXh0ID0gJyc7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gIH1cblxuICAvLyBUT0RPOiBDYWxsIEFQSSBtZXRob2RcbiAgZ2V0QXNzZXNzbWVudENhdGVnb3J5TGlzdCgpIHtcbiAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICB0aGlzLnJlc3BvbnNpYmlsaXR5U2VydmljZVxuICAgICAgLmdldEFzc2Vzc21lbnRDYXRlZ29yeSh0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLCB0aGlzLnByb2dyYW1faWRzKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5hc3Nlc3NtZW50Q2F0ZWdvcnkgPSByZXM7XG4gICAgICAgIHRoaXMuaXNMb2FkZXIgPSBmYWxzZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLy8gVE9ETzogQ2FsbCBTdWIgZGF0YSBBUEkgbWV0aG9kXG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBpZCA6IEFzc2Vzc21lbnQgY2F0ZWdvcnkgaWRcbiAgICovXG4gIGdldEFzc2Vzc21lbnRMaXN0KGluZGV4OiBudW1iZXIsIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgc2VhcmNoX3RpdGxlOiAnJyxcbiAgICB9O1xuICAgIHRoaXMucmVzcG9uc2liaWxpdHlTZXJ2aWNlXG4gICAgICAuZ2V0QXNzZXNzbWVudExpc3QocGF5bG9hZCwgaWQsIHRoaXMucHJvZ3JhbV9pZHMpXG4gICAgICAuc3Vic2NyaWJlKChyZXM6IEFycmF5PEFzc2Vzc21lbnRMaXN0PikgPT4ge1xuICAgICAgICB0aGlzLmFzc2Vzc21lbnRDYXRlZ29yeS5kYXRhW2luZGV4XS5hc3Nlc3NtZW50RGF0YSA9IFsuLi5uZXcgU2V0KHJlcyldO1xuICAgICAgfSk7XG4gIH1cblxuICAvLyAgVE9ETzogU2VsZWN0IGRhdGFcbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBjYXRlZ29yeV9pZCA6c2VsZWN0ZWQgYXNzZXNzbWVudCdzIGNhdGVnb3J5J3Mgb2JqZWN0IGlkXG4gICAqIEBwYXJhbSBhc3Nlc3NtZW50X2lkIDogU2VsZWN0ZWQgYXNzZXNzbWVudCdzIG9iamVjdCBpZFxuICAgKi9cbiAgc2V0QXNzZXNzbWVudChjYXRlZ29yeV9kZXRhaWxzOiBhbnksIGFzc2Vzc21lbnREZXRhaWxzOiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkQXNzZXNzbWVudCA9IHtcbiAgICAgIGNhdGVnb3J5X2lkOiBjYXRlZ29yeV9kZXRhaWxzPy5pZCxcbiAgICAgIGFzc2Vzc21lbnRfaWQ6IGFzc2Vzc21lbnREZXRhaWxzLmlkLFxuICAgICAgYXNzZXNzbWVudERldGFpbHM6IGFzc2Vzc21lbnREZXRhaWxzLFxuICAgICAgY2F0ZWdvcnlfZGV0YWlsczogY2F0ZWdvcnlfZGV0YWlscyxcbiAgICB9O1xuICB9XG5cbiAgLy8gVE9ETzogRGlzcGxheSBzZWxlY3RlZCBkYXRhIGluIGJvdHRvbSBmbG9hdGluZyBiYXIgd2l0aCBuZXh0IGVuYWJsZWQgYnV0dG9uIGhhdmluZ1xuXG4gIC8vIFRPRE86IFNlbmQgZGF0YSBpbiBwYXlsb2FkIG9mIGNyZWF0ZSBSZXNwb25zaWJpbGl0eSBmb3JtXG5cbiAgc2F2ZSgpIHtcbiAgICB0aGlzLm9uQXNzZXNzbWVudFNlbGVjdC5lbWl0KHRoaXMuc2VsZWN0ZWRBc3Nlc3NtZW50KTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuY2FuY2VsQXNzZXNzbWVudC5lbWl0KCk7XG4gIH1cblxuICBkZWxldGVFdmVudChldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZEFzc2Vzc21lbnQgPSB7XG4gICAgICBhc3Nlc3NtZW50X2lkOiAnJyxcbiAgICAgIGNhdGVnb3J5X2lkOiAnJyxcbiAgICAgIGFzc2Vzc21lbnREZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgICBjYXRlZ29yeV9kZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgICB0aGlzLmlzRGVsZXRlZCA9IHRydWU7XG4gIH1cblxuICAvLyBUT0RPOiBwb3B1bGF0ZSBkYXRhIHdoaWxlIGVkaXRpbmcgZGF0YVxuXG4gIC8vIFRPRE86RW5hYmxlIEVESVQgVUkgdG8gaW1wcm92ZSB1c2VyIEV4cGVyaWVuY2VcblxuICAvLyAgVE9ETzogYmxvY2sgdXNlcnMgZm9yIHNlbGVjdGluZyBjaGVja3BvaW50c1xuXG4gIC8vIFRPRE86IGNoZWNrcG9pbnRzXG59XG4iLCI8YXBwLXByZXZpZXcgKm5nSWY9XCJpc1ByZXZpZXdcIiBbcXVlc3Rpb25EYXRhXT1cInByZXZpZXdRdWVzdGlvbkRhdGFcIiAocHJldmlld0JhY2spPVwicHJldmlld0JhY2soKVwiPjwvYXBwLXByZXZpZXc+XG48ZGl2IGNsYXNzPVwiYXNzZXNzbWVudC1saXN0XCIgW2NsYXNzLmFuaW1hdGVdPVwiYW5pbWF0aW9uXCIgW2NsYXNzLmZ1bGwtc2NyZWVuXT1cImlzRnVsbFNjcmVlblwiPlxuICA8ZGl2ICpuZ0lmPVwiIWlzRnVsbFNjcmVlblwiIGNsYXNzPVwiYXNzZXNzbWVudC1saXN0LWhlYWQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcGwtNCB2eC1wci00XCI+XG4gICAgPGRpdiBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj5TZWxlY3QgYW4gQXNzZXNzbWVudDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1ib2R5XCI+XG4gICAgPGRpdiBjbGFzcz1cInNlYXJjaC1ibG9ja1wiPlxuICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGI7PC9pPlxuICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJzZWFyY2hBc3Nlc3NtZW50c1wiIChjaGFuZ2UpPVwib25Bc3Nlc3NtZW50U2VhcmNoKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggQXNzZXNzbWVudCBDYXRlZ29yeVwiIC8+XG4gICAgPC9kaXY+XG4gICAgPGFwcC13b3JrZmxvdy1wYWdpbmF0aW9uIFtwYWdlQ291bnRdPVwiYXNzZXNzbWVudENhdGVnb3J5Py50b3RhbFBhZ2VcIiBbdG90YWxdPVwiYXNzZXNzbWVudENhdGVnb3J5Py50b3RhbFJlY29yZHNcIlxuICAgICAgW3N0YXJ0XT1cImFzc2Vzc21lbnRDYXRlZ29yeT8uc3RhcnRfdmFsdWVcIiBbZW5kXT1cImFzc2Vzc21lbnRDYXRlZ29yeT8uZW5kX3ZhbHVlXCIgW2FjdGl2ZUFscGhhYmV0XT1cIicnXCJcbiAgICAgIChzZWxlY3RlZEFscGhhYmV0KT1cIm9uQWxwaGFiZXRTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAgIChzZWxlY3RlZFBhZ2UpPVwib25QYWdlU2VsZWN0aW9uKCRldmVudClcIj48L2FwcC13b3JrZmxvdy1wYWdpbmF0aW9uPlxuICAgIDxkaXYgKm5nSWY9XCJcbiAgICAgICAgYXNzZXNzbWVudENhdGVnb3J5LmRhdGEubGVuZ3RoID09PSAwICYmICFpc0xvYWRlciAmJiBzZWFyY2hBc3Nlc3NtZW50c1xuICAgICAgXCIgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtcGFydCB2eC1tYi00XCI+XG4gICAgICA8YXBwLW5vLWRhdGEgW25vRGF0YUltYWdlXT1cIkFTU0VUUy5zZWFyY2hfZGF0YVwiIFtub0RhdGFUZXh0XT1cIidObyBBc3Nlc3NtZW50cyBGb3VuZC4nXCI+PC9hcHAtbm8tZGF0YT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzZXNzbWVudENhdGVnb3J5LmRhdGEubGVuZ3RoIHx8IGlzTG9hZGVyXCIgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtcGFydCB2eC1tYi00XCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwiaXNFZGl0ICYmIHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudERldGFpbHM/LmFzc2Vzc21lbnRfbmFtZVwiIGNsYXNzPVwiYXNzZXNzbWVudC1saXN0LXNlbGVjdGVkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtaGVhZGluZ1wiPlxuICAgICAgICAgIHt7XG4gICAgICAgICAgbW9kZSA9PT0gXCJwb2xpY3lcIlxuICAgICAgICAgID8gXCJBc3Nlc3NtZW50IGFscmVhZHkgc2VsZWN0ZWRcIlxuICAgICAgICAgIDogXCJBc3Nlc3NtZW50IGFscmVhZHkgc2VsZWN0ZWQgZm9yIHRoaXMgcmVzcG9uc2liaWxpdHlcIlxuICAgICAgICAgIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXNzZXNzbWVudC1saXN0LWl0ZW1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHNlcmlhbCBkaXNhYmxlZFwiPlxuICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtkaXNhYmxlZF09XCJ0cnVlXCIgY2xhc3M9XCJkaXNhYmxlZFwiIFtjaGVja2VkXT1cInRydWVcIiBbcmVhZG9ubHldPVwidHJ1ZVwiPjwvYXBwLWNzLXJhZGlvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHN1Yi1uYW1lXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCIgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudERldGFpbHM/LmFzc2Vzc21lbnRfbmFtZVxuICAgICAgICAgICAgICAgICAgXCIgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiPlxuICAgICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlscz8uYXNzZXNzbWVudF9uYW1lIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndpdGhpbi1wYXJ0XCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndpdGhpbi1ib3hcIj5XaXRoaW48L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCIgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9kZXRhaWxzPy5jYXRlZ29yeV9uYW1lICtcbiAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9kZXRhaWxzPy5wYXJlbnRfdHJlZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyAnID4gJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQXNzZXNzbWVudD8uY2F0ZWdvcnlfZGV0YWlscz8ucGFyZW50X3RyZWVcbiAgICAgICAgICAgICAgICAgICAgICAgIDogJycpXG4gICAgICAgICAgICAgICAgICAgIFwiIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCIgZGVsYXk9XCIwXCIgdHlwZT1cImJsYWNrXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIj57e1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2RldGFpbHM/LmNhdGVnb3J5X25hbWUgK1xuICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9kZXRhaWxzPy5wYXJlbnRfdHJlZVxuICAgICAgICAgICAgICAgICAgICA/IFwiID4gXCIgK1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2RldGFpbHM/LnBhcmVudF90cmVlXG4gICAgICAgICAgICAgICAgICAgIDogXCJcIilcbiAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHF1ZXN0aW9uXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b25zXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFjdGlvbi1idG5cIiAoY2xpY2spPVwicHJldmlldyhzZWxlY3RlZEFzc2Vzc21lbnQ/LmFzc2Vzc21lbnREZXRhaWxzKVwiPlxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGVhZTU7PC9pPiBQcmV2aWV3XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBjOzwvaT4gRWRpdDwvYnV0dG9uPiAtLT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHt7IHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudERldGFpbHM/LnF1ZXN0aW9ucyB9fVxuICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlscz8ucXVlc3Rpb25zID4gMVxuICAgICAgICAgICAgICAgID8gXCJRdWVzdGlvbnNcIlxuICAgICAgICAgICAgICAgIDogXCJRdWVzdGlvblwiXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtaGVhZGluZ1wiPlxuICAgICAgICB7e1xuICAgICAgICBtb2RlID09PSBcInBvbGljeVwiXG4gICAgICAgID8gXCJTZWxlY3QgYW4gQXNzZXNzbWVudFwiXG4gICAgICAgIDogXCJTZWxlY3QgYW4gQXNzZXNzbWVudCBmb3IgdGhpcyByZXNwb25zaWJpbGl0eVwiXG4gICAgICAgIH19XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLVxuICAgICAgICAgICAgICAgICAgICBBc3Nlc3NtZW50IGNhdGVnb3J5IGxpc3QgXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZSBjbGFzcyBpcyB1c2VkIGZvciBoaWdobGlnaHRpbmcgb3BlbmVkIGVsZW1lbnRcbiAgICAgICAgICAgIC0tPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRlclwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBkYXRhIG9mIGFzc2Vzc21lbnRDYXRlZ29yeS5kYXRhOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtaXRlbVwiIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICBvcGVuZWRDYXRlZ29yeS5pbmNsdWRlcyhpKSB8fFxuICAgICAgICAgICAgZGF0YS5pZCA9PT0gc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9pZFxuICAgICAgICAgIFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yb3cgbWFpbi1saXN0XCIgKGNsaWNrKT1cInNob3dTdWJMaXN0KGksIGRhdGE/LmlkKVwiXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGF0YT8uYXNzZXNzbWVudGNvdW50IDwgMVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiBzZXJpYWxcIj5cbiAgICAgICAgICAgICAgPGRpdiBbaWRdPVwiJ3NyLW5vJyArIGlcIiBjbGFzcz1cInNyLW5vXCIgW2FwcFRvb2x0aXBdPVwiaSArIDFcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj5cbiAgICAgICAgICAgICAgICB7eyBkYXRhUGVyUGFnZSAqIChhc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vIC0gMSkgKyAoaSArIDEpIH19XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIG5hbWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWUtaW5uZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIiBbYXBwVG9vbHRpcF09XCJkYXRhLmNhdGVnb3J5X25hbWVcIiBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiPlxuICAgICAgICAgICAgICAgICAge3sgZGF0YT8uY2F0ZWdvcnlfbmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3aXRoaW4tcGFydFwiICpuZ0lmPVwiZGF0YT8ucGFyZW50X3RyZWVcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2l0aGluLWJveFwiPldpdGhpbjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIiBbYXBwVG9vbHRpcF09XCJkYXRhLnBhcmVudF90cmVlXCIgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiPnt7IGRhdGE/LnBhcmVudF90cmVlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiBhY3Rpb25cIj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBbaWRdPVwiJ2Fycm93JyArIGlcIiBjbGFzcz1cImFycm93XCIgW2NsYXNzLmRpc2FibGVkXT1cImRhdGE/LmFzc2Vzc21lbnRjb3VudCA8IDFcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkYXRhPy5hc3Nlc3NtZW50Y291bnQgPCAxXCI+XG4gICAgICAgICAgICAgICAgPGkgKm5nSWY9XCIhb3BlbmVkQ2F0ZWdvcnkuaW5jbHVkZXMoaSlcIiBjbGFzcz1cImljb25zXCI+JiN4ZTk3MDs8L2k+XG4gICAgICAgICAgICAgICAgPGkgKm5nSWY9XCJvcGVuZWRDYXRlZ29yeS5pbmNsdWRlcyhpKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWU4OzwvaT5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDwhLS0gQXNzZXNzbWVudCBsaXN0IHN0YXJ0IGZyb20gaGVyZSAtLT5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwib3BlbmVkQ2F0ZWdvcnkuaW5jbHVkZXMoaSlcIiBjbGFzcz1cInN1Yi1saXN0XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5hc3Nlc3NtZW50RGF0YT8ubGVuZ3RoID4gMFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcm93XCIgKm5nRm9yPVwibGV0IGFzc2Vzc21lbnQgb2YgZGF0YS5hc3Nlc3NtZW50RGF0YTsgbGV0IGogPSBpbmRleFwiIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICAgICAgICBhc3Nlc3NtZW50LmlkID09PSBzZWxlY3RlZEFzc2Vzc21lbnQ/LmFzc2Vzc21lbnRfaWQgJiZcbiAgICAgICAgICAgICAgICAgIGRhdGEuaWQgPT09IHNlbGVjdGVkQXNzZXNzbWVudD8uY2F0ZWdvcnlfaWRcbiAgICAgICAgICAgICAgICBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHNlcmlhbFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBbaWRdPVwiJ3N1Yi1zci1ubycgKyBpICsgalwiIGNsYXNzPVwic3Itbm9cIiBhcHBUb29sdGlwPVwie3tcbiAgICAgICAgICAgICAgICAgICAgICBkYXRhUGVyUGFnZSAqIChhc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vIC0gMSkgKyAoaSArIDEpXG4gICAgICAgICAgICAgICAgICAgIH19Lnt7IGogKyAxIH19XCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cImJsYWNrXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBkYXRhUGVyUGFnZSAqIChhc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vIC0gMSkgKyAoaSArIDEpXG4gICAgICAgICAgICAgICAgICAgIH19Lnt7IGogKyAxIH19XG4gICAgICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gbmFtZT1cImFzc2Vzc21lbnRcIiBbdmFsdWVdPVwiYXNzZXNzbWVudC5pZFwiIFtjaGVja2VkXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXNzbWVudD8uaWQgPT09IHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudF9pZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YT8uaWQgPT09IHNlbGVjdGVkQXNzZXNzbWVudD8uY2F0ZWdvcnlfaWRcbiAgICAgICAgICAgICAgICAgICAgICBcIiAoY2hlY2tlZEV2ZW50KT1cInNldEFzc2Vzc21lbnQoZGF0YSwgYXNzZXNzbWVudClcIj48L2FwcC1jcy1yYWRpbz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gc3ViLW5hbWVcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiIFthcHBUb29sdGlwXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICdNaXNzaW9uIGFuZCBtZXNzYWdlLCBjb21tdW5pY2F0aW9ucyB0byBleHRlcm5hbCBhdWRpZW5jZXMnXG4gICAgICAgICAgICAgICAgICAgIFwiIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCIgZGVsYXk9XCIwXCIgdHlwZT1cImJsYWNrXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXNzZXNzbWVudD8uYXNzZXNzbWVudF9uYW1lIH19XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHF1ZXN0aW9uXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIChjbGljayk9XCJwcmV2aWV3KGFzc2Vzc21lbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGVhZTU7PC9pPiBQcmV2aWV3XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+IC0tPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXNzZXNzbWVudD8ucXVlc3Rpb25zIH19XG4gICAgICAgICAgICAgICAgICAgIHt7IGFzc2Vzc21lbnQ/LnF1ZXN0aW9ucyA+IDEgPyBcIlF1ZXN0aW9uc1wiIDogXCJRdWVzdGlvblwiIH19XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwhLS0gTG9hZGVyIGxvYWRpbmcgaXNMb2FkZXIgIC0tPlxuICAgICAgICAgICAgPGFwcC1hc3Nlc3NtZW50LWxpc3Qtc3ViLWxvYWRlciAqbmdJZj1cIiFkYXRhLmFzc2Vzc21lbnREYXRhPy5sZW5ndGhcIj48L2FwcC1hc3Nlc3NtZW50LWxpc3Qtc3ViLWxvYWRlcj5cbiAgICAgICAgICAgIDwhLS0gPGFwcC1saW5lLWxvYWRlciAqbmdJZj1cIiFkYXRhLmFzc2Vzc21lbnREYXRhPy5sZW5ndGhcIiBbbG9hZGVySGVpZ2h0XT1cIic1J1wiPjwvYXBwLWxpbmUtbG9hZGVyPiAtLT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwhLS0gTG9hZGVyIGxvYWRpbmcgaXNMb2FkZXIgIC0tPlxuICAgICAgPGFwcC1hc3Nlc3NtZW50LWxpc3QtbG9hZGVyICpuZ0lmPVwiaXNMb2FkZXJcIj48L2FwcC1hc3Nlc3NtZW50LWxpc3QtbG9hZGVyPlxuICAgIDwvZGl2PlxuICAgIDwhLS0gTm8gZGF0YSBpbWFnZSAgLS0+XG4gICAgPGFwcC1uby1kYXRhICpuZ0lmPVwiIWFzc2Vzc21lbnRDYXRlZ29yeS5kYXRhLmxlbmd0aCAmJiAhaXNMb2FkZXIgJiYgIXNlYXJjaEFzc2Vzc21lbnRzXCJcbiAgICAgIFtub0RhdGFJbWFnZV09XCJBU1NFVFMuc2VhcmNoX2RhdGFcIiBbbm9EYXRhVGV4dF09XCInTm8gRGF0YSB0byBEaXNwbGF5J1wiPjwvYXBwLW5vLWRhdGE+XG5cbiAgICA8YXBwLWZsb2F0aW5nLWJhciBbc2VsZWN0ZWREYXRhXT1cIltdXCIgKGNsb3NlRXZlbnQpPVwic2F2ZSgpXCIgKGNsb3NlTGlzdCk9XCJjbG9zZSgpXCJcbiAgICAgIFtpc0Rpc2FibGVkXT1cIiFzZWxlY3RlZEFzc2Vzc21lbnQ/LmFzc2Vzc21lbnRfaWQgJiYgIWlzRGVsZXRlZFwiIFtzZWxlY3RlZERhdGFdPVwiXG4gICAgICAgIHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudF9pZFxuICAgICAgICAgID8gW3NlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudERldGFpbHNdXG4gICAgICAgICAgOiBbXVxuICAgICAgXCIgW2Rpc3BsYXlFbGVtZW50S2V5XT1cIidhc3Nlc3NtZW50X25hbWUnXCIgW3BsdXJhbFRleHRdPVwiJ1Jpc2sgQ2F0ZWdvcmllcyBzZWxlY3RlZCdcIiAoY2xvc2VFdmVudCk9XCJzYXZlKClcIlxuICAgICAgKGRlbGV0ZUV2ZW50KT1cImRlbGV0ZUV2ZW50KCRldmVudClcIj5cbiAgICA8L2FwcC1mbG9hdGluZy1iYXI+XG4gIDwvZGl2PlxuPC9kaXY+Il19
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXNzbWVudC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvYXNzZXNzbWVudC1saXN0L2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2Fzc2Vzc21lbnQtbGlzdC9hc3Nlc3NtZW50LWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEvRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQU0xRCxNQUFNLE9BQU8sdUJBQXVCO0lBZ0RsQyxZQUNVLHFCQUE0QyxFQUM1QyxpQkFBb0MsRUFDcEMsSUFBaUI7UUFGakIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFNBQUksR0FBSixJQUFJLENBQWE7UUFsRDNCLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFDaEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ1AsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDbkIsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO1FBQ25DLHNCQUFpQixHQUFHO1lBQ2xCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE9BQU8sRUFBRSxHQUFHO1lBQ1osS0FBSyxFQUFFLFFBQVE7WUFDZixXQUFXLEVBQUUsRUFBRTtZQUNmLGVBQWUsRUFBRSxFQUFF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O1FBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQzsrR0F2TVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsMFZDZHBDLHNoVUE2TE07OzRGRC9LTyx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0UscUJBQXFCO3NLQVN0QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQXNCRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBWUcsc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBRUcsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi93b3JrZmxvdy1zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vd29ya2Zsb3ctc2VydmljZXMvcmVzcG9uc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQge1xuICBBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0LFxuICBBc3Nlc3NtZW50TGlzdCxcbn0gZnJvbSAnLi9zZXJ2aWNlL2Fzc2Vzc21lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFzc2Vzc21lbnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlL2Fzc2Vzc21lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYXNzZXRzLmNvbnN0YW50cyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXNzZXNzbWVudC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2Vzc21lbnQtbGlzdC5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBc3Nlc3NtZW50TGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEFTU0VUUyA9IEFTU0VUUztcbiAgYW5pbWF0aW9uID0gZmFsc2U7XG4gIHNlbGVjdGVkRGF0YTogYW55O1xuICBzdWJMaXN0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRWRpdCA9IGZhbHNlO1xuICBASW5wdXQoKSBtb2RlID0gJyc7XG4gIG9wZW5lZENhdGVnb3J5OiBBcnJheTxudW1iZXI+ID0gW107XG4gIGFzc2Vzc21lbnRQYXlsb2FkID0ge1xuICAgIHNlYXJjaF90aXRsZTogJycsXG4gICAgcGFnZV9ubzogJzEnLFxuICAgIHN0YXRlOiAnQUNUSVZFJyxcbiAgICBzZWFyY2hfdGV4dDogJycsXG4gICAgYWxwaGFiZXRfZmlsdGVyOiAnJyxcbiAgfTtcblxuICBkYXRhUGVyUGFnZSA9IDA7XG5cbiAgYXNzZXNzbWVudENhdGVnb3J5OiBBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0ID0ge1xuICAgIGRhdGE6IFtdLFxuICAgIHRvdGFsUGFnZTogMCxcbiAgICB0b3RhbFJlY29yZHM6IDAsXG4gICAgc3RhcnRfdmFsdWU6IDAsXG4gICAgZW5kX3ZhbHVlOiAwLFxuICAgIGN1cnJlbnRQYWdlOiAwLFxuICB9O1xuICBpc0xvYWRlciA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNlbGVjdGVkQXNzZXNzbWVudCA9IHtcbiAgICBhc3Nlc3NtZW50X2lkOiAnJyxcbiAgICBjYXRlZ29yeV9pZDogJycsXG4gICAgYXNzZXNzbWVudERldGFpbHM6IHVuZGVmaW5lZCxcbiAgICBjYXRlZ29yeV9kZXRhaWxzOiB1bmRlZmluZWQsXG4gIH07XG5cbiAgaXNEZWxldGVkID0gZmFsc2U7XG5cbiAgc2VhcmNoQXNzZXNzbWVudHMgPSAnJztcbiAgcHJldmlld1F1ZXN0aW9uRGF0YSE6IGFueTtcbiAgaXNQcmV2aWV3ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlbGVjdGVkQXNzZXNzbWVudERhdGE6IGFueTtcbiAgQElucHV0KCkgcHJvZ3JhbV9pZHM6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0Z1bGxTY3JlZW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgb25Bc3Nlc3NtZW50U2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKSBjYW5jZWxBc3Nlc3NtZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzcG9uc2liaWxpdHlTZXJ2aWNlOiBSZXNwb25zaWJpbGl0eVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhc3Nlc3NtZW50U2VydmljZTogQXNzZXNzbWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZVxuICApIHtcbiAgICB0aGlzLmRhdGFQZXJQYWdlID0gdGhpcy5yZXNwb25zaWJpbGl0eVNlcnZpY2UuZGF0YVBlclBhZ2U7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIH0sIDMwMCk7XG4gIH1cblxuICBvbkFzc2Vzc21lbnRTZWxlY3RlZChldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGEgPSBldmVudDtcbiAgfVxuXG4gIHByZXZpZXcoZXZ0OiBhbnkpIHtcbiAgICB0aGlzLmFzc2Vzc21lbnRTZXJ2aWNlLmdldEFzc2Vzc21lbnRRdWVzdGlvbnMoZXZ0Py5pZCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmF1dGgucHJldmlld1BhbmVsLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuaXNQcmV2aWV3ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5wcmV2aWV3UXVlc3Rpb25EYXRhID0gcmVzO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHByZXZpZXdCYWNrKCkge1xuICAgIHRoaXMuaXNQcmV2aWV3ID0gZmFsc2U7XG4gICAgdGhpcy5wcmV2aWV3UXVlc3Rpb25EYXRhID0ge307XG4gICAgdGhpcy5hdXRoLnByZXZpZXdQYW5lbC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggOiBBY2NlcHQgaW5kZXggb2YgZWxlbWVudFBvc2l0aW9uXG4gICAqXG4gICAqL1xuICBzaG93U3ViTGlzdChpbmRleDogbnVtYmVyLCBpZDogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMub3BlbmVkQ2F0ZWdvcnkuaW5jbHVkZXMoaW5kZXgpKSB7XG4gICAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gdGhpcy5vcGVuZWRDYXRlZ29yeS5maWx0ZXIoKGVsZSkgPT4gZWxlICE9PSBpbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbmVkQ2F0ZWdvcnkucHVzaChpbmRleCk7XG4gICAgICB0aGlzLmdldEFzc2Vzc21lbnRMaXN0KGluZGV4LCBpZCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wZW5lZENhdGVnb3J5O1xuICB9XG5cbiAgLy8gVE9ETzogUGFnaW5hdGlvblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50IDogcGFnZSBudW1iZXIgdGhhdCBoYXMgYmVlbiBzZWxlY3RlZFxuICAgKi9cbiAgb25QYWdlU2VsZWN0aW9uKGV2ZW50OiBudW1iZXIpIHtcbiAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gW107XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vID0gZXZlbnQudG9TdHJpbmcoKTtcbiAgICB0aGlzLmdldEFzc2Vzc21lbnRDYXRlZ29yeUxpc3QoKTtcbiAgfVxuXG4gIC8vIFRPRE86IFNlYXJjaFxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHNlYXJjaCA6IHNlYXJjaCB0ZXh0XG4gICAqL1xuICBvbkFzc2Vzc21lbnRTZWFyY2goc2VhcmNoOiBzdHJpbmcpIHtcbiAgICB0aGlzLm9wZW5lZENhdGVnb3J5ID0gW107XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5wYWdlX25vID0gJzEnO1xuICAgIHRoaXMuYXNzZXNzbWVudFBheWxvYWQuc2VhcmNoX3RpdGxlID0gc2VhcmNoO1xuICAgIHRoaXMuYXNzZXNzbWVudFBheWxvYWQuc2VhcmNoX3RleHQgPSBzZWFyY2g7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gIH1cblxuICAvLyBUT0RPOiBGaWx0ZXIgYnkgYWxwaGFiZXRcbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCA6IEFzc2Vzc21lbnQgY2F0ZWdvcnkgZmlsdGVyIG9mIEFscGhhYmV0XG4gICAqL1xuICBvbkFscGhhYmV0U2VsZWN0ZWQoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMub3BlbmVkQ2F0ZWdvcnkgPSBbXTtcbiAgICB0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLnBhZ2Vfbm8gPSAnMSc7XG4gICAgdGhpcy5hc3Nlc3NtZW50UGF5bG9hZC5hbHBoYWJldF9maWx0ZXIgPSBldmVudDtcbiAgICB0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLnNlYXJjaF90ZXh0ID0gJyc7XG4gICAgdGhpcy5nZXRBc3Nlc3NtZW50Q2F0ZWdvcnlMaXN0KCk7XG4gIH1cblxuICAvLyBUT0RPOiBDYWxsIEFQSSBtZXRob2RcbiAgZ2V0QXNzZXNzbWVudENhdGVnb3J5TGlzdCgpIHtcbiAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICB0aGlzLnJlc3BvbnNpYmlsaXR5U2VydmljZVxuICAgICAgLmdldEFzc2Vzc21lbnRDYXRlZ29yeSh0aGlzLmFzc2Vzc21lbnRQYXlsb2FkLCB0aGlzLnByb2dyYW1faWRzKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5hc3Nlc3NtZW50Q2F0ZWdvcnkgPSByZXM7XG4gICAgICAgIHRoaXMuaXNMb2FkZXIgPSBmYWxzZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLy8gVE9ETzogQ2FsbCBTdWIgZGF0YSBBUEkgbWV0aG9kXG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBpZCA6IEFzc2Vzc21lbnQgY2F0ZWdvcnkgaWRcbiAgICovXG4gIGdldEFzc2Vzc21lbnRMaXN0KGluZGV4OiBudW1iZXIsIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgc2VhcmNoX3RpdGxlOiAnJyxcbiAgICB9O1xuICAgIHRoaXMucmVzcG9uc2liaWxpdHlTZXJ2aWNlXG4gICAgICAuZ2V0QXNzZXNzbWVudExpc3QocGF5bG9hZCwgaWQsIHRoaXMucHJvZ3JhbV9pZHMpXG4gICAgICAuc3Vic2NyaWJlKChyZXM6IEFycmF5PEFzc2Vzc21lbnRMaXN0PikgPT4ge1xuICAgICAgICB0aGlzLmFzc2Vzc21lbnRDYXRlZ29yeS5kYXRhW2luZGV4XS5hc3Nlc3NtZW50RGF0YSA9IFsuLi5uZXcgU2V0KHJlcyldO1xuICAgICAgfSk7XG4gIH1cblxuICAvLyAgVE9ETzogU2VsZWN0IGRhdGFcbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBjYXRlZ29yeV9pZCA6c2VsZWN0ZWQgYXNzZXNzbWVudCdzIGNhdGVnb3J5J3Mgb2JqZWN0IGlkXG4gICAqIEBwYXJhbSBhc3Nlc3NtZW50X2lkIDogU2VsZWN0ZWQgYXNzZXNzbWVudCdzIG9iamVjdCBpZFxuICAgKi9cbiAgc2V0QXNzZXNzbWVudChjYXRlZ29yeV9kZXRhaWxzOiBhbnksIGFzc2Vzc21lbnREZXRhaWxzOiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkQXNzZXNzbWVudCA9IHtcbiAgICAgIGNhdGVnb3J5X2lkOiBjYXRlZ29yeV9kZXRhaWxzPy5pZCxcbiAgICAgIGFzc2Vzc21lbnRfaWQ6IGFzc2Vzc21lbnREZXRhaWxzLmlkLFxuICAgICAgYXNzZXNzbWVudERldGFpbHM6IGFzc2Vzc21lbnREZXRhaWxzLFxuICAgICAgY2F0ZWdvcnlfZGV0YWlsczogY2F0ZWdvcnlfZGV0YWlscyxcbiAgICB9O1xuICB9XG5cbiAgLy8gVE9ETzogRGlzcGxheSBzZWxlY3RlZCBkYXRhIGluIGJvdHRvbSBmbG9hdGluZyBiYXIgd2l0aCBuZXh0IGVuYWJsZWQgYnV0dG9uIGhhdmluZ1xuXG4gIC8vIFRPRE86IFNlbmQgZGF0YSBpbiBwYXlsb2FkIG9mIGNyZWF0ZSBSZXNwb25zaWJpbGl0eSBmb3JtXG5cbiAgc2F2ZSgpIHtcbiAgICB0aGlzLm9uQXNzZXNzbWVudFNlbGVjdC5lbWl0KHRoaXMuc2VsZWN0ZWRBc3Nlc3NtZW50KTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuY2FuY2VsQXNzZXNzbWVudC5lbWl0KCk7XG4gIH1cblxuICBkZWxldGVFdmVudChldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZEFzc2Vzc21lbnQgPSB7XG4gICAgICBhc3Nlc3NtZW50X2lkOiAnJyxcbiAgICAgIGNhdGVnb3J5X2lkOiAnJyxcbiAgICAgIGFzc2Vzc21lbnREZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgICBjYXRlZ29yeV9kZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgICB0aGlzLmlzRGVsZXRlZCA9IHRydWU7XG4gIH1cblxuICAvLyBUT0RPOiBwb3B1bGF0ZSBkYXRhIHdoaWxlIGVkaXRpbmcgZGF0YVxuXG4gIC8vIFRPRE86RW5hYmxlIEVESVQgVUkgdG8gaW1wcm92ZSB1c2VyIEV4cGVyaWVuY2VcblxuICAvLyAgVE9ETzogYmxvY2sgdXNlcnMgZm9yIHNlbGVjdGluZyBjaGVja3BvaW50c1xuXG4gIC8vIFRPRE86IGNoZWNrcG9pbnRzXG59XG4iLCI8YXBwLXByZXZpZXcgKm5nSWY9XCJpc1ByZXZpZXdcIiBbcXVlc3Rpb25EYXRhXT1cInByZXZpZXdRdWVzdGlvbkRhdGFcIiAocHJldmlld0JhY2spPVwicHJldmlld0JhY2soKVwiXG4gIFtpc0Z1bGxTY3JlZW5dPVwiaXNGdWxsU2NyZWVuXCI+PC9hcHAtcHJldmlldz5cbjxkaXYgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3RcIiBbY2xhc3MuYW5pbWF0ZV09XCJhbmltYXRpb25cIiBbY2xhc3MuZnVsbC1zY3JlZW5dPVwiaXNGdWxsU2NyZWVuXCI+XG4gIDxkaXYgKm5nSWY9XCIhaXNGdWxsU2NyZWVuXCIgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtaGVhZCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wbC00IHZ4LXByLTRcIj5cbiAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dFwiPlNlbGVjdCBhbiBBc3Nlc3NtZW50PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXNzZXNzbWVudC1saXN0LWJvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWJsb2NrXCI+XG4gICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkwYjs8L2k+XG4gICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInNlYXJjaEFzc2Vzc21lbnRzXCIgKGNoYW5nZSk9XCJvbkFzc2Vzc21lbnRTZWFyY2goJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBBc3Nlc3NtZW50IENhdGVnb3J5XCIgLz5cbiAgICA8L2Rpdj5cbiAgICA8YXBwLXdvcmtmbG93LXBhZ2luYXRpb24gW3BhZ2VDb3VudF09XCJhc3Nlc3NtZW50Q2F0ZWdvcnk/LnRvdGFsUGFnZVwiIFt0b3RhbF09XCJhc3Nlc3NtZW50Q2F0ZWdvcnk/LnRvdGFsUmVjb3Jkc1wiXG4gICAgICBbc3RhcnRdPVwiYXNzZXNzbWVudENhdGVnb3J5Py5zdGFydF92YWx1ZVwiIFtlbmRdPVwiYXNzZXNzbWVudENhdGVnb3J5Py5lbmRfdmFsdWVcIiBbYWN0aXZlQWxwaGFiZXRdPVwiJydcIlxuICAgICAgKHNlbGVjdGVkQWxwaGFiZXQpPVwib25BbHBoYWJldFNlbGVjdGVkKCRldmVudClcIlxuICAgICAgKHNlbGVjdGVkUGFnZSk9XCJvblBhZ2VTZWxlY3Rpb24oJGV2ZW50KVwiPjwvYXBwLXdvcmtmbG93LXBhZ2luYXRpb24+XG4gICAgPGRpdiAqbmdJZj1cIlxuICAgICAgICBhc3Nlc3NtZW50Q2F0ZWdvcnkuZGF0YS5sZW5ndGggPT09IDAgJiYgIWlzTG9hZGVyICYmIHNlYXJjaEFzc2Vzc21lbnRzXG4gICAgICBcIiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1wYXJ0IHZ4LW1iLTRcIj5cbiAgICAgIDxhcHAtbm8tZGF0YSBbbm9EYXRhSW1hZ2VdPVwiQVNTRVRTLnNlYXJjaF9kYXRhXCIgW25vRGF0YVRleHRdPVwiJ05vIEFzc2Vzc21lbnRzIEZvdW5kLidcIj48L2FwcC1uby1kYXRhPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJhc3Nlc3NtZW50Q2F0ZWdvcnkuZGF0YS5sZW5ndGggfHwgaXNMb2FkZXJcIiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1wYXJ0IHZ4LW1iLTRcIj5cbiAgICAgIDxkaXYgKm5nSWY9XCJpc0VkaXQgJiYgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlscz8uYXNzZXNzbWVudF9uYW1lXCIgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3Qtc2VsZWN0ZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1oZWFkaW5nXCI+XG4gICAgICAgICAge3tcbiAgICAgICAgICBtb2RlID09PSBcInBvbGljeVwiXG4gICAgICAgICAgPyBcIkFzc2Vzc21lbnQgYWxyZWFkeSBzZWxlY3RlZFwiXG4gICAgICAgICAgOiBcIkFzc2Vzc21lbnQgYWxyZWFkeSBzZWxlY3RlZCBmb3IgdGhpcyByZXNwb25zaWJpbGl0eVwiXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhc3Nlc3NtZW50LWxpc3QtaXRlbVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gc2VyaWFsIGRpc2FibGVkXCI+XG4gICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW2Rpc2FibGVkXT1cInRydWVcIiBjbGFzcz1cImRpc2FibGVkXCIgW2NoZWNrZWRdPVwidHJ1ZVwiIFtyZWFkb25seV09XCJ0cnVlXCI+PC9hcHAtY3MtcmFkaW8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gc3ViLW5hbWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWUtaW5uZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIiBbYXBwVG9vbHRpcF09XCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlscz8uYXNzZXNzbWVudF9uYW1lXG4gICAgICAgICAgICAgICAgICBcIiBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJibGFja1wiIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgICB7eyBzZWxlY3RlZEFzc2Vzc21lbnQ/LmFzc2Vzc21lbnREZXRhaWxzPy5hc3Nlc3NtZW50X25hbWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2l0aGluLXBhcnRcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2l0aGluLWJveFwiPldpdGhpbjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIiBbYXBwVG9vbHRpcF09XCJcbiAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2RldGFpbHM/LmNhdGVnb3J5X25hbWUgK1xuICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2RldGFpbHM/LnBhcmVudF90cmVlXG4gICAgICAgICAgICAgICAgICAgICAgICA/ICcgPiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9kZXRhaWxzPy5wYXJlbnRfdHJlZVxuICAgICAgICAgICAgICAgICAgICAgICAgOiAnJylcbiAgICAgICAgICAgICAgICAgICAgXCIgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiPnt7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQXNzZXNzbWVudD8uY2F0ZWdvcnlfZGV0YWlscz8uY2F0ZWdvcnlfbmFtZSArXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2RldGFpbHM/LnBhcmVudF90cmVlXG4gICAgICAgICAgICAgICAgICAgID8gXCIgPiBcIiArXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQXNzZXNzbWVudD8uY2F0ZWdvcnlfZGV0YWlscz8ucGFyZW50X3RyZWVcbiAgICAgICAgICAgICAgICAgICAgOiBcIlwiKVxuICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gcXVlc3Rpb25cIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbnNcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIChjbGljayk9XCJwcmV2aWV3KHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudERldGFpbHMpXCI+XG4gICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZWFlNTs8L2k+IFByZXZpZXdcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGM7PC9pPiBFZGl0PC9idXR0b24+IC0tPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlscz8ucXVlc3Rpb25zIH19XG4gICAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEFzc2Vzc21lbnQ/LmFzc2Vzc21lbnREZXRhaWxzPy5xdWVzdGlvbnMgPiAxXG4gICAgICAgICAgICAgICAgPyBcIlF1ZXN0aW9uc1wiXG4gICAgICAgICAgICAgICAgOiBcIlF1ZXN0aW9uXCJcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1oZWFkaW5nXCI+XG4gICAgICAgIHt7XG4gICAgICAgIG1vZGUgPT09IFwicG9saWN5XCJcbiAgICAgICAgPyBcIlNlbGVjdCBhbiBBc3Nlc3NtZW50XCJcbiAgICAgICAgOiBcIlNlbGVjdCBhbiBBc3Nlc3NtZW50IGZvciB0aGlzIHJlc3BvbnNpYmlsaXR5XCJcbiAgICAgICAgfX1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tXG4gICAgICAgICAgICAgICAgICAgIEFzc2Vzc21lbnQgY2F0ZWdvcnkgbGlzdCBcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlIGNsYXNzIGlzIHVzZWQgZm9yIGhpZ2hsaWdodGluZyBvcGVuZWQgZWxlbWVudFxuICAgICAgICAgICAgLS0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGVyXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGRhdGEgb2YgYXNzZXNzbWVudENhdGVnb3J5LmRhdGE7IGxldCBpID0gaW5kZXhcIiBjbGFzcz1cImFzc2Vzc21lbnQtbGlzdC1pdGVtXCIgW2NsYXNzLmFjdGl2ZV09XCJcbiAgICAgICAgICAgIG9wZW5lZENhdGVnb3J5LmluY2x1ZGVzKGkpIHx8XG4gICAgICAgICAgICBkYXRhLmlkID09PSBzZWxlY3RlZEFzc2Vzc21lbnQ/LmNhdGVnb3J5X2lkXG4gICAgICAgICAgXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJvdyBtYWluLWxpc3RcIiAoY2xpY2spPVwic2hvd1N1Ykxpc3QoaSwgZGF0YT8uaWQpXCJcbiAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkYXRhPy5hc3Nlc3NtZW50Y291bnQgPCAxXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHNlcmlhbFwiPlxuICAgICAgICAgICAgICA8ZGl2IFtpZF09XCInc3Itbm8nICsgaVwiIGNsYXNzPVwic3Itbm9cIiBbYXBwVG9vbHRpcF09XCJpICsgMVwiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgIHt7IGRhdGFQZXJQYWdlICogKGFzc2Vzc21lbnRQYXlsb2FkLnBhZ2Vfbm8gLSAxKSArIChpICsgMSkgfX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gbmFtZVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZS1pbm5lclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiIFthcHBUb29sdGlwXT1cImRhdGEuY2F0ZWdvcnlfbmFtZVwiIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCIgZGVsYXk9XCIwXCIgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgICB7eyBkYXRhPy5jYXRlZ29yeV9uYW1lIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndpdGhpbi1wYXJ0XCIgKm5nSWY9XCJkYXRhPy5wYXJlbnRfdHJlZVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3aXRoaW4tYm94XCI+V2l0aGluPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiIFthcHBUb29sdGlwXT1cImRhdGEucGFyZW50X3RyZWVcIiBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCI+e3sgZGF0YT8ucGFyZW50X3RyZWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIGFjdGlvblwiPlxuICAgICAgICAgICAgICA8YnV0dG9uIFtpZF09XCInYXJyb3cnICsgaVwiIGNsYXNzPVwiYXJyb3dcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGF0YT8uYXNzZXNzbWVudGNvdW50IDwgMVwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRhdGE/LmFzc2Vzc21lbnRjb3VudCA8IDFcIj5cbiAgICAgICAgICAgICAgICA8aSAqbmdJZj1cIiFvcGVuZWRDYXRlZ29yeS5pbmNsdWRlcyhpKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTcwOzwvaT5cbiAgICAgICAgICAgICAgICA8aSAqbmdJZj1cIm9wZW5lZENhdGVnb3J5LmluY2x1ZGVzKGkpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5ZTg7PC9pPlxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSBBc3Nlc3NtZW50IGxpc3Qgc3RhcnQgZnJvbSBoZXJlIC0tPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJvcGVuZWRDYXRlZ29yeS5pbmNsdWRlcyhpKVwiIGNsYXNzPVwic3ViLWxpc3RcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhLmFzc2Vzc21lbnREYXRhPy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yb3dcIiAqbmdGb3I9XCJsZXQgYXNzZXNzbWVudCBvZiBkYXRhLmFzc2Vzc21lbnREYXRhOyBsZXQgaiA9IGluZGV4XCIgW2NsYXNzLmFjdGl2ZV09XCJcbiAgICAgICAgICAgICAgICAgIGFzc2Vzc21lbnQuaWQgPT09IHNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudF9pZCAmJlxuICAgICAgICAgICAgICAgICAgZGF0YS5pZCA9PT0gc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9pZFxuICAgICAgICAgICAgICAgIFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gc2VyaWFsXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IFtpZF09XCInc3ViLXNyLW5vJyArIGkgKyBqXCIgY2xhc3M9XCJzci1ub1wiIGFwcFRvb2x0aXA9XCJ7e1xuICAgICAgICAgICAgICAgICAgICAgIGRhdGFQZXJQYWdlICogKGFzc2Vzc21lbnRQYXlsb2FkLnBhZ2Vfbm8gLSAxKSArIChpICsgMSlcbiAgICAgICAgICAgICAgICAgICAgfX0ue3sgaiArIDEgfX1cIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIGRhdGFQZXJQYWdlICogKGFzc2Vzc21lbnRQYXlsb2FkLnBhZ2Vfbm8gLSAxKSArIChpICsgMSlcbiAgICAgICAgICAgICAgICAgICAgfX0ue3sgaiArIDEgfX1cbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBuYW1lPVwiYXNzZXNzbWVudFwiIFt2YWx1ZV09XCJhc3Nlc3NtZW50LmlkXCIgW2NoZWNrZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBhc3Nlc3NtZW50Py5pZCA9PT0gc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50X2lkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhPy5pZCA9PT0gc2VsZWN0ZWRBc3Nlc3NtZW50Py5jYXRlZ29yeV9pZFxuICAgICAgICAgICAgICAgICAgICAgIFwiIChjaGVja2VkRXZlbnQpPVwic2V0QXNzZXNzbWVudChkYXRhLCBhc3Nlc3NtZW50KVwiPjwvYXBwLWNzLXJhZGlvPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiBzdWItbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCIgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgJ01pc3Npb24gYW5kIG1lc3NhZ2UsIGNvbW11bmljYXRpb25zIHRvIGV4dGVybmFsIGF1ZGllbmNlcydcbiAgICAgICAgICAgICAgICAgICAgXCIgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIiBkZWxheT1cIjBcIiB0eXBlPVwiYmxhY2tcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBhc3Nlc3NtZW50Py5hc3Nlc3NtZW50X25hbWUgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gcXVlc3Rpb25cIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b25zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCIgKGNsaWNrKT1cInByZXZpZXcoYXNzZXNzbWVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZWFlNTs8L2k+IFByZXZpZXdcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGJ1dHRvbiBjbGFzcz1cImFjdGlvbi1idG5cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj4gLS0+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBhc3Nlc3NtZW50Py5xdWVzdGlvbnMgfX1cbiAgICAgICAgICAgICAgICAgICAge3sgYXNzZXNzbWVudD8ucXVlc3Rpb25zID4gMSA/IFwiUXVlc3Rpb25zXCIgOiBcIlF1ZXN0aW9uXCIgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPCEtLSBMb2FkZXIgbG9hZGluZyBpc0xvYWRlciAgLS0+XG4gICAgICAgICAgICA8YXBwLWFzc2Vzc21lbnQtbGlzdC1zdWItbG9hZGVyICpuZ0lmPVwiIWRhdGEuYXNzZXNzbWVudERhdGE/Lmxlbmd0aFwiPjwvYXBwLWFzc2Vzc21lbnQtbGlzdC1zdWItbG9hZGVyPlxuICAgICAgICAgICAgPCEtLSA8YXBwLWxpbmUtbG9hZGVyICpuZ0lmPVwiIWRhdGEuYXNzZXNzbWVudERhdGE/Lmxlbmd0aFwiIFtsb2FkZXJIZWlnaHRdPVwiJzUnXCI+PC9hcHAtbGluZS1sb2FkZXI+IC0tPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPCEtLSBMb2FkZXIgbG9hZGluZyBpc0xvYWRlciAgLS0+XG4gICAgICA8YXBwLWFzc2Vzc21lbnQtbGlzdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRlclwiPjwvYXBwLWFzc2Vzc21lbnQtbGlzdC1sb2FkZXI+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBObyBkYXRhIGltYWdlICAtLT5cbiAgICA8YXBwLW5vLWRhdGEgKm5nSWY9XCIhYXNzZXNzbWVudENhdGVnb3J5LmRhdGEubGVuZ3RoICYmICFpc0xvYWRlciAmJiAhc2VhcmNoQXNzZXNzbWVudHNcIlxuICAgICAgW25vRGF0YUltYWdlXT1cIkFTU0VUUy5zZWFyY2hfZGF0YVwiIFtub0RhdGFUZXh0XT1cIidObyBEYXRhIHRvIERpc3BsYXknXCI+PC9hcHAtbm8tZGF0YT5cblxuICAgIDxhcHAtZmxvYXRpbmctYmFyIFtzZWxlY3RlZERhdGFdPVwiW11cIiAoY2xvc2VFdmVudCk9XCJzYXZlKClcIiAoY2xvc2VMaXN0KT1cImNsb3NlKClcIlxuICAgICAgW2lzRGlzYWJsZWRdPVwiIXNlbGVjdGVkQXNzZXNzbWVudD8uYXNzZXNzbWVudF9pZCAmJiAhaXNEZWxldGVkXCIgW3NlbGVjdGVkRGF0YV09XCJcbiAgICAgICAgc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50X2lkXG4gICAgICAgICAgPyBbc2VsZWN0ZWRBc3Nlc3NtZW50Py5hc3Nlc3NtZW50RGV0YWlsc11cbiAgICAgICAgICA6IFtdXG4gICAgICBcIiBbZGlzcGxheUVsZW1lbnRLZXldPVwiJ2Fzc2Vzc21lbnRfbmFtZSdcIiBbcGx1cmFsVGV4dF09XCInUmlzayBDYXRlZ29yaWVzIHNlbGVjdGVkJ1wiIChjbG9zZUV2ZW50KT1cInNhdmUoKVwiXG4gICAgICAoZGVsZXRlRXZlbnQpPVwiZGVsZXRlRXZlbnQoJGV2ZW50KVwiPlxuICAgIDwvYXBwLWZsb2F0aW5nLWJhcj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=