vcomply-workflow-engine 2.6.183 → 2.6.185

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 (82) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +465 -273
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.js +2 -2
  4. package/esm2015/lib/sharedComponents/floating-bar/floating-bar.component.js +3 -3
  5. package/esm2015/lib/sharedComponents/floating-bar/floating-bar.component.ngfactory.js +2 -2
  6. package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.js +2 -2
  7. package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.ngfactory.js +7 -7
  8. package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.js +2 -2
  9. package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.ngfactory.js +7 -7
  10. package/esm2015/lib/sharedComponents/frequency/frequency-checkbox-list/frequency-checkbox-list.component.js +3 -5
  11. package/esm2015/lib/sharedComponents/frequency/frequency-checkbox-list/frequency-checkbox-list.component.ngfactory.js +4 -10
  12. package/esm2015/lib/sharedComponents/frequency/frequency-checkbox-list/frequency-checkbox-list.component.ngsummary.json +1 -1
  13. package/esm2015/lib/sharedComponents/frequency/frequency-container/frequency-container.component.js +3 -3
  14. package/esm2015/lib/sharedComponents/frequency/frequency-container/frequency-container.component.ngfactory.js +13 -65
  15. package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.js +2 -2
  16. package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.ngfactory.js +6 -6
  17. package/esm2015/lib/sharedComponents/frequency/frequency-due-date/frequency-due-date.component.js +3 -3
  18. package/esm2015/lib/sharedComponents/frequency/frequency-due-date/frequency-due-date.component.ngfactory.js +21 -99
  19. package/esm2015/lib/sharedComponents/frequency/frequency-lifecycle/frequency-lifecycle.component.js +3 -4
  20. package/esm2015/lib/sharedComponents/frequency/frequency-lifecycle/frequency-lifecycle.component.ngfactory.js +31 -74
  21. package/esm2015/lib/sharedComponents/frequency/frequency-lifecycle/frequency-lifecycle.component.ngsummary.json +1 -1
  22. package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.js +2 -2
  23. package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.ngfactory.js +7 -7
  24. package/esm2015/lib/sharedComponents/frequency/frequency-on-completion-of/frequency-on-completion-of.component.js +3 -3
  25. package/esm2015/lib/sharedComponents/frequency/frequency-on-completion-of/frequency-on-completion-of.component.ngfactory.js +4 -40
  26. package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.js +3 -3
  27. package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.ngfactory.js +19 -27
  28. package/esm2015/lib/sharedComponents/frequency/frequency-ongoing/frequency-ongoing.component.js +4 -4
  29. package/esm2015/lib/sharedComponents/frequency/frequency-ongoing/frequency-ongoing.component.ngfactory.js +7 -7
  30. package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.js +2 -2
  31. package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.ngfactory.js +7 -7
  32. package/esm2015/lib/sharedComponents/frequency/frequency-radio-list/frequency-radio-list.component.js +3 -5
  33. package/esm2015/lib/sharedComponents/frequency/frequency-radio-list/frequency-radio-list.component.ngfactory.js +4 -10
  34. package/esm2015/lib/sharedComponents/frequency/frequency-radio-list/frequency-radio-list.component.ngsummary.json +1 -1
  35. package/esm2015/lib/sharedComponents/frequency/frequency-random/frequency-random.component.js +3 -3
  36. package/esm2015/lib/sharedComponents/frequency/frequency-random/frequency-random.component.ngfactory.js +24 -24
  37. package/esm2015/lib/sharedComponents/frequency/frequency-top/frequency-top.component.js +4 -6
  38. package/esm2015/lib/sharedComponents/frequency/frequency-top/frequency-top.component.ngfactory.js +8 -62
  39. package/esm2015/lib/sharedComponents/frequency/frequency-top/frequency-top.component.ngsummary.json +1 -1
  40. package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.js +3 -3
  41. package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.ngfactory.js +7 -7
  42. package/esm2015/lib/sharedComponents/group-users-list/group-users-list.component.js +12 -3
  43. package/esm2015/lib/sharedComponents/group-users-list/group-users-list.component.ngfactory.js +46 -45
  44. package/esm2015/lib/sharedComponents/group-users-list/group-users-list.component.ngsummary.json +1 -1
  45. package/esm2015/lib/sharedComponents/owner-list/owner-list.component.js +17 -4
  46. package/esm2015/lib/sharedComponents/owner-list/owner-list.component.ngfactory.js +26 -25
  47. package/esm2015/lib/sharedComponents/owner-list/owner-list.component.ngsummary.json +1 -1
  48. package/esm2015/lib/sharedComponents/review-frequency/review-frequency.component.js +3 -3
  49. package/esm2015/lib/sharedComponents/review-frequency/review-frequency.component.ngfactory.js +12 -12
  50. package/esm2015/lib/sharedComponents/users-radio-list/users-radio-list.component.js +13 -4
  51. package/esm2015/lib/sharedComponents/users-radio-list/users-radio-list.component.ngfactory.js +22 -21
  52. package/esm2015/lib/sharedComponents/users-radio-list/users-radio-list.component.ngsummary.json +1 -1
  53. package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +297 -216
  54. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngfactory.js +9 -9
  55. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngsummary.json +1 -1
  56. package/esm2015/lib/workflow-engine.module.ngfactory.js +1 -1
  57. package/esm2015/lib/workflow-program/create-program-ui/create-program-ui.module.js +6 -3
  58. package/esm2015/lib/workflow-program/create-program-ui/create-program-ui.module.ngfactory.js +1 -1
  59. package/esm2015/lib/workflow-program/create-program-ui/create-program-ui.module.ngsummary.json +1 -1
  60. package/esm2015/lib/workflow-program/create-program-ui/define-framework-listing/pipes/tooltip-message.pipe.js +63 -0
  61. package/esm2015/lib/workflow-program/create-program-ui/define-framework-listing/pipes/tooltip-message.pipe.ngsummary.json +1 -0
  62. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.js +15 -2
  63. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.ngfactory.js +32 -31
  64. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.ngsummary.json +1 -1
  65. package/esm2015/lib/workflow-services/frequency.service.js +3 -3
  66. package/esm2015/vcomply-workflow-engine.js +6 -5
  67. package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
  68. package/fesm2015/vcomply-workflow-engine.js +452 -270
  69. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  70. package/lib/sharedComponents/frequency/frequency-checkbox-list/frequency-checkbox-list.component.d.ts +0 -1
  71. package/lib/sharedComponents/frequency/frequency-lifecycle/frequency-lifecycle.component.d.ts +0 -1
  72. package/lib/sharedComponents/frequency/frequency-radio-list/frequency-radio-list.component.d.ts +0 -1
  73. package/lib/sharedComponents/frequency/frequency-top/frequency-top.component.d.ts +0 -1
  74. package/lib/sharedComponents/group-users-list/group-users-list.component.d.ts +5 -0
  75. package/lib/sharedComponents/owner-list/owner-list.component.d.ts +6 -0
  76. package/lib/sharedComponents/users-radio-list/users-radio-list.component.d.ts +5 -0
  77. package/lib/workflow-compliance/workflow-compliance.component.d.ts +10 -0
  78. package/lib/workflow-program/create-program-ui/define-framework-listing/pipes/tooltip-message.pipe.d.ts +4 -0
  79. package/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.d.ts +6 -0
  80. package/package.json +1 -1
  81. package/vcomply-workflow-engine.d.ts +5 -4
  82. package/vcomply-workflow-engine.metadata.json +1 -1
@@ -12,7 +12,7 @@ import * as i4 from "./frequency-due-date.component";
12
12
  var styles_FrequencyDueDateComponent = [i0.styles];
13
13
  var RenderType_FrequencyDueDateComponent = i1.ɵcrt({ encapsulation: 0, styles: styles_FrequencyDueDateComponent, data: {} });
14
14
  export { RenderType_FrequencyDueDateComponent as RenderType_FrequencyDueDateComponent };
