@taiga-ui/kit 3.0.0-rc.4 → 3.0.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 (185) hide show
  1. package/bundles/taiga-ui-kit-components-accordion.umd.js +1 -1
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-action.umd.js +41 -46
  4. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-combo-box.umd.js +1 -1
  8. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-files.umd.js +1 -1
  10. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-input-copy.umd.js +2 -2
  12. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-input-count.umd.js +12 -6
  14. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +14 -10
  16. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +2 -2
  18. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-date.umd.js +2 -2
  20. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  22. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  24. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-number.umd.js +5 -8
  26. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-password.umd.js +19 -15
  28. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +4 -4
  30. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  32. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input-tag.umd.js +68 -59
  34. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-time.umd.js +1 -1
  36. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  38. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +1 -1
  40. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-multi-select.umd.js +8 -2
  42. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-push.umd.js +670 -0
  44. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -0
  45. package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
  46. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-text-area.umd.js +25 -19
  48. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components.umd.js +10 -4
  50. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-validators.umd.js +2 -2
  52. package/bundles/taiga-ui-kit-validators.umd.js.map +1 -1
  53. package/components/action/action.component.d.ts +2 -4
  54. package/components/action/action.module.d.ts +2 -3
  55. package/components/combo-box/combo-box.directive.d.ts +2 -2
  56. package/components/index.d.ts +1 -0
  57. package/components/input/input.directive.d.ts +2 -2
  58. package/components/input-copy/input-copy.directive.d.ts +2 -2
  59. package/components/input-count/input-count.directive.d.ts +4 -3
  60. package/components/input-date/input-date.directive.d.ts +2 -2
  61. package/components/input-date-range/input-date-range.component.d.ts +3 -4
  62. package/components/input-date-range/input-date-range.directive.d.ts +3 -2
  63. package/components/input-date-time/input-date-time.directive.d.ts +2 -2
  64. package/components/input-month/input-month.directive.d.ts +2 -2
  65. package/components/input-month-range/input-month-range.directive.d.ts +2 -2
  66. package/components/input-number/input-number.directive.d.ts +2 -3
  67. package/components/input-password/input-password.component.d.ts +5 -4
  68. package/components/input-password/input-password.directive.d.ts +2 -2
  69. package/components/input-phone/input-phone.directive.d.ts +2 -2
  70. package/components/input-phone-international/input-phone-international.module.d.ts +1 -1
  71. package/components/input-tag/input-tag.component.d.ts +7 -6
  72. package/components/multi-select/multi-select.component.d.ts +2 -1
  73. package/components/push/index.d.ts +7 -0
  74. package/components/push/package.json +10 -0
  75. package/components/push/push-alert.component.d.ts +19 -0
  76. package/components/push/push-alert.directive.d.ts +12 -0
  77. package/components/push/push.component.d.ts +14 -0
  78. package/components/push/push.directive.d.ts +13 -0
  79. package/components/push/push.module.d.ts +13 -0
  80. package/components/push/push.options.d.ts +10 -0
  81. package/components/push/push.service.d.ts +13 -0
  82. package/components/push/taiga-ui-kit-components-push.d.ts +5 -0
  83. package/components/select/select.directive.d.ts +2 -2
  84. package/components/text-area/text-area.component.d.ts +6 -5
  85. package/components/text-area/text-area.directive.d.ts +2 -2
  86. package/components/text-area/text-area.module.d.ts +1 -1
  87. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +2 -2
  88. package/esm2015/components/action/action.component.js +18 -24
  89. package/esm2015/components/action/action.module.js +1 -5
  90. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  91. package/esm2015/components/combo-box/combo-box.directive.js +3 -3
  92. package/esm2015/components/files/file/file.component.js +3 -3
  93. package/esm2015/components/index.js +2 -1
  94. package/esm2015/components/input/input.directive.js +3 -3
  95. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  96. package/esm2015/components/input-copy/input-copy.directive.js +3 -3
  97. package/esm2015/components/input-count/input-count.component.js +2 -3
  98. package/esm2015/components/input-count/input-count.directive.js +13 -6
  99. package/esm2015/components/input-date/input-date.component.js +2 -2
  100. package/esm2015/components/input-date/input-date.directive.js +3 -3
  101. package/esm2015/components/input-date-range/input-date-range.component.js +9 -10
  102. package/esm2015/components/input-date-range/input-date-range.directive.js +8 -3
  103. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  104. package/esm2015/components/input-date-time/input-date-time.directive.js +3 -3
  105. package/esm2015/components/input-month/input-month.directive.js +3 -3
  106. package/esm2015/components/input-month-range/input-month-range.directive.js +3 -3
  107. package/esm2015/components/input-number/input-number.component.js +2 -2
  108. package/esm2015/components/input-number/input-number.directive.js +6 -9
  109. package/esm2015/components/input-password/input-password.component.js +14 -12
  110. package/esm2015/components/input-password/input-password.directive.js +7 -5
  111. package/esm2015/components/input-phone/input-phone.component.js +2 -2
  112. package/esm2015/components/input-phone/input-phone.directive.js +3 -3
  113. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  114. package/esm2015/components/input-phone-international/input-phone-international.module.js +5 -5
  115. package/esm2015/components/input-tag/input-tag.component.js +32 -19
  116. package/esm2015/components/input-time/input-time.component.js +2 -2
  117. package/esm2015/components/line-clamp/line-clamp.component.js +2 -2
  118. package/esm2015/components/multi-select/multi-select.component.js +9 -3
  119. package/esm2015/components/push/index.js +8 -0
  120. package/esm2015/components/push/push-alert.component.js +49 -0
  121. package/esm2015/components/push/push-alert.directive.js +45 -0
  122. package/esm2015/components/push/push.component.js +52 -0
  123. package/esm2015/components/push/push.directive.js +54 -0
  124. package/esm2015/components/push/push.module.js +73 -0
  125. package/esm2015/components/push/push.options.js +10 -0
  126. package/esm2015/components/push/push.service.js +23 -0
  127. package/esm2015/components/push/taiga-ui-kit-components-push.js +5 -0
  128. package/esm2015/components/select/select.directive.js +3 -3
  129. package/esm2015/components/text-area/text-area.component.js +26 -17
  130. package/esm2015/components/text-area/text-area.directive.js +3 -3
  131. package/esm2015/components/text-area/text-area.module.js +2 -5
  132. package/esm2015/validators/unfinished.validator.js +4 -4
  133. package/fesm2015/taiga-ui-kit-components-accordion.js +1 -1
  134. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  135. package/fesm2015/taiga-ui-kit-components-action.js +17 -27
  136. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  137. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  138. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  139. package/fesm2015/taiga-ui-kit-components-combo-box.js +2 -2
  140. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  141. package/fesm2015/taiga-ui-kit-components-files.js +2 -2
  142. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  143. package/fesm2015/taiga-ui-kit-components-input-copy.js +3 -3
  144. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  145. package/fesm2015/taiga-ui-kit-components-input-count.js +13 -7
  146. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  147. package/fesm2015/taiga-ui-kit-components-input-date-range.js +14 -10
  148. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  149. package/fesm2015/taiga-ui-kit-components-input-date-time.js +3 -3
  150. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  151. package/fesm2015/taiga-ui-kit-components-input-date.js +3 -3
  152. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  153. package/fesm2015/taiga-ui-kit-components-input-month-range.js +2 -2
  154. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  155. package/fesm2015/taiga-ui-kit-components-input-month.js +2 -2
  156. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  157. package/fesm2015/taiga-ui-kit-components-input-number.js +6 -9
  158. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  159. package/fesm2015/taiga-ui-kit-components-input-password.js +18 -15
  160. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  161. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +5 -5
  162. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  163. package/fesm2015/taiga-ui-kit-components-input-phone.js +3 -3
  164. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  165. package/fesm2015/taiga-ui-kit-components-input-tag.js +31 -18
  166. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  167. package/fesm2015/taiga-ui-kit-components-input-time.js +1 -1
  168. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  169. package/fesm2015/taiga-ui-kit-components-input.js +2 -2
  170. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  171. package/fesm2015/taiga-ui-kit-components-line-clamp.js +1 -1
  172. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  173. package/fesm2015/taiga-ui-kit-components-multi-select.js +8 -2
  174. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  175. package/fesm2015/taiga-ui-kit-components-push.js +277 -0
  176. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -0
  177. package/fesm2015/taiga-ui-kit-components-select.js +2 -2
  178. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  179. package/fesm2015/taiga-ui-kit-components-text-area.js +26 -20
  180. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  181. package/fesm2015/taiga-ui-kit-components.js +1 -0
  182. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  183. package/fesm2015/taiga-ui-kit-validators.js +3 -3
  184. package/fesm2015/taiga-ui-kit-validators.js.map +1 -1
  185. package/package.json +4 -4
