ng-inail-common 5.0.0-alpha.21 → 5.0.0-alpha.23

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 (103) hide show
  1. package/esm2022/lib/components/core/base.component.mjs +13 -18
  2. package/esm2022/lib/components/core/basic-ux-element.component.mjs +6 -12
  3. package/esm2022/lib/components/core/form/checkbox/checkbox.component.mjs +7 -13
  4. package/esm2022/lib/components/core/form/form-element.component.mjs +14 -20
  5. package/esm2022/lib/components/core/form/input-date/input-date.component.mjs +7 -13
  6. package/esm2022/lib/components/core/form/input-file/input-file.component.mjs +7 -13
  7. package/esm2022/lib/components/core/form/input-money/input-money.component.mjs +6 -12
  8. package/esm2022/lib/components/core/form/input-number/input-number.component.mjs +7 -13
  9. package/esm2022/lib/components/core/form/input-text/input-text.component.mjs +8 -13
  10. package/esm2022/lib/components/core/form/input-time/input-time.component.mjs +6 -12
  11. package/esm2022/lib/components/core/form/multi-select/multi-select.component.mjs +7 -13
  12. package/esm2022/lib/components/core/form/radio-select/radio-select.component.mjs +7 -13
  13. package/esm2022/lib/components/core/form/select/select.component.mjs +7 -13
  14. package/esm2022/lib/components/core/form/textarea/textarea.component.mjs +7 -13
  15. package/esm2022/lib/components/core/layout/breadcrumb/breadcrumb.component.mjs +11 -16
  16. package/esm2022/lib/components/core/layout/dynamic-layout-element.component.mjs +24 -28
  17. package/esm2022/lib/components/core/layout/footer/footer.component.mjs +10 -22
  18. package/esm2022/lib/components/core/layout/header/header.component.mjs +6 -12
  19. package/esm2022/lib/components/core/layout/header-secondario/header-secondario.component.mjs +12 -24
  20. package/esm2022/lib/components/core/layout/inail-layout/inail-layout.component.mjs +29 -37
  21. package/esm2022/lib/components/core/layout/loader/loader.component.mjs +6 -12
  22. package/esm2022/lib/components/core/layout/logo-header/logo-header.component.mjs +10 -22
  23. package/esm2022/lib/components/core/layout/menu/menu.component.mjs +13 -19
  24. package/esm2022/lib/components/core/layout/menu-intranet/menu-intranet.component.mjs +14 -23
  25. package/esm2022/lib/components/core/layout/navigazione-principale/navigazione-principale.component.mjs +11 -23
  26. package/esm2022/lib/components/core/layout/navigazione-secondaria/navigazione-secondaria.component.mjs +7 -13
  27. package/esm2022/lib/components/core/layout/trigger-slider-menu-button/trigger-slider-menu-button.component.mjs +6 -12
  28. package/esm2022/lib/components/core/responsive-element.component.mjs +6 -12
  29. package/esm2022/lib/components/core/table/inail-table-page-selector/inail-table-page-selector.component.mjs +5 -6
  30. package/esm2022/lib/components/core/table/table/table.component.mjs +8 -14
  31. package/esm2022/lib/components/core/table/table-page-length-selector/table-page-length-selector.component.mjs +5 -6
  32. package/esm2022/lib/components/core/table/th-label/th-label.component.mjs +5 -6
  33. package/esm2022/lib/components/core/table/tr-accordion/tr-accordion.component.mjs +7 -13
  34. package/esm2022/lib/components/core/table/tr-checkbox/tr-checkbox.component.mjs +7 -13
  35. package/esm2022/lib/components/core/ux/accordion/accordion.component.mjs +7 -14
  36. package/esm2022/lib/components/core/ux/alert/alert.component.mjs +9 -15
  37. package/esm2022/lib/components/core/ux/button/button.component.mjs +6 -12
  38. package/esm2022/lib/components/core/ux/confirm/confirm.component.mjs +9 -15
  39. package/esm2022/lib/components/core/ux/container/container.component.mjs +5 -6
  40. package/esm2022/lib/components/core/ux/feedback/feedback.component.mjs +7 -13
  41. package/esm2022/lib/components/core/ux/form-grey/form-grey.component.mjs +5 -6
  42. package/esm2022/lib/components/core/ux/icon-button/icon-button.component.mjs +6 -12
  43. package/esm2022/lib/components/core/ux/modal/modal.component.mjs +7 -13
  44. package/esm2022/lib/components/core/ux/page-title/page-title.component.mjs +8 -14
  45. package/esm2022/lib/components/core/ux/popover/popover.component.mjs +7 -13
  46. package/esm2022/lib/components/core/ux/progress-bar/progress-bar.component.mjs +6 -12
  47. package/esm2022/lib/components/core/ux/selector/selector.component.mjs +7 -14
  48. package/esm2022/lib/components/core/ux/tab-group/tab-group.component.mjs +6 -12
  49. package/esm2022/lib/components/core/ux/tab-pane/tab-pane.component.mjs +7 -13
  50. package/esm2022/lib/components/core/ux/wizard/wizard.component.mjs +7 -14
  51. package/fesm2022/ng-inail-common.mjs +420 -667
  52. package/fesm2022/ng-inail-common.mjs.map +1 -1
  53. package/lib/components/core/base.component.d.ts +3 -3
  54. package/lib/components/core/basic-ux-element.component.d.ts +3 -5
  55. package/lib/components/core/form/checkbox/checkbox.component.d.ts +2 -5
  56. package/lib/components/core/form/form-element.component.d.ts +3 -5
  57. package/lib/components/core/form/input-date/input-date.component.d.ts +2 -5
  58. package/lib/components/core/form/input-file/input-file.component.d.ts +2 -5
  59. package/lib/components/core/form/input-money/input-money.component.d.ts +2 -5
  60. package/lib/components/core/form/input-number/input-number.component.d.ts +2 -5
  61. package/lib/components/core/form/input-text/input-text.component.d.ts +2 -6
  62. package/lib/components/core/form/input-time/input-time.component.d.ts +2 -5
  63. package/lib/components/core/form/multi-select/multi-select.component.d.ts +2 -5
  64. package/lib/components/core/form/radio-select/radio-select.component.d.ts +2 -5
  65. package/lib/components/core/form/select/select.component.d.ts +2 -5
  66. package/lib/components/core/form/textarea/textarea.component.d.ts +2 -5
  67. package/lib/components/core/layout/breadcrumb/breadcrumb.component.d.ts +3 -7
  68. package/lib/components/core/layout/dynamic-layout-element.component.d.ts +6 -8
  69. package/lib/components/core/layout/footer/footer.component.d.ts +2 -11
  70. package/lib/components/core/layout/header/header.component.d.ts +2 -5
  71. package/lib/components/core/layout/header-secondario/header-secondario.component.d.ts +4 -11
  72. package/lib/components/core/layout/inail-layout/inail-layout.component.d.ts +5 -8
  73. package/lib/components/core/layout/loader/loader.component.d.ts +2 -5
  74. package/lib/components/core/layout/logo-header/logo-header.component.d.ts +2 -11
  75. package/lib/components/core/layout/menu/menu.component.d.ts +3 -7
  76. package/lib/components/core/layout/menu-intranet/menu-intranet.component.d.ts +6 -11
  77. package/lib/components/core/layout/navigazione-principale/navigazione-principale.component.d.ts +2 -11
  78. package/lib/components/core/layout/navigazione-secondaria/navigazione-secondaria.component.d.ts +2 -5
  79. package/lib/components/core/layout/trigger-slider-menu-button/trigger-slider-menu-button.component.d.ts +2 -5
  80. package/lib/components/core/responsive-element.component.d.ts +3 -5
  81. package/lib/components/core/table/inail-table-page-selector/inail-table-page-selector.component.d.ts +2 -3
  82. package/lib/components/core/table/table/table.component.d.ts +2 -5
  83. package/lib/components/core/table/table-page-length-selector/table-page-length-selector.component.d.ts +2 -3
  84. package/lib/components/core/table/th-label/th-label.component.d.ts +2 -3
  85. package/lib/components/core/table/tr-accordion/tr-accordion.component.d.ts +2 -5
  86. package/lib/components/core/table/tr-checkbox/tr-checkbox.component.d.ts +2 -5
  87. package/lib/components/core/ux/accordion/accordion.component.d.ts +2 -6
  88. package/lib/components/core/ux/alert/alert.component.d.ts +2 -5
  89. package/lib/components/core/ux/button/button.component.d.ts +2 -5
  90. package/lib/components/core/ux/confirm/confirm.component.d.ts +2 -5
  91. package/lib/components/core/ux/container/container.component.d.ts +2 -3
  92. package/lib/components/core/ux/feedback/feedback.component.d.ts +2 -5
  93. package/lib/components/core/ux/form-grey/form-grey.component.d.ts +2 -3
  94. package/lib/components/core/ux/icon-button/icon-button.component.d.ts +2 -5
  95. package/lib/components/core/ux/modal/modal.component.d.ts +2 -5
  96. package/lib/components/core/ux/page-title/page-title.component.d.ts +2 -5
  97. package/lib/components/core/ux/popover/popover.component.d.ts +2 -5
  98. package/lib/components/core/ux/progress-bar/progress-bar.component.d.ts +2 -5
  99. package/lib/components/core/ux/selector/selector.component.d.ts +2 -6
  100. package/lib/components/core/ux/tab-group/tab-group.component.d.ts +2 -5
  101. package/lib/components/core/ux/tab-pane/tab-pane.component.d.ts +2 -5
  102. package/lib/components/core/ux/wizard/wizard.component.d.ts +2 -6
  103. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Output, ViewEncapsulation } from '@angular/core';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, Input, Output, ViewEncapsulation } from '@angular/core';
2
2
  import { isNotBlankOrNull, isString } from "../../utils/common.operators";
3
3
  import { DEFAULT_WEBKIT_VERSION, NG_INAIL_COMMON_CONFIG } from "../../ng-inail-common.config";
4
4
  import * as i0 from "@angular/core";
@@ -15,16 +15,16 @@ export const CHANGE_DETECTION_STRATEGY = ChangeDetectionStrategy.OnPush;
15
15
  // export const CHANGE_DETECTION_STRATEGY = ChangeDetectionStrategy.Default;
16
16
  export const getConfigValue = (value, defaultValue) => value != undefined ? value : defaultValue;
