@magic-xpa/angular 4.800.0-dev480.20 → 4.800.0-dev480.203

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 (117) hide show
  1. package/bundles/magic-xpa-angular.umd.js +1377 -2646
  2. package/bundles/magic-xpa-angular.umd.js.map +1 -1
  3. package/bundles/magic-xpa-angular.umd.min.js +2 -2
  4. package/bundles/magic-xpa-angular.umd.min.js.map +1 -1
  5. package/esm2015/index.js +1 -1
  6. package/esm2015/magic-xpa-angular.js +1 -4
  7. package/esm2015/src/controls.metadata.model.js +3 -36
  8. package/esm2015/src/interfaces/sub-form-definition.iterface.js +1 -1
  9. package/esm2015/src/magic.core.module.js +4 -14
  10. package/esm2015/src/services/ISubformMagicService.js +1 -1
  11. package/esm2015/src/services/OverlayWindowService.js +4 -29
  12. package/esm2015/src/services/StylesMapManager.js +1 -4
  13. package/esm2015/src/services/accessor.magic.service.js +41 -249
  14. package/esm2015/src/services/commands-collector.magic.service.js +4 -7
  15. package/esm2015/src/services/component-list.magic.service.js +1 -25
  16. package/esm2015/src/services/confirmation.components.magic.provider.js +4 -24
  17. package/esm2015/src/services/engine.magic.service.js +7 -10
  18. package/esm2015/src/services/exit.magic.service.js +4 -10
  19. package/esm2015/src/services/magic.providers.js +1 -4
  20. package/esm2015/src/services/magic.services.js +4 -10
  21. package/esm2015/src/services/mg-date-adapter.js +5 -5
  22. package/esm2015/src/services/overlay.conainer.magic.provider.js +4 -8
  23. package/esm2015/src/services/router-commands.magic.service.js +4 -10
  24. package/esm2015/src/services/subform.magic.service.js +37 -56
  25. package/esm2015/src/services/table.magic.service.js +5 -61
  26. package/esm2015/src/services/task.magics.service.js +14 -282
  27. package/esm2015/src/services/title.magic.service.js +4 -15
  28. package/esm2015/src/ui/GuiInteractiveExecutor.js +8 -6
  29. package/esm2015/src/ui/components/base-magic-alert.component.js +4 -14
  30. package/esm2015/src/ui/components/base-magic-confirm.component.js +4 -16
  31. package/esm2015/src/ui/components/magic-alert.component.js +5 -8
  32. package/esm2015/src/ui/components/magic-confirmation-box.component.js +5 -8
  33. package/esm2015/src/ui/directives/NonMagicControlDirective.js +4 -31
  34. package/esm2015/src/ui/directives/magic/checkbox-noformcontrol.magic.directive.js +4 -10
  35. package/esm2015/src/ui/directives/magic/checkbox.magic.directive.js +4 -13
  36. package/esm2015/src/ui/directives/magic/combobox.magic.directive.js +4 -10
  37. package/esm2015/src/ui/directives/magic/form-controls/control-value-accessors/checkbox.cva.directive.js +5 -11
  38. package/esm2015/src/ui/directives/magic/form-controls/control-value-accessors/date.cva.directive.js +4 -16
  39. package/esm2015/src/ui/directives/magic/form-controls/control-value-accessors/default.cva.directive.js +5 -11
  40. package/esm2015/src/ui/directives/magic/input.noformcontrol.magic.directive.js +4 -10
  41. package/esm2015/src/ui/directives/magic/nocontrol.magic.directive.js +6 -16
  42. package/esm2015/src/ui/directives/magic/row.magic.directive.js +4 -22
  43. package/esm2015/src/ui/directives/magic-focus.directive.js +4 -7
  44. package/esm2015/src/ui/directives/magic.directive.js +10 -81
  45. package/esm2015/src/ui/directives/magicViewContainerRef.directive.js +4 -8
  46. package/esm2015/src/ui/directives/mgformat.magic.directive.js +4 -57
  47. package/esm2015/src/ui/directives/range-validator.magic.directive.js +4 -20
  48. package/esm2015/src/ui/magic-confirmationBox.js +1 -25
  49. package/esm2015/src/ui/magic-modal/base-magic-overlay-container.js +1 -1
  50. package/esm2015/src/ui/magic-modal/magic-modal-form.js +1 -4
  51. package/esm2015/src/ui/magic-modal/magic-modal-interface.js +1 -1
  52. package/esm2015/src/ui/magic-modal/magic-overlay-container-wrapper.js +4 -21
  53. package/esm2015/src/ui/magic-modal/magic-overlay-container.js +4 -46
  54. package/esm2015/src/ui/magic-root.component.js +10 -53
  55. package/esm2015/src/ui/mgerror.magic.component.js +4 -21
  56. package/esm2015/src/ui/pipes/date.magic.pipe.js +5 -12
  57. package/esm2015/src/ui/pipes/time.magic.pipe.js +4 -7
  58. package/esm2015/src/ui/router-container.magic.component.js +14 -35
  59. package/esm2015/src/ui/subform.magic.component.js +4 -23
  60. package/esm2015/src/ui/task-base.magic.component.js +4 -74
  61. package/esm2015/src/ui/utils.js +1 -20
  62. package/fesm2015/magic-xpa-angular.js +603 -1880
  63. package/fesm2015/magic-xpa-angular.js.map +1 -1
  64. package/magic-xpa-angular.d.ts +0 -3
  65. package/package.json +3 -3
  66. package/src/controls.metadata.model.d.ts +0 -16
  67. package/src/interfaces/sub-form-definition.iterface.d.ts +0 -6
  68. package/src/magic.core.module.d.ts +0 -3
  69. package/src/services/OverlayWindowService.d.ts +0 -19
  70. package/src/services/StylesMapManager.d.ts +0 -3
  71. package/src/services/accessor.magic.service.d.ts +15 -208
  72. package/src/services/commands-collector.magic.service.d.ts +0 -3
  73. package/src/services/component-list.magic.service.d.ts +0 -27
  74. package/src/services/confirmation.components.magic.provider.d.ts +0 -16
  75. package/src/services/engine.magic.service.d.ts +1 -3
  76. package/src/services/exit.magic.service.d.ts +0 -6
  77. package/src/services/magic.providers.d.ts +0 -3
  78. package/src/services/magic.services.d.ts +0 -6
  79. package/src/services/router-commands.magic.service.d.ts +0 -6
  80. package/src/services/subform.magic.service.d.ts +5 -30
  81. package/src/services/table.magic.service.d.ts +0 -55
  82. package/src/services/task.magics.service.d.ts +1 -294
  83. package/src/services/title.magic.service.d.ts +0 -11
  84. package/src/ui/GuiInteractiveExecutor.d.ts +1 -3
  85. package/src/ui/components/base-magic-alert.component.d.ts +0 -16
  86. package/src/ui/components/base-magic-confirm.component.d.ts +0 -18
  87. package/src/ui/components/magic-alert.component.d.ts +0 -3
  88. package/src/ui/components/magic-confirmation-box.component.d.ts +0 -3
  89. package/src/ui/directives/NonMagicControlDirective.d.ts +0 -41
  90. package/src/ui/directives/magic/checkbox-noformcontrol.magic.directive.d.ts +0 -6
  91. package/src/ui/directives/magic/checkbox.magic.directive.d.ts +0 -9
  92. package/src/ui/directives/magic/combobox.magic.directive.d.ts +0 -6
  93. package/src/ui/directives/magic/form-controls/control-value-accessors/checkbox.cva.directive.d.ts +0 -6
  94. package/src/ui/directives/magic/form-controls/control-value-accessors/date.cva.directive.d.ts +0 -12
  95. package/src/ui/directives/magic/form-controls/control-value-accessors/default.cva.directive.d.ts +0 -6
  96. package/src/ui/directives/magic/input.noformcontrol.magic.directive.d.ts +0 -6
  97. package/src/ui/directives/magic/nocontrol.magic.directive.d.ts +0 -3
  98. package/src/ui/directives/magic/row.magic.directive.d.ts +0 -15
  99. package/src/ui/directives/magic-focus.directive.d.ts +0 -3
  100. package/src/ui/directives/magic.directive.d.ts +0 -78
  101. package/src/ui/directives/magicViewContainerRef.directive.d.ts +0 -3
  102. package/src/ui/directives/mgformat.magic.directive.d.ts +0 -40
  103. package/src/ui/directives/range-validator.magic.directive.d.ts +0 -16
  104. package/src/ui/magic-confirmationBox.d.ts +0 -19
  105. package/src/ui/magic-modal/base-magic-overlay-container.d.ts +0 -9
  106. package/src/ui/magic-modal/magic-modal-form.d.ts +0 -3
  107. package/src/ui/magic-modal/magic-modal-interface.d.ts +0 -27
  108. package/src/ui/magic-modal/magic-overlay-container-wrapper.d.ts +0 -20
  109. package/src/ui/magic-modal/magic-overlay-container.d.ts +0 -51
  110. package/src/ui/magic-root.component.d.ts +0 -42
  111. package/src/ui/mgerror.magic.component.d.ts +0 -19
  112. package/src/ui/pipes/date.magic.pipe.d.ts +0 -6
  113. package/src/ui/pipes/time.magic.pipe.d.ts +0 -3
  114. package/src/ui/router-container.magic.component.d.ts +5 -21
  115. package/src/ui/subform.magic.component.d.ts +0 -21
  116. package/src/ui/task-base.magic.component.d.ts +0 -72
  117. package/src/ui/utils.d.ts +0 -3
@@ -8,13 +8,7 @@ import { MgDateFormatter } from "../pipes/date.magic.pipe";
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "./magic.directive";
10
10
  import * as i2 from "../../services/task.magics.service";