@@ -0,0 +1,54 @@
1
+ import { Directive, Inject, Optional, SkipSelf } from '@angular/core';
2
+ import { TUI_BUTTON_OPTIONS, TuiModeDirective } from '@taiga-ui/core';
3
+ import { Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@taiga-ui/core";
6
+ export class TuiPushDirective extends TuiModeDirective {
7
+ constructor(modeDirective) {
8
+ var _a;
9
+ super();
10
+ this.modeDirective = modeDirective;
11
+ this.size = `s`;
12
+ this.shape = null;
13
+ this.change$ = ((_a = this.modeDirective) === null || _a === void 0 ? void 0 : _a.change$) || new Subject();
14
+ }
15
+ get appearance() {
16
+ var _a;
17
+ return ((_a = this.modeDirective) === null || _a === void 0 ? void 0 : _a.mode) === `onDark` ? `accent` : `secondary`;
18
+ }
19
+ }
20
+ TuiPushDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushDirective, deps: [{ token: TuiModeDirective, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
21
+ TuiPushDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiPushDirective, selector: "tui-push", providers: [
22
+ {
23
+ provide: TuiModeDirective,
24
+ useExisting: TuiPushDirective,
25
+ },
26
+ {
27
+ provide: TUI_BUTTON_OPTIONS,
28
+ useExisting: TuiPushDirective,
29
+ },
30
+ ], usesInheritance: true, ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: `tui-push`,
35
+ providers: [
36
+ {
37
+ provide: TuiModeDirective,
38
+ useExisting: TuiPushDirective,
39
+ },
40
+ {
41
+ provide: TUI_BUTTON_OPTIONS,
42
+ useExisting: TuiPushDirective,
43
+ },
44
+ ],
45
+ }]
46
+ }], ctorParameters: function () { return [{ type: i1.TuiModeDirective, decorators: [{
47
+ type: Optional
48
+ }, {
49
+ type: SkipSelf
50
+ }, {
51
+ type: Inject,
52
+ args: [TuiModeDirective]
53
+ }] }]; } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9wdXNoL3B1c2guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFDLGtCQUFrQixFQUFvQixnQkFBZ0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3RGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQWU3QixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZ0JBQWdCO0lBT2xELFlBSXFCLGFBQXNDOztRQUV2RCxLQUFLLEVBQUUsQ0FBQztRQUZTLGtCQUFhLEdBQWIsYUFBYSxDQUF5QjtRQVYzRCxTQUFJLEdBQTZCLEdBQUcsQ0FBQztRQUVyQyxVQUFLLEdBQUcsSUFBSSxDQUFDO1FBRUosWUFBTyxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsYUFBYSwwQ0FBRSxPQUFPLEtBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQztJQVNoRSxDQUFDO0lBRUQsSUFBSSxVQUFVOztRQUNWLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxhQUFhLDBDQUFFLElBQUksTUFBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQzFFLENBQUM7OzhHQWxCUSxnQkFBZ0Isa0JBVWIsZ0JBQWdCO2tHQVZuQixnQkFBZ0IsbUNBWGQ7UUFDUDtZQUNJLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsV0FBVyxFQUFFLGdCQUFnQjtTQUNoQztRQUNEO1lBQ0ksT0FBTyxFQUFFLGtCQUFrQjtZQUMzQixXQUFXLEVBQUUsZ0JBQWdCO1NBQ2hDO0tBQ0o7NEZBRVEsZ0JBQWdCO2tCQWI1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGdCQUFnQjs0QkFDekIsV0FBVyxrQkFBa0I7eUJBQ2hDO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsa0JBQWtCO3lCQUNoQztxQkFDSjtpQkFDSjs7MEJBU1EsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5qZWN0LCBPcHRpb25hbCwgU2tpcFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUVUlfQlVUVE9OX09QVElPTlMsIFR1aUJ1dHRvbk9wdGlvbnMsIFR1aU1vZGVEaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXB1c2hgLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUdWlNb2RlRGlyZWN0aXZlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFR1aVB1c2hEaXJlY3RpdmUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9CVVRUT05fT1BUSU9OUyxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBUdWlQdXNoRGlyZWN0aXZlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVB1c2hEaXJlY3RpdmUgZXh0ZW5kcyBUdWlNb2RlRGlyZWN0aXZlIGltcGxlbWVudHMgVHVpQnV0dG9uT3B0aW9ucyB7XG4gICAgc2l6ZTogVHVpQnV0dG9uT3B0aW9uc1snc2l6ZSddID0gYHNgO1xuXG4gICAgc2hhcGUgPSBudWxsO1xuXG4gICAgcmVhZG9ubHkgY2hhbmdlJCA9IHRoaXMubW9kZURpcmVjdGl2ZT8uY2hhbmdlJCB8fCBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTa2lwU2VsZigpXG4gICAgICAgIEBJbmplY3QoVHVpTW9kZURpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtb2RlRGlyZWN0aXZlOiBUdWlNb2RlRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBnZXQgYXBwZWFyYW5jZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlRGlyZWN0aXZlPy5tb2RlID09PSBgb25EYXJrYCA/IGBhY2NlbnRgIDogYHNlY29uZGFyeWA7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,73 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { TUI_ALERTS } from '@taiga-ui/cdk';
4
+ import { TuiButtonModule, TuiFormatDatePipeModule, TuiLinkModule, TuiSvgModule, } from '@taiga-ui/core';
5
+ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
6
+ import { TuiPushComponent } from './push.component';
7
+ import { TuiPushDirective } from './push.directive';
8
+ import { TuiPushService } from './push.service';
9
+ import { TuiPushAlertComponent } from './push-alert.component';
10
+ import { TuiPushAlertDirective } from './push-alert.directive';
11
+ import * as i0 from "@angular/core";
12
+ export class TuiPushModule {
13
+ }
14
+ TuiPushModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ TuiPushModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushModule, declarations: [TuiPushComponent,
16
+ TuiPushDirective,
17
+ TuiPushAlertComponent,
18
+ TuiPushAlertDirective], imports: [CommonModule,
19
+ PolymorpheusModule,
20
+ TuiButtonModule,
21
+ TuiLinkModule,
22
+ TuiSvgModule,
23
+ TuiFormatDatePipeModule], exports: [TuiPushComponent,
24
+ TuiPushDirective,
25
+ TuiPushAlertComponent,
26
+ TuiPushAlertDirective] });
27
+ TuiPushModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushModule, providers: [
28
+ {
29
+ provide: TUI_ALERTS,
30
+ useExisting: TuiPushService,
31
+ multi: true,
32
+ },
33
+ ], imports: [[
34
+ CommonModule,
35
+ PolymorpheusModule,
36
+ TuiButtonModule,
37
+ TuiLinkModule,
38
+ TuiSvgModule,
39
+ TuiFormatDatePipeModule,
40
+ ]] });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushModule, decorators: [{
42
+ type: NgModule,
43
+ args: [{
44
+ imports: [
45
+ CommonModule,
46
+ PolymorpheusModule,
47
+ TuiButtonModule,
48
+ TuiLinkModule,
49
+ TuiSvgModule,
50
+ TuiFormatDatePipeModule,
51
+ ],
52
+ declarations: [
53
+ TuiPushComponent,
54
+ TuiPushDirective,
55
+ TuiPushAlertComponent,
56
+ TuiPushAlertDirective,
57
+ ],
58
+ exports: [
59
+ TuiPushComponent,
60
+ TuiPushDirective,
61
+ TuiPushAlertComponent,
62
+ TuiPushAlertDirective,
63
+ ],
64
+ providers: [
65
+ {
66
+ provide: TUI_ALERTS,
67
+ useExisting: TuiPushService,
68
+ multi: true,
69
+ },
70
+ ],
71
+ }]
72
+ }] });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9wdXNoL3B1c2gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNILGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsYUFBYSxFQUNiLFlBQVksR0FDZixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7QUErQjdELE1BQU0sT0FBTyxhQUFhOzsyR0FBYixhQUFhOzRHQUFiLGFBQWEsaUJBbkJsQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixxQkFBcUIsYUFYckIsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsYUFBYTtRQUNiLFlBQVk7UUFDWix1QkFBdUIsYUFTdkIsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIscUJBQXFCOzRHQVVoQixhQUFhLGFBUlg7UUFDUDtZQUNJLE9BQU8sRUFBRSxVQUFVO1lBQ25CLFdBQVcsRUFBRSxjQUFjO1lBQzNCLEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixZQTFCUTtZQUNMLFlBQVk7WUFDWixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGFBQWE7WUFDYixZQUFZO1lBQ1osdUJBQXVCO1NBQzFCOzRGQXFCUSxhQUFhO2tCQTdCekIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixZQUFZO3dCQUNaLHVCQUF1QjtxQkFDMUI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjtxQkFDeEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjtxQkFDeEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLEVBQUUsY0FBYzs0QkFDM0IsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUVUlfQUxFUlRTfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVHVpQnV0dG9uTW9kdWxlLFxuICAgIFR1aUZvcm1hdERhdGVQaXBlTW9kdWxlLFxuICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlQdXNoQ29tcG9uZW50fSBmcm9tICcuL3B1c2guY29tcG9uZW50JztcbmltcG9ydCB7VHVpUHVzaERpcmVjdGl2ZX0gZnJvbSAnLi9wdXNoLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1R1aVB1c2hTZXJ2aWNlfSBmcm9tICcuL3B1c2guc2VydmljZSc7XG5pbXBvcnQge1R1aVB1c2hBbGVydENvbXBvbmVudH0gZnJvbSAnLi9wdXNoLWFsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aVB1c2hBbGVydERpcmVjdGl2ZX0gZnJvbSAnLi9wdXNoLWFsZXJ0LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpQnV0dG9uTW9kdWxlLFxuICAgICAgICBUdWlMaW5rTW9kdWxlLFxuICAgICAgICBUdWlTdmdNb2R1bGUsXG4gICAgICAgIFR1aUZvcm1hdERhdGVQaXBlTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFR1aVB1c2hDb21wb25lbnQsXG4gICAgICAgIFR1aVB1c2hEaXJlY3RpdmUsXG4gICAgICAgIFR1aVB1c2hBbGVydENvbXBvbmVudCxcbiAgICAgICAgVHVpUHVzaEFsZXJ0RGlyZWN0aXZlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBUdWlQdXNoQ29tcG9uZW50LFxuICAgICAgICBUdWlQdXNoRGlyZWN0aXZlLFxuICAgICAgICBUdWlQdXNoQWxlcnRDb21wb25lbnQsXG4gICAgICAgIFR1aVB1c2hBbGVydERpcmVjdGl2ZSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfQUxFUlRTLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFR1aVB1c2hTZXJ2aWNlLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHVzaE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,10 @@
1
+ export const TUI_PUSH_DEFAULT_OPTIONS = {
2
+ heading: ``,
3
+ type: ``,
4
+ timestamp: 0,
5
+ image: ``,
6
+ icon: ``,
7
+ iconColor: ``,
8
+ buttons: [],
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaC5vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvcHVzaC9wdXNoLm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQW1CO0lBQ3BELE9BQU8sRUFBRSxFQUFFO0lBQ1gsSUFBSSxFQUFFLEVBQUU7SUFDUixTQUFTLEVBQUUsQ0FBQztJQUNaLEtBQUssRUFBRSxFQUFFO0lBQ1QsSUFBSSxFQUFFLEVBQUU7SUFDUixTQUFTLEVBQUUsRUFBRTtJQUNiLE9BQU8sRUFBRSxFQUFFO0NBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVHVpUHVzaE9wdGlvbnMge1xuICAgIHJlYWRvbmx5IGhlYWRpbmc6IHN0cmluZztcbiAgICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgaW1hZ2U6IHN0cmluZztcbiAgICByZWFkb25seSBpY29uOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgaWNvbkNvbG9yOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgYnV0dG9uczogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfUFVTSF9ERUZBVUxUX09QVElPTlM6IFR1aVB1c2hPcHRpb25zID0ge1xuICAgIGhlYWRpbmc6IGBgLFxuICAgIHR5cGU6IGBgLFxuICAgIHRpbWVzdGFtcDogMCxcbiAgICBpbWFnZTogYGAsXG4gICAgaWNvbjogYGAsXG4gICAgaWNvbkNvbG9yOiBgYCxcbiAgICBidXR0b25zOiBbXSxcbn07XG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { AbstractTuiDialogService } from '@taiga-ui/cdk';
3
+ import { PolymorpheusComponent } from '@tinkoff/ng-polymorpheus';
4
+ import { TUI_PUSH_DEFAULT_OPTIONS } from './push.options';
5
+ import { TuiPushAlertComponent } from './push-alert.component';
6
+ import * as i0 from "@angular/core";
7
+ export class TuiPushService extends AbstractTuiDialogService {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.component = new PolymorpheusComponent(TuiPushAlertComponent);
11
+ this.defaultOptions = TUI_PUSH_DEFAULT_OPTIONS;
12
+ }
13
+ open(content, options = {}) {
14
+ return super.open(content, options);
15
+ }
16
+ }
17
+ TuiPushService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
18
+ TuiPushService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushService, providedIn: `root` });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPushService, decorators: [{
20
+ type: Injectable,
21
+ args: [{ providedIn: `root` }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvcHVzaC9wdXNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsd0JBQXdCLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQztBQUdwRixPQUFPLEVBQUMsd0JBQXdCLEVBQWlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBRzdELE1BQU0sT0FBTyxjQUFlLFNBQVEsd0JBQWdEO0lBRHBGOztRQUV1QixjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzdELG1CQUFjLEdBQUcsd0JBQXdCLENBQUM7S0FRaEU7SUFORyxJQUFJLENBQ0EsT0FBMkUsRUFDM0UsVUFBbUMsRUFBRTtRQUVyQyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OzRHQVRRLGNBQWM7Z0hBQWQsY0FBYyxjQURGLE1BQU07NEZBQ2xCLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWJzdHJhY3RUdWlEaWFsb2dTZXJ2aWNlLCBUdWlCYXNlRGlhbG9nQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbXBvbmVudCwgUG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX1BVU0hfREVGQVVMVF9PUFRJT05TLCBUdWlQdXNoT3B0aW9uc30gZnJvbSAnLi9wdXNoLm9wdGlvbnMnO1xuaW1wb3J0IHtUdWlQdXNoQWxlcnRDb21wb25lbnR9IGZyb20gJy4vcHVzaC1hbGVydC5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogYHJvb3RgfSlcbmV4cG9ydCBjbGFzcyBUdWlQdXNoU2VydmljZSBleHRlbmRzIEFic3RyYWN0VHVpRGlhbG9nU2VydmljZTxUdWlQdXNoT3B0aW9ucywgc3RyaW5nPiB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbXBvbmVudCA9IG5ldyBQb2x5bW9ycGhldXNDb21wb25lbnQoVHVpUHVzaEFsZXJ0Q29tcG9uZW50KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdE9wdGlvbnMgPSBUVUlfUFVTSF9ERUZBVUxUX09QVElPTlM7XG5cbiAgICBvcGVuKFxuICAgICAgICBjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUJhc2VEaWFsb2dDb250ZXh0PHN0cmluZz4gJiBUdWlQdXNoT3B0aW9ucz4sXG4gICAgICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpUHVzaE9wdGlvbnM+ID0ge30sXG4gICAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHN1cGVyLm9wZW4oY29udGVudCwgb3B0aW9ucyk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWNvbXBvbmVudHMtcHVzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3B1c2gvdGFpZ2EtdWkta2l0LWNvbXBvbmVudHMtcHVzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import { Directive } from '@angular/core';
2
- import { TuiAbstractTextfieldHost, tuiAsTextfieldHost } from '@taiga-ui/core';
2
+ import { AbstractTuiTextfieldHost, tuiAsTextfieldHost } from '@taiga-ui/core';
3
3
  import * as i0 from "@angular/core";
4
- export class TuiSelectDirective extends TuiAbstractTextfieldHost {
4
+ export class TuiSelectDirective extends AbstractTuiTextfieldHost {
5
5
  get readOnly() {
6
6
  return true;
7
7
  }
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
21
21
  providers: [tuiAsTextfieldHost(TuiSelectDirective)],
22
22
  }]
23
23
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSx3QkFFdkM7SUFDRyxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7Z0hBYlEsa0JBQWtCO29HQUFsQixrQkFBa0IscUNBRmhCLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQzs0RkFFMUMsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxZQUFZO29CQUN0QixTQUFTLEVBQUUsQ0FBQyxrQkFBa0Isb0JBQW9CLENBQUM7aUJBQ3REIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlBYnN0cmFjdFRleHRmaWVsZEhvc3QsIHR1aUFzVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQge1R1aVNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9zZWxlY3QuY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGB0dWktc2VsZWN0YCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc1RleHRmaWVsZEhvc3QoVHVpU2VsZWN0RGlyZWN0aXZlKV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVNlbGVjdERpcmVjdGl2ZSBleHRlbmRzIFR1aUFic3RyYWN0VGV4dGZpZWxkSG9zdDxcbiAgICBUdWlTZWxlY3RDb21wb25lbnQ8dW5rbm93bj5cbj4ge1xuICAgIGdldCByZWFkT25seSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmhvc3QuY29tcHV0ZWRWYWx1ZTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3N0Lm9uVmFsdWVDaGFuZ2UodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSx3QkFFdkM7SUFDRyxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7Z0hBYlEsa0JBQWtCO29HQUFsQixrQkFBa0IscUNBRmhCLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQzs0RkFFMUMsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxZQUFZO29CQUN0QixTQUFTLEVBQUUsQ0FBQyxrQkFBa0Isb0JBQW9CLENBQUM7aUJBQ3REIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3QsIHR1aUFzVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQge1R1aVNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9zZWxlY3QuY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGB0dWktc2VsZWN0YCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc1RleHRmaWVsZEhvc3QoVHVpU2VsZWN0RGlyZWN0aXZlKV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVNlbGVjdERpcmVjdGl2ZSBleHRlbmRzIEFic3RyYWN0VHVpVGV4dGZpZWxkSG9zdDxcbiAgICBUdWlTZWxlY3RDb21wb25lbnQ8dW5rbm93bj5cbj4ge1xuICAgIGdldCByZWFkT25seSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmhvc3QuY29tcHV0ZWRWYWx1ZTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3N0Lm9uVmFsdWVDaGFuZ2UodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, HostBinding, HostListener, Inject, Input, Optional, Self, ViewChild, } from '@angular/core';
3
3
  import { NgControl } from '@angular/forms';
4
4
  import { AbstractTuiControl, TUI_IS_IOS, tuiAsControl, tuiAsFocusableItemAccessor, tuiDefaultProp, tuiIsNativeFocused, } from '@taiga-ui/cdk';
5
- import { HINT_CONTROLLER_PROVIDER, MODE_PROVIDER, TEXTFIELD_CONTROLLER_PROVIDER, TUI_HINT_WATCHED_CONTROLLER, TUI_MODE, TUI_TEXTFIELD_APPEARANCE, TUI_TEXTFIELD_WATCHED_CONTROLLER, tuiGetBorder, TuiTextfieldComponent, } from '@taiga-ui/core';
5
+ import { MODE_PROVIDER, TEXTFIELD_CONTROLLER_PROVIDER, TUI_MODE, TUI_TEXTFIELD_APPEARANCE, TUI_TEXTFIELD_WATCHED_CONTROLLER, tuiGetBorder, TuiHintOptionsDirective, TuiTextfieldComponent, } from '@taiga-ui/core';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@taiga-ui/core";
8
8
  import * as i2 from "@angular/common";
@@ -13,14 +13,15 @@ export const DEFAULT_ROWS = 20;
13
13
  export const LINE_HEIGHT_M = 20;
14
14
  export const LINE_HEIGHT_L = 24;
15
15
  export class TuiTextAreaComponent extends AbstractTuiControl {
16
- constructor(control, changeDetectorRef, appearance, isIOS, mode$, controller, hintController) {
16
+ constructor(control, changeDetectorRef, appearance, isIOS, mode$, controller, hintOptions) {
17
17
  super(control, changeDetectorRef);
18
18
  this.appearance = appearance;
19
19
  this.isIOS = isIOS;
20
20
  this.mode$ = mode$;
21
21
  this.controller = controller;
22
- this.hintController = hintController;
22
+ this.hintOptions = hintOptions;
23
23
  this.rows = DEFAULT_ROWS;
24
+ this.maxLength = null;
24
25
  this.expandable = false;
25
26
  }
26
27
  get labelOutside() {
@@ -46,21 +47,24 @@ export class TuiTextAreaComponent extends AbstractTuiControl {
46
47
  return this.controller.cleaner && this.hasValue && this.interactive;
47
48
  }
48
49
  get hasTooltip() {
49
- return !!this.hintController.content && !this.disabled;
50
+ var _a;
51
+ return !!((_a = this.hintOptions) === null || _a === void 0 ? void 0 : _a.content) && !this.computedDisabled;
50
52
  }
51
53
  get hasValue() {
52
54
  return this.value !== ``;
53
55
  }
54
56
  get hasCounter() {
55
- return !!this.controller.maxLength && this.interactive;
57
+ return !!this.maxLength && this.interactive;
56
58
  }
57
59
  get hasPlaceholder() {
58
60
  return !this.controller.labelOutside || (!this.hasValue && !this.hasExampleText);
59
61
  }
60
62
  get hasExampleText() {
61
63
  var _a;
62
- const text = this.controller.exampleText || ((_a = this.textfield) === null || _a === void 0 ? void 0 : _a.nativeElement.placeholder);
63
- return !!text && this.focused && !this.hasValue && !this.readOnly;
64
+ return (!!((_a = this.textfield) === null || _a === void 0 ? void 0 : _a.nativeElement.placeholder) &&
65
+ this.focused &&
66
+ !this.hasValue &&
67
+ !this.readOnly);
64
68
  }
65
69
  get computeMaxHeight() {
66
70
  return this.expandable ? this.rows * this.lineHeight : null;
@@ -70,10 +74,10 @@ export class TuiTextAreaComponent extends AbstractTuiControl {
70
74
  ((this.computedFocused && !this.readOnly) || this.hasValue));
71
75
  }
72
76
  get fittedContent() {
73
- return this.value.slice(0, this.controller.maxLength || Infinity);
77
+ return this.value.slice(0, this.maxLength || Infinity);
74
78
  }
75
79
  get extraContent() {
76
- return this.value.slice(this.controller.maxLength || Infinity);
80
+ return this.value.slice(this.maxLength || Infinity);
77
81
  }
78
82
  onFocused(focused) {
79
83
  this.updateFocused(focused);
@@ -97,17 +101,19 @@ export class TuiTextAreaComponent extends AbstractTuiControl {
97
101
  return this.controller.size === `m` ? LINE_HEIGHT_M : LINE_HEIGHT_L;
98
102
  }
99
103
  }
100
- TuiTextAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiTextAreaComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_TEXTFIELD_APPEARANCE }, { token: TUI_IS_IOS }, { token: TUI_MODE }, { token: TUI_TEXTFIELD_WATCHED_CONTROLLER }, { token: TUI_HINT_WATCHED_CONTROLLER }], target: i0.ɵɵFactoryTarget.Component });
101
- TuiTextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiTextAreaComponent, selector: "tui-text-area", inputs: { rows: "rows", expandable: "expandable" }, host: { listeners: { "$.data-mode.attr": "mode$", "focusin": "onFocused(true)", "focusout": "onFocused(false)" }, properties: { "class._ios": "isIOS", "class._expandable": "this.expandable", "class._label-outside": "this.labelOutside", "attr.data-size": "this.size", "style.--border-end.rem": "this.border", "class._has-tooltip": "this.hasTooltip", "class._has-value": "this.hasValue", "class._has-counter": "this.hasCounter" } }, providers: [
104
+ TuiTextAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiTextAreaComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_TEXTFIELD_APPEARANCE }, { token: TUI_IS_IOS }, { token: TUI_MODE }, { token: TUI_TEXTFIELD_WATCHED_CONTROLLER }, { token: TuiHintOptionsDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
105
+ TuiTextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiTextAreaComponent, selector: "tui-text-area", inputs: { rows: "rows", maxLength: "maxLength", expandable: "expandable" }, host: { listeners: { "$.data-mode.attr": "mode$", "focusin": "onFocused(true)", "focusout": "onFocused(false)" }, properties: { "class._ios": "isIOS", "class._expandable": "this.expandable", "class._label-outside": "this.labelOutside", "attr.data-size": "this.size", "style.--border-end.rem": "this.border", "class._has-tooltip": "this.hasTooltip", "class._has-value": "this.hasValue", "class._has-counter": "this.hasCounter" } }, providers: [
102
106
  tuiAsFocusableItemAccessor(TuiTextAreaComponent),
103
107
  tuiAsControl(TuiTextAreaComponent),
104
108
  TEXTFIELD_CONTROLLER_PROVIDER,
105
- HINT_CONTROLLER_PROVIDER,
106
109
  MODE_PROVIDER,
107
- ], queries: [{ propertyName: "textfield", first: true, predicate: TuiTextfieldComponent, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n tuiWrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ controller.maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || controller.exampleText\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n &nbsp;\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [placeholder]=\"controller.exampleText\"\n [id]=\"id\"\n [tuiDescribedBy]=\"id\"\n [tuiFocusable]=\"computedFocusable\"\n [disabled]=\"computedDisabled\"\n [ngModel]=\"value\"\n [readOnly]=\"readOnly\"\n (ngModelChange)=\"onValueChange($event)\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <tui-svg\n *ngIf=\"hasCleaner\"\n src=\"tuiIconCloseLarge\"\n class=\"t-cleaner\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n class=\"t-tooltip\"\n [describeId]=\"id\"\n [direction]=\"hintController.direction\"\n [appearance]=\"hintController.appearance\"\n [content]=\"hintController.content || ''\"\n [showDelay]=\"hintController.showDelay\"\n [hideDelay]=\"hintController.hideDelay\"\n ></tui-tooltip>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;font:var(--tui-font-text-m);flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=m]{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-size=m]._has-counter{min-height:6.625rem}:host[data-size=l]._has-counter{min-height:7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-size=m]._label-outside .t-wrapper{padding-top:.75rem}:host[data-size=l]._label-outside .t-wrapper{padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-wrapper{padding-top:1.375rem}:host[data-size=l]:not(._label-outside) .t-wrapper{padding-top:1.625rem}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0)}:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0)}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-input:not(:last-of-type){display:none}.t-input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0);position:absolute;left:0;max-width:100%;padding:0 1rem;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0);box-sizing:border-box}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}:host[data-size=m] .t-placeholder{top:.75rem;padding:0 .75rem}:host[data-size=l] .t-placeholder{top:1rem}:host._label-outside .t-placeholder{overflow:visible;overflow:initial;height:auto;white-space:normal;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:1rem .75rem}:host[data-size=m] .t-icons{padding:.75rem}.t-cleaner{transition-property:all;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform;pointer-events:auto}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-tooltip{pointer-events:auto}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { 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: i1.TuiDescribedByDirective, selector: "[tuiDescribedBy]:not(ng-container)", inputs: ["tuiDescribedBy"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { 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 });
110
+ ], queries: [{ propertyName: "textfield", first: true, predicate: TuiTextfieldComponent, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n tuiWrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n &nbsp;\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [id]=\"id\"\n [tuiFocusable]=\"computedFocusable\"\n [disabled]=\"computedDisabled\"\n [ngModel]=\"value\"\n [readOnly]=\"readOnly\"\n (ngModelChange)=\"onValueChange($event)\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <tui-svg\n *ngIf=\"hasCleaner\"\n src=\"tuiIconCloseLarge\"\n class=\"t-cleaner\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-text-area__tooltip\"\n class=\"t-tooltip\"\n [describeId]=\"id\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [content]=\"hintOptions.content\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;font:var(--tui-font-text-m);flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=m]{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-size=m]._has-counter{min-height:6.625rem}:host[data-size=l]._has-counter{min-height:7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-size=m]._label-outside .t-wrapper{padding-top:.75rem}:host[data-size=l]._label-outside .t-wrapper{padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-wrapper{padding-top:1.375rem}:host[data-size=l]:not(._label-outside) .t-wrapper{padding-top:1.625rem}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0)}:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0)}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-input:not(:last-of-type){display:none}.t-input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0);position:absolute;left:0;max-width:100%;padding:0 1rem;border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0);box-sizing:border-box}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}:host[data-size=m] .t-placeholder{top:.75rem;padding:0 .75rem}:host[data-size=l] .t-placeholder{top:1rem}:host._label-outside .t-placeholder{overflow:visible;overflow:initial;height:auto;white-space:normal;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:1rem .75rem}:host[data-size=m] .t-icons{padding:.75rem}.t-cleaner{transition-property:all;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform;pointer-events:auto}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-tooltip{pointer-events:auto}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { 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: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { 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"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
108
111
  __decorate([
109
112
  tuiDefaultProp()
110
113
  ], TuiTextAreaComponent.prototype, "rows", void 0);
114
+ __decorate([
115
+ tuiDefaultProp()
116
+ ], TuiTextAreaComponent.prototype, "maxLength", void 0);
111
117
  __decorate([
112
118
  tuiDefaultProp()
113
119
  ], TuiTextAreaComponent.prototype, "expandable", void 0);
@@ -122,7 +128,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
122
128
  tuiAsFocusableItemAccessor(TuiTextAreaComponent),
123
129
  tuiAsControl(TuiTextAreaComponent),
124
130
  TEXTFIELD_CONTROLLER_PROVIDER,
125
- HINT_CONTROLLER_PROVIDER,
126
131
  MODE_PROVIDER,
127
132
  ],
128
133
  host: {
@@ -152,9 +157,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
152
157
  }] }, { type: i1.TuiTextfieldController, decorators: [{
153
158
  type: Inject,
154
159
  args: [TUI_TEXTFIELD_WATCHED_CONTROLLER]
155
- }] }, { type: i1.TuiHintControllerDirective, decorators: [{
160
+ }] }, { type: i1.TuiHintOptionsDirective, decorators: [{
161
+ type: Optional
162
+ }, {
156
163
  type: Inject,
157
- args: [TUI_HINT_WATCHED_CONTROLLER]
164
+ args: [TuiHintOptionsDirective]
158
165
  }] }]; }, propDecorators: { focusableElement: [{
159
166
  type: ViewChild,
160
167
  args: [`focusableElement`]
@@ -163,6 +170,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
163
170
  args: [TuiTextfieldComponent, { read: ElementRef }]
164
171
  }], rows: [{
165
172
  type: Input
173
+ }], maxLength: [{
174
+ type: Input
166
175
  }], expandable: [{
167
176
  type: Input
168
177
  }, {
@@ -193,4 +202,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
193
202
  type: HostListener,
194
203
  args: [`focusout`, [`false`]]
195
204
  }] } });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGV4dC1hcmVhL3RleHQtYXJlYS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsVUFBVSxFQUNWLFlBQVksRUFDWiwwQkFBMEIsRUFDMUIsY0FBYyxFQUVkLGtCQUFrQixHQUNyQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYiw2QkFBNkIsRUFDN0IsMkJBQTJCLEVBQzNCLFFBQVEsRUFDUix3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBRWhDLFlBQVksRUFJWixxQkFBcUIsR0FFeEIsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQUd4QixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFDaEMsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQW1CaEMsTUFBTSxPQUFPLG9CQUNULFNBQVEsa0JBQTBCO0lBa0JsQyxZQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBQ3BCLFVBQWtCLEVBQ2hDLEtB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V0FBVzt1QkFBQyxzQkFBc0I7Z0JBb0IvQixJQUFJO3NCQURQLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixNQUFNO3NCQURULFdBQVc7dUJBQUMsd0JBQXdCO2dCQVVqQyxVQUFVO3NCQURiLFdBQVc7dUJBQUMsb0JBQW9CO2dCQU03QixRQUFRO3NCQURYLFdBQVc7dUJBQUMsa0JBQWtCO2dCQU0zQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsb0JBQW9CO2dCQXFDakMsU0FBUztzQkFGUixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQzs7c0JBQ2hDLFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgVFVJX0lTX0lPUyxcbiAgICB0dWlBc0NvbnRyb2wsXG4gICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9ISU5UX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUVUlfTU9ERSxcbiAgICBUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UsXG4gICAgVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVHVpQnJpZ2h0bmVzcyxcbiAgICB0dWlHZXRCb3JkZXIsXG4gICAgVHVpSGludENvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpU2l6ZVMsXG4gICAgVHVpVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1JPV1MgPSAyMDtcbmV4cG9ydCBjb25zdCBMSU5FX0hFSUdIVF9NID0gMjA7XG5leHBvcnQgY29uc3QgTElORV9IRUlHSFRfTCA9IDI0O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS10ZXh0LWFyZWFgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi90ZXh0LWFyZWEudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vdGV4dC1hcmVhLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpVGV4dEFyZWFDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpVGV4dEFyZWFDb21wb25lbnQpLFxuICAgICAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgSElOVF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnKCQuZGF0YS1tb2RlLmF0dHIpJzogYG1vZGUkYCxcbiAgICAgICAgJ1tjbGFzcy5faW9zXSc6IGBpc0lPU2AsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dEFyZWFDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKGBmb2N1c2FibGVFbGVtZW50YClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvY3VzYWJsZUVsZW1lbnQ/OiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+O1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlUZXh0ZmllbGRDb21wb25lbnQsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IEVsZW1lbnRSZWY8SFRNTFRleHRBcmVhRWxlbWVudD47XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcm93cyA9IERFRkFVTFRfUk9XUztcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fZXhwYW5kYWJsZWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBleHBhbmRhYmxlID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfQVBQRUFSQU5DRSkgcmVhZG9ubHkgYXBwZWFyYW5jZTogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHJlYWRvbmx5IGlzSU9TOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoVFVJX0hJTlRfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBoaW50Q29udHJvbGxlcjogVHVpSGludENvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9sYWJlbC1vdXRzaWRlYClcbiAgICBnZXQgbGFiZWxPdXRzaWRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MVGV4dEFyZWFFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmNvbXB1dGVkRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMudGV4dGZpZWxkPy5uYXRpdmVFbGVtZW50IHx8IHRoaXMuZm9jdXNhYmxlRWxlbWVudD8ubmF0aXZlRWxlbWVudCB8fCBudWxsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc05hdGl2ZUZvY3VzZWQodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItZW5kLnJlbWApXG4gICAgZ2V0IGJvcmRlcigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpR2V0Qm9yZGVyKGZhbHNlLCB0aGlzLmhhc0NsZWFuZXIsIHRoaXMuaGFzVG9vbHRpcCk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJiB0aGlzLmhhc1ZhbHVlICYmIHRoaXMuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGFzLXRvb2x0aXBgKVxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRDb250cm9sbGVyLmNvbnRlbnQgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGFzLXZhbHVlYClcbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSBgYDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9oYXMtY291bnRlcmApXG4gICAgZ2V0IGhhc0NvdW50ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY29udHJvbGxlci5tYXhMZW5ndGggJiYgdGhpcy5pbnRlcmFjdGl2ZTtcbiAgICB9XG5cbiAgICBnZXQgaGFzUGxhY2Vob2xkZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZSB8fCAoIXRoaXMuaGFzVmFsdWUgJiYgIXRoaXMuaGFzRXhhbXBsZVRleHQpO1xuICAgIH1cblxuICAgIGdldCBoYXNFeGFtcGxlVGV4dCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdGV4dCA9XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIuZXhhbXBsZVRleHQgfHwgdGhpcy50ZXh0ZmllbGQ/Lm5hdGl2ZUVsZW1lbnQucGxhY2Vob2xkZXI7XG5cbiAgICAgICAgcmV0dXJuICEhdGV4dCAmJiB0aGlzLmZvY3VzZWQgJiYgIXRoaXMuaGFzVmFsdWUgJiYgIXRoaXMucmVhZE9ubHk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVNYXhIZWlnaHQoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGFuZGFibGUgPyB0aGlzLnJvd3MgKiB0aGlzLmxpbmVIZWlnaHQgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCBwbGFjZWhvbGRlclJhaXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmNvbnRyb2xsZXIubGFiZWxPdXRzaWRlICYmXG4gICAgICAgICAgICAoKHRoaXMuY29tcHV0ZWRGb2N1c2VkICYmICF0aGlzLnJlYWRPbmx5KSB8fCB0aGlzLmhhc1ZhbHVlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBmaXR0ZWRDb250ZW50KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLnNsaWNlKDAsIHRoaXMuY29udHJvbGxlci5tYXhMZW5ndGggfHwgSW5maW5pdHkpO1xuICAgIH1cblxuICAgIGdldCBleHRyYUNvbnRlbnQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUuc2xpY2UodGhpcy5jb250cm9sbGVyLm1heExlbmd0aCB8fCBJbmZpbml0eSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNpbmAsIFtgdHJ1ZWBdKVxuICAgIEBIb3N0TGlzdGVuZXIoYGZvY3Vzb3V0YCwgW2BmYWxzZWBdKVxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCA9PT0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBgO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGxpbmVIZWlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplID09PSBgbWAgPyBMSU5FX0hFSUdIVF9NIDogTElORV9IRUlHSFRfTDtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgdHVpV3JhcHBlclxuICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktdGV4dC1hcmVhX193cmFwcGVyXCJcbiAgICBjbGFzcz1cInQtb3V0bGluZVwiXG4gICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZm9jdXNdPVwiY29tcHV0ZWRGb2N1c2VkXCJcbiAgICBbaG92ZXJdPVwicHNldWRvSG92ZXJcIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiaGFzQ291bnRlclwiXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktdGV4dC1hcmVhX19jb3VudGVyXCJcbiAgICAgICAgY2xhc3M9XCJ0LWNvdW50ZXJcIlxuICAgID5cbiAgICAgICAge3sgdmFsdWUubGVuZ3RoIH19L3t7IGNvbnRyb2xsZXIubWF4TGVuZ3RoIH19XG4gICAgPC9kaXY+XG5cbiAgICA8bGFiZWxcbiAgICAgICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgICAgICAobW91c2Vkb3duKT1cIm9uTW91c2VEb3duKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktdGV4dC1hcmVhX19wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHR1aS1zY3JvbGxiYXJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fc2Nyb2xsYmFyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtYm94XCJcbiAgICAgICAgICAgICAgICBbc3R5bGUubWF4SGVpZ2h0LnB4XT1cImNvbXB1dGVNYXhIZWlnaHRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWlucHV0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInQtcmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wc2V1ZG8tY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImZpdHRlZENvbnRlbnQgfHwgY29udHJvbGxlci5leGFtcGxlVGV4dFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtcHNldWRvLWNvbnRlbnRfX2V4dHJhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cImV4dHJhQ29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZvY3VzYWJsZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fbmF0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250cm9sbGVyLmV4YW1wbGVUZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlEZXNjcmliZWRCeV09XCJpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInRleHRhcmVhXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdHVpLXNjcm9sbGJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWljb25zXCI+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzQ2xlYW5lclwiXG4gICAgICAgICAgICAgICAgc3JjPVwidHVpSWNvbkNsb3NlTGFyZ2VcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAoY2xpY2suc3RvcCk9XCJvblZhbHVlQ2hhbmdlKCcnKVwiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNUb29sdGlwXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fdG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFtkZXNjcmliZUlkXT1cImlkXCJcbiAgICAgICAgICAgICAgICBbZGlyZWN0aW9uXT1cImhpbnRDb250cm9sbGVyLmRpcmVjdGlvblwiXG4gICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiaGludENvbnRyb2xsZXIuYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiaGludENvbnRyb2xsZXIuY29udGVudCB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgW3Nob3dEZWxheV09XCJoaW50Q29udHJvbGxlci5zaG93RGVsYXlcIlxuICAgICAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludENvbnRyb2xsZXIuaGlkZURlbGF5XCJcbiAgICAgICAgICAgID48L3R1aS10b29sdGlwPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuPC9kaXY+XG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGV4dC1hcmVhL3RleHQtYXJlYS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsVUFBVSxFQUNWLFlBQVksRUFDWiwwQkFBMEIsRUFDMUIsY0FBYyxFQUVkLGtCQUFrQixHQUNyQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsYUFBYSxFQUNiLDZCQUE2QixFQUM3QixRQUFRLEVBQ1Isd0JBQXdCLEVBQ3hCLGdDQUFnQyxFQUVoQyxZQUFZLEVBQ1osdUJBQXVCLEVBR3ZCLHFCQUFxQixHQUV4QixNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBR3hCLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUFDL0IsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBa0JoQyxNQUFNLE9BQU8sb0JBQ1QsU0FBUSxrQkFBMEI7SUFzQmxDLFlBSUksT0FBeUIsRUFDRSxpQkFBb0MsRUFDcEIsVUFBa0IsRUFDaEMsS0FBYyxFQUNoQixLQUF1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QUFDLHNCQUFzQjtnQkFvQi9CLElBQUk7c0JBRFAsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLE1BQU07c0JBRFQsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBVWpDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBTTdCLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBTTNCLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBdUNqQyxTQUFTO3NCQUZSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDOztzQkFDaEMsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpQ29udHJvbCxcbiAgICBUVUlfSVNfSU9TLFxuICAgIHR1aUFzQ29udHJvbCxcbiAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcixcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgdHVpSXNOYXRpdmVGb2N1c2VkLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgTU9ERV9QUk9WSURFUixcbiAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBUVUlfTU9ERSxcbiAgICBUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UsXG4gICAgVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVHVpQnJpZ2h0bmVzcyxcbiAgICB0dWlHZXRCb3JkZXIsXG4gICAgVHVpSGludE9wdGlvbnNEaXJlY3RpdmUsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpU2l6ZVMsXG4gICAgVHVpVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1JPV1MgPSAyMDtcbmV4cG9ydCBjb25zdCBMSU5FX0hFSUdIVF9NID0gMjA7XG5leHBvcnQgY29uc3QgTElORV9IRUlHSFRfTCA9IDI0O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS10ZXh0LWFyZWFgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi90ZXh0LWFyZWEudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vdGV4dC1hcmVhLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpVGV4dEFyZWFDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpVGV4dEFyZWFDb21wb25lbnQpLFxuICAgICAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJygkLmRhdGEtbW9kZS5hdHRyKSc6IGBtb2RlJGAsXG4gICAgICAgICdbY2xhc3MuX2lvc10nOiBgaXNJT1NgLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVRleHRBcmVhQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChgZm9jdXNhYmxlRWxlbWVudGApXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MVGV4dEFyZWFFbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpVGV4dGZpZWxkQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ/OiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHJvd3MgPSBERUZBVUxUX1JPV1M7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fZXhwYW5kYWJsZWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBleHBhbmRhYmxlID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfQVBQRUFSQU5DRSkgcmVhZG9ubHkgYXBwZWFyYW5jZTogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHJlYWRvbmx5IGlzSU9TOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSGludE9wdGlvbnNEaXJlY3RpdmUpXG4gICAgICAgIHJlYWRvbmx5IGhpbnRPcHRpb25zOiBUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9sYWJlbC1vdXRzaWRlYClcbiAgICBnZXQgbGFiZWxPdXRzaWRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MVGV4dEFyZWFFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmNvbXB1dGVkRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMudGV4dGZpZWxkPy5uYXRpdmVFbGVtZW50IHx8IHRoaXMuZm9jdXNhYmxlRWxlbWVudD8ubmF0aXZlRWxlbWVudCB8fCBudWxsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc05hdGl2ZUZvY3VzZWQodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItZW5kLnJlbWApXG4gICAgZ2V0IGJvcmRlcigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpR2V0Qm9yZGVyKGZhbHNlLCB0aGlzLmhhc0NsZWFuZXIsIHRoaXMuaGFzVG9vbHRpcCk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJiB0aGlzLmhhc1ZhbHVlICYmIHRoaXMuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGFzLXRvb2x0aXBgKVxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGFzLXZhbHVlYClcbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSBgYDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9oYXMtY291bnRlcmApXG4gICAgZ2V0IGhhc0NvdW50ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubWF4TGVuZ3RoICYmIHRoaXMuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1BsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuY29udHJvbGxlci5sYWJlbE91dHNpZGUgfHwgKCF0aGlzLmhhc1ZhbHVlICYmICF0aGlzLmhhc0V4YW1wbGVUZXh0KTtcbiAgICB9XG5cbiAgICBnZXQgaGFzRXhhbXBsZVRleHQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhIXRoaXMudGV4dGZpZWxkPy5uYXRpdmVFbGVtZW50LnBsYWNlaG9sZGVyICYmXG4gICAgICAgICAgICB0aGlzLmZvY3VzZWQgJiZcbiAgICAgICAgICAgICF0aGlzLmhhc1ZhbHVlICYmXG4gICAgICAgICAgICAhdGhpcy5yZWFkT25seVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlTWF4SGVpZ2h0KCk6IG51bWJlciB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5leHBhbmRhYmxlID8gdGhpcy5yb3dzICogdGhpcy5saW5lSGVpZ2h0IDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJSYWlzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZSAmJlxuICAgICAgICAgICAgKCh0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJiAhdGhpcy5yZWFkT25seSkgfHwgdGhpcy5oYXNWYWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgZml0dGVkQ29udGVudCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5zbGljZSgwLCB0aGlzLm1heExlbmd0aCB8fCBJbmZpbml0eSk7XG4gICAgfVxuXG4gICAgZ2V0IGV4dHJhQ29udGVudCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5zbGljZSh0aGlzLm1heExlbmd0aCB8fCBJbmZpbml0eSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNpbmAsIFtgdHJ1ZWBdKVxuICAgIEBIb3N0TGlzdGVuZXIoYGZvY3Vzb3V0YCwgW2BmYWxzZWBdKVxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCA9PT0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBgO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGxpbmVIZWlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplID09PSBgbWAgPyBMSU5FX0hFSUdIVF9NIDogTElORV9IRUlHSFRfTDtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaGludE9wdGlvbnM/LmNoYW5nZSQgfCBhc3luY1wiPjwvbmctY29udGFpbmVyPlxuPGRpdlxuICAgIHR1aVdyYXBwZXJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fd3JhcHBlclwiXG4gICAgY2xhc3M9XCJ0LW91dGxpbmVcIlxuICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgW2hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgIFtpbnZhbGlkXT1cImNvbXB1dGVkSW52YWxpZFwiXG4+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImhhc0NvdW50ZXJcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fY291bnRlclwiXG4gICAgICAgIGNsYXNzPVwidC1jb3VudGVyXCJcbiAgICA+XG4gICAgICAgIHt7IHZhbHVlLmxlbmd0aCB9fS97eyBtYXhMZW5ndGggfX1cbiAgICA8L2Rpdj5cblxuICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cInQtY29udGVudFwiXG4gICAgICAgIChtb3VzZWRvd24pPVwib25Nb3VzZURvd24oJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNQbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS10ZXh0LWFyZWFfX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LXBsYWNlaG9sZGVyX3JhaXNlZF09XCJwbGFjZWhvbGRlclJhaXNlZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8dHVpLXNjcm9sbGJhclxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktdGV4dC1hcmVhX19zY3JvbGxiYXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1ib3hcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5tYXhIZWlnaHQucHhdPVwiY29tcHV0ZU1heEhlaWdodFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInQtaW5wdXQtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC1yZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXBzZXVkby1jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiZml0dGVkQ29udGVudCB8fCBuYXRpdmVGb2N1c2FibGVFbGVtZW50Py5wbGFjZWhvbGRlclwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtcHNldWRvLWNvbnRlbnRfX2V4dHJhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cImV4dHJhQ29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZvY3VzYWJsZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fbmF0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInRleHRhcmVhXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdHVpLXNjcm9sbGJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWljb25zXCI+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzQ2xlYW5lclwiXG4gICAgICAgICAgICAgICAgc3JjPVwidHVpSWNvbkNsb3NlTGFyZ2VcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAoY2xpY2suc3RvcCk9XCJvblZhbHVlQ2hhbmdlKCcnKVwiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoaW50T3B0aW9ucyAmJiBoaW50T3B0aW9ucy5jb250ZW50ICYmICFjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXRleHQtYXJlYV9fdG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFtkZXNjcmliZUlkXT1cImlkXCJcbiAgICAgICAgICAgICAgICBbZGlyZWN0aW9uXT1cImhpbnRPcHRpb25zLmRpcmVjdGlvblwiXG4gICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiaGludE9wdGlvbnMuYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiaGludE9wdGlvbnMuY29udGVudFwiXG4gICAgICAgICAgICAgICAgW3Nob3dEZWxheV09XCJoaW50T3B0aW9ucy5zaG93RGVsYXlcIlxuICAgICAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgICAgID48L3R1aS10b29sdGlwPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuPC9kaXY+XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { Directive } from '@angular/core';
