ecabs-components 1.0.22 → 1.0.24

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 (152) hide show
  1. package/esm2022/ecabs-components.mjs +4 -4
  2. package/esm2022/lib/base/consts/date-mask.consts.mjs +56 -56
  3. package/esm2022/lib/base/directives/date-mask.directive.mjs +65 -67
  4. package/esm2022/lib/base/directives/date-mask.directive.module.mjs +22 -22
  5. package/esm2022/lib/base/directives/digits-only.directive.mjs +130 -133
  6. package/esm2022/lib/base/directives/digits-only.directive.module.mjs +22 -22
  7. package/esm2022/lib/base/directives/number-border.directive.mjs +54 -58
  8. package/esm2022/lib/base/directives/number-border.directive.module.mjs +22 -22
  9. package/esm2022/lib/base/element-base.mjs +100 -105
  10. package/esm2022/lib/base/element-wrapper/element-wrapper.component.mjs +53 -56
  11. package/esm2022/lib/base/element-wrapper/element-wrapper.module.mjs +52 -52
  12. package/esm2022/lib/base/hint/hint.component.mjs +21 -21
  13. package/esm2022/lib/base/hint/hint.module.mjs +20 -20
  14. package/esm2022/lib/base/validation/validation.component.mjs +70 -75
  15. package/esm2022/lib/base/validation/validation.module.mjs +20 -20
  16. package/esm2022/lib/ecabs-breadcrumb/ecabs-breadcrumb.component.mjs +16 -17
  17. package/esm2022/lib/ecabs-breadcrumb/ecabs-breadcrumb.module.mjs +20 -20
  18. package/esm2022/lib/ecabs-buttons/ecabs-buttons.component.mjs +63 -64
  19. package/esm2022/lib/ecabs-buttons/ecabs-buttons.module.mjs +21 -21
  20. package/esm2022/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.mjs +101 -94
  21. package/esm2022/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.module.mjs +36 -36
  22. package/esm2022/lib/ecabs-date-picker/components/ecabs-date-picker-header/ecabs-date-picker-header.component.mjs +17 -15
  23. package/esm2022/lib/ecabs-date-picker/ecabs-date-picker.component.mjs +85 -89
  24. package/esm2022/lib/ecabs-date-picker/ecabs-date-picker.module.mjs +48 -48
  25. package/esm2022/lib/ecabs-date-time-picker/components/ecabs-date-time-picker-header/ecabs-date-time-picker-header.component.mjs +17 -15
  26. package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.component.mjs +179 -186
  27. package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.mjs +64 -64
  28. package/esm2022/lib/ecabs-date-time-range-picker/components/ecabs-date-time-range-picker-header/ecabs-date-time-range-picker-header.component.mjs +17 -15
  29. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.mjs +193 -199
  30. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.mjs +65 -65
  31. package/esm2022/lib/ecabs-date-time-range-picker/time-range.directive.mjs +45 -48
  32. package/esm2022/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.mjs +47 -50
  33. package/esm2022/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.mjs +20 -20
  34. package/esm2022/lib/ecabs-dialog-message/ecabs-dialog-message.component.mjs +44 -47
  35. package/esm2022/lib/ecabs-dialog-message/ecabs-dialog-message.module.mjs +20 -20
  36. package/esm2022/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.component.mjs +19 -22
  37. package/esm2022/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.module.mjs +19 -19
  38. package/esm2022/lib/ecabs-expansion-panel/ecabs-expansion-panel.component.mjs +76 -85
  39. package/esm2022/lib/ecabs-expansion-panel/ecabs-expansion-panel.module.mjs +24 -24
  40. package/esm2022/lib/ecabs-increment/ecabs-increment.component.mjs +78 -83
  41. package/esm2022/lib/ecabs-increment/ecabs-increment.module.mjs +23 -23
  42. package/esm2022/lib/ecabs-input/ecabs-input.component.mjs +83 -90
  43. package/esm2022/lib/ecabs-input/ecabs-input.module.mjs +22 -22
  44. package/esm2022/lib/ecabs-language-selector/ecabs-language-selector.component.mjs +62 -64
  45. package/esm2022/lib/ecabs-language-selector/ecabs-language-selector.module.mjs +39 -39
  46. package/esm2022/lib/ecabs-loading/ecabs-loading.component.mjs +24 -22
  47. package/esm2022/lib/ecabs-loading/ecabs-loading.module.mjs +19 -19
  48. package/esm2022/lib/ecabs-loading/spinner/spinner.component.mjs +16 -14
  49. package/esm2022/lib/ecabs-note/ecabs-note.component.mjs +30 -28
  50. package/esm2022/lib/ecabs-note/ecabs-note.module.mjs +19 -19
  51. package/esm2022/lib/ecabs-phone/ecabs-phone.component.mjs +104 -111
  52. package/esm2022/lib/ecabs-phone/ecabs-phone.module.mjs +22 -22
  53. package/esm2022/lib/ecabs-picker-header/ecabs-picker-header.component.mjs +50 -53
  54. package/esm2022/lib/ecabs-picker-header/ecabs-picker-header.module.mjs +22 -22
  55. package/esm2022/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.mjs +65 -68
  56. package/esm2022/lib/ecabs-radio-button-list/ecabs-radio-button-list.module.mjs +32 -32
  57. package/esm2022/lib/ecabs-select/ecabs-select.component.mjs +310 -316
  58. package/esm2022/lib/ecabs-select/ecabs-select.module.mjs +60 -60
  59. package/esm2022/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.component.mjs +17 -19
  60. package/esm2022/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.module.mjs +24 -24
  61. package/esm2022/lib/ecabs-table/ecabs-table.component.mjs +43 -48
  62. package/esm2022/lib/ecabs-table/ecabs-table.module.mjs +33 -33
  63. package/esm2022/lib/ecabs-textarea/ecabs-textarea.component.mjs +62 -65
  64. package/esm2022/lib/ecabs-textarea/ecabs-textarea.module.mjs +20 -20
  65. package/esm2022/lib/ecabs-timepicker/componets/ecabs-time-list-panel/ecabs-time-list-panel.component.mjs +137 -144
  66. package/esm2022/lib/ecabs-timepicker/config.model.mjs +1 -1
  67. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.component.mjs +312 -322
  68. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.module.mjs +20 -20
  69. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.service.mjs +31 -29
  70. package/esm2022/lib/models/bread-crumb.mjs +1 -1
  71. package/esm2022/lib/models/timepicker.models.mjs +1 -1
  72. package/esm2022/lib/services/ecabs-components.service.mjs +32 -31
  73. package/esm2022/public-api.mjs +54 -54
  74. package/fesm2022/ecabs-components.mjs +3192 -3292
  75. package/fesm2022/ecabs-components.mjs.map +1 -1
  76. package/index.d.ts +5 -5
  77. package/lib/base/consts/date-mask.consts.d.ts +7 -7
  78. package/lib/base/directives/date-mask.directive.d.ts +16 -16
  79. package/lib/base/directives/date-mask.directive.module.d.ts +8 -8
  80. package/lib/base/directives/digits-only.directive.d.ts +26 -26
  81. package/lib/base/directives/digits-only.directive.module.d.ts +8 -8
  82. package/lib/base/directives/number-border.directive.d.ts +13 -13
  83. package/lib/base/directives/number-border.directive.module.d.ts +8 -8
  84. package/lib/base/element-base.d.ts +28 -28
  85. package/lib/base/element-wrapper/element-wrapper.component.d.ts +19 -19
  86. package/lib/base/element-wrapper/element-wrapper.module.d.ts +16 -16
  87. package/lib/base/hint/hint.component.d.ts +8 -8
  88. package/lib/base/hint/hint.module.d.ts +10 -10
  89. package/lib/base/validation/validation.component.d.ts +24 -24
  90. package/lib/base/validation/validation.module.d.ts +10 -10
  91. package/lib/ecabs-breadcrumb/ecabs-breadcrumb.component.d.ts +7 -7
  92. package/lib/ecabs-breadcrumb/ecabs-breadcrumb.module.d.ts +10 -10
  93. package/lib/ecabs-buttons/ecabs-buttons.component.d.ts +20 -20
  94. package/lib/ecabs-buttons/ecabs-buttons.module.d.ts +11 -11
  95. package/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.d.ts +31 -29
  96. package/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.module.d.ts +12 -12
  97. package/lib/ecabs-date-picker/components/ecabs-date-picker-header/ecabs-date-picker-header.component.d.ts +6 -6
  98. package/lib/ecabs-date-picker/ecabs-date-picker.component.d.ts +29 -29
  99. package/lib/ecabs-date-picker/ecabs-date-picker.module.d.ts +15 -15
  100. package/lib/ecabs-date-time-picker/components/ecabs-date-time-picker-header/ecabs-date-time-picker-header.component.d.ts +6 -6
  101. package/lib/ecabs-date-time-picker/ecabs-date-time-picker.component.d.ts +51 -51
  102. package/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.d.ts +19 -19
  103. package/lib/ecabs-date-time-range-picker/components/ecabs-date-time-range-picker-header/ecabs-date-time-range-picker-header.component.d.ts +6 -6
  104. package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.d.ts +58 -58
  105. package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.d.ts +20 -20
  106. package/lib/ecabs-date-time-range-picker/time-range.directive.d.ts +15 -15
  107. package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.d.ts +31 -31
  108. package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.d.ts +11 -11
  109. package/lib/ecabs-dialog-message/ecabs-dialog-message.component.d.ts +28 -28
  110. package/lib/ecabs-dialog-message/ecabs-dialog-message.module.d.ts +11 -11
  111. package/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.component.d.ts +12 -12
  112. package/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.module.d.ts +9 -9
  113. package/lib/ecabs-expansion-panel/ecabs-expansion-panel.component.d.ts +28 -28
  114. package/lib/ecabs-expansion-panel/ecabs-expansion-panel.module.d.ts +14 -14
  115. package/lib/ecabs-increment/ecabs-increment.component.d.ts +26 -26
  116. package/lib/ecabs-increment/ecabs-increment.module.d.ts +13 -13
  117. package/lib/ecabs-input/ecabs-input.component.d.ts +27 -27
  118. package/lib/ecabs-input/ecabs-input.module.d.ts +12 -12
  119. package/lib/ecabs-language-selector/ecabs-language-selector.component.d.ts +20 -20
  120. package/lib/ecabs-language-selector/ecabs-language-selector.module.d.ts +12 -12
  121. package/lib/ecabs-loading/ecabs-loading.component.d.ts +8 -8
  122. package/lib/ecabs-loading/ecabs-loading.module.d.ts +9 -9
  123. package/lib/ecabs-loading/spinner/spinner.component.d.ts +6 -6
  124. package/lib/ecabs-note/ecabs-note.component.d.ts +7 -7
  125. package/lib/ecabs-note/ecabs-note.module.d.ts +9 -9
  126. package/lib/ecabs-phone/ecabs-phone.component.d.ts +33 -33
  127. package/lib/ecabs-phone/ecabs-phone.module.d.ts +12 -12
  128. package/lib/ecabs-picker-header/ecabs-picker-header.component.d.ts +19 -19
  129. package/lib/ecabs-picker-header/ecabs-picker-header.module.d.ts +12 -12
  130. package/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.d.ts +24 -24
  131. package/lib/ecabs-radio-button-list/ecabs-radio-button-list.module.d.ts +11 -11
  132. package/lib/ecabs-select/ecabs-select.component.d.ts +71 -71
  133. package/lib/ecabs-select/ecabs-select.module.d.ts +15 -15
  134. package/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.component.d.ts +8 -8
  135. package/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.module.d.ts +9 -9
  136. package/lib/ecabs-table/ecabs-table.component.d.ts +18 -18
  137. package/lib/ecabs-table/ecabs-table.module.d.ts +12 -12
  138. package/lib/ecabs-textarea/ecabs-textarea.component.d.ts +20 -20
  139. package/lib/ecabs-textarea/ecabs-textarea.module.d.ts +10 -10
  140. package/lib/ecabs-timepicker/componets/ecabs-time-list-panel/ecabs-time-list-panel.component.d.ts +40 -40
  141. package/lib/ecabs-timepicker/config.model.d.ts +5 -5
  142. package/lib/ecabs-timepicker/ecabs-timepicker.component.d.ts +53 -53
  143. package/lib/ecabs-timepicker/ecabs-timepicker.module.d.ts +10 -10
  144. package/lib/ecabs-timepicker/ecabs-timepicker.service.d.ts +12 -12
  145. package/lib/models/bread-crumb.d.ts +5 -5
  146. package/lib/models/timepicker.models.d.ts +6 -6
  147. package/lib/services/ecabs-components.service.d.ts +16 -16
  148. package/package.json +1 -1
  149. package/public-api.d.ts +54 -54
  150. package/styles/material/overrides/_form.scss +13 -1
  151. package/styles/scss/modules/_form.scss +13 -8
  152. package/styles/scss/utilities/_helpers.scss +9 -0
