@simpleangularcontrols/sac-common 16.0.0-rc.2 → 16.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/common/basedatetimecontrol.d.ts +33 -33
  2. package/common/basedatetimecontrol.d.ts.map +1 -1
  3. package/common/baseinputcontrol.d.ts +9 -9
  4. package/common/baseinputcontrol.d.ts.map +1 -1
  5. package/common/basemodelcontrol.d.ts +117 -89
  6. package/common/basemodelcontrol.d.ts.map +1 -1
  7. package/common/baseuploadcontrol.d.ts +140 -140
  8. package/common/baseuploadcontrol.d.ts.map +1 -1
  9. package/controls/checkbox/checkbox.d.ts +7 -3
  10. package/controls/checkbox/checkbox.d.ts.map +1 -1
  11. package/controls/checkbox/radiobuttons.d.ts +5 -4
  12. package/controls/checkbox/radiobuttons.d.ts.map +1 -1
  13. package/controls/contextmenu/contextmenu.d.ts +42 -42
  14. package/controls/contextmenu/contextmenu.d.ts.map +1 -1
  15. package/controls/contextmenu/contextmenuanchor.d.ts +2 -2
  16. package/controls/contextmenu/contextmenuanchor.d.ts.map +1 -1
  17. package/controls/contextmenu/contextmenucontainer.d.ts +2 -2
  18. package/controls/contextmenu/contextmenucontainer.d.ts.map +1 -1
  19. package/controls/datetime/date.d.ts +7 -7
  20. package/controls/datetime/date.d.ts.map +1 -1
  21. package/controls/datetime/datetime.d.ts +7 -7
  22. package/controls/datetime/datetime.d.ts.map +1 -1
  23. package/controls/datetime/time.d.ts +7 -7
  24. package/controls/datetime/time.d.ts.map +1 -1
  25. package/controls/form/form.d.ts +7 -43
  26. package/controls/form/form.d.ts.map +1 -1
  27. package/controls/input/inputdecimal.d.ts +21 -21
  28. package/controls/input/inputdecimal.d.ts.map +1 -1
  29. package/controls/layout/formlayout.d.ts +45 -0
  30. package/controls/layout/formlayout.d.ts.map +1 -0
  31. package/controls/list/dropdown.d.ts +45 -45
  32. package/controls/list/dropdown.d.ts.map +1 -1
  33. package/controls/multilanguage/multilanguageinput.d.ts +5 -4
  34. package/controls/multilanguage/multilanguageinput.d.ts.map +1 -1
  35. package/controls/multilanguage/multilanguageinputarea.d.ts +5 -4
  36. package/controls/multilanguage/multilanguageinputarea.d.ts.map +1 -1
  37. package/controls/tinymce/tinymce.d.ts +63 -63
  38. package/controls/tinymce/tinymce.d.ts.map +1 -1
  39. package/esm2022/common/basedatetimecontrol.mjs +75 -81
  40. package/esm2022/common/baseinputcontrol.mjs +20 -20
  41. package/esm2022/common/basemodelcontrol.mjs +280 -201
  42. package/esm2022/common/baseuploadcontrol.mjs +225 -224
  43. package/esm2022/controls/checkbox/checkbox.mjs +11 -5
  44. package/esm2022/controls/checkbox/radiobuttons.mjs +13 -12
  45. package/esm2022/controls/contextmenu/contextmenu.mjs +85 -75
  46. package/esm2022/controls/contextmenu/contextmenuanchor.mjs +6 -4
  47. package/esm2022/controls/contextmenu/contextmenucontainer.mjs +6 -4
  48. package/esm2022/controls/datetime/date.mjs +12 -12
  49. package/esm2022/controls/datetime/datetime.mjs +15 -15
  50. package/esm2022/controls/datetime/time.mjs +15 -15
  51. package/esm2022/controls/form/form.mjs +26 -80
  52. package/esm2022/controls/input/inputdecimal.mjs +58 -53
  53. package/esm2022/controls/layout/formlayout.mjs +73 -0
  54. package/esm2022/controls/list/dropdown.mjs +110 -91
  55. package/esm2022/controls/multilanguage/multilanguageinput.mjs +10 -9
  56. package/esm2022/controls/multilanguage/multilanguageinputarea.mjs +10 -9
  57. package/esm2022/controls/tinymce/tinymce.mjs +102 -95
  58. package/esm2022/interfaces/ISacLabelSizes.mjs +2 -0
  59. package/esm2022/public_api.mjs +20 -18
  60. package/fesm2022/simpleangularcontrols-sac-common.mjs +1958 -1813
  61. package/fesm2022/simpleangularcontrols-sac-common.mjs.map +1 -1
  62. package/interfaces/ISacLabelSizes.d.ts +27 -0
  63. package/interfaces/ISacLabelSizes.d.ts.map +1 -0
  64. package/package.json +1 -1
  65. package/public_api.d.ts +19 -17
  66. package/public_api.d.ts.map +1 -1
  67. package/simpleangularcontrols-sac-common-16.0.0-rc.3.tgz +0 -0
  68. package/simpleangularcontrols-sac-common-16.0.0-rc.2.tgz +0 -0
@@ -1,20 +1,21 @@
1
1
  import { Directive, Host, Input } from '@angular/core';
2
2
  import { SacInputBase } from '../../common/baseinputcontrol';
3
3
  import { IconType } from '../../enums/IconType';
4
- import { SacDefaultLanguageService, SACLANGUAGE_SERVICE, } from '../../services/sac-language.service';
4
+ import { SACLANGUAGE_SERVICE, SacDefaultLanguageService, } from '../../services/sac-language.service';
5
5
  import { Validation } from '../../validation';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "../form/form";
7
+ import * as i1 from "../layout/formlayout";
8
8
  /**
9
9
  * Base Klasse für Multi Language Input Control
10
10
  */