2
- import { TuiAbstractTextfieldHost, tuiAsTextfieldHost } from '@taiga-ui/core';
2
+ import { AbstractTuiTextfieldHost, tuiAsTextfieldHost } from '@taiga-ui/core';
3
3
  import * as i0 from "@angular/core";
4
- export class TuiTextAreaDirective extends TuiAbstractTextfieldHost {
4
+ export class TuiTextAreaDirective extends AbstractTuiTextfieldHost {
5
5
  onValueChange(value) {
6
6
  this.host.onValueChange(value);
7
7
  }
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
15
15
  providers: [tuiAsTextfieldHost(TuiTextAreaDirective)],
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx3QkFBOEM7SUFDcEYsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7a0hBSFEsb0JBQW9CO3NHQUFwQixvQkFBb0Isd0NBRmxCLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsQ0FBQzs0RkFFNUMsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixTQUFTLEVBQUUsQ0FBQyxrQkFBa0Isc0JBQXNCLENBQUM7aUJBQ3hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlBYnN0cmFjdFRleHRmaWVsZEhvc3QsIHR1aUFzVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQge1R1aVRleHRBcmVhQ29tcG9uZW50fSBmcm9tICcuL3RleHQtYXJlYS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYHR1aS10ZXh0LWFyZWFgLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlUZXh0QXJlYURpcmVjdGl2ZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0QXJlYURpcmVjdGl2ZSBleHRlbmRzIFR1aUFic3RyYWN0VGV4dGZpZWxkSG9zdDxUdWlUZXh0QXJlYUNvbXBvbmVudD4ge1xuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3Qub25WYWx1ZUNoYW5nZSh2YWx1ZSk7XG4gICAgfVxufVxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx3QkFBOEM7SUFDcEYsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7a0hBSFEsb0JBQW9CO3NHQUFwQixvQkFBb0Isd0NBRmxCLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsQ0FBQzs0RkFFNUMsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixTQUFTLEVBQUUsQ0FBQyxrQkFBa0Isc0JBQXNCLENBQUM7aUJBQ3hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3QsIHR1aUFzVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQge1R1aVRleHRBcmVhQ29tcG9uZW50fSBmcm9tICcuL3RleHQtYXJlYS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYHR1aS10ZXh0LWFyZWFgLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlUZXh0QXJlYURpcmVjdGl2ZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0QXJlYURpcmVjdGl2ZSBleHRlbmRzIEFic3RyYWN0VHVpVGV4dGZpZWxkSG9zdDxUdWlUZXh0QXJlYUNvbXBvbmVudD4ge1xuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3Qub25WYWx1ZUNoYW5nZSh2YWx1ZSk7XG4gICAgfVxufVxuIl19
@@ -2,7 +2,7 @@ import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
4
  import { TuiFocusableModule } from '@taiga-ui/cdk';
5
- import { TuiDescribedByModule, TuiPrimitiveTextfieldModule, TuiScrollbarModule, TuiSvgModule, TuiTextfieldComponent, TuiTooltipModule, TuiWrapperModule, } from '@taiga-ui/core';
5
+ import { TuiPrimitiveTextfieldModule, TuiScrollbarModule, TuiSvgModule, TuiTextfieldComponent, TuiTooltipModule, TuiWrapperModule, } from '@taiga-ui/core';
6
6
  import { TuiTextAreaComponent } from './text-area.component';
7
7
  import { TuiTextAreaDirective } from './text-area.directive';
8
8
  import * as i0 from "@angular/core";
@@ -15,7 +15,6 @@ TuiTextAreaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versi
15
15
  TuiScrollbarModule,
16
16
  TuiTooltipModule,
17
17
  TuiWrapperModule,
18
- TuiDescribedByModule,
19
18
  TuiSvgModule,
20
19
  TuiPrimitiveTextfieldModule], exports: [TuiTextAreaComponent, TuiTextAreaDirective, TuiTextfieldComponent] });