15
- function View_FrequencyDueDateComponent_2(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 20, "div", [["class", "frequency-bottom-item vx-mt-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["COMPLETION WINDOW OPENS:"])), (_l()(), i1.ɵeld(3, 0, null, null, 17, "div", [["class", "frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, [" The responsibility can be completed on the due date and "])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["class", "countNum"], ["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
15
+ function View_FrequencyDueDateComponent_2(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility can be marked as "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["complete"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
16
16
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
17
17
  ad = (pd_0 && ad);
18
18
  } if (("blur" === en)) {
@@ -36,8 +36,8 @@ function View_FrequencyDueDateComponent_2(_l) { return i1.ɵvid(0, [(_l()(), i1.
36
36
  } if (("change" === en)) {
37
37
  var pd_7 = (_co.onValueChange($event, "completed") !== false);
38
38
  ad = (pd_7 && ad);
39
- } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵted(14, null, [" ", " "])), (_l()(), i1.ɵeld(15, 0, null, null, 1, "span", [["class", "vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["before"])), (_l()(), i1.ɵted(-1, null, [" the due date. Where this occurs, this will show as the responsibility being "])), (_l()(), i1.ɵeld(18, 0, null, null, 1, "span", [["class", "completed-text vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["completed on time"])), (_l()(), i1.ɵted(-1, null, [". "]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.completedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("complete-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.completedValue < 2) ? "day" : "days"); _ck(_v, 14, 0, currVal_11); }); }
40
- function View_FrequencyDueDateComponent_3(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 20, "div", [["class", "frequency-bottom-item vx-mt-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["EXTENSION:"])), (_l()(), i1.ɵeld(3, 0, null, null, 17, "div", [["class", "frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, [" The responsibility can be completed "])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["class", "countNum"], ["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
39
+ } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " before the due date."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.completedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("complete-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.completedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
40
+ function View_FrequencyDueDateComponent_3(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility will be marked as "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["not completed"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
41
41
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
42
42
  ad = (pd_0 && ad);
43
43
  } if (("blur" === en)) {
@@ -61,25 +61,24 @@ function View_FrequencyDueDateComponent_3(_l) { return i1.ɵvid(0, [(_l()(), i1.
61
61
  } if (("change" === en)) {
62
62
  var pd_7 = (_co.onValueChange($event, "not completed") !== false);
63
63
  ad = (pd_7 && ad);
64
- } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵted(14, null, [" ", " "])), (_l()(), i1.ɵeld(15, 0, null, null, 1, "span", [["class", "vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["after"])), (_l()(), i1.ɵted(-1, null, [" the due date. Where this occurs, this will show as the responsibility being "])), (_l()(), i1.ɵeld(18, 0, null, null, 1, "span", [["class", "delay-text vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["completed with delay"])), (_l()(), i1.ɵted(-1, null, [". "]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.notCompletedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("not-completed-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 14, 0, currVal_11); }); }
65
- function View_FrequencyDueDateComponent_4(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 13, "div", [["class", "frequency-bottom-item vx-mt-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["COMPLETION WINDOW CLOSES:"])), (_l()(), i1.ɵeld(3, 0, null, null, 10, "div", [["class", "frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, [" The responsibility cannot be completed "])), (_l()(), i1.ɵeld(5, 0, null, null, 1, "span", [["class", "vx-fw-500 vx-label-txt"]], null, null, null, null, null)), (_l()(), i1.ɵted(6, null, ["", ""])), (_l()(), i1.ɵted(7, null, [" ", " "])), (_l()(), i1.ɵeld(8, 0, null, null, 1, "span", [["class", "vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["after"])), (_l()(), i1.ɵted(-1, null, [" the due date. Where this occurs, this will show as the responsibility being "])), (_l()(), i1.ɵeld(11, 0, null, null, 1, "span", [["class", "notcompleted-text vx-fw-500"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["not completed"])), (_l()(), i1.ɵted(-1, null, [". "]))], null, function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.notCompletedValue; _ck(_v, 6, 0, currVal_0); var currVal_1 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 7, 0, currVal_1); }); }
66
- function View_FrequencyDueDateComponent_5(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 14, "div", [["class", "frequency-bottom-item vx-mt-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["AUTOMATIC DEACTIVATE:"])), (_l()(), i1.ɵeld(3, 0, null, null, 11, "div", [["class", "frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, [" This responsibility will be automatically deactivated, if it is not completed for "])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["class", "countNum"], ["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
67
- var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
64
+ } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " after the due date if it is not done."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.notCompletedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("not-completed-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
65
+ function View_FrequencyDueDateComponent_4(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 19, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 7, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility will be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "strong", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["deactivated"])), (_l()(), i1.ɵted(-1, null, [" if it has "])), (_l()(), i1.ɵeld(6, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["not been completed"])), (_l()(), i1.ɵted(-1, null, [" for"])), (_l()(), i1.ɵeld(9, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
66
+ var pd_0 = (i1.ɵnov(_v, 10)._handleInput($event.target.value) !== false);
68
67
  ad = (pd_0 && ad);
69
68
  } if (("blur" === en)) {
70
- var pd_1 = (i1.ɵnov(_v, 6).onTouched() !== false);
69
+ var pd_1 = (i1.ɵnov(_v, 10).onTouched() !== false);
71
70
  ad = (pd_1 && ad);
72
71
  } if (("compositionstart" === en)) {
73
- var pd_2 = (i1.ɵnov(_v, 6)._compositionStart() !== false);
72
+ var pd_2 = (i1.ɵnov(_v, 10)._compositionStart() !== false);
74
73
  ad = (pd_2 && ad);
75
74
  } if (("compositionend" === en)) {
76
- var pd_3 = (i1.ɵnov(_v, 6)._compositionEnd($event.target.value) !== false);
75
+ var pd_3 = (i1.ɵnov(_v, 10)._compositionEnd($event.target.value) !== false);
77
76
  ad = (pd_3 && ad);
78
77
  } if (("input" === en)) {
79
- var pd_4 = (i1.ɵnov(_v, 7).onChange($event.target.value) !== false);
78
+ var pd_4 = (i1.ɵnov(_v, 11).onChange($event.target.value) !== false);
80
79
  ad = (pd_4 && ad);
81
80
  } if (("blur" === en)) {
82
- var pd_5 = (i1.ɵnov(_v, 7).onTouched() !== false);
81
+ var pd_5 = (i1.ɵnov(_v, 11).onTouched() !== false);
83
82
  ad = (pd_5 && ad);
84
83
  } if (("ngModelChange" === en)) {
85
84
  var pd_6 = ((_co.deactivateValue = $event) !== false);
@@ -87,9 +86,9 @@ function View_FrequencyDueDateComponent_5(_l) { return i1.ɵvid(0, [(_l()(), i1.
87
86
  } if (("change" === en)) {
88
87
  var pd_7 = (_co.onValueChange($event, "deactivated") !== false);
89
88
  ad = (pd_7 && ad);
90
- } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵted(-1, null, [" consecutive due dates. "]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.deactivateValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("deactivate" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); }); }
91
- function View_FrequencyDueDateComponent_1(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 8, "div", [["class", "frequency-bottom"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_2)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_3)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_4)), i1.ɵdid(6, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_5)), i1.ɵdid(8, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); var currVal_2 = _co.notCompletedRequired; _ck(_v, 6, 0, currVal_2); var currVal_3 = _co.isDeactivated; _ck(_v, 8, 0, currVal_3); }, null); }
92
- function View_FrequencyDueDateComponent_7(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy can be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["attested"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
89
+ } return ad; }, null, null)), i1.ɵdid(10, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(11, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(12, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(15, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(17, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(18, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["consecutive due dates."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 12, 0, currVal_9); var currVal_10 = _co.deactivateValue; _ck(_v, 15, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("deactivate" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 12).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 17).is("untouched"); var currVal_3 = i1.ɵnov(_v, 17).is("touched"); var currVal_4 = i1.ɵnov(_v, 17).is("pristine"); var currVal_5 = i1.ɵnov(_v, 17).is("dirty"); var currVal_6 = i1.ɵnov(_v, 17).is("valid"); var currVal_7 = i1.ɵnov(_v, 17).is("invalid"); var currVal_8 = i1.ɵnov(_v, 17).is("pending"); _ck(_v, 9, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); }); }
90
+ function View_FrequencyDueDateComponent_1(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 6, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_2)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_3)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_4)), i1.ɵdid(6, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); var currVal_2 = _co.isDeactivated; _ck(_v, 6, 0, currVal_2); }, null); }
91
+ function View_FrequencyDueDateComponent_6(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy can be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["attested"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
93
92
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
94
93
  ad = (pd_0 && ad);
95
94
  } if (("blur" === en)) {
@@ -114,7 +113,7 @@ function View_FrequencyDueDateComponent_7(_l) { return i1.ɵvid(0, [(_l()(), i1.
114
113
  var pd_7 = (_co.onValueChange($event, "completed") !== false);
115
114
  ad = (pd_7 && ad);
116
115
  } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " before the due date."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.completedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("complete-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.completedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
117
- function View_FrequencyDueDateComponent_8(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy attestation will "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["fail"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
116
+ function View_FrequencyDueDateComponent_7(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy attestation will "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["fail"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
118
117
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
119
118
  ad = (pd_0 && ad);
120
119
  } if (("blur" === en)) {
@@ -139,8 +138,8 @@ function View_FrequencyDueDateComponent_8(_l) { return i1.ɵvid(0, [(_l()(), i1.
139
138
  var pd_7 = (_co.onValueChange($event, "not completed") !== false);
140
139
  ad = (pd_7 && ad);
141
140
  } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " after the due date if it is not completed."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.notCompletedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("not-completed-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
142
- function View_FrequencyDueDateComponent_6(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 4, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_7)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_8)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); }, null); }
143
- function View_FrequencyDueDateComponent_10(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy can be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["reviewed"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
141
+ function View_FrequencyDueDateComponent_5(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 4, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_6)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_7)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); }, null); }
142
+ function View_FrequencyDueDateComponent_9(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy can be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["reviewed"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
144
143
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
145
144
  ad = (pd_0 && ad);
146
145
  } if (("blur" === en)) {
@@ -165,7 +164,7 @@ function View_FrequencyDueDateComponent_10(_l) { return i1.ɵvid(0, [(_l()(), i1
165
164
  var pd_7 = (_co.onValueChange($event, "completed") !== false);
166
165
  ad = (pd_7 && ad);
167
166
  } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " before the review date."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.completedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("complete-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.completedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
168
- function View_FrequencyDueDateComponent_11(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy review will "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["fail"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
167
+ function View_FrequencyDueDateComponent_10(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The policy review will "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["fail"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
169
168
  var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
170
169
  ad = (pd_0 && ad);
171
170
  } if (("blur" === en)) {
@@ -190,86 +189,9 @@ function View_FrequencyDueDateComponent_11(_l) { return i1.ɵvid(0, [(_l()(), i1
190
189
  var pd_7 = (_co.onValueChange($event, "not completed") !== false);
191
190
  ad = (pd_7 && ad);
192
191
  } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " after the review date if it is not completed."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.notCompletedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("not-completed-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
193
- function View_FrequencyDueDateComponent_9(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 4, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_10)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_11)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); }, null); }
194
- function View_FrequencyDueDateComponent_14(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility can be marked as "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [["class", "completed"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["complete"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
195
- var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
196
- ad = (pd_0 && ad);
197
- } if (("blur" === en)) {
198
- var pd_1 = (i1.ɵnov(_v, 6).onTouched() !== false);
199
- ad = (pd_1 && ad);
200
- } if (("compositionstart" === en)) {
201
- var pd_2 = (i1.ɵnov(_v, 6)._compositionStart() !== false);
202
- ad = (pd_2 && ad);
203
- } if (("compositionend" === en)) {
204
- var pd_3 = (i1.ɵnov(_v, 6)._compositionEnd($event.target.value) !== false);
205
- ad = (pd_3 && ad);
206
- } if (("input" === en)) {
207
- var pd_4 = (i1.ɵnov(_v, 7).onChange($event.target.value) !== false);
208
- ad = (pd_4 && ad);
209
- } if (("blur" === en)) {
210
- var pd_5 = (i1.ɵnov(_v, 7).onTouched() !== false);
211
- ad = (pd_5 && ad);
212
- } if (("ngModelChange" === en)) {
213
- var pd_6 = ((_co.completedValue = $event) !== false);
214
- ad = (pd_6 && ad);
215
- } if (("change" === en)) {
216
- var pd_7 = (_co.onValueChange($event, "completed") !== false);
217
- ad = (pd_7 && ad);
218
- } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " before the due date."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.completedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("complete-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.completedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
219
- function View_FrequencyDueDateComponent_15(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 15, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 3, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility will be marked as "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["not completed"])), (_l()(), i1.ɵeld(5, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
220
- var pd_0 = (i1.ɵnov(_v, 6)._handleInput($event.target.value) !== false);
221
- ad = (pd_0 && ad);
222
- } if (("blur" === en)) {
223
- var pd_1 = (i1.ɵnov(_v, 6).onTouched() !== false);
224
- ad = (pd_1 && ad);
225
- } if (("compositionstart" === en)) {
226
- var pd_2 = (i1.ɵnov(_v, 6)._compositionStart() !== false);
227
- ad = (pd_2 && ad);
228
- } if (("compositionend" === en)) {
229
- var pd_3 = (i1.ɵnov(_v, 6)._compositionEnd($event.target.value) !== false);
230
- ad = (pd_3 && ad);
231
- } if (("input" === en)) {
232
- var pd_4 = (i1.ɵnov(_v, 7).onChange($event.target.value) !== false);
233
- ad = (pd_4 && ad);
234
- } if (("blur" === en)) {
235
- var pd_5 = (i1.ɵnov(_v, 7).onTouched() !== false);
236
- ad = (pd_5 && ad);
237
- } if (("ngModelChange" === en)) {
238
- var pd_6 = ((_co.notCompletedValue = $event) !== false);
239
- ad = (pd_6 && ad);
240
- } if (("change" === en)) {
241
- var pd_7 = (_co.onValueChange($event, "not completed") !== false);
242
- ad = (pd_7 && ad);
243
- } return ad; }, null, null)), i1.ɵdid(6, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(7, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(8, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(11, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(13, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(14, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(15, null, ["", " after the due date if it is not done."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 8, 0, currVal_9); var currVal_10 = _co.notCompletedValue; _ck(_v, 11, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("not-completed-" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 8).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 13).is("untouched"); var currVal_3 = i1.ɵnov(_v, 13).is("touched"); var currVal_4 = i1.ɵnov(_v, 13).is("pristine"); var currVal_5 = i1.ɵnov(_v, 13).is("dirty"); var currVal_6 = i1.ɵnov(_v, 13).is("valid"); var currVal_7 = i1.ɵnov(_v, 13).is("invalid"); var currVal_8 = i1.ɵnov(_v, 13).is("pending"); _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = ((_co.notCompletedValue < 2) ? "day" : "days"); _ck(_v, 15, 0, currVal_11); }); }
244
- function View_FrequencyDueDateComponent_16(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 19, "div", [["class", "frequency-due-date-row"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 7, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["The responsibility will be "])), (_l()(), i1.ɵeld(3, 0, null, null, 1, "strong", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["deactivated"])), (_l()(), i1.ɵted(-1, null, [" if it has "])), (_l()(), i1.ɵeld(6, 0, null, null, 1, "i", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["not been completed"])), (_l()(), i1.ɵted(-1, null, [" for"])), (_l()(), i1.ɵeld(9, 0, null, null, 8, "input", [["min", "0"], ["oninput", "this.value = Math.abs(this.value)"], ["onkeydown", "return event.keyCode !== 190"], ["type", "number"]], [[8, "id", 0], [1, "min", 0], [2, "ng-untouched", null], [2, "ng-touched", null], [2, "ng-pristine", null], [2, "ng-dirty", null], [2, "ng-valid", null], [2, "ng-invalid", null], [2, "ng-pending", null]], [[null, "ngModelChange"], [null, "change"], [null, "input"], [null, "blur"], [null, "compositionstart"], [null, "compositionend"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("input" === en)) {
245
- var pd_0 = (i1.ɵnov(_v, 10)._handleInput($event.target.value) !== false);
246
- ad = (pd_0 && ad);
247
- } if (("blur" === en)) {
248
- var pd_1 = (i1.ɵnov(_v, 10).onTouched() !== false);
249
- ad = (pd_1 && ad);
250
- } if (("compositionstart" === en)) {
251
- var pd_2 = (i1.ɵnov(_v, 10)._compositionStart() !== false);
252
- ad = (pd_2 && ad);
253
- } if (("compositionend" === en)) {
254
- var pd_3 = (i1.ɵnov(_v, 10)._compositionEnd($event.target.value) !== false);
255
- ad = (pd_3 && ad);
256
- } if (("input" === en)) {
257
- var pd_4 = (i1.ɵnov(_v, 11).onChange($event.target.value) !== false);
258
- ad = (pd_4 && ad);
259
- } if (("blur" === en)) {
260
- var pd_5 = (i1.ɵnov(_v, 11).onTouched() !== false);
261
- ad = (pd_5 && ad);
262
- } if (("ngModelChange" === en)) {
263
- var pd_6 = ((_co.deactivateValue = $event) !== false);
264
- ad = (pd_6 && ad);
265
- } if (("change" === en)) {
266
- var pd_7 = (_co.onValueChange($event, "deactivated") !== false);
267
- ad = (pd_7 && ad);
268
- } return ad; }, null, null)), i1.ɵdid(10, 16384, null, 0, i2.DefaultValueAccessor, [i1.Renderer2, i1.ElementRef, [2, i2.COMPOSITION_BUFFER_MODE]], null, null), i1.ɵdid(11, 16384, null, 0, i2.NumberValueAccessor, [i1.Renderer2, i1.ElementRef], null, null), i1.ɵdid(12, 540672, null, 0, i2.MinValidator, [], { min: [0, "min"] }, null), i1.ɵprd(1024, null, i2.NG_VALIDATORS, function (p0_0) { return [p0_0]; }, [i2.MinValidator]), i1.ɵprd(1024, null, i2.NG_VALUE_ACCESSOR, function (p0_0, p1_0) { return [p0_0, p1_0]; }, [i2.DefaultValueAccessor, i2.NumberValueAccessor]), i1.ɵdid(15, 671744, null, 0, i2.NgModel, [[8, null], [6, i2.NG_VALIDATORS], [8, null], [6, i2.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i1.ɵprd(2048, null, i2.NgControl, null, [i2.NgModel]), i1.ɵdid(17, 16384, null, 0, i2.NgControlStatus, [[4, i2.NgControl]], null, null), (_l()(), i1.ɵeld(18, 0, null, null, 1, "p", [], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["consecutive due dates."]))], function (_ck, _v) { var _co = _v.component; var currVal_9 = "0"; _ck(_v, 12, 0, currVal_9); var currVal_10 = _co.deactivateValue; _ck(_v, 15, 0, currVal_10); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = ("deactivate" + _co.id); var tmp_1_0; var currVal_1 = ((((tmp_1_0 = i1.ɵnov(_v, 12).min) !== null) && (tmp_1_0 !== undefined)) ? tmp_1_0 : null); var currVal_2 = i1.ɵnov(_v, 17).is("untouched"); var currVal_3 = i1.ɵnov(_v, 17).is("touched"); var currVal_4 = i1.ɵnov(_v, 17).is("pristine"); var currVal_5 = i1.ɵnov(_v, 17).is("dirty"); var currVal_6 = i1.ɵnov(_v, 17).is("valid"); var currVal_7 = i1.ɵnov(_v, 17).is("invalid"); var currVal_8 = i1.ɵnov(_v, 17).is("pending"); _ck(_v, 9, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8); }); }
269
- function View_FrequencyDueDateComponent_13(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 6, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_14)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_15)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_16)), i1.ɵdid(6, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); var currVal_2 = _co.isDeactivated; _ck(_v, 6, 0, currVal_2); }, null); }
270
- function View_FrequencyDueDateComponent_12(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 2, null, null, null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_13)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(0, null, null, 0))], function (_ck, _v) { var _co = _v.component; var currVal_0 = (_co.mode == "responsibility"); _ck(_v, 2, 0, currVal_0); }, null); }
271
- export function View_FrequencyDueDateComponent_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_1)), i1.ɵdid(1, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_6)), i1.ɵdid(3, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_9)), i1.ɵdid(5, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_12)), i1.ɵdid(7, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = (_co.mode == "responsibility"); _ck(_v, 1, 0, currVal_0); var currVal_1 = (_co.mode == "policy"); _ck(_v, 3, 0, currVal_1); var currVal_2 = (_co.mode == "reviewerFrequency"); _ck(_v, 5, 0, currVal_2); var currVal_3 = false; _ck(_v, 7, 0, currVal_3); }, null); }
192
+ function View_FrequencyDueDateComponent_8(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 4, "div", [["class", "frequency-due-date"]], null, null, null, null, null)), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_9)), i1.ɵdid(2, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_10)), i1.ɵdid(4, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.completedRequired; _ck(_v, 2, 0, currVal_0); var currVal_1 = _co.notCompletedRequired; _ck(_v, 4, 0, currVal_1); }, null); }
193
+ export function View_FrequencyDueDateComponent_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_1)), i1.ɵdid(1, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_5)), i1.ɵdid(3, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i1.ɵand(16777216, null, null, 1, null, View_FrequencyDueDateComponent_8)), i1.ɵdid(5, 16384, null, 0, i3.NgIf, [i1.ViewContainerRef, i1.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_0 = (_co.mode == "responsibility"); _ck(_v, 1, 0, currVal_0); var currVal_1 = (_co.mode == "policy"); _ck(_v, 3, 0, currVal_1); var currVal_2 = (_co.mode == "reviewerFrequency"); _ck(_v, 5, 0, currVal_2); }, null); }
272
194
  export function View_FrequencyDueDateComponent_Host_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 1, "app-frequency-due-date", [], null, null, null, View_FrequencyDueDateComponent_0, RenderType_FrequencyDueDateComponent)), i1.ɵdid(1, 114688, null, 0, i4.FrequencyDueDateComponent, [], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }
273
195
  var FrequencyDueDateComponentNgFactory = i1.ɵccf("app-frequency-due-date", i4.FrequencyDueDateComponent, View_FrequencyDueDateComponent_Host_0, { mode: "mode", completedRequired: "completedRequired", notCompletedRequired: "notCompletedRequired", completedValue: "completedValue", notCompletedValue: "notCompletedValue", deactivateValue: "deactivateValue", isDeactivated: "isDeactivated", id: "id", pageName: "pageName" }, { valueChange: "valueChange" }, []);
274
196
  export { FrequencyDueDateComponentNgFactory as FrequencyDueDateComponentNgFactory };
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktZHVlLWRhdGUvZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktZHVlLWRhdGUvZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O29FQ0NJLHVIQU9NLEtBTkosZ0pBQW1HLEtBQTlCLHFEQUF3QixNQUM3RiwrS0FJTSxLQUo2RixzRkFFakcsTUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7d0JBQXVPO01BQXpLOzt3QkFBNEI7TUFBQzs7d0JBQTZDO01BQXhJLHEyQkFBdU8sSUFBQSxtQ0FDN0wsTUFBQSxvR0FBcUMsS0FBYixtQ0FBTSxNQUFPLDBHQUE2RSxNQUFBLG1IQUErRCxLQUF4Qiw4Q0FBaUIsTUFBTywrQkFDN04sbURBRm9MLG1CQUFPLEVBQXpMLFlBQXVPLEVBQXJELFNBQU8sR0FBM0gsb0JBQTRCLGlCQUExRixhQUF1TyxFQUF6SyxVQUE0QixtREFBbEUsa0NBQXVCLE1BQS9DLDRjQUF1TyxFQUEvTSxTQUF1QixFQUEvQyxzRkFBdU8sR0FBQSx1RkFDN0w7b0VBSTlDLHVIQU9NLEtBTkosZ0pBQXFGLEtBQWhCLHVDQUFVLE1BQy9FLCtLQUlNLEtBSjZGLGtFQUVqRyxNQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozt3QkFBbVA7TUFBaEw7O3dCQUErQjtNQUFDOzt3QkFBaUQ7TUFBcEoscTJCQUFtUCxJ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aW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIiwiPGRpdiAqbmdJZj1cIm1vZGU9PSdyZXNwb25zaWJpbGl0eSdcIiBjbGFzcz1cImZyZXF1ZW5jeS1ib3R0b21cIj5cclxuICAgIDxkaXYgKm5nSWY9XCJjb21wbGV0ZWRSZXF1aXJlZFwiIGNsYXNzPVwiZnJlcXVlbmN5LWJvdHRvbS1pdGVtIHZ4LW10LTVcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtdHQtdXBwZXJjYXNlIHZ4LW1iLTFcIj5DT01QTEVUSU9OIFdJTkRPVyBPUEVOUzo8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1ib3R0b20taXRlbS1ib3ggdngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dCB2eC1wLTMgdngtcHQtNCB2eC1wYi00IHZ4LWQtYmxvY2tcIj5cclxuICAgICAgICBUaGUgcmVzcG9uc2liaWxpdHkgY2FuIGJlIGNvbXBsZXRlZCBvbiB0aGUgZHVlIGRhdGUgYW5kXHJcbiAgICAgICAgPGlucHV0IGNsYXNzPVwiY291bnROdW1cIiBbaWRdPVwiJ2NvbXBsZXRlLScgKyBpZFwiIHR5cGU9XCJudW1iZXJcIiBbKG5nTW9kZWwpXT1cImNvbXBsZXRlZFZhbHVlXCIgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudCwgJ2NvbXBsZXRlZCcpXCIgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCIgPlxyXG4gICAgICAgIHt7IGNvbXBsZXRlZFZhbHVlIDwgMiA/ICdkYXknIDogJ2RheXMnIH19IDxzcGFuIGNsYXNzPVwidngtZnctNTAwXCI+YmVmb3JlPC9zcGFuPiB0aGUgZHVlIGRhdGUuIFdoZXJlIHRoaXMgb2NjdXJzLCB0aGlzIHdpbGwgc2hvdyBhcyB0aGUgcmVzcG9uc2liaWxpdHkgYmVpbmcgPHNwYW4gY2xhc3M9XCJjb21wbGV0ZWQtdGV4dCB2eC1mdy01MDBcIj5jb21wbGV0ZWQgb24gdGltZTwvc3Bhbj4uXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgXHJcbiAgICA8ZGl2ICpuZ0lmPVwibm90Q29tcGxldGVkUmVxdWlyZWRcIiBjbGFzcz1cImZyZXF1ZW5jeS1ib3R0b20taXRlbSB2eC1tdC01XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+RVhURU5TSU9OOjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWJvdHRvbS1pdGVtLWJveCB2eC1mcy0xMyB2eC1wYXJhZ3JhcGgtdHh0IHZ4LXAtMyB2eC1wdC00IHZ4LXBiLTQgdngtZC1ibG9ja1wiPlxyXG4gICAgICAgIFRoZSByZXNwb25zaWJpbGl0eSBjYW4gYmUgY29tcGxldGVkXHJcbiAgICAgICAgPGlucHV0IGNsYXNzPVwiY291bnROdW1cIiB0eXBlPVwibnVtYmVyXCIgW2lkXT1cIidub3QtY29tcGxldGVkLScgKyBpZFwiIFsobmdNb2RlbCldPVwibm90Q29tcGxldGVkVmFsdWVcIiAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnbm90IGNvbXBsZXRlZCcpXCIgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCIgPlxyXG4gICAgICAgIHt7IG5vdENvbXBsZXRlZFZhbHVlIDwgMiA/ICdkYXknIDogJ2RheXMnIH19IDxzcGFuIGNsYXNzPVwidngtZnctNTAwXCI+YWZ0ZXI8L3NwYW4+IHRoZSBkdWUgZGF0ZS4gV2hlcmUgdGhpcyBvY2N1cnMsIHRoaXMgd2lsbCBzaG93IGFzIHRoZSByZXNwb25zaWJpbGl0eSBiZWluZyA8c3BhbiBjbGFzcz1cImRlbGF5LXRleHQgdngtZnctNTAwXCI+Y29tcGxldGVkIHdpdGggZGVsYXk8L3NwYW4+LlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgPGRpdiAqbmdJZj1cIm5vdENvbXBsZXRlZFJlcXVpcmVkXCIgY2xhc3M9XCJmcmVxdWVuY3ktYm90dG9tLWl0ZW0gdngtbXQtNVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbWItMVwiPkNPTVBMRVRJT04gV0lORE9XIENMT1NFUzo8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1ib3R0b20taXRlbS1ib3ggdngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dCB2eC1wLTMgdngtcHQtNCB2eC1wYi00IHZ4LWQtYmxvY2tcIj5cclxuICAgICAgICBUaGUgcmVzcG9uc2liaWxpdHkgY2Fubm90IGJlIGNvbXBsZXRlZCA8c3BhbiBjbGFzcz1cInZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj57e25vdENvbXBsZXRlZFZhbHVlfX08L3NwYW4+IHt7IG5vdENvbXBsZXRlZFZhbHVlIDwgMiA/ICdkYXknIDogJ2RheXMnIH19IDxzcGFuIGNsYXNzPVwidngtZnctNTAwXCI+YWZ0ZXI8L3NwYW4+IHRoZSBkdWUgZGF0ZS4gV2hlcmUgdGhpcyBvY2N1cnMsIHRoaXMgd2lsbCBzaG93IGFzIHRoZSByZXNwb25zaWJpbGl0eSBiZWluZyA8c3BhbiBjbGFzcz1cIm5vdGNvbXBsZXRlZC10ZXh0IHZ4LWZ3LTUwMFwiPm5vdCBjb21wbGV0ZWQ8L3NwYW4+LlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgPGRpdiAqbmdJZj1cImlzRGVhY3RpdmF0ZWRcIiBjbGFzcz1cImZyZXF1ZW5jeS1ib3R0b20taXRlbSB2eC1tdC01XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+QVVUT01BVElDIERFQUNUSVZBVEU6PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktYm90dG9tLWl0ZW0tYm94IHZ4LWZzLTEzIHZ4LXBhcmFncmFwaC10eHQgdngtcC0zIHZ4LXB0LTQgdngtcGItNCB2eC1kLWJsb2NrXCI+XHJcbiAgICAgICAgVGhpcyByZXNwb25zaWJpbGl0eSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgZGVhY3RpdmF0ZWQsIGlmIGl0IGlzIG5vdCBjb21wbGV0ZWQgZm9yXHJcbiAgICAgICAgPGlucHV0IGNsYXNzPVwiY291bnROdW1cIiB0eXBlPVwibnVtYmVyXCIgW2lkXT1cIidkZWFjdGl2YXRlJyArIGlkXCIgWyhuZ01vZGVsKV09XCJkZWFjdGl2YXRlVmFsdWVcIiAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnZGVhY3RpdmF0ZWQnKVwiIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSAxOTBcIiBtaW49XCIwXCIgb25pbnB1dD1cInRoaXMudmFsdWUgPSBNYXRoLmFicyh0aGlzLnZhbHVlKVwiID5cclxuICAgICAgICBjb25zZWN1dGl2ZSBkdWUgZGF0ZXMuXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuXHJcblxyXG48IS0tIEZvciBQb2xpY3kgLS0+XHJcbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGVcIiAqbmdJZj1cIm1vZGU9PSdwb2xpY3knXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiY29tcGxldGVkUmVxdWlyZWQgXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHBvbGljeSBjYW4gYmUgPGkgY2xhc3M9XCJjb21wbGV0ZWRcIj5hdHRlc3RlZDwvaT48L3A+XHJcbiAgICAgICAgPGlucHV0IFxyXG4gICAgICAgICAgICBbaWRdPVwiJ2NvbXBsZXRlLScgKyBpZFwiIFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgXHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29tcGxldGVkVmFsdWVcIiBcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudCwgJ2NvbXBsZXRlZCcpXCJcclxuICAgICAgICAgICAgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPHA+e3sgY29tcGxldGVkVmFsdWUgPCAyID8gJ2RheScgOiAnZGF5cycgfX0gYmVmb3JlIHRoZSBkdWUgZGF0ZS48L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJub3RDb21wbGV0ZWRSZXF1aXJlZFwiIGNsYXNzPVwiZnJlcXVlbmN5LWR1ZS1kYXRlLXJvd1wiPlxyXG4gICAgICAgIDxwPlRoZSBwb2xpY3kgYXR0ZXN0YXRpb24gd2lsbCA8aT5mYWlsPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgW2lkXT1cIidub3QtY29tcGxldGVkLScgKyBpZFwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5vdENvbXBsZXRlZFZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdub3QgY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBub3RDb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBhZnRlciB0aGUgZHVlIGRhdGUgaWYgaXQgaXMgbm90IGNvbXBsZXRlZC48L3A+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGVcIiAqbmdJZj1cIm1vZGU9PSdyZXZpZXdlckZyZXF1ZW5jeSdcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJjb21wbGV0ZWRSZXF1aXJlZCBcIiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZS1yb3dcIj5cclxuICAgICAgICA8cD5UaGUgcG9saWN5IGNhbiBiZSA8aSBjbGFzcz1cImNvbXBsZXRlZFwiPnJldmlld2VkPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIFtpZF09XCInY29tcGxldGUtJyArIGlkXCIgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb21wbGV0ZWRWYWx1ZVwiIFxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBjb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBiZWZvcmUgdGhlIHJldmlldyBkYXRlLjwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm5vdENvbXBsZXRlZFJlcXVpcmVkXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHBvbGljeSByZXZpZXcgd2lsbCA8aT5mYWlsPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgW2lkXT1cIidub3QtY29tcGxldGVkLScgKyBpZFwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5vdENvbXBsZXRlZFZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdub3QgY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBub3RDb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBhZnRlciB0aGUgcmV2aWV3IGRhdGUgaWYgaXQgaXMgbm90IGNvbXBsZXRlZC48L3A+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiZmFsc2VcIj5cclxuPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZVwiICAqbmdJZj1cIm1vZGU9PSdyZXNwb25zaWJpbGl0eSdcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJjb21wbGV0ZWRSZXF1aXJlZCBcIiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZS1yb3dcIj5cclxuICAgICAgICA8cD5UaGUgcmVzcG9uc2liaWxpdHkgY2FuIGJlIG1hcmtlZCBhcyA8aSBjbGFzcz1cImNvbXBsZXRlZFwiPmNvbXBsZXRlPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIFtpZF09XCInY29tcGxldGUtJyArIGlkXCIgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb21wbGV0ZWRWYWx1ZVwiIFxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBjb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBiZWZvcmUgdGhlIGR1ZSBkYXRlLjwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm5vdENvbXBsZXRlZFJlcXVpcmVkXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHJlc3BvbnNpYmlsaXR5IHdpbGwgYmUgbWFya2VkIGFzIDxpPm5vdCBjb21wbGV0ZWQ8L2k+PC9wPlxyXG4gICAgICAgIDxpbnB1dCBcclxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiIFxyXG4gICAgICAgICAgICBbaWRdPVwiJ25vdC1jb21wbGV0ZWQtJyArIGlkXCIgXHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwibm90Q29tcGxldGVkVmFsdWVcIiBcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudCwgJ25vdCBjb21wbGV0ZWQnKVwiXHJcbiAgICAgICAgICAgIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSAxOTBcIiBtaW49XCIwXCIgb25pbnB1dD1cInRoaXMudmFsdWUgPSBNYXRoLmFicyh0aGlzLnZhbHVlKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDxwPnt7IG5vdENvbXBsZXRlZFZhbHVlIDwgMiA/ICdkYXknIDogJ2RheXMnIH19IGFmdGVyIHRoZSBkdWUgZGF0ZSBpZiBpdCBpcyBub3QgZG9uZS48L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJpc0RlYWN0aXZhdGVkXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHJlc3BvbnNpYmlsaXR5IHdpbGwgYmUgPHN0cm9uZz5kZWFjdGl2YXRlZDwvc3Ryb25nPlxyXG4gICAgICAgICAgICBpZiBpdCBoYXMgPGk+bm90IGJlZW4gY29tcGxldGVkPC9pPiBmb3I8L3A+XHJcbiAgICAgICAgPGlucHV0IFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgXHJcbiAgICAgICAgICAgIFtpZF09XCInZGVhY3RpdmF0ZScgKyBpZFwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImRlYWN0aXZhdGVWYWx1ZVwiIFxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnZGVhY3RpdmF0ZWQnKVwiIFxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD5jb25zZWN1dGl2ZSBkdWUgZGF0ZXMuPC9wPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj4iXX0=
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktZHVlLWRhdGUvZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktZHVlLWRhdGUvZnJlcXVlbmN5LWR1ZS1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O29FQ0VJLGdIQVVNLEtBVEYsMEVBQTRFLEtBQXpFLGlFQUFvQyxNQUFBLGdHQUFpQyxLQUFaLHFDQUFRLE1BQ3BFOzs7Ozs7Ozs7Ozs7Ozs7Ozt3QkFNQztNQUhHOzt3QkFBNEI7TUFDNUI7O3dCQUE2QztNQUpqRCxxMkJBTUMsSUFDRCwyRUFBcUUsS0FBbEUsc0RBQThELG1EQUZwQixtQkFBTyxFQUxwRCxZQU1DLEVBRDRDLFNBQU8sR0FGaEQsb0JBQTRCLGlCQUhoQyxhQU1DLEVBSEcsVUFBNEIsbURBRjVCLGtDQUF1QixNQUQzQiw0Y0FNQyxFQUxHLFNBQXVCLEVBRDNCLHNGQU1DLEdBQ0UsdUZBQThEO29FQUVyRSxnSEFVTSxLQVRGLDBFQUFnRSxLQUE3RCxrRUFBcUMsTUFBQSwwRUFBb0IsS0FBakIsMENBQWEsTUFDeEQ7Ozs7Ozs7Ozs7Ozs7Ozs7O3dCQU1DO01BSEc7O3dCQUErQjtNQUMvQjs7d0JBQWlEO01BSnJELHEyQkFNQyxJQUNELDJFQUF5RixLQUF0Rix1RUFBa0YsbURBRnhDLG1CQUFPLEVBTHBELFlBTUMsRUFENEMsU0FBTyxHQUZoRCxvQkFB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QyxzRkFNQyxHQUNFLDBGQUEwRjtvRUFyQnJHLDJHQXdCTSxLQXZCRix5TEFVTSxJQUNOLDBMQVVNLGlEQXJCRCxtQkFBMEIsb0JBQS9CLFlBVU0sRUFWRCxTQUEwQixHQVcxQixtQkFBNEIsdUJBQWpDLFlBVU0sRUFWRCxTQUE0QjsyRUF6RXJDLHlMQW1DTSxJQUNOLHlMQXdCTSxJQUNOLHlMQXdCTSxpREFyRjJCLDZDQUE4QixHQUEvRCxZQW1DTSxFQW5DMkIsU0FBOEIsR0FvQy9CLHFDQUFzQixHQUF0RCxZQXdCTSxFQXhCMEIsU0FBc0IsR0F5QnRCLGdEQUFpQyxHQUFqRSxZQXdCTSxFQXhCMEIsU0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iLCI8IS0tIDxwPmZyZXF1ZW5jeS1kdWUtZGF0ZSB3b3JrcyE8L3A+IC0tPlxyXG48ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWR1ZS1kYXRlXCIgICpuZ0lmPVwibW9kZT09J3Jlc3BvbnNpYmlsaXR5J1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cImNvbXBsZXRlZFJlcXVpcmVkIFwiIGNsYXNzPVwiZnJlcXVlbmN5LWR1ZS1kYXRlLXJvd1wiPlxyXG4gICAgICAgIDxwPlRoZSByZXNwb25zaWJpbGl0eSBjYW4gYmUgbWFya2VkIGFzIDxpIGNsYXNzPVwiY29tcGxldGVkXCI+Y29tcGxldGU8L2k+PC9wPlxyXG4gICAgICAgIDxpbnB1dCBcclxuICAgICAgICAgICAgW2lkXT1cIidjb21wbGV0ZS0nICsgaWRcIiBcclxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbXBsZXRlZFZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdjb21wbGV0ZWQnKVwiXHJcbiAgICAgICAgICAgIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSAxOTBcIiBtaW49XCIwXCIgb25pbnB1dD1cInRoaXMudmFsdWUgPSBNYXRoLmFicyh0aGlzLnZhbHVlKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDxwPnt7IGNvbXBsZXRlZFZhbHVlIDwgMiA/ICdkYXknIDogJ2RheXMnIH19IGJlZm9yZSB0aGUgZHVlIGRhdGUuPC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwibm90Q29tcGxldGVkUmVxdWlyZWRcIiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZS1yb3dcIj5cclxuICAgICAgICA8cD5UaGUgcmVzcG9uc2liaWxpdHkgd2lsbCBiZSBtYXJrZWQgYXMgPGk+bm90IGNvbXBsZXRlZDwvaT48L3A+XHJcbiAgICAgICAgPGlucHV0IFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgXHJcbiAgICAgICAgICAgIFtpZF09XCInbm90LWNvbXBsZXRlZC0nICsgaWRcIiBcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJub3RDb21wbGV0ZWRWYWx1ZVwiIFxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnbm90IGNvbXBsZXRlZCcpXCJcclxuICAgICAgICAgICAgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPHA+e3sgbm90Q29tcGxldGVkVmFsdWUgPCAyID8gJ2RheScgOiAnZGF5cycgfX0gYWZ0ZXIgdGhlIGR1ZSBkYXRlIGlmIGl0IGlzIG5vdCBkb25lLjwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cImlzRGVhY3RpdmF0ZWRcIiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZS1yb3dcIj5cclxuICAgICAgICA8cD5UaGUgcmVzcG9uc2liaWxpdHkgd2lsbCBiZSA8c3Ryb25nPmRlYWN0aXZhdGVkPC9zdHJvbmc+XHJcbiAgICAgICAgICAgIGlmIGl0IGhhcyA8aT5ub3QgYmVlbiBjb21wbGV0ZWQ8L2k+IGZvcjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgW2lkXT1cIidkZWFjdGl2YXRlJyArIGlkXCIgXHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZGVhY3RpdmF0ZVZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdkZWFjdGl2YXRlZCcpXCIgXHJcbiAgICAgICAgICAgIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSAxOTBcIiBtaW49XCIwXCIgb25pbnB1dD1cInRoaXMudmFsdWUgPSBNYXRoLmFicyh0aGlzLnZhbHVlKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDxwPmNvbnNlY3V0aXZlIGR1ZSBkYXRlcy48L3A+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGVcIiAqbmdJZj1cIm1vZGU9PSdwb2xpY3knXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiY29tcGxldGVkUmVxdWlyZWQgXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHBvbGljeSBjYW4gYmUgPGkgY2xhc3M9XCJjb21wbGV0ZWRcIj5hdHRlc3RlZDwvaT48L3A+XHJcbiAgICAgICAgPGlucHV0IFxyXG4gICAgICAgICAgICBbaWRdPVwiJ2NvbXBsZXRlLScgKyBpZFwiIFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgXHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29tcGxldGVkVmFsdWVcIiBcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudCwgJ2NvbXBsZXRlZCcpXCJcclxuICAgICAgICAgICAgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPHA+e3sgY29tcGxldGVkVmFsdWUgPCAyID8gJ2RheScgOiAnZGF5cycgfX0gYmVmb3JlIHRoZSBkdWUgZGF0ZS48L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJub3RDb21wbGV0ZWRSZXF1aXJlZFwiIGNsYXNzPVwiZnJlcXVlbmN5LWR1ZS1kYXRlLXJvd1wiPlxyXG4gICAgICAgIDxwPlRoZSBwb2xpY3kgYXR0ZXN0YXRpb24gd2lsbCA8aT5mYWlsPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgW2lkXT1cIidub3QtY29tcGxldGVkLScgKyBpZFwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5vdENvbXBsZXRlZFZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdub3QgY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBub3RDb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBhZnRlciB0aGUgZHVlIGRhdGUgaWYgaXQgaXMgbm90IGNvbXBsZXRlZC48L3A+XHJcbiAgICA8L2Rpdj5cclxuICBcclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGVcIiAqbmdJZj1cIm1vZGU9PSdyZXZpZXdlckZyZXF1ZW5jeSdcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJjb21wbGV0ZWRSZXF1aXJlZCBcIiBjbGFzcz1cImZyZXF1ZW5jeS1kdWUtZGF0ZS1yb3dcIj5cclxuICAgICAgICA8cD5UaGUgcG9saWN5IGNhbiBiZSA8aSBjbGFzcz1cImNvbXBsZXRlZFwiPnJldmlld2VkPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIFtpZF09XCInY29tcGxldGUtJyArIGlkXCIgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb21wbGV0ZWRWYWx1ZVwiIFxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCAnY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBjb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBiZWZvcmUgdGhlIHJldmlldyBkYXRlLjwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm5vdENvbXBsZXRlZFJlcXVpcmVkXCIgY2xhc3M9XCJmcmVxdWVuY3ktZHVlLWRhdGUtcm93XCI+XHJcbiAgICAgICAgPHA+VGhlIHBvbGljeSByZXZpZXcgd2lsbCA8aT5mYWlsPC9pPjwvcD5cclxuICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIiBcclxuICAgICAgICAgICAgW2lkXT1cIidub3QtY29tcGxldGVkLScgKyBpZFwiIFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5vdENvbXBsZXRlZFZhbHVlXCIgXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQsICdub3QgY29tcGxldGVkJylcIlxyXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8cD57eyBub3RDb21wbGV0ZWRWYWx1ZSA8IDIgPyAnZGF5JyA6ICdkYXlzJyB9fSBhZnRlciB0aGUgcmV2aWV3IGRhdGUgaWYgaXQgaXMgbm90IGNvbXBsZXRlZC48L3A+XHJcbiAgICA8L2Rpdj5cclxuICBcclxuPC9kaXY+Il19
@@ -146,8 +146,8 @@ export class FrequencyLifecycleComponent {
146
146
  FrequencyLifecycleComponent.decorators = [
147
147
  { type: Component, args: [{
148
148
  selector: 'app-frequency-lifecycle',
149
- template: "<div class=\"frequency-lifecycle-responsibility vx-mt-5\" *ngIf=\"mode !== 'policy'\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">SET A LIFECYCLE FOR THIS RESPONSIBILITY:</div>\r\n <div class=\"frequency-lifecycle-responsibility-inner vx-p-3 vx-pt-2 vx-d-flex vx-align-center vx-justify-between\">\r\n <div class=\"frequency-lifecycle-responsibility-item\">\r\n <div class=\"vx-d-block\">\r\n <div class=\"heading vx-fs-12 vx-label-txt vx-mb-1\">Starts From</div>\r\n <div class=\"lifecycle-box vx-d-flex vx-align-center vx-p-2\" (click)=\"openDatePicker(); datePickerOverlay = true\" [id]=\"'form-field' + id\">\r\n <i class=\"icons vx-fs-16 vx-paragraph-txt vx-mr-3\">&#xe996;</i>\r\n <input class=\"start-date-input\" type=\"text\" [value]=\"startDate | date: 'dd MMM yyyy'\" [placeholder]=\"startDate | date: 'dd MMM yyyy'\" readonly >\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"frequency-lifecycle-responsibility-item\">\r\n <div class=\"item-inner vx-d-block\">\r\n <div class=\"heading vx-fs-12 vx-label-txt vx-mb-1\">Ends By</div>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 0\" (checkedEvent)=\"typeSelected(0)\">\r\n <div class=\"date-field\" (click)=\"openDatePicker1(); datePickerOverlay = true\">\r\n <i class=\"icons calendar-icon vx-fs-16 vx-paragraph-txt\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"endDateObject | date: 'dd MMM yyyy'\" [placeholder]=\"endDateObject | date: 'dd MMM yyyy'\" readonly>\r\n </div>\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n <div class=\"frequency-lifecycle-responsibility-item\">\r\n <div class=\"item-inner vx-d-block\">\r\n <div class=\"heading vx-fs-12 vx-label-txt vx-mb-1\">Ends After</div>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 1\" (checkedEvent)=\"typeSelected(1)\">\r\n <input class=\"input-field\" type=\"number\" [(ngModel)]=\"occurrance\" (focusout)=\"endsAfter($event)\" onkeydown=\"return event.keyCode !== 190\" min=\"0\" oninput=\"this.value = Math.abs(this.value)\" >\r\n <span class=\"vx-fs-11 vx-paragraph-txt vx-ml-2\">Occurrences</span>\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n <div class=\"frequency-lifecycle-responsibility-item\">\r\n <div class=\"item-inner vx-d-block\">\r\n <div class=\"heading vx-fs-12 vx-label-txt vx-mb-1\">Ongoing</div>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 2\" (checkedEvent)=\"typeSelected(2)\">\r\n <span class=\"vx-fs-11 vx-paragraph-txt vx-ml-2\">The responsibility will perpetually exist.</span>\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<!-- For Policy -->\r\n<div *ngIf=\"mode === 'policy'\" class=\"frequency-lifecycle\">\r\n <div class=\"frequency-lifecycle-head\">\r\n <p class=\"frequency-lifecycle-title\">SET A LIFECYCLE FOR THIS RESPONSIBILITY:</p>\r\n </div>\r\n <div class=\"frequency-lifecycle-body\">\r\n <div class=\"column\">\r\n <label class=\"text\">Starts From</label>\r\n <div [id]=\"'form-field' + id\" class=\"block active\">\r\n <div class=\"date-picker\" (click)=\"openDatePicker(); datePickerOverlay = true\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"startDate | date: 'dd MMM yyyy'\" [placeholder]=\"startDate | date: 'dd MMM yyyy'\" readonly>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ends by</label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 0\" (checkedEvent)=\"typeSelected(0)\">\r\n <div class=\"date-picker\" (click)=\"openDatePicker1(); datePickerOverlay = true\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"endDateObject | date: 'dd MMM yyyy'\" [placeholder]=\"endDateObject | date: 'dd MMM yyyy'\" readonly>\r\n </div>\r\n </app-cs-radio>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ends after </label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 1\" (checkedEvent)=\"typeSelected(1)\">\r\n <input \r\n type=\"number\" \r\n [(ngModel)]=\"occurrance\" \r\n (focusout)=\"endsAfter($event)\" class=\"day\"\r\n onkeydown=\"return event.keyCode !== 190\" min=\"0\" oninput=\"this.value = Math.abs(this.value)\"\r\n >\r\n <span> Occurrences </span>\r\n </app-cs-radio>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ongoing</label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 2\" (checkedEvent)=\"typeSelected(2)\">\r\n The responsibility will perpetually exist.\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n \r\n</div>\r\n<!-- start date date picker -->\r\n<dp-date-picker\r\n #datePicker\r\n [id]=\"'start-date-' + id\"\r\n [placeholder]=\"startDate | date: 'dd MMM yyyy'\"\r\n [(ngModel)]=\"startDate\"\r\n [config]=\"startDateConfig\"\r\n (onSelect)=\"openDatePicker();startFromChange($event); showDateError = false; datePickerOverlay = false\"\r\n></dp-date-picker>\r\n<div class=\"vx-overlay\" (click)=\"closeDatepicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n\r\n<!-- end date date picker -->\r\n<dp-date-picker\r\n #datePicker1\r\n [(ngModel)]=\"endDate\"\r\n [placeholder]=\"endDateObject | date: 'dd MMM yyyy'\"\r\n [id]=\"'end-by-input-' + id\"\r\n [config]=\"endDateConfig\"\r\n [minDate]=\"endDateConfig['min']\"\r\n (onSelect)=\"endByChange($event); showDateError = false; datePickerOverlay = false\"\r\n></dp-date-picker> \r\n<div class=\"vx-overlay\" (click)=\"closeDatepicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n",
150
- styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/header/header.css\");@import url(\"https://cdn.v-comply.com/design-system/css/display/display.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\");@import url(\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\");@import url(\"https://cdn.v-comply.com/design-system/css/text/text.css\");@import url(\"https://cdn.v-comply.com/design-system/css/button/button.css\");@import url(\"https://cdn.v-comply.com/design-system/css/color/color.css\");@import url(\"https://cdn.v-comply.com/design-system/css/popover/popover.css\");@import url(\"https://cdn.v-comply.com/design-system/css/width/width.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\");@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::ng-deep .frequency-lifecycle-responsibility-inner{border-radius:.25rem;border:1px solid #f1f1f1}::ng-deep .frequency-lifecycle-responsibility-inner mat-radio-group{display:flex;justify-content:space-between}::ng-deep .frequency-lifecycle-responsibility-item{position:relative;height:3.375rem}::ng-deep .frequency-lifecycle-responsibility-item:first-of-type{width:8.5rem}::ng-deep .frequency-lifecycle-responsibility-item:first-of-type label:after,::ng-deep .frequency-lifecycle-responsibility-item:first-of-type label:before{display:none}::ng-deep .frequency-lifecycle-responsibility-item:first-of-type label .heading{padding-left:0}::ng-deep .frequency-lifecycle-responsibility-item:nth-child(2){width:8.5rem}::ng-deep .frequency-lifecycle-responsibility-item:nth-child(3){width:11.25rem}::ng-deep .frequency-lifecycle-responsibility-item:last-of-type{width:14.25rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner{position:relative}::ng-deep .frequency-lifecycle-responsibility-item .item-inner .heading{padding-left:1.75rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio{position:absolute;top:0;left:0;width:100%;height:3.375rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item{width:100%;position:relative}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .radio{position:absolute;top:-17px;left:0;width:1rem;height:1rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .radiomark{position:absolute;top:2px;left:0;width:1rem;height:1rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .value{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;width:calc(100% + 1rem);max-width:100%!important;height:2rem;cursor:pointer;text-transform:none;margin:22px 0 0 -1rem!important}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .value .date-field{display:flex;align-items:center;position:relative;width:100%;height:100%;pointer-events:none}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .value .date-field .calendar-icon{position:absolute;top:7px;left:.5rem}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item .value .date-field input{background:transparent;border-radius:0;border:none;color:#747576;font-size:11px;width:100%;height:1.875rem;padding:0 .5rem 0 2.25rem;position:absolute;top:0;left:0;cursor:pointer}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item input:checked~span.value{pointer-events:auto;margin:22px 0 0!important}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item input:checked~span.value .date-field,::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .radio-item input:checked~span.value .input-field{pointer-events:auto!important}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .input-field{-moz-appearance:textfield;border:none;border-bottom:1px solid #dbdbdb;color:#747576;display:inline-block;font-size:13px;text-align:center;width:2.75rem;height:1.25rem;padding:0 .125rem;margin:0 .5rem;outline:none;pointer-events:none}::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .input-field::-webkit-inner-spin-button,::ng-deep .frequency-lifecycle-responsibility-item .item-inner app-cs-radio .input-field::-webkit-outer-spin-button{-webkit-appearance:none}::ng-deep .frequency-lifecycle-responsibility-item .lifecycle-box{border-radius:.25rem;border:1px solid #dbdbdb;height:2rem;position:relative;cursor:pointer}::ng-deep .frequency-lifecycle-responsibility-item .lifecycle-box .start-date-input{background:transparent;border-radius:0;border:none;color:#747576;font-size:11px;width:100%;outline:none;cursor:pointer}::ng-deep .frequency-lifecycle{border-top:1px solid #f1f1f1}::ng-deep .frequency-lifecycle-head{background:#fbfbfb;padding:8px 20px}::ng-deep .frequency-lifecycle-title{margin:0;padding:0;font-size:12px;line-height:16px;color:#747576;text-transform:uppercase}::ng-deep .frequency-lifecycle-body{padding:10px 20px;display:flex}::ng-deep .frequency-lifecycle-body .column{width:25%;padding:0;position:relative}::ng-deep .frequency-lifecycle-body .column label.text{color:#747576;font-size:11px;text-transform:uppercase;margin:0 0 4px;font-weight:500;line-height:16px;display:block}::ng-deep .frequency-lifecycle-body .column+.column{padding-left:28px}::ng-deep .frequency-lifecycle-body .column:first-child{width:20%}::ng-deep .frequency-lifecycle-body .column:last-child{width:30%}::ng-deep .frequency-lifecycle-body .column .block,::ng-deep .frequency-lifecycle-body .column span.value{display:flex;font-size:13px;color:#747576;border:1px solid #f1f1f1;border-radius:2px;padding:0 4px 0 16px;box-sizing:border-box;min-height:48px;justify-content:center;align-items:center;background:#fff;cursor:pointer;text-transform:none;margin:0!important}::ng-deep .frequency-lifecycle-body .column .block .date-picker,::ng-deep .frequency-lifecycle-body .column span.value .date-picker{display:flex;align-items:center;position:relative}::ng-deep .frequency-lifecycle-body .column .block .date-picker i,::ng-deep .frequency-lifecycle-body .column span.value .date-picker i{font-size:16px;margin-right:8px}::ng-deep .frequency-lifecycle-body .column .block .date-picker input,::ng-deep .frequency-lifecycle-body .column span.value .date-picker input{border:none;outline:none;width:100%;background:transparent;font-size:12px;cursor:pointer;line-height:40px}::ng-deep .frequency-lifecycle-body .column .block.active,::ng-deep .frequency-lifecycle-body .column span.value.active{border:1px solid #97d2a0;background:#d6f2da}::ng-deep .frequency-lifecycle-body .column app-cs-radio{display:flex}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span.radio,::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item svg{position:absolute;top:14px;left:-10px;height:20px;width:20px}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span.value{max-width:100%;pointer-events:none;font-size:13px;color:#747576;width:100%}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input:checked~span.value{pointer-events:auto;border:1px solid #97d2a0;background:#d6f2da}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day{-moz-appearance:textfield;width:40px;padding:4px;text-align:center;border:none;border-bottom:2px solid #dcdcdc;line-height:26px;color:#161b2f;font-weight:400;outline:none;background:transparent;margin:0 4px 0 0;font-size:13px}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day::-webkit-inner-spin-button,::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span{font-size:13px;color:#747576}::ng-deep dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-26px;left:0}::ng-deep dp-date-picker input{width:100%;border:none;opacity:0!important;pointer-events:none}::ng-deep dp-date-picker input:focus{outline:none}::ng-deep dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}::ng-deep dp-date-picker .dp-popup dp-day-calendar,::ng-deep dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}::ng-deep dp-date-picker .dp-popup dp-day-calendar button,::ng-deep dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover{background-color:#f3f3f3}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000;display:inline-flex}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays{display:flex;justify-content:space-around}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover{background-color:#f3f3f3}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected{background:#1e5dd3}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}::ng-deep dp-date-picker .dp-open+div{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@-webkit-keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}.vx-overlay{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0}"]
149
+ template: "<!-- <p>frequency-lifecycle works!</p> -->\r\n<div class=\"frequency-lifecycle\">\r\n <div class=\"frequency-lifecycle-head\">\r\n <p class=\"frequency-lifecycle-title\">SET A LIFECYCLE FOR THIS RESPONSIBILITY:</p>\r\n </div>\r\n <div class=\"frequency-lifecycle-body\">\r\n <div class=\"column\">\r\n <label class=\"text\">Starts From</label>\r\n <div [id]=\"'form-field' + id\" class=\"block active\">\r\n <div class=\"date-picker\" (click)=\"openDatePicker(); datePickerOverlay = true\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"startDate | date: 'dd MMM yyyy'\" [placeholder]=\"startDate | date: 'dd MMM yyyy'\" readonly>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ends by</label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 0\" (checkedEvent)=\"typeSelected(0)\">\r\n <div class=\"date-picker\" (click)=\"openDatePicker1(); datePickerOverlay = true\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" [value]=\"endDateObject | date: 'dd MMM yyyy'\" [placeholder]=\"endDateObject | date: 'dd MMM yyyy'\" readonly>\r\n </div>\r\n </app-cs-radio>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ends after </label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 1\" (checkedEvent)=\"typeSelected(1)\">\r\n <input \r\n type=\"number\" \r\n [(ngModel)]=\"occurrance\" \r\n (focusout)=\"endsAfter($event)\" class=\"day\"\r\n onkeydown=\"return event.keyCode !== 190\" min=\"0\" oninput=\"this.value = Math.abs(this.value)\"\r\n >\r\n <span> Occurrences </span>\r\n </app-cs-radio>\r\n </div>\r\n <div class=\"column\">\r\n <label class=\"text\">Ongoing</label>\r\n <app-cs-radio [checked]=\"selectedLifecycleType == 2\" (checkedEvent)=\"typeSelected(2)\">\r\n The responsibility will perpetually exist.\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n \r\n</div>\r\n<!-- start date date picker -->\r\n<dp-date-picker\r\n #datePicker\r\n [id]=\"'start-date-' + id\"\r\n [placeholder]=\"startDate | date: 'dd MMM yyyy'\"\r\n [(ngModel)]=\"startDate\"\r\n [config]=\"startDateConfig\"\r\n (onSelect)=\"openDatePicker();startFromChange($event); showDateError = false; datePickerOverlay = false\"\r\n></dp-date-picker>\r\n<div class=\"vx-overlay\" (click)=\"closeDatepicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n\r\n<!-- end date date picker -->\r\n<dp-date-picker\r\n #datePicker1\r\n [(ngModel)]=\"endDate\"\r\n [placeholder]=\"endDateObject | date: 'dd MMM yyyy'\"\r\n [id]=\"'end-by-input-' + id\"\r\n [config]=\"endDateConfig\"\r\n [minDate]=\"endDateConfig['min']\"\r\n (onSelect)=\"endByChange($event); showDateError = false; datePickerOverlay = false\"\r\n></dp-date-picker> \r\n<div class=\"vx-overlay\" (click)=\"closeDatepicker()\" *ngIf=\"datePickerOverlay\"></div>\r\n",
150
+ styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::ng-deep .frequency-lifecycle{border-top:1px solid #f1f1f1}::ng-deep .frequency-lifecycle-head{background:#fbfbfb;padding:8px 20px}::ng-deep .frequency-lifecycle-title{margin:0;padding:0;font-size:12px;line-height:16px;color:#747576;text-transform:uppercase}::ng-deep .frequency-lifecycle-body{padding:10px 20px;display:flex}::ng-deep .frequency-lifecycle-body .column{width:25%;padding:0;position:relative}::ng-deep .frequency-lifecycle-body .column label.text{color:#747576;font-size:11px;text-transform:uppercase;margin:0 0 4px;font-weight:500;line-height:16px;display:block}::ng-deep .frequency-lifecycle-body .column+.column{padding-left:28px}::ng-deep .frequency-lifecycle-body .column:first-child{width:20%}::ng-deep .frequency-lifecycle-body .column:last-child{width:30%}::ng-deep .frequency-lifecycle-body .column .block,::ng-deep .frequency-lifecycle-body .column span.value{display:flex;font-size:13px;color:#747576;border:1px solid #f1f1f1;border-radius:2px;padding:0 4px 0 16px;box-sizing:border-box;min-height:48px;justify-content:center;align-items:center;background:#fff;cursor:pointer;text-transform:none;margin:0!important}::ng-deep .frequency-lifecycle-body .column .block .date-picker,::ng-deep .frequency-lifecycle-body .column span.value .date-picker{display:flex;align-items:center;position:relative}::ng-deep .frequency-lifecycle-body .column .block .date-picker i,::ng-deep .frequency-lifecycle-body .column span.value .date-picker i{font-size:16px;margin-right:8px}::ng-deep .frequency-lifecycle-body .column .block .date-picker input,::ng-deep .frequency-lifecycle-body .column span.value .date-picker input{border:none;outline:none;width:100%;background:transparent;font-size:12px;cursor:pointer;line-height:40px}::ng-deep .frequency-lifecycle-body .column .block.active,::ng-deep .frequency-lifecycle-body .column span.value.active{border:1px solid #97d2a0;background:#d6f2da}::ng-deep .frequency-lifecycle-body .column app-cs-radio{display:flex}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span.radio,::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item svg{position:absolute;top:14px;left:-10px;height:20px;width:20px}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span.value{max-width:100%;pointer-events:none;font-size:13px;color:#747576;width:100%}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input:checked~span.value{pointer-events:auto;border:1px solid #97d2a0;background:#d6f2da}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day{-moz-appearance:textfield;width:40px;padding:4px;text-align:center;border:none;border-bottom:2px solid #dcdcdc;line-height:26px;color:#161b2f;font-weight:400;outline:none;background:transparent;margin:0 4px 0 0;font-size:13px}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day::-webkit-inner-spin-button,::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item input.day::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}::ng-deep .frequency-lifecycle-body .column app-cs-radio label.radio-item span{font-size:13px;color:#747576}::ng-deep dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-26px;left:0}::ng-deep dp-date-picker input{width:100%;border:none;opacity:0!important;pointer-events:none}::ng-deep dp-date-picker input:focus{outline:none}::ng-deep dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}::ng-deep dp-date-picker .dp-popup dp-day-calendar,::ng-deep dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}::ng-deep dp-date-picker .dp-popup dp-day-calendar button,::ng-deep dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover{background-color:#f3f3f3}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,::ng-deep dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000;display:inline-flex}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays{display:flex;justify-content:space-around}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover{background-color:#f3f3f3}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected{background:#1e5dd3}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}::ng-deep dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,::ng-deep dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}::ng-deep dp-date-picker .dp-open+div{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@-webkit-keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}.vx-overlay{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0}"]
151
151
  },] }
152
152
  ];
153
153
  FrequencyLifecycleComponent.ctorParameters = () => [
@@ -162,7 +162,6 @@ FrequencyLifecycleComponent.propDecorators = {
162
162
  occurrance: [{ type: Input }],
163
163
  selectedLifecycleType: [{ type: Input }],
164
164
  id: [{ type: Input }],
165
- mode: [{ type: Input }],
166
165
  selectedOccurance: [{ type: Output }]
167
166
  };
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWxpZmVjeWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktbGlmZWN5Y2xlL2ZyZXF1ZW5jeS1saWZlY3ljbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFxQyxNQUFNLGVBQWUsQ0FBQztBQUU3SCxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU94RCxNQUFNLE9BQU8sMkJBQTJCO0lBMEJ0QyxZQUFxQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXBCdkQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBSzNCLHFCQUFxQjtRQUNaLGNBQVMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3ZCLFlBQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBRWhFLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsMEJBQXFCLEdBQUcsQ0FBQyxDQUFDLENBQUMseUNBQXlDO1FBQ3BFLE9BQUUsR0FBRyxDQUFDLENBQUM7UUFHaEIscUJBQXFCO1FBQ1gsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUdLLENBQUM7SUFFNUQsUUFBUTtRQUNOLElBQUksQ0FB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U0FBQyxZQUFZOzBCQUN0QixTQUFTLFNBQUMsYUFBYTt3QkFXdkIsS0FBSztzQkFDTCxLQUFLO29CQUNMLEtBQUs7eUJBQ0wsS0FBSztvQ0FDTCxLQUFLO2lCQUNMLEtBQUs7bUJBQ0wsS0FBSztnQ0FHTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMsIERvQ2hlY2sgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJ25nMi1kYXRlLXBpY2tlcic7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBGcmVxdWVuY3lTZXJ2aWNlIH0gZnJvbSAnLi4vZnJlcXVlbmN5LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZnJlcXVlbmN5LWxpZmVjeWNsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS1saWZlY3ljbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1saWZlY3ljbGUuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5TGlmZWN5Y2xlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIERvQ2hlY2sge1xyXG5cclxuICBAVmlld0NoaWxkKCdkYXRlUGlja2VyJykgZGF0ZVBpY2tlciE6IERhdGVQaWNrZXJDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZGF0ZVBpY2tlcjEnKSBkYXRlUGlja2VyMSE6IERhdGVQaWNrZXJDb21wb25lbnQ7XHJcblxyXG5cclxuICBkYXRlUGlja2VyT3ZlcmxheSA9IGZhbHNlO1xyXG4gIHNob3dEYXRlRXJyb3IgPSBmYWxzZTtcclxuICBzdGFydERhdGVVbml4ID0gRGF0ZS5ub3coKTtcclxuICBlbmREYXRlT2JqZWN0OiBhbnk7XHJcbiAgc3RhcnREYXRlQ29uZmlnOiBhbnk7XHJcbiAgZW5kRGF0ZUNvbmZpZzogYW55O1xyXG5cclxuICAvLyBBbGwgaW5wdXQgdmFyaWFibGVcclxuICBASW5wdXQoKSBzdGFydERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gIEBJbnB1dCgpIGVuZERhdGUgPSBtb21lbnQobmV3IERhdGUodGhpcy5zdGFydERhdGUpLmdldFRpbWUoKSArIDg2NDAwMDAwKTtcclxuICBASW5wdXQoKSBlbmRCeTogYW55O1xyXG4gIEBJbnB1dCgpIG9jY3VycmFuY2UgPSAxMDtcclxuICBASW5wdXQoKSBzZWxlY3RlZExpZmVjeWNsZVR5cGUgPSAyOyAvLyAwID0gRW5kIGJ5ICwgIEVuZCBBZnRlciwgMiA9IHBlcnBldHVhbFxyXG4gIEBJbnB1dCgpIGlkID0gMDtcclxuICBASW5wdXQoKSBtb2RlIDphbnlcclxuXHJcbiAgLy8gIGxpZmVjeWNsZSBvdXRwdXQgXHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkT2NjdXJhbmNlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiBcclxuXHJcbiAgY29uc3RydWN0b3IoIHByaXZhdGUgZnJlcXVlbmN5U2VydmljZTogRnJlcXVlbmN5U2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdGFydERhdGVDb25maWcgPSBPYmplY3QuYXNzaWduKHsuLi50aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZGF0ZUNvbmZpZ30pO1xyXG4gICAgdGhpcy5lbmREYXRlQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7Li4udGhpcy5mcmVxdWVuY3lTZXJ2aWNlLmRhdGVDb25maWd9KTtcclxuICAgIHRoaXMuc3RhcnREYXRlQ29uZmlnWydtaW4nXSA9IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpLnRvU3RyaW5nKCk7XHJcbiAgICAvL3RoaXMuc3RhcnREYXRlVW5peCA9IHRoaXMuc3RhcnREYXRlLmdldERhdGUoKS50b1N0cmluZygpXHJcbiAgICB0aGlzLmVuZERhdGVDb25maWdbJ21pbiddID0gbW9tZW50KG5ldyBEYXRlKG5ldyBEYXRlKHRoaXMuc3RhcnREYXRlKS5nZXRUaW1lKCkgKyA4NjQwMDAwMCkpXHJcbiAgICB0aGlzLmdldEVuZERhdGUodGhpcy5zdGFydERhdGUpXHJcbiAgICB0aGlzLmNoYW5nZUVuZERhdGVPYmoodGhpcy5lbmREYXRlKTtcclxuICAgIGNvbnNvbGUubG9nKFwiZW5kRGF0ZSA9PT5cIiwgdGhpcy5lbmREYXRlKVxyXG4gIH1cclxuXHJcbiAgZ2V0RW5kRGF0ZShldmVudDogYW55KSB7XHJcbiAgICBjb25zdCB0aW1lID0gbW9tZW50KHRoaXMuZW5kRGF0ZSkuZm9ybWF0KFwiREQtTU0tWVlZWSBISDptbTpzc1wiKTtcclxuICAgIGNvbnN0IGdldFVuaXhUaW1lID0gbW9tZW50KHRpbWUuc3BsaXQoJyAnKVswXSArIFwiIDAwOjAwOjAwXCIsIFwiREQtTU0tWVlZWSBISDptbTpzc1wiKS51bml4KClcclxuICAgIGNvbnNvbGUubG9nKFwiZW5kIGRhdGUgPT0+dGltZVwiLCB0aW1lLCBnZXRVbml4VGltZSlcclxuICAgIHRoaXMuc3RhcnREYXRlVW5peCA9IG1vbWVudChldmVudCkudW5peCgpO1xyXG4gICAgY29uc29sZS5sb2coXCIgdGhpcy5zdGFydERhdGVVbml4ID09PlwiLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5zdGFydERhdGVVbml4KVxyXG4gICAgaWYgKHRoaXMuc3RhcnREYXRlVW5peCA+PSBnZXRVbml4VGltZSkgeyBcclxuICAgICAgdGhpcy5lbmREYXRlID0gbW9tZW50KG5ldyBEYXRlKHRoaXMuc3RhcnREYXRlKS5nZXRUaW1lKCkgKyA4NjQwMDAwMClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZW5kRGF0ZSA9IG1vbWVudCh0aGlzLmVuZERhdGUpXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgY2hhbmdlRW5kRGF0ZU9iaihkYXRlOiBhbnkpIHtcclxuICAgIHRoaXMuZW5kRGF0ZU9iamVjdCA9IG5ldyBEYXRlKG1vbWVudChkYXRlKS51bml4KCkgKiAxMDAwKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZTogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgY29uc29sZS5sb2coXCJjaGFuZ2VzID09PlwiLCBjaGFuZ2UsIHRoaXMuc2VsZWN0ZWRMaWZlY3ljbGVUeXBlKVxyXG4gICAgdGhpcy5lbmRCeSA9IG1vbWVudCh0aGlzLmVuZERhdGUpLmZvcm1hdCgnREQtTU1NTS1ZWVlZVEhIOm1tOnNzWicpLnNwbGl0KCdUJylbMF07XHJcbiAgfVxyXG5cclxuICBuZ0RvQ2hlY2soKSB7XHJcbiAgLy8gIGNvbnNvbGUubG9nKFwidGhpcy5lbmREYXRlID09PiBEb0NjaGVja1wiLCB0aGlzLmVuZERhdGUsIHRoaXMuc3RhcnREYXRlKVxyXG4gIH1cclxuXHJcbiAgb3BlbkRhdGVQaWNrZXIoKSB7XHJcbiAgXHJcbiAgICBjb25zdCBuZXdEYXRlID0gbW9tZW50KHRoaXMuc3RhcnREYXRlKVxyXG4gICAgY29uc29sZS5sb2coXCJuZXdEYXRlID09PlwiLCBuZXdEYXRlKVxyXG4gICAgdGhpcy5kYXRlUGlja2VyLmFwaS5tb3ZlQ2FsZW5kYXJUbyhuZXdEYXRlKSAgXHJcbiAgICB0aGlzLmRhdGVQaWNrZXIuYXBpLm9wZW4oKTsgICAgIFxyXG4gICAgdGhpcy5kYXRlUGlja2VyT3ZlcmxheSA9IHRydWU7XHJcbiAgfVxyXG4gIG9wZW5EYXRlUGlja2VyMSgpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZW5kIGRhdGUgPT0+XCIsIHRoaXMuZW5kRGF0ZSlcclxuICAgIHRoaXMuZGF0ZVBpY2tlcjEuYXBpLm1vdmVDYWxlbmRhclRvKHRoaXMuZW5kRGF0ZSkgICAgXHJcbiAgICB0aGlzLmRhdGVQaWNrZXIxLmFwaS5vcGVuKCk7XHJcbiAgICAgICBcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSB0cnVlO1xyXG4gIH1cclxuICBjbG9zZURhdGVwaWNrZXIoKSB7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXIuYXBpLmNsb3NlKCk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXIxLmFwaS5jbG9zZSgpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyT3ZlcmxheSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLy8gbGlmZWN5Y2xlIHR5cGVcclxuICB0eXBlU2VsZWN0ZWQoZXZlbnQ6YW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZSA9IGV2ZW50O1xyXG4gICAgdGhpcy5zZWxlY3RlZE9jY3VyYW5jZS5lbWl0KHtcclxuICAgICAgdHlwZTogZXZlbnQsXHJcbiAgICAgIGVuZHNCeTogdGhpcy5lbmRCeSxcclxuICAgICAgZW5kYWZ0ZXI6IHRoaXMub2NjdXJyYW5jZSxcclxuICAgICAgc3RhcnRGcm9tOiB0aGlzLnN0YXJ0RGF0ZVVuaXgsXHJcbiAgICB9KTtcclxuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZTtcclxuICB9XHJcblxyXG4gIC8vIGVuZHMgYWZ0ZXIgc2VsZWN0aW9uXHJcbiAgZW5kc0FmdGVyKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKCdsaWZlY3ljbGUgb2NjdXJyYW5jZScsIGV2ZW50KTtcclxuICAgIGlmICggIU51bWJlci5pc05hTihOdW1iZXIodGhpcy5vY2N1cnJhbmNlKSkgJiYgdGhpcy5vY2N1cnJhbmNlICE9PSAwICYmIE51bWJlcih0aGlzLm9jY3VycmFuY2UpID4gMCkge1xyXG4gICAgICBjb25zb2xlLmxvZygnSU4nKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZE9jY3VyYW5jZS5lbWl0KHtcclxuICAgICAgICB0eXBlOiB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZSxcclxuICAgICAgICBlbmRzQnk6IHRoaXMuZW5kQnksXHJcbiAgICAgICAgZW5kYWZ0ZXI6IHRoaXMub2NjdXJyYW5jZSxcclxuICAgICAgICBzdGFydEZyb206IHRoaXMuc3RhcnREYXRlVW5peCxcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmxvZygnb3V0dCcpO1xyXG4gICAgICB0aGlzLm9jY3VycmFuY2UgPSAxMDtcclxuICAgIH1cclxuICAgIHJldHVybiAgdGhpcy5vY2N1cnJhbmNlIFxyXG4gIH1cclxuXHJcbiAgLy8gRW5kIGJ5IGNoYW5nZVxyXG4gIGVuZEJ5Q2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiIE9uIHNlbGVjdCA9PT5cIiwgZXZlbnQpXHJcbiAgICB0aGlzLmRhdGVQaWNrZXIxLmFwaS5vcGVuKCk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJPdmVybGF5ID0gdHJ1ZTtcclxuICAgIHRoaXMuZW5kRGF0ZSA9IGV2ZW50LmRhdGU7XHJcbiAgICB0aGlzLmNoYW5nZUVuZERhdGVPYmoodGhpcy5lbmREYXRlKTtcclxuIC8vICAgY29uc29sZS5sb2coZXZlbnQsICk7IFxyXG4gICAgdGhpcy5lbmRCeSA9IG1vbWVudChldmVudC5kYXRlKS5mb3JtYXQoJ0RELU1NTU0tWVlZWScpO1xyXG4gICAgLy8gY29uc29sZS5sb2codGhpcy5lbmRCeSk7XHJcbiAgICBjb25zdCBkYXRlT2JqZWN0ID0ge1xyXG4gICAgICB0eXBlOiB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZSxcclxuICAgICAgZW5kc0J5OiB0aGlzLmVuZEJ5LFxyXG4gICAgICBlbmRhZnRlcjogdGhpcy5vY2N1cnJhbmNlLFxyXG4gICAgICBzdGFydEZyb206IHRoaXMuc3RhcnREYXRlVW5peCxcclxuICAgIH07XHJcbiAgICBjb25zb2xlLmxvZyhcImRhdGVPYmplY3QgPT0+XCIsIGRhdGVPYmplY3QpO1xyXG4gICAgdGhpcy5zZWxlY3RlZE9jY3VyYW5jZS5lbWl0KGRhdGVPYmplY3QpO1xyXG4gICAgLy8gcmV0dXJuIHRoaXMuZW5kQnlcclxuICB9XHJcblxyXG4gIC8vIHN0YXJ0IGZyb20gY2hhbmdlIGV2ZW50XHJcbiAgc3RhcnRGcm9tQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiIHN0YXJ0IGRhdGUgY2hhbmdlXCIsIGV2ZW50LCB0aGlzLmVuZERhdGUpXHJcbiAgICBjb25zdCB0aW1lID0gbW9tZW50KHRoaXMuZW5kRGF0ZSkuZm9ybWF0KFwiREQtTU0tWVlZWSBISDptbTpzc1wiKTtcclxuICAgIGNvbnN0IGdldFVuaXhUaW1lID0gbW9tZW50KHRpbWUuc3BsaXQoJyAnKVswXSArIFwiIDAwOjAwOjAwXCIsIFwiREQtTU0tWVlZWSBISDptbTpzc1wiKS51bml4KClcclxuICAgIGNvbnNvbGUubG9nKFwiZW5kIGRhdGUgPT0+dGltZVwiLCB0aW1lLCBnZXRVbml4VGltZSlcclxuICAgIHRoaXMuc3RhcnREYXRlVW5peCA9IG1vbWVudChldmVudC5kYXRlKS51bml4KCk7XHJcbiAgICBjb25zb2xlLmxvZyhcIiB0aGlzLnN0YXJ0RGF0ZVVuaXggPT0+XCIsIHRoaXMuc3RhcnREYXRlLCB0aGlzLnN0YXJ0RGF0ZVVuaXgpXHJcbiAgICBpZiAodGhpcy5zdGFydERhdGVVbml4ID49IGdldFVuaXhUaW1lKSB7XHJcbiAgICAgICB0aGlzLmVuZERhdGUgPSBtb21lbnQoKHRoaXMuc3RhcnREYXRlVW5peCAqIDEwMDApICsgODY0MDAwMDApO1xyXG4gICAgICAgXHJcbiAgICAgICB0aGlzLmNoYW5nZUVuZERhdGVPYmoodGhpcy5lbmREYXRlKTtcclxuICAgICAgIGNvbnNvbGUubG9nKFwidGhpcy5lbmREYXRlID09PlwiLCB0aGlzLmVuZERhdGUsIHRoaXMuc3RhcnREYXRlKVxyXG4gICAgICAgdGhpcy5lbmRCeSA9IG1vbWVudCh0aGlzLmVuZERhdGUpLmZvcm1hdCgnREQtTU1NTS1ZWVlZVEhIOm1tOnNzWicpLnNwbGl0KCdUJylbMF07XHJcbiAgICB9XHJcbiAgICB0aGlzLmVuZERhdGVDb25maWdbJ21pbiddID0gT2JqZWN0LmFzc2lnbiggbW9tZW50KCBuZXcgRGF0ZShuZXcgRGF0ZShldmVudC5kYXRlKS5nZXRUaW1lKCkgKyA4NjQwMDAwMCkpKTtcclxuICAgIGNvbnNvbGUubG9nKFwidGhpcy5lbmREYXRlQ29uZmlnID09PlwiLCB0aGlzLmVuZERhdGVDb25maWcpXHJcbiAgICB0aGlzLnNlbGVjdGVkT2NjdXJhbmNlLmVtaXQoe1xyXG4gICAgICB0eXBlOiB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZSxcclxuICAgICAgZW5kc0J5OiB0aGlzLmVuZEJ5LFxyXG4gICAgICBlbmRhZnRlcjogdGhpcy5vY2N1cnJhbmNlLFxyXG4gICAgICBzdGFydEZyb206IHRoaXMuc3RhcnREYXRlVW5peCxcclxuICAgIH0pO1xyXG4gIFxyXG4gIH1cclxuXHJcbiAgZW5kRGF0ZU1vZGVsQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZW5kRGF0ZU1vZGVsQ2hhbmdlID09PlwiLCBldmVudClcclxuICB9XHJcbn1cclxuIl19
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWxpZmVjeWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktbGlmZWN5Y2xlL2ZyZXF1ZW5jeS1saWZlY3ljbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFxQyxNQUFNLGVBQWUsQ0FBQztBQUU3SCxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU94RCxNQUFNLE9BQU8sMkJBQTJCO0lBeUJ0QyxZQUFxQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5CdkQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBSzNCLHFCQUFxQjtRQUNaLGNBQVMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3ZCLFlBQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBRWhFLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsMEJBQXFCLEdBQUcsQ0FBQyxDQUFDLENBQUMseUNBQXlDO1FBQ3BFLE9BQUUsR0FBRyxDQUFDLENBQUM7UUFFaEIscUJBQXFCO1FBQ1gsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUdLLENBQUM7SUFFNUQsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzVFLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzFFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5RCwwREFBMEQ7UUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUE7UUFDM0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVO1FBQ25CLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDaEUsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxFQUFFLHFCQUFxQixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDMUYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUE7UUFDbEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUMxRSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksV0FBVyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQTtTQUNyRTthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1NBQ3BDO0lBRUgsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVM7UUFDeEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFxQjtRQUMvQixPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUE7UUFDOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsU0FBUztRQUNULDBFQUEwRTtJQUMxRSxDQUFDO0lBRUQsY0FBYztRQUVaLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUNELGVBQWU7UUFDYixPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDekMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNqRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRUQsaUJBQWlCO0lBQ2pCLFlBQVksQ0FBQyxLQUFTO1FBQ3BCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQztZQUMxQixJQUFJLEVBQUUsS0FBSztZQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSztZQUNsQixRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDekIsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQzlCLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFFRCx1QkFBdUI7SUFDdkIsU0FBUyxDQUFDLEtBQVU7UUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzQyxJQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtnQkFDaEMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNsQixRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYTthQUM5QixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztTQUN0QjtRQUNELE9BQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN6QixDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QywyQkFBMkI7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN2RCwyQkFBMkI7UUFDM0IsTUFBTSxVQUFVLEdBQUc7WUFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUI7WUFDaEMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2xCLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDOUIsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4QyxvQkFBb0I7SUFDdEIsQ0FBQztJQUVELDBCQUEwQjtJQUMxQixlQUFlLENBQUMsS0FBVTtRQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdEQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNoRSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLEVBQUUscUJBQXFCLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUMxRixPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUNsRCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDL0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUMxRSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksV0FBVyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztZQUU5RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7WUFDN0QsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNuRjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBRSxNQUFNLENBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6RyxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUN6RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1lBQzFCLElBQUksRUFBRSxJQUFJLENBQUMscUJBQXFCO1lBQ2hDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSztZQUNsQixRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDekIsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQzlCLENBQUMsQ0FBQztJQUVMLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFVO1FBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDOUMsQ0FBQzs7O1lBMUtGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQyx1dkdBQW1EOzthQUVwRDs7O1lBTlEsZ0JBQWdCOzs7eUJBU3RCLFNBQVMsU0FBQyxZQUFZOzBCQUN0QixTQUFTLFNBQUMsYUFBYTt3QkFXdkIsS0FBSztzQkFDTCxLQUFLO29CQUNMLEtBQUs7eUJBQ0wsS0FBSztvQ0FDTCxLQUFLO2lCQUNMLEtBQUs7Z0NBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzLCBEb0NoZWNrIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVQaWNrZXJDb21wb25lbnQgfSBmcm9tICduZzItZGF0ZS1waWNrZXInO1xyXG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgRnJlcXVlbmN5U2VydmljZSB9IGZyb20gJy4uL2ZyZXF1ZW5jeS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWZyZXF1ZW5jeS1saWZlY3ljbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mcmVxdWVuY3ktbGlmZWN5Y2xlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mcmVxdWVuY3ktbGlmZWN5Y2xlLmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeUxpZmVjeWNsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBEb0NoZWNrIHtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZGF0ZVBpY2tlcicpIGRhdGVQaWNrZXIhOiBEYXRlUGlja2VyQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2RhdGVQaWNrZXIxJykgZGF0ZVBpY2tlcjEhOiBEYXRlUGlja2VyQ29tcG9uZW50O1xyXG5cclxuXHJcbiAgZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZTtcclxuICBzaG93RGF0ZUVycm9yID0gZmFsc2U7XHJcbiAgc3RhcnREYXRlVW5peCA9IERhdGUubm93KCk7XHJcbiAgZW5kRGF0ZU9iamVjdDogYW55O1xyXG4gIHN0YXJ0RGF0ZUNvbmZpZzogYW55O1xyXG4gIGVuZERhdGVDb25maWc6IGFueTtcclxuXHJcbiAgLy8gQWxsIGlucHV0IHZhcmlhYmxlXHJcbiAgQElucHV0KCkgc3RhcnREYXRlID0gbmV3IERhdGUoKTtcclxuICBASW5wdXQoKSBlbmREYXRlID0gbW9tZW50KG5ldyBEYXRlKHRoaXMuc3RhcnREYXRlKS5nZXRUaW1lKCkgKyA4NjQwMDAwMCk7XHJcbiAgQElucHV0KCkgZW5kQnk6IGFueTtcclxuICBASW5wdXQoKSBvY2N1cnJhbmNlID0gMTA7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRMaWZlY3ljbGVUeXBlID0gMjsgLy8gMCA9IEVuZCBieSAsICBFbmQgQWZ0ZXIsIDIgPSBwZXJwZXR1YWxcclxuICBASW5wdXQoKSBpZCA9IDA7XHJcblxyXG4gIC8vICBsaWZlY3ljbGUgb3V0cHV0IFxyXG4gIEBPdXRwdXQoKSBzZWxlY3RlZE9jY3VyYW5jZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gXHJcblxyXG4gIGNvbnN0cnVjdG9yKCBwcml2YXRlIGZyZXF1ZW5jeVNlcnZpY2U6IEZyZXF1ZW5jeVNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RhcnREYXRlQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7Li4udGhpcy5mcmVxdWVuY3lTZXJ2aWNlLmRhdGVDb25maWd9KTtcclxuICAgIHRoaXMuZW5kRGF0ZUNvbmZpZyA9IE9iamVjdC5hc3NpZ24oey4uLnRoaXMuZnJlcXVlbmN5U2VydmljZS5kYXRlQ29uZmlnfSk7XHJcbiAgICB0aGlzLnN0YXJ0RGF0ZUNvbmZpZ1snbWluJ10gPSBuZXcgRGF0ZSgpLmdldERhdGUoKS50b1N0cmluZygpO1xyXG4gICAgLy90aGlzLnN0YXJ0RGF0ZVVuaXggPSB0aGlzLnN0YXJ0RGF0ZS5nZXREYXRlKCkudG9TdHJpbmcoKVxyXG4gICAgdGhpcy5lbmREYXRlQ29uZmlnWydtaW4nXSA9IG1vbWVudChuZXcgRGF0ZShuZXcgRGF0ZSh0aGlzLnN0YXJ0RGF0ZSkuZ2V0VGltZSgpICsgODY0MDAwMDApKVxyXG4gICAgdGhpcy5nZXRFbmREYXRlKHRoaXMuc3RhcnREYXRlKVxyXG4gICAgdGhpcy5jaGFuZ2VFbmREYXRlT2JqKHRoaXMuZW5kRGF0ZSk7XHJcbiAgICBjb25zb2xlLmxvZyhcImVuZERhdGUgPT0+XCIsIHRoaXMuZW5kRGF0ZSlcclxuICB9XHJcblxyXG4gIGdldEVuZERhdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgdGltZSA9IG1vbWVudCh0aGlzLmVuZERhdGUpLmZvcm1hdChcIkRELU1NLVlZWVkgSEg6bW06c3NcIik7XHJcbiAgICBjb25zdCBnZXRVbml4VGltZSA9IG1vbWVudCh0aW1lLnNwbGl0KCcgJylbMF0gKyBcIiAwMDowMDowMFwiLCBcIkRELU1NLVlZWVkgSEg6bW06c3NcIikudW5peCgpXHJcbiAgICBjb25zb2xlLmxvZyhcImVuZCBkYXRlID09PnRpbWVcIiwgdGltZSwgZ2V0VW5peFRpbWUpXHJcbiAgICB0aGlzLnN0YXJ0RGF0ZVVuaXggPSBtb21lbnQoZXZlbnQpLnVuaXgoKTtcclxuICAgIGNvbnNvbGUubG9nKFwiIHRoaXMuc3RhcnREYXRlVW5peCA9PT5cIiwgdGhpcy5zdGFydERhdGUsIHRoaXMuc3RhcnREYXRlVW5peClcclxuICAgIGlmICh0aGlzLnN0YXJ0RGF0ZVVuaXggPj0gZ2V0VW5peFRpbWUpIHsgXHJcbiAgICAgIHRoaXMuZW5kRGF0ZSA9IG1vbWVudChuZXcgRGF0ZSh0aGlzLnN0YXJ0RGF0ZSkuZ2V0VGltZSgpICsgODY0MDAwMDApXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmVuZERhdGUgPSBtb21lbnQodGhpcy5lbmREYXRlKVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGNoYW5nZUVuZERhdGVPYmooZGF0ZTogYW55KSB7XHJcbiAgICB0aGlzLmVuZERhdGVPYmplY3QgPSBuZXcgRGF0ZShtb21lbnQoZGF0ZSkudW5peCgpICogMTAwMCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2U6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiY2hhbmdlcyA9PT5cIiwgY2hhbmdlLCB0aGlzLnNlbGVjdGVkTGlmZWN5Y2xlVHlwZSlcclxuICAgIHRoaXMuZW5kQnkgPSBtb21lbnQodGhpcy5lbmREYXRlKS5mb3JtYXQoJ0RELU1NTU0tWVlZWVRISDptbTpzc1onKS5zcGxpdCgnVCcpWzBdO1xyXG4gIH1cclxuXHJcbiAgbmdEb0NoZWNrKCkge1xyXG4gIC8vICBjb25zb2xlLmxvZyhcInRoaXMuZW5kRGF0ZSA9PT4gRG9DY2hlY2tcIiwgdGhpcy5lbmREYXRlLCB0aGlzLnN0YXJ0RGF0ZSlcclxuICB9XHJcblxyXG4gIG9wZW5EYXRlUGlja2VyKCkge1xyXG4gIFxyXG4gICAgY29uc3QgbmV3RGF0ZSA9IG1vbWVudCh0aGlzLnN0YXJ0RGF0ZSlcclxuICAgIGNvbnNvbGUubG9nKFwibmV3RGF0ZSA9PT5cIiwgbmV3RGF0ZSlcclxuICAgIHRoaXMuZGF0ZVBpY2tlci5hcGkubW92ZUNhbGVuZGFyVG8obmV3RGF0ZSkgIFxyXG4gICAgdGhpcy5kYXRlUGlja2VyLmFwaS5vcGVuKCk7ICAgICBcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSB0cnVlO1xyXG4gIH1cclxuICBvcGVuRGF0ZVBpY2tlcjEoKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImVuZCBkYXRlID09PlwiLCB0aGlzLmVuZERhdGUpXHJcbiAgICB0aGlzLmRhdGVQaWNrZXIxLmFwaS5tb3ZlQ2FsZW5kYXJUbyh0aGlzLmVuZERhdGUpICAgIFxyXG4gICAgdGhpcy5kYXRlUGlja2VyMS5hcGkub3BlbigpO1xyXG4gICAgICAgXHJcbiAgICB0aGlzLmRhdGVQaWNrZXJPdmVybGF5ID0gdHJ1ZTtcclxuICB9XHJcbiAgY2xvc2VEYXRlcGlja2VyKCkge1xyXG4gICAgdGhpcy5kYXRlUGlja2VyLmFwaS5jbG9zZSgpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyMS5hcGkuY2xvc2UoKTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8vIGxpZmVjeWNsZSB0eXBlXHJcbiAgdHlwZVNlbGVjdGVkKGV2ZW50OmFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZExpZmVjeWNsZVR5cGUgPSBldmVudDtcclxuICAgIHRoaXMuc2VsZWN0ZWRPY2N1cmFuY2UuZW1pdCh7XHJcbiAgICAgIHR5cGU6IGV2ZW50LFxyXG4gICAgICBlbmRzQnk6IHRoaXMuZW5kQnksXHJcbiAgICAgIGVuZGFmdGVyOiB0aGlzLm9jY3VycmFuY2UsXHJcbiAgICAgIHN0YXJ0RnJvbTogdGhpcy5zdGFydERhdGVVbml4LFxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExpZmVjeWNsZVR5cGU7XHJcbiAgfVxyXG5cclxuICAvLyBlbmRzIGFmdGVyIHNlbGVjdGlvblxyXG4gIGVuZHNBZnRlcihldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZygnbGlmZWN5Y2xlIG9jY3VycmFuY2UnLCBldmVudCk7XHJcbiAgICBpZiAoICFOdW1iZXIuaXNOYU4oTnVtYmVyKHRoaXMub2NjdXJyYW5jZSkpICYmIHRoaXMub2NjdXJyYW5jZSAhPT0gMCAmJiBOdW1iZXIodGhpcy5vY2N1cnJhbmNlKSA+IDApIHtcclxuICAgICAgY29uc29sZS5sb2coJ0lOJyk7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRPY2N1cmFuY2UuZW1pdCh7XHJcbiAgICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZExpZmVjeWNsZVR5cGUsXHJcbiAgICAgICAgZW5kc0J5OiB0aGlzLmVuZEJ5LFxyXG4gICAgICAgIGVuZGFmdGVyOiB0aGlzLm9jY3VycmFuY2UsXHJcbiAgICAgICAgc3RhcnRGcm9tOiB0aGlzLnN0YXJ0RGF0ZVVuaXgsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5sb2coJ291dHQnKTtcclxuICAgICAgdGhpcy5vY2N1cnJhbmNlID0gMTA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gIHRoaXMub2NjdXJyYW5jZSBcclxuICB9XHJcblxyXG4gIC8vIEVuZCBieSBjaGFuZ2VcclxuICBlbmRCeUNoYW5nZShldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcIiBPbiBzZWxlY3QgPT0+XCIsIGV2ZW50KVxyXG4gICAgdGhpcy5kYXRlUGlja2VyMS5hcGkub3BlbigpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyT3ZlcmxheSA9IHRydWU7XHJcbiAgICB0aGlzLmVuZERhdGUgPSBldmVudC5kYXRlO1xyXG4gICAgdGhpcy5jaGFuZ2VFbmREYXRlT2JqKHRoaXMuZW5kRGF0ZSk7XHJcbiAvLyAgIGNvbnNvbGUubG9nKGV2ZW50LCApOyBcclxuICAgIHRoaXMuZW5kQnkgPSBtb21lbnQoZXZlbnQuZGF0ZSkuZm9ybWF0KCdERC1NTU1NLVlZWVknKTtcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZW5kQnkpO1xyXG4gICAgY29uc3QgZGF0ZU9iamVjdCA9IHtcclxuICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZExpZmVjeWNsZVR5cGUsXHJcbiAgICAgIGVuZHNCeTogdGhpcy5lbmRCeSxcclxuICAgICAgZW5kYWZ0ZXI6IHRoaXMub2NjdXJyYW5jZSxcclxuICAgICAgc3RhcnRGcm9tOiB0aGlzLnN0YXJ0RGF0ZVVuaXgsXHJcbiAgICB9O1xyXG4gICAgY29uc29sZS5sb2coXCJkYXRlT2JqZWN0ID09PlwiLCBkYXRlT2JqZWN0KTtcclxuICAgIHRoaXMuc2VsZWN0ZWRPY2N1cmFuY2UuZW1pdChkYXRlT2JqZWN0KTtcclxuICAgIC8vIHJldHVybiB0aGlzLmVuZEJ5XHJcbiAgfVxyXG5cclxuICAvLyBzdGFydCBmcm9tIGNoYW5nZSBldmVudFxyXG4gIHN0YXJ0RnJvbUNoYW5nZShldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcIiBzdGFydCBkYXRlIGNoYW5nZVwiLCBldmVudCwgdGhpcy5lbmREYXRlKVxyXG4gICAgY29uc3QgdGltZSA9IG1vbWVudCh0aGlzLmVuZERhdGUpLmZvcm1hdChcIkRELU1NLVlZWVkgSEg6bW06c3NcIik7XHJcbiAgICBjb25zdCBnZXRVbml4VGltZSA9IG1vbWVudCh0aW1lLnNwbGl0KCcgJylbMF0gKyBcIiAwMDowMDowMFwiLCBcIkRELU1NLVlZWVkgSEg6bW06c3NcIikudW5peCgpXHJcbiAgICBjb25zb2xlLmxvZyhcImVuZCBkYXRlID09PnRpbWVcIiwgdGltZSwgZ2V0VW5peFRpbWUpXHJcbiAgICB0aGlzLnN0YXJ0RGF0ZVVuaXggPSBtb21lbnQoZXZlbnQuZGF0ZSkudW5peCgpO1xyXG4gICAgY29uc29sZS5sb2coXCIgdGhpcy5zdGFydERhdGVVbml4ID09PlwiLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5zdGFydERhdGVVbml4KVxyXG4gICAgaWYgKHRoaXMuc3RhcnREYXRlVW5peCA+PSBnZXRVbml4VGltZSkge1xyXG4gICAgICAgdGhpcy5lbmREYXRlID0gbW9tZW50KCh0aGlzLnN0YXJ0RGF0ZVVuaXggKiAxMDAwKSArIDg2NDAwMDAwKTtcclxuICAgICAgIFxyXG4gICAgICAgdGhpcy5jaGFuZ2VFbmREYXRlT2JqKHRoaXMuZW5kRGF0ZSk7XHJcbiAgICAgICBjb25zb2xlLmxvZyhcInRoaXMuZW5kRGF0ZSA9PT5cIiwgdGhpcy5lbmREYXRlLCB0aGlzLnN0YXJ0RGF0ZSlcclxuICAgICAgIHRoaXMuZW5kQnkgPSBtb21lbnQodGhpcy5lbmREYXRlKS5mb3JtYXQoJ0RELU1NTU0tWVlZWVRISDptbTpzc1onKS5zcGxpdCgnVCcpWzBdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5lbmREYXRlQ29uZmlnWydtaW4nXSA9IE9iamVjdC5hc3NpZ24oIG1vbWVudCggbmV3IERhdGUobmV3IERhdGUoZXZlbnQuZGF0ZSkuZ2V0VGltZSgpICsgODY0MDAwMDApKSk7XHJcbiAgICBjb25zb2xlLmxvZyhcInRoaXMuZW5kRGF0ZUNvbmZpZyA9PT5cIiwgdGhpcy5lbmREYXRlQ29uZmlnKVxyXG4gICAgdGhpcy5zZWxlY3RlZE9jY3VyYW5jZS5lbWl0KHtcclxuICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZExpZmVjeWNsZVR5cGUsXHJcbiAgICAgIGVuZHNCeTogdGhpcy5lbmRCeSxcclxuICAgICAgZW5kYWZ0ZXI6IHRoaXMub2NjdXJyYW5jZSxcclxuICAgICAgc3RhcnRGcm9tOiB0aGlzLnN0YXJ0RGF0ZVVuaXgsXHJcbiAgICB9KTtcclxuICBcclxuICB9XHJcblxyXG4gIGVuZERhdGVNb2RlbENoYW5nZShldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImVuZERhdGVNb2RlbENoYW5nZSA9PT5cIiwgZXZlbnQpXHJcbiAgfVxyXG59XHJcbiJdfQ==