vc-create-dashboard 2.9.5 → 2.9.6

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 (152) hide show
  1. package/esm2022/lib/configurations.mjs +7 -0
  2. package/esm2022/lib/create-dashboard-container/categories/categories.component.mjs +210 -0
  3. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.mjs +549 -0
  4. package/{esm2020 → esm2022}/lib/create-dashboard-container/configure-widgets/configure-widgets.module.mjs +15 -15
  5. package/esm2022/lib/create-dashboard-container/create-dashboard.component.mjs +1080 -0
  6. package/{esm2020 → esm2022}/lib/create-dashboard-container/create-dashboard.module.mjs +49 -49
  7. package/{esm2020 → esm2022}/lib/create-dashboard-container/directives/directives.module.mjs +5 -5
  8. package/esm2022/lib/create-dashboard-container/directives/scroll-in-view.directive.mjs +36 -0
  9. package/esm2022/lib/create-dashboard-container/form-group/form-group.component.mjs +152 -0
  10. package/esm2022/lib/create-dashboard-container/frequency/frequency.component.mjs +309 -0
  11. package/{esm2020 → esm2022}/lib/create-dashboard-container/pipes/filter.pipe.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/create-dashboard-container/pipes/search.pipe.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/create-dashboard-container/pipes/text-count.pipe.mjs +4 -4
  14. package/esm2022/lib/create-dashboard-container/responsibility-center/responsibility-center.component.mjs +145 -0
  15. package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories.component.mjs +195 -0
  16. package/esm2022/lib/create-dashboard-container/services/auth.service.mjs +31 -0
  17. package/esm2022/lib/create-dashboard-container/services/configure-widgets.service.mjs +227 -0
  18. package/esm2022/lib/create-dashboard-container/services/create-dashboard.service.mjs +126 -0
  19. package/esm2022/lib/create-dashboard-container/services/pagination.service.mjs +28 -0
  20. package/esm2022/lib/create-dashboard-container/user-list/user-list.component.mjs +421 -0
  21. package/{esm2020 → esm2022}/lib/create-dashboard.service.mjs +4 -4
  22. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.mjs +52 -0
  23. package/{esm2020 → esm2022}/lib/ui-kit/dashboard-footer/dashboard-footer.module.mjs +9 -9
  24. package/esm2022/lib/ui-kit/dialog/dialog-config.mjs +7 -0
  25. package/{esm2020 → esm2022}/lib/ui-kit/dialog/dialog-injector.mjs +4 -2
  26. package/esm2022/lib/ui-kit/dialog/dialog-ref.mjs +11 -0
  27. package/esm2022/lib/ui-kit/dialog/dialog.component.mjs +96 -0
  28. package/{esm2020 → esm2022}/lib/ui-kit/dialog/dialog.module.mjs +5 -5
  29. package/esm2022/lib/ui-kit/dialog/dialog.service.mjs +56 -0
  30. package/esm2022/lib/ui-kit/dialog/insertion.directive.mjs +17 -0
  31. package/esm2022/lib/ui-kit/floating-bar/floating-bar.component.mjs +57 -0
  32. package/{esm2020 → esm2022}/lib/ui-kit/floating-bar/floating-bar.module.mjs +9 -9
  33. package/esm2022/lib/ui-kit/formgroup/click-outside.directive.mjs +30 -0
  34. package/esm2022/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +29 -0
  35. package/esm2022/lib/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +34 -0
  36. package/{esm2020 → esm2022}/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +4 -4
  37. package/esm2022/lib/ui-kit/formgroup/cs-select/cs-select.component.mjs +119 -0
  38. package/esm2022/lib/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +39 -0
  39. package/{esm2020 → esm2022}/lib/ui-kit/formgroup/formgroup.module.mjs +17 -17
  40. package/{esm2020 → esm2022}/lib/ui-kit/formgroup/pipes/pascal.pipe.mjs +4 -4
  41. package/{esm2020 → esm2022}/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +4 -4
  42. package/esm2022/lib/ui-kit/no-data/no-data.component.mjs +47 -0
  43. package/{esm2020 → esm2022}/lib/ui-kit/no-data/no-data.module.mjs +5 -5
  44. package/esm2022/lib/ui-kit/pagination/pagination.component.mjs +130 -0
  45. package/{esm2020 → esm2022}/lib/ui-kit/pagination/pagination.module.mjs +5 -5
  46. package/esm2022/lib/ui-kit/popover/popover.component.mjs +142 -0
  47. package/esm2022/lib/ui-kit/popover/popover.directive.mjs +93 -0
  48. package/{esm2020 → esm2022}/lib/ui-kit/popover/popover.module.mjs +5 -5
  49. package/esm2022/lib/ui-kit/popover/popover.service.mjs +23 -0
  50. package/esm2022/lib/ui-kit/select/cs-option/cs-option.component.mjs +41 -0
  51. package/esm2022/lib/ui-kit/select/cs-select/cs-select.component.mjs +105 -0
  52. package/esm2022/lib/ui-kit/select/safe-html.pipe.mjs +21 -0
  53. package/{esm2020 → esm2022}/lib/ui-kit/select/select.module.mjs +5 -5
  54. package/esm2022/lib/ui-kit/services/cs-select.service.mjs +16 -0
  55. package/{esm2020 → esm2022}/lib/ui-kit/smiley-dialog/smiley-dialog.component.mjs +10 -8
  56. package/{esm2020 → esm2022}/lib/ui-kit/smiley-dialog/smiley-dialog.module.mjs +5 -5
  57. package/esm2022/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +46 -0
  58. package/{esm2020 → esm2022}/lib/ui-kit/snack-bar/snack-bar.module.mjs +5 -5
  59. package/{esm2020 → esm2022}/lib/ui-kit/snack-bar/snack-bar.service.mjs +6 -7
  60. package/esm2022/lib/ui-kit/tooltip/tooltip.directive.mjs +161 -0
  61. package/{esm2020 → esm2022}/lib/ui-kit/tooltip/tooltip.module.mjs +5 -5
  62. package/esm2022/lib/ui-kit/v-loader/loader/loader.component.mjs +23 -0
  63. package/esm2022/lib/ui-kit/v-loader/loader-inline/loader-inline.component.mjs +23 -0
  64. package/{esm2020 → esm2022}/lib/ui-kit/v-loader/v-loader.module.mjs +5 -5
  65. package/esm2022/vc-create-dashboard.mjs +5 -0
  66. package/fesm2022/vc-create-dashboard.mjs +5338 -0
  67. package/fesm2022/vc-create-dashboard.mjs.map +1 -0
  68. package/index.d.ts +1 -1
  69. package/lib/create-dashboard-container/categories/categories.component.d.ts +1 -1
  70. package/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.d.ts +1 -1
  71. package/lib/create-dashboard-container/create-dashboard.component.d.ts +1 -1
  72. package/lib/create-dashboard-container/directives/scroll-in-view.directive.d.ts +1 -1
  73. package/lib/create-dashboard-container/form-group/form-group.component.d.ts +1 -1
  74. package/lib/create-dashboard-container/frequency/frequency.component.d.ts +1 -1
  75. package/lib/create-dashboard-container/responsibility-center/responsibility-center.component.d.ts +1 -1
  76. package/lib/create-dashboard-container/risk-categories/risk-categories.component.d.ts +1 -1
  77. package/lib/create-dashboard-container/user-list/user-list.component.d.ts +1 -1
  78. package/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.d.ts +1 -1
  79. package/lib/ui-kit/dialog/dialog-injector.d.ts +2 -2
  80. package/lib/ui-kit/dialog/dialog.component.d.ts +1 -1
  81. package/lib/ui-kit/dialog/insertion.directive.d.ts +1 -1
  82. package/lib/ui-kit/floating-bar/floating-bar.component.d.ts +1 -1
  83. package/lib/ui-kit/formgroup/click-outside.directive.d.ts +1 -1
  84. package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.d.ts +1 -1
  85. package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.d.ts +1 -1
  86. package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.d.ts +1 -1
  87. package/lib/ui-kit/formgroup/cs-select/cs-select.component.d.ts +1 -1
  88. package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.d.ts +1 -1
  89. package/lib/ui-kit/no-data/no-data.component.d.ts +1 -1
  90. package/lib/ui-kit/pagination/pagination.component.d.ts +1 -1
  91. package/lib/ui-kit/popover/popover.component.d.ts +1 -1
  92. package/lib/ui-kit/popover/popover.directive.d.ts +1 -1
  93. package/lib/ui-kit/select/cs-option/cs-option.component.d.ts +1 -1
  94. package/lib/ui-kit/select/cs-select/cs-select.component.d.ts +1 -1
  95. package/lib/ui-kit/smiley-dialog/smiley-dialog.component.d.ts +1 -1
  96. package/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.d.ts +1 -1
  97. package/lib/ui-kit/tooltip/tooltip.directive.d.ts +1 -1
  98. package/lib/ui-kit/v-loader/loader/loader.component.d.ts +1 -1
  99. package/lib/ui-kit/v-loader/loader-inline/loader-inline.component.d.ts +1 -1
  100. package/package.json +6 -12
  101. package/esm2020/create-dashboard.mjs +0 -5
  102. package/esm2020/lib/configurations.mjs +0 -6
  103. package/esm2020/lib/create-dashboard-container/categories/categories.component.mjs +0 -209
  104. package/esm2020/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.mjs +0 -545
  105. package/esm2020/lib/create-dashboard-container/create-dashboard.component.mjs +0 -1067
  106. package/esm2020/lib/create-dashboard-container/directives/scroll-in-view.directive.mjs +0 -35
  107. package/esm2020/lib/create-dashboard-container/form-group/form-group.component.mjs +0 -141
  108. package/esm2020/lib/create-dashboard-container/frequency/frequency.component.mjs +0 -305
  109. package/esm2020/lib/create-dashboard-container/responsibility-center/responsibility-center.component.mjs +0 -146
  110. package/esm2020/lib/create-dashboard-container/risk-categories/risk-categories.component.mjs +0 -194
  111. package/esm2020/lib/create-dashboard-container/services/auth.service.mjs +0 -29
  112. package/esm2020/lib/create-dashboard-container/services/configure-widgets.service.mjs +0 -224
  113. package/esm2020/lib/create-dashboard-container/services/create-dashboard.service.mjs +0 -123
  114. package/esm2020/lib/create-dashboard-container/services/pagination.service.mjs +0 -29
  115. package/esm2020/lib/create-dashboard-container/user-list/user-list.component.mjs +0 -414
  116. package/esm2020/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.mjs +0 -53
  117. package/esm2020/lib/ui-kit/dialog/dialog-config.mjs +0 -3
  118. package/esm2020/lib/ui-kit/dialog/dialog-ref.mjs +0 -12
  119. package/esm2020/lib/ui-kit/dialog/dialog.component.mjs +0 -85
  120. package/esm2020/lib/ui-kit/dialog/dialog.service.mjs +0 -52
  121. package/esm2020/lib/ui-kit/dialog/insertion.directive.mjs +0 -16
  122. package/esm2020/lib/ui-kit/floating-bar/floating-bar.component.mjs +0 -52
  123. package/esm2020/lib/ui-kit/formgroup/click-outside.directive.mjs +0 -29
  124. package/esm2020/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +0 -27
  125. package/esm2020/lib/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +0 -30
  126. package/esm2020/lib/ui-kit/formgroup/cs-select/cs-select.component.mjs +0 -100
  127. package/esm2020/lib/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +0 -35
  128. package/esm2020/lib/ui-kit/no-data/no-data.component.mjs +0 -40
  129. package/esm2020/lib/ui-kit/pagination/pagination.component.mjs +0 -127
  130. package/esm2020/lib/ui-kit/popover/popover.component.mjs +0 -133
  131. package/esm2020/lib/ui-kit/popover/popover.directive.mjs +0 -86
  132. package/esm2020/lib/ui-kit/popover/popover.service.mjs +0 -17
  133. package/esm2020/lib/ui-kit/select/cs-option/cs-option.component.mjs +0 -36
  134. package/esm2020/lib/ui-kit/select/cs-select/cs-select.component.mjs +0 -89
  135. package/esm2020/lib/ui-kit/select/safe-html.pipe.mjs +0 -20
  136. package/esm2020/lib/ui-kit/services/cs-select.service.mjs +0 -15
  137. package/esm2020/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +0 -45
  138. package/esm2020/lib/ui-kit/tooltip/tooltip.directive.mjs +0 -153
  139. package/esm2020/lib/ui-kit/v-loader/loader/loader.component.mjs +0 -21
  140. package/esm2020/lib/ui-kit/v-loader/loader-inline/loader-inline.component.mjs +0 -21
  141. package/fesm2015/create-dashboard.mjs +0 -5195
  142. package/fesm2015/create-dashboard.mjs.map +0 -1
  143. package/fesm2020/create-dashboard.mjs +0 -5162
  144. package/fesm2020/create-dashboard.mjs.map +0 -1
  145. /package/{esm2020 → esm2022}/lib/create-dashboard-container/categories/categories-config.mjs +0 -0
  146. /package/{esm2020 → esm2022}/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.mjs +0 -0
  147. /package/{esm2020 → esm2022}/lib/create-dashboard-container/create-dashboard-config.mjs +0 -0
  148. /package/{esm2020 → esm2022}/lib/create-dashboard-container/interfaces/widget-data-model.mjs +0 -0
  149. /package/{esm2020 → esm2022}/lib/create-dashboard-container/risk-categories/risk-categories-config.mjs +0 -0
  150. /package/{esm2020 → esm2022}/lib/create-dashboard-container/user-list/user-list.config.mjs +0 -0
  151. /package/{esm2020 → esm2022}/lib/ui-kit/dashboard-footer/dashboard-footer-config.mjs +0 -0
  152. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -1,35 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ScrollInViewDirective {
4
- constructor(el) {
5
- this.el = el;
6
- this.appScrollInView = false;
7
- }
8
- ngOnChanges(change) {
9
- if (change?.appScrollInView && change?.appScrollInView?.currentValue === true) {
10
- this.scroll();
11
- }
12
- }
13
- ngAfterViewInit() {
14
- // Otherwise Angular throws error: Expression has changed after it was checked.
15
- this.scroll();
16
- }
17
- scroll() {
18
- if (this.appScrollInView) {
19
- window.setTimeout(() => {
20
- this.el.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
21
- });
22
- }
23
- }
24
- }
25
- ScrollInViewDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScrollInViewDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
26
- ScrollInViewDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: ScrollInViewDirective, selector: "[appScrollInView]", inputs: { appScrollInView: "appScrollInView" }, usesOnChanges: true, ngImport: i0 });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScrollInViewDirective, decorators: [{
28
- type: Directive,
29
- args: [{
30
- selector: '[appScrollInView]'
31
- }]
32
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { appScrollInView: [{
33
- type: Input
34
- }] } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWluLXZpZXcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL2NyZWF0ZS1kYXNoYm9hcmQtY29udGFpbmVyL2RpcmVjdGl2ZXMvc2Nyb2xsLWluLXZpZXcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7O0FBSzlHLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUFEM0Isb0JBQWUsR0FBRyxLQUFLLENBQUM7SUFFL0IsQ0FBQztJQUNILFdBQVcsQ0FBQyxNQUFvQjtRQUM5QixJQUFHLE1BQU0sRUFBRSxlQUFlLElBQUksTUFBTSxFQUFFLGVBQWUsRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFDO1lBQ3hFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNsQjtJQUNILENBQUM7SUFDQyxlQUFlO1FBQ1gsK0VBQStFO1FBQ25GLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBRyxJQUFJLENBQUMsZUFBZSxFQUFDO1lBQ3RCLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNyQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUMsQ0FBQyxDQUFDO1lBQ2hGLENBQUMsQ0FBQyxDQUFDO1NBQ0Y7SUFDSCxDQUFDOztrSEFwQlUscUJBQXFCO3NHQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2lCQUM5QjtpR0FFUSxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FwcFNjcm9sbEluVmlld10nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY3JvbGxJblZpZXdEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5ASW5wdXQoKSBhcHBTY3JvbGxJblZpZXcgPSBmYWxzZTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7XHJcbiAgfVxyXG5uZ09uQ2hhbmdlcyhjaGFuZ2U6U2ltcGxlQ2hhbmdlcyl7XHJcbiAgaWYoY2hhbmdlPy5hcHBTY3JvbGxJblZpZXcgJiYgY2hhbmdlPy5hcHBTY3JvbGxJblZpZXc/LmN1cnJlbnRWYWx1ZSA9PT0gdHJ1ZSl7XHJcbiAgICAgICB0aGlzLnNjcm9sbCgpO1xyXG4gIH1cclxufVxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgLy8gT3RoZXJ3aXNlIEFuZ3VsYXIgdGhyb3dzIGVycm9yOiBFeHByZXNzaW9uIGhhcyBjaGFuZ2VkIGFmdGVyIGl0IHdhcyBjaGVja2VkLlxyXG4gIHRoaXMuc2Nyb2xsKCk7XHJcbiAgfVxyXG5cclxuICBzY3JvbGwoKXtcclxuICAgIGlmKHRoaXMuYXBwU2Nyb2xsSW5WaWV3KXtcclxuICAgICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zY3JvbGxJbnRvVmlldyh7YmVoYXZpb3I6ICdzbW9vdGgnLCBibG9jazogJ2NlbnRlcid9KTtcclxuICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -1,141 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../ui-kit/dialog/dialog.service";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "@vcomply/editor";
6
- import * as i4 from "../../ui-kit/formgroup/cs-radio/cs-radio.component";
7
- import * as i5 from "ng2-date-picker";
8
- import * as i6 from "@angular/forms";
9
- import * as i7 from "../../ui-kit/tooltip/tooltip.directive";
10
- // import { ConfigureWidgetsComponent } from '../../configure-widgets/configure-widgets/configure-widgets.component';
11
- export class FormGroupComponent {
12
- constructor(dialog) {
13
- this.dialog = dialog;
14
- this.openCategoryList = new EventEmitter();
15
- this.openResponsibilityCenterList = new EventEmitter();
16
- this.openWhoCanViewThis = new EventEmitter();
17
- this.closeCreateDashboard = new EventEmitter();
18
- this.openFrequency = new EventEmitter();
19
- this.datePickerOverlay = false;
20
- this.fieldEmptyErrorMessage = 'Enter a value for this input box.';
21
- this.fieldLimitExceededErrorMessage = 'You have exceeded the maximum character limit of XYZ characters.';
22
- this.dashboardNameNotUniqueErrorMessage = 'A dashboard with this name already exists. Specify a different name for the dashboard.';
23
- this.dashboardDescription = {
24
- placeholder: 'Description (Max limit: 250 characters)',
25
- mode: 'prime',
26
- id: 'description',
27
- };
28
- this.fromDatePickerConfig = {
29
- min: this.getCurrentDate(),
30
- };
31
- this.toDatePickerConfig = {};
32
- }
33
- ngOnInit() { }
34
- openFromDatePicker() {
35
- this.fromDatePicker.api.open();
36
- this.datePickerOverlay = true;
37
- }
38
- openToDatePicker() {
39
- this.toDatePicker.api.open();
40
- this.datePickerOverlay = true;
41
- }
42
- closeFromDatePicker() {
43
- let minToDate = this.selectedFromDate.clone().add(1, 'days');
44
- this.toDatePickerConfig = { min: minToDate, minTime: minToDate };
45
- if (this.selectedToDate && minToDate.diff(this.selectedToDate) > 0) {
46
- this.selectedToDate = undefined;
47
- }
48
- this.fromDatePicker.api.close();
49
- this.datePickerOverlay = false;
50
- }
51
- closeToDatePicker() {
52
- this.toDatePicker.api.close();
53
- this.datePickerOverlay = false;
54
- }
55
- animateImage() {
56
- const circleImage = document.getElementsByClassName('image');
57
- console.log(circleImage);
58
- }
59
- selectWhoCanViewThis() {
60
- this.openWhoCanViewThis.emit();
61
- }
62
- selectResponsibilityCenter() {
63
- this.openResponsibilityCenterList.emit();
64
- }
65
- selectCategories() {
66
- this.openCategoryList.emit();
67
- }
68
- selectFrequency() {
69
- this.openFrequency.emit();
70
- }
71
- configureDashboard() {
72
- let fieldsStatus = this.verifyFields();
73
- // if(fieldsStatus) {
74
- // this.closeCreateDashboard.emit();
75
- // const ref = this.dialog.open(ConfigureWidgetsComponent, {
76
- // data: {},
77
- // position: 'CENTER',
78
- // pointer: 'none'
79
- // });
80
- // }
81
- }
82
- verifyFields() {
83
- let allFieldsValid = true;
84
- this.dashboardNameError = '';
85
- this.dashboardDescriptionError = '';
86
- if (this.dashboardName === null ||
87
- this.dashboardName === undefined ||
88
- this.dashboardName === '') {
89
- this.dashboardNameError = this.fieldEmptyErrorMessage;
90
- allFieldsValid = false;
91
- }
92
- else if (this.dashboardName.length > 30) {
93
- this.dashboardNameError = this.fieldLimitExceededErrorMessage.replace('XYZ', '30');
94
- allFieldsValid = false;
95
- }
96
- else if (this.dashboardDescriptionText === null ||
97
- this.dashboardDescriptionText === undefined ||
98
- this.dashboardDescriptionText === '') {
99
- this.dashboardDescriptionError = this.fieldEmptyErrorMessage;
100
- allFieldsValid = false;
101
- }
102
- else if (this.dashboardDescriptionText.length > 250) {
103
- this.dashboardDescriptionError =
104
- this.fieldLimitExceededErrorMessage.replace('XYZ', '250');
105
- allFieldsValid = false;
106
- }
107
- return allFieldsValid;
108
- }
109
- getCurrentDate() {
110
- let today = new Date();
111
- return (today.getDate() + '-' + (today.getMonth() + 1) + '-' + today.getFullYear());
112
- }
113
- displayCriteriaSelected(event, selection) {
114
- this.displayCriteria = selection;
115
- }
116
- }
117
- FormGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormGroupComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component });
118
- FormGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FormGroupComponent, selector: "app-form-group", inputs: { disabled: "disabled" }, outputs: { openCategoryList: "openCategoryList", openResponsibilityCenterList: "openResponsibilityCenterList", openWhoCanViewThis: "openWhoCanViewThis", closeCreateDashboard: "closeCreateDashboard", openFrequency: "openFrequency" }, viewQueries: [{ propertyName: "fromDatePicker", first: true, predicate: ["fromDatePicker"], descendants: true }, { propertyName: "toDatePicker", first: true, predicate: ["toDatePicker"], descendants: true }], ngImport: i0, template: "<!-- <p>form-group works!</p> -->\r\n<div class=\"form-group\" [class.disabled]=\"disabled\">\r\n <div class=\"vx-dialog-body-container\" (scroll)=\"animateImage()\">\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/what.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Dashboard Name<span class=\"required\">*</span></label>\r\n <div class=\"vx-input-group\">\r\n <input type=\"text\" placeholder=\"Add dashboard name (Max limit: 30 characters).\" [(ngModel)]=\"dashboardName\">\r\n <span class=\"counter\" *ngIf=\"dashboardName?.length > 0\">{{30 - dashboardName?.length}}</span>\r\n </div>\r\n <p class=\"vx-txt-error\">{{dashboardNameError}}</p>\r\n <div class=\"vx-input-group\">\r\n <vcomply-editor [editorConfig]=\"dashboardDescription\" [(ngModel)]=\"dashboardDescriptionText\"></vcomply-editor>\r\n <span class=\"counter\" *ngIf=\"dashboardDescriptionText?.length > 0\">{{250 - dashboardDescriptionText?.length}}</span>\r\n </div>\r\n <p class=\"vx-txt-error\">{{dashboardDescriptionError}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/who.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Who can view this dashboard?<span class=\"required\">*</span></label>\r\n <div class=\"selectbox\">\r\n <input type=\"text\" placeholder=\"Who can view this dashboard?\" readonly\r\n (click)=\"selectWhoCanViewThis()\">\r\n </div>\r\n <div class=\"selected\">\r\n <div class=\"left\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">\r\n <span class=\"value\">Samantha Jones</span>\r\n </span>\r\n <span class=\"chip\">\r\n <i class=\"icons\">&#xe90d;</i>\r\n <span class=\"value\">Angel Kleven</span>\r\n </span>\r\n </div>\r\n <button class=\"count\">+10</button>\r\n </div>\r\n <button class=\"edit\"><i class=\"icons\">&#xe9ba;</i> Edit</button>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/responsibility-center.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RESPONSIBILITY CENTER(S)</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Responsibility Center(s) that you would like displayed in the Dashboard, if any.\"\r\n (click)=\"selectResponsibilityCenter()\">\r\n </div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/category.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">PROGRAM</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Program that this responsibility relates to.\"\r\n (click)=\"selectCategories()\"></div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/category.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RISK CATEGORIES</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Risk Categories that you would like displayed in the Dashboard, if any.\"\r\n (click)=\"selectCategories()\"></div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/who.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">DISPLAY CRITERIA</label>\r\n <div class=\"radio-group\">\r\n <app-cs-radio (checkedEvent)=\"displayCriteriaSelected($event, 'BOTH_RC_AND_CATEGORY')\">Those responsibilities that have been assigned to both the selected\r\n Responsibility Center(s) and the selected Categories.</app-cs-radio>\r\n <app-cs-radio (checkedEvent)=\"displayCriteriaSelected($event, 'RC_OR_CATEGORY')\">Those responsibilities that have been assigned to either the selected\r\n Responsibility Center(s) or the selected Categories.</app-cs-radio>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/when.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">TIMEFRAME</label>\r\n <label class=\"vx-control-panel-sub-label\">Select how long you would like the information\r\n selected to be displayed for. If no timeframe is selected, the information will be\r\n displayed permanently.</label>\r\n <div class=\"input-group vx-d-flex vx-justify-between\">\r\n <div class=\"date-select\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"selectedFromDate | date: 'dd MMM yyyy'\" [placeholder]=\"'From'\"\r\n (click)=\"openFromDatePicker()\" readonly>\r\n <dp-date-picker #fromDatePicker [(ngModel)]=\"selectedFromDate\" placeholder=\"Select Date\"\r\n (onSelect)=\"closeFromDatePicker(); datePickerOverlay = false\" [config]=\"fromDatePickerConfig\"></dp-date-picker>\r\n <div class=\"overlay\" (click)=\"closeFromDatePicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n <div class=\"date-select\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"selectedToDate | date: 'dd MMM yyyy'\" [placeholder]=\"'To'\"\r\n (click)=\"openToDatePicker()\" readonly>\r\n <dp-date-picker #toDatePicker [(ngModel)]=\"selectedToDate\" placeholder=\"Select Date\"\r\n (onSelect)=\"closeToDatePicker(); datePickerOverlay = false\" [config]=\"toDatePickerConfig\"></dp-date-picker>\r\n <div class=\"overlay\" (click)=\"closeToDatePicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <!--active class will appear on open list-->\r\n <div class=\"image\">\r\n <img src=\"./assets/images/send-resolution.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Email Summaries <i class=\"icons\" [arTooltip]=\"'This is a test tooltip'\" placement=\"bottom-left\"\r\n type=\"white\" delay=\"0\" [tooltipMandatory]=\"true\">&#xe91f;</i></label>\r\n <label class=\"vx-control-panel-sub-label\">\r\n If you would like to send a summary of this Dashboard,\r\n please select a frequency(By default VComply sends a weekly Summary).\r\n </label>\r\n <div class=\"selectbox\">\r\n <input type=\"text\" placeholder=\"Email Summaries\" readonly (click)=\"selectFrequency()\">\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"button-block\">\r\n <button class=\"vx-btn block primary\" [disabled]=\"disabled\" (click)=\"configureDashboard()\">Next: Configure\r\n Widgets</button>\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@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/dialog/dialog.css\";@import\"https://cdn.v-comply.com/design-system/css/button/button.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.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-right.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/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-right.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/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/animate/animation.css\";@import\"https://cdn.v-comply.com/design-system/css/animate/animate-slide-right.css\";@import\"https://cdn.v-comply.com/design-system/css/forms/forms.css\";::ng-deep .form-group .vx-dialog-body-container{padding:36px 28px 0 40px!important;height:calc(100vh - 50px);overflow:auto;margin-left:-22px;background-color:transparent;position:relative;border-radius:0 0 0 30px;background:transparent}::ng-deep .form-group .vx-dialog-body-container .form-group-row{display:flex}::ng-deep .form-group .vx-dialog-body-container .form-group-row .image{width:40px;height:40px;margin-left:-38px;margin-right:20px;margin-top:28px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .image img{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input+marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input+vcomply-editor{margin-top:8px;display:block}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selectbox:after{border-left:none;border-bottom:1px solid #707070;border-right:1px solid #707070;border-top:none;content:\"\";display:inline-block;right:15px;position:absolute;top:calc(50% + 8px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selectbox:hover .custom-input{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selected .left{width:auto;display:flex}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selected .chip-container{width:auto}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group{display:flex;position:relative}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group span.counter{background:transparent;color:#161b2f;font-size:9px;font-weight:500;position:absolute;top:0;right:0;border-radius:3px;height:16px;text-align:center;line-height:16px;padding:0 2px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group vcomply-editor{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group.vx-input-group{margin-top:8px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor{display:block}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container{border-radius:4px;border-color:#dbdbdb}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:focus-within,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:focus-within,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:hover,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:hover{border-color:#1e5dd3}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:focus-within .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:focus-within .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:hover .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:hover .editor-tools{border-top-color:#1e5dd3!important;transition:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editable-block,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;max-height:90px}@media not all and (-webkit-min-device-pixel-ratio: 0),not all and (min-resolution: .001dpcm){@supports (-webkit-appearance: none){::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editable-block:before,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editable-block:before{opacity:.72}}}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools{border-color:#dbdbdb;border-radius:0 0 2px 2px;transition:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .custom-input{height:2.5rem;border-radius:.25rem;border:1px solid #DBDBDB;background:#FFFFFF;outline:none;padding:.1875rem .75rem;line-height:1.25rem;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:12px;width:94%;display:block;pointer-events:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel i{font-size:12px;color:#1e5dd3;margin-left:7px;cursor:pointer}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-control-panel-sub-label{color:#747576;font-size:.6875rem;font-weight:400;line-height:1rem;margin-bottom:.5rem;display:block;text-transform:none;width:100%;margin-top:0}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-control-panel-sub-label span.required{color:#eb2424}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel+.vx-control-panel-sub-label{margin-top:-.5rem}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.radio{position:absolute;top:17px;left:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #DBDBDB;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item svg{position:absolute;top:17px;left:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item input:checked~span.value{background:#EEFCF0;border-color:#34aa44}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio+app-cs-radio{margin-top:.5rem}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select{position:relative;width:calc(50% - .25rem)}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select input{padding-left:36px!important}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select i{display:flex;justify-content:center;align-items:center;height:39px;width:14px;position:absolute;left:12px;top:0;color:#bcbcbc;font-size:14px;pointer-events:none;z-index:1}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel span.sub-label{color:#747576;font-size:.6875rem;font-weight:400;line-height:1rem;text-transform:none;width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .image{filter:grayscale(0)}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .image:before{display:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form{opacity:1;filter:grayscale(0)}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form .custom-input,::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form input[type=text]{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container:after{content:\"\";width:100%;display:block;height:30px;position:sticky;right:0;bottom:0;left:0;z-index:6;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}::ng-deep .form-group .button-block{position:relative;z-index:2}::ng-deep .form-group .button-block button{height:50px;line-height:48px!important}::ng-deep .form-group .button-block button:disabled{opacity:.3}::ng-deep .form-group.disabled{pointer-events:none;z-index:2}::ng-deep .form-group.disabled .image{position:relative;filter:grayscale(1)}::ng-deep .form-group.disabled .image:before{content:\"\";position:absolute;inset:0;background:#FFFFFF;opacity:.7}::ng-deep .form-group.disabled .form{opacity:.3;filter:grayscale(1)}::ng-deep marx-modal .popup-modal-background{background-color:#161b2fcc!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MarxEditorComponent, selector: "vcomply-editor", inputs: ["editorConfig"], outputs: ["comment", "sendSavedFiles", "popup"] }, { kind: "component", type: i4.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value"], outputs: ["checkedEvent"] }, { kind: "component", type: i5.DatePickerComponent, selector: "dp-date-picker", inputs: ["mode", "placeholder", "disabled", "config", "displayDate", "theme", "minDate", "maxDate", "minTime", "maxTime"], outputs: ["open", "close", "onChange", "onGoToCurrent", "onLeftNav", "onRightNav", "onSelect"] }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.ToolTipDirective, selector: "[arTooltip]", inputs: ["arTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "pipe", type: i2.DatePipe, name: "date" }] });
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormGroupComponent, decorators: [{
120
- type: Component,
121
- args: [{ selector: 'app-form-group', template: "<!-- <p>form-group works!</p> -->\r\n<div class=\"form-group\" [class.disabled]=\"disabled\">\r\n <div class=\"vx-dialog-body-container\" (scroll)=\"animateImage()\">\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/what.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Dashboard Name<span class=\"required\">*</span></label>\r\n <div class=\"vx-input-group\">\r\n <input type=\"text\" placeholder=\"Add dashboard name (Max limit: 30 characters).\" [(ngModel)]=\"dashboardName\">\r\n <span class=\"counter\" *ngIf=\"dashboardName?.length > 0\">{{30 - dashboardName?.length}}</span>\r\n </div>\r\n <p class=\"vx-txt-error\">{{dashboardNameError}}</p>\r\n <div class=\"vx-input-group\">\r\n <vcomply-editor [editorConfig]=\"dashboardDescription\" [(ngModel)]=\"dashboardDescriptionText\"></vcomply-editor>\r\n <span class=\"counter\" *ngIf=\"dashboardDescriptionText?.length > 0\">{{250 - dashboardDescriptionText?.length}}</span>\r\n </div>\r\n <p class=\"vx-txt-error\">{{dashboardDescriptionError}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/who.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Who can view this dashboard?<span class=\"required\">*</span></label>\r\n <div class=\"selectbox\">\r\n <input type=\"text\" placeholder=\"Who can view this dashboard?\" readonly\r\n (click)=\"selectWhoCanViewThis()\">\r\n </div>\r\n <div class=\"selected\">\r\n <div class=\"left\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">\r\n <span class=\"value\">Samantha Jones</span>\r\n </span>\r\n <span class=\"chip\">\r\n <i class=\"icons\">&#xe90d;</i>\r\n <span class=\"value\">Angel Kleven</span>\r\n </span>\r\n </div>\r\n <button class=\"count\">+10</button>\r\n </div>\r\n <button class=\"edit\"><i class=\"icons\">&#xe9ba;</i> Edit</button>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/responsibility-center.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RESPONSIBILITY CENTER(S)</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Responsibility Center(s) that you would like displayed in the Dashboard, if any.\"\r\n (click)=\"selectResponsibilityCenter()\">\r\n </div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/category.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">PROGRAM</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Program that this responsibility relates to.\"\r\n (click)=\"selectCategories()\"></div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/category.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RISK CATEGORIES</label>\r\n <div class=\"selectbox\">\r\n <div class=\"custom-input\"\r\n aria-placeholder=\"Select the Risk Categories that you would like displayed in the Dashboard, if any.\"\r\n (click)=\"selectCategories()\"></div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/who.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">DISPLAY CRITERIA</label>\r\n <div class=\"radio-group\">\r\n <app-cs-radio (checkedEvent)=\"displayCriteriaSelected($event, 'BOTH_RC_AND_CATEGORY')\">Those responsibilities that have been assigned to both the selected\r\n Responsibility Center(s) and the selected Categories.</app-cs-radio>\r\n <app-cs-radio (checkedEvent)=\"displayCriteriaSelected($event, 'RC_OR_CATEGORY')\">Those responsibilities that have been assigned to either the selected\r\n Responsibility Center(s) or the selected Categories.</app-cs-radio>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <div class=\"image\">\r\n <img src=\"./assets/images/when.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">TIMEFRAME</label>\r\n <label class=\"vx-control-panel-sub-label\">Select how long you would like the information\r\n selected to be displayed for. If no timeframe is selected, the information will be\r\n displayed permanently.</label>\r\n <div class=\"input-group vx-d-flex vx-justify-between\">\r\n <div class=\"date-select\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"selectedFromDate | date: 'dd MMM yyyy'\" [placeholder]=\"'From'\"\r\n (click)=\"openFromDatePicker()\" readonly>\r\n <dp-date-picker #fromDatePicker [(ngModel)]=\"selectedFromDate\" placeholder=\"Select Date\"\r\n (onSelect)=\"closeFromDatePicker(); datePickerOverlay = false\" [config]=\"fromDatePickerConfig\"></dp-date-picker>\r\n <div class=\"overlay\" (click)=\"closeFromDatePicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n <div class=\"date-select\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"selectedToDate | date: 'dd MMM yyyy'\" [placeholder]=\"'To'\"\r\n (click)=\"openToDatePicker()\" readonly>\r\n <dp-date-picker #toDatePicker [(ngModel)]=\"selectedToDate\" placeholder=\"Select Date\"\r\n (onSelect)=\"closeToDatePicker(); datePickerOverlay = false\" [config]=\"toDatePickerConfig\"></dp-date-picker>\r\n <div class=\"overlay\" (click)=\"closeToDatePicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\">\r\n <!--active class will appear on open list-->\r\n <div class=\"image\">\r\n <img src=\"./assets/images/send-resolution.svg\" alt=\"\">\r\n </div>\r\n <div class=\"form\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Email Summaries <i class=\"icons\" [arTooltip]=\"'This is a test tooltip'\" placement=\"bottom-left\"\r\n type=\"white\" delay=\"0\" [tooltipMandatory]=\"true\">&#xe91f;</i></label>\r\n <label class=\"vx-control-panel-sub-label\">\r\n If you would like to send a summary of this Dashboard,\r\n please select a frequency(By default VComply sends a weekly Summary).\r\n </label>\r\n <div class=\"selectbox\">\r\n <input type=\"text\" placeholder=\"Email Summaries\" readonly (click)=\"selectFrequency()\">\r\n </div>\r\n <!-- <p class=\"vx-txt-error\">Enter a value for this input box.</p> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"button-block\">\r\n <button class=\"vx-btn block primary\" [disabled]=\"disabled\" (click)=\"configureDashboard()\">Next: Configure\r\n Widgets</button>\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@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/dialog/dialog.css\";@import\"https://cdn.v-comply.com/design-system/css/button/button.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.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-right.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/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-right.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/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/animate/animation.css\";@import\"https://cdn.v-comply.com/design-system/css/animate/animate-slide-right.css\";@import\"https://cdn.v-comply.com/design-system/css/forms/forms.css\";::ng-deep .form-group .vx-dialog-body-container{padding:36px 28px 0 40px!important;height:calc(100vh - 50px);overflow:auto;margin-left:-22px;background-color:transparent;position:relative;border-radius:0 0 0 30px;background:transparent}::ng-deep .form-group .vx-dialog-body-container .form-group-row{display:flex}::ng-deep .form-group .vx-dialog-body-container .form-group-row .image{width:40px;height:40px;margin-left:-38px;margin-right:20px;margin-top:28px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .image img{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input+marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input+vcomply-editor{margin-top:8px;display:block}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selectbox:after{border-left:none;border-bottom:1px solid #707070;border-right:1px solid #707070;border-top:none;content:\"\";display:inline-block;right:15px;position:absolute;top:calc(50% + 8px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selectbox:hover .custom-input{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selected .left{width:auto;display:flex}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .selected .chip-container{width:auto}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group{display:flex;position:relative}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group span.counter{background:transparent;color:#161b2f;font-size:9px;font-weight:500;position:absolute;top:0;right:0;border-radius:3px;height:16px;text-align:center;line-height:16px;padding:0 2px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group vcomply-editor{width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-form-group .vx-input-group.vx-input-group{margin-top:8px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor{display:block}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container{border-radius:4px;border-color:#dbdbdb}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:focus-within,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:focus-within,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:hover,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:hover{border-color:#1e5dd3}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:focus-within .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:focus-within .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container:hover .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container:hover .editor-tools{border-top-color:#1e5dd3!important;transition:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editable-block,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;max-height:90px}@media not all and (-webkit-min-device-pixel-ratio: 0),not all and (min-resolution: .001dpcm){@supports (-webkit-appearance: none){::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editable-block:before,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editable-block:before{opacity:.72}}}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools{border-color:#dbdbdb;border-radius:0 0 2px 2px;transition:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep .form-group .vx-dialog-body-container .form-group-row .form vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .custom-input{height:2.5rem;border-radius:.25rem;border:1px solid #DBDBDB;background:#FFFFFF;outline:none;padding:.1875rem .75rem;line-height:1.25rem;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:12px;width:94%;display:block;pointer-events:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel i{font-size:12px;color:#1e5dd3;margin-left:7px;cursor:pointer}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-control-panel-sub-label{color:#747576;font-size:.6875rem;font-weight:400;line-height:1rem;margin-bottom:.5rem;display:block;text-transform:none;width:100%;margin-top:0}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .vx-control-panel-sub-label span.required{color:#eb2424}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel+.vx-control-panel-sub-label{margin-top:-.5rem}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.radio{position:absolute;top:17px;left:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #DBDBDB;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item svg{position:absolute;top:17px;left:12px}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio label.radio-item input:checked~span.value{background:#EEFCF0;border-color:#34aa44}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .radio-group app-cs-radio+app-cs-radio{margin-top:.5rem}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select{position:relative;width:calc(50% - .25rem)}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select input{padding-left:36px!important}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form .date-select i{display:flex;justify-content:center;align-items:center;height:39px;width:14px;position:absolute;left:12px;top:0;color:#bcbcbc;font-size:14px;pointer-events:none;z-index:1}::ng-deep .form-group .vx-dialog-body-container .form-group-row .form label.vx-control-panel span.sub-label{color:#747576;font-size:.6875rem;font-weight:400;line-height:1rem;text-transform:none;width:100%}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .image{filter:grayscale(0)}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .image:before{display:none}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form{opacity:1;filter:grayscale(0)}::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form .custom-input,::ng-deep .form-group .vx-dialog-body-container .form-group-row.active .form input[type=text]{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .form-group .vx-dialog-body-container:after{content:\"\";width:100%;display:block;height:30px;position:sticky;right:0;bottom:0;left:0;z-index:6;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}::ng-deep .form-group .button-block{position:relative;z-index:2}::ng-deep .form-group .button-block button{height:50px;line-height:48px!important}::ng-deep .form-group .button-block button:disabled{opacity:.3}::ng-deep .form-group.disabled{pointer-events:none;z-index:2}::ng-deep .form-group.disabled .image{position:relative;filter:grayscale(1)}::ng-deep .form-group.disabled .image:before{content:\"\";position:absolute;inset:0;background:#FFFFFF;opacity:.7}::ng-deep .form-group.disabled .form{opacity:.3;filter:grayscale(1)}::ng-deep marx-modal .popup-modal-background{background-color:#161b2fcc!important}\n"] }]
122
- }], ctorParameters: function () { return [{ type: i1.DialogService }]; }, propDecorators: { openCategoryList: [{
123
- type: Output
124
- }], openResponsibilityCenterList: [{
125
- type: Output
126
- }], openWhoCanViewThis: [{
127
- type: Output
128
- }], closeCreateDashboard: [{
129
- type: Output
130
- }], openFrequency: [{
131
- type: Output
132
- }], disabled: [{
133
- type: Input
134
- }], fromDatePicker: [{
135
- type: ViewChild,
136
- args: ['fromDatePicker']
137
- }], toDatePicker: [{
138
- type: ViewChild,
139
- args: ['toDatePicker']
140
- }] } });
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvZm9ybS1ncm91cC9mb3JtLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9mb3JtLWdyb3VwL2Zvcm0tZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQUl2QixxSEFBcUg7QUFPckgsTUFBTSxPQUFPLGtCQUFrQjtJQXdCN0IsWUFBb0IsTUFBcUI7UUFBckIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQXZCL0IscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM5QyxpQ0FBNEIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQzFELHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDaEQseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNsRCxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFLckQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBSzFCLDJCQUFzQixHQUFXLG1DQUFtQyxDQUFDO1FBQ3JFLG1DQUE4QixHQUM1QixrRUFBa0UsQ0FBQztRQUNyRSx1Q0FBa0MsR0FDaEMsd0ZBQXdGLENBQUM7UUFPM0YseUJBQW9CLEdBQWlCO1lBQ25DLFdBQVcsRUFBRSx5Q0FBeUM7WUFDdEQsSUFBSSxFQUFFLE9BQU87WUFDYixFQUFFLEVBQUUsYUFBYTtTQUNsQixDQUFDO1FBRUYseUJBQW9CLEdBQXNCO1lBQ3hDLEdBQUcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1NBQzNCLENBQUM7UUFFRix1QkFBa0IsR0FBc0IsRUFBRSxDQUFDO0lBWkMsQ0FBQztJQWM3QyxRQUFRLEtBQVUsQ0FBQztJQUVuQixrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBRWpFLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbEUsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7U0FDakM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdELE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdkMscUJBQXFCO1FBQ3JCLHNDQUFzQztRQUN0Qyw4REFBOEQ7UUFDOUQsZ0JBQWdCO1FBQ2hCLDBCQUEwQjtRQUMxQixzQkFBc0I7UUFDdEIsUUFBUTtRQUNSLElBQUk7SUFDTixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksY0FBYyxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxFQUFFLENBQUM7UUFFcEMsSUFDRSxJQUFJLENBQUMsYUFBYSxLQUFLLElBQUk7WUFDM0IsSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEtBQUssRUFBRSxFQUN6QjtZQUNBLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7WUFDdEQsY0FBYyxHQUFHLEtBQUssQ0FBQztTQUN4QjthQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsOEJBQThCLENBQUMsT0FBTyxDQUNuRSxLQUFLLEVBQ0wsSUFBSSxDQUNMLENBQUM7WUFDRixjQUFjLEdBQUcsS0FBSyxDQUFDO1NBQ3hCO2FBQU0sSUFDTCxJQUFJLENBQUMsd0JBQXdCLEtBQUssSUFBSTtZQUN0QyxJQUFJLENBQUMsd0JBQXdCLEtBQUssU0FBUztZQUMzQyxJQUFJLENBQUMsd0JBQXdCLEtBQUssRUFBRSxFQUNwQztZQUNBLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7WUFDN0QsY0FBYyxHQUFHLEtBQUssQ0FBQztTQUN4QjthQUFNLElBQUksSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDckQsSUFBSSxDQUFDLHlCQUF5QjtnQkFDNUIsSUFBSSxDQUFDLDhCQUE4QixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDNUQsY0FBYyxHQUFHLEtBQUssQ0FBQztTQUN4QjtRQUNELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQ0wsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUMzRSxDQUFDO0lBQ0osQ0FBQztJQUVELHVCQUF1QixDQUFDLEtBQWMsRUFBRSxTQUFpQjtRQUN2RCxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztJQUNuQyxDQUFDOzsrR0E5SVUsa0JBQWtCO21HQUFsQixrQkFBa0Isa2hCQ2xCL0IsaThVQWlMTTsyRkQvSk8sa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGdCQUFnQjtvR0FLaEIsZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLDRCQUE0QjtzQkFBckMsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0UsUUFBUTtzQkFBaEIsS0FBSztnQkFFdUIsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBQ0EsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXRlUGlja2VyQ29tcG9uZW50LCBJRGF0ZVBpY2tlckNvbmZpZyB9IGZyb20gJ25nMi1kYXRlLXBpY2tlcic7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi91aS1raXQvZGlhbG9nL2RpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRWRpdG9yQ29uZmlnIH0gZnJvbSAnQHZjb21wbHkvZWRpdG9yJztcclxuLy8gaW1wb3J0IHsgQ29uZmlndXJlV2lkZ2V0c0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbmZpZ3VyZS13aWRnZXRzL2NvbmZpZ3VyZS13aWRnZXRzL2NvbmZpZ3VyZS13aWRnZXRzLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1mb3JtLWdyb3VwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1ncm91cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1ncm91cC5jb21wb25lbnQubGVzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybUdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAT3V0cHV0KCkgb3BlbkNhdGVnb3J5TGlzdCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBvcGVuUmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIG9wZW5XaG9DYW5WaWV3VGhpcyA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBjbG9zZUNyZWF0ZURhc2hib2FyZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBvcGVuRnJlcXVlbmN5ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQElucHV0KCkgZGlzYWJsZWQhOiBib29sZWFuO1xyXG5cclxuICBAVmlld0NoaWxkKCdmcm9tRGF0ZVBpY2tlcicpIGZyb21EYXRlUGlja2VyITogRGF0ZVBpY2tlckNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCd0b0RhdGVQaWNrZXInKSB0b0RhdGVQaWNrZXIhOiBEYXRlUGlja2VyQ29tcG9uZW50O1xyXG4gIGRhdGVQaWNrZXJPdmVybGF5ID0gZmFsc2U7XHJcbiAgc2VsZWN0ZWRGcm9tRGF0ZSE6IGFueTtcclxuICBzZWxlY3RlZFRvRGF0ZSE6IGFueTtcclxuICBkYXNoYm9hcmROYW1lITogYW55O1xyXG4gIGRhc2hib2FyZERlc2NyaXB0aW9uVGV4dCE6IGFueTtcclxuICBmaWVsZEVtcHR5RXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnRW50ZXIgYSB2YWx1ZSBmb3IgdGhpcyBpbnB1dCBib3guJztcclxuICBmaWVsZExpbWl0RXhjZWVkZWRFcnJvck1lc3NhZ2U6IHN0cmluZyA9XHJcbiAgICAnWW91IGhhdmUgZXhjZWVkZWQgdGhlIG1heGltdW0gY2hhcmFjdGVyIGxpbWl0IG9mIFhZWiBjaGFyYWN0ZXJzLic7XHJcbiAgZGFzaGJvYXJkTmFtZU5vdFVuaXF1ZUVycm9yTWVzc2FnZTogc3RyaW5nID1cclxuICAgICdBIGRhc2hib2FyZCB3aXRoIHRoaXMgbmFtZSBhbHJlYWR5IGV4aXN0cy4gU3BlY2lmeSBhIGRpZmZlcmVudCBuYW1lIGZvciB0aGUgZGFzaGJvYXJkLic7XHJcbiAgZGFzaGJvYXJkTmFtZUVycm9yITogc3RyaW5nO1xyXG4gIGRhc2hib2FyZERlc2NyaXB0aW9uRXJyb3IhOiBzdHJpbmc7XHJcbiAgZGlzcGxheUNyaXRlcmlhITogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZzogRGlhbG9nU2VydmljZSkge31cclxuXHJcbiAgZGFzaGJvYXJkRGVzY3JpcHRpb246IEVkaXRvckNvbmZpZyA9IHtcclxuICAgIHBsYWNlaG9sZGVyOiAnRGVzY3JpcHRpb24gKE1heCBsaW1pdDogMjUwIGNoYXJhY3RlcnMpJyxcclxuICAgIG1vZGU6ICdwcmltZScsXHJcbiAgICBpZDogJ2Rlc2NyaXB0aW9uJyxcclxuICB9O1xyXG5cclxuICBmcm9tRGF0ZVBpY2tlckNvbmZpZzogSURhdGVQaWNrZXJDb25maWcgPSB7XHJcbiAgICBtaW46IHRoaXMuZ2V0Q3VycmVudERhdGUoKSxcclxuICB9O1xyXG5cclxuICB0b0RhdGVQaWNrZXJDb25maWc6IElEYXRlUGlja2VyQ29uZmlnID0ge307XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcbiAgb3BlbkZyb21EYXRlUGlja2VyKCkge1xyXG4gICAgdGhpcy5mcm9tRGF0ZVBpY2tlci5hcGkub3BlbigpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyT3ZlcmxheSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBvcGVuVG9EYXRlUGlja2VyKCkge1xyXG4gICAgdGhpcy50b0RhdGVQaWNrZXIuYXBpLm9wZW4oKTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VGcm9tRGF0ZVBpY2tlcigpIHtcclxuICAgIGxldCBtaW5Ub0RhdGUgPSB0aGlzLnNlbGVjdGVkRnJvbURhdGUuY2xvbmUoKS5hZGQoMSwgJ2RheXMnKTtcclxuICAgIHRoaXMudG9EYXRlUGlja2VyQ29uZmlnID0geyBtaW46IG1pblRvRGF0ZSwgbWluVGltZTogbWluVG9EYXRlIH07XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRUb0RhdGUgJiYgbWluVG9EYXRlLmRpZmYodGhpcy5zZWxlY3RlZFRvRGF0ZSkgPiAwKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUb0RhdGUgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5mcm9tRGF0ZVBpY2tlci5hcGkuY2xvc2UoKTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGNsb3NlVG9EYXRlUGlja2VyKCkge1xyXG4gICAgdGhpcy50b0RhdGVQaWNrZXIuYXBpLmNsb3NlKCk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJPdmVybGF5ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBhbmltYXRlSW1hZ2UoKSB7XHJcbiAgICBjb25zdCBjaXJjbGVJbWFnZSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2ltYWdlJyk7XHJcbiAgICBjb25zb2xlLmxvZyhjaXJjbGVJbWFnZSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RXaG9DYW5WaWV3VGhpcygpIHtcclxuICAgIHRoaXMub3Blbldob0NhblZpZXdUaGlzLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdFJlc3BvbnNpYmlsaXR5Q2VudGVyKCkge1xyXG4gICAgdGhpcy5vcGVuUmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdENhdGVnb3JpZXMoKSB7XHJcbiAgICB0aGlzLm9wZW5DYXRlZ29yeUxpc3QuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0RnJlcXVlbmN5KCkge1xyXG4gICAgdGhpcy5vcGVuRnJlcXVlbmN5LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGNvbmZpZ3VyZURhc2hib2FyZCgpIHtcclxuICAgIGxldCBmaWVsZHNTdGF0dXMgPSB0aGlzLnZlcmlmeUZpZWxkcygpO1xyXG4gICAgLy8gaWYoZmllbGRzU3RhdHVzKSB7XHJcbiAgICAvLyAgIHRoaXMuY2xvc2VDcmVhdGVEYXNoYm9hcmQuZW1pdCgpO1xyXG4gICAgLy8gICBjb25zdCByZWYgPSB0aGlzLmRpYWxvZy5vcGVuKENvbmZpZ3VyZVdpZGdldHNDb21wb25lbnQsIHtcclxuICAgIC8vICAgICBkYXRhOiB7fSxcclxuICAgIC8vICAgICBwb3NpdGlvbjogJ0NFTlRFUicsXHJcbiAgICAvLyAgICAgcG9pbnRlcjogJ25vbmUnXHJcbiAgICAvLyAgIH0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgdmVyaWZ5RmllbGRzKCkge1xyXG4gICAgbGV0IGFsbEZpZWxkc1ZhbGlkID0gdHJ1ZTtcclxuICAgIHRoaXMuZGFzaGJvYXJkTmFtZUVycm9yID0gJyc7XHJcbiAgICB0aGlzLmRhc2hib2FyZERlc2NyaXB0aW9uRXJyb3IgPSAnJztcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuZGFzaGJvYXJkTmFtZSA9PT0gbnVsbCB8fFxyXG4gICAgICB0aGlzLmRhc2hib2FyZE5hbWUgPT09IHVuZGVmaW5lZCB8fFxyXG4gICAgICB0aGlzLmRhc2hib2FyZE5hbWUgPT09ICcnXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5kYXNoYm9hcmROYW1lRXJyb3IgPSB0aGlzLmZpZWxkRW1wdHlFcnJvck1lc3NhZ2U7XHJcbiAgICAgIGFsbEZpZWxkc1ZhbGlkID0gZmFsc2U7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuZGFzaGJvYXJkTmFtZS5sZW5ndGggPiAzMCkge1xyXG4gICAgICB0aGlzLmRhc2hib2FyZE5hbWVFcnJvciA9IHRoaXMuZmllbGRMaW1pdEV4Y2VlZGVkRXJyb3JNZXNzYWdlLnJlcGxhY2UoXHJcbiAgICAgICAgJ1hZWicsXHJcbiAgICAgICAgJzMwJ1xyXG4gICAgICApO1xyXG4gICAgICBhbGxGaWVsZHNWYWxpZCA9IGZhbHNlO1xyXG4gICAgfSBlbHNlIGlmIChcclxuICAgICAgdGhpcy5kYXNoYm9hcmREZXNjcmlwdGlvblRleHQgPT09IG51bGwgfHxcclxuICAgICAgdGhpcy5kYXNoYm9hcmREZXNjcmlwdGlvblRleHQgPT09IHVuZGVmaW5lZCB8fFxyXG4gICAgICB0aGlzLmRhc2hib2FyZERlc2NyaXB0aW9uVGV4dCA9PT0gJydcclxuICAgICkge1xyXG4gICAgICB0aGlzLmRhc2hib2FyZERlc2NyaXB0aW9uRXJyb3IgPSB0aGlzLmZpZWxkRW1wdHlFcnJvck1lc3NhZ2U7XHJcbiAgICAgIGFsbEZpZWxkc1ZhbGlkID0gZmFsc2U7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuZGFzaGJvYXJkRGVzY3JpcHRpb25UZXh0Lmxlbmd0aCA+IDI1MCkge1xyXG4gICAgICB0aGlzLmRhc2hib2FyZERlc2NyaXB0aW9uRXJyb3IgPVxyXG4gICAgICAgIHRoaXMuZmllbGRMaW1pdEV4Y2VlZGVkRXJyb3JNZXNzYWdlLnJlcGxhY2UoJ1hZWicsICcyNTAnKTtcclxuICAgICAgYWxsRmllbGRzVmFsaWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiBhbGxGaWVsZHNWYWxpZDtcclxuICB9XHJcblxyXG4gIGdldEN1cnJlbnREYXRlKCkge1xyXG4gICAgbGV0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRvZGF5LmdldERhdGUoKSArICctJyArICh0b2RheS5nZXRNb250aCgpICsgMSkgKyAnLScgKyB0b2RheS5nZXRGdWxsWWVhcigpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheUNyaXRlcmlhU2VsZWN0ZWQoZXZlbnQ6IGJvb2xlYW4sIHNlbGVjdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmRpc3BsYXlDcml0ZXJpYSA9IHNlbGVjdGlvbjtcclxuICB9XHJcbn1cclxuIiwiPCEtLSA8cD5mb3JtLWdyb3VwIHdvcmtzITwvcD4gLS0+XHJcbjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidngtZGlhbG9nLWJvZHktY29udGFpbmVyXCIgKHNjcm9sbCk9XCJhbmltYXRlSW1hZ2UoKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvaW1hZ2VzL3doYXQuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+RGFzaGJvYXJkIE5hbWU8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1pbnB1dC1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIkFkZCBkYXNoYm9hcmQgbmFtZSAoTWF4IGxpbWl0OiAzMCBjaGFyYWN0ZXJzKS5cIiBbKG5nTW9kZWwpXT1cImRhc2hib2FyZE5hbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb3VudGVyXCIgKm5nSWY9XCJkYXNoYm9hcmROYW1lPy5sZW5ndGggPiAwXCI+e3szMCAtIGRhc2hib2FyZE5hbWU/Lmxlbmd0aH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+e3tkYXNoYm9hcmROYW1lRXJyb3J9fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtaW5wdXQtZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHZjb21wbHktZWRpdG9yIFtlZGl0b3JDb25maWddPVwiZGFzaGJvYXJkRGVzY3JpcHRpb25cIiBbKG5nTW9kZWwpXT1cImRhc2hib2FyZERlc2NyaXB0aW9uVGV4dFwiPjwvdmNvbXBseS1lZGl0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnRlclwiICpuZ0lmPVwiZGFzaGJvYXJkRGVzY3JpcHRpb25UZXh0Py5sZW5ndGggPiAwXCI+e3syNTAgLSBkYXNoYm9hcmREZXNjcmlwdGlvblRleHQ/Lmxlbmd0aH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+e3tkYXNoYm9hcmREZXNjcmlwdGlvbkVycm9yfX08L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZVwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuL2Fzc2V0cy9pbWFnZXMvd2hvLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm1cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPldobyBjYW4gdmlldyB0aGlzIGRhc2hib2FyZD88c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3Rib3hcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJXaG8gY2FuIHZpZXcgdGhpcyBkYXNoYm9hcmQ/XCIgcmVhZG9ubHlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RXaG9DYW5WaWV3VGhpcygpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlNhbWFudGhhIEpvbmVzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+QW5nZWwgS2xldmVuPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCI+KzEwPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZWRpdFwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHAgY2xhc3M9XCJ2eC10eHQtZXJyb3JcIj5FbnRlciBhIHZhbHVlIGZvciB0aGlzIGlucHV0IGJveC48L3A+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvaW1hZ2VzL3Jlc3BvbnNpYmlsaXR5LWNlbnRlci5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SRVNQT05TSUJJTElUWSBDRU5URVIoUyk8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3Rib3hcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbS1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXBsYWNlaG9sZGVyPVwiU2VsZWN0IHRoZSBSZXNwb25zaWJpbGl0eSBDZW50ZXIocykgdGhhdCB5b3Ugd291bGQgbGlrZSBkaXNwbGF5ZWQgaW4gdGhlIERhc2hib2FyZCwgaWYgYW55LlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmVzcG9uc2liaWxpdHlDZW50ZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+RW50ZXIgYSB2YWx1ZSBmb3IgdGhpcyBpbnB1dCBib3guPC9wPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL2ltYWdlcy9jYXRlZ29yeS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5QUk9HUkFNPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0Ym94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20taW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1wbGFjZWhvbGRlcj1cIlNlbGVjdCB0aGUgUHJvZ3JhbSB0aGF0IHRoaXMgcmVzcG9uc2liaWxpdHkgcmVsYXRlcyB0by5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdENhdGVnb3JpZXMoKVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHAgY2xhc3M9XCJ2eC10eHQtZXJyb3JcIj5FbnRlciBhIHZhbHVlIGZvciB0aGlzIGlucHV0IGJveC48L3A+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvaW1hZ2VzL2NhdGVnb3J5LnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm1cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJJU0sgQ0FURUdPUklFUzwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGJveFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtcGxhY2Vob2xkZXI9XCJTZWxlY3QgdGhlIFJpc2sgQ2F0ZWdvcmllcyB0aGF0IHlvdSB3b3VsZCBsaWtlIGRpc3BsYXllZCBpbiB0aGUgRGFzaGJvYXJkLCBpZiBhbnkuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RDYXRlZ29yaWVzKClcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+RW50ZXIgYSB2YWx1ZSBmb3IgdGhpcyBpbnB1dCBib3guPC9wPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL2ltYWdlcy93aG8uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+RElTUExBWSBDUklURVJJQTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJhZGlvLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gKGNoZWNrZWRFdmVudCk9XCJkaXNwbGF5Q3JpdGVyaWFTZWxlY3RlZCgkZXZlbnQsICdCT1RIX1JDX0FORF9DQVRFR09SWScpXCI+VGhvc2UgcmVzcG9uc2liaWxpdGllcyB0aGF0IGhhdmUgYmVlbiBhc3NpZ25lZCB0byBib3RoIHRoZSBzZWxlY3RlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpIGFuZCB0aGUgc2VsZWN0ZWQgQ2F0ZWdvcmllcy48L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyAoY2hlY2tlZEV2ZW50KT1cImRpc3BsYXlDcml0ZXJpYVNlbGVjdGVkKCRldmVudCwgJ1JDX09SX0NBVEVHT1JZJylcIj5UaG9zZSByZXNwb25zaWJpbGl0aWVzIHRoYXQgaGF2ZSBiZWVuIGFzc2lnbmVkIHRvIGVpdGhlciB0aGUgc2VsZWN0ZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc3BvbnNpYmlsaXR5IENlbnRlcihzKSBvciB0aGUgc2VsZWN0ZWQgQ2F0ZWdvcmllcy48L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+RW50ZXIgYSB2YWx1ZSBmb3IgdGhpcyBpbnB1dCBib3guPC9wPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL2ltYWdlcy93aGVuLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm1cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlRJTUVGUkFNRTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbC1zdWItbGFiZWxcIj5TZWxlY3QgaG93IGxvbmcgeW91IHdvdWxkIGxpa2UgdGhlIGluZm9ybWF0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkIHRvIGJlIGRpc3BsYXllZCBmb3IuIElmIG5vIHRpbWVmcmFtZSBpcyBzZWxlY3RlZCwgdGhlIGluZm9ybWF0aW9uIHdpbGwgYmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheWVkIHBlcm1hbmVudGx5LjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtc2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkyZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbdmFsdWVdPVwic2VsZWN0ZWRGcm9tRGF0ZSB8IGRhdGU6ICdkZCBNTU0geXl5eSdcIiBbcGxhY2Vob2xkZXJdPVwiJ0Zyb20nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlbkZyb21EYXRlUGlja2VyKClcIiByZWFkb25seT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkcC1kYXRlLXBpY2tlciAjZnJvbURhdGVQaWNrZXIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEZyb21EYXRlXCIgcGxhY2Vob2xkZXI9XCJTZWxlY3QgRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cImNsb3NlRnJvbURhdGVQaWNrZXIoKTsgZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZVwiIFtjb25maWddPVwiZnJvbURhdGVQaWNrZXJDb25maWdcIj48L2RwLWRhdGUtcGlja2VyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXlcIiAoY2xpY2spPVwiY2xvc2VGcm9tRGF0ZVBpY2tlcigpXCIgKm5nSWY9XCJkYXRlUGlja2VyT3ZlcmxheVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtc2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkyZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbdmFsdWVdPVwic2VsZWN0ZWRUb0RhdGUgfCBkYXRlOiAnZGQgTU1NIHl5eXknXCIgW3BsYWNlaG9sZGVyXT1cIidUbydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVuVG9EYXRlUGlja2VyKClcIiByZWFkb25seT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkcC1kYXRlLXBpY2tlciAjdG9EYXRlUGlja2VyIFsobmdNb2RlbCldPVwic2VsZWN0ZWRUb0RhdGVcIiBwbGFjZWhvbGRlcj1cIlNlbGVjdCBEYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25TZWxlY3QpPVwiY2xvc2VUb0RhdGVQaWNrZXIoKTsgZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZVwiICBbY29uZmlnXT1cInRvRGF0ZVBpY2tlckNvbmZpZ1wiPjwvZHAtZGF0ZS1waWNrZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheVwiIChjbGljayk9XCJjbG9zZVRvRGF0ZVBpY2tlcigpXCIgKm5nSWY9XCJkYXRlUGlja2VyT3ZlcmxheVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxwIGNsYXNzPVwidngtdHh0LWVycm9yXCI+RW50ZXIgYSB2YWx1ZSBmb3IgdGhpcyBpbnB1dCBib3guPC9wPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIj5cclxuICAgICAgICAgICAgPCEtLWFjdGl2ZSBjbGFzcyB3aWxsIGFwcGVhciBvbiBvcGVuIGxpc3QtLT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL2ltYWdlcy9zZW5kLXJlc29sdXRpb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVtYWlsIFN1bW1hcmllcyA8aSBjbGFzcz1cImljb25zXCIgW2FyVG9vbHRpcF09XCInVGhpcyBpcyBhIHRlc3QgdG9vbHRpcCdcIiBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwid2hpdGVcIiBkZWxheT1cIjBcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsLXN1Yi1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBJZiB5b3Ugd291bGQgbGlrZSB0byBzZW5kIGEgc3VtbWFyeSBvZiB0aGlzIERhc2hib2FyZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxlYXNlIHNlbGVjdCBhIGZyZXF1ZW5jeShCeSBkZWZhdWx0IFZDb21wbHkgc2VuZHMgYSB3ZWVrbHkgU3VtbWFyeSkuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0Ym94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiRW1haWwgU3VtbWFyaWVzXCIgcmVhZG9ubHkgKGNsaWNrKT1cInNlbGVjdEZyZXF1ZW5jeSgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8cCBjbGFzcz1cInZ4LXR4dC1lcnJvclwiPkVudGVyIGEgdmFsdWUgZm9yIHRoaXMgaW5wdXQgYm94LjwvcD4gLS0+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tYmxvY2tcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwidngtYnRuIGJsb2NrIHByaW1hcnlcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAoY2xpY2spPVwiY29uZmlndXJlRGFzaGJvYXJkKClcIj5OZXh0OiBDb25maWd1cmVcclxuICAgICAgICAgICAgV2lkZ2V0czwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==