21
20
  TuiTextAreaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiTextAreaModule, imports: [[
@@ -25,7 +24,6 @@ TuiTextAreaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versi
25
24
  TuiScrollbarModule,
26
25
  TuiTooltipModule,
27
26
  TuiWrapperModule,
28
- TuiDescribedByModule,
29
27
  TuiSvgModule,
30
28
  TuiPrimitiveTextfieldModule,
31
29
  ]] });
@@ -39,7 +37,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
39
37
  TuiScrollbarModule,
40
38
  TuiTooltipModule,
41
39
  TuiWrapperModule,
42
- TuiDescribedByModule,
43
40
  TuiSvgModule,
44
41
  TuiPrimitiveTextfieldModule,
45
42
  ],
@@ -47,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
47
44
  exports: [TuiTextAreaComponent, TuiTextAreaDirective, TuiTextfieldComponent],
48
45
  }]
49
46
  }] });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUNILG9CQUFvQixFQUNwQiwyQkFBMkIsRUFDM0Isa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQWlCM0QsTUFBTSxPQUFPLGlCQUFpQjs7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQUhYLG9CQUFvQixFQUFFLG9CQUFvQixhQVZyRCxZQUFZO1FBQ1osV0FBVztRQUNYLGtCQUFrQjtRQUNsQixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixvQkFBb0I7UUFDcEIsWUFBWTtRQUNaLDJCQUEyQixhQUdyQixvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUI7Z0hBRWxFLGlCQUFpQixZQWRqQjtZQUNMLFlBQVk7WUFDWixXQUFXO1lBQ1gsa0JBQWtCO1lBQ2xCLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixZQUFZO1lBQ1osMkJBQTJCO1NBQzlCOzRGQUlRLGlCQUFpQjtrQkFmN0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixZQUFZO3dCQUNaLDJCQUEyQjtxQkFDOUI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUM7b0JBQzFELE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixDQUFDO2lCQUMvRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1R1aUZvY3VzYWJsZU1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aURlc2NyaWJlZEJ5TW9kdWxlLFxuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICBUdWlTY3JvbGxiYXJNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxuICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUb29sdGlwTW9kdWxlLFxuICAgIFR1aVdyYXBwZXJNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlUZXh0QXJlYUNvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7VHVpVGV4dEFyZWFEaXJlY3RpdmV9IGZyb20gJy4vdGV4dC1hcmVhLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBUdWlGb2N1c2FibGVNb2R1bGUsXG4gICAgICAgIFR1aVNjcm9sbGJhck1vZHVsZSxcbiAgICAgICAgVHVpVG9vbHRpcE1vZHVsZSxcbiAgICAgICAgVHVpV3JhcHBlck1vZHVsZSxcbiAgICAgICAgVHVpRGVzY3JpYmVkQnlNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpVGV4dEFyZWFDb21wb25lbnQsIFR1aVRleHRBcmVhRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpVGV4dEFyZWFDb21wb25lbnQsIFR1aVRleHRBcmVhRGlyZWN0aXZlLCBUdWlUZXh0ZmllbGRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0QXJlYU1vZHVsZSB7fVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUNILDJCQUEyQixFQUMzQixrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ25CLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7O0FBZ0IzRCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBSFgsb0JBQW9CLEVBQUUsb0JBQW9CLGFBVHJELFlBQVk7UUFDWixXQUFXO1FBQ1gsa0JBQWtCO1FBQ2xCLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWiwyQkFBMkIsYUFHckIsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCO2dIQUVsRSxpQkFBaUIsWUFiakI7WUFDTCxZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixZQUFZO1lBQ1osMkJBQTJCO1NBQzlCOzRGQUlRLGlCQUFpQjtrQkFkN0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsWUFBWTt3QkFDWiwyQkFBMkI7cUJBQzlCO29CQUNELFlBQVksRUFBRSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixDQUFDO29CQUMxRCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsQ0FBQztpQkFDL0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRNb2R1bGUsXG4gICAgVHVpU2Nyb2xsYmFyTW9kdWxlLFxuICAgIFR1aVN2Z01vZHVsZSxcbiAgICBUdWlUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVG9vbHRpcE1vZHVsZSxcbiAgICBUdWlXcmFwcGVyTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB7VHVpVGV4dEFyZWFDb21wb25lbnR9IGZyb20gJy4vdGV4dC1hcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aVRleHRBcmVhRGlyZWN0aXZlfSBmcm9tICcuL3RleHQtYXJlYS5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNhYmxlTW9kdWxlLFxuICAgICAgICBUdWlTY3JvbGxiYXJNb2R1bGUsXG4gICAgICAgIFR1aVRvb2x0aXBNb2R1bGUsXG4gICAgICAgIFR1aVdyYXBwZXJNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpVGV4dEFyZWFDb21wb25lbnQsIFR1aVRleHRBcmVhRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpVGV4dEFyZWFDb21wb25lbnQsIFR1aVRleHRBcmVhRGlyZWN0aXZlLCBUdWlUZXh0ZmllbGRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0QXJlYU1vZHVsZSB7fVxuIl19