@@ -1,65 +1,62 @@
1
- import { Component, Input } from '@angular/core';
2
- import { NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import ElementBaseComponent from '../base/element-base';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../base/element-wrapper/element-wrapper.component";
6
- import * as i2 from "@angular/forms";
7
- export class EcabsTextareaComponent extends ElementBaseComponent {
8
- injector;
9
- rows;
10
- val;
11
- get value() {
12
- return this.val;
13
- }
14
- set value(val) {
15
- if (val !== undefined && this.val !== val) {
16
- this.val = val;
17
- this.onChange(val);
18
- this.onTouch(val);
19
- }
20
- }
21
- constructor(injector) {
22
- super();
23
- this.injector = injector;
24
- }
25
- ngAfterViewInit() {
26
- const ngControl = this.injector.get(NgControl, null);
27
- if (ngControl) {
28
- this.control = ngControl.control;
29
- }
30
- }
31
- // eslint-disable-next-line @typescript-eslint/no-empty-function
32
- onChange = () => { };
33
- // eslint-disable-next-line @typescript-eslint/no-empty-function
34
- onTouch = () => { };
35
- writeValue(value) {
36
- this.value = value;
37
- }
38
- registerOnChange(fn) {
39
- this.onChange = fn;
40
- }
41
- registerOnTouched(fn) {
42
- this.onTouch = fn;
43
- }
44
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextareaComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
45
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTextareaComponent, selector: "ecabs-textarea", inputs: { rows: "rows" }, providers: [
46
- {
47
- provide: NG_VALUE_ACCESSOR,
48
- useExisting: EcabsTextareaComponent,
49
- multi: true,
50
- },
51
- ], usesInheritance: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <textarea\r\n class=\"form-field__textarea\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [rows]=\"rows\"\r\n >\r\n </textarea>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "component", type: i1.ElementWrapperComponent, selector: "app-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { 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.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
52
- }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextareaComponent, decorators: [{
54
- type: Component,
55
- args: [{ selector: 'ecabs-textarea', providers: [
56
- {
57
- provide: NG_VALUE_ACCESSOR,
58
- useExisting: EcabsTextareaComponent,
59
- multi: true,
60
- },
61
- ], template: "<app-element-wrapper [data]=\"getData()\">\r\n <textarea\r\n class=\"form-field__textarea\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [rows]=\"rows\"\r\n >\r\n </textarea>\r\n</app-element-wrapper>\r\n" }]
62
- }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { rows: [{
63
- type: Input
64
- }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXRleHRhcmVhL2VjYWJzLXRleHRhcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10ZXh0YXJlYS9lY2Ficy10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUE0QyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RyxPQUFPLG9CQUFvQixNQUFNLHNCQUFzQixDQUFDOzs7O0FBYXhELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxvQkFBb0I7SUFrQjFDO0lBaEJwQixJQUFJLENBQVU7SUFFZCxHQUFHLENBQVU7SUFFYixJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLEdBQUc7UUFDWCxJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRUQsWUFBb0IsUUFBa0I7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUFEVSxhQUFRLEdBQVIsUUFBUSxDQUFVO0lBRXRDLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxTQUFTLEdBQWMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBYyxDQUFDO1FBQzdFLElBQUksU0FBUyxFQUFFO1lBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBNkIsQ0FBQztTQUN4RDtJQUNILENBQUM7SUFFRCxnRUFBZ0U7SUFDaEUsUUFBUSxHQUFRLEdBQVMsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUMvQixnRUFBZ0U7SUFDaEUsT0FBTyxHQUFRLEdBQVMsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUU5QixVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNwQixDQUFDO3dHQTVDVSxzQkFBc0I7NEZBQXRCLHNCQUFzQixtRUFSdEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsc0JBQXNCO2dCQUNuQyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaURDYkgsaVdBYUE7OzRGREVhLHNCQUFzQjtrQkFYbEMsU0FBUzsrQkFDRSxnQkFBZ0IsYUFFZjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHdCQUF3Qjs0QkFDbkMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7K0ZBSUQsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFVudHlwZWRGb3JtQ29udHJvbCwgTmdDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IEVsZW1lbnRCYXNlQ29tcG9uZW50IGZyb20gJy4uL2Jhc2UvZWxlbWVudC1iYXNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtdGV4dGFyZWEnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lY2Ficy10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogRWNhYnNUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic1RleHRhcmVhQ29tcG9uZW50IGV4dGVuZHMgRWxlbWVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KClcclxuICByb3dzITogbnVtYmVyO1xyXG5cclxuICB2YWwhOiBzdHJpbmc7XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsO1xyXG4gIH1cclxuXHJcbiAgc2V0IHZhbHVlKHZhbCkge1xyXG4gICAgaWYgKHZhbCAhPT0gdW5kZWZpbmVkICYmIHRoaXMudmFsICE9PSB2YWwpIHtcclxuICAgICAgdGhpcy52YWwgPSB2YWw7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsKTtcclxuICAgICAgdGhpcy5vblRvdWNoKHZhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5nQ29udHJvbDogTmdDb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoTmdDb250cm9sLCBudWxsKSBhcyBOZ0NvbnRyb2w7XHJcbiAgICBpZiAobmdDb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbCA9IG5nQ29udHJvbC5jb250cm9sIGFzIFVudHlwZWRGb3JtQ29udHJvbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cclxuICBvbkNoYW5nZTogYW55ID0gKCk6IHZvaWQgPT4ge307XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxyXG4gIG9uVG91Y2g6IGFueSA9ICgpOiB2b2lkID0+IHt9O1xyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoID0gZm47XHJcbiAgfVxyXG59XHJcbiIsIjxhcHAtZWxlbWVudC13cmFwcGVyIFtkYXRhXT1cImdldERhdGEoKVwiPlxyXG4gIDx0ZXh0YXJlYVxyXG4gICAgY2xhc3M9XCJmb3JtLWZpZWxkX190ZXh0YXJlYVwiXHJcbiAgICBbaWRdPVwibmFtZVwiXHJcbiAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAoYmx1cik9XCJvblRvdWNoKClcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcclxuICAgIFtyb3dzXT1cInJvd3NcIlxyXG4gID5cclxuICA8L3RleHRhcmVhPlxyXG48L2FwcC1lbGVtZW50LXdyYXBwZXI+XHJcbiJdfQ==
1
+ import { Component, Input } from '@angular/core';
2
+ import { NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import ElementBaseComponent from '../base/element-base';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../base/element-wrapper/element-wrapper.component";
6
+ import * as i2 from "@angular/forms";
7
+ export class EcabsTextareaComponent extends ElementBaseComponent {
8
+ get value() {
9
+ return this.val;
10
+ }
11
+ set value(val) {
12
+ if (val !== undefined && this.val !== val) {
13
+ this.val = val;
14
+ this.onChange(val);
15
+ this.onTouch(val);
16
+ }
17
+ }
18
+ constructor(injector) {
19
+ super();
20
+ this.injector = injector;
21
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
22
+ this.onChange = () => { };
23
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
24
+ this.onTouch = () => { };
25
+ }
26
+ ngAfterViewInit() {
27
+ const ngControl = this.injector.get(NgControl, null);
28
+ if (ngControl) {
29
+ this.control = ngControl.control;
30
+ }
31
+ }
32
+ writeValue(value) {
33
+ this.value = value;
34
+ }
35
+ registerOnChange(fn) {
36
+ this.onChange = fn;
37
+ }
38
+ registerOnTouched(fn) {
39
+ this.onTouch = fn;
40
+ }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextareaComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTextareaComponent, selector: "ecabs-textarea", inputs: { rows: "rows" }, providers: [
43
+ {
44
+ provide: NG_VALUE_ACCESSOR,
45
+ useExisting: EcabsTextareaComponent,
46
+ multi: true,
47
+ },
48
+ ], usesInheritance: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <textarea\r\n class=\"form-field__textarea\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [rows]=\"rows\"\r\n >\r\n </textarea>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "component", type: i1.ElementWrapperComponent, selector: "app-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { 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.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
49
+ }
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextareaComponent, decorators: [{
51
+ type: Component,
52
+ args: [{ selector: 'ecabs-textarea', providers: [
53
+ {
54
+ provide: NG_VALUE_ACCESSOR,
55
+ useExisting: EcabsTextareaComponent,
56
+ multi: true,
57
+ },
58
+ ], template: "<app-element-wrapper [data]=\"getData()\">\r\n <textarea\r\n class=\"form-field__textarea\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [rows]=\"rows\"\r\n >\r\n </textarea>\r\n</app-element-wrapper>\r\n" }]
59
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { rows: [{
60
+ type: Input
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXRleHRhcmVhL2VjYWJzLXRleHRhcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10ZXh0YXJlYS9lY2Ficy10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUE0QyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RyxPQUFPLG9CQUFvQixNQUFNLHNCQUFzQixDQUFDOzs7O0FBYXhELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxvQkFBb0I7SUFNOUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxHQUFHO1FBQ1gsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELFlBQW9CLFFBQWtCO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVd0QyxnRUFBZ0U7UUFDaEUsYUFBUSxHQUFRLEdBQVMsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMvQixnRUFBZ0U7UUFDaEUsWUFBTyxHQUFRLEdBQVMsRUFBRSxHQUFFLENBQUMsQ0FBQztJQVo5QixDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFjLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQWMsQ0FBQztRQUM3RSxJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQTZCLENBQUM7U0FDeEQ7SUFDSCxDQUFDO0lBT0QsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQzsrR0E1Q1Usc0JBQXNCO21HQUF0QixzQkFBc0IsbUVBUnRCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLHNCQUFzQjtnQkFDbkMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLGlEQ2JILGlXQWFBOzs0RkRFYSxzQkFBc0I7a0JBWGxDLFNBQVM7K0JBQ0UsZ0JBQWdCLGFBRWY7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx3QkFBd0I7NEJBQ25DLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGOytGQUlELElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUNvbnRyb2wsIE5nQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCBFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLXRleHRhcmVhJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IEVjYWJzVGV4dGFyZWFDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNUZXh0YXJlYUNvbXBvbmVudCBleHRlbmRzIEVsZW1lbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgcm93cyE6IG51bWJlcjtcclxuXHJcbiAgdmFsITogc3RyaW5nO1xyXG5cclxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnZhbDtcclxuICB9XHJcblxyXG4gIHNldCB2YWx1ZSh2YWwpIHtcclxuICAgIGlmICh2YWwgIT09IHVuZGVmaW5lZCAmJiB0aGlzLnZhbCAhPT0gdmFsKSB7XHJcbiAgICAgIHRoaXMudmFsID0gdmFsO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XHJcbiAgICAgIHRoaXMub25Ub3VjaCh2YWwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBuZ0NvbnRyb2w6IE5nQ29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCkgYXMgTmdDb250cm9sO1xyXG4gICAgaWYgKG5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgb25DaGFuZ2U6IGFueSA9ICgpOiB2b2lkID0+IHt9O1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cclxuICBvblRvdWNoOiBhbnkgPSAoKTogdm9pZCA9PiB7fTtcclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxufVxyXG4iLCI8YXBwLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8dGV4dGFyZWFcclxuICAgIGNsYXNzPVwiZm9ybS1maWVsZF9fdGV4dGFyZWFcIlxyXG4gICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgKGJsdXIpPVwib25Ub3VjaCgpXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICBbbWF4bGVuZ3RoXT1cIm1heExlbmd0aFwiXHJcbiAgICBbcm93c109XCJyb3dzXCJcclxuICA+XHJcbiAgPC90ZXh0YXJlYT5cclxuPC9hcHAtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
@@ -1,20 +1,20 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { EcabsTextareaComponent } from './ecabs-textarea.component';
4
- import { ElementWrapperModule } from '../base/element-wrapper/element-wrapper.module';
5
- import { FormsModule } from '@angular/forms';
6
- import * as i0 from "@angular/core";
7
- export class EcabsTextAreaModule {
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, declarations: [EcabsTextareaComponent], imports: [CommonModule, ElementWrapperModule, FormsModule], exports: [EcabsTextareaComponent] });
10
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, imports: [CommonModule, ElementWrapperModule, FormsModule] });
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, decorators: [{
13
- type: NgModule,
14
- args: [{
15
- declarations: [EcabsTextareaComponent],
16
- imports: [CommonModule, ElementWrapperModule, FormsModule],
17
- exports: [EcabsTextareaComponent],
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGV4dGFyZWEubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXRleHRhcmVhL2VjYWJzLXRleHRhcmVhLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxtQkFBbUI7d0dBQW5CLG1CQUFtQjt5R0FBbkIsbUJBQW1CLGlCQUpmLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxhQUMvQyxzQkFBc0I7eUdBRXJCLG1CQUFtQixZQUhwQixZQUFZLEVBQUUsb0JBQW9CLEVBQUUsV0FBVzs7NEZBRzlDLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG9CQUFvQixFQUFFLFdBQVcsQ0FBQztvQkFDMUQsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNUZXh0YXJlYUNvbXBvbmVudCB9IGZyb20gJy4vZWNhYnMtdGV4dGFyZWEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWxlbWVudFdyYXBwZXJNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VjYWJzVGV4dGFyZWFDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEVsZW1lbnRXcmFwcGVyTW9kdWxlLCBGb3Jtc01vZHVsZV0sXHJcbiAgZXhwb3J0czogW0VjYWJzVGV4dGFyZWFDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNUZXh0QXJlYU1vZHVsZSB7fVxyXG4iXX0=
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { EcabsTextareaComponent } from './ecabs-textarea.component';
4
+ import { ElementWrapperModule } from '../base/element-wrapper/element-wrapper.module';
5
+ import { FormsModule } from '@angular/forms';
6
+ import * as i0 from "@angular/core";
7
+ export class EcabsTextAreaModule {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, declarations: [EcabsTextareaComponent], imports: [CommonModule, ElementWrapperModule, FormsModule], exports: [EcabsTextareaComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, imports: [CommonModule, ElementWrapperModule, FormsModule] }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTextAreaModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [EcabsTextareaComponent],
16
+ imports: [CommonModule, ElementWrapperModule, FormsModule],
17
+ exports: [EcabsTextareaComponent],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGV4dGFyZWEubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXRleHRhcmVhL2VjYWJzLXRleHRhcmVhLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxtQkFBbUI7K0dBQW5CLG1CQUFtQjtnSEFBbkIsbUJBQW1CLGlCQUpmLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxhQUMvQyxzQkFBc0I7Z0hBRXJCLG1CQUFtQixZQUhwQixZQUFZLEVBQUUsb0JBQW9CLEVBQUUsV0FBVzs7NEZBRzlDLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG9CQUFvQixFQUFFLFdBQVcsQ0FBQztvQkFDMUQsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNUZXh0YXJlYUNvbXBvbmVudCB9IGZyb20gJy4vZWNhYnMtdGV4dGFyZWEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWxlbWVudFdyYXBwZXJNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VjYWJzVGV4dGFyZWFDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEVsZW1lbnRXcmFwcGVyTW9kdWxlLCBGb3Jtc01vZHVsZV0sXHJcbiAgZXhwb3J0czogW0VjYWJzVGV4dGFyZWFDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNUZXh0QXJlYU1vZHVsZSB7fVxyXG4iXX0=
@@ -1,144 +1,137 @@
1
- import { Component, Input, Output, EventEmitter, HostListener } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../ecabs-timepicker.service";
4
- import * as i2 from "@angular/common";
5
- export class EcabsTimeListPanelComponent {
6
- elementRef;
7
- timepickerService;
8
- typedValue;
9
- listPlacement = 'auto';
10
- listPosition = {};
11
- appendTo;
12
- min;
13
- max;
14
- showDayStart = true;
15
- showDayEnd = false;
16
- position = {};
17
- onscroll = new EventEmitter();
18
- closeMe = new EventEmitter();
19
- hoveredItemIndex = 0;
20
- timeList = [];
21
- listItemHeight;
22
- constructor(elementRef, timepickerService) {
23
- this.elementRef = elementRef;
24
- this.timepickerService = timepickerService;
25
- }
26
- handleKeydown($event) {
27
- if ($event.key === 'ArrowUp') {
28
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
29
- this.hoveredItemIndex ? this.hoveredItemIndex-- : null;
30
- this.scrollTo(this.hoveredItemIndex);
31
- }
32
- if ($event.key === 'ArrowDown') {
33
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
34
- this.hoveredItemIndex + 1 < this.timeList.length ? this.hoveredItemIndex++ : null;
35
- this.scrollTo(this.hoveredItemIndex);
36
- }
37
- if ($event.key === 'Enter') {
38
- this.setTime(this.timeList[this.hoveredItemIndex].value);
39
- }
40
- }
41
- ngOnInit() {
42
- this.calcListItems();
43
- if (this.appendTo) {
44
- this.appendListTo();
45
- }
46
- setTimeout(() => {
47
- this.listItemHeight = this.elementRef.nativeElement.querySelector('li').getBoundingClientRect().height;
48
- this.selectTypedValue(this.typedValue);
49
- });
50
- }
51
- appendListTo() {
52
- const parent = document.querySelector(this.appendTo);
53
- if (!parent) {
54
- throw new Error(`appendTo selector ${this.appendTo} did not found any parent element`);
55
- }
56
- parent.appendChild(this.elementRef.nativeElement);
57
- }
58
- calcListItems() {
59
- if (this.showDayStart) {
60
- this.timeList.push({
61
- value: '00:00',
62
- title: this.timepickerService.getConfig().dayStart,
63
- });
64
- }
65
- for (let index = 0; index < 24; index++) {
66
- for (const minute of ['00', '30']) {
67
- if (index === 0 && minute === '00') {
68
- continue;
69
- }
70
- this.timeList.push({
71
- value: (index > 9 ? index + '' : '0' + index) + ':' + minute,
72
- title: (index > 9 ? index + '' : '0' + index) + ':' + minute,
73
- });
74
- }
75
- }
76
- if (this.showDayEnd) {
77
- this.timeList.push({
78
- value: '23:59',
79
- title: this.timepickerService.getConfig().dayEnd,
80
- });
81
- }
82
- }
83
- ngOnChanges() {
84
- this.selectTypedValue(this.typedValue);
85
- if (this.elementRef.nativeElement) {
86
- this.elementRef.nativeElement.style.top = this.listPosition.top + 'px';
87
- this.elementRef.nativeElement.style.left = this.listPosition.left + 'px';
88
- this.elementRef.nativeElement.style.width = this.listPosition.width + 'px';
89
- if (this.appendTo) {
90
- this.elementRef.nativeElement.style.position = 'fixed';
91
- }
92
- }
93
- }
94
- selectTypedValue(value) {
95
- if (value) {
96
- const hour = parseInt(value.split(':')[0], 10);
97
- if (hour || hour === 0) {
98
- this.hoveredItemIndex = hour * 2;
99
- this.scrollTo(this.hoveredItemIndex);
100
- }
101
- }
102
- }
103
- scrollTo(index) {
104
- this.elementRef.nativeElement.querySelector('.inner-scroll').scrollTop = index * this.listItemHeight;
105
- }
106
- close() {
107
- this.closeMe.emit(null);
108
- }
109
- setTime(value) {
110
- this.closeMe.emit(value);
111
- }
112
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeListPanelComponent, deps: [{ token: i0.ElementRef }, { token: i1.FormTimePickerService }], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTimeListPanelComponent, selector: "ecabs-time-list-panel", inputs: { typedValue: "typedValue", listPlacement: "listPlacement", listPosition: "listPosition", appendTo: "appendTo", min: "min", max: "max", showDayStart: "showDayStart", showDayEnd: "showDayEnd", position: "position" }, outputs: { onscroll: "onscroll", closeMe: "closeMe" }, host: { listeners: { "document:keydown": "handleKeydown($event)" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"list\">\r\n <div class=\"inner-scroll\">\r\n <div class=\"inner\">\r\n <ul>\r\n <li\r\n *ngFor=\"let i of timeList; let counter = index\"\r\n (click)=\"setTime(i.value)\"\r\n (mouseenter)=\"hoveredItemIndex = counter\"\r\n [ngClass]=\"{ active: typedValue === i.value, hovered: counter === hoveredItemIndex }\"\r\n >\r\n {{ i.title }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
114
- }
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeListPanelComponent, decorators: [{
116
- type: Component,
117
- args: [{ selector: 'ecabs-time-list-panel', template: "<div class=\"list\">\r\n <div class=\"inner-scroll\">\r\n <div class=\"inner\">\r\n <ul>\r\n <li\r\n *ngFor=\"let i of timeList; let counter = index\"\r\n (click)=\"setTime(i.value)\"\r\n (mouseenter)=\"hoveredItemIndex = counter\"\r\n [ngClass]=\"{ active: typedValue === i.value, hovered: counter === hoveredItemIndex }\"\r\n >\r\n {{ i.title }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
118
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FormTimePickerService }]; }, propDecorators: { typedValue: [{
119
- type: Input
120
- }], listPlacement: [{
121
- type: Input
122
- }], listPosition: [{
123
- type: Input
124
- }], appendTo: [{
125
- type: Input
126
- }], min: [{
127
- type: Input
128
- }], max: [{
129
- type: Input
130
- }], showDayStart: [{
131
- type: Input
132
- }], showDayEnd: [{
133
- type: Input
134
- }], position: [{
135
- type: Input
136
- }], onscroll: [{
137
- type: Output
138
- }], closeMe: [{
139
- type: Output
140
- }], handleKeydown: [{
141
- type: HostListener,
142
- args: ['document:keydown', ['$event']]
143
- }] } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10aW1lcGlja2VyL2NvbXBvbmV0cy9lY2Ficy10aW1lLWxpc3QtcGFuZWwvZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10aW1lcGlja2VyL2NvbXBvbmV0cy9lY2Ficy10aW1lLWxpc3QtcGFuZWwvZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUF5QixNQUFNLGVBQWUsQ0FBQzs7OztBQU9wSCxNQUFNLE9BQU8sMkJBQTJCO0lBb0JqQjtJQUFnQztJQW5CNUMsVUFBVSxDQUFNO0lBQ2hCLGFBQWEsR0FBa0IsTUFBTSxDQUFDO0lBQ3RDLFlBQVksR0FBaUIsRUFBRSxDQUFDO0lBRWhDLFFBQVEsQ0FBVTtJQUNsQixHQUFHLENBQVU7SUFDYixHQUFHLENBQVU7SUFDYixZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDbkIsUUFBUSxHQUFpQixFQUFFLENBQUM7SUFFM0IsUUFBUSxHQUFHLElBQUksWUFBWSxFQUFrQyxDQUFDO0lBQzlELE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRTVDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztJQUNyQixRQUFRLEdBQW9DLEVBQUUsQ0FBQztJQUV2QyxjQUFjLENBQU87SUFFN0IsWUFBcUIsVUFBc0IsRUFBVSxpQkFBd0M7UUFBeEUsZUFBVSxHQUFWLFVB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bkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBFbGVtZW50UmVmLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTGlzdFBsYWNlbWVudCwgTGlzdFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3RpbWVwaWNrZXIubW9kZWxzJztcclxuaW1wb3J0IHsgRm9ybVRpbWVQaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZWNhYnMtdGltZXBpY2tlci5zZXJ2aWNlJztcclxuQENvbXBvbmVudCgge1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtdGltZS1saXN0LXBhbmVsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC5odG1sJyxcclxufSApXHJcbmV4cG9ydCBjbGFzcyBFY2Fic1RpbWVMaXN0UGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgdHlwZWRWYWx1ZTogYW55O1xyXG4gIEBJbnB1dCgpIGxpc3RQbGFjZW1lbnQ6IExpc3RQbGFjZW1lbnQgPSAnYXV0byc7XHJcbiAgQElucHV0KCkgbGlzdFBvc2l0aW9uOiBMaXN0UG9zaXRpb24gPSB7fTtcclxuXHJcbiAgQElucHV0KCkgYXBwZW5kVG8hOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWluITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1heCE6IHN0cmluZztcclxuICBASW5wdXQoKSBzaG93RGF5U3RhcnQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dEYXlFbmQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwb3NpdGlvbjogTGlzdFBvc2l0aW9uID0ge307XHJcblxyXG4gIEBPdXRwdXQoKSBvbnNjcm9sbCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlciB9PigpO1xyXG4gIEBPdXRwdXQoKSBjbG9zZU1lID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIGhvdmVyZWRJdGVtSW5kZXggPSAwO1xyXG4gIHRpbWVMaXN0OiB7IHZhbHVlOiBhbnk7IHRpdGxlOiBzdHJpbmcgfVtdID0gW107XHJcblxyXG4gIHByaXZhdGUgbGlzdEl0ZW1IZWlnaHQhOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgdGltZXBpY2tlclNlcnZpY2U6IEZvcm1UaW1lUGlja2VyU2VydmljZSApIHsgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCAnZG9jdW1lbnQ6a2V5ZG93bicsIFsgJyRldmVudCcgXSApXHJcbiAgaGFuZGxlS2V5ZG93biggJGV2ZW50OiBLZXlib2FyZEV2ZW50ICk6IHZvaWQge1xyXG4gICAgaWYgKCAkZXZlbnQua2V5ID09PSAnQXJyb3dVcCcgKSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLWV4cHJlc3Npb25zXHJcbiAgICAgIHRoaXMuaG92ZXJlZEl0ZW1JbmRleCA/IHRoaXMuaG92ZXJlZEl0ZW1JbmRleC0tIDogbnVsbDtcclxuICAgICAgdGhpcy5zY3JvbGxUbyggdGhpcy5ob3ZlcmVkSXRlbUluZGV4ICk7XHJcbiAgICB9XHJcbiAgICBpZiAoICRldmVudC5rZXkgPT09ICdBcnJvd0Rvd24nICkge1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC1leHByZXNzaW9uc1xyXG4gICAgICB0aGlzLmhvdmVyZWRJdGVtSW5kZXggKyAxIDwgdGhpcy50aW1lTGlzdC5sZW5ndGggPyB0aGlzLmhvdmVyZWRJdGVtSW5kZXgrKyA6IG51bGw7XHJcbiAgICAgIHRoaXMuc2Nyb2xsVG8oIHRoaXMuaG92ZXJlZEl0ZW1JbmRleCApO1xyXG4gICAgfVxyXG4gICAgaWYgKCAkZXZlbnQua2V5ID09PSAnRW50ZXInICkge1xyXG4gICAgICB0aGlzLnNldFRpbWUoIHRoaXMudGltZUxpc3RbIHRoaXMuaG92ZXJlZEl0ZW1JbmRleCBdLnZhbHVlICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FsY0xpc3RJdGVtcygpO1xyXG4gICAgaWYgKCB0aGlzLmFwcGVuZFRvICkge1xyXG4gICAgICB0aGlzLmFwcGVuZExpc3RUbygpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFRpbWVvdXQoICgpID0+IHtcclxuICAgICAgdGhpcy5saXN0SXRlbUhlaWdodCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoICdsaScgKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XHJcbiAgICAgIHRoaXMuc2VsZWN0VHlwZWRWYWx1ZSggdGhpcy50eXBlZFZhbHVlICk7XHJcbiAgICB9ICk7XHJcbiAgfVxyXG5cclxuICBhcHBlbmRMaXN0VG8oKTogdm9pZCB7XHJcbiAgICBjb25zdCBwYXJlbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCB0aGlzLmFwcGVuZFRvICk7XHJcbiAgICBpZiAoICFwYXJlbnQgKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvciggYGFwcGVuZFRvIHNlbGVjdG9yICR7IHRoaXMuYXBwZW5kVG8gfSBkaWQgbm90IGZvdW5kIGFueSBwYXJlbnQgZWxlbWVudGAgKTtcclxuICAgIH1cclxuICAgIHBhcmVudC5hcHBlbmRDaGlsZCggdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgKTtcclxuICB9XHJcblxyXG4gIGNhbGNMaXN0SXRlbXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIHRoaXMuc2hvd0RheVN0YXJ0ICkge1xyXG4gICAgICB0aGlzLnRpbWVMaXN0LnB1c2goIHtcclxuICAgICAgICB2YWx1ZTogJzAwOjAwJyxcclxuICAgICAgICB0aXRsZTogdGhpcy50aW1lcGlja2VyU2VydmljZS5nZXRDb25maWcoKS5kYXlTdGFydCxcclxuICAgICAgfSApO1xyXG4gICAgfVxyXG4gICAgZm9yICggbGV0IGluZGV4ID0gMDsgaW5kZXggPCAyNDsgaW5kZXgrKyApIHtcclxuICAgICAgZm9yICggY29uc3QgbWludXRlIG9mIFsgJzAwJywgJzMwJyBdICkge1xyXG4gICAgICAgIGlmICggaW5kZXggPT09IDAgJiYgbWludXRlID09PSAnMDAnICkge1xyXG4gICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMudGltZUxpc3QucHVzaCgge1xyXG4gICAgICAgICAgdmFsdWU6ICggaW5kZXggPiA5ID8gaW5kZXggKyAnJyA6ICcwJyArIGluZGV4ICkgKyAnOicgKyBtaW51dGUsXHJcbiAgICAgICAgICB0aXRsZTogKCBpbmRleCA+IDkgPyBpbmRleCArICcnIDogJzAnICsgaW5kZXggKSArICc6JyArIG1pbnV0ZSxcclxuICAgICAgICB9ICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICggdGhpcy5zaG93RGF5RW5kICkge1xyXG4gICAgICB0aGlzLnRpbWVMaXN0LnB1c2goIHtcclxuICAgICAgICB2YWx1ZTogJzIzOjU5JyxcclxuICAgICAgICB0aXRsZTogdGhpcy50aW1lcGlja2VyU2VydmljZS5nZXRDb25maWcoKS5kYXlFbmQsXHJcbiAgICAgIH0gKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RUeXBlZFZhbHVlKCB0aGlzLnR5cGVkVmFsdWUgKTtcclxuICAgIGlmICggdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgKSB7XHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLnRvcCA9IHRoaXMubGlzdFBvc2l0aW9uLnRvcCArICdweCc7XHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSB0aGlzLmxpc3RQb3NpdGlvbi5sZWZ0ICsgJ3B4JztcclxuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUud2lkdGggPSB0aGlzLmxpc3RQb3NpdGlvbi53aWR0aCArICdweCc7XHJcbiAgICAgIGlmICggdGhpcy5hcHBlbmRUbyApIHtcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdFR5cGVkVmFsdWUoIHZhbHVlOiBhbnkgKTogdm9pZCB7XHJcbiAgICBpZiAoIHZhbHVlICkge1xyXG4gICAgICBjb25zdCBob3VyID0gcGFyc2VJbnQoIHZhbHVlLnNwbGl0KCAnOicgKVsgMCBdLCAxMCApO1xyXG4gICAgICBpZiAoIGhvdXIgfHwgaG91ciA9PT0gMCApIHtcclxuICAgICAgICB0aGlzLmhvdmVyZWRJdGVtSW5kZXggPSBob3VyICogMjtcclxuICAgICAgICB0aGlzLnNjcm9sbFRvKCB0aGlzLmhvdmVyZWRJdGVtSW5kZXggKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG8oIGluZGV4OiBudW1iZXIgKTogdm9pZCB7XHJcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCAnLmlubmVyLXNjcm9sbCcgKS5zY3JvbGxUb3AgPSBpbmRleCAqIHRoaXMubGlzdEl0ZW1IZWlnaHQ7XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VNZS5lbWl0KCBudWxsICk7XHJcbiAgfVxyXG5cclxuICBzZXRUaW1lKCB2YWx1ZTogYW55ICk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZU1lLmVtaXQoIHZhbHVlICk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJsaXN0XCI+XHJcbiAgPGRpdiBjbGFzcz1cImlubmVyLXNjcm9sbFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImlubmVyXCI+XHJcbiAgICAgIDx1bD5cclxuICAgICAgICA8bGlcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpIG9mIHRpbWVMaXN0OyBsZXQgY291bnRlciA9IGluZGV4XCJcclxuICAgICAgICAgIChjbGljayk9XCJzZXRUaW1lKGkudmFsdWUpXCJcclxuICAgICAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyZWRJdGVtSW5kZXggPSBjb3VudGVyXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiB0eXBlZFZhbHVlID09PSBpLnZhbHVlLCBob3ZlcmVkOiBjb3VudGVyID09PSBob3ZlcmVkSXRlbUluZGV4IH1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7IGkudGl0bGUgfX1cclxuICAgICAgICA8L2xpPlxyXG4gICAgICA8L3VsPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
1
+ import { Component, Input, Output, EventEmitter, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../ecabs-timepicker.service";
4
+ import * as i2 from "@angular/common";
5
+ export class EcabsTimeListPanelComponent {
6
+ constructor(elementRef, timepickerService) {
7
+ this.elementRef = elementRef;
8
+ this.timepickerService = timepickerService;
9
+ this.listPlacement = 'auto';
10
+ this.listPosition = {};
11
+ this.showDayStart = true;
12
+ this.showDayEnd = false;
13
+ this.position = {};
14
+ this.onscroll = new EventEmitter();
15
+ this.closeMe = new EventEmitter();
16
+ this.hoveredItemIndex = 0;
17
+ this.timeList = [];
18
+ }
19
+ handleKeydown($event) {
20
+ if ($event.key === 'ArrowUp') {
21
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
22
+ this.hoveredItemIndex ? this.hoveredItemIndex-- : null;
23
+ this.scrollTo(this.hoveredItemIndex);
24
+ }
25
+ if ($event.key === 'ArrowDown') {
26
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
27
+ this.hoveredItemIndex + 1 < this.timeList.length ? this.hoveredItemIndex++ : null;
28
+ this.scrollTo(this.hoveredItemIndex);
29
+ }
30
+ if ($event.key === 'Enter') {
31
+ this.setTime(this.timeList[this.hoveredItemIndex].value);
32
+ }
33
+ }
34
+ ngOnInit() {
35
+ this.calcListItems();
36
+ if (this.appendTo) {
37
+ this.appendListTo();
38
+ }
39
+ setTimeout(() => {
40
+ this.listItemHeight = this.elementRef.nativeElement.querySelector('li').getBoundingClientRect().height;
41
+ this.selectTypedValue(this.typedValue);
42
+ });
43
+ }
44
+ appendListTo() {
45
+ const parent = document.querySelector(this.appendTo);
46
+ if (!parent) {
47
+ throw new Error(`appendTo selector ${this.appendTo} did not found any parent element`);
48
+ }
49
+ parent.appendChild(this.elementRef.nativeElement);
50
+ }
51
+ calcListItems() {
52
+ if (this.showDayStart) {
53
+ this.timeList.push({
54
+ value: '00:00',
55
+ title: this.timepickerService.getConfig().dayStart,
56
+ });
57
+ }
58
+ for (let index = 0; index < 24; index++) {
59
+ for (const minute of ['00', '30']) {
60
+ if (index === 0 && minute === '00') {
61
+ continue;
62
+ }
63
+ this.timeList.push({
64
+ value: (index > 9 ? index + '' : '0' + index) + ':' + minute,
65
+ title: (index > 9 ? index + '' : '0' + index) + ':' + minute,
66
+ });
67
+ }
68
+ }
69
+ if (this.showDayEnd) {
70
+ this.timeList.push({
71
+ value: '23:59',
72
+ title: this.timepickerService.getConfig().dayEnd,
73
+ });
74
+ }
75
+ }
76
+ ngOnChanges() {
77
+ this.selectTypedValue(this.typedValue);
78
+ if (this.elementRef.nativeElement) {
79
+ this.elementRef.nativeElement.style.top = this.listPosition.top + 'px';
80
+ this.elementRef.nativeElement.style.left = this.listPosition.left + 'px';
81
+ this.elementRef.nativeElement.style.width = this.listPosition.width + 'px';
82
+ if (this.appendTo) {
83
+ this.elementRef.nativeElement.style.position = 'fixed';
84
+ }
85
+ }
86
+ }
87
+ selectTypedValue(value) {
88
+ if (value) {
89
+ const hour = parseInt(value.split(':')[0], 10);
90
+ if (hour || hour === 0) {
91
+ this.hoveredItemIndex = hour * 2;
92
+ this.scrollTo(this.hoveredItemIndex);
93
+ }
94
+ }
95
+ }
96
+ scrollTo(index) {
97
+ this.elementRef.nativeElement.querySelector('.inner-scroll').scrollTop = index * this.listItemHeight;
98
+ }
99
+ close() {
100
+ this.closeMe.emit(null);
101
+ }
102
+ setTime(value) {
103
+ this.closeMe.emit(value);
104
+ }
105
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeListPanelComponent, deps: [{ token: i0.ElementRef }, { token: i1.FormTimePickerService }], target: i0.ɵɵFactoryTarget.Component }); }
106
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTimeListPanelComponent, selector: "ecabs-time-list-panel", inputs: { typedValue: "typedValue", listPlacement: "listPlacement", listPosition: "listPosition", appendTo: "appendTo", min: "min", max: "max", showDayStart: "showDayStart", showDayEnd: "showDayEnd", position: "position" }, outputs: { onscroll: "onscroll", closeMe: "closeMe" }, host: { listeners: { "document:keydown": "handleKeydown($event)" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"list\">\r\n <div class=\"inner-scroll\">\r\n <div class=\"inner\">\r\n <ul>\r\n <li\r\n *ngFor=\"let i of timeList; let counter = index\"\r\n (click)=\"setTime(i.value)\"\r\n (mouseenter)=\"hoveredItemIndex = counter\"\r\n [ngClass]=\"{ active: typedValue === i.value, hovered: counter === hoveredItemIndex }\"\r\n >\r\n {{ i.title }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
107
+ }
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeListPanelComponent, decorators: [{
109
+ type: Component,
110
+ args: [{ selector: 'ecabs-time-list-panel', template: "<div class=\"list\">\r\n <div class=\"inner-scroll\">\r\n <div class=\"inner\">\r\n <ul>\r\n <li\r\n *ngFor=\"let i of timeList; let counter = index\"\r\n (click)=\"setTime(i.value)\"\r\n (mouseenter)=\"hoveredItemIndex = counter\"\r\n [ngClass]=\"{ active: typedValue === i.value, hovered: counter === hoveredItemIndex }\"\r\n >\r\n {{ i.title }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
111
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FormTimePickerService }]; }, propDecorators: { typedValue: [{
112
+ type: Input
113
+ }], listPlacement: [{
114
+ type: Input
115
+ }], listPosition: [{
116
+ type: Input
117
+ }], appendTo: [{
118
+ type: Input
119
+ }], min: [{
120
+ type: Input
121
+ }], max: [{
122
+ type: Input
123
+ }], showDayStart: [{
124
+ type: Input
125
+ }], showDayEnd: [{
126
+ type: Input
127
+ }], position: [{
128
+ type: Input
129
+ }], onscroll: [{
130
+ type: Output
131
+ }], closeMe: [{
132
+ type: Output
133
+ }], handleKeydown: [{
134
+ type: HostListener,
135
+ args: ['document:keydown', ['$event']]
136
+ }] } });
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10aW1lcGlja2VyL2NvbXBvbmV0cy9lY2Ficy10aW1lLWxpc3QtcGFuZWwvZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy10aW1lcGlja2VyL2NvbXBvbmV0cy9lY2Ficy10aW1lLWxpc3QtcGFuZWwvZWNhYnMtdGltZS1saXN0LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUF5QixNQUFNLGVBQWUsQ0FBQzs7OztBQU9wSCxNQUFNLE9BQU8sMkJBQTJCO0lBb0J0QyxZQUFxQixVQUFzQixFQUFVLGlCQUF3QztRQUF4RSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUF1QjtRQWxCcEYsa0JBQWEsR0FBa0IsTUFBTSxDQUFDO1FBQ3RDLGlCQUFZLEdBQWlCLEVBQUUsQ0FBQztRQUtoQyxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGFBQVEsR0FBaUIsRUFBRSxDQUFDO1FBRTNCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBa0MsQ0FBQztRQUM5RCxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUU1QyxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsYUFBUSxHQUFvQyxFQUFFLENBQUM7SUFJbUQsQ0FBQztJQUduRyxhQUFhLENBQUUsTUFBcUI7UUFDbEMsSUFBSyxNQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsRUFBRztZQUM5QixvRUFBb0U7WUFDcEUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFFLENBQUM7U0FDeEM7UUFDRCxJQUFLLE1BQU0sQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFHO1lBQ2hDLG9FQUFvRTtZQUNwRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xGLElBQUksQ0FBQyxRQUFRLENBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFFLENBQUM7U0FDeEM7UUFDRCxJQUFLLE1BQU0sQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFHO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUUsQ0FBQyxLQUFLLENBQUUsQ0FBQztTQUM5RDtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUssSUFBSSxDQUFDLFFBQVEsRUFBRztZQUNuQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDckI7UUFFRCxVQUFVLENBQUUsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUUsSUFBSSxDQUFFLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDekcsSUFBSSxDQUFDLGdCQUFnQixDQUFFLElBQUksQ0FBQyxVQUFVLENBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUUsQ0FBQztJQUNOLENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBRSxJQUFJLENBQUMsUUFBUSxDQUFFLENBQUM7UUFDdkQsSUFBSyxDQUFDLE1BQU0sRUFBRztZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUUscUJBQXNCLElBQUksQ0FBQyxRQUFTLG1DQUFtQyxDQUFFLENBQUM7U0FDNUY7UUFDRCxNQUFNLENBQUMsV0FBVyxDQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFFLENBQUM7SUFDdEQsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFLLElBQUksQ0FBQyxZQUFZLEVBQUc7WUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUU7Z0JBQ2xCLEtBQUssRUFBRSxPQUFPO2dCQUNkLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUTthQUNuRCxDQUFFLENBQUM7U0FDTDtRQUNELEtBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUc7WUFDekMsS0FBTSxNQUFNLE1BQU0sSUFBSSxDQUFFLElBQUksRUFBRSxJQUFJLENBQUUsRUFBRztnQkFDckMsSUFBSyxLQUFLLEtBQUssQ0FBQyxJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUc7b0JBQ3BDLFNBQVM7aUJBQ1Y7Z0JBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUU7b0JBQ2xCLEtBQUssRUFBRSxDQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUUsR0FBRyxHQUFHLEdBQUcsTUFBTTtvQkFDOUQsS0FBSyxFQUFFLENBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBRSxHQUFHLEdBQUcsR0FBRyxNQUFNO2lCQUMvRCxDQUFFLENBQUM7YUFDTDtTQUNGO1FBQ0QsSUFBSyxJQUFJLENBQUMsVUFBVSxFQUFHO1lBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFO2dCQUNsQixLQUFLLEVBQUUsT0FBTztnQkFDZCxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU07YUFDakQsQ0FBRSxDQUFDO1NBQ0w7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBRSxJQUFJLENBQUMsVUFBVSxDQUFFLENBQUM7UUFDekMsSUFBSyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRztZQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztZQUN2RSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztZQUN6RSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUMzRSxJQUFLLElBQUksQ0FBQyxRQUFRLEVBQUc7Z0JBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO2FBQ3hEO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUUsS0FBVTtRQUMxQixJQUFLLEtBQUssRUFBRztZQUNYLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBRSxLQUFLLENBQUMsS0FBSyxDQUFFLEdBQUcsQ0FBRSxDQUFFLENBQUMsQ0FBRSxFQUFFLEVBQUUsQ0FBRSxDQUFDO1lBQ3JELElBQUssSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUc7Z0JBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBRSxDQUFDO2FBQ3hDO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFFLEtBQWE7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFFLGVBQWUsQ0FBRSxDQUFDLFNBQVMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUN6RyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFFLElBQUksQ0FBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxPQUFPLENBQUUsS0FBVTtRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBRSxLQUFLLENBQUUsQ0FBQztJQUM3QixDQUFDOytHQXJIVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiwrYUNQeEMseWVBZ0JBOzs0RkRUYSwyQkFBMkI7a0JBSnZDLFNBQVM7K0JBQ0UsdUJBQXVCO3FJQUl4QixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQVVQLGFBQWE7c0JBRFosWUFBWTt1QkFBRSxrQkFBa0IsRUFBRSxDQUFFLFFBQVEsQ0FBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgRWxlbWVudFJlZiwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExpc3RQbGFjZW1lbnQsIExpc3RQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy90aW1lcGlja2VyLm1vZGVscyc7XHJcbmltcG9ydCB7IEZvcm1UaW1lUGlja2VyU2VydmljZSB9IGZyb20gJy4uLy4uL2VjYWJzLXRpbWVwaWNrZXIuc2VydmljZSc7XHJcbkBDb21wb25lbnQoIHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLXRpbWUtbGlzdC1wYW5lbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VjYWJzLXRpbWUtbGlzdC1wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbn0gKVxyXG5leHBvcnQgY2xhc3MgRWNhYnNUaW1lTGlzdFBhbmVsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIHR5cGVkVmFsdWU6IGFueTtcclxuICBASW5wdXQoKSBsaXN0UGxhY2VtZW50OiBMaXN0UGxhY2VtZW50ID0gJ2F1dG8nO1xyXG4gIEBJbnB1dCgpIGxpc3RQb3NpdGlvbjogTGlzdFBvc2l0aW9uID0ge307XHJcblxyXG4gIEBJbnB1dCgpIGFwcGVuZFRvITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1pbiE6IHN0cmluZztcclxuICBASW5wdXQoKSBtYXghOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2hvd0RheVN0YXJ0ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93RGF5RW5kID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcG9zaXRpb246IExpc3RQb3NpdGlvbiA9IHt9O1xyXG5cclxuICBAT3V0cHV0KCkgb25zY3JvbGwgPSBuZXcgRXZlbnRFbWl0dGVyPHsgc3RhcnQ6IG51bWJlcjsgZW5kOiBudW1iZXIgfT4oKTtcclxuICBAT3V0cHV0KCkgY2xvc2VNZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBob3ZlcmVkSXRlbUluZGV4ID0gMDtcclxuICB0aW1lTGlzdDogeyB2YWx1ZTogYW55OyB0aXRsZTogc3RyaW5nIH1bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIGxpc3RJdGVtSGVpZ2h0ITogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHRpbWVwaWNrZXJTZXJ2aWNlOiBGb3JtVGltZVBpY2tlclNlcnZpY2UgKSB7IH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lciggJ2RvY3VtZW50OmtleWRvd24nLCBbICckZXZlbnQnIF0gKVxyXG4gIGhhbmRsZUtleWRvd24oICRldmVudDogS2V5Ym9hcmRFdmVudCApOiB2b2lkIHtcclxuICAgIGlmICggJGV2ZW50LmtleSA9PT0gJ0Fycm93VXAnICkge1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC1leHByZXNzaW9uc1xyXG4gICAgICB0aGlzLmhvdmVyZWRJdGVtSW5kZXggPyB0aGlzLmhvdmVyZWRJdGVtSW5kZXgtLSA6IG51bGw7XHJcbiAgICAgIHRoaXMuc2Nyb2xsVG8oIHRoaXMuaG92ZXJlZEl0ZW1JbmRleCApO1xyXG4gICAgfVxyXG4gICAgaWYgKCAkZXZlbnQua2V5ID09PSAnQXJyb3dEb3duJyApIHtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtZXhwcmVzc2lvbnNcclxuICAgICAgdGhpcy5ob3ZlcmVkSXRlbUluZGV4ICsgMSA8IHRoaXMudGltZUxpc3QubGVuZ3RoID8gdGhpcy5ob3ZlcmVkSXRlbUluZGV4KysgOiBudWxsO1xyXG4gICAgICB0aGlzLnNjcm9sbFRvKCB0aGlzLmhvdmVyZWRJdGVtSW5kZXggKTtcclxuICAgIH1cclxuICAgIGlmICggJGV2ZW50LmtleSA9PT0gJ0VudGVyJyApIHtcclxuICAgICAgdGhpcy5zZXRUaW1lKCB0aGlzLnRpbWVMaXN0WyB0aGlzLmhvdmVyZWRJdGVtSW5kZXggXS52YWx1ZSApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhbGNMaXN0SXRlbXMoKTtcclxuICAgIGlmICggdGhpcy5hcHBlbmRUbyApIHtcclxuICAgICAgdGhpcy5hcHBlbmRMaXN0VG8oKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRUaW1lb3V0KCAoKSA9PiB7XHJcbiAgICAgIHRoaXMubGlzdEl0ZW1IZWlnaHQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCAnbGknICkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xyXG4gICAgICB0aGlzLnNlbGVjdFR5cGVkVmFsdWUoIHRoaXMudHlwZWRWYWx1ZSApO1xyXG4gICAgfSApO1xyXG4gIH1cclxuXHJcbiAgYXBwZW5kTGlzdFRvKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFyZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvciggdGhpcy5hcHBlbmRUbyApO1xyXG4gICAgaWYgKCAhcGFyZW50ICkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoIGBhcHBlbmRUbyBzZWxlY3RvciAkeyB0aGlzLmFwcGVuZFRvIH0gZGlkIG5vdCBmb3VuZCBhbnkgcGFyZW50IGVsZW1lbnRgICk7XHJcbiAgICB9XHJcbiAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50ICk7XHJcbiAgfVxyXG5cclxuICBjYWxjTGlzdEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKCB0aGlzLnNob3dEYXlTdGFydCApIHtcclxuICAgICAgdGhpcy50aW1lTGlzdC5wdXNoKCB7XHJcbiAgICAgICAgdmFsdWU6ICcwMDowMCcsXHJcbiAgICAgICAgdGl0bGU6IHRoaXMudGltZXBpY2tlclNlcnZpY2UuZ2V0Q29uZmlnKCkuZGF5U3RhcnQsXHJcbiAgICAgIH0gKTtcclxuICAgIH1cclxuICAgIGZvciAoIGxldCBpbmRleCA9IDA7IGluZGV4IDwgMjQ7IGluZGV4KysgKSB7XHJcbiAgICAgIGZvciAoIGNvbnN0IG1pbnV0ZSBvZiBbICcwMCcsICczMCcgXSApIHtcclxuICAgICAgICBpZiAoIGluZGV4ID09PSAwICYmIG1pbnV0ZSA9PT0gJzAwJyApIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWVMaXN0LnB1c2goIHtcclxuICAgICAgICAgIHZhbHVlOiAoIGluZGV4ID4gOSA/IGluZGV4ICsgJycgOiAnMCcgKyBpbmRleCApICsgJzonICsgbWludXRlLFxyXG4gICAgICAgICAgdGl0bGU6ICggaW5kZXggPiA5ID8gaW5kZXggKyAnJyA6ICcwJyArIGluZGV4ICkgKyAnOicgKyBtaW51dGUsXHJcbiAgICAgICAgfSApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoIHRoaXMuc2hvd0RheUVuZCApIHtcclxuICAgICAgdGhpcy50aW1lTGlzdC5wdXNoKCB7XHJcbiAgICAgICAgdmFsdWU6ICcyMzo1OScsXHJcbiAgICAgICAgdGl0bGU6IHRoaXMudGltZXBpY2tlclNlcnZpY2UuZ2V0Q29uZmlnKCkuZGF5RW5kLFxyXG4gICAgICB9ICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0VHlwZWRWYWx1ZSggdGhpcy50eXBlZFZhbHVlICk7XHJcbiAgICBpZiAoIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50ICkge1xyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS50b3AgPSB0aGlzLmxpc3RQb3NpdGlvbi50b3AgKyAncHgnO1xyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhpcy5saXN0UG9zaXRpb24ubGVmdCArICdweCc7XHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gdGhpcy5saXN0UG9zaXRpb24ud2lkdGggKyAncHgnO1xyXG4gICAgICBpZiAoIHRoaXMuYXBwZW5kVG8gKSB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RUeXBlZFZhbHVlKCB2YWx1ZTogYW55ICk6IHZvaWQge1xyXG4gICAgaWYgKCB2YWx1ZSApIHtcclxuICAgICAgY29uc3QgaG91ciA9IHBhcnNlSW50KCB2YWx1ZS5zcGxpdCggJzonIClbIDAgXSwgMTAgKTtcclxuICAgICAgaWYgKCBob3VyIHx8IGhvdXIgPT09IDAgKSB7XHJcbiAgICAgICAgdGhpcy5ob3ZlcmVkSXRlbUluZGV4ID0gaG91ciAqIDI7XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUbyggdGhpcy5ob3ZlcmVkSXRlbUluZGV4ICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNjcm9sbFRvKCBpbmRleDogbnVtYmVyICk6IHZvaWQge1xyXG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvciggJy5pbm5lci1zY3JvbGwnICkuc2Nyb2xsVG9wID0gaW5kZXggKiB0aGlzLmxpc3RJdGVtSGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlTWUuZW1pdCggbnVsbCApO1xyXG4gIH1cclxuXHJcbiAgc2V0VGltZSggdmFsdWU6IGFueSApOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VNZS5lbWl0KCB2YWx1ZSApO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibGlzdFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJpbm5lci1zY3JvbGxcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpbm5lclwiPlxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgPGxpXHJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgaSBvZiB0aW1lTGlzdDsgbGV0IGNvdW50ZXIgPSBpbmRleFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic2V0VGltZShpLnZhbHVlKVwiXHJcbiAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlcmVkSXRlbUluZGV4ID0gY291bnRlclwiXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdHlwZWRWYWx1ZSA9PT0gaS52YWx1ZSwgaG92ZXJlZDogY291bnRlciA9PT0gaG92ZXJlZEl0ZW1JbmRleCB9XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBpLnRpdGxlIH19XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgPC91bD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXRpbWVwaWNrZXIvY29uZmlnLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEZvcm1UaW1lUGlja2VyQ29uZmlnIHtcclxuICBkYXlTdGFydDogc3RyaW5nO1xyXG4gIGRheUVuZDogc3RyaW5nO1xyXG4gIGljb25DbGFzczogc3RyaW5nO1xyXG59XHJcbiJdfQ==