17
17
  export class BaseComponent {
18
- constructor(baseComponentCdr, baseElementLibConfig) {
19
- this.baseComponentCdr = baseComponentCdr;
20
- this.baseElementLibConfig = baseElementLibConfig;
18
+ constructor() {
19
+ this.libConfig = inject(NG_INAIL_COMMON_CONFIG);
20
+ this.cdr = inject(ChangeDetectorRef);
21
21
  this.$ = window['$'];
22
22
  this.viewInit = false;
23
23
  /**
24
24
  * Se true effettua il log direttamente nella console.
25
25
  * Altrimenti emette l'evento log
26
26
  */
27
- this.logOnConsole = getConfigValue(this.baseElementLibConfig?.logOnConsole, false);
27
+ this.logOnConsole = getConfigValue(this.libConfig?.logOnConsole, false);
28
28
  /**
29
29
  *
30
30
  */
@@ -32,15 +32,13 @@ export class BaseComponent {
32
32
  this.subcriptions = [];
33
33
  this.push = (subcription) => this.subcriptions.push(subcription);
34
34
  // Detach centralizzato
35
- this.detach = () => {
36
- this.baseComponentCdr.detach();
37
- };
38
- this.detectChanges = () => this.baseComponentCdr.detectChanges();
35
+ this.detach = () => this.cdr.detach();
36
+ this.detectChanges = () => this.cdr.detectChanges();
39
37
  this.getMessage = (event) => this.logPrefix && isString(event.message) ? `${this.logPrefix} ${event.message}` : event.message;
40
38
  this.getNotBlankValue = (v) => isNotBlankOrNull(`${v}`) ? v : undefined;
41
39
  this.log = new EventEmitter();
42
- if (baseElementLibConfig != undefined) {
43
- baseElementLibConfig.webkitVersion = baseElementLibConfig.webkitVersion ?? DEFAULT_WEBKIT_VERSION;
40
+ if (this.libConfig != undefined) {
41
+ this.libConfig.webkitVersion = this.libConfig.webkitVersion ?? DEFAULT_WEBKIT_VERSION;
44
42
  }
45
43
  saveEE();
46
44
  }
@@ -58,7 +56,7 @@ export class BaseComponent {
58
56
  this.emitDebug(`this`);
59
57
  this.emitDebug(this);
60
58
  if (this.detectChange) {
61
- this.push(this.detectChange.subscribe(() => this.baseComponentCdr.detectChanges()));
59
+ this.push(this.detectChange.subscribe(() => this.cdr.detectChanges()));
62
60
  }
63
61
  }
64
62
  ngOnDestroy() {
@@ -98,16 +96,13 @@ export class BaseComponent {
98
96
  this.viewInit = true;
99
97
  this.detectChanges();
100
98
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
102
100
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseComponent, selector: "inail-base", inputs: { logOnConsole: "logOnConsole", showState: "showState", detectChange: "detectChange" }, outputs: { log: "log" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
103
101
  }
104
102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseComponent, decorators: [{
105
103
  type: Component,
106
104
  args: [{ selector: 'inail-base', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
107
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
108
- type: Inject,
109
- args: [NG_INAIL_COMMON_CONFIG]
110
- }] }], propDecorators: { log: [{
105
+ }], ctorParameters: () => [], propDecorators: { log: [{
111
106
  type: Output
112
107
  }], logOnConsole: [{
113
108
  type: Input
@@ -121,4 +116,4 @@ function saveEE() {
121
116
  window['asd'] = JSON.parse(atob('ewogICJhdXRvcmUiOiAiU2ltb25lIEFudG9uaW5pIiwKICAiZXRhIjogImRpcGVuZGUgZGFsbCdhbm5vIGNvcnJlbnRlIiwKICAiaG9iYnkiOiBbIlBlc2NhIiwgIlNub3dib2FyZCIsICJHYW1pbmciLCAiQ3Jvc3NmaXQiXSwKICAicHJlZmVyaXRpIjogewogICAgInBlc2NpIjogWyJDYXJwYSIsICJCbGFjayBCYXNzIl0sCiAgICAidmlkZW9naW9jaGkiOiBbIkZGVklJIiwgIkZGVklJUiIsICJEZWF0aCBTdHJhbmRpbmciLCAiU2VraXJvIiwgIlJlZCBEZWFkIFJlZGVtcHRpb24gMiIsICJUTE9VIiwgIlRMT1UyIl0sCiAgICAibGlicmkiOiBbCiAgICAgIHsiYXV0b3JlIjogIkdhYnJpZWwgR2FyY2lhIE1hcnF1ZXoiLCAidGl0b2xvIjogIkNlbnQnYW5uaSBkaSBzb2xpdHVkaW5lIn0sCiAgICAgIHsiYXV0b3JlIjogIkFsZXNzYW5kcm8gQmFyaWNjbyIsICJ0aXRvbG8iOiAiQ2FzdGVsbGkgZGkgcmFiYmlhIn0sCiAgICAgIHsiYXV0b3JlIjogIkFsZXNzYW5kcm8gQmFyaWNjbyIsICJ0aXRvbG8iOiAiU2V0YSJ9LAogICAgICB7ImF1dG9yZSI6ICJZYXN1bmFyaSBLYXdhYmF0YSIsICJ0aXRvbG8iOiAiTGEgY2FzYSBkZWxsZSBiZWxsZSBhZGRvcm1lbnRhdGUifQogICAgXQogIH0sCiAgImltcHJlc2VDZWxlYnJpIjogWyJTb3Bwb3J0byBtaWEgbWFkcmUgZGEgcXVhc2kgNDAgYW5uaSJdLAogICJwcm92b0Ftb3JlUGVyIjogWyJJbCBtaW8gY2FuZSIsICJJbCBtaW8gZ2F0dG8iLCAiSWwgdGlyYW1pc3UiXQp9'));
122
117
  }
123
118
  }
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUdOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFeEUsT0FBTyxFQUFzQixzQkFBc0IsRUFBRSxzQkFBc0IsRUFBc0IsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFdEksTUFBTSxDQUFOLElBQVksUUFRWDtBQVJELFdBQVksUUFBUTtJQUVsQix1QkFBVyxDQUFBO0lBQ1gsMkJBQWUsQ0FBQTtJQUNmLDJCQUFlLENBQUE7SUFDZix5QkFBYSxDQUFBO0lBQ2IseUJBQWEsQ0FBQTtJQUNiLDJCQUFlLENBQUE7QUFDakIsQ0FBQyxFQVJXLFFBQVEsS0FBUixRQUFRLFFBUW5CO0FBUUQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsdUJBQXVCLENBQUMsTUFBTSxDQUFDO0FBQ3hFLDRFQUE0RTtBQUU1RSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFVLEVBQUUsWUFBaUIsRUFBRSxFQUFFLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7QUFlM0csTUFBTSxPQUFPLGFBQWE7SUEwQ3hCLFlBQW9CLGdCQUFtQyxFQUVuQyxvQkFBeUM7UUFGekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFtQjtRQUVuQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBMUM3RCxNQUFDLEdB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QUFDO2dCQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxlQUFlO1FBRWIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7K0dBbElVLGFBQWEsbURBMkNKLHNCQUFzQjttR0EzQy9CLGFBQWEsZ01BTGQsRUFBRTs7NEZBS0QsYUFBYTtrQkFQekIsU0FBUzsrQkFDRSxZQUFZLFlBQ1osRUFBRSxtQkFFSyx5QkFBeUIsaUJBQzNCLGlCQUFpQixDQUFDLElBQUk7OzBCQTZDeEIsTUFBTTsyQkFBQyxzQkFBc0I7eUNBakMxQyxHQUFHO3NCQURGLE1BQU07Z0JBUVAsWUFBWTtzQkFEWCxLQUFLO2dCQU9OLFNBQVM7c0JBRFIsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7O0FBb0lSLFNBQVMsTUFBTTtJQUViLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUVuQixNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsaytCQUFrK0IsQ0FBQyxDQUFDLENBQUM7SUFDdmdDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aXNOb3RCbGFua09yTnVsbCwgaXNTdHJpbmd9IGZyb20gXCIuLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgREVGQVVMVF9XRUJLSVRfVkVSU0lPTiwgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGVudW0gTG9nTGV2ZWwge1xuXG4gIExPRyA9ICdsb2cnLFxuICBUUkFDRSA9ICd0cmFjZScsXG4gIERFQlVHID0gJ2RlYnVnJyxcbiAgSU5GTyA9ICdpbmZvJyxcbiAgV0FSTiA9ICd3YXJuJyxcbiAgRVJST1IgPSAnZXJyb3InXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nRXZlbnQge1xuXG4gIG1lc3NhZ2U6IGFueTtcbiAgbGV2ZWw6IExvZ0xldmVsO1xufVxuXG5leHBvcnQgY29uc3QgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSA9IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaDtcbi8vIGV4cG9ydCBjb25zdCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZID0gQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdDtcblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZ1ZhbHVlID0gKHZhbHVlOiBhbnksIGRlZmF1bHRWYWx1ZTogYW55KSA9PiB2YWx1ZSAhPSB1bmRlZmluZWQgPyB2YWx1ZSA6IGRlZmF1bHRWYWx1ZTtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQ29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIFNpbXBsZUNoYW5nZXMge1xuXG4gIGxvZ09uQ29uc29sZTogQm9vbGVhbkNoYW5nZSxcbiAgc2hvd1N0YXRlOiBCb29sZWFuQ2hhbmdlXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luYWlsLWJhc2UnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gICQgPSB3aW5kb3dbJyQnXTtcblxuICB2aWV3SW5pdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBMb2cgZGVsIGNvbXBvbmVudGVcbiAgICovXG4gIEBPdXRwdXQoKVxuICBsb2c6IEV2ZW50RW1pdHRlcjxMb2dFdmVudD47XG5cbiAgLyoqXG4gICAqIFNlIHRydWUgZWZmZXR0dWEgaWwgbG9nIGRpcmV0dGFtZW50ZSBuZWxsYSBjb25zb2xlLlxuICAgKiBBbHRyaW1lbnRpIGVtZXR0ZSBsJ2V2ZW50byBsb2dcbiAgICovXG4gIEBJbnB1dCgpXG4gIGxvZ09uQ29uc29sZTogYm9vbGVhbiA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuYmFzZUVsZW1lbnRMaWJDb25maWc/LmxvZ09uQ29uc29sZSwgZmFsc2UpO1xuXG4gIC8qKlxuICAgKlxuICAgKi9cbiAgQElucHV0KClcbiAgc2hvd1N0YXRlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZGV0ZWN0Q2hhbmdlOiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gIGxvZ1ByZWZpeDogc3RyaW5nO1xuXG4gIHN1YmNyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHVzaCA9IChzdWJjcmlwdGlvbjogU3Vic2NyaXB0aW9uKSA9PiB0aGlzLnN1YmNyaXB0aW9ucy5wdXNoKHN1YmNyaXB0aW9uKTtcblxuICAvLyBEZXRhY2ggY2VudHJhbGl6emF0b1xuICBkZXRhY2ggPSAoKSA9PiB7XG4gICAgdGhpcy5iYXNlQ29tcG9uZW50Q2RyLmRldGFjaCgpO1xuICB9O1xuXG4gIGRldGVjdENoYW5nZXMgPSAoKSA9PiB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICBnZXRNZXNzYWdlID0gKGV2ZW50OiBMb2dFdmVudCkgPT4gdGhpcy5sb2dQcmVmaXggJiYgaXNTdHJpbmcoZXZlbnQubWVzc2FnZSkgPyBgJHt0aGlzLmxvZ1ByZWZpeH0gJHtldmVudC5tZXNzYWdlfWAgOiBldmVudC5tZXNzYWdlO1xuICBnZXROb3RCbGFua1ZhbHVlID0gKHYpID0+IGlzTm90QmxhbmtPck51bGwoYCR7dn1gKSA/IHYgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYXNlQ29tcG9uZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIGJhc2VFbGVtZW50TGliQ29uZmlnOiBOZ0luYWlsQ29tbW9uQ29uZmlnKSB7XG4gICAgdGhpcy5sb2cgPSBuZXcgRXZlbnRFbWl0dGVyPExvZ0V2ZW50PigpO1xuXG4gICAgaWYgKGJhc2VFbGVtZW50TGliQ29uZmlnICE9IHVuZGVmaW5lZCkge1xuXG4gICAgICBiYXNlRWxlbWVudExpYkNvbmZpZy53ZWJraXRWZXJzaW9uID0gYmFzZUVsZW1lbnRMaWJDb25maWcud2Via2l0VmVyc2lvbiA/PyBERUZBVUxUX1dFQktJVF9WRVJTSU9OO1xuICAgIH1cblxuICAgIHNhdmVFRSgpO1xuICB9XG5cbiAgb3ZlcnJpZGVDb25maWcoY29uZmlnOiBCYXNlQ29tcG9uZW50Q29uZmlnKSB7XG5cbiAgICBpZiAoY29uZmlnKSB7XG5cbiAgICAgIHRoaXMubG9nT25Db25zb2xlID0gZ2V0Q29uZmlnVmFsdWUoY29uZmlnLmxvZ09uQ29uc29sZSwgdGhpcy5sb2dPbkNvbnNvbGUpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IEJhc2VDb21wb25lbnRDaGFuZ2VzKSB7XG4gICAgdGhpcy5lbWl0RGVidWcoYG5nT25DaGFuZ2VzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcoY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGBuZ09uSW5pdGApO1xuICAgIHRoaXMuZW1pdERlYnVnKGB0aGlzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcodGhpcyk7XG5cbiAgICBpZiAodGhpcy5kZXRlY3RDaGFuZ2UpIHtcblxuICAgICAgdGhpcy5wdXNoKHRoaXMuZGV0ZWN0Q2hhbmdlLnN1YnNjcmliZSgoKSA9PiB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgJHt0aGlzLmxvZ1ByZWZpeH0gbmdPbkRlc3Ryb3lgKTtcbiAgICB0aGlzLnN1YmNyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcz8udW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBlbWl0TG9nKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkxPR30pO1xuICB9XG5cbiAgZW1pdFRyYWNlKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLlRSQUNFfSk7XG4gIH1cblxuICBlbWl0RGVidWcobWVzc2FnZTogYW55KSB7XG4gICAgdGhpcy5lbWl0KHttZXNzYWdlOiBtZXNzYWdlLCBsZXZlbDogTG9nTGV2ZWwuREVCVUd9KTtcbiAgfVxuXG4gIGVtaXRJbmZvKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLklORk99KTtcbiAgfVxuXG4gIGVtaXRXYXJuKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLldBUk59KTtcbiAgfVxuXG4gIGVtaXRFcnJvcihtZXNzYWdlOiBhbnkpIHtcblxuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkVSUk9SfSk7XG4gIH1cblxuICBlbWl0KGV2ZW50OiBMb2dFdmVudCkge1xuXG4gICAgaWYgKGV2ZW50KSB7XG5cbiAgICAgIGlmICh0aGlzLmxvZ09uQ29uc29sZSA9PT0gdHJ1ZSkge1xuXG4gICAgICAgIGNvbnNvbGVbZXZlbnQubGV2ZWxdLmFwcGx5KHRoaXMsIFt0aGlzLmdldE1lc3NhZ2UoZXZlbnQpXSk7XG4gICAgICB9IGVsc2Uge1xuXG4gICAgICAgIGV2ZW50Lm1lc3NhZ2UgPSB0aGlzLmdldE1lc3NhZ2UoZXZlbnQpO1xuICAgICAgICB0aGlzLmxvZy5lbWl0KGV2ZW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG5cbiAgICB0aGlzLnZpZXdJbml0ID0gdHJ1ZTtcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJvb2xlYW5DaGFuZ2UgZXh0ZW5kcyBTaW1wbGVDaGFuZ2Uge1xuXG4gIGN1cnJlbnRWYWx1ZTogYm9vbGVhbjtcbiAgcHJldmlvdXNWYWx1ZTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdDaGFuZ2UgZXh0ZW5kcyBTaW1wbGVDaGFuZ2Uge1xuXG4gIGN1cnJlbnRWYWx1ZTogc3RyaW5nO1xuICBwcmV2aW91c1ZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTnVtYmVyQ2hhbmdlIGV4dGVuZHMgU2ltcGxlQ2hhbmdlIHtcblxuICBjdXJyZW50VmFsdWU6IG51bWJlcjtcbiAgcHJldmlvdXNWYWx1ZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9ic2VydmFibGVDaGFuZ2UgZXh0ZW5kcyBTaW1wbGVDaGFuZ2Uge1xuXG4gIGN1cnJlbnRWYWx1ZTogT2JzZXJ2YWJsZTxhbnk+O1xuICBwcmV2aW91c1ZhbHVlOiBPYnNlcnZhYmxlPGFueT47XG59XG5cbmZ1bmN0aW9uIHNhdmVFRSgpIHtcblxuICBpZiAoIXdpbmRvd1snYXNkJ10pIHtcblxuICAgIHdpbmRvd1snYXNkJ10gPSBKU09OLnBhcnNlKGF0b2IoJ2V3b2dJQ0poZFhSdmNtVWlPaUFpVTJsdGIyNWxJRUZ1ZEc5dWFXNXBJaXdLSUNBaVpYUmhJam9nSW1ScGNHVnVaR1VnWkdGc2JDZGhibTV2SUdOdmNuSmxiblJsSWl3S0lDQWlhRzlpWW5raU9pQmJJbEJsYzJOaElpd2dJbE51YjNkaWIyRnlaQ0lzSUNKSFlXMXBibWNpTENBaVEzSnZjM05tYVhRaVhTd0tJQ0FpY0hKbFptVnlhWFJwSWpvZ2V3b2dJQ0FnSW5CbGMyTnBJam9nV3lKRFlYSndZU0lzSUNKQ2JHRmpheUJDWVhOeklsMHNDaUFnSUNBaWRtbGtaVzluYVc5amFHa2lPaUJiSWtaR1ZrbEpJaXdnSWtaR1ZrbEpVaUlzSUNKRVpXRjBhQ0JUZEhKaGJtUnBibWNpTENBaVUyVnJhWEp2SWl3Z0lsSmxaQ0JFWldGa0lGSmxaR1Z0Y0hScGIyNGdNaUlzSUNKVVRFOVZJaXdnSWxSTVQxVXlJbDBzQ2lBZ0lDQWliR2xpY21raU9pQmJDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa2RoWW5KcFpXd2dSMkZ5WTJsaElFMWhjbkYxWlhvaUxDQWlkR2wwYjJ4dklqb2dJa05sYm5RbllXNXVhU0JrYVNCemIyeHBkSFZrYVc1bEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVEyRnpkR1ZzYkdrZ1pHa2djbUZpWW1saEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVUyVjBZU0o5TEFvZ0lDQWdJQ0I3SW1GMWRHOXlaU0k2SUNKWllYTjFibUZ5YVNCTFlYZGhZbUYwWVNJc0lDSjBhWFJ2Ykc4aU9pQWlUR0VnWTJGellTQmtaV3hzWlNCaVpXeHNaU0JoWkdSdmNtMWxiblJoZEdVaWZRb2dJQ0FnWFFvZ0lIMHNDaUFnSW1sdGNISmxjMlZEWld4bFluSnBJam9nV3lKVGIzQndiM0owYnlCdGFXRWdiV0ZrY21VZ1pHRWdjWFZoYzJrZ05EQWdZVzV1YVNKZExBb2dJQ0p3Y205MmIwRnRiM0psVUdWeUlqb2dXeUpKYkNCdGFXOGdZMkZ1WlNJc0lDSkpiQ0J0YVc4Z1oyRjBkRzhpTENBaVNXd2dkR2x5WVcxcGMzVWlYUXA5JykpO1xuICB9XG59XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLE1BQU0sRUFHTixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXhFLE9BQU8sRUFBc0Isc0JBQXNCLEVBQUUsc0JBQXNCLEVBQXNCLE1BQU0sOEJBQThCLENBQUM7O0FBRXRJLE1BQU0sQ0FBTixJQUFZLFFBUVg7QUFSRCxXQUFZLFFBQVE7SUFFbEIsdUJBQVcsQ0FBQTtJQUNYLDJCQUFlLENBQUE7SUFDZiwyQkFBZSxDQUFBO0lBQ2YseUJBQWEsQ0FBQTtJQUNiLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFSVyxRQUFRLEtBQVIsUUFBUSxRQVFuQjtBQVFELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLHVCQUF1QixDQUFDLE1BQU0sQ0FBQztBQUN4RSw0RUFBNEU7QUFFNUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBVSxFQUFFLFlBQWlCLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0FBZTNHLE1BQU0sT0FBTyxhQUFhO0lBMkN4QjtRQXpDVSxjQUFTLEdBQXdCLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2hFLFFBQUcsR0FBc0IsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFF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S0FBSyxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFFYixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQzsrR0FqSVUsYUFBYTttR0FBYixhQUFhLGdNQUxkLEVBQUU7OzRGQUtELGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0UsWUFBWSxZQUNaLEVBQUUsbUJBRUsseUJBQXlCLGlCQUMzQixpQkFBaUIsQ0FBQyxJQUFJO3dEQWVyQyxHQUFHO3NCQURGLE1BQU07Z0JBUVAsWUFBWTtzQkFEWCxLQUFLO2dCQU9OLFNBQVM7c0JBRFIsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7O0FBZ0lSLFNBQVMsTUFBTTtJQUViLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUVuQixNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsaytCQUFrK0IsQ0FBQyxDQUFDLENBQUM7SUFDdmdDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aXNOb3RCbGFua09yTnVsbCwgaXNTdHJpbmd9IGZyb20gXCIuLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgREVGQVVMVF9XRUJLSVRfVkVSU0lPTiwgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGVudW0gTG9nTGV2ZWwge1xuXG4gIExPRyA9ICdsb2cnLFxuICBUUkFDRSA9ICd0cmFjZScsXG4gIERFQlVHID0gJ2RlYnVnJyxcbiAgSU5GTyA9ICdpbmZvJyxcbiAgV0FSTiA9ICd3YXJuJyxcbiAgRVJST1IgPSAnZXJyb3InXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nRXZlbnQge1xuXG4gIG1lc3NhZ2U6IGFueTtcbiAgbGV2ZWw6IExvZ0xldmVsO1xufVxuXG5leHBvcnQgY29uc3QgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSA9IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaDtcbi8vIGV4cG9ydCBjb25zdCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZID0gQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdDtcblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZ1ZhbHVlID0gKHZhbHVlOiBhbnksIGRlZmF1bHRWYWx1ZTogYW55KSA9PiB2YWx1ZSAhPSB1bmRlZmluZWQgPyB2YWx1ZSA6IGRlZmF1bHRWYWx1ZTtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQ29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIFNpbXBsZUNoYW5nZXMge1xuXG4gIGxvZ09uQ29uc29sZTogQm9vbGVhbkNoYW5nZSxcbiAgc2hvd1N0YXRlOiBCb29sZWFuQ2hhbmdlXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luYWlsLWJhc2UnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHByb3RlY3RlZCBsaWJDb25maWc6IE5nSW5haWxDb21tb25Db25maWcgPSBpbmplY3QoTkdfSU5BSUxfQ09NTU9OX0NPTkZJRyk7XG4gIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAkID0gd2luZG93WyckJ107XG5cbiAgdmlld0luaXQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogTG9nIGRlbCBjb21wb25lbnRlXG4gICAqL1xuICBAT3V0cHV0KClcbiAgbG9nOiBFdmVudEVtaXR0ZXI8TG9nRXZlbnQ+O1xuXG4gIC8qKlxuICAgKiBTZSB0cnVlIGVmZmV0dHVhIGlsIGxvZyBkaXJldHRhbWVudGUgbmVsbGEgY29uc29sZS5cbiAgICogQWx0cmltZW50aSBlbWV0dGUgbCdldmVudG8gbG9nXG4gICAqL1xuICBASW5wdXQoKVxuICBsb2dPbkNvbnNvbGU6IGJvb2xlYW4gPSBnZXRDb25maWdWYWx1ZSh0aGlzLmxpYkNvbmZpZz8ubG9nT25Db25zb2xlLCBmYWxzZSk7XG5cbiAgLyoqXG4gICAqXG4gICAqL1xuICBASW5wdXQoKVxuICBzaG93U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkZXRlY3RDaGFuZ2U6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgbG9nUHJlZml4OiBzdHJpbmc7XG5cbiAgc3ViY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwdXNoID0gKHN1YmNyaXB0aW9uOiBTdWJzY3JpcHRpb24pID0+IHRoaXMuc3ViY3JpcHRpb25zLnB1c2goc3ViY3JpcHRpb24pO1xuXG4gIC8vIERldGFjaCBjZW50cmFsaXp6YXRvXG4gIGRldGFjaCA9ICgpID0+IHRoaXMuY2RyLmRldGFjaCgpO1xuXG4gIGRldGVjdENoYW5nZXMgPSAoKSA9PiB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIGdldE1lc3NhZ2UgPSAoZXZlbnQ6IExvZ0V2ZW50KSA9PiB0aGlzLmxvZ1ByZWZpeCAmJiBpc1N0cmluZyhldmVudC5tZXNzYWdlKSA/IGAke3RoaXMubG9nUHJlZml4fSAke2V2ZW50Lm1lc3NhZ2V9YCA6IGV2ZW50Lm1lc3NhZ2U7XG4gIGdldE5vdEJsYW5rVmFsdWUgPSAodikgPT4gaXNOb3RCbGFua09yTnVsbChgJHt2fWApID8gdiA6IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxvZyA9IG5ldyBFdmVudEVtaXR0ZXI8TG9nRXZlbnQ+KCk7XG5cbiAgICBpZiAodGhpcy5saWJDb25maWcgIT0gdW5kZWZpbmVkKSB7XG5cbiAgICAgIHRoaXMubGliQ29uZmlnLndlYmtpdFZlcnNpb24gPSB0aGlzLmxpYkNvbmZpZy53ZWJraXRWZXJzaW9uID8/IERFRkFVTFRfV0VCS0lUX1ZFUlNJT047XG4gICAgfVxuXG4gICAgc2F2ZUVFKCk7XG4gIH1cblxuICBvdmVycmlkZUNvbmZpZyhjb25maWc6IEJhc2VDb21wb25lbnRDb25maWcpIHtcblxuICAgIGlmIChjb25maWcpIHtcblxuICAgICAgdGhpcy5sb2dPbkNvbnNvbGUgPSBnZXRDb25maWdWYWx1ZShjb25maWcubG9nT25Db25zb2xlLCB0aGlzLmxvZ09uQ29uc29sZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogQmFzZUNvbXBvbmVudENoYW5nZXMpIHtcbiAgICB0aGlzLmVtaXREZWJ1ZyhgbmdPbkNoYW5nZXNgKTtcbiAgICB0aGlzLmVtaXREZWJ1ZyhjaGFuZ2VzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuXG4gICAgdGhpcy5lbWl0RGVidWcoYG5nT25Jbml0YCk7XG4gICAgdGhpcy5lbWl0RGVidWcoYHRoaXNgKTtcbiAgICB0aGlzLmVtaXREZWJ1Zyh0aGlzKTtcblxuICAgIGlmICh0aGlzLmRldGVjdENoYW5nZSkge1xuXG4gICAgICB0aGlzLnB1c2godGhpcy5kZXRlY3RDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKSkpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuXG4gICAgdGhpcy5lbWl0RGVidWcoYCR7dGhpcy5sb2dQcmVmaXh9IG5nT25EZXN0cm95YCk7XG4gICAgdGhpcy5zdWJjcmlwdGlvbnMuZm9yRWFjaChzID0+IHM/LnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgZW1pdExvZyhtZXNzYWdlOiBhbnkpIHtcbiAgICB0aGlzLmVtaXQoe21lc3NhZ2U6IG1lc3NhZ2UsIGxldmVsOiBMb2dMZXZlbC5MT0d9KTtcbiAgfVxuXG4gIGVtaXRUcmFjZShtZXNzYWdlOiBhbnkpIHtcbiAgICB0aGlzLmVtaXQoe21lc3NhZ2U6IG1lc3NhZ2UsIGxldmVsOiBMb2dMZXZlbC5UUkFDRX0pO1xuICB9XG5cbiAgZW1pdERlYnVnKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkRFQlVHfSk7XG4gIH1cblxuICBlbWl0SW5mbyhtZXNzYWdlOiBhbnkpIHtcbiAgICB0aGlzLmVtaXQoe21lc3NhZ2U6IG1lc3NhZ2UsIGxldmVsOiBMb2dMZXZlbC5JTkZPfSk7XG4gIH1cblxuICBlbWl0V2FybihtZXNzYWdlOiBhbnkpIHtcbiAgICB0aGlzLmVtaXQoe21lc3NhZ2U6IG1lc3NhZ2UsIGxldmVsOiBMb2dMZXZlbC5XQVJOfSk7XG4gIH1cblxuICBlbWl0RXJyb3IobWVzc2FnZTogYW55KSB7XG5cbiAgICB0aGlzLmVtaXQoe21lc3NhZ2U6IG1lc3NhZ2UsIGxldmVsOiBMb2dMZXZlbC5FUlJPUn0pO1xuICB9XG5cbiAgZW1pdChldmVudDogTG9nRXZlbnQpIHtcblxuICAgIGlmIChldmVudCkge1xuXG4gICAgICBpZiAodGhpcy5sb2dPbkNvbnNvbGUgPT09IHRydWUpIHtcblxuICAgICAgICBjb25zb2xlW2V2ZW50LmxldmVsXS5hcHBseSh0aGlzLCBbdGhpcy5nZXRNZXNzYWdlKGV2ZW50KV0pO1xuICAgICAgfSBlbHNlIHtcblxuICAgICAgICBldmVudC5tZXNzYWdlID0gdGhpcy5nZXRNZXNzYWdlKGV2ZW50KTtcbiAgICAgICAgdGhpcy5sb2cuZW1pdChldmVudCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gICAgdGhpcy52aWV3SW5pdCA9IHRydWU7XG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCb29sZWFuQ2hhbmdlIGV4dGVuZHMgU2ltcGxlQ2hhbmdlIHtcblxuICBjdXJyZW50VmFsdWU6IGJvb2xlYW47XG4gIHByZXZpb3VzVmFsdWU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaW5nQ2hhbmdlIGV4dGVuZHMgU2ltcGxlQ2hhbmdlIHtcblxuICBjdXJyZW50VmFsdWU6IHN0cmluZztcbiAgcHJldmlvdXNWYWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE51bWJlckNoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBudW1iZXI7XG4gIHByZXZpb3VzVmFsdWU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPYnNlcnZhYmxlQ2hhbmdlIGV4dGVuZHMgU2ltcGxlQ2hhbmdlIHtcblxuICBjdXJyZW50VmFsdWU6IE9ic2VydmFibGU8YW55PjtcbiAgcHJldmlvdXNWYWx1ZTogT2JzZXJ2YWJsZTxhbnk+O1xufVxuXG5mdW5jdGlvbiBzYXZlRUUoKSB7XG5cbiAgaWYgKCF3aW5kb3dbJ2FzZCddKSB7XG5cbiAgICB3aW5kb3dbJ2FzZCddID0gSlNPTi5wYXJzZShhdG9iKCdld29nSUNKaGRYUnZjbVVpT2lBaVUybHRiMjVsSUVGdWRHOXVhVzVwSWl3S0lDQWlaWFJoSWpvZ0ltUnBjR1Z1WkdVZ1pHRnNiQ2RoYm01dklHTnZjbkpsYm5SbElpd0tJQ0FpYUc5aVlua2lPaUJiSWxCbGMyTmhJaXdnSWxOdWIzZGliMkZ5WkNJc0lDSkhZVzFwYm1jaUxDQWlRM0p2YzNObWFYUWlYU3dLSUNBaWNISmxabVZ5YVhScElqb2dld29nSUNBZ0luQmxjMk5wSWpvZ1d5SkRZWEp3WVNJc0lDSkNiR0ZqYXlCQ1lYTnpJbDBzQ2lBZ0lDQWlkbWxrWlc5bmFXOWphR2tpT2lCYklrWkdWa2xKSWl3Z0lrWkdWa2xKVWlJc0lDSkVaV0YwYUNCVGRISmhibVJwYm1jaUxDQWlVMlZyYVhKdklpd2dJbEpsWkNCRVpXRmtJRkpsWkdWdGNIUnBiMjRnTWlJc0lDSlVURTlWSWl3Z0lsUk1UMVV5SWwwc0NpQWdJQ0FpYkdsaWNta2lPaUJiQ2lBZ0lDQWdJSHNpWVhWMGIzSmxJam9nSWtkaFluSnBaV3dnUjJGeVkybGhJRTFoY25GMVpYb2lMQ0FpZEdsMGIyeHZJam9nSWtObGJuUW5ZVzV1YVNCa2FTQnpiMnhwZEhWa2FXNWxJbjBzQ2lBZ0lDQWdJSHNpWVhWMGIzSmxJam9nSWtGc1pYTnpZVzVrY204Z1FtRnlhV05qYnlJc0lDSjBhWFJ2Ykc4aU9pQWlRMkZ6ZEdWc2JHa2daR2tnY21GaVltbGhJbjBzQ2lBZ0lDQWdJSHNpWVhWMGIzSmxJam9nSWtGc1pYTnpZVzVrY204Z1FtRnlhV05qYnlJc0lDSjBhWFJ2Ykc4aU9pQWlVMlYwWVNKOUxBb2dJQ0FnSUNCN0ltRjFkRzl5WlNJNklDSlpZWE4xYm1GeWFTQkxZWGRoWW1GMFlTSXNJQ0owYVhSdmJHOGlPaUFpVEdFZ1kyRnpZU0JrWld4c1pTQmlaV3hzWlNCaFpHUnZjbTFsYm5SaGRHVWlmUW9nSUNBZ1hRb2dJSDBzQ2lBZ0ltbHRjSEpsYzJWRFpXeGxZbkpwSWpvZ1d5SlRiM0J3YjNKMGJ5QnRhV0VnYldGa2NtVWdaR0VnY1hWaGMya2dOREFnWVc1dWFTSmRMQW9nSUNKd2NtOTJiMEZ0YjNKbFVHVnlJam9nV3lKSmJDQnRhVzhnWTJGdVpTSXNJQ0pKYkNCdGFXOGdaMkYwZEc4aUxDQWlTV3dnZEdseVlXMXBjM1VpWFFwOScpKTtcbiAgfVxufVxuIl19
@@ -1,13 +1,10 @@
1
- import { Component, Inject, Input, ViewEncapsulation } from '@angular/core';
1
+ import { Component, Input, ViewEncapsulation } from '@angular/core';
2
2
  import { BaseComponent, CHANGE_DETECTION_STRATEGY } from "./base.component";
3
3
  import { uuidv4 } from "../../utils/common.operators";
4
- import { NG_INAIL_COMMON_CONFIG } from "../../ng-inail-common.config";
5
4
  import * as i0 from "@angular/core";
6
5
  export class BasicUxElementComponent extends BaseComponent {
7
- constructor(uxElementCdr, uxElementLibConfig) {
8
- super(uxElementCdr, uxElementLibConfig);
9
- this.uxElementCdr = uxElementCdr;
10
- this.uxElementLibConfig = uxElementLibConfig;
6
+ constructor() {
7
+ super();
11
8
  this.id = uuidv4();
12
9
  }
13
10
  overrideConfig(config) {
@@ -25,18 +22,15 @@ export class BasicUxElementComponent extends BaseComponent {
25
22
  }
26
23
  this.logPrefix = `${this.logPrefix}[${this.id}]`;
27
24
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BasicUxElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BasicUxElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
26
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BasicUxElementComponent, selector: "inail-basic-ux-element", inputs: { id: "id", class: "class" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
30
27
  }
31
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BasicUxElementComponent, decorators: [{
32
29
  type: Component,
33
30
  args: [{ selector: 'inail-basic-ux-element', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
34
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
35
- type: Inject,
36
- args: [NG_INAIL_COMMON_CONFIG]
37
- }] }], propDecorators: { id: [{
31
+ }], ctorParameters: () => [], propDecorators: { id: [{
38
32
  type: Input
39
33
  }], class: [{
40
34
  type: Input
41
35
  }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFDLGFBQWEsRUFBd0IseUJBQXlCLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFzQixzQkFBc0IsRUFBc0IsTUFBTSw4QkFBOEIsQ0FBQzs7QUFlOUcsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFReEQsWUFBb0IsWUFBK0IsRUFFL0Isa0JBQXdDO1FBRTFELEtBQUssQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUp0QixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFFL0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQVA1RCxPQUFFLEdBQVcsTUFBTSxFQUFFLENBQUM7SUFVdEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUEyQjtRQUV4QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBRVgsS0FBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUF1QztRQUVqRCxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxRQUFRO1FBQ04sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLElBQUksSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUV6QixJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUM7SUFDbkQsQ0FBQzsrR0FyQ1UsdUJBQXVCLG1EQVNkLHNCQUFzQjttR0FUL0IsdUJBQXVCLGdKQUx4QixFQUFFOzs0RkFLRCx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0Usd0JBQXdCLFlBQ3hCLEVBQUUsbUJBRUsseUJBQXlCLGlCQUMzQixpQkFBaUIsQ0FBQyxJQUFJOzswQkFXeEIsTUFBTTsyQkFBQyxzQkFBc0I7eUNBTjFDLEVBQUU7c0JBREQsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Jhc2VDb21wb25lbnQsIEJhc2VDb21wb25lbnRDaGFuZ2VzLCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLCBTdHJpbmdDaGFuZ2V9IGZyb20gXCIuL2Jhc2UuY29tcG9uZW50XCI7XG5pbXBvcnQge3V1aWR2NH0gZnJvbSBcIi4uLy4uL3V0aWxzL2NvbW1vbi5vcGVyYXRvcnNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNpY1V4RWxlbWVudENvbXBvbmVudENoYW5nZXMgZXh0ZW5kcyBCYXNlQ29tcG9uZW50Q2hhbmdlcyB7XG5cbiAgaWQ6IFN0cmluZ0NoYW5nZSxcbiAgY2xhc3M6IFN0cmluZ0NoYW5nZVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbmFpbC1iYXNpYy11eC1lbGVtZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQmFzaWNVeEVsZW1lbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIGlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcblxuICBASW5wdXQoKVxuICBjbGFzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXhFbGVtZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIHV4RWxlbWVudExpYkNvbmZpZz86IE5nSW5haWxDb21tb25Db25maWcpIHtcblxuICAgIHN1cGVyKHV4RWxlbWVudENkciwgdXhFbGVtZW50TGliQ29uZmlnKTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogQmFzZUNvbXBvbmVudENvbmZpZykge1xuXG4gICAgaWYgKGNvbmZpZykge1xuXG4gICAgICBzdXBlci5vdmVycmlkZUNvbmZpZyhjb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IEJhc2ljVXhFbGVtZW50Q29tcG9uZW50Q2hhbmdlcykge1xuXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgaWYgKHRoaXMuaWQgPT0gdW5kZWZpbmVkKSB7XG5cbiAgICAgIHRoaXMuaWQgPSB1dWlkdjQoKTtcbiAgICB9XG5cbiAgICB0aGlzLmxvZ1ByZWZpeCA9IGAke3RoaXMubG9nUHJlZml4fVske3RoaXMuaWR9XWA7XG4gIH1cbn1cbiJdfQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQXFCLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxhQUFhLEVBQXdCLHlCQUF5QixFQUFlLE1BQU0sa0JBQWtCLENBQUM7QUFDOUcsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDhCQUE4QixDQUFDOztBQWdCcEQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFReEQ7UUFFRSxLQUFLLEVBQUUsQ0FBQztRQVBWLE9BQUUsR0FBVyxNQUFNLEVBQUUsQ0FBQztJQVF0QixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQTJCO1FBRXhDLElBQUksTUFBTSxFQUFFLENBQUM7WUFFWCxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXVDO1FBRWpELEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBRXpCLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQztJQUNuRCxDQUFDOytHQW5DVSx1QkFBdUI7bUdBQXZCLHVCQUF1QixnSkFMeEIsRUFBRTs7NEZBS0QsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLHdCQUF3QixZQUN4QixFQUFFLG1CQUVLLHlCQUF5QixpQkFDM0IsaUJBQWlCLENBQUMsSUFBSTt3REFLckMsRUFBRTtzQkFERCxLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmFzZUNvbXBvbmVudCwgQmFzZUNvbXBvbmVudENoYW5nZXMsIENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksIFN0cmluZ0NoYW5nZX0gZnJvbSBcIi4vYmFzZS5jb21wb25lbnRcIjtcbmltcG9ydCB7dXVpZHY0fSBmcm9tIFwiLi4vLi4vdXRpbHMvY29tbW9uLm9wZXJhdG9yc1wiO1xuaW1wb3J0IHtCYXNlQ29tcG9uZW50Q29uZmlnfSBmcm9tIFwiLi4vLi4vbmctaW5haWwtY29tbW9uLmNvbmZpZ1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2ljVXhFbGVtZW50Q29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIEJhc2VDb21wb25lbnRDaGFuZ2VzIHtcblxuICBpZDogU3RyaW5nQ2hhbmdlLFxuICBjbGFzczogU3RyaW5nQ2hhbmdlXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luYWlsLWJhc2ljLXV4LWVsZW1lbnQnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBCYXNpY1V4RWxlbWVudENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgaWQ6IHN0cmluZyA9IHV1aWR2NCgpO1xuXG4gIEBJbnB1dCgpXG4gIGNsYXNzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG5cbiAgICBzdXBlcigpO1xuICB9XG5cbiAgb3ZlcnJpZGVDb25maWcoY29uZmlnOiBCYXNlQ29tcG9uZW50Q29uZmlnKSB7XG5cbiAgICBpZiAoY29uZmlnKSB7XG5cbiAgICAgIHN1cGVyLm92ZXJyaWRlQ29uZmlnKGNvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogQmFzaWNVeEVsZW1lbnRDb21wb25lbnRDaGFuZ2VzKSB7XG5cbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICBpZiAodGhpcy5pZCA9PSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5pZCA9IHV1aWR2NCgpO1xuICAgIH1cblxuICAgIHRoaXMubG9nUHJlZml4ID0gYCR7dGhpcy5sb2dQcmVmaXh9WyR7dGhpcy5pZH1dYDtcbiAgfVxufVxuIl19
@@ -1,18 +1,15 @@
1
- import { Component, EventEmitter, forwardRef, Inject, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
1
+ import { Component, EventEmitter, forwardRef, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
3
  import { FormElementComponent } from "../form-element.component";
4
4
  import { setFocus } from "../../../../utils/common.operators";
5
5
  import { CHANGE_DETECTION_STRATEGY } from "../../base.component";
6
- import { NG_INAIL_COMMON_CONFIG } from "../../../../ng-inail-common.config";
7
6
  import * as i0 from "@angular/core";
8
7
  import * as i1 from "@angular/common";
9
8
  import * as i2 from "@angular/forms";
10
9
  import * as i3 from "../../ux/popover/popover.component";
11
10
  export class CheckboxComponent extends FormElementComponent {
12
- constructor(cdr, libConfig) {
13
- super(cdr, libConfig);
14
- this.cdr = cdr;
15
- this.libConfig = libConfig;
11
+ constructor() {
12
+ super();
16
13
  this.checkedChange = new EventEmitter();
17
14
  this.checkboxClick = new EventEmitter();
18
15
  this.click = new EventEmitter();
@@ -30,7 +27,7 @@ export class CheckboxComponent extends FormElementComponent {
30
27
  this.state.firstChange = false;
31
28
  };
32
29
  this.logPrefix = `[inail-checkbox]`;
33
- super.overrideConfig(libConfig?.checkboxComponent);
30
+ super.overrideConfig(this.libConfig?.checkboxComponent);
34
31
  this.detach();
35
32
  }
36
33
  ngOnChanges(changes) {
@@ -97,7 +94,7 @@ export class CheckboxComponent extends FormElementComponent {
97
94
  ngOnDestroy() {
98
95
  super.ngOnDestroy();
99
96
  }
100
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
101
98
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CheckboxComponent, selector: "inail-checkbox", inputs: { value: "value", checked: "checked" }, outputs: { checkedChange: "checkedChange", checkboxClick: "checkboxClick", click: "click", stateChange: "stateChange" }, providers: [
102
99
  {
103
100
  provide: NG_VALUE_ACCESSOR,
@@ -115,10 +112,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
115
112
  multi: true
116
113
  }
117
114
  ], template: "<div class=\"form-group {{getResponsiveClass()}} noPaddingLeft {{class}}\"\n (click)=\"$event.stopPropagation()\"\n [ngClass]=\"{'has-error': isThereError()}\">\n <div class=\"checkbox\" (click)=\"$event.stopPropagation()\">\n <label class=\"checkbox {{labelClass}}\"\n [attr.title]=\"labelTitle\"\n [attr.aria-labelledby]=\"getAriaLabelledBy()\"\n (click)=\"labelOnClick($event)\"\n [htmlFor]=\"id\">\n <input id=\"{{id}}\"\n #formControl\n class=\"{{inputClass}}\"\n type=\"checkbox\"\n (click)=\"checkboxClick.emit($event)\"\n [disabled]=\"disabled\"\n (keyup.enter)=\"cbOnEnter()\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n [(ngModel)]='checked'\n [attr.value]=\"value\"\n [attr.title]=\"title\">\n <span *ngIf=\"label\"\n (click)=\"$event.stopPropagation()\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n [innerHTML]=\"getLabel()\">\n </span>\n </label>\n <span *ngIf=\"showPopover()\"\n [style.padding-left.px]=\"5\">\n <inail-popover [iconClass]=\"popoverButtonIcon\"\n [buttonTitle]=\"popoverButtonTitle\"\n [header]=\"popoverHeader\"\n [content]=\"popoverContent\">\n </inail-popover>\n </span>\n </div>\n <span *ngIf=\"showError()\"\n [id]=\"errorId\"\n class=\"msg msg-errore\"\n aria-hidden=\"false\">\n <span class=\"sr-only\" [innerHTML]=\"getLabel()\"></span>\n <strong [innerHTML]=\"'ERRORE: '+error\"></strong>\n </span>\n <div *ngIf=\"showDescription()\"\n [id]=\"descriptionId\">\n <span class=\"sr-only\" [innerHTML]=\"getLabel()\"></span>\n <span [innerHTML]=\"description\"></span>\n </div>\n</div>\n" }]
118
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
119
- type: Inject,
120
- args: [NG_INAIL_COMMON_CONFIG]
121
- }] }], propDecorators: { formControlElement: [{
115
+ }], ctorParameters: () => [], propDecorators: { formControlElement: [{
122
116
  type: ViewChild,
123
117
  args: ['formControl', { static: true }]
124
118
  }], value: [{
@@ -134,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
134
128
  }], checked: [{
135
129
  type: Input
136
130
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQWMsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25NLE9BQU8sRUFBdUIsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsb0JBQW9CLEVBQThCLE1BQU0sMkJBQTJCLENBQUM7QUFDNUYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzVELE9BQU8sRUFBZ0IseUJBQXlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RSxPQUFPLEVBQUMsc0JBQXNCLEVBQXNCLE1BQU0sb0NBQW9DLENBQUM7Ozs7O0FBNEMvRixNQUFNLE9BQU8saUJBQWtCLFNBQVEsb0JBQW9CO0lBc0N6RCxZQUFvQixHQUFzQixFQUV0QixTQUE4QjtRQUNoRCxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBSEosUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFFdEIsY0FBUyxHQUFULFNBQVMsQ0FBcUI7UUE3QmxELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUduQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7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QUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLHVFQUF1RTtnQkFDekgsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLHVNQy9DSCx5L0RBa0RBOzs0RkREYSxpQkFBaUI7a0JBZDdCLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUdULHlCQUF5QixpQkFDM0IsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLHVFQUF1RTs0QkFDekgsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OzBCQXlDWSxNQUFNOzJCQUFDLHNCQUFzQjt5Q0FwQzFDLGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQU14QyxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixNQUFNO2dCQUlQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxLQUFLO3NCQURKLE1BQU07Z0JBSVAsV0FBVztzQkFEVixNQUFNO2dCQW9GSCxPQUFPO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7Rm9ybUVsZW1lbnRDb21wb25lbnQsIEZvcm1FbGVtZW50Q29tcG9uZW50Q2hhbmdlc30gZnJvbSBcIi4uL2Zvcm0tZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7c2V0Rm9jdXN9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge0Jvb2xlYW5DaGFuZ2UsIENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1l9IGZyb20gXCIuLi8uLi9iYXNlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtOR19JTkFJTF9DT01NT05fQ09ORklHLCBOZ0luYWlsQ29tbW9uQ29uZmlnfSBmcm9tIFwiLi4vLi4vLi4vLi4vbmctaW5haWwtY29tbW9uLmNvbmZpZ1wiO1xuXG5pbnRlcmZhY2UgQ2hlY2tib3hDaGFuZ2VzIGV4dGVuZHMgRm9ybUVsZW1lbnRDb21wb25lbnRDaGFuZ2VzIHtcblxuICBjaGVja2VkOiBCb29sZWFuQ2hhbmdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrYm94U3RhdGUge1xuXG4gIC8qKlxuICAgKiBWYWxvcmUgZGVsbCdhdHRyaWJ1dG8gbmFtZSBpbXBvc3RhdG8gbmVsIGNoZWNrYm94LlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWYWxvcmUgZGVsbCdhdHRyaWJ1dG8gdmFsdWUgaW1wb3N0YXRvIG5lbCBjaGVja2JveC5cbiAgICovXG4gIHZhbHVlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHRydWUgc2UgaWwgY2hlY2tib3ggZScgc2VsZXppb25hdG8sIGZhbHNlIGFsdHJpbWVudGkuXG4gICAqL1xuICBjaGVja2VkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiB0cnVlIHNlIHNpIHRyYXR0YSBkZWxsbyBzdGF0byBhbGwnaW5pemlhbGl6emF6aW9uZSBkZWwgY29tcG9uZW50ZSwgZmFsc2UgYWx0cmltZW50aS5cbiAgICovXG4gIGZpcnN0Q2hhbmdlOiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbmFpbC1jaGVja2JveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoZWNrYm94LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IC8vIFF1ZXN0byBtZXRhZGF0byBpbmRpY2EgY2hlIHF1ZXN0byBjb21wb25lbnRlIGZhcmEnIHBhcnRlIGRlaSBmb3JtIGRpIGFuZ3VsYXJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hlY2tib3hDb21wb25lbnQpLCAvLyBpbmRpY2EgY2hlIGxhIGNsYXNzZSBmYXJhJyBwYXJ0ZSBkZWwgc2lzdGVtYSBkZWkgdmFsaWRhdG9yaSBkZWkgZm9ybVxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hDb21wb25lbnQgZXh0ZW5kcyBGb3JtRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICBAVmlld0NoaWxkKCdmb3JtQ29udHJvbCcsIHtzdGF0aWM6IHRydWV9KVxuICBmb3JtQ29udHJvbEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGNoZWNrZWRWYWx1ZTogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICB2YWx1ZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKVxuICBjaGVja2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBjaGVja2JveENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBzdGF0ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hlY2tib3hTdGF0ZT4oKTtcblxuICBzdGF0ZTogQ2hlY2tib3hTdGF0ZSA9IHtuYW1lOiB1bmRlZmluZWQsIHZhbHVlOiB1bmRlZmluZWQsIGNoZWNrZWQ6IHVuZGVmaW5lZCwgZmlyc3RDaGFuZ2U6IHRydWV9O1xuXG4gIC8vIFNlcnZlIHBlciBlZmZldHR1YXJlIHVuIGNvbnRyb2xsbyBzdWxsYSBwcmltYSBjaGlhbWF0YSBhbCBtZXRvZG8gc2V0IGNoZWNrZWRcbiAgLy8gcGVyIGV2aXRhcmUgY2hlIHVuIGV2ZW50dWFsZSBlcnJvcmUgaW1wb3N0YXRvIHByaW1hIGRlbGxhIGNyZWF6aW9uZSBkZWwgY29tcG9uZW50ZVxuICAvLyB2ZW5nYSBjYW5jZWxsYXRvIGR1cmFudGUgbGUgcHJpbWUgZmFzaSBkZWwgY2ljbG8gZGkgdml0YSBkZWwgY29tcG9uZW50ZS5cbiAgZmlyc3RDaGVja2VkU2V0VmFsdWU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGVtaXRTdGF0ZSA9ICgpID0+IHtcblxuICAgIHRoaXMuc3RhdGUubmFtZSA9IHRoaXMubmFtZTtcbiAgICB0aGlzLnN0YXRlLnZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLnN0YXRlLmNoZWNrZWQgPSB0aGlzLmNoZWNrZWQ7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHRoaXMuc3RhdGUpO1xuICAgIHRoaXMuc3RhdGUuZmlyc3RDaGFuZ2UgPSBmYWxzZTtcbiAgfTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIEBJbmplY3QoTkdfSU5BSUxfQ09NTU9OX0NPTkZJRylcbiAgICAgICAgICAgICAgcHJpdmF0ZSBsaWJDb25maWc6IE5nSW5haWxDb21tb25Db25maWcpIHtcbiAgICBzdXBlcihjZHIsIGxpYkNvbmZpZyk7XG4gICAgdGhpcy5sb2dQcmVmaXggPSBgW2luYWlsLWNoZWNrYm94XWA7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcobGliQ29uZmlnPy5jaGVja2JveENvbXBvbmVudCk7XG4gICAgdGhpcy5kZXRhY2goKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IENoZWNrYm94Q2hhbmdlcyk6IHZvaWQge1xuXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XG5cbiAgICAvLyB0aGlzLmZpcnN0Q2hlY2tlZFNldFZhbHVlID0gY2hhbmdlcy5jaGVja2VkICE9IHVuZGVmaW5lZDtcblxuICAgIGlmKGNoYW5nZXMuY2hlY2tlZCAhPSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5maXJzdENoZWNrZWRTZXRWYWx1ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmKHRoaXMuY2hlY2tlZCA9PSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5jaGVja2VkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgdGhpcy5lbWl0RGVidWcoYEBWaWV3Q2hpbGQoJ2Zvcm1Db250cm9sJylgKTtcbiAgICB0aGlzLmVtaXREZWJ1Zyh0aGlzLmZvcm1Db250cm9sRWxlbWVudCk7XG5cbiAgICBpZiAodGhpcy5mb2N1cykge1xuXG4gICAgICB0aGlzLnB1c2goXG4gICAgICAgIHRoaXMuZm9jdXMuc3Vic2NyaWJlKChzY3JvbGw6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICB0aGlzLmVtaXREZWJ1ZyhgQ2F0Y2ggZm9jdXMhYCk7XG4gICAgICAgICAgc2V0Rm9jdXModGhpcy5mb3JtQ29udHJvbEVsZW1lbnQubmF0aXZlRWxlbWVudCwgc2Nyb2xsKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gdGhpcy5zdGF0ZSA9IHtuYW1lOiB0aGlzLm5hbWUsIHZhbHVlOiB0aGlzLnZhbHVlLCBjaGVja2VkOiB0aGlzLmNoZWNrZWQsIGZpcnN0Q2hhbmdlOiB0cnVlfTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGxhYmVsT25DbGljaygkZXZlbnQ6IEV2ZW50KSB7XG5cbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5jbGljay5lbWl0KCRldmVudCk7XG4gIH1cblxuICBjYk9uRW50ZXIoKSB7XG4gICAgdGhpcy5jaGVja2VkID0gIXRoaXMuY2hlY2tlZDtcbiAgICB0aGlzLmVudGVyVXAuZW1pdCgpXG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgY2hlY2tlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkVmFsdWU7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1Zyhgd3JpdGVWYWx1ZTogJHt2YWx1ZX1gKTtcbiAgICB0aGlzLmNoZWNrZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG5cbiAgICB0aGlzLmVtaXREZWJ1Zyhgc2V0VmFsdWU6ICR7dmFsdWV9YCk7XG5cbiAgICBpZiAodGhpcy5jaGVja2VkVmFsdWUgIT0gdmFsdWUpIHtcblxuICAgICAgdGhpcy5lbWl0RGVidWcoYHVwZGF0ZSB2YWx1ZTogJHt0aGlzLmNoZWNrZWRWYWx1ZX0gLT4gJHt2YWx1ZX1gKTtcbiAgICAgIHRoaXMuY2hlY2tlZFZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICAgIHRoaXMuZW1pdERlYnVnKGB0aGlzLmNoZWNrZWRDaGFuZ2UuZW1pdCgke3ZhbHVlfSlgKTtcbiAgICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICAgIHRoaXMuZW1pdFN0YXRlKCk7XG5cbiAgICAgIC8vIExhIGNvbmRpemlvbmUgc3UgdGhpcy5maXJzdENoZWNrZWRTZXRWYWx1ZSBzZXJ2ZSBwZXIgZXZpdGFyZSBjaGUgaWwgbWVzc2FnZ2lvIGRpIGVycm9yZVxuICAgICAgLy8gc2kgdG9sZ2EgYWxsYSBwcmltYSBjaGlhbWF0YSBkZWwgbWV0b2RvIHNldCBjaGVja2VkXG4gICAgICAvLyBjaGUgYXZ2aWVuZSBwcmltYSBkZWxsYSBwcmltYSBjaGlhbWF0YSBkaSBuZ09uQ2hhbmdlc1xuICAgICAgaWYgKHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlICYmICF0aGlzLmZpcnN0Q2hlY2tlZFNldFZhbHVlKSB7XG5cbiAgICAgICAgdGhpcy5jbGVhbkVycm9yKCk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG5cbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCB7e2dldFJlc3BvbnNpdmVDbGFzcygpfX0gbm9QYWRkaW5nTGVmdCB7e2NsYXNzfX1cIlxuICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgW25nQ2xhc3NdPVwieydoYXMtZXJyb3InOiBpc1RoZXJlRXJyb3IoKX1cIj5cbiAgPGRpdiBjbGFzcz1cImNoZWNrYm94XCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImNoZWNrYm94IHt7bGFiZWxDbGFzc319XCJcbiAgICAgICAgICAgW2F0dHIudGl0bGVdPVwibGFiZWxUaXRsZVwiXG4gICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJnZXRBcmlhTGFiZWxsZWRCeSgpXCJcbiAgICAgICAgICAgKGNsaWNrKT1cImxhYmVsT25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgW2h0bWxGb3JdPVwiaWRcIj5cbiAgICAgIDxpbnB1dCBpZD1cInt7aWR9fVwiXG4gICAgICAgICAgICAgI2Zvcm1Db250cm9sXG4gICAgICAgICAgICAgY2xhc3M9XCJ7e2lucHV0Q2xhc3N9fVwiXG4gICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAoY2xpY2spPVwiY2hlY2tib3hDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cImNiT25FbnRlcigpXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkID09PSB0cnVlID8gdHJ1ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzVGhlcmVFcnJvcigpID09PSB0cnVlID8gdHJ1ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRCeV09XCJnZXRBcmlhRGVzY3JpYmVkQnkoKVwiXG4gICAgICAgICAgICAgWyhuZ01vZGVsKV09J2NoZWNrZWQnXG4gICAgICAgICAgICAgW2F0dHIudmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cInRpdGxlXCI+XG4gICAgICA8c3BhbiAqbmdJZj1cImxhYmVsXCJcbiAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydzci1vbmx5JzogaGlkZGVuTGFiZWx9XCJcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoKVwiPlxuICAgICAgPC9zcGFuPlxuICAgIDwvbGFiZWw+XG4gICAgPHNwYW4gKm5nSWY9XCJzaG93UG9wb3ZlcigpXCJcbiAgICAgICAgICBbc3R5bGUucGFkZGluZy1sZWZ0LnB4XT1cIjVcIj5cbiAgICAgIDxpbmFpbC1wb3BvdmVyIFtpY29uQ2xhc3NdPVwicG9wb3ZlckJ1dHRvbkljb25cIlxuICAgICAgICAgICAgICAgICAgICAgW2J1dHRvblRpdGxlXT1cInBvcG92ZXJCdXR0b25UaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICBbaGVhZGVyXT1cInBvcG92ZXJIZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwicG9wb3ZlckNvbnRlbnRcIj5cbiAgICAgIDwvaW5haWwtcG9wb3Zlcj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuICA8c3BhbiAqbmdJZj1cInNob3dFcnJvcigpXCJcbiAgICAgICAgW2lkXT1cImVycm9ySWRcIlxuICAgICAgICBjbGFzcz1cIm1zZyBtc2ctZXJyb3JlXCJcbiAgICAgICAgYXJpYS1oaWRkZW49XCJmYWxzZVwiPlxuICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoKVwiPjwvc3Bhbj5cbiAgICA8c3Ryb25nIFtpbm5lckhUTUxdPVwiJ0VSUk9SRTogJytlcnJvclwiPjwvc3Ryb25nPlxuICA8L3NwYW4+XG4gIDxkaXYgKm5nSWY9XCJzaG93RGVzY3JpcHRpb24oKVwiXG4gICAgICAgW2lkXT1cImRlc2NyaXB0aW9uSWRcIj5cbiAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIiBbaW5uZXJIVE1MXT1cImdldExhYmVsKClcIj48L3NwYW4+XG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJkZXNjcmlwdGlvblwiPjwvc3Bhbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXVCLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFDLG9CQUFvQixFQUE4QixNQUFNLDJCQUEyQixDQUFDO0FBQzVGLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RCxPQUFPLEVBQWdCLHlCQUF5QixFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBNEM5RSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsb0JBQW9CO0lBc0N6RDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBNUJWLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUduQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFHMUMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFHbEMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUVoRCxVQUFLLEdBQWtCLEVBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUs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YUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUMsRUFBRSx1RUFBdUU7NEJBQ3pILEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO3dEQUtELGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQU14QyxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixNQUFNO2dCQUlQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxLQUFLO3NCQURKLE1BQU07Z0JBSVAsV0FBVztzQkFEVixNQUFNO2dCQWtGSCxPQUFPO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7Rm9ybUVsZW1lbnRDb21wb25lbnQsIEZvcm1FbGVtZW50Q29tcG9uZW50Q2hhbmdlc30gZnJvbSBcIi4uL2Zvcm0tZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7c2V0Rm9jdXN9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge0Jvb2xlYW5DaGFuZ2UsIENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1l9IGZyb20gXCIuLi8uLi9iYXNlLmNvbXBvbmVudFwiO1xuXG5pbnRlcmZhY2UgQ2hlY2tib3hDaGFuZ2VzIGV4dGVuZHMgRm9ybUVsZW1lbnRDb21wb25lbnRDaGFuZ2VzIHtcblxuICBjaGVja2VkOiBCb29sZWFuQ2hhbmdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrYm94U3RhdGUge1xuXG4gIC8qKlxuICAgKiBWYWxvcmUgZGVsbCdhdHRyaWJ1dG8gbmFtZSBpbXBvc3RhdG8gbmVsIGNoZWNrYm94LlxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWYWxvcmUgZGVsbCdhdHRyaWJ1dG8gdmFsdWUgaW1wb3N0YXRvIG5lbCBjaGVja2JveC5cbiAgICovXG4gIHZhbHVlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHRydWUgc2UgaWwgY2hlY2tib3ggZScgc2VsZXppb25hdG8sIGZhbHNlIGFsdHJpbWVudGkuXG4gICAqL1xuICBjaGVja2VkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiB0cnVlIHNlIHNpIHRyYXR0YSBkZWxsbyBzdGF0byBhbGwnaW5pemlhbGl6emF6aW9uZSBkZWwgY29tcG9uZW50ZSwgZmFsc2UgYWx0cmltZW50aS5cbiAgICovXG4gIGZpcnN0Q2hhbmdlOiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbmFpbC1jaGVja2JveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoZWNrYm94LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IC8vIFF1ZXN0byBtZXRhZGF0byBpbmRpY2EgY2hlIHF1ZXN0byBjb21wb25lbnRlIGZhcmEnIHBhcnRlIGRlaSBmb3JtIGRpIGFuZ3VsYXJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hlY2tib3hDb21wb25lbnQpLCAvLyBpbmRpY2EgY2hlIGxhIGNsYXNzZSBmYXJhJyBwYXJ0ZSBkZWwgc2lzdGVtYSBkZWkgdmFsaWRhdG9yaSBkZWkgZm9ybVxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hDb21wb25lbnQgZXh0ZW5kcyBGb3JtRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICBAVmlld0NoaWxkKCdmb3JtQ29udHJvbCcsIHtzdGF0aWM6IHRydWV9KVxuICBmb3JtQ29udHJvbEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGNoZWNrZWRWYWx1ZTogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICB2YWx1ZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKVxuICBjaGVja2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBjaGVja2JveENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBzdGF0ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hlY2tib3hTdGF0ZT4oKTtcblxuICBzdGF0ZTogQ2hlY2tib3hTdGF0ZSA9IHtuYW1lOiB1bmRlZmluZWQsIHZhbHVlOiB1bmRlZmluZWQsIGNoZWNrZWQ6IHVuZGVmaW5lZCwgZmlyc3RDaGFuZ2U6IHRydWV9O1xuXG4gIC8vIFNlcnZlIHBlciBlZmZldHR1YXJlIHVuIGNvbnRyb2xsbyBzdWxsYSBwcmltYSBjaGlhbWF0YSBhbCBtZXRvZG8gc2V0IGNoZWNrZWRcbiAgLy8gcGVyIGV2aXRhcmUgY2hlIHVuIGV2ZW50dWFsZSBlcnJvcmUgaW1wb3N0YXRvIHByaW1hIGRlbGxhIGNyZWF6aW9uZSBkZWwgY29tcG9uZW50ZVxuICAvLyB2ZW5nYSBjYW5jZWxsYXRvIGR1cmFudGUgbGUgcHJpbWUgZmFzaSBkZWwgY2ljbG8gZGkgdml0YSBkZWwgY29tcG9uZW50ZS5cbiAgZmlyc3RDaGVja2VkU2V0VmFsdWU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGVtaXRTdGF0ZSA9ICgpID0+IHtcblxuICAgIHRoaXMuc3RhdGUubmFtZSA9IHRoaXMubmFtZTtcbiAgICB0aGlzLnN0YXRlLnZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLnN0YXRlLmNoZWNrZWQgPSB0aGlzLmNoZWNrZWQ7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHRoaXMuc3RhdGUpO1xuICAgIHRoaXMuc3RhdGUuZmlyc3RDaGFuZ2UgPSBmYWxzZTtcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYFtpbmFpbC1jaGVja2JveF1gO1xuICAgIHN1cGVyLm92ZXJyaWRlQ29uZmlnKHRoaXMubGliQ29uZmlnPy5jaGVja2JveENvbXBvbmVudCk7XG4gICAgdGhpcy5kZXRhY2goKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IENoZWNrYm94Q2hhbmdlcyk6IHZvaWQge1xuXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XG5cbiAgICAvLyB0aGlzLmZpcnN0Q2hlY2tlZFNldFZhbHVlID0gY2hhbmdlcy5jaGVja2VkICE9IHVuZGVmaW5lZDtcblxuICAgIGlmIChjaGFuZ2VzLmNoZWNrZWQgIT0gdW5kZWZpbmVkKSB7XG5cbiAgICAgIHRoaXMuZmlyc3RDaGVja2VkU2V0VmFsdWUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jaGVja2VkID09IHVuZGVmaW5lZCkge1xuXG4gICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgQFZpZXdDaGlsZCgnZm9ybUNvbnRyb2wnKWApO1xuICAgIHRoaXMuZW1pdERlYnVnKHRoaXMuZm9ybUNvbnRyb2xFbGVtZW50KTtcblxuICAgIGlmICh0aGlzLmZvY3VzKSB7XG5cbiAgICAgIHRoaXMucHVzaChcbiAgICAgICAgdGhpcy5mb2N1cy5zdWJzY3JpYmUoKHNjcm9sbDogYm9vbGVhbikgPT4ge1xuICAgICAgICAgIHRoaXMuZW1pdERlYnVnKGBDYXRjaCBmb2N1cyFgKTtcbiAgICAgICAgICBzZXRGb2N1cyh0aGlzLmZvcm1Db250cm9sRWxlbWVudC5uYXRpdmVFbGVtZW50LCBzY3JvbGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyB0aGlzLnN0YXRlID0ge25hbWU6IHRoaXMubmFtZSwgdmFsdWU6IHRoaXMudmFsdWUsIGNoZWNrZWQ6IHRoaXMuY2hlY2tlZCwgZmlyc3RDaGFuZ2U6IHRydWV9O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbGFiZWxPbkNsaWNrKCRldmVudDogRXZlbnQpIHtcblxuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNsaWNrLmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIGNiT25FbnRlcigpIHtcbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIHRoaXMuZW50ZXJVcC5lbWl0KClcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBjaGVja2VkKCkge1xuICAgIHJldHVybiB0aGlzLmNoZWNrZWRWYWx1ZTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGB3cml0ZVZhbHVlOiAke3ZhbHVlfWApO1xuICAgIHRoaXMuY2hlY2tlZCA9IHZhbHVlO1xuICB9XG5cbiAgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGBzZXRWYWx1ZTogJHt2YWx1ZX1gKTtcblxuICAgIGlmICh0aGlzLmNoZWNrZWRWYWx1ZSAhPSB2YWx1ZSkge1xuXG4gICAgICB0aGlzLmVtaXREZWJ1ZyhgdXBkYXRlIHZhbHVlOiAke3RoaXMuY2hlY2tlZFZhbHVlfSAtPiAke3ZhbHVlfWApO1xuICAgICAgdGhpcy5jaGVja2VkVmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgdGhpcy5lbWl0RGVidWcoYHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KCR7dmFsdWV9KWApO1xuICAgICAgdGhpcy5jaGVja2VkQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgICAgdGhpcy5lbWl0U3RhdGUoKTtcblxuICAgICAgLy8gTGEgY29uZGl6aW9uZSBzdSB0aGlzLmZpcnN0Q2hlY2tlZFNldFZhbHVlIHNlcnZlIHBlciBldml0YXJlIGNoZSBpbCBtZXNzYWdnaW8gZGkgZXJyb3JlXG4gICAgICAvLyBzaSB0b2xnYSBhbGxhIHByaW1hIGNoaWFtYXRhIGRlbCBtZXRvZG8gc2V0IGNoZWNrZWRcbiAgICAgIC8vIGNoZSBhdnZpZW5lIHByaW1hIGRlbGxhIHByaW1hIGNoaWFtYXRhIGRpIG5nT25DaGFuZ2VzXG4gICAgICBpZiAodGhpcy5jbGVhbkVycm9yT25DaGFuZ2UgJiYgIXRoaXMuZmlyc3RDaGVja2VkU2V0VmFsdWUpIHtcblxuICAgICAgICB0aGlzLmNsZWFuRXJyb3IoKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcblxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHt7Z2V0UmVzcG9uc2l2ZUNsYXNzKCl9fSBub1BhZGRpbmdMZWZ0IHt7Y2xhc3N9fVwiXG4gICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICBbbmdDbGFzc109XCJ7J2hhcy1lcnJvcic6IGlzVGhlcmVFcnJvcigpfVwiPlxuICA8ZGl2IGNsYXNzPVwiY2hlY2tib3hcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiY2hlY2tib3gge3tsYWJlbENsYXNzfX1cIlxuICAgICAgICAgICBbYXR0ci50aXRsZV09XCJsYWJlbFRpdGxlXCJcbiAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImdldEFyaWFMYWJlbGxlZEJ5KClcIlxuICAgICAgICAgICAoY2xpY2spPVwibGFiZWxPbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICBbaHRtbEZvcl09XCJpZFwiPlxuICAgICAgPGlucHV0IGlkPVwie3tpZH19XCJcbiAgICAgICAgICAgICAjZm9ybUNvbnRyb2xcbiAgICAgICAgICAgICBjbGFzcz1cInt7aW5wdXRDbGFzc319XCJcbiAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgIChjbGljayk9XCJjaGVja2JveENsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwiY2JPbkVudGVyKClcIlxuICAgICAgICAgICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNUaGVyZUVycm9yKCkgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZEJ5XT1cImdldEFyaWFEZXNjcmliZWRCeSgpXCJcbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT0nY2hlY2tlZCdcbiAgICAgICAgICAgICBbYXR0ci52YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwidGl0bGVcIj5cbiAgICAgIDxzcGFuICpuZ0lmPVwibGFiZWxcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J3NyLW9ubHknOiBoaWRkZW5MYWJlbH1cIlxuICAgICAgICAgICAgW2lubmVySFRNTF09XCJnZXRMYWJlbCgpXCI+XG4gICAgICA8L3NwYW4+XG4gICAgPC9sYWJlbD5cbiAgICA8c3BhbiAqbmdJZj1cInNob3dQb3BvdmVyKClcIlxuICAgICAgICAgIFtzdHlsZS5wYWRkaW5nLWxlZnQucHhdPVwiNVwiPlxuICAgICAgPGluYWlsLXBvcG92ZXIgW2ljb25DbGFzc109XCJwb3BvdmVyQnV0dG9uSWNvblwiXG4gICAgICAgICAgICAgICAgICAgICBbYnV0dG9uVGl0bGVdPVwicG9wb3ZlckJ1dHRvblRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgIFtoZWFkZXJdPVwicG9wb3ZlckhlYWRlclwiXG4gICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJwb3BvdmVyQ29udGVudFwiPlxuICAgICAgPC9pbmFpbC1wb3BvdmVyPlxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxzcGFuICpuZ0lmPVwic2hvd0Vycm9yKClcIlxuICAgICAgICBbaWRdPVwiZXJyb3JJZFwiXG4gICAgICAgIGNsYXNzPVwibXNnIG1zZy1lcnJvcmVcIlxuICAgICAgICBhcmlhLWhpZGRlbj1cImZhbHNlXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCIgW2lubmVySFRNTF09XCJnZXRMYWJlbCgpXCI+PC9zcGFuPlxuICAgIDxzdHJvbmcgW2lubmVySFRNTF09XCInRVJST1JFOiAnK2Vycm9yXCI+PC9zdHJvbmc+XG4gIDwvc3Bhbj5cbiAgPGRpdiAqbmdJZj1cInNob3dEZXNjcmlwdGlvbigpXCJcbiAgICAgICBbaWRdPVwiZGVzY3JpcHRpb25JZFwiPlxuICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoKVwiPjwvc3Bhbj5cbiAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImRlc2NyaXB0aW9uXCI+PC9zcGFuPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,17 +1,14 @@
1
- import { Component, EventEmitter, Inject, Input, Output, ViewEncapsulation } from '@angular/core';
1
+ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
2
2
  import { ResponsiveElementComponent } from "../responsive-element.component";
3
3
  import { isNotBlankOrNull } from "../../../utils/common.operators";
4
4
  import { CHANGE_DETECTION_STRATEGY, getConfigValue } from "../base.component";
5
- import { NG_INAIL_COMMON_CONFIG } from "../../../ng-inail-common.config";
6
5
  import * as i0 from "@angular/core";
7
6
  export class FormElementComponent extends ResponsiveElementComponent {
8
- constructor(formElementCdr, formElementLibConfig) {
9
- super(formElementCdr, formElementLibConfig);
10
- this.formElementCdr = formElementCdr;
11
- this.formElementLibConfig = formElementLibConfig;
7
+ constructor() {
8
+ super();
12
9
  this.required = false;
13
- this.requiredSimbol = getConfigValue(this.formElementLibConfig?.formElementComponent?.requiredSimbol, '*');
14
- this.requiredSimbolPosition = getConfigValue(this.formElementLibConfig?.formElementComponent?.requiredSimbolPosition, 'right');
10
+ this.requiredSimbol = getConfigValue(this.libConfig?.formElementComponent?.requiredSimbol, '*');
11
+ this.requiredSimbolPosition = getConfigValue(this.libConfig?.formElementComponent?.requiredSimbolPosition, 'right');
15
12
  this.disabled = false;
16
13
  this.readonly = false;
17
14
  this.hasError = false;
@@ -20,7 +17,7 @@ export class FormElementComponent extends ResponsiveElementComponent {
20
17
  this.errorChange = new EventEmitter();
21
18
  this.enterUp = new EventEmitter();
22
19
  this.popover = false;
23
- this.cleanErrorOnChange = getConfigValue(this.formElementLibConfig?.formElementComponent?.cleanErrorOnChange, true);
20
+ this.cleanErrorOnChange = getConfigValue(this.libConfig?.formElementComponent?.cleanErrorOnChange, true);
24
21
  this.getLabel = () => `${(this.required && this.requiredSimbolPosition === 'left') ? `${this.requiredSimbol} ` : ''}${this.label}${(this.required && this.requiredSimbolPosition === 'right') ? ` ${this.requiredSimbol}` : ''}`;
25
22
  this.isThereError = () => this.hasError || isNotBlankOrNull(this.error);
26
23
  this.showError = () => this.isThereError() && isNotBlankOrNull(this.error);
@@ -30,7 +27,7 @@ export class FormElementComponent extends ResponsiveElementComponent {
30
27
  // showPopover = (): boolean => isNotBlankOrNull(this.popoverHeader) || isNotBlankOrNull(this.popoverContent);
31
28
  this.showPopover = () => this.popover === true;
32
29
  this.hasFocus = () => document.activeElement?.id == this.id;
33
- super.overrideConfig(formElementLibConfig?.formElementComponent);
30
+ super.overrideConfig(this.libConfig?.formElementComponent);
34
31
  }
35
32
  overrideConfig(config) {
36
33
  if (config) {
@@ -61,11 +58,11 @@ export class FormElementComponent extends ResponsiveElementComponent {
61
58
  }
62
59
  setDescError(s) {
63
60
  this.error = s;
64
- this.formElementCdr.detectChanges();
61
+ this.cdr.detectChanges();
65
62
  }
66
63
  setHasError(b) {
67
64
  this.hasError = b;
68
- this.formElementCdr.detectChanges();
65
+ this.cdr.detectChanges();
69
66
  }
70
67
  cleanError() {
71
68
  setTimeout(() => {
@@ -77,7 +74,7 @@ export class FormElementComponent extends ResponsiveElementComponent {
77
74
  this.error = undefined;
78
75
  this.errorChange.emit(undefined);
79
76
  }
80
- this.formElementCdr.detectChanges();
77
+ this.cdr.detectChanges();
81
78
  });
82
79
  }
83
80
  registerOnChange(fn) {
@@ -91,23 +88,20 @@ export class FormElementComponent extends ResponsiveElementComponent {
91
88
  setDisabledState(isDisabled) {
92
89
  this.emitDebug(`setDisabledState: ${isDisabled}`);
93
90
  this.disabled = isDisabled;
94
- this.formElementCdr.detectChanges();
91
+ this.cdr.detectChanges();
95
92
  }
96
93
  onBlur() {
97
94
  if (this.onTouched) {
98
95
  this.onTouched();
99
96
  }
100
97
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
102
99
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormElementComponent, selector: "inail-form-element", inputs: { label: "label", title: "title", name: "name", labelTitle: "labelTitle", labelClass: "labelClass", inputClass: "inputClass", required: "required", requiredSimbol: "requiredSimbol", requiredSimbolPosition: "requiredSimbolPosition", disabled: "disabled", readonly: "readonly", hasError: "hasError", hiddenLabel: "hiddenLabel", error: "error", description: "description", focus: "focus", popover: "popover", popoverButtonIcon: "popoverButtonIcon", popoverButtonTitle: "popoverButtonTitle", popoverHeader: "popoverHeader", popoverContent: "popoverContent", cleanErrorOnChange: "cleanErrorOnChange" }, outputs: { hasErrorChange: "hasErrorChange", errorChange: "errorChange", enterUp: "enterUp" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
103
100
  }
104
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormElementComponent, decorators: [{
105
102
  type: Component,
106
103
  args: [{ selector: 'inail-form-element', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
107
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
108
- type: Inject,
109
- args: [NG_INAIL_COMMON_CONFIG]
110
- }] }], propDecorators: { label: [{
104
+ }], ctorParameters: () => [], propDecorators: { label: [{
111
105
  type: Input
112
106
  }], title: [{
113
107
  type: Input
@@ -158,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
158
152
  }], cleanErrorOnChange: [{
159
153
  type: Input
160
154
  }] } });
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lbGVtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWluYWlsLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9mb3JtL2Zvcm0tZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV0SSxPQUFPLEVBQUMsMEJBQTBCLEVBQW9DLE1BQU0saUNBQWlDLENBQUM7QUFDOUcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFnQix5QkFBeUIsRUFBRSxjQUFjLEVBQWlDLE1BQU0sbUJBQW1CLENBQUM7QUFDM0gsT0FBTyxFQUE2QixzQkFBc0IsRUFBc0IsTUFBTSxpQ0FBaUMsQ0FBQzs7QUE0QnhILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSwwQkFBMEI7SUF5RWxFLFlBQW9CLGNBQWlDLEVBRWpDLG9CQUEwQztRQUM1RCxLQUFLLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFIMUIsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBRWpDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUF6RDlELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsbUJBQWMsR0FBVyxjQUFjLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUU5RywyQkFBc0IsR0FBcUIsY0FBYyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUU1SSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFB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QUFvQixtREEwRVgsc0JBQXNCO21HQTFFL0Isb0JBQW9CLG15QkFMckIsRUFBRTs7NEZBS0Qsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLG9CQUFvQixZQUNwQixFQUFFLG1CQUVLLHlCQUF5QixpQkFDM0IsaUJBQWlCLENBQUMsSUFBSTs7MEJBNEV4QixNQUFNOzJCQUFDLHNCQUFzQjt5Q0FwRTFDLEtBQUs7c0JBREosS0FBSztnQkFHTixLQUFLO3NCQURKLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBR04sVUFBVTtzQkFEVCxLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixjQUFjO3NCQURiLEtBQUs7Z0JBR04sc0JBQXNCO3NCQURyQixLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixRQUFRO3NCQURQLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdOLGNBQWM7c0JBRGIsTUFBTTtnQkFHUCxXQUFXO3NCQURWLEtBQUs7Z0JBR04sS0FBSztzQkFESixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFHTixXQUFXO3NCQURWLE1BQU07Z0JBR1AsT0FBTztzQkFETixNQUFNO2dCQUdQLEtBQUs7c0JBREosS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUs7Z0JBR04saUJBQWlCO3NCQURoQixLQUFLO2dCQUdOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUs7Z0JBR04sY0FBYztzQkFEYixLQUFLO2dCQUdOLGtCQUFrQjtzQkFEakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1Jlc3BvbnNpdmVFbGVtZW50Q29tcG9uZW50LCBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudENoYW5nZXN9IGZyb20gXCIuLi9yZXNwb25zaXZlLWVsZW1lbnQuY29tcG9uZW50XCI7XG5pbXBvcnQge2lzTm90QmxhbmtPck51bGx9IGZyb20gXCIuLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge0Jvb2xlYW5DaGFuZ2UsIENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksIGdldENvbmZpZ1ZhbHVlLCBPYnNlcnZhYmxlQ2hhbmdlLCBTdHJpbmdDaGFuZ2V9IGZyb20gXCIuLi9iYXNlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtGb3JtRWxlbWVudENvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGludGVyZmFjZSBGb3JtRWxlbWVudENvbXBvbmVudENoYW5nZXMgZXh0ZW5kcyBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudENoYW5nZXMge1xuXG4gIGxhYmVsOiBTdHJpbmdDaGFuZ2UsXG4gIHRpdGxlOiBTdHJpbmdDaGFuZ2UsXG4gIG5hbWU6IFN0cmluZ0NoYW5nZSxcbiAgbGFiZWxUaXRsZTogU3RyaW5nQ2hhbmdlLFxuICBsYWJlbENsYXNzOiBTdHJpbmdDaGFuZ2UsXG4gIGlucHV0Q2xhc3M6IFN0cmluZ0NoYW5nZSxcbiAgcmVxdWlyZWQ6IEJvb2xlYW5DaGFuZ2UsXG4gIHJlcXVpcmVkU2ltYm9sOiBTdHJpbmdDaGFuZ2UsXG4gIHJlcXVpcmVkU2ltYm9sUG9zaXRpb246IFN0cmluZ0NoYW5nZSxcbiAgZGlzYWJsZWQ6IEJvb2xlYW5DaGFuZ2UsXG4gIHJlYWRvbmx5OiBCb29sZWFuQ2hhbmdlLFxuICBoYXNFcnJvcjogQm9vbGVhbkNoYW5nZSxcbiAgaGlkZGVuTGFiZWw6IEJvb2xlYW5DaGFuZ2UsXG4gIGVycm9yOiBTdHJpbmdDaGFuZ2UsXG4gIGZvY3VzOiBPYnNlcnZhYmxlQ2hhbmdlXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luYWlsLWZvcm0tZWxlbWVudCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1FbGVtZW50Q29tcG9uZW50IGV4dGVuZHMgUmVzcG9uc2l2ZUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG5cbiAgb25DaGFuZ2U6ICh2YWw6IGFueSkgPT4gdm9pZFxuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQ7XG5cbiAgQElucHV0KClcbiAgbGFiZWw6IE5vbk51bGxhYmxlPHN0cmluZz47XG4gIEBJbnB1dCgpXG4gIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIG5hbWU6IHN0cmluZztcbiAgQElucHV0KClcbiAgbGFiZWxUaXRsZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBsYWJlbENsYXNzOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGlucHV0Q2xhc3M6IHN0cmluZztcbiAgQElucHV0KClcbiAgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcmVxdWlyZWRTaW1ib2w6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5yZXF1aXJlZFNpbWJvbCwgJyonKTtcbiAgQElucHV0KClcbiAgcmVxdWlyZWRTaW1ib2xQb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uLCAncmlnaHQnKTtcbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpXG4gIGhhc0Vycm9yQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBASW5wdXQoKVxuICBoaWRkZW5MYWJlbDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBlcnJvcjogc3RyaW5nO1xuICBASW5wdXQoKVxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBAT3V0cHV0KClcbiAgZXJyb3JDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpXG4gIGVudGVyVXAgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpXG4gIGZvY3VzOiBPYnNlcnZhYmxlPGJvb2xlYW4gfCB2b2lkPjtcbiAgQElucHV0KClcbiAgcG9wb3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBwb3BvdmVyQnV0dG9uSWNvbjogc3RyaW5nO1xuICBASW5wdXQoKVxuICBwb3BvdmVyQnV0dG9uVGl0bGU6IHN0cmluZztcbiAgQElucHV0KClcbiAgcG9wb3ZlckhlYWRlcjogc3RyaW5nO1xuICBASW5wdXQoKVxuICBwb3BvdmVyQ29udGVudDogc3RyaW5nO1xuICBASW5wdXQoKVxuICBjbGVhbkVycm9yT25DaGFuZ2U6IGJvb2xlYW4gPSBnZXRDb25maWdWYWx1ZSh0aGlzLmZvcm1FbGVtZW50TGliQ29uZmlnPy5mb3JtRWxlbWVudENvbXBvbmVudD8uY2xlYW5FcnJvck9uQ2hhbmdlLCB0cnVlKTtcblxuICBlcnJvcklkOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uSWQ6IHN0cmluZztcblxuICBnZXRMYWJlbCA9ICgpID0+IGAkeyh0aGlzLnJlcXVpcmVkICYmIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbiA9PT0gJ2xlZnQnKSA/IGAke3RoaXMucmVxdWlyZWRTaW1ib2x9IGAgOiAnJ30ke3RoaXMubGFiZWx9JHsodGhpcy5yZXF1aXJlZCAmJiB0aGlzLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24gPT09ICdyaWdodCcpID8gYCAke3RoaXMucmVxdWlyZWRTaW1ib2x9YCA6ICcnfWBcblxuICBpc1RoZXJlRXJyb3IgPSAoKTogYm9vbGVhbiA9PiB0aGlzLmhhc0Vycm9yIHx8IGlzTm90QmxhbmtPck51bGwodGhpcy5lcnJvcik7XG4gIHNob3dFcnJvciA9ICgpOiBib29sZWFuID0+IHRoaXMuaXNUaGVyZUVycm9yKCkgJiYgaXNOb3RCbGFua09yTnVsbCh0aGlzLmVycm9yKTtcbiAgc2hvd0Rlc2NyaXB0aW9uID0gKCk6IGJvb2xlYW4gPT4gaXNOb3RCbGFua09yTnVsbCh0aGlzLmRlc2NyaXB0aW9uKTtcblxuICBnZXRBcmlhTGFiZWxsZWRCeSA9ICgpOiBzdHJpbmcgPT4gdGhpcy5zaG93RXJyb3IoKSA/IHRoaXMuZXJyb3JJZCA6IHVuZGVmaW5lZDtcbiAgZ2V0QXJpYURlc2NyaWJlZEJ5ID0gKCk6IHN0cmluZyA9PiB0aGlzLnNob3dEZXNjcmlwdGlvbigpID8gdGhpcy5kZXNjcmlwdGlvbklkIDogdW5kZWZpbmVkO1xuXG4gIC8vIHNob3dQb3BvdmVyID0gKCk6IGJvb2xlYW4gPT4gaXNOb3RCbGFua09yTnVsbCh0aGlzLnBvcG92ZXJIZWFkZXIpIHx8IGlzTm90QmxhbmtPck51bGwodGhpcy5wb3BvdmVyQ29udGVudCk7XG4gIHNob3dQb3BvdmVyID0gKCk6IGJvb2xlYW4gPT4gdGhpcy5wb3BvdmVyID09PSB0cnVlO1xuXG4gIGhhc0ZvY3VzID0gKCk6IGJvb2xlYW4gPT4gZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8uaWQgPT0gdGhpcy5pZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1FbGVtZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIGZvcm1FbGVtZW50TGliQ29uZmlnPzogTmdJbmFpbENvbW1vbkNvbmZpZykge1xuICAgIHN1cGVyKGZvcm1FbGVtZW50Q2RyLCBmb3JtRWxlbWVudExpYkNvbmZpZyk7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcoZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50KTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogRm9ybUVsZW1lbnRDb21wb25lbnRDb25maWcpIHtcblxuICAgIGlmIChjb25maWcpIHtcblxuICAgICAgc3VwZXIub3ZlcnJpZGVDb25maWcoY29uZmlnKTtcbiAgICAgIHRoaXMucmVxdWlyZWRTaW1ib2wgPSBnZXRDb25maWdWYWx1ZShjb25maWcucmVxdWlyZWRTaW1ib2wsIHRoaXMucmVxdWlyZWRTaW1ib2wpO1xuICAgICAgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID0gZ2V0Q29uZmlnVmFsdWUoY29uZmlnLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24sIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbik7XG4gICAgICB0aGlzLmNsZWFuRXJyb3JPbkNoYW5nZSA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5jbGVhbkVycm9yT25DaGFuZ2UsIHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBGb3JtRWxlbWVudENvbXBvbmVudENoYW5nZXMpIHtcblxuICAgIHN1cGVyLm5nT25DaGFuZ2VzKGNoYW5nZXMpO1xuICAgIHRoaXMudGl0bGUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy50aXRsZSk7XG4gICAgdGhpcy5uYW1lID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMubmFtZSk7XG4gICAgdGhpcy5sYWJlbFRpdGxlID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMubGFiZWxUaXRsZSk7XG4gICAgdGhpcy5wb3BvdmVyQnV0dG9uVGl0bGUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5wb3BvdmVyQnV0dG9uVGl0bGUpO1xuXG4gICAgaWYgKGNoYW5nZXMuaWQ/LmN1cnJlbnRWYWx1ZSAhPSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5lcnJvcklkID0gYCR7Y2hhbmdlcy5pZD8uY3VycmVudFZhbHVlfS1lcnJvcmA7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uSWQgPSBgJHtjaGFuZ2VzLmlkPy5jdXJyZW50VmFsdWV9LWRlc2NyaXB0aW9uYDtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYCR7dGhpcy5sb2dQcmVmaXh9WyR7dGhpcy5sYWJlbH1dYDtcblxuICAgIGlmICh0aGlzLmlkICE9IHVuZGVmaW5lZCkge1xuXG4gICAgICB0aGlzLmVycm9ySWQgPSBgJHt0aGlzLmlkfS1lcnJvcmA7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uSWQgPSBgJHt0aGlzLmlkfS1kZXNjcmlwdGlvbmA7XG4gICAgfVxuICB9XG5cbiAgc2V0RGVzY0Vycm9yKHM6IHN0cmluZykge1xuXG4gICAgdGhpcy5lcnJvciA9IHM7XG4gICAgdGhpcy5mb3JtRWxlbWVudENkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBzZXRIYXNFcnJvcihiOiBib29sZWFuKSB7XG5cbiAgICB0aGlzLmhhc0Vycm9yID0gYjtcbiAgICB0aGlzLmZvcm1FbGVtZW50Q2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGNsZWFuRXJyb3IoKSB7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcblxuICAgICAgICB0aGlzLmhhc0Vycm9yID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaGFzRXJyb3JDaGFuZ2UuZW1pdChmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmVycm9yKSB7XG5cbiAgICAgICAgdGhpcy5lcnJvciA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5lcnJvckNoYW5nZS5lbWl0KHVuZGVmaW5lZCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZm9ybUVsZW1lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgcmVnaXN0ZXJPbkNoYW5nZWApO1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGByZWdpc3Rlck9uVG91Y2hlZGApO1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1Zyhgc2V0RGlzYWJsZWRTdGF0ZTogJHtpc0Rpc2FibGVkfWApO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuZm9ybUVsZW1lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgb25CbHVyKCkge1xuICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lbGVtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWluYWlsLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9mb3JtL2Zvcm0tZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFM0csT0FBTyxFQUFDLDBCQUEwQixFQUFvQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzlHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IseUJBQXlCLEVBQUUsY0FBYyxFQUFpQyxNQUFNLG1CQUFtQixDQUFDOztBQTZCM0gsTUFBTSxPQUFPLG9CQUFxQixTQUFRLDBCQUEwQjtJQXlFbEU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQXhEVixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLG1CQUFjLEdBQVcsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRW5HLDJCQUFzQixHQUFxQixjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVqSSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFN0MsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFNN0IsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXpDLFlBQU8sR0FBRyxJQUFJLFlBQVks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QkFHTixJQUFJO3NCQURILEtBQUs7Z0JBR04sVUFBVTtzQkFEVCxLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdOLGNBQWM7c0JBRGIsS0FBSztnQkFHTixzQkFBc0I7c0JBRHJCLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixRQUFRO3NCQURQLEtBQUs7Z0JBR04sY0FBYztzQkFEYixNQUFNO2dCQUdQLFdBQVc7c0JBRFYsS0FBSztnQkFHTixLQUFLO3NCQURKLEtBQUs7Z0JBR04sV0FBVztzQkFEVixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsTUFBTTtnQkFHUCxPQUFPO3NCQUROLE1BQU07Z0JBR1AsS0FBSztzQkFESixLQUFLO2dCQUdOLE9BQU87c0JBRE4sS0FBSztnQkFHTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBR04sa0JBQWtCO3NCQURqQixLQUFLO2dCQUdOLGFBQWE7c0JBRFosS0FBSztnQkFHTixjQUFjO3NCQURiLEtBQUs7Z0JBR04sa0JBQWtCO3NCQURqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7UmVzcG9uc2l2ZUVsZW1lbnRDb21wb25lbnQsIFJlc3BvbnNpdmVFbGVtZW50Q29tcG9uZW50Q2hhbmdlc30gZnJvbSBcIi4uL3Jlc3BvbnNpdmUtZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7aXNOb3RCbGFua09yTnVsbH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL2NvbW1vbi5vcGVyYXRvcnNcIjtcbmltcG9ydCB7Qm9vbGVhbkNoYW5nZSwgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSwgZ2V0Q29uZmlnVmFsdWUsIE9ic2VydmFibGVDaGFuZ2UsIFN0cmluZ0NoYW5nZX0gZnJvbSBcIi4uL2Jhc2UuY29tcG9uZW50XCI7XG5pbXBvcnQge0Zvcm1FbGVtZW50Q29tcG9uZW50Q29uZmlnfSBmcm9tIFwiLi4vLi4vLi4vbmctaW5haWwtY29tbW9uLmNvbmZpZ1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1FbGVtZW50Q29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIFJlc3BvbnNpdmVFbGVtZW50Q29tcG9uZW50Q2hhbmdlcyB7XG5cbiAgbGFiZWw6IFN0cmluZ0NoYW5nZSxcbiAgdGl0bGU6IFN0cmluZ0NoYW5nZSxcbiAgbmFtZTogU3RyaW5nQ2hhbmdlLFxuICBsYWJlbFRpdGxlOiBTdHJpbmdDaGFuZ2UsXG4gIGxhYmVsQ2xhc3M6IFN0cmluZ0NoYW5nZSxcbiAgaW5wdXRDbGFzczogU3RyaW5nQ2hhbmdlLFxuICByZXF1aXJlZDogQm9vbGVhbkNoYW5nZSxcbiAgcmVxdWlyZWRTaW1ib2w6IFN0cmluZ0NoYW5nZSxcbiAgcmVxdWlyZWRTaW1ib2xQb3NpdGlvbjogU3RyaW5nQ2hhbmdlLFxuICBkaXNhYmxlZDogQm9vbGVhbkNoYW5nZSxcbiAgcmVhZG9ubHk6IEJvb2xlYW5DaGFuZ2UsXG4gIGhhc0Vycm9yOiBCb29sZWFuQ2hhbmdlLFxuICBoaWRkZW5MYWJlbDogQm9vbGVhbkNoYW5nZSxcbiAgZXJyb3I6IFN0cmluZ0NoYW5nZSxcbiAgZm9jdXM6IE9ic2VydmFibGVDaGFuZ2Vcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtZm9ybS1lbGVtZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUVsZW1lbnRDb21wb25lbnQgZXh0ZW5kcyBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcblxuICBvbkNoYW5nZTogKHZhbDogYW55KSA9PiB2b2lkXG4gIG9uVG91Y2hlZDogKCkgPT4gdm9pZDtcblxuICBASW5wdXQoKVxuICBsYWJlbDogTm9uTnVsbGFibGU8c3RyaW5nPjtcbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KClcbiAgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBsYWJlbFRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGxhYmVsQ2xhc3M6IHN0cmluZztcbiAgQElucHV0KClcbiAgaW5wdXRDbGFzczogc3RyaW5nO1xuICBASW5wdXQoKVxuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICByZXF1aXJlZFNpbWJvbDogc3RyaW5nID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5yZXF1aXJlZFNpbWJvbCwgJyonKTtcbiAgQElucHV0KClcbiAgcmVxdWlyZWRTaW1ib2xQb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMubGliQ29uZmlnPy5mb3JtRWxlbWVudENvbXBvbmVudD8ucmVxdWlyZWRTaW1ib2xQb3NpdGlvbiwgJ3JpZ2h0Jyk7XG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIGhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKVxuICBoYXNFcnJvckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQElucHV0KClcbiAgaGlkZGVuTGFiZWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZXJyb3I6IHN0cmluZztcbiAgQElucHV0KClcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgQE91dHB1dCgpXG4gIGVycm9yQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKVxuICBlbnRlclVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBASW5wdXQoKVxuICBmb2N1czogT2JzZXJ2YWJsZTxib29sZWFuIHwgdm9pZD47XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcG9wb3ZlckJ1dHRvbkljb246IHN0cmluZztcbiAgQElucHV0KClcbiAgcG9wb3ZlckJ1dHRvblRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXJIZWFkZXI6IHN0cmluZztcbiAgQElucHV0KClcbiAgcG9wb3ZlckNvbnRlbnQ6IHN0cmluZztcbiAgQElucHV0KClcbiAgY2xlYW5FcnJvck9uQ2hhbmdlOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5jbGVhbkVycm9yT25DaGFuZ2UsIHRydWUpO1xuXG4gIGVycm9ySWQ6IHN0cmluZztcbiAgZGVzY3JpcHRpb25JZDogc3RyaW5nO1xuXG4gIGdldExhYmVsID0gKCkgPT4gYCR7KHRoaXMucmVxdWlyZWQgJiYgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID09PSAnbGVmdCcpID8gYCR7dGhpcy5yZXF1aXJlZFNpbWJvbH0gYCA6ICcnfSR7dGhpcy5sYWJlbH0keyh0aGlzLnJlcXVpcmVkICYmIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbiA9PT0gJ3JpZ2h0JykgPyBgICR7dGhpcy5yZXF1aXJlZFNpbWJvbH1gIDogJyd9YFxuXG4gIGlzVGhlcmVFcnJvciA9ICgpOiBib29sZWFuID0+IHRoaXMuaGFzRXJyb3IgfHwgaXNOb3RCbGFua09yTnVsbCh0aGlzLmVycm9yKTtcbiAgc2hvd0Vycm9yID0gKCk6IGJvb2xlYW4gPT4gdGhpcy5pc1RoZXJlRXJyb3IoKSAmJiBpc05vdEJsYW5rT3JOdWxsKHRoaXMuZXJyb3IpO1xuICBzaG93RGVzY3JpcHRpb24gPSAoKTogYm9vbGVhbiA9PiBpc05vdEJsYW5rT3JOdWxsKHRoaXMuZGVzY3JpcHRpb24pO1xuXG4gIGdldEFyaWFMYWJlbGxlZEJ5ID0gKCk6IHN0cmluZyA9PiB0aGlzLnNob3dFcnJvcigpID8gdGhpcy5lcnJvcklkIDogdW5kZWZpbmVkO1xuICBnZXRBcmlhRGVzY3JpYmVkQnkgPSAoKTogc3RyaW5nID0+IHRoaXMuc2hvd0Rlc2NyaXB0aW9uKCkgPyB0aGlzLmRlc2NyaXB0aW9uSWQgOiB1bmRlZmluZWQ7XG5cbiAgLy8gc2hvd1BvcG92ZXIgPSAoKTogYm9vbGVhbiA9PiBpc05vdEJsYW5rT3JOdWxsKHRoaXMucG9wb3ZlckhlYWRlcikgfHwgaXNOb3RCbGFua09yTnVsbCh0aGlzLnBvcG92ZXJDb250ZW50KTtcbiAgc2hvd1BvcG92ZXIgPSAoKTogYm9vbGVhbiA9PiB0aGlzLnBvcG92ZXIgPT09IHRydWU7XG5cbiAgaGFzRm9jdXMgPSAoKTogYm9vbGVhbiA9PiBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5pZCA9PSB0aGlzLmlkO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcodGhpcy5saWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50KTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogRm9ybUVsZW1lbnRDb21wb25lbnRDb25maWcpIHtcblxuICAgIGlmIChjb25maWcpIHtcblxuICAgICAgc3VwZXIub3ZlcnJpZGVDb25maWcoY29uZmlnKTtcbiAgICAgIHRoaXMucmVxdWlyZWRTaW1ib2wgPSBnZXRDb25maWdWYWx1ZShjb25maWcucmVxdWlyZWRTaW1ib2wsIHRoaXMucmVxdWlyZWRTaW1ib2wpO1xuICAgICAgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID0gZ2V0Q29uZmlnVmFsdWUoY29uZmlnLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24sIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbik7XG4gICAgICB0aGlzLmNsZWFuRXJyb3JPbkNoYW5nZSA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5jbGVhbkVycm9yT25DaGFuZ2UsIHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBGb3JtRWxlbWVudENvbXBvbmVudENoYW5nZXMpIHtcblxuICAgIHN1cGVyLm5nT25DaGFuZ2VzKGNoYW5nZXMpO1xuICAgIHRoaXMudGl0bGUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy50aXRsZSk7XG4gICAgdGhpcy5uYW1lID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMubmFtZSk7XG4gICAgdGhpcy5sYWJlbFRpdGxlID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMubGFiZWxUaXRsZSk7XG4gICAgdGhpcy5wb3BvdmVyQnV0dG9uVGl0bGUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5wb3BvdmVyQnV0dG9uVGl0bGUpO1xuXG4gICAgaWYgKGNoYW5nZXMuaWQ/LmN1cnJlbnRWYWx1ZSAhPSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5lcnJvcklkID0gYCR7Y2hhbmdlcy5pZD8uY3VycmVudFZhbHVlfS1lcnJvcmA7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uSWQgPSBgJHtjaGFuZ2VzLmlkPy5jdXJyZW50VmFsdWV9LWRlc2NyaXB0aW9uYDtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYCR7dGhpcy5sb2dQcmVmaXh9WyR7dGhpcy5sYWJlbH1dYDtcblxuICAgIGlmICh0aGlzLmlkICE9IHVuZGVmaW5lZCkge1xuXG4gICAgICB0aGlzLmVycm9ySWQgPSBgJHt0aGlzLmlkfS1lcnJvcmA7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uSWQgPSBgJHt0aGlzLmlkfS1kZXNjcmlwdGlvbmA7XG4gICAgfVxuICB9XG5cbiAgc2V0RGVzY0Vycm9yKHM6IHN0cmluZykge1xuXG4gICAgdGhpcy5lcnJvciA9IHM7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgc2V0SGFzRXJyb3IoYjogYm9vbGVhbikge1xuXG4gICAgdGhpcy5oYXNFcnJvciA9IGI7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgY2xlYW5FcnJvcigpIHtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuXG4gICAgICBpZiAodGhpcy5oYXNFcnJvcikge1xuXG4gICAgICAgIHRoaXMuaGFzRXJyb3IgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oYXNFcnJvckNoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuZXJyb3IpIHtcblxuICAgICAgICB0aGlzLmVycm9yID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmVycm9yQ2hhbmdlLmVtaXQodW5kZWZpbmVkKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgcmVnaXN0ZXJPbkNoYW5nZWApO1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGByZWdpc3Rlck9uVG91Y2hlZGApO1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1Zyhgc2V0RGlzYWJsZWRTdGF0ZTogJHtpc0Rpc2FibGVkfWApO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxuICB9XG59XG4iXX0=