ng-inail-common 2.1.0-beta.8 → 2.1.0

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 (123) hide show
  1. package/esm2020/lib/components/core/base.component.mjs +5 -11
  2. package/esm2020/lib/components/core/basic-ux-element.component.mjs +5 -11
  3. package/esm2020/lib/components/core/form/checkbox/checkbox.component.mjs +8 -8
  4. package/esm2020/lib/components/core/form/form-element.component.mjs +5 -11
  5. package/esm2020/lib/components/core/form/input-date/input-date.component.mjs +8 -8
  6. package/esm2020/lib/components/core/form/input-file/input-file.component.mjs +7 -7
  7. package/esm2020/lib/components/core/form/input-money/input-money.component.mjs +11 -11
  8. package/esm2020/lib/components/core/form/input-number/input-number.component.mjs +7 -7
  9. package/esm2020/lib/components/core/form/input-text/input-text.component.mjs +7 -7
  10. package/esm2020/lib/components/core/form/input-time/input-time.component.mjs +10 -10
  11. package/esm2020/lib/components/core/form/multi-select/multi-select.component.mjs +7 -7
  12. package/esm2020/lib/components/core/form/radio-select/radio-select.component.mjs +7 -7
  13. package/esm2020/lib/components/core/form/select/select.component.mjs +10 -10
  14. package/esm2020/lib/components/core/form/textarea/textarea.component.mjs +11 -11
  15. package/esm2020/lib/components/core/layout/breadcrumb/breadcrumb.component.mjs +6 -6
  16. package/esm2020/lib/components/core/layout/footer/footer.component.mjs +58 -45
  17. package/esm2020/lib/components/core/layout/header/header.component.mjs +61 -69
  18. package/esm2020/lib/components/core/layout/header-secondario/header-secondario.component.mjs +230 -0
  19. package/esm2020/lib/components/core/layout/inail-layout/inail-layout.component.mjs +83 -111
  20. package/esm2020/lib/components/core/layout/inail-layout/webkit-resources.mjs +3 -1
  21. package/esm2020/lib/components/core/layout/loader/loader.component.mjs +3 -3
  22. package/esm2020/lib/components/core/layout/logo-header/logo-header.component.mjs +175 -0
  23. package/esm2020/lib/components/core/layout/menu/menu.component.mjs +7 -7
  24. package/esm2020/lib/components/core/layout/menu-intranet/menu-intranet.component.mjs +6 -6
  25. package/esm2020/lib/components/core/layout/navigazione-principale/navigazione-principale.component.mjs +114 -68
  26. package/esm2020/lib/components/core/layout/navigazione-secondaria/navigazione-secondaria.component.mjs +14 -7
  27. package/esm2020/lib/components/core/layout/trigger-slider-menu-button/trigger-slider-menu-button.component.mjs +4 -4
  28. package/esm2020/lib/components/core/responsive-element.component.mjs +5 -11
  29. package/esm2020/lib/components/core/table/inail-table-page-selector/inail-table-page-selector.component.mjs +3 -3
  30. package/esm2020/lib/components/core/table/table/table.component.mjs +6 -6
  31. package/esm2020/lib/components/core/table/table-page-length-selector/table-page-length-selector.component.mjs +5 -5
  32. package/esm2020/lib/components/core/table/th-label/th-label.component.mjs +3 -3
  33. package/esm2020/lib/components/core/table/tr-accordion/tr-accordion.component.mjs +3 -3
  34. package/esm2020/lib/components/core/table/tr-checkbox/tr-checkbox.component.mjs +3 -3
  35. package/esm2020/lib/components/core/ux/accordion/accordion.component.mjs +6 -6
  36. package/esm2020/lib/components/core/ux/alert/alert.component.mjs +6 -6
  37. package/esm2020/lib/components/core/ux/button/button.component.mjs +3 -3
  38. package/esm2020/lib/components/core/ux/confirm/confirm.component.mjs +6 -6
  39. package/esm2020/lib/components/core/ux/container/container.component.mjs +4 -4
  40. package/esm2020/lib/components/core/ux/feedback/feedback.component.mjs +3 -3
  41. package/esm2020/lib/components/core/ux/form-grey/form-grey.component.mjs +4 -4
  42. package/esm2020/lib/components/core/ux/modal/modal.component.mjs +3 -3
  43. package/esm2020/lib/components/core/ux/page-title/page-title.component.mjs +4 -4
  44. package/esm2020/lib/components/core/ux/popover/popover.component.mjs +3 -3
  45. package/esm2020/lib/components/core/ux/progress-bar/progress-bar.component.mjs +4 -4
  46. package/esm2020/lib/components/core/ux/selector/selector.component.mjs +3 -3
  47. package/esm2020/lib/components/core/ux/tab-group/tab-group.component.mjs +3 -3
  48. package/esm2020/lib/components/core/ux/tab-pane/tab-pane.component.mjs +3 -3
  49. package/esm2020/lib/components/core/ux/wizard/wizard.component.mjs +4 -4
  50. package/esm2020/lib/components/utilities/form-element-state-propertie/form-element-state-propertie.component.mjs +6 -6
  51. package/esm2020/lib/components/utilities/pre/pre.component.mjs +4 -4
  52. package/esm2020/lib/components/utilities/state-propertie/state-propertie.component.mjs +4 -4
  53. package/esm2020/lib/ng-inail-common.module.mjs +50 -52
  54. package/esm2020/lib/services/agw-rest.service.mjs +18 -6
  55. package/esm2020/lib/utils/common.operators.mjs +2 -1
  56. package/esm2020/public-api.mjs +3 -3
  57. package/fesm2015/ng-inail-common.mjs +893 -729
  58. package/fesm2015/ng-inail-common.mjs.map +1 -1
  59. package/fesm2020/ng-inail-common.mjs +882 -719
  60. package/fesm2020/ng-inail-common.mjs.map +1 -1
  61. package/lib/components/core/base.component.d.ts +1 -1
  62. package/lib/components/core/basic-ux-element.component.d.ts +1 -1
  63. package/lib/components/core/form/checkbox/checkbox.component.d.ts +1 -1
  64. package/lib/components/core/form/form-element.component.d.ts +1 -1
  65. package/lib/components/core/form/input-date/input-date.component.d.ts +1 -1
  66. package/lib/components/core/form/input-file/input-file.component.d.ts +1 -1
  67. package/lib/components/core/form/input-money/input-money.component.d.ts +1 -1
  68. package/lib/components/core/form/input-number/input-number.component.d.ts +1 -1
  69. package/lib/components/core/form/input-text/input-text.component.d.ts +1 -1
  70. package/lib/components/core/form/input-time/input-time.component.d.ts +1 -1
  71. package/lib/components/core/form/multi-select/multi-select.component.d.ts +1 -1
  72. package/lib/components/core/form/radio-select/radio-select.component.d.ts +1 -1
  73. package/lib/components/core/form/select/select.component.d.ts +1 -1
  74. package/lib/components/core/form/textarea/textarea.component.d.ts +1 -1
  75. package/lib/components/core/layout/breadcrumb/breadcrumb.component.d.ts +1 -1
  76. package/lib/components/core/layout/footer/footer.component.d.ts +21 -15
  77. package/lib/components/core/layout/header/header.component.d.ts +112 -103
  78. package/lib/components/core/layout/header-secondario/header-secondario.component.d.ts +121 -0
  79. package/lib/components/core/layout/inail-layout/inail-layout.component.d.ts +118 -134
  80. package/lib/components/core/layout/loader/loader.component.d.ts +1 -1
  81. package/lib/components/core/layout/logo-header/logo-header.component.d.ts +83 -0
  82. package/lib/components/core/layout/menu/menu.component.d.ts +1 -1
  83. package/lib/components/core/layout/menu-intranet/menu-intranet.component.d.ts +1 -1
  84. package/lib/components/core/layout/navigazione-principale/navigazione-principale.component.d.ts +33 -23
  85. package/lib/components/core/layout/navigazione-secondaria/navigazione-secondaria.component.d.ts +2 -1
  86. package/lib/components/core/layout/trigger-slider-menu-button/trigger-slider-menu-button.component.d.ts +1 -1
  87. package/lib/components/core/responsive-element.component.d.ts +1 -1
  88. package/lib/components/core/table/inail-table-page-selector/inail-table-page-selector.component.d.ts +1 -1
  89. package/lib/components/core/table/table/table.component.d.ts +1 -1
  90. package/lib/components/core/table/table-page-length-selector/table-page-length-selector.component.d.ts +1 -1
  91. package/lib/components/core/table/th-label/th-label.component.d.ts +1 -1
  92. package/lib/components/core/table/tr-accordion/tr-accordion.component.d.ts +1 -1
  93. package/lib/components/core/table/tr-checkbox/tr-checkbox.component.d.ts +1 -1
  94. package/lib/components/core/ux/accordion/accordion.component.d.ts +1 -1
  95. package/lib/components/core/ux/alert/alert.component.d.ts +1 -1
  96. package/lib/components/core/ux/button/button.component.d.ts +1 -1
  97. package/lib/components/core/ux/confirm/confirm.component.d.ts +1 -1
  98. package/lib/components/core/ux/container/container.component.d.ts +1 -1
  99. package/lib/components/core/ux/feedback/feedback.component.d.ts +1 -1
  100. package/lib/components/core/ux/form-grey/form-grey.component.d.ts +1 -1
  101. package/lib/components/core/ux/modal/modal.component.d.ts +1 -1
  102. package/lib/components/core/ux/page-title/page-title.component.d.ts +1 -1
  103. package/lib/components/core/ux/popover/popover.component.d.ts +1 -1
  104. package/lib/components/core/ux/progress-bar/progress-bar.component.d.ts +1 -1
  105. package/lib/components/core/ux/selector/selector.component.d.ts +1 -1
  106. package/lib/components/core/ux/tab-group/tab-group.component.d.ts +1 -1
  107. package/lib/components/core/ux/tab-pane/tab-pane.component.d.ts +1 -1
  108. package/lib/components/core/ux/wizard/wizard.component.d.ts +1 -1
  109. package/lib/components/utilities/form-element-state-propertie/form-element-state-propertie.component.d.ts +1 -1
  110. package/lib/components/utilities/pre/pre.component.d.ts +1 -1
  111. package/lib/components/utilities/state-propertie/state-propertie.component.d.ts +1 -1
  112. package/lib/ng-inail-common.module.d.ts +43 -43
  113. package/lib/services/agw-rest.service.d.ts +42 -15
  114. package/lib/utils/common.operators.d.ts +1 -0
  115. package/package.json +7 -7
  116. package/public-api.d.ts +2 -2
  117. package/esm2020/lib/components/core/layout/layout-common-config.mjs +0 -5
  118. package/esm2020/lib/components/core/layout/navigazione-interna/navigazione-interna.component.mjs +0 -19
  119. package/esm2020/lib/components/core/layout/navigazione-utente/navigazione-utente.component.mjs +0 -230
  120. package/lib/components/core/layout/layout-common-config.d.ts +0 -4
  121. package/lib/components/core/layout/navigazione-interna/navigazione-interna.component.d.ts +0 -10
  122. package/lib/components/core/layout/navigazione-utente/navigazione-utente.component.d.ts +0 -163
  123. /package/{ng-inail-common.d.ts → index.d.ts} +0 -0
@@ -90,17 +90,11 @@ export class BaseComponent {
90
90
  }
91
91
  }
92
92
  }