11
- /**
12
- * Perform Magic validation on input controls which hold alphanumeric strings
13
- */
14
11
  export class MgformatMagicDirective {
15
- /**
16
- * @ignore
17
- */
18
12
  constructor(magicDir, _task) {
19
13
  this.magicDir = magicDir;
20
14
  this._task = _task;
@@ -22,20 +16,12 @@ export class MgformatMagicDirective {
22
16
  ngAfterViewInit() {
23
17
  let control = this._task.getFormControl(this.magicDir.rowId, this.magicDir.id);
24
18
  if (control != null && this._task.mgInputDateFormat == null) {
25
- // get the first date control's format.
26
19
  let pic = this._task.GetControlPictureMask(this.magicDir.id);
27
20
  if (pic.getAttr() == StorageAttribute.DATE) {
28
21
  this.formatDate(pic);
29
22
  }
30
23
  }
31
24
  }
32
- /**
33
- * @ignore
34
- */
35
- /**
36
- * This can be used to set pattern
37
- * On input, verifies the input matches the required mask
38
- */
39
25
  onFocusEvent($event) {
40
26
  let control = this._task.getFormControl(this.magicDir.rowId, this.magicDir.id);
41
27
  if (control != null) {
@@ -60,10 +46,6 @@ export class MgformatMagicDirective {
60
46
  }
61
47
  }
62
48
  }
63
- /**
64
- * @ignore
65
- */
66
- // This can be used to implement uppercase/lower case
67
49
  onChangeEvent($event) {
68
50
  let control = this._task.getFormControl(this.magicDir.rowId, this.magicDir.id);
69
51
  let attr = this._task.Records.list[0].getControlMetadata(this.magicDir.id).dataType;
@@ -81,9 +63,6 @@ export class MgformatMagicDirective {
81
63
  let mgDateFormatter = new MgDateFormatter();
82
64
  this._task.mgInputDateFormat = mgDateFormatter.ConvertMgDateFormatToAngular(pic.getMask());
83
65
  }
84
- /**
85
- * @ignore
86
- */
87
66
  formatAlphaUnicode(control) {
88
67
  let value = control.value;
89
68
  if (value !== null && value.length > 0) {
@@ -109,9 +88,6 @@ export class MgformatMagicDirective {
109
88
  control.setValue(valueStr.ToString());
110
89
  }
111
90
  }
112
- /**
113
- * @ignore
114
- */
115
91
  formatBoolean(control) {
116
92
  let value = control.value;
117
93
  if (value !== null && value.length > 0) {
@@ -124,12 +100,6 @@ export class MgformatMagicDirective {
124
100
  }
125
101
  }
126
102
  }
127
- /**
128
- * @ignore
129
- */
130
- /// <summary>
131
- /// generate pattern from fld's format
132
- /// </summary>
133
103
  generatePattern(attribute, pic) {
134
104
  let pattern = "";
135
105
  switch (attribute) {
@@ -143,12 +113,6 @@ export class MgformatMagicDirective {
143
113
  }
144
114
  return pattern;
145
115
  }
146
- /**
147
- * @ignore
148
- */
149
- /// <summary>
150
- /// generate pattern for Alpha
151
- /// </summary>
152
116
  generatePatternForNumber(pic) {
153
117
  let patternStr = new StringBuilder();
154
118
  patternStr.Append("^");
@@ -161,9 +125,6 @@ export class MgformatMagicDirective {
161
125
  patternStr.Append("$");
162
126
  return patternStr.ToString();
163
127
  }
164
- /**
165
- * @ignore
166
- */
167
128
  isPatternGenerationNeeded(attr, pic) {
168
129
  switch (attr) {
169
130
  case StorageAttribute.NUMERIC:
@@ -173,12 +134,6 @@ export class MgformatMagicDirective {
173
134
  return (pic.getMaskChars() > 0) ? true : false;
174
135
  }
175
136
  }
176
- /**
177
- * @ignore
178
- */
179
- /// <summary>
180
- /// generate pattern for Alpha
181
- /// </summary>
182
137
  generatePatternForAlpha(pic) {
183
138
  let cnt = 0;
184
139
  let inputAllChars = false;
@@ -189,7 +144,6 @@ export class MgformatMagicDirective {
189
144
  let pattern = new StringBuilder();
190
145
  pattern.Append("^");
191
146
  for (let i = 0; i < mask.length;) {
192
- //start new subset , if mask[i] is one of these.
193
147
  if (inputAllChars && (mask.charCodeAt(i) == PICInterface.PIC_N || mask.charCodeAt(i) == PICInterface.PIC_U || mask.charCodeAt(i) == PICInterface.PIC_L
194
148
  || mask.charCodeAt(i) == PICInterface.PIC_X)) {
195
149
  pattern.Append("(");
@@ -235,13 +189,9 @@ export class MgformatMagicDirective {
235
189
  pattern.Append("$");
236
190
  return pattern.ToString();
237
191
  }
238
- /**
239
- * @ignore
240
- */
241
192
  getDirectiveCount(mask, idx, pattern, changeInPattern) {
242
193
  changeInPattern.value = false;
243
194
  let patternCount = 0;
244
- // find max chars
245
195
  while (idx < mask.length && this.IsPatternMatches(mask.charCodeAt(idx).toString(), pattern)) {
246
196
  patternCount++;
247
197
  idx++;
@@ -250,9 +200,6 @@ export class MgformatMagicDirective {
250
200
  changeInPattern.value = true;
251
201
  return patternCount;
252
202
  }
253
- /**
254
- * @ignore
255
- */
256
203
  IsPatternMatches(mask, pattern) {
257
204
  for (let i = 0; i < pattern.length; i++)
258
205
  if (mask == pattern[i])
@@ -260,11 +207,11 @@ export class MgformatMagicDirective {
260
207
  return false;
261
208
  }
262
209
  }
263
- /** @nocollapse */ MgformatMagicDirective.ɵfac = function MgformatMagicDirective_Factory(t) { return new (t || MgformatMagicDirective)(i0.ɵɵdirectiveInject(i1.MagicDirective), i0.ɵɵdirectiveInject(i2.TaskMagicService)); };
264
- /** @nocollapse */ MgformatMagicDirective.ɵdir = i0.ɵɵdefineDirective({ type: MgformatMagicDirective, selectors: [["", "mgFormat", ""]], hostBindings: function MgformatMagicDirective_HostBindings(rf, ctx) { if (rf & 1) {
210
+ MgformatMagicDirective.ɵfac = function MgformatMagicDirective_Factory(t) { return new (t || MgformatMagicDirective)(i0.ɵɵdirectiveInject(i1.MagicDirective), i0.ɵɵdirectiveInject(i2.TaskMagicService)); };
211
+ MgformatMagicDirective.ɵdir = i0.ɵɵdefineDirective({ type: MgformatMagicDirective, selectors: [["", "mgFormat", ""]], hostBindings: function MgformatMagicDirective_HostBindings(rf, ctx) { if (rf & 1) {
265
212
  i0.ɵɵlistener("focus", function MgformatMagicDirective_focus_HostBindingHandler($event) { return ctx.onFocusEvent($event); })("change", function MgformatMagicDirective_change_HostBindingHandler($event) { return ctx.onChangeEvent($event); });
266
213
  } } });
267
- /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(MgformatMagicDirective, [{
214
+ (function () { i0.ɵsetClassMetadata(MgformatMagicDirective, [{
268
215
  type: Directive,
269
216
  args: [{
270
217
  selector: '[mgFormat]'
@@ -276,4 +223,4 @@ export class MgformatMagicDirective {
276
223
  type: HostListener,
277
224
  args: ['change', ['$event']]
278
225
  }] }); })();
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWdmb3JtYXQubWFnaWMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvZGlyZWN0aXZlcy9tZ2Zvcm1hdC5tYWdpYy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1RCxPQUFPLEVBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUE7QUFDL0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBa0IsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRXpEOztHQUVHO0FBTUgsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQzs7T0FFRztJQUNILFlBQ1ksUUFBd0IsRUFDeEIsS0FBdUI7UUFEdkIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBa0I7SUFFL0IsQ0FBQztJQUVMLGVBQWU7UUFDYixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBRSxDQUFDO1FBRWhGLElBQUcsT0FBTyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixJQUFJLElBQUksRUFBRTtZQUMxRCx1Q0FBdUM7WUFDdkMsSUFBSSxHQUFHLEdBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2xFLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLGdCQUFnQixDQUFDLElBQUksRUFBRztnQkFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN0QjtTQUNGO0lBQ0gsQ0FBQztJQUdEOztPQUVHO0lBQ0g7OztPQUdHO0lBRUksWUFBWSxDQUFDLE1BQU07UUFDeEIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUUsQ0FBQztRQUVoRixJQUFHLE9BQU8sSUFBSSxJQUFJLEVBQUc7WUFDbkIsSUFBSSxJQUFJLEdBQXFCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUN0RyxJQUFJLElBQUksSUFBSSxnQkFBZ0IsQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLGdCQUFnQixDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksZ0JBQWdCLENBQUMsT0FBTyxFQUFFO2dCQUMxRyxJQUFJLEdBQUcsR0FBUSxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBRWxFLElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRTtvQkFDN0MsSUFBSSxPQUFPLEdBQVcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7b0JBQ3RELElBQUksT0FBTyxDQUFDLFNBQVMsSUFBSSxJQUFJO3dCQUMzQixPQUFPLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzs7d0JBRW5ELE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMzRTtxQkFDSTtvQkFDSCxJQUFJLElBQUksSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLElBQUksSUFBSSxJQUFJLGdCQUFnQixDQUFDLE9BQU8sRUFBRTt3QkFDbkUsSUFBSSxPQUFPLENBQUMsU0FBUyxJQUFJLElBQUk7NEJBQzFCLE9BQU8sQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDOzs0QkFFakUsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQzdGO2lCQUNGO2FBQ0Y7U0FDRjtJQUNILENBQUM7SUFFRDs7TUFFRTtJQUNGLHFEQUFxRDtJQUU5QyxhQUFhLENBQUMsTUFBTTtRQUN6QixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBRSxDQUFDO1FBQ2hGLElBQUksSUFBSSxHQUFxQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFFdEcsUUFBUyxJQUFJLEVBQ2I7WUFDRSxLQUFLLGdCQUFnQixDQUFDLEtBQUssQ0FBQztZQUM1QixLQUFLLGdCQUFnQixDQUFDLE9BQU87Z0JBQzNCLElBQUksQ0FBQyxrQkFBa0IsQ0FBRSxPQUFPLENBQUMsQ0FBQztnQkFDbEMsTUFBTTtZQUNSLEtBQUssZ0JBQWdCLENBQUMsT0FBTztnQkFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDNUIsTUFBTTtTQUNUO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFRO1FBQ2hCLElBQUksZUFBZSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxlQUFlLENBQUMsNEJBQTRCLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUNEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsT0FBd0I7UUFDekMsSUFBSSxLQUFLLEdBQVcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUVsQyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDdEMsTUFBTSxRQUFRLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDNUUsSUFBSSxRQUFRLElBQUksSUFBSTtnQkFDbEIsS0FBSyxHQUFHLFFBQVEsQ0FBQztZQUVuQixJQUFJLEdBQUcsR0FBUSxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEUsSUFBSSxJQUFJLEdBQVcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pDLElBQUksUUFBUSxHQUFrQixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBRWxELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM3QyxRQUFRLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQzFCLEtBQUssWUFBWSxDQUFDLEtBQUs7d0JBQ3JCLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO3dCQUMvQyxNQUFNO29CQUNSLEtBQUssWUFBWSxDQUFDLEtBQUs7d0JBQ3JCLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO3dCQUMvQyxNQUFNO29CQUNSO3dCQUNFLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUNqQyxNQUFNO2lCQUNUO2FBQ0Y7WUFFRCxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBRXZDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYSxDQUFFLE9BQXdCO1FBQ3JDLElBQUksS0FBSyxHQUFXLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDbEMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3RDLElBQUksUUFBUSxHQUFXLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFHLEtBQUssQ0FBQyxDQUFDO1lBQzVFLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRTtnQkFDMUQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM1QjtpQkFBTTtnQkFDTCxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3pCO1NBQ0Y7SUFDSCxDQUFDO0lBR0Q7O09BRUc7SUFDSCxhQUFhO0lBQ2Isd0NBQXdDO0lBQ3hDLGNBQWM7SUFDYixlQUFlLENBQUUsU0FBMkIsRUFBRSxHQUFRO1FBQ3JELElBQUksT0FBTyxHQUFXLEVBQUUsQ0FBQztRQUV6QixRQUFRLFNBQVMsRUFDakI7WUFDQSxLQUFLLGdCQUFnQixDQUFDLE9BQU87Z0JBQzNCLE9BQU8sR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzdDLE1BQU07WUFDUixLQUFLLGdCQUFnQixDQUFDLEtBQUssQ0FBQztZQUM1QixLQUFLLGdCQUFnQixDQUFDLE9BQU87Z0JBQzNCLE9BQU8sR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlDLE1BQU07U0FDTDtRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7T0FFRztJQUNILGFBQWE7SUFDYiw4QkFBOEI7SUFDOUIsY0FBYztJQUNmLHdCQUF3QixDQUFDLEdBQVE7UUFDOUIsSUFBSSxVQUFVLEdBQWtCLElBQUksYUFBYSxFQUFHLENBQUM7UUFFckQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QixJQUFJLEdBQUcsQ0FBQyxVQUFVLEVBQUU7WUFDbEIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLEdBQUcsQ0FBQyxTQUFTLEVBQUU7WUFDakIsVUFBVSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzlELElBQUksR0FBRyxDQUFDLE1BQU0sRUFBRTtZQUNkLFVBQVUsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDNUQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2QixPQUFPLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUE7O09BRUc7SUFDSix5QkFBeUIsQ0FBRSxJQUF1QixFQUFFLEdBQVM7UUFFM0QsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLGdCQUFnQixDQUFDLE9BQU87Z0JBQzNCLE9BQU8sSUFBSSxDQUFDO1lBRWQsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7WUFDNUIsS0FBSyxnQkFBZ0IsQ0FBQyxPQUFPO2dCQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFQTs7T0FFRztJQUNILGFBQWE7SUFDYiw4QkFBOEI7SUFDOUIsY0FBYztJQUNmLHVCQUF1QixDQUFDLEdBQVM7UUFDaEMsSUFBSSxHQUFHLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksYUFBYSxHQUFZLEtBQUssQ0FBQztRQUNuQyxJQUFJLFFBQVEsR0FBWSxLQUFLLENBQUM7UUFDOUIsSUFBSSxHQUFHLEdBQVEsSUFBSSxDQUFDO1FBQ3BCLElBQUksZUFBZSxHQUFZLEtBQUssQ0FBQztRQUdwQyxJQUFLLElBQUksR0FBVyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEMsSUFBSyxPQUFPLEdBQWtCLElBQUksYUFBYSxFQUFFLENBQUM7UUFFbkQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FDdkM7WUFDRSxnREFBZ0Q7WUFDaEQsSUFBSSxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLEtBQUs7bUJBQy9JLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUNoRDtnQkFDRSxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNwQixRQUFRLEdBQUcsSUFBSSxDQUFDO2dCQUNoQixhQUFhLEdBQUcsS0FBSyxDQUFDO2FBQ3ZCO1lBRUQsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUNSLFFBQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFDMUI7Z0JBQ0UsS0FBSyxZQUFZLENBQUMsS0FBSyxDQUFDO2dCQUN4QixLQUFLLFlBQVksQ0FBQyxLQUFLLENBQUM7Z0JBQ3hCLEtBQUssWUFBWSxDQUFDLEtBQUs7b0JBQ3ZCO3dCQUNFLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3BCLElBQUksZ0JBQWdCLEdBQXNCLElBQUksUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO3dCQUN2RSxJQUFJLElBQUksR0FBWSxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO3dCQUNsRCxJQUFJLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDdEMsSUFBSSxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ3RDLEdBQUcsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQzt3QkFDOUQsYUFBYSxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQzt3QkFDdkMsQ0FBQyxJQUFJLEdBQUcsQ0FBQztxQkFFVjtvQkFDQyxNQUFNO2dCQUNSLEtBQUssWUFBWSxDQUFDLEtBQUs7b0JBQ3ZCO3dCQUNFLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3RCLElBQUksZ0JBQWdCLEdBQXNCLElBQUksUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO3dCQUN2RSxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO3dCQUN2RixhQUFhLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO3dCQUN2QyxDQUFDLElBQUksR0FBRyxDQUFDO3FCQUNWO29CQUNDLE1BQU07Z0JBRVI7b0JBQ0UsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDeEIsQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTTthQUNUO1lBQ0QsSUFBSSxHQUFHLEdBQUcsQ0FBQztnQkFDVCxPQUFPLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLElBQUksUUFBUTtnQkFDVixPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RCLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FFbEI7UUFDQSxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE9BQU8sT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFQTs7T0FFRztJQUNILGlCQUFpQixDQUFDLElBQVksRUFBRSxHQUFXLEVBQUUsT0FBZSxFQUFFLGVBQWtDO1FBRTlGLGVBQWUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQztRQUU3QixpQkFBaUI7UUFDakIsT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQUMsRUFDM0Y7WUFBRSxZQUFZLEVBQUUsQ0FBQztZQUFDLEdBQUcsRUFBRSxDQUFDO1NBQUU7UUFHMUIsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU07WUFDbkIsZUFBZSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFFL0IsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsSUFBWSxFQUFFLE9BQWU7UUFFNUMsS0FBSyxJQUFJLENBQUMsR0FBVSxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFO1lBQzlDLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzsrR0FyU1Usc0JBQXNCOzhFQUF0QixzQkFBc0I7eUdBQXRCLHdCQUFvQiwwRkFBcEIseUJBQXFCOztrREFBckIsc0JBQXNCO2NBTGxDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTthQUN2QjtnR0FrQ1EsWUFBWTtrQkFEbEIsWUFBWTttQkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFpQzFCLGFBQWE7a0JBRG5CLFlBQVk7bUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VGFza01hZ2ljU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3Rhc2subWFnaWNzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdHJpbmdCdWlsZGVyLCBSZWZQYXJhbX0gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCJcclxuaW1wb3J0IHtQSUNJbnRlcmZhY2UsIFN0b3JhZ2VBdHRyaWJ1dGV9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCJcclxuaW1wb3J0IHtNYWdpY0RpcmVjdGl2ZX0gZnJvbSBcIi4vbWFnaWMuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7QWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JzfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtQSUN9IGZyb20gXCJAbWFnaWMteHBhL2d1aVwiO1xyXG5pbXBvcnQge01nRGF0ZUZvcm1hdHRlcn0gZnJvbSBcIi4uL3BpcGVzL2RhdGUubWFnaWMucGlwZVwiO1xyXG5cclxuLyoqXHJcbiAqIFBlcmZvcm0gTWFnaWMgdmFsaWRhdGlvbiBvbiBpbnB1dCBjb250cm9scyB3aGljaCBob2xkIGFscGhhbnVtZXJpYyBzdHJpbmdzXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1ttZ0Zvcm1hdF0nXHJcbn0pXHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIE1nZm9ybWF0TWFnaWNEaXJlY3RpdmUge1xyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBtYWdpY0RpcjogTWFnaWNEaXJlY3RpdmUgLFxyXG4gICAgcHJvdGVjdGVkIF90YXNrOiBUYXNrTWFnaWNTZXJ2aWNlXHJcblxyXG4gICkgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGxldCBjb250cm9sID0gdGhpcy5fdGFzay5nZXRGb3JtQ29udHJvbCh0aGlzLm1hZ2ljRGlyLnJvd0lkLCB0aGlzLm1hZ2ljRGlyLmlkICk7XHJcblxyXG4gICAgaWYoY29udHJvbCAhPSBudWxsICYmIHRoaXMuX3Rhc2subWdJbnB1dERhdGVGb3JtYXQgPT0gbnVsbCkge1xyXG4gICAgICAvLyBnZXQgdGhlIGZpcnN0IGRhdGUgY29udHJvbCdzIGZvcm1hdC5cclxuICAgICAgbGV0IHBpYzogUElDID0gdGhpcy5fdGFzay5HZXRDb250cm9sUGljdHVyZU1hc2sodGhpcy5tYWdpY0Rpci5pZCk7XHJcbiAgICAgIGlmIChwaWMuZ2V0QXR0cigpID09IFN0b3JhZ2VBdHRyaWJ1dGUuREFURSApIHtcclxuICAgICAgICB0aGlzLmZvcm1hdERhdGUocGljKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICAvKipcclxuICAgKiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNldCBwYXR0ZXJuXHJcbiAgICogT24gaW5wdXQsIHZlcmlmaWVzIHRoZSBpbnB1dCBtYXRjaGVzIHRoZSByZXF1aXJlZCBtYXNrXHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBvbkZvY3VzRXZlbnQoJGV2ZW50KXtcclxuICAgIGxldCBjb250cm9sID0gdGhpcy5fdGFzay5nZXRGb3JtQ29udHJvbCh0aGlzLm1hZ2ljRGlyLnJvd0lkLCB0aGlzLm1hZ2ljRGlyLmlkICk7XHJcblxyXG4gICAgaWYoY29udHJvbCAhPSBudWxsICkge1xyXG4gICAgICBsZXQgYXR0cjogU3RvcmFnZUF0dHJpYnV0ZSA9IHRoaXMuX3Rhc2suUmVjb3Jkcy5saXN0WzBdLmdldENvbnRyb2xNZXRhZGF0YSh0aGlzLm1hZ2ljRGlyLmlkKS5kYXRhVHlwZTtcclxuICAgICAgaWYgKGF0dHIgPT0gU3RvcmFnZUF0dHJpYnV0ZS5OVU1FUklDIHx8IGF0dHIgPT0gU3RvcmFnZUF0dHJpYnV0ZS5BTFBIQSB8fCBhdHRyID09IFN0b3JhZ2VBdHRyaWJ1dGUuVU5JQ09ERSkge1xyXG4gICAgICAgIGxldCBwaWM6IFBJQyA9IHRoaXMuX3Rhc2suR2V0Q29udHJvbFBpY3R1cmVNYXNrKHRoaXMubWFnaWNEaXIuaWQpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pc1BhdHRlcm5HZW5lcmF0aW9uTmVlZGVkKGF0dHIsIHBpYykpIHtcclxuICAgICAgICAgIGxldCBwYXR0ZXJuOiBzdHJpbmcgPSB0aGlzLmdlbmVyYXRlUGF0dGVybihhdHRyLCBwaWMpO1xyXG4gICAgICAgICAgaWYgKGNvbnRyb2wudmFsaWRhdG9yID09IG51bGwpXHJcbiAgICAgICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnBhdHRlcm4ocGF0dGVybikpO1xyXG4gICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICBjb250cm9sLnNldFZhbGlkYXRvcnMoW2NvbnRyb2wudmFsaWRhdG9yLCBWYWxpZGF0b3JzLnBhdHRlcm4ocGF0dGVybildKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoYXR0ciA9PSBTdG9yYWdlQXR0cmlidXRlLkFMUEhBIHx8IGF0dHIgPT0gU3RvcmFnZUF0dHJpYnV0ZS5VTklDT0RFKSB7XHJcbiAgICAgICAgICAgICAgIGlmIChjb250cm9sLnZhbGlkYXRvciA9PSBudWxsKVxyXG4gICAgICAgICAgICAgICAgICBjb250cm9sLnNldFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5tYXhMZW5ndGgocGljLmdldE1hc2tMZW5ndGgoKSkpO1xyXG4gICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhbY29udHJvbC52YWxpZGF0b3IsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKHBpYy5nZXRNYXNrTGVuZ3RoKCkpXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgKi9cclxuICAvLyBUaGlzIGNhbiBiZSB1c2VkIHRvIGltcGxlbWVudCB1cHBlcmNhc2UvbG93ZXIgY2FzZVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NoYW5nZScsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIG9uQ2hhbmdlRXZlbnQoJGV2ZW50KXtcclxuICAgIGxldCBjb250cm9sID0gdGhpcy5fdGFzay5nZXRGb3JtQ29udHJvbCh0aGlzLm1hZ2ljRGlyLnJvd0lkLCB0aGlzLm1hZ2ljRGlyLmlkICk7XHJcbiAgICBsZXQgYXR0cjogU3RvcmFnZUF0dHJpYnV0ZSA9IHRoaXMuX3Rhc2suUmVjb3Jkcy5saXN0WzBdLmdldENvbnRyb2xNZXRhZGF0YSh0aGlzLm1hZ2ljRGlyLmlkKS5kYXRhVHlwZTtcclxuXHJcbiAgICBzd2l0Y2ggIChhdHRyKVxyXG4gICAge1xyXG4gICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuQUxQSEE6XHJcbiAgICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5VTklDT0RFOlxyXG4gICAgICAgIHRoaXMuZm9ybWF0QWxwaGFVbmljb2RlIChjb250cm9sKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLkJPT0xFQU46XHJcbiAgICAgICAgdGhpcy5mb3JtYXRCb29sZWFuKGNvbnRyb2wpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZm9ybWF0RGF0ZShwaWM6IFBJQyk6IHZvaWQge1xyXG4gICAgIGxldCBtZ0RhdGVGb3JtYXR0ZXIgPSBuZXcgTWdEYXRlRm9ybWF0dGVyKCk7XHJcbiAgICAgIHRoaXMuX3Rhc2subWdJbnB1dERhdGVGb3JtYXQgPSBtZ0RhdGVGb3JtYXR0ZXIuQ29udmVydE1nRGF0ZUZvcm1hdFRvQW5ndWxhcihwaWMuZ2V0TWFzaygpKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGZvcm1hdEFscGhhVW5pY29kZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB2b2lkIHtcclxuICAgIGxldCB2YWx1ZTogc3RyaW5nID0gY29udHJvbC52YWx1ZTtcclxuXHJcbiAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBuZXdWYWx1ZTogc3RyaW5nID0gdGhpcy5fdGFzay5HZXRSYW5nZWRWYWx1ZSh0aGlzLm1hZ2ljRGlyLmlkLCB2YWx1ZSk7XHJcbiAgICAgIGlmIChuZXdWYWx1ZSAhPSBudWxsKVxyXG4gICAgICAgIHZhbHVlID0gbmV3VmFsdWU7XHJcblxyXG4gICAgICBsZXQgcGljOiBQSUMgPSB0aGlzLl90YXNrLkdldENvbnRyb2xQaWN0dXJlTWFzayh0aGlzLm1hZ2ljRGlyLmlkKTtcclxuICAgICAgbGV0IG1hc2s6IHN0cmluZyA9IHBpYy5nZXRNYXNrKCk7XHJcbiAgICAgIGxldCB2YWx1ZVN0cjogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7XHJcblxyXG4gICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBzd2l0Y2ggKG1hc2suY2hhckNvZGVBdChpKSkge1xyXG4gICAgICAgICAgY2FzZSBQSUNJbnRlcmZhY2UuUElDX1U6XHJcbiAgICAgICAgICAgIHZhbHVlU3RyLkFwcGVuZCh2YWx1ZS5jaGFyQXQoaSkudG9VcHBlckNhc2UoKSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBQSUNJbnRlcmZhY2UuUElDX0w6XHJcbiAgICAgICAgICAgIHZhbHVlU3RyLkFwcGVuZCh2YWx1ZS5jaGFyQXQoaSkudG9Mb3dlckNhc2UoKSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgdmFsdWVTdHIuQXBwZW5kKHZhbHVlLmNoYXJBdChpKSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgY29udHJvbC5zZXRWYWx1ZSh2YWx1ZVN0ci5Ub1N0cmluZygpKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgZm9ybWF0Qm9vbGVhbiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogdm9pZCAge1xyXG4gICAgbGV0IHZhbHVlOiBzdHJpbmcgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgaWYgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IG5ld1ZhbHVlOiBzdHJpbmcgPSB0aGlzLl90YXNrLkdldFJhbmdlZFZhbHVlICh0aGlzLm1hZ2ljRGlyLmlkICwgdmFsdWUpO1xyXG4gICAgICBpZiAobmV3VmFsdWUudG9VcHBlckNhc2UoKS5zdGFydHNXaXRoKHZhbHVlLnRvVXBwZXJDYXNlKCkpKSB7XHJcbiAgICAgICAgY29udHJvbC5zZXRWYWx1ZShuZXdWYWx1ZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBnZW5lcmF0ZSBwYXR0ZXJuIGZyb20gIGZsZCdzICBmb3JtYXRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gICBnZW5lcmF0ZVBhdHRlcm4gKGF0dHJpYnV0ZTogU3RvcmFnZUF0dHJpYnV0ZSwgcGljOiBQSUMpOiBzdHJpbmcge1xyXG4gICAgbGV0IHBhdHRlcm46IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgc3dpdGNoIChhdHRyaWJ1dGUpXHJcbiAgICB7XHJcbiAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuTlVNRVJJQzpcclxuICAgICAgcGF0dGVybiA9IHRoaXMuZ2VuZXJhdGVQYXR0ZXJuRm9yTnVtYmVyKHBpYyk7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLkFMUEhBOlxyXG4gICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLlVOSUNPREU6XHJcbiAgICAgIHBhdHRlcm4gPSB0aGlzLmdlbmVyYXRlUGF0dGVybkZvckFscGhhKHBpYyk7XHJcbiAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcGF0dGVybjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGdlbmVyYXRlIHBhdHRlcm4gZm9yIEFscGhhXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuIGdlbmVyYXRlUGF0dGVybkZvck51bWJlcihwaWM6IFBJQyk6IHN0cmluZyB7XHJcbiAgICBsZXQgcGF0dGVyblN0cjogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyICgpO1xyXG5cclxuICAgIHBhdHRlcm5TdHIuQXBwZW5kKFwiXlwiKTtcclxuICAgIGlmIChwaWMuaXNOZWdhdGl2ZSgpKVxyXG4gICAgICBwYXR0ZXJuU3RyLkFwcGVuZChcIi0/XCIpO1xyXG4gICAgaWYgKHBpYy5nZXRXaG9sZXMoKSlcclxuICAgICAgcGF0dGVyblN0ci5BcHBlbmRGb3JtYXQoXCJcXFxcZHt7MH0sezF9fVwiLCAwLCBwaWMuZ2V0V2hvbGVzKCkpO1xyXG4gICAgaWYgKHBpYy5nZXREZWMoKSlcclxuICAgICAgcGF0dGVyblN0ci5BcHBlbmRGb3JtYXQoXCIoXFxcXC5cXFxcZHsxLHswfX0pP1wiLCBwaWMuZ2V0RGVjKCkpO1xyXG4gICAgcGF0dGVyblN0ci5BcHBlbmQoXCIkXCIpO1xyXG5cclxuICAgIHJldHVybiBwYXR0ZXJuU3RyLlRvU3RyaW5nKCk7XHJcbiB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuIGlzUGF0dGVybkdlbmVyYXRpb25OZWVkZWQgKGF0dHIgOiBTdG9yYWdlQXR0cmlidXRlLCBwaWMgOiBQSUMpOiBib29sZWFuIHtcclxuXHJcbiAgIHN3aXRjaCAoYXR0cikge1xyXG4gICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5OVU1FUklDOlxyXG4gICAgICAgcmV0dXJuIHRydWU7XHJcblxyXG4gICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5BTFBIQTpcclxuICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuVU5JQ09ERTpcclxuICAgICAgIHJldHVybiAocGljLmdldE1hc2tDaGFycygpID4gMCkgPyB0cnVlIDogZmFsc2U7XHJcbiAgIH1cclxuIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gZ2VuZXJhdGUgcGF0dGVybiBmb3IgQWxwaGFcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gZ2VuZXJhdGVQYXR0ZXJuRm9yQWxwaGEocGljIDogUElDKTogc3RyaW5nIHtcclxuICBsZXQgY250OiBudW1iZXIgPSAwO1xyXG4gIGxldCBpbnB1dEFsbENoYXJzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbGV0IGNsb3NlU2V0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgbGV0IHZhbDogYW55ID0gbnVsbDtcclxuICBsZXQgYWxsb3dNdWxpdGlsaW5lOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICAgbGV0ICBtYXNrOiBzdHJpbmcgPSBwaWMuZ2V0TWFzaygpO1xyXG4gICBsZXQgIHBhdHRlcm46IFN0cmluZ0J1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcigpO1xyXG5cclxuICBwYXR0ZXJuLkFwcGVuZChcIl5cIik7XHJcbiAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IG1hc2subGVuZ3RoOylcclxuICB7XHJcbiAgICAvL3N0YXJ0IG5ldyBzdWJzZXQgLCBpZiBtYXNrW2ldIGlzIG9uZSBvZiB0aGVzZS5cclxuICAgIGlmIChpbnB1dEFsbENoYXJzICYmIChtYXNrLmNoYXJDb2RlQXQoaSkgPT0gUElDSW50ZXJmYWNlLlBJQ19OIHx8IG1hc2suY2hhckNvZGVBdChpKSA9PSBQSUNJbnRlcmZhY2UuUElDX1UgfHwgbWFzay5jaGFyQ29kZUF0KGkpID09IFBJQ0ludGVyZmFjZS5QSUNfTFxyXG4gICAgICAgIHx8IG1hc2suY2hhckNvZGVBdChpKSA9PSBQSUNJbnRlcmZhY2UuUElDX1gpKVxyXG4gICAge1xyXG4gICAgICBwYXR0ZXJuLkFwcGVuZChcIihcIik7XHJcbiAgICAgIGNsb3NlU2V0ID0gdHJ1ZTtcclxuICAgICAgaW5wdXRBbGxDaGFycyA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNudCA9IDA7XHJcbiAgICBzd2l0Y2ggKG1hc2suY2hhckNvZGVBdChpKSlcclxuICAgIHtcclxuICAgICAgY2FzZSBQSUNJbnRlcmZhY2UuUElDX1U6XHJcbiAgICAgIGNhc2UgUElDSW50ZXJmYWNlLlBJQ19YOlxyXG4gICAgICBjYXNlIFBJQ0ludGVyZmFjZS5QSUNfTDpcclxuICAgICAge1xyXG4gICAgICAgIHBhdHRlcm4uQXBwZW5kKFwiLlwiKTtcclxuICAgICAgICBsZXQgaW5wdXRBbGxDaGFyc1JlZjogUmVmUGFyYW08Ym9vbGVhbj4gPSBuZXcgUmVmUGFyYW08Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgICAgIGxldCBkaXJzOiBzdHJpbmcgPSAgUElDSW50ZXJmYWNlLlBJQ19VLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgZGlycyArPSBQSUNJbnRlcmZhY2UuUElDX0wudG9TdHJpbmcoKTtcclxuICAgICAgICBkaXJzICs9IFBJQ0ludGVyZmFjZS5QSUNfWC50b1N0cmluZygpO1xyXG4gICAgICAgIGNudCA9IHRoaXMuZ2V0RGlyZWN0aXZlQ291bnQobWFzaywgaSwgZGlycywgaW5wdXRBbGxDaGFyc1JlZik7XHJcbiAgICAgICAgaW5wdXRBbGxDaGFycyA9IGlucHV0QWxsQ2hhcnNSZWYudmFsdWU7XHJcbiAgICAgICAgaSArPSBjbnQ7XHJcblxyXG4gICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgUElDSW50ZXJmYWNlLlBJQ19OOlxyXG4gICAgICB7XHJcbiAgICAgICAgcGF0dGVybi5BcHBlbmQoXCJcXFxcZFwiKTtcclxuICAgICAgICBsZXQgaW5wdXRBbGxDaGFyc1JlZjogUmVmUGFyYW08Ym9vbGVhbj4gPSBuZXcgUmVmUGFyYW08Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgICAgIGNudCA9IHRoaXMuZ2V0RGlyZWN0aXZlQ291bnQobWFzaywgaSwgUElDSW50ZXJmYWNlLlBJQ19MLnRvU3RyaW5nKCksIGlucHV0QWxsQ2hhcnNSZWYpO1xyXG4gICAgICAgIGlucHV0QWxsQ2hhcnMgPSBpbnB1dEFsbENoYXJzUmVmLnZhbHVlO1xyXG4gICAgICAgIGkgKz0gY250O1xyXG4gICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHBhdHRlcm4uQXBwZW5kKG1hc2tbaV0pO1xyXG4gICAgICAgIGkrKztcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIGlmIChjbnQgPiAwKVxyXG4gICAgICBwYXR0ZXJuLkFwcGVuZEZvcm1hdChcInt7MH0sezF9fVwiLCBpbnB1dEFsbENoYXJzID8gY250IDogMCwgY250KTtcclxuICAgIGlmIChjbG9zZVNldClcclxuICAgICAgcGF0dGVybi5BcHBlbmQoXCIpXCIpO1xyXG4gICAgY2xvc2VTZXQgPSBmYWxzZTtcclxuXHJcbiAgfVxyXG4gICBwYXR0ZXJuLkFwcGVuZChcIiRcIik7XHJcbiAgIHJldHVybiBwYXR0ZXJuLlRvU3RyaW5nKCk7XHJcbiB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBnZXREaXJlY3RpdmVDb3VudChtYXNrOiBzdHJpbmcsIGlkeDogbnVtYmVyLCBwYXR0ZXJuOiBzdHJpbmcsIGNoYW5nZUluUGF0dGVybjogUmVmUGFyYW08Ym9vbGVhbj4gKTogbnVtYmVyICB7XHJcblxyXG4gICAgY2hhbmdlSW5QYXR0ZXJuLnZhbHVlID0gZmFsc2U7XHJcbiAgICBsZXQgcGF0dGVybkNvdW50OiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8vIGZpbmQgbWF4IGNoYXJzXHJcbiAgICB3aGlsZSAoaWR4IDwgbWFzay5sZW5ndGggJiYgdGhpcy5Jc1BhdHRlcm5NYXRjaGVzKG1hc2suY2hhckNvZGVBdChpZHgpLnRvU3RyaW5nKCksIHBhdHRlcm4pKVxyXG4gICAgeyBwYXR0ZXJuQ291bnQrKzsgaWR4Kys7IH1cclxuXHJcblxyXG4gICAgaWYgKGlkeCA8IG1hc2subGVuZ3RoKVxyXG4gICAgICBjaGFuZ2VJblBhdHRlcm4udmFsdWUgPSB0cnVlO1xyXG5cclxuICAgIHJldHVybiBwYXR0ZXJuQ291bnQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgSXNQYXR0ZXJuTWF0Y2hlcyhtYXNrOiBzdHJpbmcsIHBhdHRlcm46IHN0cmluZyk6IGJvb2xlYW4ge1xyXG5cclxuICAgIGZvciAobGV0IGk6bnVtYmVyID0gMDsgaSA8IHBhdHRlcm4ubGVuZ3RoOyBpKyspXHJcbiAgICBpZiAobWFzayA9PSBwYXR0ZXJuW2ldKVxyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWdmb3JtYXQubWFnaWMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvZGlyZWN0aXZlcy9tZ2Zvcm1hdC5tYWdpYy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1RCxPQUFPLEVBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUE7QUFDL0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBa0IsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDOzs7O0FBVXpELE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsWUFDWSxRQUF3QixFQUN4QixLQUF1QjtRQUR2QixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixVQUFLLEdBQUwsS0FBSyxDQUFrQjtJQUUvQixDQUFDO0lBRUwsZUFBZTtRQUNiLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFFLENBQUM7UUFFaEYsSUFBRyxPQUFPLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksSUFBSSxFQUFFO1lBRTFELElBQUksR0FBRyxHQUFRLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFD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QUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2FBQ3ZCO2dHQWtDUSxZQUFZO2tCQURsQixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQWlDMUIsYUFBYTtrQkFEbkIsWUFBWTttQkFBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSG9zdExpc3RlbmVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUYXNrTWFnaWNTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvdGFzay5tYWdpY3Muc2VydmljZVwiO1xyXG5pbXBvcnQge1N0cmluZ0J1aWxkZXIsIFJlZlBhcmFtfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIlxyXG5pbXBvcnQge1BJQ0ludGVyZmFjZSwgU3RvcmFnZUF0dHJpYnV0ZX0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIlxyXG5pbXBvcnQge01hZ2ljRGlyZWN0aXZlfSBmcm9tIFwiLi9tYWdpYy5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvcnN9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge1BJQ30gZnJvbSBcIkBtYWdpYy14cGEvZ3VpXCI7XHJcbmltcG9ydCB7TWdEYXRlRm9ybWF0dGVyfSBmcm9tIFwiLi4vcGlwZXMvZGF0ZS5tYWdpYy5waXBlXCI7XHJcblxyXG4vKipcclxuICogUGVyZm9ybSBNYWdpYyB2YWxpZGF0aW9uIG9uIGlucHV0IGNvbnRyb2xzIHdoaWNoIGhvbGQgYWxwaGFudW1lcmljIHN0cmluZ3NcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW21nRm9ybWF0XSdcclxufSlcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTWdmb3JtYXRNYWdpY0RpcmVjdGl2ZSB7XHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIG1hZ2ljRGlyOiBNYWdpY0RpcmVjdGl2ZSAsXHJcbiAgICBwcm90ZWN0ZWQgX3Rhc2s6IFRhc2tNYWdpY1NlcnZpY2VcclxuXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgbGV0IGNvbnRyb2wgPSB0aGlzLl90YXNrLmdldEZvcm1Db250cm9sKHRoaXMubWFnaWNEaXIucm93SWQsIHRoaXMubWFnaWNEaXIuaWQgKTtcclxuXHJcbiAgICBpZihjb250cm9sICE9IG51bGwgJiYgdGhpcy5fdGFzay5tZ0lucHV0RGF0ZUZvcm1hdCA9PSBudWxsKSB7XHJcbiAgICAgIC8vIGdldCB0aGUgZmlyc3QgZGF0ZSBjb250cm9sJ3MgZm9ybWF0LlxyXG4gICAgICBsZXQgcGljOiBQSUMgPSB0aGlzLl90YXNrLkdldENvbnRyb2xQaWN0dXJlTWFzayh0aGlzLm1hZ2ljRGlyLmlkKTtcclxuICAgICAgaWYgKHBpYy5nZXRBdHRyKCkgPT0gU3RvcmFnZUF0dHJpYnV0ZS5EQVRFICkge1xyXG4gICAgICAgIHRoaXMuZm9ybWF0RGF0ZShwaWMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIC8qKlxyXG4gICAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHBhdHRlcm5cclxuICAgKiBPbiBpbnB1dCwgdmVyaWZpZXMgdGhlIGlucHV0IG1hdGNoZXMgdGhlIHJlcXVpcmVkIG1hc2tcclxuICAgKi9cclxuICBASG9zdExpc3RlbmVyKCdmb2N1cycsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIG9uRm9jdXNFdmVudCgkZXZlbnQpe1xyXG4gICAgbGV0IGNvbnRyb2wgPSB0aGlzLl90YXNrLmdldEZvcm1Db250cm9sKHRoaXMubWFnaWNEaXIucm93SWQsIHRoaXMubWFnaWNEaXIuaWQgKTtcclxuXHJcbiAgICBpZihjb250cm9sICE9IG51bGwgKSB7XHJcbiAgICAgIGxldCBhdHRyOiBTdG9yYWdlQXR0cmlidXRlID0gdGhpcy5fdGFzay5SZWNvcmRzLmxpc3RbMF0uZ2V0Q29udHJvbE1ldGFkYXRhKHRoaXMubWFnaWNEaXIuaWQpLmRhdGFUeXBlO1xyXG4gICAgICBpZiAoYXR0ciA9PSBTdG9yYWdlQXR0cmlidXRlLk5VTUVSSUMgfHwgYXR0ciA9PSBTdG9yYWdlQXR0cmlidXRlLkFMUEhBIHx8IGF0dHIgPT0gU3RvcmFnZUF0dHJpYnV0ZS5VTklDT0RFKSB7XHJcbiAgICAgICAgbGV0IHBpYzogUElDID0gdGhpcy5fdGFzay5HZXRDb250cm9sUGljdHVyZU1hc2sodGhpcy5tYWdpY0Rpci5pZCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlzUGF0dGVybkdlbmVyYXRpb25OZWVkZWQoYXR0ciwgcGljKSkge1xyXG4gICAgICAgICAgbGV0IHBhdHRlcm46IHN0cmluZyA9IHRoaXMuZ2VuZXJhdGVQYXR0ZXJuKGF0dHIsIHBpYyk7XHJcbiAgICAgICAgICBpZiAoY29udHJvbC52YWxpZGF0b3IgPT0gbnVsbClcclxuICAgICAgICAgICAgY29udHJvbC5zZXRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucGF0dGVybihwYXR0ZXJuKSk7XHJcbiAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhbY29udHJvbC52YWxpZGF0b3IsIFZhbGlkYXRvcnMucGF0dGVybihwYXR0ZXJuKV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGlmIChhdHRyID09IFN0b3JhZ2VBdHRyaWJ1dGUuQUxQSEEgfHwgYXR0ciA9PSBTdG9yYWdlQXR0cmlidXRlLlVOSUNPREUpIHtcclxuICAgICAgICAgICAgICAgaWYgKGNvbnRyb2wudmFsaWRhdG9yID09IG51bGwpXHJcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLm1heExlbmd0aChwaWMuZ2V0TWFza0xlbmd0aCgpKSk7XHJcbiAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgY29udHJvbC5zZXRWYWxpZGF0b3JzKFtjb250cm9sLnZhbGlkYXRvciwgVmFsaWRhdG9ycy5tYXhMZW5ndGgocGljLmdldE1hc2tMZW5ndGgoKSldKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAqL1xyXG4gIC8vIFRoaXMgY2FuIGJlIHVzZWQgdG8gaW1wbGVtZW50IHVwcGVyY2FzZS9sb3dlciBjYXNlXHJcbiAgQEhvc3RMaXN0ZW5lcignY2hhbmdlJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgb25DaGFuZ2VFdmVudCgkZXZlbnQpe1xyXG4gICAgbGV0IGNvbnRyb2wgPSB0aGlzLl90YXNrLmdldEZvcm1Db250cm9sKHRoaXMubWFnaWNEaXIucm93SWQsIHRoaXMubWFnaWNEaXIuaWQgKTtcclxuICAgIGxldCBhdHRyOiBTdG9yYWdlQXR0cmlidXRlID0gdGhpcy5fdGFzay5SZWNvcmRzLmxpc3RbMF0uZ2V0Q29udHJvbE1ldGFkYXRhKHRoaXMubWFnaWNEaXIuaWQpLmRhdGFUeXBlO1xyXG5cclxuICAgIHN3aXRjaCAgKGF0dHIpXHJcbiAgICB7XHJcbiAgICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5BTFBIQTpcclxuICAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLlVOSUNPREU6XHJcbiAgICAgICAgdGhpcy5mb3JtYXRBbHBoYVVuaWNvZGUgKGNvbnRyb2wpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuQk9PTEVBTjpcclxuICAgICAgICB0aGlzLmZvcm1hdEJvb2xlYW4oY29udHJvbCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtYXREYXRlKHBpYzogUElDKTogdm9pZCB7XHJcbiAgICAgbGV0IG1nRGF0ZUZvcm1hdHRlciA9IG5ldyBNZ0RhdGVGb3JtYXR0ZXIoKTtcclxuICAgICAgdGhpcy5fdGFzay5tZ0lucHV0RGF0ZUZvcm1hdCA9IG1nRGF0ZUZvcm1hdHRlci5Db252ZXJ0TWdEYXRlRm9ybWF0VG9Bbmd1bGFyKHBpYy5nZXRNYXNrKCkpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgZm9ybWF0QWxwaGFVbmljb2RlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHZvaWQge1xyXG4gICAgbGV0IHZhbHVlOiBzdHJpbmcgPSBjb250cm9sLnZhbHVlO1xyXG5cclxuICAgIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGNvbnN0IG5ld1ZhbHVlOiBzdHJpbmcgPSB0aGlzLl90YXNrLkdldFJhbmdlZFZhbHVlKHRoaXMubWFnaWNEaXIuaWQsIHZhbHVlKTtcclxuICAgICAgaWYgKG5ld1ZhbHVlICE9IG51bGwpXHJcbiAgICAgICAgdmFsdWUgPSBuZXdWYWx1ZTtcclxuXHJcbiAgICAgIGxldCBwaWM6IFBJQyA9IHRoaXMuX3Rhc2suR2V0Q29udHJvbFBpY3R1cmVNYXNrKHRoaXMubWFnaWNEaXIuaWQpO1xyXG4gICAgICBsZXQgbWFzazogc3RyaW5nID0gcGljLmdldE1hc2soKTtcclxuICAgICAgbGV0IHZhbHVlU3RyOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuXHJcbiAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHN3aXRjaCAobWFzay5jaGFyQ29kZUF0KGkpKSB7XHJcbiAgICAgICAgICBjYXNlIFBJQ0ludGVyZmFjZS5QSUNfVTpcclxuICAgICAgICAgICAgdmFsdWVTdHIuQXBwZW5kKHZhbHVlLmNoYXJBdChpKS50b1VwcGVyQ2FzZSgpKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIFBJQ0ludGVyZmFjZS5QSUNfTDpcclxuICAgICAgICAgICAgdmFsdWVTdHIuQXBwZW5kKHZhbHVlLmNoYXJBdChpKS50b0xvd2VyQ2FzZSgpKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICB2YWx1ZVN0ci5BcHBlbmQodmFsdWUuY2hhckF0KGkpKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBjb250cm9sLnNldFZhbHVlKHZhbHVlU3RyLlRvU3RyaW5nKCkpO1xyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBmb3JtYXRCb29sZWFuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB2b2lkICB7XHJcbiAgICBsZXQgdmFsdWU6IHN0cmluZyA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgbmV3VmFsdWU6IHN0cmluZyA9IHRoaXMuX3Rhc2suR2V0UmFuZ2VkVmFsdWUgKHRoaXMubWFnaWNEaXIuaWQgLCB2YWx1ZSk7XHJcbiAgICAgIGlmIChuZXdWYWx1ZS50b1VwcGVyQ2FzZSgpLnN0YXJ0c1dpdGgodmFsdWUudG9VcHBlckNhc2UoKSkpIHtcclxuICAgICAgICBjb250cm9sLnNldFZhbHVlKG5ld1ZhbHVlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb250cm9sLnNldFZhbHVlKHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGdlbmVyYXRlIHBhdHRlcm4gZnJvbSAgZmxkJ3MgIGZvcm1hdFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgIGdlbmVyYXRlUGF0dGVybiAoYXR0cmlidXRlOiBTdG9yYWdlQXR0cmlidXRlLCBwaWM6IFBJQyk6IHN0cmluZyB7XHJcbiAgICBsZXQgcGF0dGVybjogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICBzd2l0Y2ggKGF0dHJpYnV0ZSlcclxuICAgIHtcclxuICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5OVU1FUklDOlxyXG4gICAgICBwYXR0ZXJuID0gdGhpcy5nZW5lcmF0ZVBhdHRlcm5Gb3JOdW1iZXIocGljKTtcclxuICAgICAgYnJlYWs7XHJcbiAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuQUxQSEE6XHJcbiAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuVU5JQ09ERTpcclxuICAgICAgcGF0dGVybiA9IHRoaXMuZ2VuZXJhdGVQYXR0ZXJuRm9yQWxwaGEocGljKTtcclxuICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBwYXR0ZXJuO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gZ2VuZXJhdGUgcGF0dGVybiBmb3IgQWxwaGFcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gZ2VuZXJhdGVQYXR0ZXJuRm9yTnVtYmVyKHBpYzogUElDKTogc3RyaW5nIHtcclxuICAgIGxldCBwYXR0ZXJuU3RyOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIgKCk7XHJcblxyXG4gICAgcGF0dGVyblN0ci5BcHBlbmQoXCJeXCIpO1xyXG4gICAgaWYgKHBpYy5pc05lZ2F0aXZlKCkpXHJcbiAgICAgIHBhdHRlcm5TdHIuQXBwZW5kKFwiLT9cIik7XHJcbiAgICBpZiAocGljLmdldFdob2xlcygpKVxyXG4gICAgICBwYXR0ZXJuU3RyLkFwcGVuZEZvcm1hdChcIlxcXFxke3swfSx7MX19XCIsIDAsIHBpYy5nZXRXaG9sZXMoKSk7XHJcbiAgICBpZiAocGljLmdldERlYygpKVxyXG4gICAgICBwYXR0ZXJuU3RyLkFwcGVuZEZvcm1hdChcIihcXFxcLlxcXFxkezEsezB9fSk/XCIsIHBpYy5nZXREZWMoKSk7XHJcbiAgICBwYXR0ZXJuU3RyLkFwcGVuZChcIiRcIik7XHJcblxyXG4gICAgcmV0dXJuIHBhdHRlcm5TdHIuVG9TdHJpbmcoKTtcclxuIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gaXNQYXR0ZXJuR2VuZXJhdGlvbk5lZWRlZCAoYXR0ciA6IFN0b3JhZ2VBdHRyaWJ1dGUsIHBpYyA6IFBJQyk6IGJvb2xlYW4ge1xyXG5cclxuICAgc3dpdGNoIChhdHRyKSB7XHJcbiAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLk5VTUVSSUM6XHJcbiAgICAgICByZXR1cm4gdHJ1ZTtcclxuXHJcbiAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLkFMUEhBOlxyXG4gICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5VTklDT0RFOlxyXG4gICAgICAgcmV0dXJuIChwaWMuZ2V0TWFza0NoYXJzKCkgPiAwKSA/IHRydWUgOiBmYWxzZTtcclxuICAgfVxyXG4gfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBnZW5lcmF0ZSBwYXR0ZXJuIGZvciBBbHBoYVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiBnZW5lcmF0ZVBhdHRlcm5Gb3JBbHBoYShwaWMgOiBQSUMpOiBzdHJpbmcge1xyXG4gIGxldCBjbnQ6IG51bWJlciA9IDA7XHJcbiAgbGV0IGlucHV0QWxsQ2hhcnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsZXQgY2xvc2VTZXQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsZXQgdmFsOiBhbnkgPSBudWxsO1xyXG4gIGxldCBhbGxvd011bGl0aWxpbmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG4gICBsZXQgIG1hc2s6IHN0cmluZyA9IHBpYy5nZXRNYXNrKCk7XHJcbiAgIGxldCAgcGF0dGVybjogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7XHJcblxyXG4gIHBhdHRlcm4uQXBwZW5kKFwiXlwiKTtcclxuICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgbWFzay5sZW5ndGg7KVxyXG4gIHtcclxuICAgIC8vc3RhcnQgbmV3IHN1YnNldCAsIGlmIG1hc2tbaV0gaXMgb25lIG9mIHRoZXNlLlxyXG4gICAgaWYgKGlucHV0QWxsQ2hhcnMgJiYgKG1hc2suY2hhckNvZGVBdChpKSA9PSBQSUNJbnRlcmZhY2UuUElDX04gfHwgbWFzay5jaGFyQ29kZUF0KGkpID09IFBJQ0ludGVyZmFjZS5QSUNfVSB8fCBtYXNrLmNoYXJDb2RlQXQoaSkgPT0gUElDSW50ZXJmYWNlLlBJQ19MXHJcbiAgICAgICAgfHwgbWFzay5jaGFyQ29kZUF0KGkpID09IFBJQ0ludGVyZmFjZS5QSUNfWCkpXHJcbiAgICB7XHJcbiAgICAgIHBhdHRlcm4uQXBwZW5kKFwiKFwiKTtcclxuICAgICAgY2xvc2VTZXQgPSB0cnVlO1xyXG4gICAgICBpbnB1dEFsbENoYXJzID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY250ID0gMDtcclxuICAgIHN3aXRjaCAobWFzay5jaGFyQ29kZUF0KGkpKVxyXG4gICAge1xyXG4gICAgICBjYXNlIFBJQ0ludGVyZmFjZS5QSUNfVTpcclxuICAgICAgY2FzZSBQSUNJbnRlcmZhY2UuUElDX1g6XHJcbiAgICAgIGNhc2UgUElDSW50ZXJmYWNlLlBJQ19MOlxyXG4gICAgICB7XHJcbiAgICAgICAgcGF0dGVybi5BcHBlbmQoXCIuXCIpO1xyXG4gICAgICAgIGxldCBpbnB1dEFsbENoYXJzUmVmOiBSZWZQYXJhbTxib29sZWFuPiA9IG5ldyBSZWZQYXJhbTxib29sZWFuPihmYWxzZSk7XHJcbiAgICAgICAgbGV0IGRpcnM6IHN0cmluZyA9ICBQSUNJbnRlcmZhY2UuUElDX1UudG9TdHJpbmcoKTtcclxuICAgICAgICBkaXJzICs9IFBJQ0ludGVyZmFjZS5QSUNfTC50b1N0cmluZygpO1xyXG4gICAgICAgIGRpcnMgKz0gUElDSW50ZXJmYWNlLlBJQ19YLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgY250ID0gdGhpcy5nZXREaXJlY3RpdmVDb3VudChtYXNrLCBpLCBkaXJzLCBpbnB1dEFsbENoYXJzUmVmKTtcclxuICAgICAgICBpbnB1dEFsbENoYXJzID0gaW5wdXRBbGxDaGFyc1JlZi52YWx1ZTtcclxuICAgICAgICBpICs9IGNudDtcclxuXHJcbiAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBQSUNJbnRlcmZhY2UuUElDX046XHJcbiAgICAgIHtcclxuICAgICAgICBwYXR0ZXJuLkFwcGVuZChcIlxcXFxkXCIpO1xyXG4gICAgICAgIGxldCBpbnB1dEFsbENoYXJzUmVmOiBSZWZQYXJhbTxib29sZWFuPiA9IG5ldyBSZWZQYXJhbTxib29sZWFuPihmYWxzZSk7XHJcbiAgICAgICAgY250ID0gdGhpcy5nZXREaXJlY3RpdmVDb3VudChtYXNrLCBpLCBQSUNJbnRlcmZhY2UuUElDX0wudG9TdHJpbmcoKSwgaW5wdXRBbGxDaGFyc1JlZik7XHJcbiAgICAgICAgaW5wdXRBbGxDaGFycyA9IGlucHV0QWxsQ2hhcnNSZWYudmFsdWU7XHJcbiAgICAgICAgaSArPSBjbnQ7XHJcbiAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcGF0dGVybi5BcHBlbmQobWFza1tpXSk7XHJcbiAgICAgICAgaSsrO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgaWYgKGNudCA+IDApXHJcbiAgICAgIHBhdHRlcm4uQXBwZW5kRm9ybWF0KFwie3swfSx7MX19XCIsIGlucHV0QWxsQ2hhcnMgPyBjbnQgOiAwLCBjbnQpO1xyXG4gICAgaWYgKGNsb3NlU2V0KVxyXG4gICAgICBwYXR0ZXJuLkFwcGVuZChcIilcIik7XHJcbiAgICBjbG9zZVNldCA9IGZhbHNlO1xyXG5cclxuICB9XHJcbiAgIHBhdHRlcm4uQXBwZW5kKFwiJFwiKTtcclxuICAgcmV0dXJuIHBhdHRlcm4uVG9TdHJpbmcoKTtcclxuIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGdldERpcmVjdGl2ZUNvdW50KG1hc2s6IHN0cmluZywgaWR4OiBudW1iZXIsIHBhdHRlcm46IHN0cmluZywgY2hhbmdlSW5QYXR0ZXJuOiBSZWZQYXJhbTxib29sZWFuPiApOiBudW1iZXIgIHtcclxuXHJcbiAgICBjaGFuZ2VJblBhdHRlcm4udmFsdWUgPSBmYWxzZTtcclxuICAgIGxldCBwYXR0ZXJuQ291bnQ6IG51bWJlciA9IDA7XHJcblxyXG4gICAgLy8gZmluZCBtYXggY2hhcnNcclxuICAgIHdoaWxlIChpZHggPCBtYXNrLmxlbmd0aCAmJiB0aGlzLklzUGF0dGVybk1hdGNoZXMobWFzay5jaGFyQ29kZUF0KGlkeCkudG9TdHJpbmcoKSwgcGF0dGVybikpXHJcbiAgICB7IHBhdHRlcm5Db3VudCsrOyBpZHgrKzsgfVxyXG5cclxuXHJcbiAgICBpZiAoaWR4IDwgbWFzay5sZW5ndGgpXHJcbiAgICAgIGNoYW5nZUluUGF0dGVybi52YWx1ZSA9IHRydWU7XHJcblxyXG4gICAgcmV0dXJuIHBhdHRlcm5Db3VudDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBJc1BhdHRlcm5NYXRjaGVzKG1hc2s6IHN0cmluZywgcGF0dGVybjogc3RyaW5nKTogYm9vbGVhbiB7XHJcblxyXG4gICAgZm9yIChsZXQgaTpudW1iZXIgPSAwOyBpIDwgcGF0dGVybi5sZW5ndGg7IGkrKylcclxuICAgIGlmIChtYXNrID09IHBhdHRlcm5baV0pXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -3,24 +3,11 @@ import { NG_VALIDATORS } from '@angular/forms';
3
3
  import { TaskMagicService } from '../../services/task.magics.service';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "../../services/task.magics.service";
6
- /**
7
- * Validates the field range.
8
- */
9
6
  export class RangeValidatorMagicDirective {
10
- /**
11
- *
12
- * @param _task The task service
13
- * @param vcRef
14
- */
15
7
  constructor(_task, vcRef) {
16
8
  this._task = _task;
17
9
  this.vcRef = vcRef;
18
10
  }
19
- /**
20
- * Validation method
21
- * @param c FormControl to validate
22
- * @returns If validation fails, return error message, else returns null
23
- */
24
11
  validate(c) {
25
12
  let controlName;
26
13
  controlName = this.getControlName(c);
@@ -42,23 +29,20 @@ export class RangeValidatorMagicDirective {
42
29
  };
43
30
  }
44
31
  }
45
- /**
46
- * @ignore
47
- */
48
32
  getControlName(c) {
49
33
  const formGroup = c.parent.controls;
50
34
  return Object.keys(formGroup).find(name => c === formGroup[name]) || null;
51
35
  }
52
36
  }
53
- /** @nocollapse */ RangeValidatorMagicDirective.ɵfac = function RangeValidatorMagicDirective_Factory(t) { return new (t || RangeValidatorMagicDirective)(i0.ɵɵdirectiveInject(i1.TaskMagicService), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); };
54
- /** @nocollapse */ RangeValidatorMagicDirective.ɵdir = i0.ɵɵdefineDirective({ type: RangeValidatorMagicDirective, selectors: [["", "rangevalidator", ""]], features: [i0.ɵɵProvidersFeature([
37
+ RangeValidatorMagicDirective.ɵfac = function RangeValidatorMagicDirective_Factory(t) { return new (t || RangeValidatorMagicDirective)(i0.ɵɵdirectiveInject(i1.TaskMagicService), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); };
38
+ RangeValidatorMagicDirective.ɵdir = i0.ɵɵdefineDirective({ type: RangeValidatorMagicDirective, selectors: [["", "rangevalidator", ""]], features: [i0.ɵɵProvidersFeature([
55
39
  {
56
40
  provide: NG_VALIDATORS,
57
41
  useExisting: RangeValidatorMagicDirective,
58
42
  multi: true,
59
43
  }
60
44
  ])] });
61
- /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(RangeValidatorMagicDirective, [{
45
+ (function () { i0.ɵsetClassMetadata(RangeValidatorMagicDirective, [{
62
46
  type: Directive,
63
47
  args: [{
64
48
  selector: '[rangevalidator] ',
@@ -71,4 +55,4 @@ export class RangeValidatorMagicDirective {
71
55
  ]
72
56
  }]
73
57
  }], function () { return [{ type: i1.TaskMagicService }, { type: i0.ViewContainerRef }]; }, null); })();
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtdmFsaWRhdG9yLm1hZ2ljLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL2RpcmVjdGl2ZXMvcmFuZ2UtdmFsaWRhdG9yLm1hZ2ljLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBZSxhQUFhLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBR3RFOztHQUVHO0FBY0gsTUFBTSxPQUFPLDRCQUE0QjtJQUV2Qzs7OztPQUlHO0lBQ0gsWUFBc0IsS0FBdUIsRUFBYSxLQUF1QjtRQUEzRCxVQUFLLEdBQUwsS0FBSyxDQUFrQjtRQUFhLFVBQUssR0FBTCxLQUFLLENBQWtCO0lBQ2pGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0YsUUFBUSxDQUFDLENBQWM7UUFDbkIsSUFBSSxXQUFtQixDQUFDO1FBQ3hCLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLElBQUksVUFBMkIsQ0FBQztRQUNoQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLFVBQVUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ2pDLElBQUksTUFBTSxHQUFXLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsQ0FBQyxLQUFLO1lBQ1YsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUUsV0FBVyxFQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsSCxJQUFJLE9BQU8sR0FBWSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDdkQsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLElBQUksQ0FBQztTQUNiO2FBQ0k7WUFDSCxPQUFPO2dCQUNMLGNBQWMsRUFBRTtvQkFDZCxRQUFRLEVBQUcsTUFBTTtpQkFDbEI7YUFDRixDQUFDO1NBQ0g7SUFDTCxDQUFDO0lBRUY7O09BRUc7SUFDSCxjQUFjLENBQUMsQ0FBYztRQUMzQixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNwQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUM1RSxDQUFDOzsySEEzQ1UsNEJBQTRCO29GQUE1Qiw0QkFBNEIsNEVBWDVCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFdBQVcsRUFBRSw0QkFBNEI7Z0JBRXpDLEtBQUssRUFBRSxJQUFJO2FBRVo7U0FDRjtrREFHVSw0QkFBNEI7Y0FieEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsYUFBYTt3QkFDdEIsV0FBVyxFQUFFLDRCQUE0Qjt3QkFFekMsS0FBSyxFQUFFLElBQUk7cUJBRVo7aUJBQ0Y7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgTkdfVkFMSURBVE9SUywgVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUYXNrTWFnaWNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGFzay5tYWdpY3Muc2VydmljZSc7XHJcbmltcG9ydCB7IENvbnRyb2xNZXRhZGF0YSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzLm1ldGFkYXRhLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBWYWxpZGF0ZXMgdGhlIGZpZWxkIHJhbmdlLlxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbcmFuZ2V2YWxpZGF0b3JdICcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBSYW5nZVZhbGlkYXRvck1hZ2ljRGlyZWN0aXZlLFxyXG5cclxuICAgICAgbXVsdGk6IHRydWUsXHJcblxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBSYW5nZVZhbGlkYXRvck1hZ2ljRGlyZWN0aXZlIGltcGxlbWVudHMgVmFsaWRhdG9yIHtcclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gX3Rhc2sgVGhlIHRhc2sgc2VydmljZVxyXG4gICAqIEBwYXJhbSB2Y1JlZlxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfdGFzazogVGFza01hZ2ljU2VydmljZSwgIHByb3RlY3RlZCB2Y1JlZjogVmlld0NvbnRhaW5lclJlZikge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmFsaWRhdGlvbiBtZXRob2RcclxuICAgKiBAcGFyYW0gYyBGb3JtQ29udHJvbCB0byB2YWxpZGF0ZVxyXG4gICAqIEByZXR1cm5zIElmIHZhbGlkYXRpb24gZmFpbHMsIHJldHVybiBlcnJvciBtZXNzYWdlLCBlbHNlIHJldHVybnMgbnVsbFxyXG4gICAqL1xyXG4gICB2YWxpZGF0ZShjOiBGb3JtQ29udHJvbCkge1xyXG4gICAgICAgbGV0IGNvbnRyb2xOYW1lOiBzdHJpbmc7XHJcbiAgICAgICBjb250cm9sTmFtZSA9IHRoaXMuZ2V0Q29udHJvbE5hbWUgKGMpO1xyXG4gICAgICAgbGV0IHByb3BlcnRpZXM6IENvbnRyb2xNZXRhZGF0YTtcclxuICAgICAgIHByb3BlcnRpZXMgPSB0aGlzLl90YXNrLlJlY29yZHMubGlzdFtcIjBcIl0uZ2V0Q29udHJvbE1ldGFkYXRhKGNvbnRyb2xOYW1lKTtcclxuICAgICAgIHByb3BlcnRpZXMucmFuZ2VWYWxpZGF0b3IgPSB0cnVlO1xyXG4gICAgICAgbGV0IGVyck1zZzogc3RyaW5nID0gbnVsbDtcclxuICAgICAgIGlmIChjLmRpcnR5KVxyXG4gICAgICAgIGVyck1zZyA9IHRoaXMuX3Rhc2suVmFsaWRhdGVDb250cm9sVmFsdWUgKGNvbnRyb2xOYW1lLCAgdGhpcy5fdGFzay5Db252ZXJ0VmFsVG9OYXRpdmUoY29udHJvbE5hbWUsICAwLCBjLnZhbHVlKSk7XHJcbiAgICAgICBsZXQgaXNWYWxpZDogYm9vbGVhbiA9IChlcnJNc2cgPT0gbnVsbCkgPyB0cnVlIDogZmFsc2U7XHJcbiAgICAgICBpZiAoaXNWYWxpZCkge1xyXG4gICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgIH1cclxuICAgICAgIGVsc2Uge1xyXG4gICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgIHJhbmdldmFsaWRhdG9yOiB7XHJcbiAgICAgICAgICAgICBlcnJvck1zZyA6IGVyck1zZ1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgfTtcclxuICAgICAgIH1cclxuICAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgZ2V0Q29udHJvbE5hbWUoYzogRm9ybUNvbnRyb2wpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGNvbnN0IGZvcm1Hcm91cCA9IGMucGFyZW50LmNvbnRyb2xzO1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGZvcm1Hcm91cCkuZmluZChuYW1lID0+IGMgPT09IGZvcm1Hcm91cFtuYW1lXSkgfHwgbnVsbDtcclxuICB9XHJcbn1cclxuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtdmFsaWRhdG9yLm1hZ2ljLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL2RpcmVjdGl2ZXMvcmFuZ2UtdmFsaWRhdG9yLm1hZ2ljLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBZSxhQUFhLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBbUJ0RSxNQUFNLE9BQU8sNEJBQTRCO0lBT3ZDLFlBQXNCLEtBQXVCLEVBQWEsS0FBdUI7UUFBM0QsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFBYSxVQUFLLEdBQUwsS0FBSyxDQUFrQjtJQUNqRixDQUFDO0lBT0EsUUFBUSxDQUFDLENBQWM7UUFDbkIsSUFBSSxXQUFtQixDQUFDO1FBQ3hCLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLElBQUksVUFBMkIsQ0FBQztRQUNoQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLFVBQVUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ2pDLElBQUksTUFBTSxHQUFXLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsQ0FBQyxLQUFLO1lBQ1YsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUUsV0FBVyxFQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsSCxJQUFJLE9BQU8sR0FBWSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDdkQsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLElBQUksQ0FBQztTQUNiO2FBQ0k7WUFDSCxPQUFPO2dCQUNMLGNBQWMsRUFBRTtvQkFDZCxRQUFRLEVBQUcsTUFBTTtpQkFDbEI7YUFDRixDQUFDO1NBQ0g7SUFDTCxDQUFDO0lBS0YsY0FBYyxDQUFDLENBQWM7UUFDM0IsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDcEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDNUUsQ0FBQzs7d0dBM0NVLDRCQUE0QjtpRUFBNUIsNEJBQTRCLDRFQVg1QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixXQUFXLEVBQUUsNEJBQTRCO2dCQUV6QyxLQUFLLEVBQUUsSUFBSTthQUVaO1NBQ0Y7b0NBR1UsNEJBQTRCO2NBYnhDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLFdBQVcsRUFBRSw0QkFBNEI7d0JBRXpDLEtBQUssRUFBRSxJQUFJO3FCQUVaO2lCQUNGO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIFZhbGlkYXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVGFza01hZ2ljU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Rhc2subWFnaWNzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb250cm9sTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9jb250cm9scy5tZXRhZGF0YS5tb2RlbCc7XHJcblxyXG4vKipcclxuICogVmFsaWRhdGVzIHRoZSBmaWVsZCByYW5nZS5cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3JhbmdldmFsaWRhdG9yXSAnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICB1c2VFeGlzdGluZzogUmFuZ2VWYWxpZGF0b3JNYWdpY0RpcmVjdGl2ZSxcclxuXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG5cclxuICAgIH1cclxuICBdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgUmFuZ2VWYWxpZGF0b3JNYWdpY0RpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvciB7XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIF90YXNrIFRoZSB0YXNrIHNlcnZpY2VcclxuICAgKiBAcGFyYW0gdmNSZWZcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Rhc2s6IFRhc2tNYWdpY1NlcnZpY2UsICBwcm90ZWN0ZWQgdmNSZWY6IFZpZXdDb250YWluZXJSZWYpIHtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYXRpb24gbWV0aG9kXHJcbiAgICogQHBhcmFtIGMgRm9ybUNvbnRyb2wgdG8gdmFsaWRhdGVcclxuICAgKiBAcmV0dXJucyBJZiB2YWxpZGF0aW9uIGZhaWxzLCByZXR1cm4gZXJyb3IgbWVzc2FnZSwgZWxzZSByZXR1cm5zIG51bGxcclxuICAgKi9cclxuICAgdmFsaWRhdGUoYzogRm9ybUNvbnRyb2wpIHtcclxuICAgICAgIGxldCBjb250cm9sTmFtZTogc3RyaW5nO1xyXG4gICAgICAgY29udHJvbE5hbWUgPSB0aGlzLmdldENvbnRyb2xOYW1lIChjKTtcclxuICAgICAgIGxldCBwcm9wZXJ0aWVzOiBDb250cm9sTWV0YWRhdGE7XHJcbiAgICAgICBwcm9wZXJ0aWVzID0gdGhpcy5fdGFzay5SZWNvcmRzLmxpc3RbXCIwXCJdLmdldENvbnRyb2xNZXRhZGF0YShjb250cm9sTmFtZSk7XHJcbiAgICAgICBwcm9wZXJ0aWVzLnJhbmdlVmFsaWRhdG9yID0gdHJ1ZTtcclxuICAgICAgIGxldCBlcnJNc2c6IHN0cmluZyA9IG51bGw7XHJcbiAgICAgICBpZiAoYy5kaXJ0eSlcclxuICAgICAgICBlcnJNc2cgPSB0aGlzLl90YXNrLlZhbGlkYXRlQ29udHJvbFZhbHVlIChjb250cm9sTmFtZSwgIHRoaXMuX3Rhc2suQ29udmVydFZhbFRvTmF0aXZlKGNvbnRyb2xOYW1lLCAgMCwgYy52YWx1ZSkpO1xyXG4gICAgICAgbGV0IGlzVmFsaWQ6IGJvb2xlYW4gPSAoZXJyTXNnID09IG51bGwpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgaWYgKGlzVmFsaWQpIHtcclxuICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICB9XHJcbiAgICAgICBlbHNlIHtcclxuICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICByYW5nZXZhbGlkYXRvcjoge1xyXG4gICAgICAgICAgICAgZXJyb3JNc2cgOiBlcnJNc2dcclxuICAgICAgICAgICB9XHJcbiAgICAgICAgIH07XHJcbiAgICAgICB9XHJcbiAgIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGdldENvbnRyb2xOYW1lKGM6IEZvcm1Db250cm9sKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCBmb3JtR3JvdXAgPSBjLnBhcmVudC5jb250cm9scztcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhmb3JtR3JvdXApLmZpbmQobmFtZSA9PiBjID09PSBmb3JtR3JvdXBbbmFtZV0pIHx8IG51bGw7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,13 +1,6 @@
1
1
  import { Styles } from "@magic-xpa/gui";
2
- /**
3
- * Displays a message-box
4
- */
5
2
  export class confirmationBox {
6
- /**
7
- * @ignore
8
- */
9
3
  static isConfirmBox(style) {
10
- // button format mask is in first nibble from right
11
4
  let buttonMode = style & 0x0F;
12
5
  var isConfirm = (buttonMode === Styles.MSGBOX_BUTTON_OK_CANCEL) ||
13
6
  (buttonMode === Styles.MSGBOX_BUTTON_ABORT_RETRY_IGNORE) ||
@@ -16,14 +9,7 @@ export class confirmationBox {
16
9
  (buttonMode === Styles.MSGBOX_BUTTON_RETRY_CANCEL);
17
10
  return (isConfirm);
18
11
  }
19
- /**
20
- * Converts the result from the HTML window to the expected result type
21
- * @param style Result received from HTML window
22
- * @param okWasPressed Was the "OK" pressed
23
- * @returns MessageBox result type
24
- */
25
12
  static convertToExcpectedResultBox(style, okWasPressed) {
26
- // button format mask is in first nibble from right
27
13
  let buttonMode = style & 0x0F;
28
14
  let retValue = Styles.MSGBOX_RESULT_OK;
29
15
  if (buttonMode === Styles.MSGBOX_BUTTON_OK)
@@ -40,19 +26,10 @@ export class confirmationBox {
40
26
  retValue = okWasPressed ? Styles.MSGBOX_RESULT_RETRY : Styles.MSGBOX_RESULT_CANCEL;
41
27
  return retValue;
42
28
  }
43
- /**
44
- * Show a message box as an HTML window
45
- * @param title Title of the message box
46
- * @param message Message that will be display in the message box
47
- * @param style Style that include buttons \ Icons
48
- * @returns MessageBox result
49
- */
50
29
  static showConfirmationBox(title, message, style) {
51
30
  let okWasPressed = false;
52
31
  let retValue = Styles.MSGBOX_RESULT_OK;
53
- // check if it is confirmation box
54
32
  let isConfirm = this.isConfirmBox(style);
55
- // the title will be added to the string and we will add new line after the title
56
33
  let titleAndString = title + '\n' + '\n' + message;
57
34
  if (isConfirm)
58
35
  okWasPressed = confirm(titleAndString);
@@ -60,8 +37,7 @@ export class confirmationBox {
60
37
  alert(titleAndString);
61
38
  okWasPressed = true;
62
39
  }
63
- // return the result from the user
64
40
  return okWasPressed;
65
41
  }
66
42
  }
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtY29uZmlybWF0aW9uQm94LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvbWFnaWMtY29uZmlybWF0aW9uQm94LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBRTFCOztPQUVHO0lBQ0ksTUFBTSxDQUFFLFlBQVksQ0FBQyxLQUFjO1FBRXhDLG1EQUFtRDtRQUNuRCxJQUFJLFVBQVUsR0FBVyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBRXRDLElBQUksU0FBUyxHQUFHLENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQztZQUM3RCxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUMsZ0NBQWdDLENBQUM7WUFDeEQsQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLDJCQUEyQixDQUFDO1lBQ25ELENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQztZQUM1QyxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUVyRCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLDJCQUEyQixDQUFFLEtBQWEsRUFBRSxZQUFxQjtRQUU3RSxtREFBbUQ7UUFDbkQsSUFBSSxVQUFVLEdBQVcsS0FBSyxHQUFHLElBQUksQ0FBQztRQUV0QyxJQUFJLFFBQVEsR0FBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUM7UUFFeEMsSUFBSSxVQUFVLEtBQU0sTUFBTSxDQUFDLGdCQUFnQjtZQUN6QyxRQUFRLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2FBQ2hDLElBQUksVUFBVSxLQUFLLE1BQU0sQ0FBQyx1QkFBdUI7WUFDcEQsUUFBUSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUM7YUFDN0UsSUFBSSxVQUFVLEtBQUssTUFBTSxDQUFDLGdDQUFnQztZQUM3RCxRQUFRLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQzthQUMvRSxJQUFJLFVBQVUsS0FBTSxNQUFNLENBQUMsMkJBQTJCO1lBQ3pELFFBQVEsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2FBQzFFLElBQUksVUFBVSxLQUFLLE1BQU0sQ0FBQyxvQkFBb0I7WUFDakQsUUFBUSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7YUFDMUUsSUFBSSxVQUFVLEtBQUssTUFBTSxDQUFDLDBCQUEwQjtZQUN2RCxRQUFRLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQztRQUVyRixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLG1CQUFtQixDQUFDLEtBQWEsRUFBRSxPQUFlLEVBQUUsS0FBYTtRQUU3RSxJQUFJLFlBQVksR0FBSyxLQUFLLENBQUM7UUFFM0IsSUFBSSxRQUFRLEdBQVksTUFBTSxDQUFDLGdCQUFnQixDQUFDO1FBRWhELGtDQUFrQztRQUNsQyxJQUFJLFNBQVMsR0FBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFDLGlGQUFpRjtRQUNqRixJQUFJLGNBQWMsR0FBRyxLQUFLLEdBQUcsSUFBSSxHQUFFLElBQUksR0FBRyxPQUFPLENBQUM7UUFFbEQsSUFBSSxTQUFTO1lBQ1gsWUFBWSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUNwQztZQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN0QixZQUFZLEdBQUcsSUFBSSxDQUFDO1NBQ3JCO1FBRUQsa0NBQWtDO1FBQ2xDLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U3R5bGVzfSBmcm9tIFwiQG1hZ2ljLXhwYS9ndWlcIjtcclxuXHJcbi8qKlxyXG4gKiBEaXNwbGF5cyBhIG1lc3NhZ2UtYm94XHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgY29uZmlybWF0aW9uQm94IHtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGF0aWMgIGlzQ29uZmlybUJveChzdHlsZSA6IFN0eWxlcyk6IEJvb2xlYW57XHJcblxyXG4gICAgLy8gYnV0dG9uIGZvcm1hdCBtYXNrIGlzIGluIGZpcnN0IG5pYmJsZSBmcm9tIHJpZ2h0XHJcbiAgICBsZXQgYnV0dG9uTW9kZSA9IDxudW1iZXI+c3R5bGUgJiAweDBGO1xyXG5cclxuICAgIHZhciBpc0NvbmZpcm0gPSAoYnV0dG9uTW9kZSA9PT0gU3R5bGVzLk1TR0JPWF9CVVRUT05fT0tfQ0FOQ0VMKSB8fFxyXG4gICAgICAoYnV0dG9uTW9kZSA9PT0gU3R5bGVzLk1TR0JPWF9CVVRUT05fQUJPUlRfUkVUUllfSUdOT1JFKSB8fFxyXG4gICAgICAoYnV0dG9uTW9kZSA9PT0gU3R5bGVzLk1TR0JPWF9CVVRUT05fWUVTX05PX0NBTkNFTCkgfHxcclxuICAgICAgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX1lFU19OTykgfHxcclxuICAgICAgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX1JFVFJZX0NBTkNFTCk7XHJcblxyXG4gICAgcmV0dXJuIChpc0NvbmZpcm0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgdGhlIHJlc3VsdCBmcm9tIHRoZSBIVE1MIHdpbmRvdyB0byB0aGUgZXhwZWN0ZWQgcmVzdWx0IHR5cGVcclxuICAgKiBAcGFyYW0gc3R5bGUgUmVzdWx0IHJlY2VpdmVkIGZyb20gSFRNTCB3aW5kb3dcclxuICAgKiBAcGFyYW0gb2tXYXNQcmVzc2VkIFdhcyB0aGUgXCJPS1wiIHByZXNzZWRcclxuICAgKiBAcmV0dXJucyAgTWVzc2FnZUJveCByZXN1bHQgdHlwZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGF0aWMgY29udmVydFRvRXhjcGVjdGVkUmVzdWx0Qm94IChzdHlsZTogU3R5bGVzLCBva1dhc1ByZXNzZWQ6IEJvb2xlYW4gKTogU3R5bGVze1xyXG5cclxuICAgIC8vIGJ1dHRvbiBmb3JtYXQgbWFzayBpcyBpbiBmaXJzdCBuaWJibGUgZnJvbSByaWdodFxyXG4gICAgbGV0IGJ1dHRvbk1vZGUgPSA8bnVtYmVyPnN0eWxlICYgMHgwRjtcclxuXHJcbiAgICBsZXQgcmV0VmFsdWUgPSAgU3R5bGVzLk1TR0JPWF9SRVNVTFRfT0s7XHJcblxyXG4gICAgaWYgKGJ1dHRvbk1vZGUgPT09ICBTdHlsZXMuTVNHQk9YX0JVVFRPTl9PSylcclxuICAgICAgcmV0VmFsdWUgPSBTdHlsZXMuTVNHQk9YX1JFU1VMVF9PSztcclxuICAgIGVsc2UgaWYgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX09LX0NBTkNFTClcclxuICAgICAgcmV0VmFsdWUgPSBva1dhc1ByZXNzZWQgPyBTdHlsZXMuTVNHQk9YX1JFU1VMVF9PSyA6IFN0eWxlcy5NU0dCT1hfUkVTVUxUX0NBTkNFTDtcclxuICAgIGVsc2UgaWYgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX0FCT1JUX1JFVFJZX0lHTk9SRSlcclxuICAgICAgcmV0VmFsdWUgPSBva1dhc1ByZXNzZWQgPyBTdHlsZXMuTVNHQk9YX1JFU1VMVF9BQk9SVCA6IFN0eWxlcy5NU0dCT1hfUkVTVUxUX1JFVFJZO1xyXG4gICAgZWxzZSBpZiAoYnV0dG9uTW9kZSA9PT0gIFN0eWxlcy5NU0dCT1hfQlVUVE9OX1lFU19OT19DQU5DRUwpXHJcbiAgICAgIHJldFZhbHVlID0gb2tXYXNQcmVzc2VkID8gU3R5bGVzLk1TR0JPWF9SRVNVTFRfWUVTIDogU3R5bGVzLk1TR0JPWF9SRVNVTFRfTk87XHJcbiAgICBlbHNlIGlmIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9ZRVNfTk8pXHJcbiAgICAgIHJldFZhbHVlID0gb2tXYXNQcmVzc2VkID8gU3R5bGVzLk1TR0JPWF9SRVNVTFRfWUVTIDogU3R5bGVzLk1TR0JPWF9SRVNVTFRfTk87XHJcbiAgICBlbHNlIGlmIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9SRVRSWV9DQU5DRUwpXHJcbiAgICAgIHJldFZhbHVlID0gb2tXYXNQcmVzc2VkID8gU3R5bGVzLk1TR0JPWF9SRVNVTFRfUkVUUlkgOiBTdHlsZXMuTVNHQk9YX1JFU1VMVF9DQU5DRUw7XHJcblxyXG4gICAgcmV0dXJuIHJldFZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2hvdyBhIG1lc3NhZ2UgYm94IGFzIGFuIEhUTUwgd2luZG93XHJcbiAgICogQHBhcmFtIHRpdGxlIFRpdGxlIG9mIHRoZSBtZXNzYWdlIGJveFxyXG4gICAqIEBwYXJhbSBtZXNzYWdlIE1lc3NhZ2UgdGhhdCB3aWxsIGJlIGRpc3BsYXkgaW4gdGhlIG1lc3NhZ2UgYm94XHJcbiAgICogQHBhcmFtIHN0eWxlIFN0eWxlIHRoYXQgaW5jbHVkZSBidXR0b25zIFxcIEljb25zXHJcbiAgICogQHJldHVybnMgTWVzc2FnZUJveCByZXN1bHRcclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIHNob3dDb25maXJtYXRpb25Cb3godGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCBzdHlsZTogU3R5bGVzKTogYm9vbGVhbiB7XHJcblxyXG4gICAgbGV0IG9rV2FzUHJlc3NlZCAgID0gZmFsc2U7XHJcblxyXG4gICAgbGV0IHJldFZhbHVlID0gIDxudW1iZXI+U3R5bGVzLk1TR0JPWF9SRVNVTFRfT0s7XHJcblxyXG4gICAgLy8gY2hlY2sgaWYgaXQgaXMgY29uZmlybWF0aW9uIGJveFxyXG4gICAgbGV0IGlzQ29uZmlybSAgPSB0aGlzLmlzQ29uZmlybUJveChzdHlsZSk7XHJcblxyXG4gICAgLy8gdGhlIHRpdGxlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHN0cmluZyBhbmQgd2Ugd2lsbCBhZGQgbmV3IGxpbmUgYWZ0ZXIgdGhlIHRpdGxlXHJcbiAgICBsZXQgdGl0bGVBbmRTdHJpbmcgPSB0aXRsZSArICdcXG4nKyAnXFxuJyArIG1lc3NhZ2U7XHJcblxyXG4gICAgaWYgKGlzQ29uZmlybSlcclxuICAgICAgb2tXYXNQcmVzc2VkID0gY29uZmlybSh0aXRsZUFuZFN0cmluZyk7XHJcbiAgICBlbHNlIHtcclxuICAgICAgYWxlcnQodGl0bGVBbmRTdHJpbmcpO1xyXG4gICAgICBva1dhc1ByZXNzZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHJldHVybiB0aGUgcmVzdWx0IGZyb20gdGhlIHVzZXJcclxuICAgIHJldHVybiBva1dhc1ByZXNzZWQ7IFxyXG4gIH1cclxufVxyXG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtY29uZmlybWF0aW9uQm94LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvbWFnaWMtY29uZmlybWF0aW9uQm94LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUt0QyxNQUFNLE9BQU8sZUFBZTtJQUtuQixNQUFNLENBQUUsWUFBWSxDQUFDLEtBQWM7UUFHeEMsSUFBSSxVQUFVLEdBQVcsS0FBSyxHQUFHLElBQUksQ0FBQztRQUV0QyxJQUFJLFNBQVMsR0FBRyxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUMsdUJBQXVCLENBQUM7WUFDN0QsQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLGdDQUFnQyxDQUFDO1lBQ3hELENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQztZQUNuRCxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUMsb0JBQW9CLENBQUM7WUFDNUMsQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFFckQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFRTSxNQUFNLENBQUMsMkJBQTJCLENBQUUsS0FBYSxFQUFFLFlBQXFCO1FBRzdFLElBQUksVUFBVSxHQUFXLEtBQUssR0FBRyxJQUFJLENBQUM7UUFFdEMsSUFBSSxRQUFRLEdBQUksTUFBTSxDQUFDLGdCQUFnQixDQUFDO1FBRXhDLElBQUksVUFBVSxLQUFNLE1BQU0sQ0FBQyxnQkFBZ0I7WUFDekMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQzthQUNoQyxJQUFJLFVBQVUsS0FBSyxNQUFNLENBQUMsdUJBQXVCO1lBQ3BELFFBQVEsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDO2FBQzdFLElBQUksVUFBVSxLQUFLLE1BQU0sQ0FBQyxnQ0FBZ0M7WUFDN0QsUUFBUSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUM7YUFDL0UsSUFBSSxVQUFVLEtBQU0sTUFBTSxDQUFDLDJCQUEyQjtZQUN6RCxRQUFRLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQzthQUMxRSxJQUFJLFVBQVUsS0FBSyxNQUFNLENBQUMsb0JBQW9CO1lBQ2pELFFBQVEsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2FBQzFFLElBQUksVUFBVSxLQUFLLE1BQU0sQ0FBQywwQkFBMEI7WUFDdkQsUUFBUSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUM7UUFFckYsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQVNNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFhLEVBQUUsT0FBZSxFQUFFLEtBQWE7UUFFN0UsSUFBSSxZQUFZLEdBQUssS0FBSyxDQUFDO1FBRTNCLElBQUksUUFBUSxHQUFZLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztRQUdoRCxJQUFJLFNBQVMsR0FBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRzFDLElBQUksY0FBYyxHQUFHLEtBQUssR0FBRyxJQUFJLEdBQUUsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUVsRCxJQUFJLFNBQVM7WUFDWCxZQUFZLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3BDO1lBQ0gsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3RCLFlBQVksR0FBRyxJQUFJLENBQUM7U0FDckI7UUFHRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1N0eWxlc30gZnJvbSBcIkBtYWdpYy14cGEvZ3VpXCI7XHJcblxyXG4vKipcclxuICogRGlzcGxheXMgYSBtZXNzYWdlLWJveFxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIGNvbmZpcm1hdGlvbkJveCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljICBpc0NvbmZpcm1Cb3goc3R5bGUgOiBTdHlsZXMpOiBCb29sZWFue1xyXG5cclxuICAgIC8vIGJ1dHRvbiBmb3JtYXQgbWFzayBpcyBpbiBmaXJzdCBuaWJibGUgZnJvbSByaWdodFxyXG4gICAgbGV0IGJ1dHRvbk1vZGUgPSA8bnVtYmVyPnN0eWxlICYgMHgwRjtcclxuXHJcbiAgICB2YXIgaXNDb25maXJtID0gKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX09LX0NBTkNFTCkgfHxcclxuICAgICAgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX0FCT1JUX1JFVFJZX0lHTk9SRSkgfHxcclxuICAgICAgKGJ1dHRvbk1vZGUgPT09IFN0eWxlcy5NU0dCT1hfQlVUVE9OX1lFU19OT19DQU5DRUwpIHx8XHJcbiAgICAgIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9ZRVNfTk8pIHx8XHJcbiAgICAgIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9SRVRSWV9DQU5DRUwpO1xyXG5cclxuICAgIHJldHVybiAoaXNDb25maXJtKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnZlcnRzIHRoZSByZXN1bHQgZnJvbSB0aGUgSFRNTCB3aW5kb3cgdG8gdGhlIGV4cGVjdGVkIHJlc3VsdCB0eXBlXHJcbiAgICogQHBhcmFtIHN0eWxlIFJlc3VsdCByZWNlaXZlZCBmcm9tIEhUTUwgd2luZG93XHJcbiAgICogQHBhcmFtIG9rV2FzUHJlc3NlZCBXYXMgdGhlIFwiT0tcIiBwcmVzc2VkXHJcbiAgICogQHJldHVybnMgIE1lc3NhZ2VCb3ggcmVzdWx0IHR5cGVcclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIGNvbnZlcnRUb0V4Y3BlY3RlZFJlc3VsdEJveCAoc3R5bGU6IFN0eWxlcywgb2tXYXNQcmVzc2VkOiBCb29sZWFuICk6IFN0eWxlc3tcclxuXHJcbiAgICAvLyBidXR0b24gZm9ybWF0IG1hc2sgaXMgaW4gZmlyc3QgbmliYmxlIGZyb20gcmlnaHRcclxuICAgIGxldCBidXR0b25Nb2RlID0gPG51bWJlcj5zdHlsZSAmIDB4MEY7XHJcblxyXG4gICAgbGV0IHJldFZhbHVlID0gIFN0eWxlcy5NU0dCT1hfUkVTVUxUX09LO1xyXG5cclxuICAgIGlmIChidXR0b25Nb2RlID09PSAgU3R5bGVzLk1TR0JPWF9CVVRUT05fT0spXHJcbiAgICAgIHJldFZhbHVlID0gU3R5bGVzLk1TR0JPWF9SRVNVTFRfT0s7XHJcbiAgICBlbHNlIGlmIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9PS19DQU5DRUwpXHJcbiAgICAgIHJldFZhbHVlID0gb2tXYXNQcmVzc2VkID8gU3R5bGVzLk1TR0JPWF9SRVNVTFRfT0sgOiBTdHlsZXMuTVNHQk9YX1JFU1VMVF9DQU5DRUw7XHJcbiAgICBlbHNlIGlmIChidXR0b25Nb2RlID09PSBTdHlsZXMuTVNHQk9YX0JVVFRPTl9BQk9SVF9SRVRSWV9JR05PUkUpXHJcbiAgICAgIHJldFZhbHVlID0gb2tXYXNQcmVzc2VkID8gU3R5bGVzLk1TR0JPWF9SRVNVTFRfQUJPUlQgOiBTdHlsZXMuTVNHQk9YX1JFU1VMVF9SRVRSWTtcclxuICAgIGVsc2UgaWYgKGJ1dHRvbk1vZGUgPT09ICBTdHlsZXMuTVNHQk9YX0JVVFRPTl9ZRVNfTk9fQ0FOQ0VMKVxyXG4gICAgICByZXRWYWx1ZSA9IG9rV2FzUHJlc3NlZCA/IFN0eWxlcy5NU0dCT1hfUkVTVUxUX1lFUyA6IFN0eWxlcy5NU0dCT1hfUkVTVUxUX05PO1xyXG4gICAgZWxzZSBpZiAoYnV0dG9uTW9kZSA9PT0gU3R5bGVzLk1TR0JPWF9CVVRUT05fWUVTX05PKVxyXG4gICAgICByZXRWYWx1ZSA9IG9rV2FzUHJlc3NlZCA/IFN0eWxlcy5NU0dCT1hfUkVTVUxUX1lFUyA6IFN0eWxlcy5NU0dCT1hfUkVTVUxUX05PO1xyXG4gICAgZWxzZSBpZiAoYnV0dG9uTW9kZSA9PT0gU3R5bGVzLk1TR0JPWF9CVVRUT05fUkVUUllfQ0FOQ0VMKVxyXG4gICAgICByZXRWYWx1ZSA9IG9rV2FzUHJlc3NlZCA/IFN0eWxlcy5NU0dCT1hfUkVTVUxUX1JFVFJZIDogU3R5bGVzLk1TR0JPWF9SRVNVTFRfQ0FOQ0VMO1xyXG5cclxuICAgIHJldHVybiByZXRWYWx1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3cgYSBtZXNzYWdlIGJveCBhcyBhbiBIVE1MIHdpbmRvd1xyXG4gICAqIEBwYXJhbSB0aXRsZSBUaXRsZSBvZiB0aGUgbWVzc2FnZSBib3hcclxuICAgKiBAcGFyYW0gbWVzc2FnZSBNZXNzYWdlIHRoYXQgd2lsbCBiZSBkaXNwbGF5IGluIHRoZSBtZXNzYWdlIGJveFxyXG4gICAqIEBwYXJhbSBzdHlsZSBTdHlsZSB0aGF0IGluY2x1ZGUgYnV0dG9ucyBcXCBJY29uc1xyXG4gICAqIEByZXR1cm5zIE1lc3NhZ2VCb3ggcmVzdWx0XHJcbiAgICovXHJcbiAgcHVibGljIHN0YXRpYyBzaG93Q29uZmlybWF0aW9uQm94KHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZywgc3R5bGU6IFN0eWxlcyk6IGJvb2xlYW4ge1xyXG5cclxuICAgIGxldCBva1dhc1ByZXNzZWQgICA9IGZhbHNlO1xyXG5cclxuICAgIGxldCByZXRWYWx1ZSA9ICA8bnVtYmVyPlN0eWxlcy5NU0dCT1hfUkVTVUxUX09LO1xyXG5cclxuICAgIC8vIGNoZWNrIGlmIGl0IGlzIGNvbmZpcm1hdGlvbiBib3hcclxuICAgIGxldCBpc0NvbmZpcm0gID0gdGhpcy5pc0NvbmZpcm1Cb3goc3R5bGUpO1xyXG5cclxuICAgIC8vIHRoZSB0aXRsZSB3aWxsIGJlIGFkZGVkIHRvIHRoZSBzdHJpbmcgYW5kIHdlIHdpbGwgYWRkIG5ldyBsaW5lIGFmdGVyIHRoZSB0aXRsZVxyXG4gICAgbGV0IHRpdGxlQW5kU3RyaW5nID0gdGl0bGUgKyAnXFxuJysgJ1xcbicgKyBtZXNzYWdlO1xyXG5cclxuICAgIGlmIChpc0NvbmZpcm0pXHJcbiAgICAgIG9rV2FzUHJlc3NlZCA9IGNvbmZpcm0odGl0bGVBbmRTdHJpbmcpO1xyXG4gICAgZWxzZSB7XHJcbiAgICAgIGFsZXJ0KHRpdGxlQW5kU3RyaW5nKTtcclxuICAgICAgb2tXYXNQcmVzc2VkID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyByZXR1cm4gdGhlIHJlc3VsdCBmcm9tIHRoZSB1c2VyXHJcbiAgICByZXR1cm4gb2tXYXNQcmVzc2VkOyBcclxuICB9XHJcbn1cclxuIl19
@@ -19,4 +19,4 @@ BaseMagicOverlayContainer = __decorate([
19
19
  Output()
20
20
  ], BaseMagicOverlayContainer);
21
21
  export { BaseMagicOverlayContainer };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tYWdpYy1vdmVybGF5LWNvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL2Jhc2UtbWFnaWMtb3ZlcmxheS1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlDLElBQXNCLHlCQUF5QixHQUEvQyxNQUFzQix5QkFBeUI7Q0FlOUMsQ0FBQTtBQVhVO0lBQVIsS0FBSyxFQUFFOzs0REFBb0I7QUFLbkI7SUFBUixLQUFLLEVBQUU7O3NFQUFtQztBQUtqQztJQUFULE1BQU0sRUFBRTs7MERBQWtCO0FBZFAseUJBQXlCO0lBRjlDLEtBQUssRUFBRTtJQUNQLE1BQU0sRUFBRTtHQUNhLHlCQUF5QixDQWU5QztTQWZxQix5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuQElucHV0KClcclxuQE91dHB1dCgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWFnaWNPdmVybGF5Q29udGFpbmVyIHtcclxuICAvKipcclxuICAgKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFic3RyYWN0IE1vZGFsQ29tcDtcclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKi9cclxuICBASW5wdXQoKSBhYnN0cmFjdCBNb2RhbENvbXBQYXJhbWV0ZXJzOiBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFic3RyYWN0IG9uQ2xvc2U7XHJcbn1cclxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tYWdpYy1vdmVybGF5LWNvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL2Jhc2UtbWFnaWMtb3ZlcmxheS1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlDLElBQXNCLHlCQUF5QixHQUEvQyxNQUFzQix5QkFBeUI7Q0FlOUMsQ0FBQTtBQVhVO0lBQVIsS0FBSyxFQUFFOzs0REFBb0I7QUFLbkI7SUFBUixLQUFLLEVBQUU7O3NFQUFtQztBQUtqQztJQUFULE1BQU0sRUFBRTs7MERBQWtCO0FBZFAseUJBQXlCO0lBRjlDLEtBQUssRUFBRTtJQUNQLE1BQU0sRUFBRTtHQUNhLHlCQUF5QixDQWU5QztTQWZxQix5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuQElucHV0KClcclxuQE91dHB1dCgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWFnaWNPdmVybGF5Q29udGFpbmVyIHtcclxuICAvKipcclxuICAgKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFic3RyYWN0IE1vZGFsQ29tcDtcclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKi9cclxuICBASW5wdXQoKSBhYnN0cmFjdCBNb2RhbENvbXBQYXJhbWV0ZXJzOiBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFic3RyYWN0IG9uQ2xvc2U7XHJcbn1cclxuIl19
@@ -1,6 +1,3 @@
1
- /**
2
- * @ignore
3
- */
4
1
  export class ModalFormDefinition {
5
2
  constructor() {
6
3
  this.taskId = "";
@@ -8,4 +5,4 @@ export class ModalFormDefinition {
8
5
  this.parameters = {};
9
6
  }
10
7
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtbW9kYWwtZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL21hZ2ljLW1vZGFsLWZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sbUJBQW1CO0lBQWhDO1FBQ0UsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUNwQixTQUFJLEdBQVEsSUFBSSxDQUFDO1FBQ2pCLGVBQVUsR0FBUSxFQUFFLENBQUM7SUFDdkIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEZvcm1EZWZpbml0aW9uIHtcclxuICB0YXNrSWQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgY29tcDogYW55ID0gbnVsbDtcclxuICBwYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxufVxyXG4iXX0=
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtbW9kYWwtZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL21hZ2ljLW1vZGFsLWZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLG1CQUFtQjtJQUFoQztRQUNFLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFDcEIsU0FBSSxHQUFRLElBQUksQ0FBQztRQUNqQixlQUFVLEdBQVEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTW9kYWxGb3JtRGVmaW5pdGlvbiB7XHJcbiAgdGFza0lkOiBzdHJpbmcgPSBcIlwiO1xyXG4gIGNvbXA6IGFueSA9IG51bGw7XHJcbiAgcGFyYW1ldGVyczogYW55ID0ge307XHJcbn1cclxuIl19
@@ -1 +1 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtbW9kYWwtaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvbWFnaWMtbW9kYWwvbWFnaWMtbW9kYWwtaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogRGVzY3JpYmVzIHRoZSBiZWhhdmlvciBvZiBhIG1vZGFsIHdpbmRvd1xyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBNYWdpY01vZGFsSW50ZXJmYWNlIHtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBYIGNvb3JkaW5hdGUgb2YgdGhlIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIFgoKTtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBZIGNvb3JkaW5hdGUgb2YgdGhlIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIFkoKTtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSB3aWR0aCBvZiBtb2RhbCB3aW5kb3dcclxuICAgKi9cclxuICBXaWR0aCgpOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB0aGUgaGVpZ2h0IG9mIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIEhlaWdodCgpOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogSXMgdGhlIG1vZGFsIHdpbmRvdyBjZW50ZXJlZCByZWxhdGl2ZWx5IHRvIHRoZSBtYWluIHdpbmRvd1xyXG4gICAqL1xyXG4gIElzQ2VudGVyZWRUb1dpbmRvdygpO1xyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIGZvcm0gLSB0aXRsZSBvZiB0aGUgbW9kYWwgd2luZG93XHJcbiAgICovXHJcbiAgRm9ybU5hbWUoKTtcclxuICAvKipcclxuICAgKiBTaG91bGQgdGhlIHRpdGxlIGJhciBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBTaG93VGl0bGVCYXIoKTtcclxuICAvKipcclxuICAgKiBTaG91bGQgdGhlIG1vZGFsIHdpbmRvdyBjbG9zZSB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGUgYmFja2dyb3VuZFxyXG4gICAqL1xyXG4gIFNob3VsZENsb3NlT25CYWNrZ3JvdW5kQ2xpY2soKTtcclxufVxyXG4iXX0=
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtbW9kYWwtaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdWkvbWFnaWMtbW9kYWwvbWFnaWMtbW9kYWwtaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogRGVzY3JpYmVzIHRoZSBiZWhhdmlvciBvZiBhIG1vZGFsIHdpbmRvd1xyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBNYWdpY01vZGFsSW50ZXJmYWNlIHtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBYIGNvb3JkaW5hdGUgb2YgdGhlIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIFgoKTtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBZIGNvb3JkaW5hdGUgb2YgdGhlIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIFkoKTtcclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSB3aWR0aCBvZiBtb2RhbCB3aW5kb3dcclxuICAgKi9cclxuICBXaWR0aCgpOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB0aGUgaGVpZ2h0IG9mIG1vZGFsIHdpbmRvd1xyXG4gICAqL1xyXG4gIEhlaWdodCgpOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogSXMgdGhlIG1vZGFsIHdpbmRvdyBjZW50ZXJlZCByZWxhdGl2ZWx5IHRvIHRoZSBtYWluIHdpbmRvd1xyXG4gICAqL1xyXG4gIElzQ2VudGVyZWRUb1dpbmRvdygpO1xyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIGZvcm0gLSB0aXRsZSBvZiB0aGUgbW9kYWwgd2luZG93XHJcbiAgICovXHJcbiAgRm9ybU5hbWUoKTtcclxuICAvKipcclxuICAgKiBTaG91bGQgdGhlIHRpdGxlIGJhciBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBTaG93VGl0bGVCYXIoKTtcclxuICAvKipcclxuICAgKiBTaG91bGQgdGhlIG1vZGFsIHdpbmRvdyBjbG9zZSB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGUgYmFja2dyb3VuZFxyXG4gICAqL1xyXG4gIFNob3VsZENsb3NlT25CYWNrZ3JvdW5kQ2xpY2soKTtcclxufVxyXG4iXX0=
@@ -11,29 +11,16 @@ import * as i2 from "../directives/magic-focus.directive";
11
11
  import * as i3 from "../directives/magicViewContainerRef.directive";
12
12
  const _c0 = ["overlayContainerWrapper"];
13
13
  export class MagicOverlayContainerWrapper {
14
- /**
15
- *
16
- * @param componentFactoryResolver
17
- */
18
14
  constructor(componentListMagicService, loader, injector, componentFactoryResolver, changeDetectorRef) {
19
15
  this.componentListMagicService = componentListMagicService;
20
16
  this.loader = loader;
21
17
  this.injector = injector;
22
18
  this.componentFactoryResolver = componentFactoryResolver;
23
19
  this.changeDetectorRef = changeDetectorRef;
24
- /**
25
- *
26
- */
27
20
  this.Component = null;
28
- /**
29
- *
30
- */
31
21
  this.Parameters = {};
32
22
  this.onClose = new EventEmitter();
33
23
  }
34
- /**
35
- *
36
- */
37
24
  ngOnInit() {
38
25
  let moduleRef = this.componentListMagicService.getModuleRef(this.Parameters.MagicFormName);
39
26
  if (moduleRef == null) {
@@ -83,17 +70,13 @@ export class MagicOverlayContainerWrapper {
83
70
  this.changeDetectorRef.detectChanges();
84
71
  }
85
72
  }
86
- /**
87
- * @ignore
88
- * contais data of allowed base components to use
89
- */
90
73
  MagicOverlayContainerWrapper.allowedBaseComps = new Map([
91
74
  [OverlayType.Overlay, { comp: BaseMagicOverlayContainer, error: 'BaseMagicOverlayContainer . Overlay ' }],
92
75
  [OverlayType.Alert, { comp: BaseMagicAlertComponent, error: 'BaseMagicAlertComponent. Alert ' }],
93
76
  [OverlayType.ConfirmationBox, { comp: BaseMagicConfirmComponent, error: 'BaseMagicConfirmComponent. Confirmation ' }]
94
77
  ]);
95
- /** @nocollapse */ MagicOverlayContainerWrapper.ɵfac = function MagicOverlayContainerWrapper_Factory(t) { return new (t || MagicOverlayContainerWrapper)(i0.ɵɵdirectiveInject(i1.ComponentListMagicService), i0.ɵɵdirectiveInject(i0.NgModuleFactoryLoader), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.ComponentFactoryResolver), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
96
- /** @nocollapse */ MagicOverlayContainerWrapper.ɵcmp = i0.ɵɵdefineComponent({ type: MagicOverlayContainerWrapper, selectors: [["app-magic-overlay-container-wrapper"]], viewQuery: function MagicOverlayContainerWrapper_Query(rf, ctx) { if (rf & 1) {
78
+ MagicOverlayContainerWrapper.ɵfac = function MagicOverlayContainerWrapper_Factory(t) { return new (t || MagicOverlayContainerWrapper)(i0.ɵɵdirectiveInject(i1.ComponentListMagicService), i0.ɵɵdirectiveInject(i0.NgModuleFactoryLoader), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.ComponentFactoryResolver), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
79
+ MagicOverlayContainerWrapper.ɵcmp = i0.ɵɵdefineComponent({ type: MagicOverlayContainerWrapper, selectors: [["app-magic-overlay-container-wrapper"]], viewQuery: function MagicOverlayContainerWrapper_Query(rf, ctx) { if (rf & 1) {
97
80
  i0.ɵɵstaticViewQuery(_c0, true);
98
81
  } if (rf & 2) {
99
82
  var _t;
@@ -107,7 +90,7 @@ MagicOverlayContainerWrapper.allowedBaseComps = new Map([
107
90
  i0.ɵɵelement(6, "div", 5);
108
91
  i0.ɵɵelementEnd();
109
92
  } }, directives: [i2.MagicFocusDirective, i3.MagicViewContainerRef], styles: [".overlay-container-wrapper-background[_ngcontent-%COMP%] {\n \n position: fixed;\n top: 0;\n z-index: 999;\n right: 0;\n bottom: 0;\n left: 0;\n }"] });
110
- /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(MagicOverlayContainerWrapper, [{
93
+ (function () { i0.ɵsetClassMetadata(MagicOverlayContainerWrapper, [{
111
94
  type: Component,
112
95
  args: [{
113
96
  selector: 'app-magic-overlay-container-wrapper',
@@ -145,4 +128,4 @@ MagicOverlayContainerWrapper.allowedBaseComps = new Map([
145
128
  type: ViewChild,
146
129
  args: ['overlayContainerWrapper', { static: true }]
147
130
  }] }); })();
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtb3ZlcmxheS1jb250YWluZXItd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL21hZ2ljLW92ZXJsYXktY29udGFpbmVyLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBRVQsd0JBQXdCLEVBQ3hCLFVBQVUsRUFDVixxQkFBcUIsRUFDSixRQUFRLEVBQUUsaUJBQWlCLEVBQzdDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQWMsTUFBTSw2Q0FBNkMsQ0FBQztBQUVwRyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7OztBQTJCdkMsTUFBTSxPQUFPLDRCQUE0QjtJQThCdkM7OztPQUdHO0lBQ0gsWUFBb0IseUJBQW9ELEVBQ3BELE1BQTZCLEVBQzdCLFFBQWtCLEVBQzVCLHdCQUFrRCxFQUN4QyxpQkFBbUM7UUFKbkMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUM3QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQzVCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQXJDdkQ7O1dBRUc7UUFDYSxjQUFTLEdBQUcsSUFBSSxDQUFD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Q0FBQztJQUN6QyxDQUFDOztBQS9FRDs7O0dBR0c7QUFDSSw2Q0FBZ0IsR0FBRyxJQUFJLEdBQUcsQ0FBcUM7SUFDcEUsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEVBQUMsSUFBSSxFQUFFLHlCQUF5QixFQUFFLEtBQUssRUFBQyxzQ0FBc0MsRUFBQyxDQUFDO0lBQ3RHLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUMsaUNBQWlDLEVBQUMsQ0FBQztJQUM3RixDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUcsRUFBQyxJQUFJLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxFQUFFLDBDQUEwQyxFQUFDLENBQUM7Q0FDckgsQ0FBQyxDQUFDOzJIQTdCUSw0QkFBNEI7b0ZBQTVCLDRCQUE0Qjs7Ozs7O1FBckJyQywyQkFDRTtRQUFBLHlCQUFpSDtRQUNqSCxpQ0FDRTtRQUFBLDRCQUNNO1FBQ1IsaUJBQU07UUFDTix5QkFBdUc7UUFDekcsaUJBQU07O2tEQWNHLDRCQUE0QjtjQXhCeEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxxQ0FBcUM7Z0JBQy9DLFFBQVEsRUFBRTs7Ozs7Ozs7O0dBU1Q7Z0JBQ0QsTUFBTSxFQUFFLENBQUM7Ozs7Ozs7Ozs7R0FVUixDQUFDO2FBQ0g7OE1BS2lCLFNBQVM7a0JBQXhCLEtBQUs7WUFJVSxVQUFVO2tCQUF6QixLQUFLO1lBRVcsZ0JBQWdCO2tCQUFoQyxLQUFLO1lBRVksT0FBTztrQkFBeEIsTUFBTTtZQU9pRCxpQ0FBaUM7a0JBQXhGLFNBQVM7bUJBQUMseUJBQXlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgRWxlbWVudFJlZiwgTmdNb2R1bGVSZWYsXHJcbiAgTmdNb2R1bGVGYWN0b3J5TG9hZGVyLFxyXG4gIE5nTW9kdWxlRmFjdG9yeSwgSW5qZWN0b3IsIENoYW5nZURldGVjdG9yUmVmXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljT3ZlcmxheUNvbnRhaW5lciB9IGZyb20gXCIuL2Jhc2UtbWFnaWMtb3ZlcmxheS1jb250YWluZXJcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljQ29uZmlybUNvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRzL2Jhc2UtbWFnaWMtY29uZmlybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljQWxlcnRDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9iYXNlLW1hZ2ljLWFsZXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPdmVybGF5VHlwZSB9IGZyb20gXCJAbWFnaWMteHBhL2d1aVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRMaXN0TWFnaWNTZXJ2aWNlLCBNb2R1bGVEYXRhIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2NvbXBvbmVudC1saXN0Lm1hZ2ljLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgSU1hZ2ljVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCIuLi8uLi8uLlwiO1xyXG5pbXBvcnQge2lzTnVsbE9yVW5kZWZpbmVkfSBmcm9tICd1dGlsJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tYWdpYy1vdmVybGF5LWNvbnRhaW5lci13cmFwcGVyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktY29udGFpbmVyLXdyYXBwZXItYmFja2dyb3VuZFwiIHRhYkluZGV4PVwiMFwiIHN0eWxlPVwid2lkdGg6IDBweDsgaGVpZ2h0OiAwcHg7XCIgbWFnaWNGb2N1cz48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktY29udGFpbmVyLXdyYXBwZXItYmFja2dyb3VuZFwiICNvdmVybGF5Q29udGFpbmVyV3JhcHBlcj5cclxuICAgICAgICA8ZGl2ICNvdmVybGF5Q29udGVudCBtYWdpY1ZpZXdDb250YWluZXJSZWY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheS1jb250YWluZXItd3JhcHBlci1iYWNrZ3JvdW5kXCIgdGFiSW5kZXg9XCIwXCIgc3R5bGU9XCJ3aWR0aDogMHB4OyBoZWlnaHQ6IDBweDtcIiA+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHN0eWxlczogW2BcclxuICAgIC5vdmVybGF5LWNvbnRhaW5lci13cmFwcGVyLWJhY2tncm91bmQge1xyXG4gICAgICAvKiBtb2RhbCBiYWNrZ3JvdW5kIGZpeGVkIGFjcm9zcyB3aG9sZSBzY3JlZW4gKi9cclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFnaWNPdmVybGF5Q29udGFpbmVyV3JhcHBlciAgaW1wbGVtZW50cyBJTWFnaWNWaWV3Q29udGFpbmVyUmVmIHtcclxuICAvKipcclxuICAgKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBDb21wb25lbnQgPSBudWxsO1xyXG4gIC8qKlxyXG4gICAqXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIFBhcmFtZXRlcnM6IGFueSA9IHt9O1xyXG5cclxuICBASW5wdXQoKSBwcml2YXRlIE92ZXJsYXlUeXBlUGFyYW06IE92ZXJsYXlUeXBlO1xyXG5cclxuICBAT3V0cHV0KCkgcHJpdmF0ZSBvbkNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAvKipcclxuICAgKiBIVE1MIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgbW9kYWwgd2luZG93XHJcbiAgICovXHJcbiAgb3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdvdmVybGF5Q29udGFpbmVyV3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIG92ZXJsYXlDb250YWluZXJXcmFwcGVyRWxlbWVudFJlZjogRWxlbWVudFJlZjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqIGNvbnRhaXMgZGF0YSBvZiBhbGxvd2VkIGJhc2UgY29tcG9uZW50cyB0byB1c2VcclxuICAgKi9cclxuICBzdGF0aWMgYWxsb3dlZEJhc2VDb21wcyA9IG5ldyBNYXA8bnVtYmVyLCB7Y29tcDogYW55LCBlcnJvcjogc3RyaW5nfT4oW1xyXG4gICAgW092ZXJsYXlUeXBlLk92ZXJsYXksIHtjb21wOiBCYXNlTWFnaWNPdmVybGF5Q29udGFpbmVyLCBlcnJvcjonQmFzZU1hZ2ljT3ZlcmxheUNvbnRhaW5lciAuIE92ZXJsYXkgJ31dLFxyXG4gICAgW092ZXJsYXlUeXBlLkFsZXJ0LCB7Y29tcDogQmFzZU1hZ2ljQWxlcnRDb21wb25lbnQsIGVycm9yOidCYXNlTWFnaWNBbGVydENvbXBvbmVudC4gQWxlcnQgJ31dLFxyXG4gICAgW092ZXJsYXlUeXBlLkNvbmZpcm1hdGlvbkJveCwgIHtjb21wOiBCYXNlTWFnaWNDb25maXJtQ29tcG9uZW50LCBlcnJvciA6J0Jhc2VNYWdpY0NvbmZpcm1Db21wb25lbnQuIENvbmZpcm1hdGlvbiAnfV1cclxuICBdKTtcclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbXBvbmVudExpc3RNYWdpY1NlcnZpY2U6IENvbXBvbmVudExpc3RNYWdpY1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBsb2FkZXI6IE5nTW9kdWxlRmFjdG9yeUxvYWRlcixcclxuICAgICAgICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjpDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKi9cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGxldCBtb2R1bGVSZWY6IE5nTW9kdWxlUmVmPGFueT4gPSB0aGlzLmNvbXBvbmVudExpc3RNYWdpY1NlcnZpY2UuZ2V0TW9kdWxlUmVmKHRoaXMuUGFyYW1ldGVycy5NYWdpY0Zvcm1OYW1lKTtcclxuXHJcbiAgICBpZiAobW9kdWxlUmVmID09IG51bGwpIHtcclxuICAgICAgbGV0IGxhenlMb2FkTW9kdWxlOiBNb2R1bGVEYXRhID0gdGhpcy5jb21wb25lbnRMaXN0TWFnaWNTZXJ2aWNlLmdldExhenlMb2FkTW9kdWxlRGF0YSh0aGlzLlBhcmFtZXRlcnMuTWFnaWNGb3JtTmFtZSk7XHJcblxyXG4gICAgICBpZiAobGF6eUxvYWRNb2R1bGUgIT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMubG9hZGVyXHJcbiAgICAgICAgICAubG9hZChsYXp5TG9hZE1vZHVsZS5tb2R1bGVQYXRoICsgXCIjXCIgKyBsYXp5TG9hZE1vZHVsZS5tb2R1bGVOYW1lKVxyXG4gICAgICAgICAgLnRoZW4oKG1vZHVsZUZhY3Rvcnk6IE5nTW9kdWxlRmFjdG9yeTxhbnk+KSA9PiB7XHJcbiAgICAgICAgICAgIG1vZHVsZVJlZiA9IG1vZHVsZUZhY3RvcnkuY3JlYXRlKHRoaXMuaW5qZWN0b3IpO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRDb21wb25lbnQobW9kdWxlUmVmKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMubG9hZENvbXBvbmVudChudWxsKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlXHJcbiAgICAgIHRoaXMubG9hZENvbXBvbmVudChtb2R1bGVSZWYpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkQ29tcG9uZW50KG1vZHVsZVJlZjogTmdNb2R1bGVSZWY8YW55Pikge1xyXG4gICAgdGhpcy5QYXJhbWV0ZXJzLk1vZGFsQ29tcCA9IHRoaXMuY29tcG9uZW50TGlzdE1hZ2ljU2VydmljZS5nZXRDb21wb25lbnQodGhpcy5QYXJhbWV0ZXJzLk1hZ2ljRm9ybU5hbWUsICFpc051bGxPclVuZGVmaW5lZCh0aGlzLlBhcmFtZXRlcnMuTWFnaWNGb3JtTmFtZSkpO1xyXG5cclxuICAgIGxldCBmYWN0b3J5O1xyXG4gICAgaWYgKG1vZHVsZVJlZiAhPSBudWxsKVxyXG4gICAgICBmYWN0b3J5ID0gbW9kdWxlUmVmLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLkNvbXBvbmVudCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIGZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLkNvbXBvbmVudCk7XHJcblxyXG4gICAgbGV0IGNvbXBvbmVudFJlZiA9IHRoaXMub3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuICAgIGxldCBhbGxvd2VkQmFzZUNvbXAgPSBNYWdpY092ZXJsYXlDb250YWluZXJXcmFwcGVyLmFsbG93ZWRCYXNlQ29tcHMuZ2V0KHRoaXMuT3ZlcmxheVR5cGVQYXJhbSk7XHJcblxyXG5cclxuICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UgaW5zdGFuY2VvZiBhbGxvd2VkQmFzZUNvbXAuY29tcCkge1xyXG4gICAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwgdGhpcy5QYXJhbWV0ZXJzKTtcclxuICAgICAgKDxhbnk+Y29tcG9uZW50UmVmLmluc3RhbmNlKS5vbkNsb3NlLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vbkNsb3NlLmVtaXQocmVzKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgbXNnID0gXCJQcm92aWRlZCAgd2luZG93IGNvbnRhaW5lciBzaG91bGQgc3ViY2xhc3Mgb2YgOiBcIiArIGFsbG93ZWRCYXNlQ29tcC5lcnJvciArIFwid2luZG93IHdpbGwgbm90IHdvcmsgcHJvcGVybHkuXCI7XHJcbiAgICAgIGFsZXJ0KG1zZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRWaWV3Q29udGFpbmVyUmVmKHZjUmVmOiBWaWV3Q29udGFpbmVyUmVmKXtcclxuICAgIHRoaXMub3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmID0gdmNSZWY7XHJcbiAgfVxyXG5cclxuICBHZXRSb290RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5Q29udGFpbmVyV3JhcHBlckVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICB9XHJcblxyXG4gIERldGVjdENoYW5nZXMoKVxyXG4gIHtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iXX0=
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMtb3ZlcmxheS1jb250YWluZXItd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3VpL21hZ2ljLW1vZGFsL21hZ2ljLW92ZXJsYXktY29udGFpbmVyLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBRVQsd0JBQXdCLEVBQ3hCLFVBQVUsRUFDVixxQkFBcUIsRUFDSixRQUFRLEVBQUUsaUJBQWlCLEVBQzdDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQWMsTUFBTSw2Q0FBNkMsQ0FBQztBQUVwRyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7OztBQTJCdkMsTUFBTSxPQUFPLDRCQUE0QjtJQWtDdkMsWUFBb0IseUJBQW9ELEVBQ3BELE1BQTZCLEVBQzdCLFFBQWtCLEVBQzVCLHdCQUFrRCxFQUN4QyxpQkFBbUM7UUFKbkMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUM3QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQzVCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQWxDdkMsY0FBUyxHQUFHLElBQUksQ0FBQztRQUlqQixlQUFVLEdBQVEsRUFB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QUcsQ0FBcUM7SUFDcEUsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEVBQUMsSUFBSSxFQUFFLHlCQUF5QixFQUFFLEtBQUssRUFBQyxzQ0FBc0MsRUFBQyxDQUFDO0lBQ3RHLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUMsaUNBQWlDLEVBQUMsQ0FBQztJQUM3RixDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUcsRUFBQyxJQUFJLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxFQUFFLDBDQUEwQyxFQUFDLENBQUM7Q0FDckgsQ0FBQyxDQUFDO3dHQTdCUSw0QkFBNEI7aUVBQTVCLDRCQUE0Qjs7Ozs7O1FBckJyQywyQkFDRTtRQUFBLHlCQUFpSDtRQUNqSCxpQ0FDRTtRQUFBLDRCQUNNO1FBQ1IsaUJBQU07UUFDTix5QkFBdUc7UUFDekcsaUJBQU07O29DQWNHLDRCQUE0QjtjQXhCeEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxxQ0FBcUM7Z0JBQy9DLFFBQVEsRUFBRTs7Ozs7Ozs7O0dBU1Q7Z0JBQ0QsTUFBTSxFQUFFLENBQUM7Ozs7Ozs7Ozs7R0FVUixDQUFDO2FBQ0g7OE1BS2lCLFNBQVM7a0JBQXhCLEtBQUs7WUFJVSxVQUFVO2tCQUF6QixLQUFLO1lBRVcsZ0JBQWdCO2tCQUFoQyxLQUFLO1lBRVksT0FBTztrQkFBeEIsTUFBTTtZQU9pRCxpQ0FBaUM7a0JBQXhGLFNBQVM7bUJBQUMseUJBQXlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgRWxlbWVudFJlZiwgTmdNb2R1bGVSZWYsXHJcbiAgTmdNb2R1bGVGYWN0b3J5TG9hZGVyLFxyXG4gIE5nTW9kdWxlRmFjdG9yeSwgSW5qZWN0b3IsIENoYW5nZURldGVjdG9yUmVmXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljT3ZlcmxheUNvbnRhaW5lciB9IGZyb20gXCIuL2Jhc2UtbWFnaWMtb3ZlcmxheS1jb250YWluZXJcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljQ29uZmlybUNvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRzL2Jhc2UtbWFnaWMtY29uZmlybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQmFzZU1hZ2ljQWxlcnRDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9iYXNlLW1hZ2ljLWFsZXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPdmVybGF5VHlwZSB9IGZyb20gXCJAbWFnaWMteHBhL2d1aVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRMaXN0TWFnaWNTZXJ2aWNlLCBNb2R1bGVEYXRhIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2NvbXBvbmVudC1saXN0Lm1hZ2ljLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgSU1hZ2ljVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCIuLi8uLi8uLlwiO1xyXG5pbXBvcnQge2lzTnVsbE9yVW5kZWZpbmVkfSBmcm9tICd1dGlsJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tYWdpYy1vdmVybGF5LWNvbnRhaW5lci13cmFwcGVyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktY29udGFpbmVyLXdyYXBwZXItYmFja2dyb3VuZFwiIHRhYkluZGV4PVwiMFwiIHN0eWxlPVwid2lkdGg6IDBweDsgaGVpZ2h0OiAwcHg7XCIgbWFnaWNGb2N1cz48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktY29udGFpbmVyLXdyYXBwZXItYmFja2dyb3VuZFwiICNvdmVybGF5Q29udGFpbmVyV3JhcHBlcj5cclxuICAgICAgICA8ZGl2ICNvdmVybGF5Q29udGVudCBtYWdpY1ZpZXdDb250YWluZXJSZWY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheS1jb250YWluZXItd3JhcHBlci1iYWNrZ3JvdW5kXCIgdGFiSW5kZXg9XCIwXCIgc3R5bGU9XCJ3aWR0aDogMHB4OyBoZWlnaHQ6IDBweDtcIiA+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHN0eWxlczogW2BcclxuICAgIC5vdmVybGF5LWNvbnRhaW5lci13cmFwcGVyLWJhY2tncm91bmQge1xyXG4gICAgICAvKiBtb2RhbCBiYWNrZ3JvdW5kIGZpeGVkIGFjcm9zcyB3aG9sZSBzY3JlZW4gKi9cclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFnaWNPdmVybGF5Q29udGFpbmVyV3JhcHBlciAgaW1wbGVtZW50cyBJTWFnaWNWaWV3Q29udGFpbmVyUmVmIHtcclxuICAvKipcclxuICAgKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBDb21wb25lbnQgPSBudWxsO1xyXG4gIC8qKlxyXG4gICAqXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIFBhcmFtZXRlcnM6IGFueSA9IHt9O1xyXG5cclxuICBASW5wdXQoKSBwcml2YXRlIE92ZXJsYXlUeXBlUGFyYW06IE92ZXJsYXlUeXBlO1xyXG5cclxuICBAT3V0cHV0KCkgcHJpdmF0ZSBvbkNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAvKipcclxuICAgKiBIVE1MIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgbW9kYWwgd2luZG93XHJcbiAgICovXHJcbiAgb3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdvdmVybGF5Q29udGFpbmVyV3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIG92ZXJsYXlDb250YWluZXJXcmFwcGVyRWxlbWVudFJlZjogRWxlbWVudFJlZjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqIGNvbnRhaXMgZGF0YSBvZiBhbGxvd2VkIGJhc2UgY29tcG9uZW50cyB0byB1c2VcclxuICAgKi9cclxuICBzdGF0aWMgYWxsb3dlZEJhc2VDb21wcyA9IG5ldyBNYXA8bnVtYmVyLCB7Y29tcDogYW55LCBlcnJvcjogc3RyaW5nfT4oW1xyXG4gICAgW092ZXJsYXlUeXBlLk92ZXJsYXksIHtjb21wOiBCYXNlTWFnaWNPdmVybGF5Q29udGFpbmVyLCBlcnJvcjonQmFzZU1hZ2ljT3ZlcmxheUNvbnRhaW5lciAuIE92ZXJsYXkgJ31dLFxyXG4gICAgW092ZXJsYXlUeXBlLkFsZXJ0LCB7Y29tcDogQmFzZU1hZ2ljQWxlcnRDb21wb25lbnQsIGVycm9yOidCYXNlTWFnaWNBbGVydENvbXBvbmVudC4gQWxlcnQgJ31dLFxyXG4gICAgW092ZXJsYXlUeXBlLkNvbmZpcm1hdGlvbkJveCwgIHtjb21wOiBCYXNlTWFnaWNDb25maXJtQ29tcG9uZW50LCBlcnJvciA6J0Jhc2VNYWdpY0NvbmZpcm1Db21wb25lbnQuIENvbmZpcm1hdGlvbiAnfV1cclxuICBdKTtcclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbXBvbmVudExpc3RNYWdpY1NlcnZpY2U6IENvbXBvbmVudExpc3RNYWdpY1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBsb2FkZXI6IE5nTW9kdWxlRmFjdG9yeUxvYWRlcixcclxuICAgICAgICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjpDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKi9cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGxldCBtb2R1bGVSZWY6IE5nTW9kdWxlUmVmPGFueT4gPSB0aGlzLmNvbXBvbmVudExpc3RNYWdpY1NlcnZpY2UuZ2V0TW9kdWxlUmVmKHRoaXMuUGFyYW1ldGVycy5NYWdpY0Zvcm1OYW1lKTtcclxuXHJcbiAgICBpZiAobW9kdWxlUmVmID09IG51bGwpIHtcclxuICAgICAgbGV0IGxhenlMb2FkTW9kdWxlOiBNb2R1bGVEYXRhID0gdGhpcy5jb21wb25lbnRMaXN0TWFnaWNTZXJ2aWNlLmdldExhenlMb2FkTW9kdWxlRGF0YSh0aGlzLlBhcmFtZXRlcnMuTWFnaWNGb3JtTmFtZSk7XHJcblxyXG4gICAgICBpZiAobGF6eUxvYWRNb2R1bGUgIT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMubG9hZGVyXHJcbiAgICAgICAgICAubG9hZChsYXp5TG9hZE1vZHVsZS5tb2R1bGVQYXRoICsgXCIjXCIgKyBsYXp5TG9hZE1vZHVsZS5tb2R1bGVOYW1lKVxyXG4gICAgICAgICAgLnRoZW4oKG1vZHVsZUZhY3Rvcnk6IE5nTW9kdWxlRmFjdG9yeTxhbnk+KSA9PiB7XHJcbiAgICAgICAgICAgIG1vZHVsZVJlZiA9IG1vZHVsZUZhY3RvcnkuY3JlYXRlKHRoaXMuaW5qZWN0b3IpO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRDb21wb25lbnQobW9kdWxlUmVmKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMubG9hZENvbXBvbmVudChudWxsKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlXHJcbiAgICAgIHRoaXMubG9hZENvbXBvbmVudChtb2R1bGVSZWYpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkQ29tcG9uZW50KG1vZHVsZVJlZjogTmdNb2R1bGVSZWY8YW55Pikge1xyXG4gICAgdGhpcy5QYXJhbWV0ZXJzLk1vZGFsQ29tcCA9IHRoaXMuY29tcG9uZW50TGlzdE1hZ2ljU2VydmljZS5nZXRDb21wb25lbnQodGhpcy5QYXJhbWV0ZXJzLk1hZ2ljRm9ybU5hbWUsICFpc051bGxPclVuZGVmaW5lZCh0aGlzLlBhcmFtZXRlcnMuTWFnaWNGb3JtTmFtZSkpO1xyXG5cclxuICAgIGxldCBmYWN0b3J5O1xyXG4gICAgaWYgKG1vZHVsZVJlZiAhPSBudWxsKVxyXG4gICAgICBmYWN0b3J5ID0gbW9kdWxlUmVmLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLkNvbXBvbmVudCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIGZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLkNvbXBvbmVudCk7XHJcblxyXG4gICAgbGV0IGNvbXBvbmVudFJlZiA9IHRoaXMub3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuICAgIGxldCBhbGxvd2VkQmFzZUNvbXAgPSBNYWdpY092ZXJsYXlDb250YWluZXJXcmFwcGVyLmFsbG93ZWRCYXNlQ29tcHMuZ2V0KHRoaXMuT3ZlcmxheVR5cGVQYXJhbSk7XHJcblxyXG5cclxuICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UgaW5zdGFuY2VvZiBhbGxvd2VkQmFzZUNvbXAuY29tcCkge1xyXG4gICAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwgdGhpcy5QYXJhbWV0ZXJzKTtcclxuICAgICAgKDxhbnk+Y29tcG9uZW50UmVmLmluc3RhbmNlKS5vbkNsb3NlLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vbkNsb3NlLmVtaXQocmVzKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgbXNnID0gXCJQcm92aWRlZCAgd2luZG93IGNvbnRhaW5lciBzaG91bGQgc3ViY2xhc3Mgb2YgOiBcIiArIGFsbG93ZWRCYXNlQ29tcC5lcnJvciArIFwid2luZG93IHdpbGwgbm90IHdvcmsgcHJvcGVybHkuXCI7XHJcbiAgICAgIGFsZXJ0KG1zZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRWaWV3Q29udGFpbmVyUmVmKHZjUmVmOiBWaWV3Q29udGFpbmVyUmVmKXtcclxuICAgIHRoaXMub3ZlcmxheUNvbnRlbnRWaWV3Q29udGFpbmVyUmVmID0gdmNSZWY7XHJcbiAgfVxyXG5cclxuICBHZXRSb290RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5Q29udGFpbmVyV3JhcHBlckVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICB9XHJcblxyXG4gIERldGVjdENoYW5nZXMoKVxyXG4gIHtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iXX0=