11
11
  class SacMultilanguageInputCommon extends SacInputBase {
12
12
  /**
13
- * Konstruktor
14
- * Inject des Formulars
13
+ * Constructor
14
+ * @param formlayout SacFormLayoutCommon to define scoped layout settings
15
+ * @param injector Injector for injecting services
15
16
  */
16
- constructor(parent, injector) {
17
- super(parent, injector);
17
+ constructor(formlayout, injector) {
18
+ super(formlayout, injector);
18
19
  /**
19
20
  * Max länge an Zeichen für Eingabefeld
20
21
  */
@@ -203,13 +204,13 @@ class SacMultilanguageInputCommon extends SacInputBase {
203
204
  }
204
205
  return error;
205
206
  }
206
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputCommon, deps: [{ token: i1.SacFormCommon, host: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputCommon, deps: [{ token: i1.SacFormLayoutCommon, host: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
207
208
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacMultilanguageInputCommon, inputs: { maxlength: "maxlength", controlwidth: "controlwidth", requiredany: "requiredany", validationmessagerequired: "validationmessagerequired", validationmessagesummaryrequired: "validationmessagesummaryrequired", validationmessagerequiredany: "validationmessagerequiredany", validationmessagesummaryrequiredany: "validationmessagesummaryrequiredany" }, usesInheritance: true, ngImport: i0 }); }
208
209
  }
209
210
  export { SacMultilanguageInputCommon };
210
211
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputCommon, decorators: [{
211
212
  type: Directive
212
- }], ctorParameters: function () { return [{ type: i1.SacFormCommon, decorators: [{
213
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutCommon, decorators: [{
213
214
  type: Host
214
215
  }] }, { type: i0.Injector }]; }, propDecorators: { maxlength: [{
215
216
  type: Input
@@ -226,4 +227,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
226
227
  }], validationmessagesummaryrequiredany: [{
227
228
  type: Input
228
229
  }] } });
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZWlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvbXVsdGlsYW5ndWFnZS9tdWx0aWxhbmd1YWdlaW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHaEQsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixtQkFBbUIsR0FDcEIsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7OztBQUc5Qzs7R0FFRztBQUNILE1BQ2EsMkJBQTRCLFNBQVEsWUFBaUI7SUErQ2hFOzs7T0FHRztJQUNILFlBQW9CLE1BQXFCLEVBQUUsUUFBa0I7UUFDM0QsS0FBSyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztRQW5EMUI7O1dBRUc7UUFDTSxjQUFTLEdBQVcsSUFBSSxDQUFDO1FBRWxDOztXQUVHO1FBQ00saUJBQVksR0FBVyxJQUFJLENBQUM7UUFFckM7O1dBRUc7UUFDTSxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUV0Qzs7V0FFRztRQUNNLDhCQUF5QixHQUNoQyx3Q0FBd0MsQ0FBQztRQUUzQzs7V0FFRztRQUVILHFDQUFnQyxHQUM5QixnREFBZ0QsQ0FBQztRQUVuRDs7V0FFRztRQUNNLGlDQUE0QixHQUNuQywyQ0FBMkMsQ0FBQztRQUU5Qzs7V0FFRztRQUVILHdDQUFtQyxHQUNqQyxtREFBbUQsQ0FBQztRQWdDdEQ7O1dBRUc7UUFDSyxjQUFTLEdBQW9CLEVBQUUsQ0FBQztRQUN4Qzs7V0FFRztRQUNLLHFCQUFnQixH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QUMsVUFBVSxLQUFLLFNBQVM7WUFDN0IsSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQ3hCO1lBQ0EsS0FBSyxHQUFHLFVBQVUsQ0FBQyxxQkFBcUIsQ0FDdEMsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMseUJBQXlCLEVBQzlCLElBQUksQ0FBQyxnQ0FBZ0MsQ0FDdEMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNOO1FBRUQsSUFDRSxLQUFLLEtBQUssSUFBSTtZQUNkLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSTtZQUNoQixDQUFDLENBQUMsS0FBSyxLQUFLLFNBQVM7WUFDckIsQ0FBQyxDQUFDLEtBQUssS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsS0FBSyxTQUFTO1lBQzlCLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxFQUN6QjtZQUNBLEtBQUssR0FBRyxVQUFVLENBQUMsd0JBQXdCLENBQ3pDLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLDRCQUE0QixFQUNqQyxJQUFJLENBQUMsbUNBQW1DLENBQ3pDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzsrR0F6UFUsMkJBQTJCO21HQUEzQiwyQkFBMkI7O1NBQTNCLDJCQUEyQjs0RkFBM0IsMkJBQTJCO2tCQUR2QyxTQUFTOzswQkFvREssSUFBSTttRUEvQ1IsU0FBUztzQkFBakIsS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQU9OLGdDQUFnQztzQkFEL0IsS0FBSztnQkFPRyw0QkFBNEI7c0JBQXBDLEtBQUs7Z0JBT04sbUNBQW1DO3NCQURsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEJhc2UgfSBmcm9tICcuLi8uLi9jb21tb24vYmFzZWlucHV0Y29udHJvbCc7XHJcbmltcG9ydCB7IEljb25UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvSWNvblR5cGUnO1xyXG5pbXBvcnQgeyBJU2FjTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTGFuZ3VhZ2VTZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9sYW5ndWFnZW1vZGVsJztcclxuaW1wb3J0IHtcclxuICBTYWNEZWZhdWx0TGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gIFNBQ0xBTkdVQUdFX1NFUlZJQ0UsXHJcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1Db21tb24gfSBmcm9tICcuLi9mb3JtL2Zvcm0nO1xyXG5cclxuLyoqXHJcbiAqIEJhc2UgS2xhc3NlIGbDvHIgTXVsdGkgTGFuZ3VhZ2UgSW5wdXQgQ29udHJvbFxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBTYWNNdWx0aWxhbmd1YWdlSW5wdXRDb21tb24gZXh0ZW5kcyBTYWNJbnB1dEJhc2U8YW55PiB7XHJcbiAgLyoqXHJcbiAgICogTWF4IGzDpG5nZSBhbiBaZWljaGVuIGbDvHIgRWluZ2FiZWZlbGRcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpeCBicmVpdGUgZsO8ciBkYXMgQ29udHJvbCBkZWZpbmllcmVuLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbnRyb2x3aWR0aDogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQWt0aXZpZXJ0IGRlbiBWYWxpZGF0b3IsIGRhcyBtaW4uIGVpbmUgU3ByYWNoZSBlcmZhc3N0IHNlaW4gbXVzc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHJlcXVpcmVkYW55OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc291cmNlIEtleSBmw7xyIFZhbGlkYXRpb24gTWVzc2FnZSBSZXF1aXJlZCBiZWkgQ29udHJvbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9NVUxUSUxBTkdVQUdFUkVRVUlSRUQnO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICB2YWxpZGF0aW9ubWVzc2FnZXN1bW1hcnlyZXF1aXJlZDogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX1NVTU1BUllfTVVMVElMQU5HVUFHRVJFUVVJUkVEJztcclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gYmVpIENvbnRyb2xcclxuICAgKi9cclxuICBASW5wdXQoKSB2YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55OiBzdHJpbmcgPVxyXG4gICAgJ1ZBTElEQVRJT05fRVJST1JfTVVMVElMQU5HVUFHRVJFUVVJUkVEQU5ZJztcclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICB2YWxpZGF0aW9ubWVzc2FnZXN1bW1hcnlyZXF1aXJlZGFueTogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX1NVTU1BUllfTVVMVElMQU5HVUFHRVJFUVVJUkVEQU5ZJztcclxuXHJcbiAgLyoqXHJcbiAgICogU2VydmljZSBmw7xyIEVycm9yIExvY2FsaXNhdGlvblxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBsbmdMYW5ndWFnZVNlcnZpY2U6IElTYWNMYW5ndWFnZVNlcnZpY2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIEtvbnN0cnVrdG9yXHJcbiAgICogSW5qZWN0IGRlcyBGb3JtdWxhcnNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihASG9zdCgpIHBhcmVudDogU2FjRm9ybUNvbW1vbiwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICBzdXBlcihwYXJlbnQsIGluamVjdG9yKTtcclxuXHJcbiAgICB0aGlzLmxuZ0xhbmd1YWdlU2VydmljZSA9IGluamVjdG9yLmdldChcclxuICAgICAgU0FDTEFOR1VBR0VfU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRMYW5ndWFnZVNlcnZpY2UoKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmxuZ0xhbmd1YWdlU2VydmljZVxyXG4gICAgICAuR2V0TGFuZ3VhZ2VzKClcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBMYW5ndWFnZU1vZGVsW10pID0+IHtcclxuICAgICAgICB0aGlzLmxhbmd1YWdlcyA9IHJlc3VsdDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMubGFuZ3VhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSA9IHRoaXMubGFuZ3VhZ2VzWzBdO1xyXG4gICAgICAgICAgLy8gQ29udHJvbCBWYWxpZGllcnVuZyBhdXNmw7xocmVuLCBkYSBXZXJ0IHBvdGVudGllbGwgYmVyZWl0cyBnZXNldHp0IHNlaW4ga2FublxyXG4gICAgICAgICAgdGhpcy5VcGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwcmFjaGUgZsO8ciBkYXMgQ29udHJvbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgbGFuZ3VhZ2VzOiBMYW5ndWFnZU1vZGVsW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0ZSBTcHJhY2UgZGVzIENvbnRyb2xzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZWxlY3RlZExhbmd1YWdlOiBMYW5ndWFnZU1vZGVsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29sbGVjdGlvbiBkZXIgU3ByYWNoZW5cclxuICAgKi9cclxuICBnZXQgTGFuZ3VhZ2VzKCk6IExhbmd1YWdlTW9kZWxbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRhcyBJY29uIGRlciBzZWxla3RpZXJ0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IFNlbGVjdGVkSWNvbigpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmd1YWdlLkljb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBUeXBlIGRlcyBJY29ucyBmw7xyIGRpZSBzZWxla3RpZXJ0ZSBTcHJhY2hlIHp1csO8Y2tcclxuICAgKi9cclxuICBnZXQgU2VsZWN0ZWRJY29uVHlwZSgpOiBJY29uVHlwZSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSWNvblR5cGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gSWNvblR5cGUuSW1hZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBXZXJ0IGRlciBha3R1ZWxsIGF1c2dld8OkaGx0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IExhbmd1YWdlVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0enQgZGVuIFdlcnQgZsO8ciBkaWUgYWt0dWVsbCBnZXfDpGhsdGUgU3ByYWNoZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSBXZXJ0IHdlbGNoZXIgZ2VzZXR6dCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBTZXRMYW5ndWFnZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMudmFsdWVbY3VycmVudElzb0NvZGVdID0gdmFsdWU7XHJcbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuX3ZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlbGVrdGllcnQgZGllIFNwcmFjaGVcclxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgU3ByYWNoZSBkaWUgc2VsZWt0aWVydCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBTZWxlY3RMYW5ndWFnZShsYW5ndWFnZTogTGFuZ3VhZ2VNb2RlbCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlID0gbGFuZ3VhZ2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQcsO8ZnQgb2IgaW4gZWluZXIgYmVzdGltbXRlbiBTcHJhY2hlIGVpbiBXZXJ0IHZvcmhhbmRlbiBpc3QuXHJcbiAgICogQHBhcmFtIHNwcmFjaGUgU3ByYWNoZSBpbiB3ZWxjaGVyIGRlciBXZXJ0IGdlcHLDvGZ0IHdlcmRlbiBzb2xsXHJcbiAgICogQHJldHVybnMgV2VydCBpc3Qgdm9yaGFuZGVuXHJcbiAgICovXHJcbiAgcHVibGljIElzRW1wdHkoc3ByYWNoZTogTGFuZ3VhZ2VNb2RlbCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoc3ByYWNoZSA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHRoaXMudmFsdWVbc3ByYWNoZS5Jc29Db2RlXSA9PT0gdW5kZWZpbmVkIHx8XHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSAnJyB8fFxyXG4gICAgICAgIHRoaXMudmFsdWVbc3ByYWNoZS5Jc29Db2RlXSA9PT0gbnVsbFxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQcsO8ZnQgb2IgaW4gaXJnZW5kZWluZXIgU3ByYWNoZSBrZWluIFdlcnQgZGVmaW5pZXJ0IHd1cmRlXHJcbiAgICogQHJldHVybnMgTGVlcndlcnQgaXN0IHZvcmhhbmRlblxyXG4gICAqL1xyXG4gIHB1YmxpYyBJc0FueUVtcHR5KCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGZvdW5kID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy5sYW5ndWFnZXMuZm9yRWFjaCgoaXRtOiBMYW5ndWFnZU1vZGVsKSA9PiB7XHJcbiAgICAgICAgaWYgKGl0bSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgZm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy52YWx1ZVtpdG0uSXNvQ29kZV0gPT09IHVuZGVmaW5lZCB8fFxyXG4gICAgICAgICAgdGhpcy52YWx1ZVtpdG0uSXNvQ29kZV0gPT09ICcnIHx8XHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gbnVsbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgZm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZm91bmQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHZhbGlkaWVydCwgb2IgZGVyIFdlcnQgZGVuIGdlZ2ViZW5lbiBLcml0ZXJpZW4gZW50c3ByaWNodFxyXG4gICAqIEBwYXJhbSBjIENvbnRyb2wgZGFzIHZhbGlkaWVydCB3aXJkXHJcbiAgICovXHJcbiAgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgPT09IHRydWVcclxuICAgICkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ubXVsdGlsYW5ndWFnZVJlcXVpcmVkKFxyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VzLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZCxcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkXHJcbiAgICAgICkoYyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLnJlcXVpcmVkYW55ICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgdGhpcy5yZXF1aXJlZGFueSA9PT0gdHJ1ZVxyXG4gICAgKSB7XHJcbiAgICAgIGVycm9yID0gVmFsaWRhdGlvbi5tdWx0aWxhbmd1YWdlUmVxdWlyZWRBbnkoXHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMsXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55LFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnlcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG59XHJcbiJdfQ==
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZWlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvbXVsdGlsYW5ndWFnZS9tdWx0aWxhbmd1YWdlaW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHaEQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQix5QkFBeUIsR0FDMUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7OztBQUc5Qzs7R0FFRztBQUNILE1BQ2EsMkJBQTRCLFNBQVEsWUFBaUI7SUErQ2hFOzs7O09BSUc7SUFDSCxZQUFvQixVQUErQixFQUFFLFFBQWtCO1FBQ3JFLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFwRDlCOztXQUVHO1FBQ00sY0FBUyxHQUFXLElBQUksQ0FBQztRQUVsQzs7V0FFRztRQUNNLGlCQUFZLEdBQVcsSUFBSSxDQUFDO1FBRXJDOztXQUVHO1FBQ00sZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFdEM7O1dBRUc7UUFDTSw4QkFBeUIsR0FDaEMsd0NBQXdDLENBQUM7UUFFM0M7O1dBRUc7UUFFSCxxQ0FBZ0MsR0FDOUIsZ0RBQWdELENBQUM7UUFFbkQ7O1dBRUc7UUFDTSxpQ0FBNEIsR0FDbkMsMkNBQTJDLENBQUM7UUFFOUM7O1dBRUc7UUFFSCx3Q0FBbUMsR0FDakMsbURBQW1ELENBQUM7UUFpQ3REOztXQUVHO1FBQ0ssY0FBUyxHQUFvQixFQUFFLENBQUM7UUFDeEM7O1dBRUc7UUFDSyxxQkFBZ0Is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QUFDLFVBQVUsS0FBSyxTQUFTO1lBQzdCLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUN4QjtZQUNBLEtBQUssR0FBRyxVQUFVLENBQUMscUJBQXFCLENBQ3RDLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLHlCQUF5QixFQUM5QixJQUFJLENBQUMsZ0NBQWdDLENBQ3RDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELElBQ0UsS0FBSyxLQUFLLElBQUk7WUFDZCxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUk7WUFDaEIsQ0FBQyxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQ3JCLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUztZQUM5QixJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksRUFDekI7WUFDQSxLQUFLLEdBQUcsVUFBVSxDQUFDLHdCQUF3QixDQUN6QyxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyw0QkFBNEIsRUFDakMsSUFBSSxDQUFDLG1DQUFtQyxDQUN6QyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBMVBVLDJCQUEyQjttR0FBM0IsMkJBQTJCOztTQUEzQiwyQkFBMkI7NEZBQTNCLDJCQUEyQjtrQkFEdkMsU0FBUzs7MEJBcURLLElBQUk7bUVBaERSLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csWUFBWTtzQkFBcEIsS0FBSztnQkFLRyxXQUFXO3NCQUFuQixLQUFLO2dCQUtHLHlCQUF5QjtzQkFBakMsS0FBSztnQkFPTixnQ0FBZ0M7c0JBRC9CLEtBQUs7Z0JBT0csNEJBQTRCO3NCQUFwQyxLQUFLO2dCQU9OLG1DQUFtQztzQkFEbEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdCwgSW5qZWN0b3IsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2FjSW5wdXRCYXNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2VpbnB1dGNvbnRyb2wnO1xyXG5pbXBvcnQgeyBJY29uVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL0ljb25UeXBlJztcclxuaW1wb3J0IHsgSVNhY0xhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY0xhbmd1YWdlU2VydmljZSc7XHJcbmltcG9ydCB7IExhbmd1YWdlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGFuZ3VhZ2Vtb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgU0FDTEFOR1VBR0VfU0VSVklDRSxcclxuICBTYWNEZWZhdWx0TGFuZ3VhZ2VTZXJ2aWNlLFxyXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbiB9IGZyb20gJy4uLy4uL3ZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0Q29tbW9uIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQnO1xyXG5cclxuLyoqXHJcbiAqIEJhc2UgS2xhc3NlIGbDvHIgTXVsdGkgTGFuZ3VhZ2UgSW5wdXQgQ29udHJvbFxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBTYWNNdWx0aWxhbmd1YWdlSW5wdXRDb21tb24gZXh0ZW5kcyBTYWNJbnB1dEJhc2U8YW55PiB7XHJcbiAgLyoqXHJcbiAgICogTWF4IGzDpG5nZSBhbiBaZWljaGVuIGbDvHIgRWluZ2FiZWZlbGRcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpeCBicmVpdGUgZsO8ciBkYXMgQ29udHJvbCBkZWZpbmllcmVuLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbnRyb2x3aWR0aDogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQWt0aXZpZXJ0IGRlbiBWYWxpZGF0b3IsIGRhcyBtaW4uIGVpbmUgU3ByYWNoZSBlcmZhc3N0IHNlaW4gbXVzc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHJlcXVpcmVkYW55OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc291cmNlIEtleSBmw7xyIFZhbGlkYXRpb24gTWVzc2FnZSBSZXF1aXJlZCBiZWkgQ29udHJvbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9NVUxUSUxBTkdVQUdFUkVRVUlSRUQnO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICB2YWxpZGF0aW9ubWVzc2FnZXN1bW1hcnlyZXF1aXJlZDogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX1NVTU1BUllfTVVMVElMQU5HVUFHRVJFUVVJUkVEJztcclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gYmVpIENvbnRyb2xcclxuICAgKi9cclxuICBASW5wdXQoKSB2YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55OiBzdHJpbmcgPVxyXG4gICAgJ1ZBTElEQVRJT05fRVJST1JfTVVMVElMQU5HVUFHRVJFUVVJUkVEQU5ZJztcclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICB2YWxpZGF0aW9ubWVzc2FnZXN1bW1hcnlyZXF1aXJlZGFueTogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX1NVTU1BUllfTVVMVElMQU5HVUFHRVJFUVVJUkVEQU5ZJztcclxuXHJcbiAgLyoqXHJcbiAgICogU2VydmljZSBmw7xyIEVycm9yIExvY2FsaXNhdGlvblxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBsbmdMYW5ndWFnZVNlcnZpY2U6IElTYWNMYW5ndWFnZVNlcnZpY2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdG9yXHJcbiAgICogQHBhcmFtIGZvcm1sYXlvdXQgU2FjRm9ybUxheW91dENvbW1vbiB0byBkZWZpbmUgc2NvcGVkIGxheW91dCBzZXR0aW5nc1xyXG4gICAqIEBwYXJhbSBpbmplY3RvciBJbmplY3RvciBmb3IgaW5qZWN0aW5nIHNlcnZpY2VzXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoQEhvc3QoKSBmb3JtbGF5b3V0OiBTYWNGb3JtTGF5b3V0Q29tbW9uLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgIHN1cGVyKGZvcm1sYXlvdXQsIGluamVjdG9yKTtcclxuXHJcbiAgICB0aGlzLmxuZ0xhbmd1YWdlU2VydmljZSA9IGluamVjdG9yLmdldChcclxuICAgICAgU0FDTEFOR1VBR0VfU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRMYW5ndWFnZVNlcnZpY2UoKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmxuZ0xhbmd1YWdlU2VydmljZVxyXG4gICAgICAuR2V0TGFuZ3VhZ2VzKClcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBMYW5ndWFnZU1vZGVsW10pID0+IHtcclxuICAgICAgICB0aGlzLmxhbmd1YWdlcyA9IHJlc3VsdDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMubGFuZ3VhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSA9IHRoaXMubGFuZ3VhZ2VzWzBdO1xyXG4gICAgICAgICAgLy8gQ29udHJvbCBWYWxpZGllcnVuZyBhdXNmw7xocmVuLCBkYSBXZXJ0IHBvdGVudGllbGwgYmVyZWl0cyBnZXNldHp0IHNlaW4ga2FublxyXG4gICAgICAgICAgdGhpcy5VcGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwcmFjaGUgZsO8ciBkYXMgQ29udHJvbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgbGFuZ3VhZ2VzOiBMYW5ndWFnZU1vZGVsW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0ZSBTcHJhY2UgZGVzIENvbnRyb2xzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZWxlY3RlZExhbmd1YWdlOiBMYW5ndWFnZU1vZGVsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29sbGVjdGlvbiBkZXIgU3ByYWNoZW5cclxuICAgKi9cclxuICBnZXQgTGFuZ3VhZ2VzKCk6IExhbmd1YWdlTW9kZWxbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRhcyBJY29uIGRlciBzZWxla3RpZXJ0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IFNlbGVjdGVkSWNvbigpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmd1YWdlLkljb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBUeXBlIGRlcyBJY29ucyBmw7xyIGRpZSBzZWxla3RpZXJ0ZSBTcHJhY2hlIHp1csO8Y2tcclxuICAgKi9cclxuICBnZXQgU2VsZWN0ZWRJY29uVHlwZSgpOiBJY29uVHlwZSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSWNvblR5cGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gSWNvblR5cGUuSW1hZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBXZXJ0IGRlciBha3R1ZWxsIGF1c2dld8OkaGx0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IExhbmd1YWdlVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0enQgZGVuIFdlcnQgZsO8ciBkaWUgYWt0dWVsbCBnZXfDpGhsdGUgU3ByYWNoZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSBXZXJ0IHdlbGNoZXIgZ2VzZXR6dCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBTZXRMYW5ndWFnZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMudmFsdWVbY3VycmVudElzb0NvZGVdID0gdmFsdWU7XHJcbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuX3ZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlbGVrdGllcnQgZGllIFNwcmFjaGVcclxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgU3ByYWNoZSBkaWUgc2VsZWt0aWVydCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBTZWxlY3RMYW5ndWFnZShsYW5ndWFnZTogTGFuZ3VhZ2VNb2RlbCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlID0gbGFuZ3VhZ2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQcsO8ZnQgb2IgaW4gZWluZXIgYmVzdGltbXRlbiBTcHJhY2hlIGVpbiBXZXJ0IHZvcmhhbmRlbiBpc3QuXHJcbiAgICogQHBhcmFtIHNwcmFjaGUgU3ByYWNoZSBpbiB3ZWxjaGVyIGRlciBXZXJ0IGdlcHLDvGZ0IHdlcmRlbiBzb2xsXHJcbiAgICogQHJldHVybnMgV2VydCBpc3Qgdm9yaGFuZGVuXHJcbiAgICovXHJcbiAgcHVibGljIElzRW1wdHkoc3ByYWNoZTogTGFuZ3VhZ2VNb2RlbCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoc3ByYWNoZSA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHRoaXMudmFsdWVbc3ByYWNoZS5Jc29Db2RlXSA9PT0gdW5kZWZpbmVkIHx8XHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSAnJyB8fFxyXG4gICAgICAgIHRoaXMudmFsdWVbc3ByYWNoZS5Jc29Db2RlXSA9PT0gbnVsbFxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQcsO8ZnQgb2IgaW4gaXJnZW5kZWluZXIgU3ByYWNoZSBrZWluIFdlcnQgZGVmaW5pZXJ0IHd1cmRlXHJcbiAgICogQHJldHVybnMgTGVlcndlcnQgaXN0IHZvcmhhbmRlblxyXG4gICAqL1xyXG4gIHB1YmxpYyBJc0FueUVtcHR5KCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGZvdW5kID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy5sYW5ndWFnZXMuZm9yRWFjaCgoaXRtOiBMYW5ndWFnZU1vZGVsKSA9PiB7XHJcbiAgICAgICAgaWYgKGl0bSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgZm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy52YWx1ZVtpdG0uSXNvQ29kZV0gPT09IHVuZGVmaW5lZCB8fFxyXG4gICAgICAgICAgdGhpcy52YWx1ZVtpdG0uSXNvQ29kZV0gPT09ICcnIHx8XHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gbnVsbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgZm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZm91bmQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHZhbGlkaWVydCwgb2IgZGVyIFdlcnQgZGVuIGdlZ2ViZW5lbiBLcml0ZXJpZW4gZW50c3ByaWNodFxyXG4gICAqIEBwYXJhbSBjIENvbnRyb2wgZGFzIHZhbGlkaWVydCB3aXJkXHJcbiAgICovXHJcbiAgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgPT09IHRydWVcclxuICAgICkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ubXVsdGlsYW5ndWFnZVJlcXVpcmVkKFxyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VzLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZCxcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkXHJcbiAgICAgICkoYyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLnJlcXVpcmVkYW55ICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgdGhpcy5yZXF1aXJlZGFueSA9PT0gdHJ1ZVxyXG4gICAgKSB7XHJcbiAgICAgIGVycm9yID0gVmFsaWRhdGlvbi5tdWx0aWxhbmd1YWdlUmVxdWlyZWRBbnkoXHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMsXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55LFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnlcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,20 +1,21 @@
1
1
  import { Directive, Host, Input } from '@angular/core';
2
2
  import { SacInputBase } from '../../common/baseinputcontrol';
3
3
  import { IconType } from '../../enums/IconType';
4
- import { SacDefaultLanguageService, SACLANGUAGE_SERVICE, } from '../../services/sac-language.service';
4
+ import { SACLANGUAGE_SERVICE, SacDefaultLanguageService, } from '../../services/sac-language.service';
5
5
  import { Validation } from '../../validation';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "../form/form";
7
+ import * as i1 from "../layout/formlayout";
8
8
  /**
9
9
  * Base Klasse für Multi Language Textarea Control
10
10
  */
11
11
  class SacMultilanguageInputAreaCommon extends SacInputBase {
12
12
  /**
13
- * Konstruktor
14
- * Inject des Formulars
13
+ * Constructor
14
+ * @param formlayout SacFormLayoutCommon to define scoped layout settings
15
+ * @param injector Injector for injecting services
15
16
  */
16
- constructor(parent, injector) {
17
- super(parent, injector);
17
+ constructor(formlayout, injector) {
18
+ super(formlayout, injector);
18
19
  /**
19
20
  * Max länge an Zeichen für Eingabefeld
20
21
  */
@@ -203,13 +204,13 @@ class SacMultilanguageInputAreaCommon extends SacInputBase {
203
204
  }
204
205
  return error;
205
206
  }
206
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputAreaCommon, deps: [{ token: i1.SacFormCommon, host: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputAreaCommon, deps: [{ token: i1.SacFormLayoutCommon, host: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
207
208
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacMultilanguageInputAreaCommon, inputs: { maxlength: "maxlength", rows: "rows", controlwidth: "controlwidth", requiredany: "requiredany", validationmessagerequired: "validationmessagerequired", validationmessagesummaryrequired: "validationmessagesummaryrequired", validationmessagerequiredany: "validationmessagerequiredany", validationmessagesummaryrequiredany: "validationmessagesummaryrequiredany" }, usesInheritance: true, ngImport: i0 }); }
208
209
  }
209
210
  export { SacMultilanguageInputAreaCommon };
210
211
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacMultilanguageInputAreaCommon, decorators: [{
211
212
  type: Directive
212
- }], ctorParameters: function () { return [{ type: i1.SacFormCommon, decorators: [{
213
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutCommon, decorators: [{
213
214
  type: Host
214
215
  }] }, { type: i0.Injector }]; }, propDecorators: { maxlength: [{
215
216
  type: Input
@@ -228,4 +229,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
228
229
  }], validationmessagesummaryrequiredany: [{
229
230
  type: Input
230
231
  }] } });
231
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZWlucHV0YXJlYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL211bHRpbGFuZ3VhZ2UvbXVsdGlsYW5ndWFnZWlucHV0YXJlYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdoRCxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLG1CQUFtQixHQUNwQixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBRzlDOztHQUVHO0FBQ0gsTUFDYSwrQkFBZ0MsU0FBUSxZQUFpQjtJQWdEcEU7OztPQUdHO0lBQ0gsWUFBb0IsTUFBcUIsRUFBRSxRQUFrQjtRQUMzRCxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBcEQxQjs7V0FFRztRQUNNLGNBQVMsR0FBVyxJQUFJLENBQUM7UUFFbEM7O1dBRUc7UUFDTSxTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBRTFCOztXQUVHO1FBQ00saUJBQVksR0FBVyxJQUFJLENBQUM7UUFFckM7O1dBRUc7UUFDTSxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUV0Qzs7V0FFRztRQUNNLDhCQUF5QixHQUNoQyx3Q0FBd0MsQ0FBQztRQUMzQzs7V0FFRztRQUNNLHFDQUFnQyxHQUN2QyxnREFBZ0QsQ0FBQztRQUVuRDs7V0FFRztRQUNNLGlDQUE0QixHQUNuQywyQ0FBMkMsQ0FBQztRQUM5Qzs7V0FFRztRQUNNLHdDQUFtQyxHQUMxQyxtREFBbUQsQ0FBQztRQWdDdEQ7O1dBRUc7UUFDSyxj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QUN4QjtZQUNBLEtBQUssR0FBRyxVQUFVLENBQUMscUJBQXFCLENBQ3RDLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLHlCQUF5QixFQUM5QixJQUFJLENBQUMsZ0NBQWdDLENBQ3RDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELElBQ0UsS0FBSyxLQUFLLElBQUk7WUFDZCxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUk7WUFDaEIsQ0FBQyxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQ3JCLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUztZQUM5QixJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksRUFDekI7WUFDQSxLQUFLLEdBQUcsVUFBVSxDQUFDLHdCQUF3QixDQUN6QyxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyw0QkFBNEIsRUFDakMsSUFBSSxDQUFDLG1DQUFtQyxDQUN6QyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBdlBVLCtCQUErQjttR0FBL0IsK0JBQStCOztTQUEvQiwrQkFBK0I7NEZBQS9CLCtCQUErQjtrQkFEM0MsU0FBUzs7MEJBcURLLElBQUk7bUVBaERSLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUtHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBS0csV0FBVztzQkFBbkIsS0FBSztnQkFLRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBS0csZ0NBQWdDO3NCQUF4QyxLQUFLO2dCQU1HLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFLRyxtQ0FBbUM7c0JBQTNDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3QsIEluamVjdG9yLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0lucHV0QmFzZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9iYXNlaW5wdXRjb250cm9sJztcclxuaW1wb3J0IHsgSWNvblR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcy9JY29uVHlwZSc7XHJcbmltcG9ydCB7IElTYWNMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNMYW5ndWFnZVNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYW5ndWFnZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2xhbmd1YWdlbW9kZWwnO1xyXG5pbXBvcnQge1xyXG4gIFNhY0RlZmF1bHRMYW5ndWFnZVNlcnZpY2UsXHJcbiAgU0FDTEFOR1VBR0VfU0VSVklDRSxcclxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi92YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgU2FjRm9ybUNvbW1vbiB9IGZyb20gJy4uL2Zvcm0vZm9ybSc7XHJcblxyXG4vKipcclxuICogQmFzZSBLbGFzc2UgZsO8ciBNdWx0aSBMYW5ndWFnZSBUZXh0YXJlYSBDb250cm9sXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGNsYXNzIFNhY011bHRpbGFuZ3VhZ2VJbnB1dEFyZWFDb21tb24gZXh0ZW5kcyBTYWNJbnB1dEJhc2U8YW55PiB7XHJcbiAgLyoqXHJcbiAgICogTWF4IGzDpG5nZSBhbiBaZWljaGVuIGbDvHIgRWluZ2FiZWZlbGRcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFuemFobCBSb3dzIGbDvHIgVGV4dEFyZWFcclxuICAgKi9cclxuICBASW5wdXQoKSByb3dzOiBudW1iZXIgPSA3O1xyXG5cclxuICAvKipcclxuICAgKiBGaXggYnJlaXRlIGbDvHIgZGFzIENvbnRyb2wgZGVmaW5pZXJlbi5cclxuICAgKi9cclxuICBASW5wdXQoKSBjb250cm9sd2lkdGg6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFrdGl2aWVydCBkZW4gVmFsaWRhdG9yLCBkYXMgbWluLiBlaW5lIFNwcmFjaGUgZXJmYXNzdCBzZWluIG11c3NcclxuICAgKi9cclxuICBASW5wdXQoKSByZXF1aXJlZGFueTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgYmVpIENvbnRyb2xcclxuICAgKi9cclxuICBASW5wdXQoKSB2YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkOiBzdHJpbmcgPVxyXG4gICAgJ1ZBTElEQVRJT05fRVJST1JfTVVMVElMQU5HVUFHRVJFUVVJUkVEJztcclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9TVU1NQVJZX01VTFRJTEFOR1VBR0VSRVFVSVJFRCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc291cmNlIEtleSBmw7xyIFZhbGlkYXRpb24gTWVzc2FnZSBQYXR0ZXJuIGJlaSBDb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZGFueTogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX01VTFRJTEFOR1VBR0VSRVFVSVJFREFOWSc7XHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnk6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9TVU1NQVJZX01VTFRJTEFOR1VBR0VSRVFVSVJFREFOWSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgbG5nTGFuZ3VhZ2VTZXJ2aWNlOiBJU2FjTGFuZ3VhZ2VTZXJ2aWNlO1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEluamVjdCBkZXMgRm9ybXVsYXJzXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoQEhvc3QoKSBwYXJlbnQ6IFNhY0Zvcm1Db21tb24sIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgc3VwZXIocGFyZW50LCBpbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5sbmdMYW5ndWFnZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0xBTkdVQUdFX1NFUlZJQ0UsXHJcbiAgICAgIG5ldyBTYWNEZWZhdWx0TGFuZ3VhZ2VTZXJ2aWNlKClcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5sbmdMYW5ndWFnZVNlcnZpY2VcclxuICAgICAgLkdldExhbmd1YWdlcygpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogTGFuZ3VhZ2VNb2RlbFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMgPSByZXN1bHQ7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmxhbmd1YWdlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UgPSB0aGlzLmxhbmd1YWdlc1swXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gQ29udHJvbCBWYWxpZGllcnVuZyBhdXNmw7xocmVuLCBkYSBXZXJ0IHBvdGVudGllbGwgYmVyZWl0cyBnZXNldHp0IHNlaW4ga2FublxyXG4gICAgICAgIHRoaXMuVXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwcmFjaGUgZsO8ciBkYXMgQ29udHJvbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgbGFuZ3VhZ2VzOiBMYW5ndWFnZU1vZGVsW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0ZSBTcHJhY2UgZGVzIENvbnRyb2xzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZWxlY3RlZExhbmd1YWdlOiBMYW5ndWFnZU1vZGVsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29sbGVjdGlvbiBkZXIgU3ByYWNoZW5cclxuICAgKi9cclxuICBnZXQgTGFuZ3VhZ2VzKCk6IExhbmd1YWdlTW9kZWxbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRhcyBJY29uIGRlciBzZWxla3RpZXJ0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IFNlbGVjdGVkSWNvbigpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmd1YWdlLkljb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBUeXBlIGRlcyBJY29ucyBmw7xyIGRpZSBzZWxla3RpZXJ0ZSBTcHJhY2hlIHp1csO8Y2tcclxuICAgKi9cclxuICBnZXQgU2VsZWN0ZWRJY29uVHlwZSgpOiBJY29uVHlwZSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSWNvblR5cGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gSWNvblR5cGUuSW1hZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXR0ZXIgd2VsY2hlciBkZW4gV2VydCBkZXIgQ29tcG9uZW50IGluIGRlciBnZXfDpGhsdGVuIFNwcmFjaGUgenVyw7xja2dpYnQuIFdlbm4ga2VpbmUgU3ByYWNoZSBzZWxla3RpZXJ0IGlzdCwgd2lyZCBlaW4gbGVlcmVyIFdlcnQgenVyw7xja2dlZ2ViZW4uXHJcbiAgICogSXN0IGluIGRlciBDb21wb25lbnQga2VpbiBXZXJ0IGdlc3BlaWNoZXJ0IHdpcmQgZWluIGxlZXJlciBXZXJ0IHp1csO8Y2tnZWdlYmVuXHJcbiAgICovXHJcbiAgZ2V0IExhbmd1YWdlVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwZWljaGVydCBlaW5lbiBXZXJ0IHp1ciBha3R1ZWxsIGdld8OkaGx0ZW4gU3ByYWNoZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSBXZXJ0IHdlbGNoZXIgZ2VzcGVpY2hlcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgU2V0TGFuZ3VhZ2VWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICBjb25zdCBjdXJyZW50SXNvQ29kZTogc3RyaW5nID0gdGhpcy5zZWxlY3RlZExhbmd1YWdlXHJcbiAgICAgICAgPyB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSXNvQ29kZVxyXG4gICAgICAgIDogbnVsbDtcclxuXHJcbiAgICAgIC8vIEZhbGxiYWNrIGZhbGxzIGtlaW5lIFNlbGVrdGllcnRlIFNwcmFjaGVcclxuICAgICAgaWYgKGN1cnJlbnRJc29Db2RlID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXSA9IHZhbHVlO1xyXG4gICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl92YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0IGRpZSBTcHJhY2hlIGRlciBLb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGxhbmd1YWdlIFNwcmFjaGUgZGllIHNlbGVrdGllcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgU2VsZWN0TGFuZ3VhZ2UobGFuZ3VhZ2U6IExhbmd1YWdlTW9kZWwpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSA9IGxhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2lidCBhbiwgb2IgaW4gZWluZXIgYmVzdGltbXRlbiBTcHJhY2hlIGVpbiBXZXJ0IGRlZmluaWVydCBpc3RcclxuICAgKiBAcGFyYW0gc3ByYWNoZSBTcHJhY2hlIGluIHdlbGNoZXIgZGVyIFdlcnQgZ2VwcsO8ZnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcmV0dXJucyBXZXJ0IGlzdCB2b3JoYW5kZW5cclxuICAgKi9cclxuICBwdWJsaWMgSXNFbXB0eShzcHJhY2hlOiBMYW5ndWFnZU1vZGVsKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICAvLyBGYWxsYmFjayBmYWxscyBrZWluZSBTZWxla3RpZXJ0ZSBTcHJhY2hlXHJcbiAgICAgIGlmIChzcHJhY2hlID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSB1bmRlZmluZWQgfHxcclxuICAgICAgICB0aGlzLnZhbHVlW3NwcmFjaGUuSXNvQ29kZV0gPT09ICcnIHx8XHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSBudWxsXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByw7xmdCwgb2IgaW4gZWluZXIgYmVsaWViaWdlbiBTcHJhY2hlIGRlciBLb21wb250ZW50ZSBrZWluIFdlcnQgZGVmaW5pZXJ0IGlzdC5cclxuICAgKiBAcmV0dXJucyBHaWJ0IGFuIG9iIGVpbiBMZWVyZXMgRWxlbWVudCB2b3JoYW5kZW4gaXN0XHJcbiAgICovXHJcbiAgcHVibGljIElzQW55RW1wdHkoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgZm91bmQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLmxhbmd1YWdlcy5mb3JFYWNoKChpdG06IExhbmd1YWdlTW9kZWwpID0+IHtcclxuICAgICAgICBpZiAoaXRtID09PSBudWxsKSB7XHJcbiAgICAgICAgICBmb3VuZCA9IHRydWU7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gdW5kZWZpbmVkIHx8XHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gJycgfHxcclxuICAgICAgICAgIHRoaXMudmFsdWVbaXRtLklzb0NvZGVdID09PSBudWxsXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBmb3VuZCA9IHRydWU7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBmb3VuZDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgdmFsaWRpZXJ0LCBvYiBkZXIgV2VydCBkZW4gZ2VnZWJlbmVuIEtyaXRlcmllbiBlbnRzcHJpY2h0XHJcbiAgICogQHBhcmFtIGMgQ29udHJvbHMgZGFzIHZhbGlkaWVydCB3aXJkXHJcbiAgICovXHJcbiAgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgPT09IHRydWVcclxuICAgICkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ubXVsdGlsYW5ndWFnZVJlcXVpcmVkKFxyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VzLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZCxcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkXHJcbiAgICAgICkoYyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLnJlcXVpcmVkYW55ICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgdGhpcy5yZXF1aXJlZGFueSA9PT0gdHJ1ZVxyXG4gICAgKSB7XHJcbiAgICAgIGVycm9yID0gVmFsaWRhdGlvbi5tdWx0aWxhbmd1YWdlUmVxdWlyZWRBbnkoXHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMsXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55LFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnlcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG59XHJcbiJdfQ==
232
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZWlucHV0YXJlYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL211bHRpbGFuZ3VhZ2UvbXVsdGlsYW5ndWFnZWlucHV0YXJlYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdoRCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLHlCQUF5QixHQUMxQixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBRzlDOztHQUVHO0FBQ0gsTUFDYSwrQkFBZ0MsU0FBUSxZQUFpQjtJQWdEcEU7Ozs7T0FJRztJQUNILFlBQW9CLFVBQStCLEVBQUUsUUFBa0I7UUFDckUsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQXJEOUI7O1dBRUc7UUFDTSxjQUFTLEdBQVcsSUFBSSxDQUFDO1FBRWxDOztXQUVHO1FBQ00sU0FBSSxHQUFXLENBQUMsQ0FBQztRQUUxQjs7V0FFRztRQUNNLGlCQUFZLEdBQVcsSUFBSSxDQUFDO1FBRXJDOztXQUVHO1FBQ00sZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFdEM7O1dBRUc7UUFDTSw4QkFBeUIsR0FDaEMsd0NBQXdDLENBQUM7UUFDM0M7O1dBRUc7UUFDTSxxQ0FBZ0MsR0FDdkMsZ0RBQWdELENBQUM7UUFFbkQ7O1dBRUc7UUFDTSxpQ0FBNEIsR0FDbkMsMkNBQTJDLENBQUM7UUFDOUM7O1dBRUc7UUFDTSx3Q0FBbUMsR0FDMUMsbURBQW1ELENBQUM7UUFpQ3REOztXQUVHO1FBQ0ss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RUFDeEI7WUFDQSxLQUFLLEdBQUcsVUFBVSxDQUFDLHFCQUFxQixDQUN0QyxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyx5QkFBeUIsRUFDOUIsSUFBSSxDQUFDLGdDQUFnQyxDQUN0QyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUNFLEtBQUssS0FBSyxJQUFJO1lBQ2QsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJO1lBQ2hCLENBQUMsQ0FBQyxLQUFLLEtBQUssU0FBUztZQUNyQixDQUFDLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxLQUFLLFNBQVM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQ3pCO1lBQ0EsS0FBSyxHQUFHLFVBQVUsQ0FBQyx3QkFBd0IsQ0FDekMsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsNEJBQTRCLEVBQ2pDLElBQUksQ0FBQyxtQ0FBbUMsQ0FDekMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNOO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOytHQXhQVSwrQkFBK0I7bUdBQS9CLCtCQUErQjs7U0FBL0IsK0JBQStCOzRGQUEvQiwrQkFBK0I7a0JBRDNDLFNBQVM7OzBCQXNESyxJQUFJO21FQWpEUixTQUFTO3NCQUFqQixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUtHLGdDQUFnQztzQkFBeEMsS0FBSztnQkFNRyw0QkFBNEI7c0JBQXBDLEtBQUs7Z0JBS0csbUNBQW1DO3NCQUEzQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEJhc2UgfSBmcm9tICcuLi8uLi9jb21tb24vYmFzZWlucHV0Y29udHJvbCc7XHJcbmltcG9ydCB7IEljb25UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvSWNvblR5cGUnO1xyXG5pbXBvcnQgeyBJU2FjTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTGFuZ3VhZ2VTZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9sYW5ndWFnZW1vZGVsJztcclxuaW1wb3J0IHtcclxuICBTQUNMQU5HVUFHRV9TRVJWSUNFLFxyXG4gIFNhY0RlZmF1bHRMYW5ndWFnZVNlcnZpY2UsXHJcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXRDb21tb24gfSBmcm9tICcuLi9sYXlvdXQvZm9ybWxheW91dCc7XHJcblxyXG4vKipcclxuICogQmFzZSBLbGFzc2UgZsO8ciBNdWx0aSBMYW5ndWFnZSBUZXh0YXJlYSBDb250cm9sXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGNsYXNzIFNhY011bHRpbGFuZ3VhZ2VJbnB1dEFyZWFDb21tb24gZXh0ZW5kcyBTYWNJbnB1dEJhc2U8YW55PiB7XHJcbiAgLyoqXHJcbiAgICogTWF4IGzDpG5nZSBhbiBaZWljaGVuIGbDvHIgRWluZ2FiZWZlbGRcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFuemFobCBSb3dzIGbDvHIgVGV4dEFyZWFcclxuICAgKi9cclxuICBASW5wdXQoKSByb3dzOiBudW1iZXIgPSA3O1xyXG5cclxuICAvKipcclxuICAgKiBGaXggYnJlaXRlIGbDvHIgZGFzIENvbnRyb2wgZGVmaW5pZXJlbi5cclxuICAgKi9cclxuICBASW5wdXQoKSBjb250cm9sd2lkdGg6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFrdGl2aWVydCBkZW4gVmFsaWRhdG9yLCBkYXMgbWluLiBlaW5lIFNwcmFjaGUgZXJmYXNzdCBzZWluIG11c3NcclxuICAgKi9cclxuICBASW5wdXQoKSByZXF1aXJlZGFueTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgYmVpIENvbnRyb2xcclxuICAgKi9cclxuICBASW5wdXQoKSB2YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkOiBzdHJpbmcgPVxyXG4gICAgJ1ZBTElEQVRJT05fRVJST1JfTVVMVElMQU5HVUFHRVJFUVVJUkVEJztcclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9TVU1NQVJZX01VTFRJTEFOR1VBR0VSRVFVSVJFRCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc291cmNlIEtleSBmw7xyIFZhbGlkYXRpb24gTWVzc2FnZSBQYXR0ZXJuIGJlaSBDb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZGFueTogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX01VTFRJTEFOR1VBR0VSRVFVSVJFREFOWSc7XHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFBhdHRlcm4gaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnk6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9TVU1NQVJZX01VTFRJTEFOR1VBR0VSRVFVSVJFREFOWSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgbG5nTGFuZ3VhZ2VTZXJ2aWNlOiBJU2FjTGFuZ3VhZ2VTZXJ2aWNlO1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBwYXJhbSBmb3JtbGF5b3V0IFNhY0Zvcm1MYXlvdXRDb21tb24gdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgZm9yIGluamVjdGluZyBzZXJ2aWNlc1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgZm9ybWxheW91dDogU2FjRm9ybUxheW91dENvbW1vbiwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICBzdXBlcihmb3JtbGF5b3V0LCBpbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5sbmdMYW5ndWFnZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0xBTkdVQUdFX1NFUlZJQ0UsXHJcbiAgICAgIG5ldyBTYWNEZWZhdWx0TGFuZ3VhZ2VTZXJ2aWNlKClcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5sbmdMYW5ndWFnZVNlcnZpY2VcclxuICAgICAgLkdldExhbmd1YWdlcygpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogTGFuZ3VhZ2VNb2RlbFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMgPSByZXN1bHQ7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmxhbmd1YWdlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UgPSB0aGlzLmxhbmd1YWdlc1swXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gQ29udHJvbCBWYWxpZGllcnVuZyBhdXNmw7xocmVuLCBkYSBXZXJ0IHBvdGVudGllbGwgYmVyZWl0cyBnZXNldHp0IHNlaW4ga2FublxyXG4gICAgICAgIHRoaXMuVXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwcmFjaGUgZsO8ciBkYXMgQ29udHJvbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgbGFuZ3VhZ2VzOiBMYW5ndWFnZU1vZGVsW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0ZSBTcHJhY2UgZGVzIENvbnRyb2xzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZWxlY3RlZExhbmd1YWdlOiBMYW5ndWFnZU1vZGVsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29sbGVjdGlvbiBkZXIgU3ByYWNoZW5cclxuICAgKi9cclxuICBnZXQgTGFuZ3VhZ2VzKCk6IExhbmd1YWdlTW9kZWxbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRhcyBJY29uIGRlciBzZWxla3RpZXJ0ZW4gU3ByYWNoZSB6dXLDvGNrXHJcbiAgICovXHJcbiAgZ2V0IFNlbGVjdGVkSWNvbigpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmd1YWdlLkljb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRlbiBUeXBlIGRlcyBJY29ucyBmw7xyIGRpZSBzZWxla3RpZXJ0ZSBTcHJhY2hlIHp1csO8Y2tcclxuICAgKi9cclxuICBnZXQgU2VsZWN0ZWRJY29uVHlwZSgpOiBJY29uVHlwZSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSWNvblR5cGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gSWNvblR5cGUuSW1hZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXR0ZXIgd2VsY2hlciBkZW4gV2VydCBkZXIgQ29tcG9uZW50IGluIGRlciBnZXfDpGhsdGVuIFNwcmFjaGUgenVyw7xja2dpYnQuIFdlbm4ga2VpbmUgU3ByYWNoZSBzZWxla3RpZXJ0IGlzdCwgd2lyZCBlaW4gbGVlcmVyIFdlcnQgenVyw7xja2dlZ2ViZW4uXHJcbiAgICogSXN0IGluIGRlciBDb21wb25lbnQga2VpbiBXZXJ0IGdlc3BlaWNoZXJ0IHdpcmQgZWluIGxlZXJlciBXZXJ0IHp1csO8Y2tnZWdlYmVuXHJcbiAgICovXHJcbiAgZ2V0IExhbmd1YWdlVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRJc29Db2RlOiBzdHJpbmcgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VcclxuICAgICAgICA/IHRoaXMuc2VsZWN0ZWRMYW5ndWFnZS5Jc29Db2RlXHJcbiAgICAgICAgOiBudWxsO1xyXG5cclxuICAgICAgLy8gRmFsbGJhY2sgZmFsbHMga2VpbmUgU2VsZWt0aWVydGUgU3ByYWNoZVxyXG4gICAgICBpZiAoY3VycmVudElzb0NvZGUgPT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwZWljaGVydCBlaW5lbiBXZXJ0IHp1ciBha3R1ZWxsIGdld8OkaGx0ZW4gU3ByYWNoZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSBXZXJ0IHdlbGNoZXIgZ2VzcGVpY2hlcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgU2V0TGFuZ3VhZ2VWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICBjb25zdCBjdXJyZW50SXNvQ29kZTogc3RyaW5nID0gdGhpcy5zZWxlY3RlZExhbmd1YWdlXHJcbiAgICAgICAgPyB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UuSXNvQ29kZVxyXG4gICAgICAgIDogbnVsbDtcclxuXHJcbiAgICAgIC8vIEZhbGxiYWNrIGZhbGxzIGtlaW5lIFNlbGVrdGllcnRlIFNwcmFjaGVcclxuICAgICAgaWYgKGN1cnJlbnRJc29Db2RlID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnZhbHVlW2N1cnJlbnRJc29Db2RlXSA9IHZhbHVlO1xyXG4gICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl92YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWxla3RpZXJ0IGRpZSBTcHJhY2hlIGRlciBLb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGxhbmd1YWdlIFNwcmFjaGUgZGllIHNlbGVrdGllcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgU2VsZWN0TGFuZ3VhZ2UobGFuZ3VhZ2U6IExhbmd1YWdlTW9kZWwpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSA9IGxhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2lidCBhbiwgb2IgaW4gZWluZXIgYmVzdGltbXRlbiBTcHJhY2hlIGVpbiBXZXJ0IGRlZmluaWVydCBpc3RcclxuICAgKiBAcGFyYW0gc3ByYWNoZSBTcHJhY2hlIGluIHdlbGNoZXIgZGVyIFdlcnQgZ2VwcsO8ZnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcmV0dXJucyBXZXJ0IGlzdCB2b3JoYW5kZW5cclxuICAgKi9cclxuICBwdWJsaWMgSXNFbXB0eShzcHJhY2hlOiBMYW5ndWFnZU1vZGVsKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICAvLyBGYWxsYmFjayBmYWxscyBrZWluZSBTZWxla3RpZXJ0ZSBTcHJhY2hlXHJcbiAgICAgIGlmIChzcHJhY2hlID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSB1bmRlZmluZWQgfHxcclxuICAgICAgICB0aGlzLnZhbHVlW3NwcmFjaGUuSXNvQ29kZV0gPT09ICcnIHx8XHJcbiAgICAgICAgdGhpcy52YWx1ZVtzcHJhY2hlLklzb0NvZGVdID09PSBudWxsXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByw7xmdCwgb2IgaW4gZWluZXIgYmVsaWViaWdlbiBTcHJhY2hlIGRlciBLb21wb250ZW50ZSBrZWluIFdlcnQgZGVmaW5pZXJ0IGlzdC5cclxuICAgKiBAcmV0dXJucyBHaWJ0IGFuIG9iIGVpbiBMZWVyZXMgRWxlbWVudCB2b3JoYW5kZW4gaXN0XHJcbiAgICovXHJcbiAgcHVibGljIElzQW55RW1wdHkoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgZm91bmQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLmxhbmd1YWdlcy5mb3JFYWNoKChpdG06IExhbmd1YWdlTW9kZWwpID0+IHtcclxuICAgICAgICBpZiAoaXRtID09PSBudWxsKSB7XHJcbiAgICAgICAgICBmb3VuZCA9IHRydWU7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gdW5kZWZpbmVkIHx8XHJcbiAgICAgICAgICB0aGlzLnZhbHVlW2l0bS5Jc29Db2RlXSA9PT0gJycgfHxcclxuICAgICAgICAgIHRoaXMudmFsdWVbaXRtLklzb0NvZGVdID09PSBudWxsXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBmb3VuZCA9IHRydWU7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBmb3VuZDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgdmFsaWRpZXJ0LCBvYiBkZXIgV2VydCBkZW4gZ2VnZWJlbmVuIEtyaXRlcmllbiBlbnRzcHJpY2h0XHJcbiAgICogQHBhcmFtIGMgQ29udHJvbHMgZGFzIHZhbGlkaWVydCB3aXJkXHJcbiAgICovXHJcbiAgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICB0aGlzLmlzcmVxdWlyZWQgPT09IHRydWVcclxuICAgICkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ubXVsdGlsYW5ndWFnZVJlcXVpcmVkKFxyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VzLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZCxcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkXHJcbiAgICAgICkoYyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBlcnJvciA9PT0gbnVsbCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSBudWxsICYmXHJcbiAgICAgIGMudmFsdWUgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICB0aGlzLnJlcXVpcmVkYW55ICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgdGhpcy5yZXF1aXJlZGFueSA9PT0gdHJ1ZVxyXG4gICAgKSB7XHJcbiAgICAgIGVycm9yID0gVmFsaWRhdGlvbi5tdWx0aWxhbmd1YWdlUmVxdWlyZWRBbnkoXHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXMsXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkYW55LFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRhbnlcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -5,38 +5,23 @@ import { SacDefaultLocalisationService } from '../../services/sac-localisation.s
5
5
  import { Validation } from '../../validation';
6
6
  import { TinyMceDialogSettings } from './tinymcedialogsettings';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "../../controls/form/form";
8
+ import * as i1 from "../layout/formlayout";
9
9
  /**
10
10
  * Basis Komponente für TinyMCE Editor
11
11
  */
12
12
  class SacTinyMceCommon extends SacBaseModelControl {
13
+ // #endregion Properties
14
+ // #region Constructors
13
15
  /**
14
- * TinyMCE Konfiguration
15
- * @link https://www.tiny.cloud/docs/configure/
16
- */
17
- set config(v) {
18
- this._config = {
19
- ...this.getDynamicSettings(),
20
- ...this.baseConfig,
21
- ...this.overwriteDefaultSettings(),
22
- ...v,
23
- };
24
- }
25
- /**
26
- * TinyMCE Konfiguration
27
- */
28
- get config() {
29
- return this._config;
30
- }
31
- /**
32
- * Konstruktor
33
- * @param parent Instanz vom Formular
34
- * @param injector Injector Service
35
- * @param ngZone NgZone für Javascript in TinyMCE
16
+ * Constructor
17
+ * @param formlayout SacFormLayoutCommon to define scoped layout settings
18
+ * @param injector Injector for injecting services
19
+ * @param ngZone ngzone for handling external javascripts
36
20
  */
37
- constructor(parent, injector, ngZone) {
38
- super(parent, injector);
21
+ constructor(formlayout, injector, ngZone) {
22
+ super(formlayout, injector);
39
23
  this.ngZone = ngZone;
24
+ // #region Properties
40
25
  /**
41
26
  * Default Config mit Standardwerten für TinyMCE
42
27
  */
@@ -50,49 +35,37 @@ class SacTinyMceCommon extends SacBaseModelControl {
50
35
  save_onsavecallback: () => { },
51
36
  };
52
37
  /**
53
- * TinyMCE Config
54
- */
55
- this._config = {};
56
- /**
57
- * Der Select Dialog wird angezeigt
58
- */
59
- this.selectdialogvisible = false;
60
- /**
61
- * Definiert das Control als Required
38
+ * Erlaubt im Filebrowser das löschen von Dateien
62
39
  */
63
- this.isrequired = false;
40
+ this.allowfiledelete = false;
64
41
  /**
65
- * Höhe des Editors
42
+ * Erlaubt im Filebrowser das umbennen von Dateien
66
43
  */
67
- this.height = undefined;
44
+ this.allowfilerename = false;
68
45
  /**
69
- * URL zu Filebrowser Backend
46
+ * Erlaubt im Filebrowser das hochladen von Files
70
47
  */
71
- this.filebrowserapiurl = null;
48
+ this.allowfileupload = false;
72
49
  /**
73
50
  * Erlaubt im Filebrowser das anlegen eines Ordners
74
51
  */
75
52
  this.allowfoldercreate = false;
76
- /**
77
- * Erlaubt im Filebrowser das umbennen eines Ordners
78
- */
79
- this.allowfolderrename = false;
80
53
  /**
81
54
  * Erlaubt im Filebrowser das löschen eines Ordners
82
55
  */
83
56
  this.allowfolderdelete = false;
84
57
  /**
85
- * Erlaubt im Filebrowser das hochladen von Files
58
+ * Erlaubt im Filebrowser das umbennen eines Ordners
86
59
  */
87
- this.allowfileupload = false;
60
+ this.allowfolderrename = false;
88
61
  /**
89
- * Erlaubt im Filebrowser das umbennen von Dateien
62
+ * URL zu Filebrowser Backend
90
63
  */
91
- this.allowfilerename = false;
64
+ this.filebrowserapiurl = null;
92
65
  /**
93
- * Erlaubt im Filebrowser das löschen von Dateien
66
+ * File Extensions für Links (Format: .xxx,.yyy,.eee)
94
67
  */
95
- this.allowfiledelete = false;
68
+ this.filetypesfiles = '';
96
69
  /**
97
70
  * File Extensions für Images (Format: .xxx,.yyy,.eee)
98
71
  */
@@ -102,9 +75,13 @@ class SacTinyMceCommon extends SacBaseModelControl {
102
75
  */
103
76
  this.filetypesvideo = '.mp4,.m4v,.ogv,.webm,.mov';
104
77
  /**
105
- * File Extensions für Links (Format: .xxx,.yyy,.eee)
78
+ * Höhe des Editors
106
79
  */
107
- this.filetypesfiles = '';
80
+ this.height = undefined;
81
+ /**
82
+ * Definiert das Control als Required
83
+ */
84
+ this.isrequired = false;
108
85
  /**
109
86
  * Resource Key für Validation Message Required bei Control
110
87
  */
@@ -117,10 +94,66 @@ class SacTinyMceCommon extends SacBaseModelControl {
117
94
  * Event wenn Save Action in TinyMCE ausgelöst wird
118
95
  */
119
96
  this.onsave = new EventEmitter();
97
+ /**
98
+ * TinyMCE Config
99
+ */
100
+ this._config = {};
101
+ /**
102
+ * Der Select Dialog wird angezeigt
103
+ */
104
+ this.selectdialogvisible = false;
120
105
  this.lngResourceService = injector.get(SACLOCALISATION_SERVICE, new SacDefaultLocalisationService());
121
106
  this.config = {};
122
107
  }
123
- //#region Integration Select Dialog für Fileauswahl
108
+ // #endregion Constructors
109
+ // #region Public Getters And Setters
110
+ /**
111
+ * TinyMCE Konfiguration
112
+ * @link https://www.tiny.cloud/docs/configure/
113
+ */
114
+ set config(v) {
115
+ this._config = {
116
+ ...this.getDynamicSettings(),
117
+ ...this.baseConfig,
118
+ ...this.overwriteDefaultSettings(),
119
+ ...v,
120
+ };
121
+ }
122
+ /**
123
+ * TinyMCE Konfiguration
124
+ */
125
+ get config() {
126
+ return this._config;
127
+ }
128
+ // #endregion Public Getters And Setters
129
+ // #region Public Methods
130
+ /**
131
+ * Schliesst den Dateiauswahl Dialog
132
+ */
133
+ closeSelectDialog() {
134
+ this.selectdialogvisible = false;
135
+ }
136
+ /**
137
+ * Löst die Speichern Action aus
138
+ * @param content Content als String
139
+ */
140
+ save(content) {
141
+ this.onsave.emit(content);
142
+ }
143
+ /**
144
+ * Setzt das Resultat aus dem Dateiauswahl Dialog
145
+ */
146
+ setSelectDialogResult() {
147
+ if (this.selectDialogSettings.value) {
148
+ if (this.selectDialogSettings.value.startsWith('/') ||
149
+ this.selectDialogSettings.value.startsWith('\\')) {
150
+ this.selectDialogSettings.value =
151
+ this.selectDialogSettings.value.substring(1);
152
+ }
153
+ this.selectDialogSettings.callback(this.selectDialogSettings.value);
154
+ }
155
+ this.closeSelectDialog();
156
+ }
124
157
  /**
125
158
  * Zeigt den Dateiauswahl Dialog an
126
159
  * @param callback Callback Methode welche aufgerufen wird, wenn der Dialog geschlossen wird
@@ -155,34 +188,6 @@ class SacTinyMceCommon extends SacBaseModelControl {
155
188
  });
156
189
  });
157
190
  }
158
- /**
159
- * Setzt das Resultat aus dem Dateiauswahl Dialog
160
- */
161
- setSelectDialogResult() {
162
- if (this.selectDialogSettings.value) {
163
- if (this.selectDialogSettings.value.startsWith('/') ||
164
- this.selectDialogSettings.value.startsWith('\\')) {
165
- this.selectDialogSettings.value =
166
- this.selectDialogSettings.value.substring(1);
167
- }
168
- this.selectDialogSettings.callback(this.selectDialogSettings.value);
169
- }
170
- this.closeSelectDialog();
171
- }
172
- /**
173
- * Schliesst den Dateiauswahl Dialog
174
- */
175
- closeSelectDialog() {
176
- this.selectdialogvisible = false;
177
- }
178
- //#endregion
179
- /**
180
- * Löst die Speichern Action aus
181
- * @param content Content als String
182
- */
183
- save(content) {
184
- this.onsave.emit(content);
185
- }
186
191
  /**
187
192
  * Validiert das Control
188
193
  * @param c Control Instanz die valdidiert wird
@@ -195,6 +200,8 @@ class SacTinyMceCommon extends SacBaseModelControl {
195
200
  }
196
201
  return error;
197
202
  }
203
+ // #endregion Public Abstract Methods
204
+ // #region Private Methods
198
205
  /**
199
206
  * Gibt die TinyMCE Settings zurück, die aus den Properties der Angular Komponenten erzeugt werden
200
207
  * @returns Objekt mit Settings
@@ -206,45 +213,45 @@ class SacTinyMceCommon extends SacBaseModelControl {
206
213
  };
207
214
  return settings;
208
215
  }
209
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceCommon, deps: [{ token: i1.SacFormCommon, host: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
210
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacTinyMceCommon, inputs: { isrequired: "isrequired", height: "height", filebrowserapiurl: "filebrowserapiurl", allowfoldercreate: "allowfoldercreate", allowfolderrename: "allowfolderrename", allowfolderdelete: "allowfolderdelete", allowfileupload: "allowfileupload", allowfilerename: "allowfilerename", allowfiledelete: "allowfiledelete", filetypesimages: "filetypesimages", filetypesvideo: "filetypesvideo", filetypesfiles: "filetypesfiles", validationmessagerequired: "validationmessagerequired", validationmessagesummaryrequired: "validationmessagesummaryrequired", config: "config" }, outputs: { onsave: "onsave" }, usesInheritance: true, ngImport: i0 }); }
216
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceCommon, deps: [{ token: i1.SacFormLayoutCommon, host: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
217
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacTinyMceCommon, inputs: { allowfiledelete: "allowfiledelete", allowfilerename: "allowfilerename", allowfileupload: "allowfileupload", allowfoldercreate: "allowfoldercreate", allowfolderdelete: "allowfolderdelete", allowfolderrename: "allowfolderrename", filebrowserapiurl: "filebrowserapiurl", filetypesfiles: "filetypesfiles", filetypesimages: "filetypesimages", filetypesvideo: "filetypesvideo", height: "height", isrequired: "isrequired", validationmessagerequired: "validationmessagerequired", validationmessagesummaryrequired: "validationmessagesummaryrequired", config: "config" }, outputs: { onsave: "onsave" }, usesInheritance: true, ngImport: i0 }); }
211
218
  }
212
219
  export { SacTinyMceCommon };
213
220
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceCommon, decorators: [{
214
221
  type: Directive
215
- }], ctorParameters: function () { return [{ type: i1.SacFormCommon, decorators: [{
222
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutCommon, decorators: [{
216
223
  type: Host
217
- }] }, { type: i0.Injector }, { type: i0.NgZone }]; }, propDecorators: { isrequired: [{
224
+ }] }, { type: i0.Injector }, { type: i0.NgZone }]; }, propDecorators: { allowfiledelete: [{
218
225
  type: Input
219
- }], height: [{
226
+ }], allowfilerename: [{
220
227
  type: Input
221
- }], filebrowserapiurl: [{
228
+ }], allowfileupload: [{
222
229
  type: Input
223
230
  }], allowfoldercreate: [{
224
231
  type: Input
225
- }], allowfolderrename: [{
226
- type: Input
227
232
  }], allowfolderdelete: [{
228
233
  type: Input
229
- }], allowfileupload: [{
234
+ }], allowfolderrename: [{
230
235
  type: Input
231
- }], allowfilerename: [{
236
+ }], filebrowserapiurl: [{
232
237
  type: Input
233
- }], allowfiledelete: [{
238
+ }], filetypesfiles: [{
234
239
  type: Input
235
240
  }], filetypesimages: [{
236
241
  type: Input
237
242
  }], filetypesvideo: [{
238
243
  type: Input
239
- }], filetypesfiles: [{
244
+ }], height: [{
245
+ type: Input
246
+ }], isrequired: [{
240
247
  type: Input
241
248
  }], validationmessagerequired: [{
242
249
  type: Input
243
250
  }], validationmessagesummaryrequired: [{
244
251
  type: Input
245
- }], config: [{
246
- type: Input
247
252
  }], onsave: [{
248
253
  type: Output
254
+ }], config: [{
255
+ type: Input
249
256
  }] } });
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlueW1jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL3RpbnltY2UvdGlueW1jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixJQUFJLEVBRUosS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUdwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUloRTs7R0FFRztBQUNILE1BQ3NCLGdCQUFpQixTQUFRLG1CQUEyQjtJQTJIeEU7OztPQUdHO0lBQ0gsSUFDSSxNQUFNLENBQUMsQ0FBTTtRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUM1QixHQUFHLElBQUksQ0FBQyxVQUFVO1lBQ2xCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFO1lBQ2xDLEdBQUcsQ0FBQztTQUNMLENBQUM7SUFDSixDQUFDO0lBQ0Q7O09BRUc7SUFDSCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQVFEOzs7OztPQUtHO0lBQ0gsWUFDVSxNQUFxQixFQUM3QixRQUFrQixFQUNSLE1BQWM7UUFFeEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUZkLFdBQU0sR0FBTixNQUFNLENBQVE7UUE3SjFCOztXQUVHO1FBQ0ssZUFBVSxH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QUFDO1NBQ047UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7O09BR0c7SUFDSyxrQkFBa0I7UUFDeEIsSUFBSSxRQUFRLEdBQUc7WUFDYixRQUFRLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVTtZQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQztRQUVGLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7K0dBdFJtQixnQkFBZ0I7bUdBQWhCLGdCQUFnQjs7U0FBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRHJDLFNBQVM7OzBCQTZKTCxJQUFJO3dGQWpIQSxVQUFVO3NCQURoQixLQUFLO2dCQU9DLE1BQU07c0JBRFosS0FBSztnQkFPQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBT0MsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU9DLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFPQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBT0MsZUFBZTtzQkFEckIsS0FBSztnQkFPQyxlQUFlO3NCQURyQixLQUFLO2dCQU9DLGVBQWU7c0JBRHJCLEtBQUs7Z0JBT0MsZUFBZTtzQkFEckIsS0FBSztnQkFPQyxjQUFjO3NCQURwQixLQUFLO2dCQU9DLGNBQWM7c0JBRHBCLEtBQUs7Z0JBTUcseUJBQXlCO3NCQUFqQyxLQUFLO2dCQU1OLGdDQUFnQztzQkFEL0IsS0FBSztnQkFTRixNQUFNO3NCQURULEtBQUs7Z0JBb0JDLE1BQU07c0JBRFosTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0LFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0Jhc2VNb2RlbENvbnRyb2wgfSBmcm9tICcuLi8uLi9jb21tb24vYmFzZW1vZGVsY29udHJvbCc7XHJcbmltcG9ydCB7IFNhY0Zvcm1Db21tb24gfSBmcm9tICcuLi8uLi9jb250cm9scy9mb3JtL2Zvcm0nO1xyXG5pbXBvcnQgeyBJU2FjTG9jYWxpc2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTQUNMT0NBTElTQVRJT05fU0VSVklDRSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbG9jYWxpc2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IFRpbnlNY2VEaWFsb2dTZXR0aW5ncyB9IGZyb20gJy4vdGlueW1jZWRpYWxvZ3NldHRpbmdzJztcclxuaW1wb3J0IHsgVGlueU1jZURpYWxvZ1NldHRpbmdzTWV0YSB9IGZyb20gJy4vdGlueW1jZWRpYWxvZ3NldHRpbmdzbWV0YSc7XHJcbmltcG9ydCB7IFRpbnlNY2VJbnN0YW5jZSB9IGZyb20gJy4vdGlueW1jZWluc3RhbmNlJztcclxuXHJcbi8qKlxyXG4gKiBCYXNpcyBLb21wb25lbnRlIGbDvHIgVGlueU1DRSBFZGl0b3JcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2FjVGlueU1jZUNvbW1vbiBleHRlbmRzIFNhY0Jhc2VNb2RlbENvbnRyb2w8c3RyaW5nPiB7XHJcbiAgLyoqXHJcbiAgICogRGVmYXVsdCBDb25maWcgbWl0IFN0YW5kYXJkd2VydGVuIGbDvHIgVGlueU1DRVxyXG4gICAqL1xyXG4gIHByaXZhdGUgYmFzZUNvbmZpZzogYW55ID0ge1xyXG4gICAgYmFzZV91cmw6ICcvdGlueW1jZScsXHJcbiAgICBzdWZmaXg6ICcubWluJyxcclxuICAgIGJyYW5kaW5nOiBmYWxzZSxcclxuICAgIGFuZ3VsYXI6IHRoaXMsXHJcbiAgICBmaWxlX3BpY2tlcl90eXBlczogJ2ZpbGUgbWVkaWEgaW1hZ2UnLFxyXG4gICAgZmlsZV9waWNrZXJfY2FsbGJhY2s6IHRoaXMuc2hvd1NlbGVjdERpYWxvZyxcclxuICAgIHNhdmVfb25zYXZlY2FsbGJhY2s6ICgpID0+IHt9LFxyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cclxuICAgKi9cclxuICBwdWJsaWMgbG5nUmVzb3VyY2VTZXJ2aWNlOiBJU2FjTG9jYWxpc2F0aW9uU2VydmljZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0dGluZ3MgSW5zdGFueiBmw7xyIERpYWxvZ1xyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3REaWFsb2dTZXR0aW5nczogVGlueU1jZURpYWxvZ1NldHRpbmdzO1xyXG5cclxuICAvKipcclxuICAgKiBUaW55TUNFIENvbmZpZ1xyXG4gICAqL1xyXG4gIHB1YmxpYyBfY29uZmlnOiBhbnkgPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVyIFNlbGVjdCBEaWFsb2cgd2lyZCBhbmdlemVpZ3RcclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0ZGlhbG9ndmlzaWJsZSA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBJbnN0YW56IGF1ZiBUaW55TUNFIFNldHRpbmdzLiBXaXJkIGR1cmNoIFRpbnlNQ0UgZ2VzZXR6dCB1bmQgd2lyZCBmw7xyIGRlbiBDYWxsYmFjayBkZXMgRGlhbG9nIGJlbsO2dGlndFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXR0aW5nczogVGlueU1jZUluc3RhbmNlO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmllcnQgZGFzIENvbnRyb2wgYWxzIFJlcXVpcmVkXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaXNyZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBIw7ZoZSBkZXMgRWRpdG9yc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlaWdodDogc3RyaW5nID0gdW5kZWZpbmVkO1xyXG5cclxuICAvKipcclxuICAgKiBVUkwgenUgRmlsZWJyb3dzZXIgQmFja2VuZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZpbGVicm93c2VyYXBpdXJsOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGltIEZpbGVicm93c2VyIGRhcyBhbmxlZ2VuIGVpbmVzIE9yZG5lcnNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcmNyZWF0ZSA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGltIEZpbGVicm93c2VyIGRhcyB1bWJlbm5lbiBlaW5lcyBPcmRuZXJzXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsb3dmb2xkZXJyZW5hbWUgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgbMO2c2NoZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyZGVsZXRlID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgaW0gRmlsZWJyb3dzZXIgZGFzIGhvY2hsYWRlbiB2b24gRmlsZXNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGV1cGxvYWQgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgdW1iZW5uZW4gdm9uIERhdGVpZW5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVyZW5hbWUgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgbMO2c2NoZW4gdm9uIERhdGVpZW5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVkZWxldGUgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRmlsZSBFeHRlbnNpb25zIGbDvHIgSW1hZ2VzIChGb3JtYXQ6IC54eHgsLnl5eSwuZWVlKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZpbGV0eXBlc2ltYWdlcyA9ICcuZ2lmLC5qcGVnLC5qcGcsLnBuZywudGlmLC50aWZmLC5ibXAnO1xyXG5cclxuICAvKipcclxuICAgKiBGaWxlIEV4dGVuc2lvbnMgZsO8ciBNZWRpYSAoRm9ybWF0OiAueHh4LC55eXksLmVlZSlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWxldHlwZXN2aWRlbyA9ICcubXA0LC5tNHYsLm9ndiwud2VibSwubW92JztcclxuXHJcbiAgLyoqXHJcbiAgICogRmlsZSBFeHRlbnNpb25zIGbDvHIgTGlua3MgKEZvcm1hdDogLnh4eCwueXl5LC5lZWUpXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZmlsZXR5cGVzZmlsZXMgPSAnJztcclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFJlcXVpcmVkIGJlaSBDb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgdmFsaWRhdGlvbm1lc3NhZ2VyZXF1aXJlZDogc3RyaW5nID0gJ1ZBTElEQVRJT05fRVJST1JfUkVRVUlSRUQnO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICB2YWxpZGF0aW9ubWVzc2FnZXN1bW1hcnlyZXF1aXJlZDogc3RyaW5nID1cclxuICAgICdWQUxJREFUSU9OX0VSUk9SX1NVTU1BUllfUkVRVUlSRUQnO1xyXG5cclxuICAvKipcclxuICAgKiBUaW55TUNFIEtvbmZpZ3VyYXRpb25cclxuICAgKiBAbGluayBodHRwczovL3d3dy50aW55LmNsb3VkL2RvY3MvY29uZmlndXJlL1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGNvbmZpZyh2OiBhbnkpIHtcclxuICAgIHRoaXMuX2NvbmZpZyA9IHtcclxuICAgICAgLi4udGhpcy5nZXREeW5hbWljU2V0dGluZ3MoKSxcclxuICAgICAgLi4udGhpcy5iYXNlQ29uZmlnLFxyXG4gICAgICAuLi50aGlzLm92ZXJ3cml0ZURlZmF1bHRTZXR0aW5ncygpLFxyXG4gICAgICAuLi52LFxyXG4gICAgfTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVGlueU1DRSBLb25maWd1cmF0aW9uXHJcbiAgICovXHJcbiAgZ2V0IGNvbmZpZygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHdlbm4gU2F2ZSBBY3Rpb24gaW4gVGlueU1DRSBhdXNnZWzDtnN0IHdpcmRcclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25zYXZlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEBwYXJhbSBwYXJlbnQgSW5zdGFueiB2b20gRm9ybXVsYXJcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgU2VydmljZVxyXG4gICAqIEBwYXJhbSBuZ1pvbmUgTmdab25lIGbDvHIgSmF2YXNjcmlwdCBpbiBUaW55TUNFXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASG9zdCgpIHBhcmVudDogU2FjRm9ybUNvbW1vbixcclxuICAgIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByb3RlY3RlZCBuZ1pvbmU6IE5nWm9uZVxyXG4gICkge1xyXG4gICAgc3VwZXIocGFyZW50LCBpbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxyXG4gICAgICBuZXcgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UoKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmNvbmZpZyA9IHt9O1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIEludGVncmF0aW9uIFNlbGVjdCBEaWFsb2cgZsO8ciBGaWxlYXVzd2FobFxyXG5cclxuICAvKipcclxuICAgKiBaZWlndCBkZW4gRGF0ZWlhdXN3YWhsIERpYWxvZyBhblxyXG4gICAqIEBwYXJhbSBjYWxsYmFjayBDYWxsYmFjayBNZXRob2RlIHdlbGNoZSBhdWZnZXJ1ZmVuIHdpcmQsIHdlbm4gZGVyIERpYWxvZyBnZXNjaGxvc3NlbiB3aXJkXHJcbiAgICogQHBhcmFtIHZhbHVlIFdlcnQgYXVzIGRlbSBEYXRlaSBEaWFsb2dcclxuICAgKiBAcGFyYW0gbWV0YSBNZXRhIERhdGVuIHp1ciBEYXRlaVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzaG93U2VsZWN0RGlhbG9nKFxyXG4gICAgY2FsbGJhY2ssXHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgbWV0YTogVGlueU1jZURpYWxvZ1NldHRpbmdzTWV0YVxyXG4gICk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0ZGlhbG9ndmlzaWJsZSA9IHRydWU7XHJcblxyXG4gICAgICAgIC8vIFNldCBEaWFsb2cgU2V0dGluZ3NcclxuICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0RGlhbG9nU2V0dGluZ3MgPSBuZXcgVGlueU1jZURpYWxvZ1NldHRpbmdzKHtcclxuICAgICAgICAgIGNhbGxiYWNrOiBjYWxsYmFjayxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZSxcclxuICAgICAgICAgIG1ldGE6IG1ldGEsXHJcbiAgICAgICAgICBhbGxvd2VkdHlwZXM6ICcnLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKG1ldGEuZmlsZXR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgJ2ltYWdlJzpcclxuICAgICAgICAgICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLnNlbGVjdERpYWxvZ1NldHRpbmdzLmFsbG93ZWR0eXBlcyA9XHJcbiAgICAgICAgICAgICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLmZpbGV0eXBlc2ltYWdlcztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdtZWRpYSc6XHJcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5zZWxlY3REaWFsb2dTZXR0aW5ncy5hbGxvd2VkdHlwZXMgPVxyXG4gICAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5maWxldHlwZXN2aWRlbztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0RGlhbG9nU2V0dGluZ3MuYWxsb3dlZHR5cGVzID1cclxuICAgICAgICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuZmlsZXR5cGVzZmlsZXM7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGRhcyBSZXN1bHRhdCBhdXMgZGVtIERhdGVpYXVzd2FobCBEaWFsb2dcclxuICAgKi9cclxuICBwdWJsaWMgc2V0U2VsZWN0RGlhbG9nUmVzdWx0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0RGlhbG9nU2V0dGluZ3MudmFsdWUpIHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRoaXMuc2VsZWN0RGlhbG9nU2V0dGluZ3MudmFsdWUuc3RhcnRzV2l0aCgnLycpIHx8XHJcbiAgICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy52YWx1ZS5zdGFydHNXaXRoKCdcXFxcJylcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy52YWx1ZSA9XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdERpYWxvZ1NldHRpbmdzLnZhbHVlLnN1YnN0cmluZygxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy5jYWxsYmFjayh0aGlzLnNlbGVjdERpYWxvZ1NldHRpbmdzLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsb3NlU2VsZWN0RGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTY2hsaWVzc3QgZGVuIERhdGVpYXVzd2FobCBEaWFsb2dcclxuICAgKi9cclxuICBwdWJsaWMgY2xvc2VTZWxlY3REaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGRpYWxvZ3Zpc2libGUgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvKipcclxuICAgKiBMw7ZzdCBkaWUgU3BlaWNoZXJuIEFjdGlvbiBhdXNcclxuICAgKiBAcGFyYW0gY29udGVudCBDb250ZW50IGFscyBTdHJpbmdcclxuICAgKi9cclxuICBwdWJsaWMgc2F2ZShjb250ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25zYXZlLmVtaXQoY29udGVudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWYWxpZGllcnQgZGFzIENvbnRyb2xcclxuICAgKiBAcGFyYW0gYyBDb250cm9sIEluc3RhbnogZGllIHZhbGRpZGllcnQgd2lyZFxyXG4gICAqIEByZXR1cm5zIEdpYnQgZWluZSBGZWhsZXJtZWxkdW5nIG9kZXIgTlVMTCB6dXLDvGNrXHJcbiAgICovXHJcbiAgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNyZXF1aXJlZCkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ucmVxdWlyZWQoXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaWJ0IGRpZSBUaW55TUNFIFNldHRpbmdzIHp1csO8Y2ssIGRpZSBhdXMgZGVuIFByb3BlcnRpZXMgZGVyIEFuZ3VsYXIgS29tcG9uZW50ZW4gZXJ6ZXVndCB3ZXJkZW5cclxuICAgKiBAcmV0dXJucyBPYmpla3QgbWl0IFNldHRpbmdzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXREeW5hbWljU2V0dGluZ3MoKTogYW55IHtcclxuICAgIGxldCBzZXR0aW5ncyA9IHtcclxuICAgICAgc2VsZWN0b3I6ICcjJyArIHRoaXMubmFtZSArICdfdGlueW1jZScsXHJcbiAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQsXHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiBzZXR0aW5ncztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGdldCBzZXR0aW5ncyBpbiBlZmZlY3RpdmUgaW1wbGVtZW50YXRpb24gdGhhdCBvdmVyd3JpdGVzIHRoZSBkZWZhdWx0cy4gdXNlIHt9IGZvciBub24gb3ZlcndyaXRlcy5cclxuICAgKi9cclxuICBhYnN0cmFjdCBvdmVyd3JpdGVEZWZhdWx0U2V0dGluZ3MoKTogYW55O1xyXG59XHJcbiJdfQ==
257
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlueW1jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL3RpbnltY2UvdGlueW1jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixJQUFJLEVBRUosS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUloRTs7R0FFRztBQUNILE1BQ3NCLGdCQUFpQixTQUFRLG1CQUEyQjtJQWtIeEUsd0JBQXdCO0lBRXhCLHVCQUF1QjtJQUV2Qjs7Ozs7T0FLRztJQUNILFlBQ1UsVUFBK0IsRUFDdkMsUUFBa0IsRUFDUixNQUFjO1FBRXhCLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFGbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQTlIMUIscUJBQXFCO1FBRXJCOztXQUVHO1FBQ0ssZUFBVSxHQUFRO1lBQ3hCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsUUFBUSxFQUFFLEtBQUs7WUFDZixPQUFPLEVBQUUsSUFBSTtZQUNiLGlCQUFpQixFQUFFLGtCQUFrQjtZQUNyQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1lBQzNDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxHQUFFLENBQUM7U0FDOUIsQ0FBQztRQUVGOztXQUVHO1FBRUksb0JBQWUs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QVEsQ0FDekIsSUFBSSxDQUFDLHlCQUF5QixFQUM5QixJQUFJLENBQUMsZ0NBQWdDLENBQ3RDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQVdELHFDQUFxQztJQUVyQywwQkFBMEI7SUFFMUI7OztPQUdHO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksUUFBUSxHQUFHO1lBQ2IsUUFBUSxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVU7WUFDdEMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUM7UUFFRixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOytHQTdSbUIsZ0JBQWdCO21HQUFoQixnQkFBZ0I7O1NBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQURyQyxTQUFTOzswQkE4SEwsSUFBSTt3RkF6R0EsZUFBZTtzQkFEckIsS0FBSztnQkFNQyxlQUFlO3NCQURyQixLQUFLO2dCQU1DLGVBQWU7c0JBRHJCLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU1DLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFNQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU1DLGNBQWM7c0JBRHBCLEtBQUs7Z0JBTUMsZUFBZTtzQkFEckIsS0FBSztnQkFNQyxjQUFjO3NCQURwQixLQUFLO2dCQU1DLE1BQU07c0JBRFosS0FBSztnQkFNQyxVQUFVO3NCQURoQixLQUFLO2dCQUtVLHlCQUF5QjtzQkFBeEMsS0FBSztnQkFNQyxnQ0FBZ0M7c0JBRHRDLEtBQUs7Z0JBT0MsTUFBTTtzQkFEWixNQUFNO2dCQTBESSxNQUFNO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3QsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNCYXNlTW9kZWxDb250cm9sIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2Vtb2RlbGNvbnRyb2wnO1xyXG5pbXBvcnQgeyBJU2FjTG9jYWxpc2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTQUNMT0NBTElTQVRJT05fU0VSVklDRSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbG9jYWxpc2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXRDb21tb24gfSBmcm9tICcuLi9sYXlvdXQvZm9ybWxheW91dCc7XHJcbmltcG9ydCB7IFRpbnlNY2VEaWFsb2dTZXR0aW5ncyB9IGZyb20gJy4vdGlueW1jZWRpYWxvZ3NldHRpbmdzJztcclxuaW1wb3J0IHsgVGlueU1jZURpYWxvZ1NldHRpbmdzTWV0YSB9IGZyb20gJy4vdGlueW1jZWRpYWxvZ3NldHRpbmdzbWV0YSc7XHJcbmltcG9ydCB7IFRpbnlNY2VJbnN0YW5jZSB9IGZyb20gJy4vdGlueW1jZWluc3RhbmNlJztcclxuXHJcbi8qKlxyXG4gKiBCYXNpcyBLb21wb25lbnRlIGbDvHIgVGlueU1DRSBFZGl0b3JcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2FjVGlueU1jZUNvbW1vbiBleHRlbmRzIFNhY0Jhc2VNb2RlbENvbnRyb2w8c3RyaW5nPiB7XHJcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmF1bHQgQ29uZmlnIG1pdCBTdGFuZGFyZHdlcnRlbiBmw7xyIFRpbnlNQ0VcclxuICAgKi9cclxuICBwcml2YXRlIGJhc2VDb25maWc6IGFueSA9IHtcclxuICAgIGJhc2VfdXJsOiAnL3RpbnltY2UnLFxyXG4gICAgc3VmZml4OiAnLm1pbicsXHJcbiAgICBicmFuZGluZzogZmFsc2UsXHJcbiAgICBhbmd1bGFyOiB0aGlzLFxyXG4gICAgZmlsZV9waWNrZXJfdHlwZXM6ICdmaWxlIG1lZGlhIGltYWdlJyxcclxuICAgIGZpbGVfcGlja2VyX2NhbGxiYWNrOiB0aGlzLnNob3dTZWxlY3REaWFsb2csXHJcbiAgICBzYXZlX29uc2F2ZWNhbGxiYWNrOiAoKSA9PiB7fSxcclxuICB9O1xyXG5cclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGltIEZpbGVicm93c2VyIGRhcyBsw7ZzY2hlbiB2b24gRGF0ZWllblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZWRlbGV0ZSA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgaW0gRmlsZWJyb3dzZXIgZGFzIHVtYmVubmVuIHZvbiBEYXRlaWVuXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsb3dmaWxlcmVuYW1lID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgaG9jaGxhZGVuIHZvbiBGaWxlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZXVwbG9hZCA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgaW0gRmlsZWJyb3dzZXIgZGFzIGFubGVnZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyY3JlYXRlID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgbMO2c2NoZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyZGVsZXRlID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBpbSBGaWxlYnJvd3NlciBkYXMgdW1iZW5uZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVycmVuYW1lID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogVVJMIHp1IEZpbGVicm93c2VyIEJhY2tlbmRcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWxlYnJvd3NlcmFwaXVybDogc3RyaW5nID0gbnVsbDtcclxuICAvKipcclxuICAgKiBGaWxlIEV4dGVuc2lvbnMgZsO8ciBMaW5rcyAoRm9ybWF0OiAueHh4LC55eXksLmVlZSlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWxldHlwZXNmaWxlcyA9ICcnO1xyXG4gIC8qKlxyXG4gICAqIEZpbGUgRXh0ZW5zaW9ucyBmw7xyIEltYWdlcyAoRm9ybWF0OiAueHh4LC55eXksLmVlZSlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWxldHlwZXNpbWFnZXMgPSAnLmdpZiwuanBlZywuanBnLC5wbmcsLnRpZiwudGlmZiwuYm1wJztcclxuICAvKipcclxuICAgKiBGaWxlIEV4dGVuc2lvbnMgZsO8ciBNZWRpYSAoRm9ybWF0OiAueHh4LC55eXksLmVlZSlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWxldHlwZXN2aWRlbyA9ICcubXA0LC5tNHYsLm9ndiwud2VibSwubW92JztcclxuICAvKipcclxuICAgKiBIw7ZoZSBkZXMgRWRpdG9yc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlaWdodDogc3RyaW5nID0gdW5kZWZpbmVkO1xyXG4gIC8qKlxyXG4gICAqIERlZmluaWVydCBkYXMgQ29udHJvbCBhbHMgUmVxdWlyZWRcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpc3JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFJlcXVpcmVkIGJlaSBDb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICAnVkFMSURBVElPTl9FUlJPUl9SRVFVSVJFRCc7XHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFJlcXVpcmVkIGluIFZhbGlkYXRpb24gU3VtbWFyeVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkOiBzdHJpbmcgPVxyXG4gICAgJ1ZBTElEQVRJT05fRVJST1JfU1VNTUFSWV9SRVFVSVJFRCc7XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgd2VubiBTYXZlIEFjdGlvbiBpbiBUaW55TUNFIGF1c2dlbMO2c3Qgd2lyZFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvbnNhdmU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpbnlNQ0UgQ29uZmlnXHJcbiAgICovXHJcbiAgcHVibGljIF9jb25maWc6IGFueSA9IHt9O1xyXG4gIC8qKlxyXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cclxuICAgKi9cclxuICBwdWJsaWMgbG5nUmVzb3VyY2VTZXJ2aWNlOiBJU2FjTG9jYWxpc2F0aW9uU2VydmljZTtcclxuICAvKipcclxuICAgKiBTZXR0aW5ncyBJbnN0YW56IGbDvHIgRGlhbG9nXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdERpYWxvZ1NldHRpbmdzOiBUaW55TWNlRGlhbG9nU2V0dGluZ3M7XHJcbiAgLyoqXHJcbiAgICogRGVyIFNlbGVjdCBEaWFsb2cgd2lyZCBhbmdlemVpZ3RcclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0ZGlhbG9ndmlzaWJsZSA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIEluc3RhbnogYXVmIFRpbnlNQ0UgU2V0dGluZ3MuIFdpcmQgZHVyY2ggVGlueU1DRSBnZXNldHp0IHVuZCB3aXJkIGbDvHIgZGVuIENhbGxiYWNrIGRlcyBEaWFsb2cgYmVuw7Z0aWd0XHJcbiAgICovXHJcbiAgcHVibGljIHNldHRpbmdzOiBUaW55TWNlSW5zdGFuY2U7XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBwYXJhbSBmb3JtbGF5b3V0IFNhY0Zvcm1MYXlvdXRDb21tb24gdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgZm9yIGluamVjdGluZyBzZXJ2aWNlc1xyXG4gICAqIEBwYXJhbSBuZ1pvbmUgbmd6b25lIGZvciBoYW5kbGluZyBleHRlcm5hbCBqYXZhc2NyaXB0c1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBmb3JtbGF5b3V0OiBTYWNGb3JtTGF5b3V0Q29tbW9uLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJvdGVjdGVkIG5nWm9uZTogTmdab25lXHJcbiAgKSB7XHJcbiAgICBzdXBlcihmb3JtbGF5b3V0LCBpbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxyXG4gICAgICBuZXcgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UoKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmNvbmZpZyA9IHt9O1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xyXG5cclxuICAvKipcclxuICAgKiBUaW55TUNFIEtvbmZpZ3VyYXRpb25cclxuICAgKiBAbGluayBodHRwczovL3d3dy50aW55LmNsb3VkL2RvY3MvY29uZmlndXJlL1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjb25maWcodjogYW55KSB7XHJcbiAgICB0aGlzLl9jb25maWcgPSB7XHJcbiAgICAgIC4uLnRoaXMuZ2V0RHluYW1pY1NldHRpbmdzKCksXHJcbiAgICAgIC4uLnRoaXMuYmFzZUNvbmZpZyxcclxuICAgICAgLi4udGhpcy5vdmVyd3JpdGVEZWZhdWx0U2V0dGluZ3MoKSxcclxuICAgICAgLi4udixcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUaW55TUNFIEtvbmZpZ3VyYXRpb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGNvbmZpZygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZztcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBTY2hsaWVzc3QgZGVuIERhdGVpYXVzd2FobCBEaWFsb2dcclxuICAgKi9cclxuICBwdWJsaWMgY2xvc2VTZWxlY3REaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGRpYWxvZ3Zpc2libGUgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEzDtnN0IGRpZSBTcGVpY2hlcm4gQWN0aW9uIGF1c1xyXG4gICAqIEBwYXJhbSBjb250ZW50IENvbnRlbnQgYWxzIFN0cmluZ1xyXG4gICAqL1xyXG4gIHB1YmxpYyBzYXZlKGNvbnRlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbnNhdmUuZW1pdChjb250ZW50KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGRhcyBSZXN1bHRhdCBhdXMgZGVtIERhdGVpYXVzd2FobCBEaWFsb2dcclxuICAgKi9cclxuICBwdWJsaWMgc2V0U2VsZWN0RGlhbG9nUmVzdWx0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0RGlhbG9nU2V0dGluZ3MudmFsdWUpIHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRoaXMuc2VsZWN0RGlhbG9nU2V0dGluZ3MudmFsdWUuc3RhcnRzV2l0aCgnLycpIHx8XHJcbiAgICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy52YWx1ZS5zdGFydHNXaXRoKCdcXFxcJylcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy52YWx1ZSA9XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdERpYWxvZ1NldHRpbmdzLnZhbHVlLnN1YnN0cmluZygxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5zZWxlY3REaWFsb2dTZXR0aW5ncy5jYWxsYmFjayh0aGlzLnNlbGVjdERpYWxvZ1NldHRpbmdzLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsb3NlU2VsZWN0RGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBaZWlndCBkZW4gRGF0ZWlhdXN3YWhsIERpYWxvZyBhblxyXG4gICAqIEBwYXJhbSBjYWxsYmFjayBDYWxsYmFjayBNZXRob2RlIHdlbGNoZSBhdWZnZXJ1ZmVuIHdpcmQsIHdlbm4gZGVyIERpYWxvZyBnZXNjaGxvc3NlbiB3aXJkXHJcbiAgICogQHBhcmFtIHZhbHVlIFdlcnQgYXVzIGRlbSBEYXRlaSBEaWFsb2dcclxuICAgKiBAcGFyYW0gbWV0YSBNZXRhIERhdGVuIHp1ciBEYXRlaVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzaG93U2VsZWN0RGlhbG9nKFxyXG4gICAgY2FsbGJhY2ssXHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgbWV0YTogVGlueU1jZURpYWxvZ1NldHRpbmdzTWV0YVxyXG4gICk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0ZGlhbG9ndmlzaWJsZSA9IHRydWU7XHJcblxyXG4gICAgICAgIC8vIFNldCBEaWFsb2cgU2V0dGluZ3NcclxuICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0RGlhbG9nU2V0dGluZ3MgPSBuZXcgVGlueU1jZURpYWxvZ1NldHRpbmdzKHtcclxuICAgICAgICAgIGNhbGxiYWNrOiBjYWxsYmFjayxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZSxcclxuICAgICAgICAgIG1ldGE6IG1ldGEsXHJcbiAgICAgICAgICBhbGxvd2VkdHlwZXM6ICcnLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKG1ldGEuZmlsZXR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgJ2ltYWdlJzpcclxuICAgICAgICAgICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLnNlbGVjdERpYWxvZ1NldHRpbmdzLmFsbG93ZWR0eXBlcyA9XHJcbiAgICAgICAgICAgICAgdGhpcy5zZXR0aW5ncy5hbmd1bGFyLmZpbGV0eXBlc2ltYWdlcztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdtZWRpYSc6XHJcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5zZWxlY3REaWFsb2dTZXR0aW5ncy5hbGxvd2VkdHlwZXMgPVxyXG4gICAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MuYW5ndWxhci5maWxldHlwZXN2aWRlbztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuc2VsZWN0RGlhbG9nU2V0dGluZ3MuYWxsb3dlZHR5cGVzID1cclxuICAgICAgICAgICAgICB0aGlzLnNldHRpbmdzLmFuZ3VsYXIuZmlsZXR5cGVzZmlsZXM7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkaWVydCBkYXMgQ29udHJvbFxyXG4gICAqIEBwYXJhbSBjIENvbnRyb2wgSW5zdGFueiBkaWUgdmFsZGlkaWVydCB3aXJkXHJcbiAgICogQHJldHVybnMgR2lidCBlaW5lIEZlaGxlcm1lbGR1bmcgb2RlciBOVUxMIHp1csO8Y2tcclxuICAgKi9cclxuICBwdWJsaWMgdmFsaWRhdGVEYXRhKGM6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNyZXF1aXJlZCkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ucmVxdWlyZWQoXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogZ2V0IHNldHRpbmdzIGluIGVmZmVjdGl2ZSBpbXBsZW1lbnRhdGlvbiB0aGF0IG92ZXJ3cml0ZXMgdGhlIGRlZmF1bHRzLiB1c2Uge30gZm9yIG5vbiBvdmVyd3JpdGVzLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCBvdmVyd3JpdGVEZWZhdWx0U2V0dGluZ3MoKTogYW55O1xyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBBYnN0cmFjdCBNZXRob2RzXHJcblxyXG4gIC8vICNyZWdpb24gUHJpdmF0ZSBNZXRob2RzXHJcblxyXG4gIC8qKlxyXG4gICAqIEdpYnQgZGllIFRpbnlNQ0UgU2V0dGluZ3MgenVyw7xjaywgZGllIGF1cyBkZW4gUHJvcGVydGllcyBkZXIgQW5ndWxhciBLb21wb25lbnRlbiBlcnpldWd0IHdlcmRlblxyXG4gICAqIEByZXR1cm5zIE9iamVrdCBtaXQgU2V0dGluZ3NcclxuICAgKi9cclxuICBwcml2YXRlIGdldER5bmFtaWNTZXR0aW5ncygpOiBhbnkge1xyXG4gICAgbGV0IHNldHRpbmdzID0ge1xyXG4gICAgICBzZWxlY3RvcjogJyMnICsgdGhpcy5uYW1lICsgJ190aW55bWNlJyxcclxuICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodCxcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIHNldHRpbmdzO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVNhY0xhYmVsU2l6ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9pbnRlcmZhY2VzL0lTYWNMYWJlbFNpemVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElTYWNMYWJlbFNpemVzIHtcclxuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcclxuXHJcbiAgLyoqXHJcbiAgICogZGVmYXVsdCBsYWJlbCBzaXplIGZvciBtZWRpdW0gZGV2aWNlc1xyXG4gICAqL1xyXG4gIGxhYmVsU2l6ZU1kOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogZGVmYXVsdCBsYWJlbCBzaXplIGZvciBzbWFsbCBkZXZpY2VzXHJcbiAgICovXHJcbiAgbGFiZWxTaXplU206IG51bWJlcjtcclxuICAvKipcclxuICAgKiBkZWZhdWx0IGxhYmVsIGNvbHVtbiBzaXplXHJcbiAgICovXHJcbiAgbGFiZWxTaXplWHM6IG51bWJlcjtcclxuICAvKipcclxuICAgKiBkZWZhdWx0IGxhYmVsIHNpemUgZm9yIGV4dHJhIGV4dHJhIGxhcmdlIGRldmljZXNcclxuICAgKi9cclxuICBsYWJlbFNpemVYeGw6IG51bWJlcjtcclxuICAvKipcclxuICAgKiBkZWZhdWx0IGxhYmUgc2l6ZSBmb3IgbGFyZ2UgZGV2aWNlc1xyXG4gICAqL1xyXG4gIGxhYmVsU2l6ZUxnOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogZGVmYXVsdCBsYWJlbCBzaXplIGZvciBleHRyYSBsYXJnZSBkZXZpY2VzXHJcbiAgICovXHJcbiAgbGFiZWxTaXplWGw6IG51bWJlcjtcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXHJcbn1cclxuIl19