93
- BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BaseComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
94
- BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", 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 });
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BaseComponent, decorators: [{
93
+ BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BaseComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
94
+ BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 });
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BaseComponent, decorators: [{
96
96
  type: Component,
97
- args: [{
98
- selector: 'inail-base',
99
- template: '',
100
- styles: [],
101
- changeDetection: CHANGE_DETECTION_STRATEGY,
102
- encapsulation: ViewEncapsulation.None
103
- }]
97
+ args: [{ selector: 'inail-base', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
104
98
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
105
99
  type: Inject,
106
100
  args: [NG_INAIL_COMMON_CONFIG]
@@ -118,4 +112,4 @@ function saveEE() {
118
112
  window['asd'] = JSON.parse(atob('ewogICJhdXRvcmUiOiAiU2ltb25lIEFudG9uaW5pIiwKICAiZXRhIjogImRpcGVuZGUgZGFsbCdhbm5vIGNvcnJlbnRlIiwKICAiaG9iYnkiOiBbIlBlc2NhIiwgIlNub3dib2FyZCIsICJHYW1pbmciLCAiQ3Jvc3NmaXQiXSwKICAicHJlZmVyaXRpIjogewogICAgInBlc2NpIjogWyJDYXJwYSIsICJCbGFjayBCYXNzIl0sCiAgICAidmlkZW9naW9jaGkiOiBbIkZGVklJIiwgIkZGVklJUiIsICJEZWF0aCBTdHJhbmRpbmciLCAiU2VraXJvIiwgIlJlZCBEZWFkIFJlZGVtcHRpb24gMiIsICJUTE9VIiwgIlRMT1UyIl0sCiAgICAibGlicmkiOiBbCiAgICAgIHsiYXV0b3JlIjogIkdhYnJpZWwgR2FyY2lhIE1hcnF1ZXoiLCAidGl0b2xvIjogIkNlbnQnYW5uaSBkaSBzb2xpdHVkaW5lIn0sCiAgICAgIHsiYXV0b3JlIjogIkFsZXNzYW5kcm8gQmFyaWNjbyIsICJ0aXRvbG8iOiAiQ2FzdGVsbGkgZGkgcmFiYmlhIn0sCiAgICAgIHsiYXV0b3JlIjogIkFsZXNzYW5kcm8gQmFyaWNjbyIsICJ0aXRvbG8iOiAiU2V0YSJ9LAogICAgICB7ImF1dG9yZSI6ICJZYXN1bmFyaSBLYXdhYmF0YSIsICJ0aXRvbG8iOiAiTGEgY2FzYSBkZWxsZSBiZWxsZSBhZGRvcm1lbnRhdGUifQogICAgXQogIH0sCiAgImltcHJlc2VDZWxlYnJpIjogWyJTb3Bwb3J0byBtaWEgbWFkcmUgZGEgcXVhc2kgNDAgYW5uaSJdLAogICJwcm92b0Ftb3JlUGVyIjogWyJJbCBtaW8gY2FuZSIsICJJbCBtaW8gZ2F0dG8iLCAiSWwgdGlyYW1pc3UiXQp9'));
119
113
  }
120
114
  }
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBK0IsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUwsT0FBTyxFQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXhFLE9BQU8sRUFBc0Isc0JBQXNCLEVBQXNCLE1BQU0sOEJBQThCLENBQUM7O0FBRTlHLE1BQU0sQ0FBTixJQUFZLFFBUVg7QUFSRCxXQUFZLFFBQVE7SUFFbEIsdUJBQVcsQ0FBQTtJQUNYLDJCQUFlLENBQUE7SUFDZiwyQkFBZSxDQUFBO0lBQ2YseUJBQWEsQ0FBQTtJQUNiLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFSVyxRQUFRLEtBQVIsUUFBUSxRQVFuQjtBQVFELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLHVCQUF1QixDQUFDLE1BQU0sQ0FBQztBQUN4RSw0RUFBNEU7QUFFNUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBVSxFQUFFLFlBQWlCLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0FBUzNHLE1BQU0sT0FBTyxhQUFhO0lBb0N4QixZQUFvQixnQkFBbUMsRUFFbkMsb0JBQTBDO1FBRjFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBbUI7UUFFbkMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQTlCOUQ7OztXQUdHO1FBRUgsaUJBQVks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LGVBQWUsRUFBRSx5QkFBeUI7b0JBQzFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs7MEJBc0NjLE1BQU07MkJBQUMsc0JBQXNCOzRDQS9CMUMsR0FBRztzQkFERixNQUFNO2dCQVFQLFlBQVk7c0JBRFgsS0FBSztnQkFPTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLOztBQStIUixTQUFTLE1BQU07SUFFYixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBRWxCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxrK0JBQWsrQixDQUFDLENBQUMsQ0FBQztLQUN0Z0M7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2UsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aXNOb3RCbGFua09yTnVsbCwgaXNTdHJpbmd9IGZyb20gXCIuLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGVudW0gTG9nTGV2ZWwge1xuXG4gIExPRyA9ICdsb2cnLFxuICBUUkFDRSA9ICd0cmFjZScsXG4gIERFQlVHID0gJ2RlYnVnJyxcbiAgSU5GTyA9ICdpbmZvJyxcbiAgV0FSTiA9ICd3YXJuJyxcbiAgRVJST1IgPSAnZXJyb3InXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nRXZlbnQge1xuXG4gIG1lc3NhZ2U6IGFueTtcbiAgbGV2ZWw6IExvZ0xldmVsO1xufVxuXG5leHBvcnQgY29uc3QgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSA9IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaDtcbi8vIGV4cG9ydCBjb25zdCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZID0gQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdDtcblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZ1ZhbHVlID0gKHZhbHVlOiBhbnksIGRlZmF1bHRWYWx1ZTogYW55KSA9PiB2YWx1ZSAhPSB1bmRlZmluZWQgPyB2YWx1ZSA6IGRlZmF1bHRWYWx1ZTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtYmFzZScsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG5cbiAgLyoqXG4gICAqIExvZyBkZWwgY29tcG9uZW50ZVxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGxvZzogRXZlbnRFbWl0dGVyPExvZ0V2ZW50PjtcblxuICAvKipcbiAgICogU2UgdHJ1ZSBlZmZldHR1YSBpbCBsb2cgZGlyZXR0YW1lbnRlIG5lbGxhIGNvbnNvbGUuXG4gICAqIEFsdHJpbWVudGkgZW1ldHRlIGwnZXZlbnRvIGxvZ1xuICAgKi9cbiAgQElucHV0KClcbiAgbG9nT25Db25zb2xlOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5iYXNlRWxlbWVudExpYkNvbmZpZz8ubG9nT25Db25zb2xlLCBmYWxzZSk7XG5cbiAgLyoqXG4gICAqXG4gICAqL1xuICBASW5wdXQoKVxuICBzaG93U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkZXRlY3RDaGFuZ2U6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgbG9nUHJlZml4OiBzdHJpbmc7XG5cbiAgc3ViY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwdXNoID0gKHN1YmNyaXB0aW9uOiBTdWJzY3JpcHRpb24pID0+IHRoaXMuc3ViY3JpcHRpb25zLnB1c2goc3ViY3JpcHRpb24pO1xuXG4gIC8vIERldGFjaCBjZW50cmFsaXp6YXRvXG4gIGRldGFjaCA9ICgpID0+IHtcbiAgICB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0YWNoKCk7XG4gIH07XG5cbiAgZGV0ZWN0Q2hhbmdlcyA9ICgpID0+IHRoaXMuYmFzZUNvbXBvbmVudENkci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYXNlQ29tcG9uZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIGJhc2VFbGVtZW50TGliQ29uZmlnPzogTmdJbmFpbENvbW1vbkNvbmZpZykge1xuICAgIHRoaXMubG9nID0gbmV3IEV2ZW50RW1pdHRlcjxMb2dFdmVudD4oKTtcbiAgICBzYXZlRUUoKTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogQmFzZUNvbXBvbmVudENvbmZpZykge1xuXG4gICAgaWYgKGNvbmZpZykge1xuXG4gICAgICB0aGlzLmxvZ09uQ29uc29sZSA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5sb2dPbkNvbnNvbGUsIHRoaXMubG9nT25Db25zb2xlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy5lbWl0RGVidWcoYG5nT25DaGFuZ2VzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcoY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGBuZ09uSW5pdGApO1xuICAgIHRoaXMuZW1pdERlYnVnKGB0aGlzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcodGhpcyk7XG5cbiAgICBpZiAodGhpcy5kZXRlY3RDaGFuZ2UpIHtcblxuICAgICAgdGhpcy5wdXNoKHRoaXMuZGV0ZWN0Q2hhbmdlLnN1YnNjcmliZSgoKSA9PiB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgJHt0aGlzLmxvZ1ByZWZpeH0gbmdPbkRlc3Ryb3lgKTtcbiAgICB0aGlzLnN1YmNyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcz8udW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBlbWl0TG9nKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkxPR30pO1xuICB9XG5cbiAgZW1pdFRyYWNlKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLlRSQUNFfSk7XG4gIH1cblxuICBlbWl0RGVidWcobWVzc2FnZTogYW55KSB7XG4gICAgdGhpcy5lbWl0KHttZXNzYWdlOiBtZXNzYWdlLCBsZXZlbDogTG9nTGV2ZWwuREVCVUd9KTtcbiAgfVxuXG4gIGVtaXRJbmZvKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLklORk99KTtcbiAgfVxuXG4gIGVtaXRXYXJuKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLldBUk59KTtcbiAgfVxuXG4gIGVtaXRFcnJvcihtZXNzYWdlOiBhbnkpIHtcblxuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkVSUk9SfSk7XG4gIH1cblxuICBlbWl0KGV2ZW50OiBMb2dFdmVudCkge1xuXG4gICAgaWYgKGV2ZW50KSB7XG5cbiAgICAgIGlmICh0aGlzLmxvZ09uQ29uc29sZSA9PT0gdHJ1ZSkge1xuXG4gICAgICAgIGNvbnNvbGVbZXZlbnQubGV2ZWxdLmFwcGx5KHRoaXMsIFt0aGlzLmdldE1lc3NhZ2UoZXZlbnQpXSk7XG4gICAgICB9IGVsc2Uge1xuXG4gICAgICAgIGV2ZW50Lm1lc3NhZ2UgPSB0aGlzLmdldE1lc3NhZ2UoZXZlbnQpO1xuICAgICAgICB0aGlzLmxvZy5lbWl0KGV2ZW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRNZXNzYWdlID0gKGV2ZW50OiBMb2dFdmVudCkgPT4gdGhpcy5sb2dQcmVmaXggJiYgaXNTdHJpbmcoZXZlbnQubWVzc2FnZSkgPyBgJHt0aGlzLmxvZ1ByZWZpeH0gJHtldmVudC5tZXNzYWdlfWAgOiBldmVudC5tZXNzYWdlO1xuICBnZXROb3RCbGFua1ZhbHVlID0gKHYpID0+IGlzTm90QmxhbmtPck51bGwoYCR7dn1gKSA/IHYgOiB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9vbGVhbkNoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBib29sZWFuO1xuICBwcmV2aW91c1ZhbHVlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ0NoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBzdHJpbmc7XG4gIHByZXZpb3VzVmFsdWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOdW1iZXJDaGFuZ2UgZXh0ZW5kcyBTaW1wbGVDaGFuZ2Uge1xuXG4gIGN1cnJlbnRWYWx1ZTogbnVtYmVyO1xuICBwcmV2aW91c1ZhbHVlOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT2JzZXJ2YWJsZUNoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBPYnNlcnZhYmxlPGFueT47XG4gIHByZXZpb3VzVmFsdWU6IE9ic2VydmFibGU8YW55Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQ29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIFNpbXBsZUNoYW5nZXMge1xuXG4gIGxvZ09uQ29uc29sZTogQm9vbGVhbkNoYW5nZSxcbiAgc2hvd1N0YXRlOiBCb29sZWFuQ2hhbmdlXG59XG5cbmZ1bmN0aW9uIHNhdmVFRSgpIHtcblxuICBpZiAoIXdpbmRvd1snYXNkJ10pIHtcblxuICAgIHdpbmRvd1snYXNkJ10gPSBKU09OLnBhcnNlKGF0b2IoJ2V3b2dJQ0poZFhSdmNtVWlPaUFpVTJsdGIyNWxJRUZ1ZEc5dWFXNXBJaXdLSUNBaVpYUmhJam9nSW1ScGNHVnVaR1VnWkdGc2JDZGhibTV2SUdOdmNuSmxiblJsSWl3S0lDQWlhRzlpWW5raU9pQmJJbEJsYzJOaElpd2dJbE51YjNkaWIyRnlaQ0lzSUNKSFlXMXBibWNpTENBaVEzSnZjM05tYVhRaVhTd0tJQ0FpY0hKbFptVnlhWFJwSWpvZ2V3b2dJQ0FnSW5CbGMyTnBJam9nV3lKRFlYSndZU0lzSUNKQ2JHRmpheUJDWVhOeklsMHNDaUFnSUNBaWRtbGtaVzluYVc5amFHa2lPaUJiSWtaR1ZrbEpJaXdnSWtaR1ZrbEpVaUlzSUNKRVpXRjBhQ0JUZEhKaGJtUnBibWNpTENBaVUyVnJhWEp2SWl3Z0lsSmxaQ0JFWldGa0lGSmxaR1Z0Y0hScGIyNGdNaUlzSUNKVVRFOVZJaXdnSWxSTVQxVXlJbDBzQ2lBZ0lDQWliR2xpY21raU9pQmJDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa2RoWW5KcFpXd2dSMkZ5WTJsaElFMWhjbkYxWlhvaUxDQWlkR2wwYjJ4dklqb2dJa05sYm5RbllXNXVhU0JrYVNCemIyeHBkSFZrYVc1bEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVEyRnpkR1ZzYkdrZ1pHa2djbUZpWW1saEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVUyVjBZU0o5TEFvZ0lDQWdJQ0I3SW1GMWRHOXlaU0k2SUNKWllYTjFibUZ5YVNCTFlYZGhZbUYwWVNJc0lDSjBhWFJ2Ykc4aU9pQWlUR0VnWTJGellTQmtaV3hzWlNCaVpXeHNaU0JoWkdSdmNtMWxiblJoZEdVaWZRb2dJQ0FnWFFvZ0lIMHNDaUFnSW1sdGNISmxjMlZEWld4bFluSnBJam9nV3lKVGIzQndiM0owYnlCdGFXRWdiV0ZrY21VZ1pHRWdjWFZoYzJrZ05EQWdZVzV1YVNKZExBb2dJQ0p3Y205MmIwRnRiM0psVUdWeUlqb2dXeUpKYkNCdGFXOGdZMkZ1WlNJc0lDSkpiQ0J0YVc4Z1oyRjBkRzhpTENBaVNXd2dkR2x5WVcxcGMzVWlYUXA5JykpO1xuICB9XG59XG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBK0IsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUwsT0FBTyxFQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXhFLE9BQU8sRUFBc0Isc0JBQXNCLEVBQXNCLE1BQU0sOEJBQThCLENBQUM7O0FBRTlHLE1BQU0sQ0FBTixJQUFZLFFBUVg7QUFSRCxXQUFZLFFBQVE7SUFFbEIsdUJBQVcsQ0FBQTtJQUNYLDJCQUFlLENBQUE7SUFDZiwyQkFBZSxDQUFBO0lBQ2YseUJBQWEsQ0FBQTtJQUNiLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFSVyxRQUFRLEtBQVIsUUFBUSxRQVFuQjtBQVFELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLHVCQUF1QixDQUFDLE1BQU0sQ0FBQztBQUN4RSw0RUFBNEU7QUFFNUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBVSxFQUFFLFlBQWlCLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0FBUzNHLE1BQU0sT0FBTyxhQUFhO0lBb0N4QixZQUFvQixnQkFBbUMsRUFFbkMsb0JBQTBDO1FBRjFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBbUI7UUFFbkMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQTlCOUQ7OztXQUdHO1FBRUgsaUJBQVksR0FBWSxjQUFjLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV2Rjs7V0FFRztRQUVILGNBQVMsR0FBWSxLQUFLLENBQUM7UUFPM0IsaUJBQVksR0FBbUIsRUFBRSxDQUFDO1FBQ2xDLFNBQUksR0FBRyxDQUFDLFdBQXlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTFFLHVCQUF1QjtRQUN2QixXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLENBQUMsQ0FBQztRQUVGLGtCQUFhLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBZ0Y1RCxlQUFVLEdBQUcsQ0FBQyxLQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNuSSxxQkFBZ0IsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQTVFakUsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxDQUFDO0lBQ1gsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUEyQjtRQUV4QyxJQUFJLE1BQU0sRUFBRTtZQUVWLElBQUksQ0FBQyxZQUFZLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzVFO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVE7UUFFTixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFFckIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3JGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFFVCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsY0FBYyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQVk7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxTQUFTLENBQUMsT0FBWTtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFZO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsUUFBUSxDQUFDLE9BQVk7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxRQUFRLENBQUMsT0FBWTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFZO1FBRXBCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWU7UUFFbEIsSUFBSSxLQUFLLEVBQUU7WUFFVCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUFFO2dCQUU5QixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUM1RDtpQkFBTTtnQkFFTCxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3RCO1NBQ0Y7SUFDSCxDQUFDOzsyR0FoSFUsYUFBYSxtREFxQ0osc0JBQXNCOytGQXJDL0IsYUFBYSxnTUFMZCxFQUFFOzRGQUtELGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0UsWUFBWSxZQUNaLEVBQUUsbUJBRUsseUJBQXlCLGlCQUMzQixpQkFBaUIsQ0FBQyxJQUFJOzswQkF1Q3hCLE1BQU07MkJBQUMsc0JBQXNCOzRDQS9CMUMsR0FBRztzQkFERixNQUFNO2dCQVFQLFlBQVk7c0JBRFgsS0FBSztnQkFPTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLOztBQStIUixTQUFTLE1BQU07SUFFYixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBRWxCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxrK0JBQWsrQixDQUFDLENBQUMsQ0FBQztLQUN0Z0M7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2UsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aXNOb3RCbGFua09yTnVsbCwgaXNTdHJpbmd9IGZyb20gXCIuLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGVudW0gTG9nTGV2ZWwge1xuXG4gIExPRyA9ICdsb2cnLFxuICBUUkFDRSA9ICd0cmFjZScsXG4gIERFQlVHID0gJ2RlYnVnJyxcbiAgSU5GTyA9ICdpbmZvJyxcbiAgV0FSTiA9ICd3YXJuJyxcbiAgRVJST1IgPSAnZXJyb3InXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nRXZlbnQge1xuXG4gIG1lc3NhZ2U6IGFueTtcbiAgbGV2ZWw6IExvZ0xldmVsO1xufVxuXG5leHBvcnQgY29uc3QgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSA9IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaDtcbi8vIGV4cG9ydCBjb25zdCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZID0gQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdDtcblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZ1ZhbHVlID0gKHZhbHVlOiBhbnksIGRlZmF1bHRWYWx1ZTogYW55KSA9PiB2YWx1ZSAhPSB1bmRlZmluZWQgPyB2YWx1ZSA6IGRlZmF1bHRWYWx1ZTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtYmFzZScsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG5cbiAgLyoqXG4gICAqIExvZyBkZWwgY29tcG9uZW50ZVxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGxvZzogRXZlbnRFbWl0dGVyPExvZ0V2ZW50PjtcblxuICAvKipcbiAgICogU2UgdHJ1ZSBlZmZldHR1YSBpbCBsb2cgZGlyZXR0YW1lbnRlIG5lbGxhIGNvbnNvbGUuXG4gICAqIEFsdHJpbWVudGkgZW1ldHRlIGwnZXZlbnRvIGxvZ1xuICAgKi9cbiAgQElucHV0KClcbiAgbG9nT25Db25zb2xlOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5iYXNlRWxlbWVudExpYkNvbmZpZz8ubG9nT25Db25zb2xlLCBmYWxzZSk7XG5cbiAgLyoqXG4gICAqXG4gICAqL1xuICBASW5wdXQoKVxuICBzaG93U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkZXRlY3RDaGFuZ2U6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgbG9nUHJlZml4OiBzdHJpbmc7XG5cbiAgc3ViY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwdXNoID0gKHN1YmNyaXB0aW9uOiBTdWJzY3JpcHRpb24pID0+IHRoaXMuc3ViY3JpcHRpb25zLnB1c2goc3ViY3JpcHRpb24pO1xuXG4gIC8vIERldGFjaCBjZW50cmFsaXp6YXRvXG4gIGRldGFjaCA9ICgpID0+IHtcbiAgICB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0YWNoKCk7XG4gIH07XG5cbiAgZGV0ZWN0Q2hhbmdlcyA9ICgpID0+IHRoaXMuYmFzZUNvbXBvbmVudENkci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYXNlQ29tcG9uZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIGJhc2VFbGVtZW50TGliQ29uZmlnPzogTmdJbmFpbENvbW1vbkNvbmZpZykge1xuICAgIHRoaXMubG9nID0gbmV3IEV2ZW50RW1pdHRlcjxMb2dFdmVudD4oKTtcbiAgICBzYXZlRUUoKTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogQmFzZUNvbXBvbmVudENvbmZpZykge1xuXG4gICAgaWYgKGNvbmZpZykge1xuXG4gICAgICB0aGlzLmxvZ09uQ29uc29sZSA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5sb2dPbkNvbnNvbGUsIHRoaXMubG9nT25Db25zb2xlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy5lbWl0RGVidWcoYG5nT25DaGFuZ2VzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcoY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGBuZ09uSW5pdGApO1xuICAgIHRoaXMuZW1pdERlYnVnKGB0aGlzYCk7XG4gICAgdGhpcy5lbWl0RGVidWcodGhpcyk7XG5cbiAgICBpZiAodGhpcy5kZXRlY3RDaGFuZ2UpIHtcblxuICAgICAgdGhpcy5wdXNoKHRoaXMuZGV0ZWN0Q2hhbmdlLnN1YnNjcmliZSgoKSA9PiB0aGlzLmJhc2VDb21wb25lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgJHt0aGlzLmxvZ1ByZWZpeH0gbmdPbkRlc3Ryb3lgKTtcbiAgICB0aGlzLnN1YmNyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcz8udW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBlbWl0TG9nKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkxPR30pO1xuICB9XG5cbiAgZW1pdFRyYWNlKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLlRSQUNFfSk7XG4gIH1cblxuICBlbWl0RGVidWcobWVzc2FnZTogYW55KSB7XG4gICAgdGhpcy5lbWl0KHttZXNzYWdlOiBtZXNzYWdlLCBsZXZlbDogTG9nTGV2ZWwuREVCVUd9KTtcbiAgfVxuXG4gIGVtaXRJbmZvKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLklORk99KTtcbiAgfVxuXG4gIGVtaXRXYXJuKG1lc3NhZ2U6IGFueSkge1xuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLldBUk59KTtcbiAgfVxuXG4gIGVtaXRFcnJvcihtZXNzYWdlOiBhbnkpIHtcblxuICAgIHRoaXMuZW1pdCh7bWVzc2FnZTogbWVzc2FnZSwgbGV2ZWw6IExvZ0xldmVsLkVSUk9SfSk7XG4gIH1cblxuICBlbWl0KGV2ZW50OiBMb2dFdmVudCkge1xuXG4gICAgaWYgKGV2ZW50KSB7XG5cbiAgICAgIGlmICh0aGlzLmxvZ09uQ29uc29sZSA9PT0gdHJ1ZSkge1xuXG4gICAgICAgIGNvbnNvbGVbZXZlbnQubGV2ZWxdLmFwcGx5KHRoaXMsIFt0aGlzLmdldE1lc3NhZ2UoZXZlbnQpXSk7XG4gICAgICB9IGVsc2Uge1xuXG4gICAgICAgIGV2ZW50Lm1lc3NhZ2UgPSB0aGlzLmdldE1lc3NhZ2UoZXZlbnQpO1xuICAgICAgICB0aGlzLmxvZy5lbWl0KGV2ZW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRNZXNzYWdlID0gKGV2ZW50OiBMb2dFdmVudCkgPT4gdGhpcy5sb2dQcmVmaXggJiYgaXNTdHJpbmcoZXZlbnQubWVzc2FnZSkgPyBgJHt0aGlzLmxvZ1ByZWZpeH0gJHtldmVudC5tZXNzYWdlfWAgOiBldmVudC5tZXNzYWdlO1xuICBnZXROb3RCbGFua1ZhbHVlID0gKHYpID0+IGlzTm90QmxhbmtPck51bGwoYCR7dn1gKSA/IHYgOiB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9vbGVhbkNoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBib29sZWFuO1xuICBwcmV2aW91c1ZhbHVlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ0NoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBzdHJpbmc7XG4gIHByZXZpb3VzVmFsdWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOdW1iZXJDaGFuZ2UgZXh0ZW5kcyBTaW1wbGVDaGFuZ2Uge1xuXG4gIGN1cnJlbnRWYWx1ZTogbnVtYmVyO1xuICBwcmV2aW91c1ZhbHVlOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT2JzZXJ2YWJsZUNoYW5nZSBleHRlbmRzIFNpbXBsZUNoYW5nZSB7XG5cbiAgY3VycmVudFZhbHVlOiBPYnNlcnZhYmxlPGFueT47XG4gIHByZXZpb3VzVmFsdWU6IE9ic2VydmFibGU8YW55Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQ29tcG9uZW50Q2hhbmdlcyBleHRlbmRzIFNpbXBsZUNoYW5nZXMge1xuXG4gIGxvZ09uQ29uc29sZTogQm9vbGVhbkNoYW5nZSxcbiAgc2hvd1N0YXRlOiBCb29sZWFuQ2hhbmdlXG59XG5cbmZ1bmN0aW9uIHNhdmVFRSgpIHtcblxuICBpZiAoIXdpbmRvd1snYXNkJ10pIHtcblxuICAgIHdpbmRvd1snYXNkJ10gPSBKU09OLnBhcnNlKGF0b2IoJ2V3b2dJQ0poZFhSdmNtVWlPaUFpVTJsdGIyNWxJRUZ1ZEc5dWFXNXBJaXdLSUNBaVpYUmhJam9nSW1ScGNHVnVaR1VnWkdGc2JDZGhibTV2SUdOdmNuSmxiblJsSWl3S0lDQWlhRzlpWW5raU9pQmJJbEJsYzJOaElpd2dJbE51YjNkaWIyRnlaQ0lzSUNKSFlXMXBibWNpTENBaVEzSnZjM05tYVhRaVhTd0tJQ0FpY0hKbFptVnlhWFJwSWpvZ2V3b2dJQ0FnSW5CbGMyTnBJam9nV3lKRFlYSndZU0lzSUNKQ2JHRmpheUJDWVhOeklsMHNDaUFnSUNBaWRtbGtaVzluYVc5amFHa2lPaUJiSWtaR1ZrbEpJaXdnSWtaR1ZrbEpVaUlzSUNKRVpXRjBhQ0JUZEhKaGJtUnBibWNpTENBaVUyVnJhWEp2SWl3Z0lsSmxaQ0JFWldGa0lGSmxaR1Z0Y0hScGIyNGdNaUlzSUNKVVRFOVZJaXdnSWxSTVQxVXlJbDBzQ2lBZ0lDQWliR2xpY21raU9pQmJDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa2RoWW5KcFpXd2dSMkZ5WTJsaElFMWhjbkYxWlhvaUxDQWlkR2wwYjJ4dklqb2dJa05sYm5RbllXNXVhU0JrYVNCemIyeHBkSFZrYVc1bEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVEyRnpkR1ZzYkdrZ1pHa2djbUZpWW1saEluMHNDaUFnSUNBZ0lIc2lZWFYwYjNKbElqb2dJa0ZzWlhOellXNWtjbThnUW1GeWFXTmpieUlzSUNKMGFYUnZiRzhpT2lBaVUyVjBZU0o5TEFvZ0lDQWdJQ0I3SW1GMWRHOXlaU0k2SUNKWllYTjFibUZ5YVNCTFlYZGhZbUYwWVNJc0lDSjBhWFJ2Ykc4aU9pQWlUR0VnWTJGellTQmtaV3hzWlNCaVpXeHNaU0JoWkdSdmNtMWxiblJoZEdVaWZRb2dJQ0FnWFFvZ0lIMHNDaUFnSW1sdGNISmxjMlZEWld4bFluSnBJam9nV3lKVGIzQndiM0owYnlCdGFXRWdiV0ZrY21VZ1pHRWdjWFZoYzJrZ05EQWdZVzV1YVNKZExBb2dJQ0p3Y205MmIwRnRiM0psVUdWeUlqb2dXeUpKYkNCdGFXOGdZMkZ1WlNJc0lDSkpiQ0J0YVc4Z1oyRjBkRzhpTENBaVNXd2dkR2x5WVcxcGMzVWlYUXA5JykpO1xuICB9XG59XG4iXX0=
@@ -26,17 +26,11 @@ export class BasicUxElementComponent extends BaseComponent {
26
26
  this.logPrefix = `${this.logPrefix}[${this.id}]`;
27
27
  }
28
28
  }
29
- BasicUxElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicUxElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
30
- BasicUxElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", 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 });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: BasicUxElementComponent, decorators: [{
29
+ BasicUxElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BasicUxElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
30
+ BasicUxElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BasicUxElementComponent, decorators: [{
32
32
  type: Component,
33
- args: [{
34
- selector: 'inail-basic-ux-element',
35
- template: '',
36
- styles: [],
37
- changeDetection: CHANGE_DETECTION_STRATEGY,
38
- encapsulation: ViewEncapsulation.None
39
- }]
33
+ args: [{ selector: 'inail-basic-ux-element', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
40
34
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
41
35
  type: Inject,
42
36
  args: [NG_INAIL_COMMON_CONFIG]
@@ -45,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
45
39
  }], class: [{
46
40
  type: Input
47
41
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFDLGFBQWEsRUFBd0IseUJBQXlCLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFzQixzQkFBc0IsRUFBc0IsTUFBTSw4QkFBOEIsQ0FBQzs7QUFlOUcsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFReEQsWUFBb0IsWUFBK0IsRUFFL0Isa0JBQXdDO1FBRTFELEtBQUssQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUp0QixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFFL0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQVA1RCxPQUFFLEdBQVcsTUFBTSxFQUFFLENBQUM7SUFVdEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUEyQjtRQUV4QyxJQUFJLE1BQU0sRUFBRTtZQUVWLEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBRWhDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtZQUV4QixJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO1NBQ3BCO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDO0lBQ25ELENBQUM7O3FIQXJDVSx1QkFBdUIsbURBU2Qsc0JBQXNCO3lHQVQvQix1QkFBdUIsZ0pBTHhCLEVBQUU7NEZBS0QsdUJBQXVCO2tCQVBuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSxFQUFFO29CQUNaLE1BQU0sRUFBRSxFQUFFO29CQUNWLGVBQWUsRUFBRSx5QkFBeUI7b0JBQzFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs7MEJBVWMsTUFBTTsyQkFBQyxzQkFBc0I7NENBTjFDLEVBQUU7c0JBREQsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Jhc2VDb21wb25lbnQsIEJhc2VDb21wb25lbnRDaGFuZ2VzLCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLCBTdHJpbmdDaGFuZ2V9IGZyb20gXCIuL2Jhc2UuY29tcG9uZW50XCI7XG5pbXBvcnQge3V1aWR2NH0gZnJvbSBcIi4uLy4uL3V0aWxzL2NvbW1vbi5vcGVyYXRvcnNcIjtcbmltcG9ydCB7QmFzZUNvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNpY1V4RWxlbWVudENvbXBvbmVudENoYW5nZXMgZXh0ZW5kcyBCYXNlQ29tcG9uZW50Q2hhbmdlcyB7XG5cbiAgaWQ6IFN0cmluZ0NoYW5nZSxcbiAgY2xhc3M6IFN0cmluZ0NoYW5nZVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbmFpbC1iYXNpYy11eC1lbGVtZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQmFzaWNVeEVsZW1lbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIGlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcblxuICBASW5wdXQoKVxuICBjbGFzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXhFbGVtZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIHV4RWxlbWVudExpYkNvbmZpZz86IE5nSW5haWxDb21tb25Db25maWcpIHtcblxuICAgIHN1cGVyKHV4RWxlbWVudENkciwgdXhFbGVtZW50TGliQ29uZmlnKTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogQmFzZUNvbXBvbmVudENvbmZpZykge1xuXG4gICAgaWYgKGNvbmZpZykge1xuXG4gICAgICBzdXBlci5vdmVycmlkZUNvbmZpZyhjb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcblxuICAgIHN1cGVyLm5nT25DaGFuZ2VzKGNoYW5nZXMpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgIGlmICh0aGlzLmlkID09IHVuZGVmaW5lZCkge1xuXG4gICAgICB0aGlzLmlkID0gdXVpZHY0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2dQcmVmaXggPSBgJHt0aGlzLmxvZ1ByZWZpeH1bJHt0aGlzLmlkfV1gO1xuICB9XG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvYmFzaWMtdXgtZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFDLGFBQWEsRUFBd0IseUJBQXlCLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFzQixzQkFBc0IsRUFBc0IsTUFBTSw4QkFBOEIsQ0FBQzs7QUFlOUcsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFReEQsWUFBb0IsWUFBK0IsRUFFL0Isa0JBQXdDO1FBRTFELEtBQUssQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUp0QixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFFL0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQVA1RCxPQUFFLEdBQVcsTUFBTSxFQUFFLENBQUM7SUFVdEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUEyQjtRQUV4QyxJQUFJLE1BQU0sRUFBRTtZQUVWLEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBRWhDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtZQUV4QixJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO1NBQ3BCO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDO0lBQ25ELENBQUM7O3FIQXJDVSx1QkFBdUIsbURBU2Qsc0JBQXNCO3lHQVQvQix1QkFBdUIsZ0pBTHhCLEVBQUU7NEZBS0QsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLHdCQUF3QixZQUN4QixFQUFFLG1CQUVLLHlCQUF5QixpQkFDM0IsaUJBQWlCLENBQUMsSUFBSTs7MEJBV3hCLE1BQU07MkJBQUMsc0JBQXNCOzRDQU4xQyxFQUFFO3NCQURELEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYXNlQ29tcG9uZW50LCBCYXNlQ29tcG9uZW50Q2hhbmdlcywgQ0hBTkdFX0RFVEVDVElPTl9TVFJBVEVHWSwgU3RyaW5nQ2hhbmdlfSBmcm9tIFwiLi9iYXNlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHt1dWlkdjR9IGZyb20gXCIuLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge0Jhc2VDb21wb25lbnRDb25maWcsIE5HX0lOQUlMX0NPTU1PTl9DT05GSUcsIE5nSW5haWxDb21tb25Db25maWd9IGZyb20gXCIuLi8uLi9uZy1pbmFpbC1jb21tb24uY29uZmlnXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzaWNVeEVsZW1lbnRDb21wb25lbnRDaGFuZ2VzIGV4dGVuZHMgQmFzZUNvbXBvbmVudENoYW5nZXMge1xuXG4gIGlkOiBTdHJpbmdDaGFuZ2UsXG4gIGNsYXNzOiBTdHJpbmdDaGFuZ2Vcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtYmFzaWMtdXgtZWxlbWVudCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhc2ljVXhFbGVtZW50Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBpZDogc3RyaW5nID0gdXVpZHY0KCk7XG5cbiAgQElucHV0KClcbiAgY2xhc3M6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHV4RWxlbWVudENkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIEBJbmplY3QoTkdfSU5BSUxfQ09NTU9OX0NPTkZJRylcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1eEVsZW1lbnRMaWJDb25maWc/OiBOZ0luYWlsQ29tbW9uQ29uZmlnKSB7XG5cbiAgICBzdXBlcih1eEVsZW1lbnRDZHIsIHV4RWxlbWVudExpYkNvbmZpZyk7XG4gIH1cblxuICBvdmVycmlkZUNvbmZpZyhjb25maWc6IEJhc2VDb21wb25lbnRDb25maWcpIHtcblxuICAgIGlmIChjb25maWcpIHtcblxuICAgICAgc3VwZXIub3ZlcnJpZGVDb25maWcoY29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICBpZiAodGhpcy5pZCA9PSB1bmRlZmluZWQpIHtcblxuICAgICAgdGhpcy5pZCA9IHV1aWR2NCgpO1xuICAgIH1cblxuICAgIHRoaXMubG9nUHJlZml4ID0gYCR7dGhpcy5sb2dQcmVmaXh9WyR7dGhpcy5pZH1dYDtcbiAgfVxufVxuIl19
@@ -5,9 +5,9 @@ import { setFocus } from "../../../../utils/common.operators";
5
5
  import { CHANGE_DETECTION_STRATEGY } from "../../base.component";
6
6
  import { NG_INAIL_COMMON_CONFIG } from "../../../../ng-inail-common.config";
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "../../ux/popover/popover.component";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "@angular/forms";
8
+ import * as i1 from "@angular/common";
9
+ import * as i2 from "@angular/forms";
10
+ import * as i3 from "../../ux/popover/popover.component";
11
11
  export class CheckboxComponent extends FormElementComponent {
12
12
  constructor(cdr, libConfig) {
13
13
  super(cdr, libConfig);
@@ -85,15 +85,15 @@ export class CheckboxComponent extends FormElementComponent {
85
85
  super.ngOnDestroy();
86
86
  }
87
87
  }
88
- CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
89
- CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CheckboxComponent, selector: "inail-checkbox", inputs: { value: "value", checked: "checked" }, outputs: { checkedChange: "checkedChange", checkboxClick: "checkboxClick", click: "click", stateChange: "stateChange" }, providers: [
88
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
89
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CheckboxComponent, selector: "inail-checkbox", inputs: { value: "value", checked: "checked" }, outputs: { checkedChange: "checkedChange", checkboxClick: "checkboxClick", click: "click", stateChange: "stateChange" }, providers: [
90
90
  {
91
91
  provide: NG_VALUE_ACCESSOR,
92
92
  useExisting: forwardRef(() => CheckboxComponent),
93
93
  multi: true
94
94
  }
95
- ], viewQueries: [{ propertyName: "formControlElement", first: true, predicate: ["formControl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, 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-inline {{labelClass}}\"\n [attr.title]=\"labelTitle\"\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 <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [""], components: [{ type: i1.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CheckboxComponent, decorators: [{
95
+ ], viewQueries: [{ propertyName: "formControlElement", first: true, predicate: ["formControl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, 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-inline {{labelClass}}\"\n [attr.title]=\"labelTitle\"\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 <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxComponent, decorators: [{
97
97
  type: Component,
98
98
  args: [{ selector: 'inail-checkbox', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None, providers: [
99
99
  {
@@ -101,7 +101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
101
101
  useExisting: forwardRef(() => CheckboxComponent),
102
102
  multi: true
103
103
  }
104
- ], 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-inline {{labelClass}}\"\n [attr.title]=\"labelTitle\"\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 <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [""] }]
104
+ ], 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-inline {{labelClass}}\"\n [attr.title]=\"labelTitle\"\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 <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n" }]
105
105
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
106
106
  type: Inject,
107
107
  args: [NG_INAIL_COMMON_CONFIG]
@@ -89,17 +89,11 @@ export class FormElementComponent extends ResponsiveElementComponent {
89
89
  }
90
90
  }
91
91
  }
92
- FormElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FormElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
93
- FormElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", 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 });
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FormElementComponent, decorators: [{
92
+ FormElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: FormElementComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
93
+ FormElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: FormElementComponent, decorators: [{
95
95
  type: Component,
96
- args: [{
97
- selector: 'inail-form-element',
98
- template: '',
99
- styles: [],
100
- changeDetection: CHANGE_DETECTION_STRATEGY,
101
- encapsulation: ViewEncapsulation.None
102
- }]
96
+ args: [{ selector: 'inail-form-element', template: '', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None }]
103
97
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
104
98
  type: Inject,
105
99
  args: [NG_INAIL_COMMON_CONFIG]
@@ -154,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
154
148
  }], cleanErrorOnChange: [{
155
149
  type: Input
156
150
  }] } });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lbGVtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWluYWlsLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9mb3JtL2Zvcm0tZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckosT0FBTyxFQUFDLDBCQUEwQixFQUFvQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzlHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IseUJBQXlCLEVBQUUsY0FBYyxFQUFpQyxNQUFNLG1CQUFtQixDQUFDO0FBQzNILE9BQU8sRUFBNkIsc0JBQXNCLEVBQXNCLE1BQU0saUNBQWlDLENBQUM7O0FBU3hILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSwwQkFBMEI7SUFxRWxFLFlBQW9CLGNBQWlDLEVBRWpDLG9CQUEwQztRQUM1RCxLQUFLLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFIMUIsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBRWpDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFyRDlELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsbUJBQWMsR0FBVyxjQUFjLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUU5RywyQkFBc0IsR0FBcUIsY0FBYyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUzSSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFB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O3NCQURWLEtBQUs7Z0JBR04sS0FBSztzQkFESixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFHTixXQUFXO3NCQURWLE1BQU07Z0JBR1AsT0FBTztzQkFETixNQUFNO2dCQUdQLEtBQUs7c0JBREosS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUs7Z0JBR04saUJBQWlCO3NCQURoQixLQUFLO2dCQUdOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUs7Z0JBR04sY0FBYztzQkFEYixLQUFLO2dCQUdOLGtCQUFrQjtzQkFEakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1Jlc3BvbnNpdmVFbGVtZW50Q29tcG9uZW50LCBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudENoYW5nZXN9IGZyb20gXCIuLi9yZXNwb25zaXZlLWVsZW1lbnQuY29tcG9uZW50XCI7XG5pbXBvcnQge2lzTm90QmxhbmtPck51bGx9IGZyb20gXCIuLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge0Jvb2xlYW5DaGFuZ2UsIENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksIGdldENvbmZpZ1ZhbHVlLCBPYnNlcnZhYmxlQ2hhbmdlLCBTdHJpbmdDaGFuZ2V9IGZyb20gXCIuLi9iYXNlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtGb3JtRWxlbWVudENvbXBvbmVudENvbmZpZywgTkdfSU5BSUxfQ09NTU9OX0NPTkZJRywgTmdJbmFpbENvbW1vbkNvbmZpZ30gZnJvbSBcIi4uLy4uLy4uL25nLWluYWlsLWNvbW1vbi5jb25maWdcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtZm9ybS1lbGVtZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENIQU5HRV9ERVRFQ1RJT05fU1RSQVRFR1ksXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUVsZW1lbnRDb21wb25lbnQgZXh0ZW5kcyBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcblxuICBvbkNoYW5nZTogKHZhbDogYW55KSA9PiB2b2lkXG4gIG9uVG91Y2hlZDogKCkgPT4gdm9pZDtcblxuICBASW5wdXQoKVxuICBsYWJlbDogTm9uTnVsbGFibGU8c3RyaW5nPjtcbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KClcbiAgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBsYWJlbFRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGxhYmVsQ2xhc3M6IHN0cmluZztcbiAgQElucHV0KClcbiAgaW5wdXRDbGFzczogc3RyaW5nO1xuICBASW5wdXQoKVxuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICByZXF1aXJlZFNpbWJvbDogc3RyaW5nID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5mb3JtRWxlbWVudExpYkNvbmZpZz8uZm9ybUVsZW1lbnRDb21wb25lbnQ/LnJlcXVpcmVkU2ltYm9sLCAnKicpO1xuICBASW5wdXQoKVxuICByZXF1aXJlZFNpbWJvbFBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5mb3JtRWxlbWVudExpYkNvbmZpZz8uZm9ybUVsZW1lbnRDb21wb25lbnQ/LnJlcXVpcmVkU2ltYm9sUG9zaXRpb24sICdsZWZ0Jyk7XG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIGhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKVxuICBoYXNFcnJvckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQElucHV0KClcbiAgaGlkZGVuTGFiZWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZXJyb3I6IHN0cmluZztcbiAgQElucHV0KClcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgQE91dHB1dCgpXG4gIGVycm9yQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKVxuICBlbnRlclVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBASW5wdXQoKVxuICBmb2N1czogT2JzZXJ2YWJsZTxib29sZWFuIHwgdm9pZD47XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcG9wb3ZlckJ1dHRvbkljb246IHN0cmluZztcbiAgQElucHV0KClcbiAgcG9wb3ZlckJ1dHRvblRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXJIZWFkZXI6IHN0cmluZztcbiAgQElucHV0KClcbiAgcG9wb3ZlckNvbnRlbnQ6IHN0cmluZztcbiAgQElucHV0KClcbiAgY2xlYW5FcnJvck9uQ2hhbmdlOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5mb3JtRWxlbWVudExpYkNvbmZpZz8uZm9ybUVsZW1lbnRDb21wb25lbnQ/LmNsZWFuRXJyb3JPbkNoYW5nZSwgdHJ1ZSk7XG5cbiAgZ2V0TGFiZWwgPSAoKSA9PiBgJHsodGhpcy5yZXF1aXJlZCAmJiB0aGlzLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24gPT09ICdsZWZ0JykgPyBgJHt0aGlzLnJlcXVpcmVkU2ltYm9sfSBgIDogJyd9JHt0aGlzLmxhYmVsfSR7KHRoaXMucmVxdWlyZWQgJiYgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID09PSAncmlnaHQnKSA/IGAgJHt0aGlzLnJlcXVpcmVkU2ltYm9sfWAgOiAnJ31gXG5cbiAgaXNUaGVyZUVycm9yID0gKCk6IGJvb2xlYW4gPT4gdGhpcy5oYXNFcnJvciB8fCBpc05vdEJsYW5rT3JOdWxsKHRoaXMuZXJyb3IpO1xuXG4gIHNob3dFcnJvciA9ICgpOiBib29sZWFuID0+IHRoaXMuaXNUaGVyZUVycm9yKCkgJiYgaXNOb3RCbGFua09yTnVsbCh0aGlzLmVycm9yKTtcblxuICBnZXRBcmlhRGVzY3JpYmVkQnkgPSAoKTogc3RyaW5nID0+IHRoaXMuc2hvd0Vycm9yKCkgfHwgaXNOb3RCbGFua09yTnVsbCh0aGlzLmRlc2NyaXB0aW9uKSA/IGAke3RoaXMuaWR9LWRlc2NyaXB0aW9uYCA6IHVuZGVmaW5lZDtcblxuICAvLyBzaG93UG9wb3ZlciA9ICgpOiBib29sZWFuID0+IGlzTm90QmxhbmtPck51bGwodGhpcy5wb3BvdmVySGVhZGVyKSB8fCBpc05vdEJsYW5rT3JOdWxsKHRoaXMucG9wb3ZlckNvbnRlbnQpO1xuICBzaG93UG9wb3ZlciA9ICgpOiBib29sZWFuID0+IHRoaXMucG9wb3ZlciA9PT0gdHJ1ZTtcblxuICBoYXNGb2N1cyA9ICgpOmJvb2xlYW4gPT4gZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8uaWQgPT0gdGhpcy5pZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1FbGVtZW50Q2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChOR19JTkFJTF9DT01NT05fQ09ORklHKVxuICAgICAgICAgICAgICBwcml2YXRlIGZvcm1FbGVtZW50TGliQ29uZmlnPzogTmdJbmFpbENvbW1vbkNvbmZpZykge1xuICAgIHN1cGVyKGZvcm1FbGVtZW50Q2RyLCBmb3JtRWxlbWVudExpYkNvbmZpZyk7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcoZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50KTtcbiAgfVxuXG4gIG92ZXJyaWRlQ29uZmlnKGNvbmZpZzogRm9ybUVsZW1lbnRDb21wb25lbnRDb25maWcpIHtcblxuICAgIGlmIChjb25maWcpIHtcblxuICAgICAgc3VwZXIub3ZlcnJpZGVDb25maWcoY29uZmlnKTtcbiAgICAgIHRoaXMucmVxdWlyZWRTaW1ib2wgPSBnZXRDb25maWdWYWx1ZShjb25maWcucmVxdWlyZWRTaW1ib2wsIHRoaXMucmVxdWlyZWRTaW1ib2wpO1xuICAgICAgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID0gZ2V0Q29uZmlnVmFsdWUoY29uZmlnLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24sIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbik7XG4gICAgICB0aGlzLmNsZWFuRXJyb3JPbkNoYW5nZSA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5jbGVhbkVycm9yT25DaGFuZ2UsIHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICB0aGlzLnRpdGxlID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMudGl0bGUpO1xuICAgIHRoaXMubmFtZSA9IHRoaXMuZ2V0Tm90QmxhbmtWYWx1ZSh0aGlzLm5hbWUpO1xuICAgIHRoaXMubGFiZWxUaXRsZSA9IHRoaXMuZ2V0Tm90QmxhbmtWYWx1ZSh0aGlzLmxhYmVsVGl0bGUpO1xuICAgIHRoaXMucG9wb3ZlckJ1dHRvblRpdGxlID0gdGhpcy5nZXROb3RCbGFua1ZhbHVlKHRoaXMucG9wb3ZlckJ1dHRvblRpdGxlKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5sb2dQcmVmaXggPSBgJHt0aGlzLmxvZ1ByZWZpeH1bJHt0aGlzLmxhYmVsfV1gO1xuICB9XG5cbiAgc2V0RGVzY0Vycm9yKHM6IHN0cmluZykge1xuXG4gICAgdGhpcy5lcnJvciA9IHM7XG4gICAgdGhpcy5mb3JtRWxlbWVudENkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBzZXRIYXNFcnJvcihiOiBib29sZWFuKSB7XG5cbiAgICB0aGlzLmhhc0Vycm9yID0gYjtcbiAgICB0aGlzLmZvcm1FbGVtZW50Q2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGNsZWFuRXJyb3IoKSB7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcblxuICAgICAgICB0aGlzLmhhc0Vycm9yID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaGFzRXJyb3JDaGFuZ2UuZW1pdChmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmVycm9yKSB7XG5cbiAgICAgICAgdGhpcy5lcnJvciA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5lcnJvckNoYW5nZS5lbWl0KHVuZGVmaW5lZCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZm9ybUVsZW1lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgcmVnaXN0ZXJPbkNoYW5nZWApO1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcblxuICAgIHRoaXMuZW1pdERlYnVnKGByZWdpc3Rlck9uVG91Y2hlZGApO1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1Zyhgc2V0RGlzYWJsZWRTdGF0ZTogJHtpc0Rpc2FibGVkfWApO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuZm9ybUVsZW1lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgb25CbHVyKCkge1xuICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtRWxlbWVudENvbXBvbmVudENoYW5nZXMgZXh0ZW5kcyBSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudENoYW5nZXMge1xuXG4gIGxhYmVsOiBTdHJpbmdDaGFuZ2UsXG4gIHRpdGxlOiBTdHJpbmdDaGFuZ2UsXG4gIG5hbWU6IFN0cmluZ0NoYW5nZSxcbiAgbGFiZWxUaXRsZTogU3RyaW5nQ2hhbmdlLFxuICBsYWJlbENsYXNzOiBTdHJpbmdDaGFuZ2UsXG4gIGlucHV0Q2xhc3M6IFN0cmluZ0NoYW5nZSxcbiAgcmVxdWlyZWQ6IEJvb2xlYW5DaGFuZ2UsXG4gIHJlcXVpcmVkU2ltYm9sOiBTdHJpbmdDaGFuZ2UsXG4gIHJlcXVpcmVkU2ltYm9sUG9zaXRpb246IFN0cmluZ0NoYW5nZSxcbiAgZGlzYWJsZWQ6IEJvb2xlYW5DaGFuZ2UsXG4gIHJlYWRvbmx5OiBCb29sZWFuQ2hhbmdlLFxuICBoYXNFcnJvcjogQm9vbGVhbkNoYW5nZSxcbiAgaGlkZGVuTGFiZWw6IEJvb2xlYW5DaGFuZ2UsXG4gIGVycm9yOiBTdHJpbmdDaGFuZ2UsXG4gIGZvY3VzOiBPYnNlcnZhYmxlQ2hhbmdlXG59XG4iXX0=
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lbGVtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWluYWlsLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9mb3JtL2Zvcm0tZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckosT0FBTyxFQUFDLDBCQUEwQixFQUFvQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzlHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IseUJBQXlCLEVBQUUsY0FBYyxFQUFpQyxNQUFNLG1CQUFtQixDQUFDO0FBQzNILE9BQU8sRUFBNkIsc0JBQXNCLEVBQXNCLE1BQU0saUNBQWlDLENBQUM7O0FBU3hILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSwwQkFBMEI7SUFxRWxFLFlBQW9CLGNBQWlDLEVBRWpDLG9CQUEwQztRQUM1RCxLQUFLLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFIMUIsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBRWpDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFyRDlELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsbUJBQWMsR0FBVyxjQUFjLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUU5RywyQkFBc0IsR0FBcUIsY0FBYyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUzSSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFB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QUFNO2dCQUdQLE9BQU87c0JBRE4sTUFBTTtnQkFHUCxLQUFLO3NCQURKLEtBQUs7Z0JBR04sT0FBTztzQkFETixLQUFLO2dCQUdOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFHTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBR04sYUFBYTtzQkFEWixLQUFLO2dCQUdOLGNBQWM7c0JBRGIsS0FBSztnQkFHTixrQkFBa0I7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtSZXNwb25zaXZlRWxlbWVudENvbXBvbmVudCwgUmVzcG9uc2l2ZUVsZW1lbnRDb21wb25lbnRDaGFuZ2VzfSBmcm9tIFwiLi4vcmVzcG9uc2l2ZS1lbGVtZW50LmNvbXBvbmVudFwiO1xuaW1wb3J0IHtpc05vdEJsYW5rT3JOdWxsfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvY29tbW9uLm9wZXJhdG9yc1wiO1xuaW1wb3J0IHtCb29sZWFuQ2hhbmdlLCBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLCBnZXRDb25maWdWYWx1ZSwgT2JzZXJ2YWJsZUNoYW5nZSwgU3RyaW5nQ2hhbmdlfSBmcm9tIFwiLi4vYmFzZS5jb21wb25lbnRcIjtcbmltcG9ydCB7Rm9ybUVsZW1lbnRDb21wb25lbnRDb25maWcsIE5HX0lOQUlMX0NPTU1PTl9DT05GSUcsIE5nSW5haWxDb21tb25Db25maWd9IGZyb20gXCIuLi8uLi8uLi9uZy1pbmFpbC1jb21tb24uY29uZmlnXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luYWlsLWZvcm0tZWxlbWVudCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDSEFOR0VfREVURUNUSU9OX1NUUkFURUdZLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1FbGVtZW50Q29tcG9uZW50IGV4dGVuZHMgUmVzcG9uc2l2ZUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG5cbiAgb25DaGFuZ2U6ICh2YWw6IGFueSkgPT4gdm9pZFxuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQ7XG5cbiAgQElucHV0KClcbiAgbGFiZWw6IE5vbk51bGxhYmxlPHN0cmluZz47XG4gIEBJbnB1dCgpXG4gIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIG5hbWU6IHN0cmluZztcbiAgQElucHV0KClcbiAgbGFiZWxUaXRsZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBsYWJlbENsYXNzOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGlucHV0Q2xhc3M6IHN0cmluZztcbiAgQElucHV0KClcbiAgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcmVxdWlyZWRTaW1ib2w6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5yZXF1aXJlZFNpbWJvbCwgJyonKTtcbiAgQElucHV0KClcbiAgcmVxdWlyZWRTaW1ib2xQb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uLCAnbGVmdCcpO1xuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBoYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KClcbiAgaGFzRXJyb3JDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBJbnB1dCgpXG4gIGhpZGRlbkxhYmVsOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIGVycm9yOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIEBPdXRwdXQoKVxuICBlcnJvckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KClcbiAgZW50ZXJVcCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQElucHV0KClcbiAgZm9jdXM6IE9ic2VydmFibGU8Ym9vbGVhbiB8IHZvaWQ+O1xuICBASW5wdXQoKVxuICBwb3BvdmVyOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXJCdXR0b25JY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXJCdXR0b25UaXRsZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBwb3BvdmVySGVhZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHBvcG92ZXJDb250ZW50OiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGNsZWFuRXJyb3JPbkNoYW5nZTogYm9vbGVhbiA9IGdldENvbmZpZ1ZhbHVlKHRoaXMuZm9ybUVsZW1lbnRMaWJDb25maWc/LmZvcm1FbGVtZW50Q29tcG9uZW50Py5jbGVhbkVycm9yT25DaGFuZ2UsIHRydWUpO1xuXG4gIGdldExhYmVsID0gKCkgPT4gYCR7KHRoaXMucmVxdWlyZWQgJiYgdGhpcy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uID09PSAnbGVmdCcpID8gYCR7dGhpcy5yZXF1aXJlZFNpbWJvbH0gYCA6ICcnfSR7dGhpcy5sYWJlbH0keyh0aGlzLnJlcXVpcmVkICYmIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbiA9PT0gJ3JpZ2h0JykgPyBgICR7dGhpcy5yZXF1aXJlZFNpbWJvbH1gIDogJyd9YFxuXG4gIGlzVGhlcmVFcnJvciA9ICgpOiBib29sZWFuID0+IHRoaXMuaGFzRXJyb3IgfHwgaXNOb3RCbGFua09yTnVsbCh0aGlzLmVycm9yKTtcblxuICBzaG93RXJyb3IgPSAoKTogYm9vbGVhbiA9PiB0aGlzLmlzVGhlcmVFcnJvcigpICYmIGlzTm90QmxhbmtPck51bGwodGhpcy5lcnJvcik7XG5cbiAgZ2V0QXJpYURlc2NyaWJlZEJ5ID0gKCk6IHN0cmluZyA9PiB0aGlzLnNob3dFcnJvcigpIHx8IGlzTm90QmxhbmtPck51bGwodGhpcy5kZXNjcmlwdGlvbikgPyBgJHt0aGlzLmlkfS1kZXNjcmlwdGlvbmAgOiB1bmRlZmluZWQ7XG5cbiAgLy8gc2hvd1BvcG92ZXIgPSAoKTogYm9vbGVhbiA9PiBpc05vdEJsYW5rT3JOdWxsKHRoaXMucG9wb3ZlckhlYWRlcikgfHwgaXNOb3RCbGFua09yTnVsbCh0aGlzLnBvcG92ZXJDb250ZW50KTtcbiAgc2hvd1BvcG92ZXIgPSAoKTogYm9vbGVhbiA9PiB0aGlzLnBvcG92ZXIgPT09IHRydWU7XG5cbiAgaGFzRm9jdXMgPSAoKTpib29sZWFuID0+IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ/LmlkID09IHRoaXMuaWQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtRWxlbWVudENkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIEBJbmplY3QoTkdfSU5BSUxfQ09NTU9OX0NPTkZJRylcbiAgICAgICAgICAgICAgcHJpdmF0ZSBmb3JtRWxlbWVudExpYkNvbmZpZz86IE5nSW5haWxDb21tb25Db25maWcpIHtcbiAgICBzdXBlcihmb3JtRWxlbWVudENkciwgZm9ybUVsZW1lbnRMaWJDb25maWcpO1xuICAgIHN1cGVyLm92ZXJyaWRlQ29uZmlnKGZvcm1FbGVtZW50TGliQ29uZmlnPy5mb3JtRWxlbWVudENvbXBvbmVudCk7XG4gIH1cblxuICBvdmVycmlkZUNvbmZpZyhjb25maWc6IEZvcm1FbGVtZW50Q29tcG9uZW50Q29uZmlnKSB7XG5cbiAgICBpZiAoY29uZmlnKSB7XG5cbiAgICAgIHN1cGVyLm92ZXJyaWRlQ29uZmlnKGNvbmZpZyk7XG4gICAgICB0aGlzLnJlcXVpcmVkU2ltYm9sID0gZ2V0Q29uZmlnVmFsdWUoY29uZmlnLnJlcXVpcmVkU2ltYm9sLCB0aGlzLnJlcXVpcmVkU2ltYm9sKTtcbiAgICAgIHRoaXMucmVxdWlyZWRTaW1ib2xQb3NpdGlvbiA9IGdldENvbmZpZ1ZhbHVlKGNvbmZpZy5yZXF1aXJlZFNpbWJvbFBvc2l0aW9uLCB0aGlzLnJlcXVpcmVkU2ltYm9sUG9zaXRpb24pO1xuICAgICAgdGhpcy5jbGVhbkVycm9yT25DaGFuZ2UgPSBnZXRDb25maWdWYWx1ZShjb25maWcuY2xlYW5FcnJvck9uQ2hhbmdlLCB0aGlzLmNsZWFuRXJyb3JPbkNoYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XG4gICAgdGhpcy50aXRsZSA9IHRoaXMuZ2V0Tm90QmxhbmtWYWx1ZSh0aGlzLnRpdGxlKTtcbiAgICB0aGlzLm5hbWUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5uYW1lKTtcbiAgICB0aGlzLmxhYmVsVGl0bGUgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5sYWJlbFRpdGxlKTtcbiAgICB0aGlzLnBvcG92ZXJCdXR0b25UaXRsZSA9IHRoaXMuZ2V0Tm90QmxhbmtWYWx1ZSh0aGlzLnBvcG92ZXJCdXR0b25UaXRsZSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYCR7dGhpcy5sb2dQcmVmaXh9WyR7dGhpcy5sYWJlbH1dYDtcbiAgfVxuXG4gIHNldERlc2NFcnJvcihzOiBzdHJpbmcpIHtcblxuICAgIHRoaXMuZXJyb3IgPSBzO1xuICAgIHRoaXMuZm9ybUVsZW1lbnRDZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgc2V0SGFzRXJyb3IoYjogYm9vbGVhbikge1xuXG4gICAgdGhpcy5oYXNFcnJvciA9IGI7XG4gICAgdGhpcy5mb3JtRWxlbWVudENkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBjbGVhbkVycm9yKCkge1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG5cbiAgICAgIGlmICh0aGlzLmhhc0Vycm9yKSB7XG5cbiAgICAgICAgdGhpcy5oYXNFcnJvciA9IGZhbHNlO1xuICAgICAgICB0aGlzLmhhc0Vycm9yQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5lcnJvcikge1xuXG4gICAgICAgIHRoaXMuZXJyb3IgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuZXJyb3JDaGFuZ2UuZW1pdCh1bmRlZmluZWQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmZvcm1FbGVtZW50Q2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuXG4gICAgdGhpcy5lbWl0RGVidWcoYHJlZ2lzdGVyT25DaGFuZ2VgKTtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgcmVnaXN0ZXJPblRvdWNoZWRgKTtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuXG4gICAgdGhpcy5lbWl0RGVidWcoYHNldERpc2FibGVkU3RhdGU6ICR7aXNEaXNhYmxlZH1gKTtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLmZvcm1FbGVtZW50Q2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUVsZW1lbnRDb21wb25lbnRDaGFuZ2VzIGV4dGVuZHMgUmVzcG9uc2l2ZUVsZW1lbnRDb21wb25lbnRDaGFuZ2VzIHtcblxuICBsYWJlbDogU3RyaW5nQ2hhbmdlLFxuICB0aXRsZTogU3RyaW5nQ2hhbmdlLFxuICBuYW1lOiBTdHJpbmdDaGFuZ2UsXG4gIGxhYmVsVGl0bGU6IFN0cmluZ0NoYW5nZSxcbiAgbGFiZWxDbGFzczogU3RyaW5nQ2hhbmdlLFxuICBpbnB1dENsYXNzOiBTdHJpbmdDaGFuZ2UsXG4gIHJlcXVpcmVkOiBCb29sZWFuQ2hhbmdlLFxuICByZXF1aXJlZFNpbWJvbDogU3RyaW5nQ2hhbmdlLFxuICByZXF1aXJlZFNpbWJvbFBvc2l0aW9uOiBTdHJpbmdDaGFuZ2UsXG4gIGRpc2FibGVkOiBCb29sZWFuQ2hhbmdlLFxuICByZWFkb25seTogQm9vbGVhbkNoYW5nZSxcbiAgaGFzRXJyb3I6IEJvb2xlYW5DaGFuZ2UsXG4gIGhpZGRlbkxhYmVsOiBCb29sZWFuQ2hhbmdlLFxuICBlcnJvcjogU3RyaW5nQ2hhbmdlLFxuICBmb2N1czogT2JzZXJ2YWJsZUNoYW5nZVxufVxuIl19
@@ -6,9 +6,9 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
6
  import { CHANGE_DETECTION_STRATEGY, getConfigValue } from '../../base.component';
7
7
  import { NG_INAIL_COMMON_CONFIG } from '../../../../ng-inail-common.config';
8
8
  import * as i0 from "@angular/core";
9
- import * as i1 from "../../ux/popover/popover.component";
10
- import * as i2 from "@angular/common";
11
- import * as i3 from "@angular/forms";
9
+ import * as i1 from "@angular/common";
10
+ import * as i2 from "@angular/forms";
11
+ import * as i3 from "../../ux/popover/popover.component";
12
12
  const isValidInputModel = (s) => isInItalianFormat(s) || isInISO8601Format(s) || isLongTime(s);
13
13
  const isLongTime = (o) => o && (typeof o === 'number');
14
14
  const ACCEPTED_INPUTS = ['/', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'Backspace', 'Delete', 'Tab', 'ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'];
@@ -191,15 +191,15 @@ export class InputDateComponent extends FormElementComponent {
191
191
  }
192
192
  }
193
193
  }
194
- InputDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputDateComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
195
- InputDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: InputDateComponent, selector: "inail-input-date", inputs: { options: "options", selfValidation: "selfValidation", selfValidationError: "selfValidationError", enabledDates: "enabledDates", disabledDates: "disabledDates", disableFutureDates: "disableFutureDates", disablePastDates: "disablePastDates", disableCurrentDate: "disableCurrentDate", reinit: "reinit", value: "value" }, outputs: { valueChange: "valueChange" }, providers: [
194
+ InputDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InputDateComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
195
+ InputDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: InputDateComponent, selector: "inail-input-date", inputs: { options: "options", selfValidation: "selfValidation", selfValidationError: "selfValidationError", enabledDates: "enabledDates", disabledDates: "disabledDates", disableFutureDates: "disableFutureDates", disablePastDates: "disablePastDates", disableCurrentDate: "disableCurrentDate", reinit: "reinit", value: "value" }, outputs: { valueChange: "valueChange" }, providers: [
196
196
  {
197
197
  provide: NG_VALUE_ACCESSOR,
198
198
  useExisting: forwardRef(() => InputDateComponent),
199
199
  multi: true
200
200
  }
201
- ], viewQueries: [{ propertyName: "formControlElement", first: true, predicate: ["formControl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"date datePicker {{getResponsiveClass()}} noPaddingLeft {{class}}\"\n [ngClass]=\"{'has-error': isThereDataError()}\">\n <div class=\"form-group\">\n <div class=\"input-relative\">\n <label *ngIf=\"label\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n class=\"control-label {{labelClass}}\"\n title=\"{{labelTitle}}\"\n for=\"{{id}}\" [innerHTML]=\"getLabel()\"></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 <input id=\"{{id}}\"\n #formControl\n class=\"form-control\"\n [ngClass]=\"inputClass\"\n title=\"GG/MM/AAAA\"\n placeholder=\"GG/MM/AAAA\"\n type=\"text\"\n (change)=\"onChangeHandler($event)\"\n (paste)=\"onChangeHandler($event)\"\n (keyup)=\"onChangeHandler($event)\"\n [disabled]=\"this.disabled\"\n [readonly]=\"this.readonly\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereDataError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n (keyup.enter)=\"enterUp.emit()\"\n (keydown)=\"onKeyDown($event)\"\n [(ngModel)]=\"this.visibleData\">\n <em class=\"fa fa-calendar\"\n title=\"Calendario\"\n (click)=\"formControl.focus()\"></em>\n </div>\n <div *ngIf=\"showDataError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+getDescError()\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"description\"></div>\n </div>\n <div *ngIf=\"description && !showDataError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n </div>\n</div>\n", styles: [""], components: [{ type: i1.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
202
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputDateComponent, decorators: [{
201
+ ], viewQueries: [{ propertyName: "formControlElement", first: true, predicate: ["formControl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"date datePicker {{getResponsiveClass()}} noPaddingLeft {{class}}\"\n [ngClass]=\"{'has-error': isThereDataError()}\">\n <div class=\"form-group\">\n <div class=\"input-relative\">\n <label *ngIf=\"label\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n class=\"control-label {{labelClass}}\"\n title=\"{{labelTitle}}\"\n for=\"{{id}}\" [innerHTML]=\"getLabel()\"></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 <input id=\"{{id}}\"\n #formControl\n class=\"form-control\"\n [ngClass]=\"inputClass\"\n title=\"GG/MM/AAAA\"\n placeholder=\"GG/MM/AAAA\"\n type=\"text\"\n (change)=\"onChangeHandler($event)\"\n (paste)=\"onChangeHandler($event)\"\n (keyup)=\"onChangeHandler($event)\"\n [disabled]=\"this.disabled\"\n [readonly]=\"this.readonly\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereDataError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n (keyup.enter)=\"enterUp.emit()\"\n (keydown)=\"onKeyDown($event)\"\n [(ngModel)]=\"this.visibleData\">\n <em class=\"fa fa-calendar\"\n title=\"Calendario\"\n (click)=\"formControl.focus()\"></em>\n </div>\n <div *ngIf=\"showDataError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+getDescError()\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"description\"></div>\n </div>\n <div *ngIf=\"description && !showDataError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InputDateComponent, decorators: [{
203
203
  type: Component,
204
204
  args: [{ selector: 'inail-input-date', changeDetection: CHANGE_DETECTION_STRATEGY, encapsulation: ViewEncapsulation.None, providers: [
205
205
  {
@@ -207,7 +207,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
207
207
  useExisting: forwardRef(() => InputDateComponent),
208
208
  multi: true
209
209
  }
210
- ], template: "<div class=\"date datePicker {{getResponsiveClass()}} noPaddingLeft {{class}}\"\n [ngClass]=\"{'has-error': isThereDataError()}\">\n <div class=\"form-group\">\n <div class=\"input-relative\">\n <label *ngIf=\"label\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n class=\"control-label {{labelClass}}\"\n title=\"{{labelTitle}}\"\n for=\"{{id}}\" [innerHTML]=\"getLabel()\"></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 <input id=\"{{id}}\"\n #formControl\n class=\"form-control\"\n [ngClass]=\"inputClass\"\n title=\"GG/MM/AAAA\"\n placeholder=\"GG/MM/AAAA\"\n type=\"text\"\n (change)=\"onChangeHandler($event)\"\n (paste)=\"onChangeHandler($event)\"\n (keyup)=\"onChangeHandler($event)\"\n [disabled]=\"this.disabled\"\n [readonly]=\"this.readonly\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereDataError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n (keyup.enter)=\"enterUp.emit()\"\n (keydown)=\"onKeyDown($event)\"\n [(ngModel)]=\"this.visibleData\">\n <em class=\"fa fa-calendar\"\n title=\"Calendario\"\n (click)=\"formControl.focus()\"></em>\n </div>\n <div *ngIf=\"showDataError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+getDescError()\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"description\"></div>\n </div>\n <div *ngIf=\"description && !showDataError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n </div>\n</div>\n", styles: [""] }]
210
+ ], template: "<div class=\"date datePicker {{getResponsiveClass()}} noPaddingLeft {{class}}\"\n [ngClass]=\"{'has-error': isThereDataError()}\">\n <div class=\"form-group\">\n <div class=\"input-relative\">\n <label *ngIf=\"label\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n class=\"control-label {{labelClass}}\"\n title=\"{{labelTitle}}\"\n for=\"{{id}}\" [innerHTML]=\"getLabel()\"></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 <input id=\"{{id}}\"\n #formControl\n class=\"form-control\"\n [ngClass]=\"inputClass\"\n title=\"GG/MM/AAAA\"\n placeholder=\"GG/MM/AAAA\"\n type=\"text\"\n (change)=\"onChangeHandler($event)\"\n (paste)=\"onChangeHandler($event)\"\n (keyup)=\"onChangeHandler($event)\"\n [disabled]=\"this.disabled\"\n [readonly]=\"this.readonly\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereDataError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n (keyup.enter)=\"enterUp.emit()\"\n (keydown)=\"onKeyDown($event)\"\n [(ngModel)]=\"this.visibleData\">\n <em class=\"fa fa-calendar\"\n title=\"Calendario\"\n (click)=\"formControl.focus()\"></em>\n </div>\n <div *ngIf=\"showDataError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+getDescError()\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"description\"></div>\n </div>\n <div *ngIf=\"description && !showDataError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n </div>\n</div>\n" }]
211
211
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
212
212
  type: Inject,
213
213
  args: [NG_INAIL_COMMON_CONFIG]
@@ -4,8 +4,8 @@ import { setFocus } from "../../../../utils/common.operators";
4
4
  import { NG_INAIL_COMMON_CONFIG } from "../../../../ng-inail-common.config";
5
5
  import { getConfigValue } from "../../base.component";
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "../../ux/popover/popover.component";
8
- import * as i2 from "@angular/common";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "../../ux/popover/popover.component";
9
9
  export class InputFileComponent extends FormElementComponent {
10
10
  constructor(cdr, libConfig) {
11
11
  super(cdr, libConfig);
@@ -66,11 +66,11 @@ export class InputFileComponent extends FormElementComponent {
66
66
  this.cdr.detectChanges();
67
67
  }
68
68
  }
69
- InputFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputFileComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
70
- InputFileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: InputFileComponent, selector: "inail-input-file", inputs: { placeholder: "placeholder", chooseButtonText: "chooseButtonText", addButtonText: "addButtonText", chooseButton: "chooseButton", addButton: "addButton", accept: "accept" }, outputs: { fileChange: "fileChange" }, viewQueries: [{ propertyName: "inputText", first: true, predicate: ["inputText"], descendants: true, static: true }, { propertyName: "inputTypeFile", first: true, predicate: ["inputTypeFile"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"form-group {{getResponsiveClass()}} noPaddingLeft {{class}} uploadFile inail-input-file\"\n [ngClass]=\"{'has-error': isThereError()}\">\n <div class=\"col-xs-12 noPaddingLeft\">\n <div class=\"col-xs-12 noPaddingLeft\" *ngIf=\"label\">\n <label [for]=\"id\"\n class=\"{{labelClass}}\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n [attr.title]=\"labelTitle\"\n [innerHTML]=\"getLabel()\">\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 <div class=\"col-xs-4 upload-file-button-container noPaddingLeft\">\n <label for=\"{{id}}-input\"\n class=\"sr-only\">\n File\n </label>\n <input #inputText\n id=\"{{id}}-input\"\n class=\"col-xs-12 form-control {{inputClass}}\"\n readonly\n type=\"text\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.title]=\"title\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n [value]=\"fileModel?.name\"\n (click)=\"promptUpload()\">\n <button class=\"innerx\" (click)=\"reset()\">\n <span class=\"reset\"></span>\n </button>\n <!-- <span [innerHTML]=\"description\"></span>-->\n </div>\n <div class=\"col-xs-8\">\n <div class=\"fileUpload pull-left noMarginLeft\"\n [hidden]=\"!chooseButton\">\n <div tabindex=\"0\"\n (keyup.enter)=\"inputTypeFile.click()\"\n class=\"btn btn-primary btn-fake noMargin col-xs-12 upload-container\"\n [ngClass]=\"{'disabled': disabled}\">\n <span [innerHTML]=\"chooseButtonText\"></span>\n <input id=\"{{id}}\"\n #inputTypeFile\n tabindex=\"-1\"\n [attr.accept]=\"accept\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n class=\"btn btn-primary upload\"\n type=\"file\"\n (change)=\"changeModel($event)\">\n </div>\n </div>\n <div *ngIf=\"addButton\" class=\"fileUpload pull-left padding\">\n <div class=\"form-group\">\n <button class=\"btn btn-primary add-file\"\n [disabled]=\"!fileModel\"\n (click)=\"fileChange.emit(fileModel)\"\n [innerHTML]=\"addButtonText\">\n </button>\n </div>\n </div>\n <div class=\"fileSubmit col-xs-4 noMarginLeft\">\n <button class=\"btn btn-primary noMargin btn-inline col-xs-12\">Carica il file</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [".inail-input-file .btn-fake input{position:absolute;opacity:0!important}\n"], components: [{ type: i1.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputFileComponent, decorators: [{
69
+ InputFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InputFileComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NG_INAIL_COMMON_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
70
+ InputFileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: InputFileComponent, selector: "inail-input-file", inputs: { placeholder: "placeholder", chooseButtonText: "chooseButtonText", addButtonText: "addButtonText", chooseButton: "chooseButton", addButton: "addButton", accept: "accept" }, outputs: { fileChange: "fileChange" }, viewQueries: [{ propertyName: "inputText", first: true, predicate: ["inputText"], descendants: true, static: true }, { propertyName: "inputTypeFile", first: true, predicate: ["inputTypeFile"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"form-group {{getResponsiveClass()}} noPaddingLeft {{class}} uploadFile inail-input-file\"\n [ngClass]=\"{'has-error': isThereError()}\">\n <div class=\"col-xs-12 noPaddingLeft\">\n <div class=\"col-xs-12 noPaddingLeft\" *ngIf=\"label\">\n <label [for]=\"id\"\n class=\"{{labelClass}}\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n [attr.title]=\"labelTitle\"\n [innerHTML]=\"getLabel()\">\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 <div class=\"col-xs-4 upload-file-button-container noPaddingLeft\">\n <label for=\"{{id}}-input\"\n class=\"sr-only\">\n File\n </label>\n <input #inputText\n id=\"{{id}}-input\"\n class=\"col-xs-12 form-control {{inputClass}}\"\n readonly\n type=\"text\"\n [ngClass]=\"{'disabled': disabled}\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.title]=\"title\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n [value]=\"fileModel?.name\"\n (click)=\"promptUpload()\">\n <button class=\"innerx\" (click)=\"reset()\">\n <span *ngIf=\"!disabled\" class=\"reset\"></span>\n </button>\n <!-- <span [innerHTML]=\"description\"></span>-->\n </div>\n <div class=\"col-xs-8\">\n <div class=\"fileUpload pull-left noMarginLeft\"\n [hidden]=\"!chooseButton\">\n <div tabindex=\"0\"\n (keyup.enter)=\"inputTypeFile.click()\"\n class=\"btn btn-primary btn-fake noMargin col-xs-12 upload-container\"\n [ngClass]=\"{'disabled': disabled}\">\n <span [innerHTML]=\"chooseButtonText\"></span>\n <input id=\"{{id}}\"\n #inputTypeFile\n tabindex=\"-1\"\n [attr.accept]=\"accept\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n class=\"btn btn-primary upload\"\n type=\"file\"\n (change)=\"changeModel($event)\">\n </div>\n </div>\n <div *ngIf=\"addButton\" class=\"fileUpload pull-left padding\">\n <div class=\"form-group\">\n <button class=\"btn btn-primary add-file\"\n [disabled]=\"!fileModel || disabled\"\n (click)=\"fileChange.emit(fileModel)\"\n [innerHTML]=\"addButtonText\">\n </button>\n </div>\n </div>\n <div class=\"fileSubmit col-xs-4 noMarginLeft\">\n <button class=\"btn btn-primary noMargin btn-inline col-xs-12\">Carica il file</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [".inail-input-file .btn-fake input{position:absolute;opacity:0!important}.inail-input-file .upload-file-button-container input[type=text].form-control[disabled]{background-color:#eee!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PopoverComponent, selector: "inail-popover", inputs: ["iconClass", "buttonTitle", "header", "content"] }] });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InputFileComponent, decorators: [{
72
72
  type: Component,
73
- args: [{ selector: 'inail-input-file', template: "<div class=\"form-group {{getResponsiveClass()}} noPaddingLeft {{class}} uploadFile inail-input-file\"\n [ngClass]=\"{'has-error': isThereError()}\">\n <div class=\"col-xs-12 noPaddingLeft\">\n <div class=\"col-xs-12 noPaddingLeft\" *ngIf=\"label\">\n <label [for]=\"id\"\n class=\"{{labelClass}}\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n [attr.title]=\"labelTitle\"\n [innerHTML]=\"getLabel()\">\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 <div class=\"col-xs-4 upload-file-button-container noPaddingLeft\">\n <label for=\"{{id}}-input\"\n class=\"sr-only\">\n File\n </label>\n <input #inputText\n id=\"{{id}}-input\"\n class=\"col-xs-12 form-control {{inputClass}}\"\n readonly\n type=\"text\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.title]=\"title\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n [value]=\"fileModel?.name\"\n (click)=\"promptUpload()\">\n <button class=\"innerx\" (click)=\"reset()\">\n <span class=\"reset\"></span>\n </button>\n <!-- <span [innerHTML]=\"description\"></span>-->\n </div>\n <div class=\"col-xs-8\">\n <div class=\"fileUpload pull-left noMarginLeft\"\n [hidden]=\"!chooseButton\">\n <div tabindex=\"0\"\n (keyup.enter)=\"inputTypeFile.click()\"\n class=\"btn btn-primary btn-fake noMargin col-xs-12 upload-container\"\n [ngClass]=\"{'disabled': disabled}\">\n <span [innerHTML]=\"chooseButtonText\"></span>\n <input id=\"{{id}}\"\n #inputTypeFile\n tabindex=\"-1\"\n [attr.accept]=\"accept\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n class=\"btn btn-primary upload\"\n type=\"file\"\n (change)=\"changeModel($event)\">\n </div>\n </div>\n <div *ngIf=\"addButton\" class=\"fileUpload pull-left padding\">\n <div class=\"form-group\">\n <button class=\"btn btn-primary add-file\"\n [disabled]=\"!fileModel\"\n (click)=\"fileChange.emit(fileModel)\"\n [innerHTML]=\"addButtonText\">\n </button>\n </div>\n </div>\n <div class=\"fileSubmit col-xs-4 noMarginLeft\">\n <button class=\"btn btn-primary noMargin btn-inline col-xs-12\">Carica il file</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [".inail-input-file .btn-fake input{position:absolute;opacity:0!important}\n"] }]
73
+ args: [{ selector: 'inail-input-file', template: "<div class=\"form-group {{getResponsiveClass()}} noPaddingLeft {{class}} uploadFile inail-input-file\"\n [ngClass]=\"{'has-error': isThereError()}\">\n <div class=\"col-xs-12 noPaddingLeft\">\n <div class=\"col-xs-12 noPaddingLeft\" *ngIf=\"label\">\n <label [for]=\"id\"\n class=\"{{labelClass}}\"\n [ngClass]=\"{'sr-only': hiddenLabel}\"\n [attr.title]=\"labelTitle\"\n [innerHTML]=\"getLabel()\">\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 <div class=\"col-xs-4 upload-file-button-container noPaddingLeft\">\n <label for=\"{{id}}-input\"\n class=\"sr-only\">\n File\n </label>\n <input #inputText\n id=\"{{id}}-input\"\n class=\"col-xs-12 form-control {{inputClass}}\"\n readonly\n type=\"text\"\n [ngClass]=\"{'disabled': disabled}\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.title]=\"title\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-required]=\"required === true ? true : undefined\"\n [attr.aria-invalid]=\"isThereError() === true ? true : undefined\"\n [attr.aria-describedBy]=\"getAriaDescribedBy()\"\n [value]=\"fileModel?.name\"\n (click)=\"promptUpload()\">\n <button class=\"innerx\" (click)=\"reset()\">\n <span *ngIf=\"!disabled\" class=\"reset\"></span>\n </button>\n <!-- <span [innerHTML]=\"description\"></span>-->\n </div>\n <div class=\"col-xs-8\">\n <div class=\"fileUpload pull-left noMarginLeft\"\n [hidden]=\"!chooseButton\">\n <div tabindex=\"0\"\n (keyup.enter)=\"inputTypeFile.click()\"\n class=\"btn btn-primary btn-fake noMargin col-xs-12 upload-container\"\n [ngClass]=\"{'disabled': disabled}\">\n <span [innerHTML]=\"chooseButtonText\"></span>\n <input id=\"{{id}}\"\n #inputTypeFile\n tabindex=\"-1\"\n [attr.accept]=\"accept\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n class=\"btn btn-primary upload\"\n type=\"file\"\n (change)=\"changeModel($event)\">\n </div>\n </div>\n <div *ngIf=\"addButton\" class=\"fileUpload pull-left padding\">\n <div class=\"form-group\">\n <button class=\"btn btn-primary add-file\"\n [disabled]=\"!fileModel || disabled\"\n (click)=\"fileChange.emit(fileModel)\"\n [innerHTML]=\"addButtonText\">\n </button>\n </div>\n </div>\n <div class=\"fileSubmit col-xs-4 noMarginLeft\">\n <button class=\"btn btn-primary noMargin btn-inline col-xs-12\">Carica il file</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"showError()\" [id]=\"id+'-description'\">\n <div class=\"msg msg-errore\">\n <strong [innerHTML]=\"'ERRORE: '+this.error\"></strong>\n </div>\n <div *ngIf=\"description\" [innerHTML]=\"this.description\"></div>\n </div>\n <div *ngIf=\"description && !showError()\"\n [id]=\"id+'-description'\"\n [innerHTML]=\"this.description\">\n </div>\n</div>\n", styles: [".inail-input-file .btn-fake input{position:absolute;opacity:0!important}.inail-input-file .upload-file-button-container input[type=text].form-control[disabled]{background-color:#eee!important}\n"] }]
74
74
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
75
75
  type: Inject,
76
76
  args: [NG_INAIL_COMMON_CONFIG]
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
95
95
  type: ViewChild,
96
96
  args: ['inputTypeFile', { static: true }]
97
97
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvZm9ybS9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vaW5wdXQtZmlsZS9pbnB1dC1maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUMsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQWlCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuTCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDNUQsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLG9DQUFvQyxDQUFDO0FBQy9GLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU9wRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsb0JBQW9CO0lBeUIxRCxZQUFvQixHQUFzQixFQUV0QixTQUE4QjtRQUNoRCxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBSEosUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFFdEIsY0FBUyxHQUFULFNBQVMsQ0FBcUI7UUF4QmxELGdCQUFXLEdBQVcsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWpHLHFCQUFnQixHQUFXLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFFbEgsa0JBQWEsR0FBVyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFdEcsaUJBQVksR0FBWSxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFL0YsY0FBUyxHQUFZLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6Riw2RUFBNkU7UUFFN0UsV0FBTSxHQUFXLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUV2RixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQWFwQyxJQUFJLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDO1FBQ3RDLEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFFaEMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsUUFBUTtRQUVOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVqQixJQUFJLENBQUMsU0FBUyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFL0IsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBRWQsSUFBSSxDQUFDLElBQUksQ0FDUCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQWUsRUFBRSxFQUFFO2dCQUV2QyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUMvQixRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDakQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELGVBQWU7SUFFZixDQUFDO0lBRUQsV0FBVztRQUVULEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWTtRQUNWLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBYTtRQUV2QixhQUFhO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUvRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDdEM7UUFFRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUUzQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxLQUFLO1FBRVYsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQTtRQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnSEFuR1Usa0JBQWtCLG1EQTBCVCxzQkFBc0I7b0dBMUIvQixrQkFBa0Isc2lCQ1gvQixpL0dBdUZBOzRGRDVFYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkE4QmYsTUFBTTsyQkFBQyxzQkFBc0I7NENBdkIxQyxXQUFXO3NCQURWLEtBQUs7Z0JBR04sZ0JBQWdCO3NCQURmLEtBQUs7Z0JBR04sYUFBYTtzQkFEWixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUdOLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFJdEMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtRWxlbWVudENvbXBvbmVudH0gZnJvbSBcIi4uL2Zvcm0tZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7c2V0Rm9jdXN9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge05HX0lOQUlMX0NPTU1PTl9DT05GSUcsIE5nSW5haWxDb21tb25Db25maWd9IGZyb20gXCIuLi8uLi8uLi8uLi9uZy1pbmFpbC1jb21tb24uY29uZmlnXCI7XG5pbXBvcnQge2dldENvbmZpZ1ZhbHVlfSBmcm9tIFwiLi4vLi4vYmFzZS5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtaW5wdXQtZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtZmlsZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRGaWxlQ29tcG9uZW50IGV4dGVuZHMgRm9ybUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlcjogc3RyaW5nID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8ucGxhY2Vob2xkZXIsIHVuZGVmaW5lZCk7XG4gIEBJbnB1dCgpXG4gIGNob29zZUJ1dHRvblRleHQ6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMubGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQ/LmNob29zZUJ1dHRvblRleHQsICdTY2VnbGkgaWwgZmlsZScpO1xuICBASW5wdXQoKVxuICBhZGRCdXR0b25UZXh0OiBzdHJpbmcgPSBnZXRDb25maWdWYWx1ZSh0aGlzLmxpYkNvbmZpZz8uaW5wdXRGaWxlQ29tcG9uZW50Py5hZGRCdXR0b25UZXh0LCAnQWdnaXVuZ2knKTtcbiAgQElucHV0KClcbiAgY2hvb3NlQnV0dG9uOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8uY2hvb3NlQnV0dG9uLCB0cnVlKTtcbiAgQElucHV0KClcbiAgYWRkQnV0dG9uOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8uYWRkQnV0dG9uLCB0cnVlKTtcbiAgLyoqIEVzdGVuc2lvbmkgYWNjZXR0YXRlIHNlcGFyYXRlIGRhIHZpcmdvbGEgKGVzZW1waW86IFwiLnBkZiwgLnR4dCwgLmRvY1wiKSAqL1xuICBASW5wdXQoKVxuICBhY2NlcHQ6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMubGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQ/LmFjY2VwdCwgdW5kZWZpbmVkKTtcbiAgQE91dHB1dCgpXG4gIGZpbGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGU+KCk7XG4gIGZpbGVNb2RlbDogRmlsZTtcblxuICBAVmlld0NoaWxkKCdpbnB1dFRleHQnLCB7c3RhdGljOiB0cnVlfSlcbiAgaW5wdXRUZXh0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdpbnB1dFR5cGVGaWxlJywge3N0YXRpYzogdHJ1ZX0pXG4gIGlucHV0VHlwZUZpbGU6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBASW5qZWN0KE5HX0lOQUlMX0NPTU1PTl9DT05GSUcpXG4gICAgICAgICAgICAgIHByaXZhdGUgbGliQ29uZmlnOiBOZ0luYWlsQ29tbW9uQ29uZmlnKSB7XG4gICAgc3VwZXIoY2RyLCBsaWJDb25maWcpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYFtpbmFpbC1pbnB1dC1maWxlXWA7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcobGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQpO1xuICAgIHRoaXMuZGV0YWNoKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcblxuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5wbGFjZWhvbGRlcik7XG5cbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgQFZpZXdDaGlsZCgnZm9ybUNvbnRyb2wnKWApO1xuICAgIHRoaXMuZW1pdERlYnVnKHRoaXMuaW5wdXRUZXh0KTtcblxuICAgIGlmICh0aGlzLmZvY3VzKSB7XG5cbiAgICAgIHRoaXMucHVzaChcbiAgICAgICAgdGhpcy5mb2N1cy5zdWJzY3JpYmUoKHNjcm9sbDogYm9vbGVhbikgPT4ge1xuXG4gICAgICAgICAgdGhpcy5lbWl0RGVidWcoYENhdGNoIGZvY3VzIWApO1xuICAgICAgICAgIHNldEZvY3VzKHRoaXMuaW5wdXRUZXh0Lm5hdGl2ZUVsZW1lbnQsIHNjcm9sbCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG5cbiAgcHJvbXB0VXBsb2FkKCkge1xuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpLmNsaWNrKCk7XG4gIH1cblxuICBjaGFuZ2VNb2RlbCgkZXZlbnQ6IEV2ZW50KSB7XG5cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgdGhpcy5maWxlTW9kZWwgPSAkZXZlbnQudGFyZ2V0LmZpbGVzICYmICRldmVudC50YXJnZXQuZmlsZXNbMF07XG5cbiAgICBpZiAoIXRoaXMuYWRkQnV0dG9uKSB7XG4gICAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdCh0aGlzLmZpbGVNb2RlbCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlKSB7XG5cbiAgICAgIHRoaXMuY2xlYW5FcnJvcigpO1xuICAgIH1cblxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldCgpIHtcblxuICAgIHRoaXMuZmlsZU1vZGVsID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaW5wdXRUeXBlRmlsZS5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdCh1bmRlZmluZWQpO1xuICAgIHRoaXMuY2xlYW5FcnJvcigpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAge3tnZXRSZXNwb25zaXZlQ2xhc3MoKX19IG5vUGFkZGluZ0xlZnQge3tjbGFzc319IHVwbG9hZEZpbGUgaW5haWwtaW5wdXQtZmlsZVwiXG4gICAgIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaXNUaGVyZUVycm9yKCl9XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgbm9QYWRkaW5nTGVmdFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgbm9QYWRkaW5nTGVmdFwiICpuZ0lmPVwibGFiZWxcIj5cbiAgICAgIDxsYWJlbCBbZm9yXT1cImlkXCJcbiAgICAgICAgICAgICBjbGFzcz1cInt7bGFiZWxDbGFzc319XCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3NyLW9ubHknOiBoaWRkZW5MYWJlbH1cIlxuICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImxhYmVsVGl0bGVcIlxuICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoKVwiPlxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1BvcG92ZXIoKVwiXG4gICAgICAgICAgICBbc3R5bGUucGFkZGluZy1sZWZ0LnB4XT1cIjVcIj5cbiAgICAgICAgPGluYWlsLXBvcG92ZXIgW2ljb25DbGFzc109XCJwb3BvdmVyQnV0dG9uSWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtidXR0b25UaXRsZV09XCJwb3BvdmVyQnV0dG9uVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaGVhZGVyXT1cInBvcG92ZXJIZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJwb3BvdmVyQ29udGVudFwiPlxuICAgICAgICA8L2luYWlsLXBvcG92ZXI+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC14cy00IHVwbG9hZC1maWxlLWJ1dHRvbi1jb250YWluZXIgbm9QYWRkaW5nTGVmdFwiPlxuICAgICAgPGxhYmVsIGZvcj1cInt7aWR9fS1pbnB1dFwiXG4gICAgICAgICAgICAgY2xhc3M9XCJzci1vbmx5XCI+XG4gICAgICAgIEZpbGVcbiAgICAgIDwvbGFiZWw+XG4gICAgICA8aW5wdXQgI2lucHV0VGV4dFxuICAgICAgICAgICAgIGlkPVwie3tpZH19LWlucHV0XCJcbiAgICAgICAgICAgICBjbGFzcz1cImNvbC14cy0xMiBmb3JtLWNvbnRyb2wge3tpbnB1dENsYXNzfX1cIlxuICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJ0aXRsZVwiXG4gICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNUaGVyZUVycm9yKCkgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZEJ5XT1cImdldEFyaWFEZXNjcmliZWRCeSgpXCJcbiAgICAgICAgICAgICBbdmFsdWVdPVwiZmlsZU1vZGVsPy5uYW1lXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwicHJvbXB0VXBsb2FkKClcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJpbm5lcnhcIiAoY2xpY2spPVwicmVzZXQoKVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInJlc2V0XCI+PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8IS0tICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJkZXNjcmlwdGlvblwiPjwvc3Bhbj4tLT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLThcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlVXBsb2FkIHB1bGwtbGVmdCBub01hcmdpbkxlZnRcIlxuICAgICAgICAgICBbaGlkZGVuXT1cIiFjaG9vc2VCdXR0b25cIj5cbiAgICAgICAgPGRpdiB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJpbnB1dFR5cGVGaWxlLmNsaWNrKClcIlxuICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1mYWtlIG5vTWFyZ2luIGNvbC14cy0xMiB1cGxvYWQtY29udGFpbmVyXCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogZGlzYWJsZWR9XCI+XG4gICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJjaG9vc2VCdXR0b25UZXh0XCI+PC9zcGFuPlxuICAgICAgICAgIDxpbnB1dCBpZD1cInt7aWR9fVwiXG4gICAgICAgICAgICAgICAgICNpbnB1dFR5cGVGaWxlXG4gICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICBbYXR0ci5hY2NlcHRdPVwiYWNjZXB0XCJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgdXBsb2FkXCJcbiAgICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImNoYW5nZU1vZGVsKCRldmVudClcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJhZGRCdXR0b25cIiBjbGFzcz1cImZpbGVVcGxvYWQgcHVsbC1sZWZ0IHBhZGRpbmdcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGFkZC1maWxlXCJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZmlsZU1vZGVsXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJmaWxlQ2hhbmdlLmVtaXQoZmlsZU1vZGVsKVwiXG4gICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImFkZEJ1dHRvblRleHRcIj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlU3VibWl0IGNvbC14cy00IG5vTWFyZ2luTGVmdFwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG5vTWFyZ2luIGJ0bi1pbmxpbmUgY29sLXhzLTEyXCI+Q2FyaWNhIGlsIGZpbGU8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInNob3dFcnJvcigpXCIgW2lkXT1cImlkKyctZGVzY3JpcHRpb24nXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1zZyBtc2ctZXJyb3JlXCI+XG4gICAgICA8c3Ryb25nIFtpbm5lckhUTUxdPVwiJ0VSUk9SRTogJyt0aGlzLmVycm9yXCI+PC9zdHJvbmc+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImRlc2NyaXB0aW9uXCIgW2lubmVySFRNTF09XCJ0aGlzLmRlc2NyaXB0aW9uXCI+PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiZGVzY3JpcHRpb24gJiYgIXNob3dFcnJvcigpXCJcbiAgICAgICBbaWRdPVwiaWQrJy1kZXNjcmlwdGlvbidcIlxuICAgICAgIFtpbm5lckhUTUxdPVwidGhpcy5kZXNjcmlwdGlvblwiPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbmFpbC1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvZm9ybS9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctaW5haWwtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2Zvcm0vaW5wdXQtZmlsZS9pbnB1dC1maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUMsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQWlCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuTCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDNUQsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLG9DQUFvQyxDQUFDO0FBQy9GLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU9wRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsb0JBQW9CO0lBeUIxRCxZQUFvQixHQUFzQixFQUV0QixTQUE4QjtRQUNoRCxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBSEosUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFFdEIsY0FBUyxHQUFULFNBQVMsQ0FBcUI7UUF4QmxELGdCQUFXLEdBQVcsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWpHLHFCQUFnQixHQUFXLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGtCQUFr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QUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnSEFuR1Usa0JBQWtCLG1EQTBCVCxzQkFBc0I7b0dBMUIvQixrQkFBa0Isc2lCQ1gvQixva0hBd0ZBOzRGRDdFYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkE4QmYsTUFBTTsyQkFBQyxzQkFBc0I7NENBdkIxQyxXQUFXO3NCQURWLEtBQUs7Z0JBR04sZ0JBQWdCO3NCQURmLEtBQUs7Z0JBR04sYUFBYTtzQkFEWixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUdOLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFJdEMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtRWxlbWVudENvbXBvbmVudH0gZnJvbSBcIi4uL2Zvcm0tZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7c2V0Rm9jdXN9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy9jb21tb24ub3BlcmF0b3JzXCI7XG5pbXBvcnQge05HX0lOQUlMX0NPTU1PTl9DT05GSUcsIE5nSW5haWxDb21tb25Db25maWd9IGZyb20gXCIuLi8uLi8uLi8uLi9uZy1pbmFpbC1jb21tb24uY29uZmlnXCI7XG5pbXBvcnQge2dldENvbmZpZ1ZhbHVlfSBmcm9tIFwiLi4vLi4vYmFzZS5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5haWwtaW5wdXQtZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtZmlsZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRGaWxlQ29tcG9uZW50IGV4dGVuZHMgRm9ybUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlcjogc3RyaW5nID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8ucGxhY2Vob2xkZXIsIHVuZGVmaW5lZCk7XG4gIEBJbnB1dCgpXG4gIGNob29zZUJ1dHRvblRleHQ6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMubGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQ/LmNob29zZUJ1dHRvblRleHQsICdTY2VnbGkgaWwgZmlsZScpO1xuICBASW5wdXQoKVxuICBhZGRCdXR0b25UZXh0OiBzdHJpbmcgPSBnZXRDb25maWdWYWx1ZSh0aGlzLmxpYkNvbmZpZz8uaW5wdXRGaWxlQ29tcG9uZW50Py5hZGRCdXR0b25UZXh0LCAnQWdnaXVuZ2knKTtcbiAgQElucHV0KClcbiAgY2hvb3NlQnV0dG9uOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8uY2hvb3NlQnV0dG9uLCB0cnVlKTtcbiAgQElucHV0KClcbiAgYWRkQnV0dG9uOiBib29sZWFuID0gZ2V0Q29uZmlnVmFsdWUodGhpcy5saWJDb25maWc/LmlucHV0RmlsZUNvbXBvbmVudD8uYWRkQnV0dG9uLCB0cnVlKTtcbiAgLyoqIEVzdGVuc2lvbmkgYWNjZXR0YXRlIHNlcGFyYXRlIGRhIHZpcmdvbGEgKGVzZW1waW86IFwiLnBkZiwgLnR4dCwgLmRvY1wiKSAqL1xuICBASW5wdXQoKVxuICBhY2NlcHQ6IHN0cmluZyA9IGdldENvbmZpZ1ZhbHVlKHRoaXMubGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQ/LmFjY2VwdCwgdW5kZWZpbmVkKTtcbiAgQE91dHB1dCgpXG4gIGZpbGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGU+KCk7XG4gIGZpbGVNb2RlbDogRmlsZTtcblxuICBAVmlld0NoaWxkKCdpbnB1dFRleHQnLCB7c3RhdGljOiB0cnVlfSlcbiAgaW5wdXRUZXh0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdpbnB1dFR5cGVGaWxlJywge3N0YXRpYzogdHJ1ZX0pXG4gIGlucHV0VHlwZUZpbGU6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBASW5qZWN0KE5HX0lOQUlMX0NPTU1PTl9DT05GSUcpXG4gICAgICAgICAgICAgIHByaXZhdGUgbGliQ29uZmlnOiBOZ0luYWlsQ29tbW9uQ29uZmlnKSB7XG4gICAgc3VwZXIoY2RyLCBsaWJDb25maWcpO1xuICAgIHRoaXMubG9nUHJlZml4ID0gYFtpbmFpbC1pbnB1dC1maWxlXWA7XG4gICAgc3VwZXIub3ZlcnJpZGVDb25maWcobGliQ29uZmlnPy5pbnB1dEZpbGVDb21wb25lbnQpO1xuICAgIHRoaXMuZGV0YWNoKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcblxuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLmdldE5vdEJsYW5rVmFsdWUodGhpcy5wbGFjZWhvbGRlcik7XG5cbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLmVtaXREZWJ1ZyhgQFZpZXdDaGlsZCgnZm9ybUNvbnRyb2wnKWApO1xuICAgIHRoaXMuZW1pdERlYnVnKHRoaXMuaW5wdXRUZXh0KTtcblxuICAgIGlmICh0aGlzLmZvY3VzKSB7XG5cbiAgICAgIHRoaXMucHVzaChcbiAgICAgICAgdGhpcy5mb2N1cy5zdWJzY3JpYmUoKHNjcm9sbDogYm9vbGVhbikgPT4ge1xuXG4gICAgICAgICAgdGhpcy5lbWl0RGVidWcoYENhdGNoIGZvY3VzIWApO1xuICAgICAgICAgIHNldEZvY3VzKHRoaXMuaW5wdXRUZXh0Lm5hdGl2ZUVsZW1lbnQsIHNjcm9sbCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG5cbiAgcHJvbXB0VXBsb2FkKCkge1xuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpLmNsaWNrKCk7XG4gIH1cblxuICBjaGFuZ2VNb2RlbCgkZXZlbnQ6IEV2ZW50KSB7XG5cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgdGhpcy5maWxlTW9kZWwgPSAkZXZlbnQudGFyZ2V0LmZpbGVzICYmICRldmVudC50YXJnZXQuZmlsZXNbMF07XG5cbiAgICBpZiAoIXRoaXMuYWRkQnV0dG9uKSB7XG4gICAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdCh0aGlzLmZpbGVNb2RlbCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2xlYW5FcnJvck9uQ2hhbmdlKSB7XG5cbiAgICAgIHRoaXMuY2xlYW5FcnJvcigpO1xuICAgIH1cblxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldCgpIHtcblxuICAgIHRoaXMuZmlsZU1vZGVsID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaW5wdXRUeXBlRmlsZS5uYXRpdmVFbGVtZW50LnZhbHVlID0gJydcbiAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdCh1bmRlZmluZWQpO1xuICAgIHRoaXMuY2xlYW5FcnJvcigpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAge3tnZXRSZXNwb25zaXZlQ2xhc3MoKX19IG5vUGFkZGluZ0xlZnQge3tjbGFzc319IHVwbG9hZEZpbGUgaW5haWwtaW5wdXQtZmlsZVwiXG4gICAgIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaXNUaGVyZUVycm9yKCl9XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgbm9QYWRkaW5nTGVmdFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgbm9QYWRkaW5nTGVmdFwiICpuZ0lmPVwibGFiZWxcIj5cbiAgICAgIDxsYWJlbCBbZm9yXT1cImlkXCJcbiAgICAgICAgICAgICBjbGFzcz1cInt7bGFiZWxDbGFzc319XCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3NyLW9ubHknOiBoaWRkZW5MYWJlbH1cIlxuICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImxhYmVsVGl0bGVcIlxuICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoKVwiPlxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1BvcG92ZXIoKVwiXG4gICAgICAgICAgICBbc3R5bGUucGFkZGluZy1sZWZ0LnB4XT1cIjVcIj5cbiAgICAgICAgPGluYWlsLXBvcG92ZXIgW2ljb25DbGFzc109XCJwb3BvdmVyQnV0dG9uSWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtidXR0b25UaXRsZV09XCJwb3BvdmVyQnV0dG9uVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaGVhZGVyXT1cInBvcG92ZXJIZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJwb3BvdmVyQ29udGVudFwiPlxuICAgICAgICA8L2luYWlsLXBvcG92ZXI+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC14cy00IHVwbG9hZC1maWxlLWJ1dHRvbi1jb250YWluZXIgbm9QYWRkaW5nTGVmdFwiPlxuICAgICAgPGxhYmVsIGZvcj1cInt7aWR9fS1pbnB1dFwiXG4gICAgICAgICAgICAgY2xhc3M9XCJzci1vbmx5XCI+XG4gICAgICAgIEZpbGVcbiAgICAgIDwvbGFiZWw+XG4gICAgICA8aW5wdXQgI2lucHV0VGV4dFxuICAgICAgICAgICAgIGlkPVwie3tpZH19LWlucHV0XCJcbiAgICAgICAgICAgICBjbGFzcz1cImNvbC14cy0xMiBmb3JtLWNvbnRyb2wge3tpbnB1dENsYXNzfX1cIlxuICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZWQnOiBkaXNhYmxlZH1cIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJ0aXRsZVwiXG4gICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNUaGVyZUVycm9yKCkgPT09IHRydWUgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZEJ5XT1cImdldEFyaWFEZXNjcmliZWRCeSgpXCJcbiAgICAgICAgICAgICBbdmFsdWVdPVwiZmlsZU1vZGVsPy5uYW1lXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwicHJvbXB0VXBsb2FkKClcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJpbm5lcnhcIiAoY2xpY2spPVwicmVzZXQoKVwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFkaXNhYmxlZFwiIGNsYXNzPVwicmVzZXRcIj48L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDwhLS0gICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImRlc2NyaXB0aW9uXCI+PC9zcGFuPi0tPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtOFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpbGVVcGxvYWQgcHVsbC1sZWZ0IG5vTWFyZ2luTGVmdFwiXG4gICAgICAgICAgIFtoaWRkZW5dPVwiIWNob29zZUJ1dHRvblwiPlxuICAgICAgICA8ZGl2IHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cImlucHV0VHlwZUZpbGUuY2xpY2soKVwiXG4gICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLWZha2Ugbm9NYXJnaW4gY29sLXhzLTEyIHVwbG9hZC1jb250YWluZXJcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZWQnOiBkaXNhYmxlZH1cIj5cbiAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImNob29zZUJ1dHRvblRleHRcIj48L3NwYW4+XG4gICAgICAgICAgPGlucHV0IGlkPVwie3tpZH19XCJcbiAgICAgICAgICAgICAgICAgI2lucHV0VHlwZUZpbGVcbiAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgIFthdHRyLmFjY2VwdF09XCJhY2NlcHRcIlxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSB1cGxvYWRcIlxuICAgICAgICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlTW9kZWwoJGV2ZW50KVwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImFkZEJ1dHRvblwiIGNsYXNzPVwiZmlsZVVwbG9hZCBwdWxsLWxlZnQgcGFkZGluZ1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYWRkLWZpbGVcIlxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFmaWxlTW9kZWwgfHwgZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZpbGVDaGFuZ2UuZW1pdChmaWxlTW9kZWwpXCJcbiAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiYWRkQnV0dG9uVGV4dFwiPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZpbGVTdWJtaXQgY29sLXhzLTQgbm9NYXJnaW5MZWZ0XCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbm9NYXJnaW4gYnRuLWlubGluZSBjb2wteHMtMTJcIj5DYXJpY2EgaWwgZmlsZTwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd0Vycm9yKClcIiBbaWRdPVwiaWQrJy1kZXNjcmlwdGlvbidcIj5cbiAgICA8ZGl2IGNsYXNzPVwibXNnIG1zZy1lcnJvcmVcIj5cbiAgICAgIDxzdHJvbmcgW2lubmVySFRNTF09XCInRVJST1JFOiAnK3RoaXMuZXJyb3JcIj48L3N0cm9uZz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiZGVzY3JpcHRpb25cIiBbaW5uZXJIVE1MXT1cInRoaXMuZGVzY3JpcHRpb25cIj48L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJkZXNjcmlwdGlvbiAmJiAhc2hvd0Vycm9yKClcIlxuICAgICAgIFtpZF09XCJpZCsnLWRlc2NyaXB0aW9uJ1wiXG4gICAgICAgW2lubmVySFRNTF09XCJ0aGlzLmRlc2NyaXB0aW9uXCI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=