@@ -1,14 +1,14 @@
1
- import { TuiValidationError } from '@taiga-ui/cdk';
1
+ import { tuiIsHTMLElement, tuiIsInput, TuiValidationError, } from '@taiga-ui/cdk';
2
2
  export function tuiCreateUnfinishedValidator(nativeInputGetter, message) {
3
3
  return ({ value, }) => {
4
4
  const nativeInput = nativeInputGetter();
5
5
  return value === null &&
6
6
  nativeInput &&
7
- // TODO: iframe warning
8
- nativeInput.nativeFocusableElement instanceof HTMLInputElement &&
7
+ tuiIsHTMLElement(nativeInput.nativeFocusableElement) &&
8
+ tuiIsInput(nativeInput.nativeFocusableElement) &&
9
9
  nativeInput.nativeFocusableElement.value !== ``
10
10
  ? { unfinished: new TuiValidationError(message) }
11
11
  : null;
12
12
  };
13
13
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5maW5pc2hlZC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvdmFsaWRhdG9ycy91bmZpbmlzaGVkLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQThCLGtCQUFrQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzlFLE1BQU0sVUFBVSw0QkFBNEIsQ0FDeEMsaUJBQW9ELEVBQ3BELE9BQTRCO0lBRTVCLE9BQU8sQ0FBQyxFQUNKLEtBQUssR0FDUyxFQUFvRCxFQUFFO1FBQ3BFLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUM7UUFFeEMsT0FBTyxLQUFLLEtBQUssSUFBSTtZQUNqQixXQUFXO1lBQ1gsdUJBQXVCO1lBQ3ZCLFdBQVcsQ0FBQyxzQkFBc0IsWUFBWSxnQkFBZ0I7WUFDOUQsV0FBVyxDQUFDLHNCQUFzQixDQUFDLEtBQUssS0FBSyxFQUFFO1lBQy9DLENBQUMsQ0FBQyxFQUFDLFVBQVUsRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxFQUFDO1lBQy9DLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDZixDQUFDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1R1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvciwgVHVpVmFsaWRhdGlvbkVycm9yfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUNyZWF0ZVVuZmluaXNoZWRWYWxpZGF0b3IoXG4gICAgbmF0aXZlSW5wdXRHZXR0ZXI6ICgpID0+IFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBtZXNzYWdlOiBQb2x5bW9ycGhldXNDb250ZW50LFxuKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoe1xuICAgICAgICB2YWx1ZSxcbiAgICB9OiBBYnN0cmFjdENvbnRyb2wpOiB7dW5maW5pc2hlZDogVHVpVmFsaWRhdGlvbkVycm9yIHwgc3RyaW5nfSB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCBuYXRpdmVJbnB1dCA9IG5hdGl2ZUlucHV0R2V0dGVyKCk7XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlID09PSBudWxsICYmXG4gICAgICAgICAgICBuYXRpdmVJbnB1dCAmJlxuICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgIG5hdGl2ZUlucHV0Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50ICYmXG4gICAgICAgICAgICBuYXRpdmVJbnB1dC5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnZhbHVlICE9PSBgYFxuICAgICAgICAgICAgPyB7dW5maW5pc2hlZDogbmV3IFR1aVZhbGlkYXRpb25FcnJvcihtZXNzYWdlKX1cbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9O1xufVxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5maW5pc2hlZC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvdmFsaWRhdG9ycy91bmZpbmlzaGVkLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBRUgsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixrQkFBa0IsR0FDckIsTUFBTSxlQUFlLENBQUM7QUFHdkIsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxpQkFBb0QsRUFDcEQsT0FBNEI7SUFFNUIsT0FBTyxDQUFDLEVBQ0osS0FBSyxHQUNTLEVBQW9ELEVBQUU7UUFDcEUsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztRQUV4QyxPQUFPLEtBQUssS0FBSyxJQUFJO1lBQ2pCLFdBQVc7WUFDWCxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsc0JBQXNCLENBQUM7WUFDcEQsVUFBVSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQztZQUM5QyxXQUFXLENBQUMsc0JBQXNCLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDL0MsQ0FBQyxDQUFDLEVBQUMsVUFBVSxFQUFFLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLEVBQUM7WUFDL0MsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNmLENBQUMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIHR1aUlzSFRNTEVsZW1lbnQsXG4gICAgdHVpSXNJbnB1dCxcbiAgICBUdWlWYWxpZGF0aW9uRXJyb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpQ3JlYXRlVW5maW5pc2hlZFZhbGlkYXRvcihcbiAgICBuYXRpdmVJbnB1dEdldHRlcjogKCkgPT4gVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIG1lc3NhZ2U6IFBvbHltb3JwaGV1c0NvbnRlbnQsXG4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuICh7XG4gICAgICAgIHZhbHVlLFxuICAgIH06IEFic3RyYWN0Q29udHJvbCk6IHt1bmZpbmlzaGVkOiBUdWlWYWxpZGF0aW9uRXJyb3IgfCBzdHJpbmd9IHwgbnVsbCA9PiB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZUlucHV0ID0gbmF0aXZlSW5wdXRHZXR0ZXIoKTtcblxuICAgICAgICByZXR1cm4gdmFsdWUgPT09IG51bGwgJiZcbiAgICAgICAgICAgIG5hdGl2ZUlucHV0ICYmXG4gICAgICAgICAgICB0dWlJc0hUTUxFbGVtZW50KG5hdGl2ZUlucHV0Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpICYmXG4gICAgICAgICAgICB0dWlJc0lucHV0KG5hdGl2ZUlucHV0Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpICYmXG4gICAgICAgICAgICBuYXRpdmVJbnB1dC5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnZhbHVlICE9PSBgYFxuICAgICAgICAgICAgPyB7dW5maW5pc2hlZDogbmV3IFR1aVZhbGlkYXRpb25FcnJvcihtZXNzYWdlKX1cbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9O1xufVxuIl19