@taiga-ui/kit 2.34.0 → 2.35.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 (239) hide show
  1. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +2 -2
  2. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +2 -2
  4. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +64 -41
  6. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +2 -2
  8. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-input-month.umd.js +57 -32
  10. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +2 -2
  12. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-input-number.umd.js +8 -2
  14. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  16. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-phone.umd.js +8 -2
  18. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +2 -2
  20. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-tag.umd.js +15 -8
  22. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  24. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +24 -14
  26. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js +1 -1
  28. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-multi-select.umd.js +21 -7
  30. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +2 -2
  32. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-progress.umd.js +140 -73
  34. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-progress.umd.min.js +2 -2
  36. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-slider.umd.js +37 -24
  38. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-slider.umd.min.js +2 -2
  40. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-text-area.umd.js +1 -1
  42. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  43. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +1 -1
  45. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.min.js +1 -1
  46. package/bundles/taiga-ui-kit-pipes-field-error.umd.js +38 -6
  47. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js +2 -2
  49. package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-providers.umd.js +29 -12
  51. package/bundles/taiga-ui-kit-providers.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-providers.umd.min.js +1 -1
  53. package/bundles/taiga-ui-kit-providers.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-tokens.umd.js +3 -0
  55. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  57. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  58. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  59. package/components/input-month/index.d.ts +1 -0
  60. package/components/input-month/input-month.component.d.ts +6 -4
  61. package/components/input-month/input-month.directive.d.ts +8 -1
  62. package/components/input-month/input-month.providers.d.ts +2 -0
  63. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  64. package/components/input-month-range/index.d.ts +1 -0
  65. package/components/input-month-range/input-month-range.component.d.ts +6 -7
  66. package/components/input-month-range/input-month-range.directive.d.ts +8 -1
  67. package/components/input-month-range/input-month-range.providers.d.ts +2 -0
  68. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  69. package/components/input-number/input-number.directive.d.ts +4 -1
  70. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  71. package/components/input-phone/input-phone.directive.d.ts +4 -1
  72. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  73. package/components/input-tag/input-tag.component.d.ts +4 -3
  74. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  75. package/components/line-clamp/line-clamp.component.d.ts +7 -3
  76. package/components/line-clamp/taiga-ui-kit-components-line-clamp.metadata.json +1 -1
  77. package/components/multi-select/hide-selected.pipe.d.ts +1 -1
  78. package/components/multi-select/multi-select.component.d.ts +4 -2
  79. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  80. package/components/progress/index.d.ts +4 -3
  81. package/components/progress/progress-bar/progress-color-segments.directive.d.ts +11 -0
  82. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  83. package/components/progress/{pipes → utils}/abstract-color-segments.d.ts +0 -0
  84. package/components/progress/utils/calculate-color-segments.d.ts +5 -0
  85. package/components/progress/{pipes → utils}/progress-color-segments-async.pipe.d.ts +5 -0
  86. package/components/progress/utils/progress-color-segments.pipe.d.ts +9 -0
  87. package/components/slider/slider.component.d.ts +5 -6
  88. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  89. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  90. package/directives/lazy-loading/index.d.ts +1 -0
  91. package/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.d.ts +0 -1
  92. package/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.metadata.json +1 -1
  93. package/esm2015/components/calendar-month/calendar-month.component.js +3 -3
  94. package/esm2015/components/input-month/index.js +2 -1
  95. package/esm2015/components/input-month/input-month.component.js +19 -25
  96. package/esm2015/components/input-month/input-month.directive.js +32 -7
  97. package/esm2015/components/input-month/input-month.module.js +4 -4
  98. package/esm2015/components/input-month/input-month.providers.js +19 -0
  99. package/esm2015/components/input-month-range/index.js +2 -1
  100. package/esm2015/components/input-month-range/input-month-range.component.js +21 -37
  101. package/esm2015/components/input-month-range/input-month-range.directive.js +37 -7
  102. package/esm2015/components/input-month-range/input-month-range.module.js +3 -2
  103. package/esm2015/components/input-month-range/input-month-range.providers.js +19 -0
  104. package/esm2015/components/input-number/input-number.directive.js +9 -3
  105. package/esm2015/components/input-phone/input-phone.directive.js +9 -3
  106. package/esm2015/components/input-tag/input-tag.component.js +16 -9
  107. package/esm2015/components/line-clamp/line-clamp.component.js +25 -15
  108. package/esm2015/components/multi-select/hide-selected.pipe.js +4 -3
  109. package/esm2015/components/multi-select/multi-select.component.js +16 -6
  110. package/esm2015/components/progress/index.js +5 -4
  111. package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +48 -0
  112. package/esm2015/components/progress/progress.module.js +6 -3
  113. package/esm2015/components/progress/utils/abstract-color-segments.js +32 -0
  114. package/esm2015/components/progress/utils/calculate-color-segments.js +10 -0
  115. package/esm2015/components/progress/utils/progress-color-segments-async.pipe.js +21 -0
  116. package/esm2015/components/progress/utils/progress-color-segments.pipe.js +19 -0
  117. package/esm2015/components/slider/slider.component.js +34 -20
  118. package/esm2015/components/text-area/text-area.component.js +1 -1
  119. package/esm2015/directives/lazy-loading/index.js +2 -1
  120. package/esm2015/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.js +1 -2
  121. package/esm2015/pipes/field-error/field-error-content-pipe.js +35 -0
  122. package/esm2015/pipes/field-error/field-error.module.js +4 -3
  123. package/esm2015/pipes/field-error/index.js +2 -1
  124. package/esm2015/providers/index.js +2 -1
  125. package/esm2015/providers/month-formatter.provider.js +17 -0
  126. package/esm2015/providers/value-accessor.provider.js +2 -2
  127. package/esm2015/tokens/index.js +2 -1
  128. package/esm2015/tokens/month-formatter.js +3 -0
  129. package/esm5/components/calendar-month/calendar-month.component.js +3 -3
  130. package/esm5/components/input-month/index.js +2 -1
  131. package/esm5/components/input-month/input-month.component.js +18 -25
  132. package/esm5/components/input-month/input-month.directive.js +32 -9
  133. package/esm5/components/input-month/input-month.module.js +4 -4
  134. package/esm5/components/input-month/input-month.providers.js +19 -0
  135. package/esm5/components/input-month-range/index.js +2 -1
  136. package/esm5/components/input-month-range/input-month-range.component.js +20 -38
  137. package/esm5/components/input-month-range/input-month-range.directive.js +38 -8
  138. package/esm5/components/input-month-range/input-month-range.module.js +3 -2
  139. package/esm5/components/input-month-range/input-month-range.providers.js +19 -0
  140. package/esm5/components/input-number/input-number.directive.js +9 -3
  141. package/esm5/components/input-phone/input-phone.directive.js +9 -3
  142. package/esm5/components/input-tag/input-tag.component.js +16 -9
  143. package/esm5/components/line-clamp/line-clamp.component.js +26 -16
  144. package/esm5/components/multi-select/hide-selected.pipe.js +4 -4
  145. package/esm5/components/multi-select/multi-select.component.js +20 -6
  146. package/esm5/components/progress/index.js +5 -4
  147. package/esm5/components/progress/progress-bar/progress-color-segments.directive.js +56 -0
  148. package/esm5/components/progress/progress.module.js +6 -3
  149. package/esm5/components/progress/utils/abstract-color-segments.js +33 -0
  150. package/esm5/components/progress/utils/calculate-color-segments.js +12 -0
  151. package/esm5/components/progress/utils/progress-color-segments-async.pipe.js +27 -0
  152. package/esm5/components/progress/utils/progress-color-segments.pipe.js +24 -0
  153. package/esm5/components/slider/slider.component.js +37 -23
  154. package/esm5/components/text-area/text-area.component.js +1 -1
  155. package/esm5/directives/lazy-loading/index.js +2 -1
  156. package/esm5/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.js +1 -2
  157. package/esm5/pipes/field-error/field-error-content-pipe.js +36 -0
  158. package/esm5/pipes/field-error/field-error.module.js +4 -3
  159. package/esm5/pipes/field-error/index.js +2 -1
  160. package/esm5/providers/index.js +2 -1
  161. package/esm5/providers/month-formatter.provider.js +19 -0
  162. package/esm5/providers/value-accessor.provider.js +2 -2
  163. package/esm5/tokens/index.js +2 -1
  164. package/esm5/tokens/month-formatter.js +3 -0
  165. package/fesm2015/taiga-ui-kit-components-calendar-month.js +2 -2
  166. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  167. package/fesm2015/taiga-ui-kit-components-input-month-range.js +67 -41
  168. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  169. package/fesm2015/taiga-ui-kit-components-input-month.js +61 -31
  170. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  171. package/fesm2015/taiga-ui-kit-components-input-number.js +8 -2
  172. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  173. package/fesm2015/taiga-ui-kit-components-input-phone.js +8 -2
  174. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  175. package/fesm2015/taiga-ui-kit-components-input-tag.js +15 -8
  176. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  177. package/fesm2015/taiga-ui-kit-components-line-clamp.js +24 -14
  178. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  179. package/fesm2015/taiga-ui-kit-components-multi-select.js +18 -7
  180. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  181. package/fesm2015/taiga-ui-kit-components-progress.js +113 -55
  182. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  183. package/fesm2015/taiga-ui-kit-components-slider.js +33 -19
  184. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  185. package/fesm2015/taiga-ui-kit-components-text-area.js +1 -1
  186. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +1 -1
  187. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  188. package/fesm2015/taiga-ui-kit-pipes-field-error.js +35 -4
  189. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  190. package/fesm2015/taiga-ui-kit-providers.js +18 -4
  191. package/fesm2015/taiga-ui-kit-providers.js.map +1 -1
  192. package/fesm2015/taiga-ui-kit-tokens.js +3 -1
  193. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  194. package/fesm5/taiga-ui-kit-components-calendar-month.js +2 -2
  195. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  196. package/fesm5/taiga-ui-kit-components-input-month-range.js +68 -44
  197. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  198. package/fesm5/taiga-ui-kit-components-input-month.js +60 -33
  199. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  200. package/fesm5/taiga-ui-kit-components-input-number.js +8 -2
  201. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  202. package/fesm5/taiga-ui-kit-components-input-phone.js +8 -2
  203. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  204. package/fesm5/taiga-ui-kit-components-input-tag.js +15 -8
  205. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  206. package/fesm5/taiga-ui-kit-components-line-clamp.js +25 -15
  207. package/fesm5/taiga-ui-kit-components-line-clamp.js.map +1 -1
  208. package/fesm5/taiga-ui-kit-components-multi-select.js +22 -8
  209. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  210. package/fesm5/taiga-ui-kit-components-progress.js +135 -69
  211. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  212. package/fesm5/taiga-ui-kit-components-slider.js +36 -22
  213. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  214. package/fesm5/taiga-ui-kit-components-text-area.js +1 -1
  215. package/fesm5/taiga-ui-kit-directives-lazy-loading.js +1 -1
  216. package/fesm5/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  217. package/fesm5/taiga-ui-kit-pipes-field-error.js +36 -4
  218. package/fesm5/taiga-ui-kit-pipes-field-error.js.map +1 -1
  219. package/fesm5/taiga-ui-kit-providers.js +20 -4
  220. package/fesm5/taiga-ui-kit-providers.js.map +1 -1
  221. package/fesm5/taiga-ui-kit-tokens.js +3 -1
  222. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  223. package/package.json +4 -4
  224. package/pipes/field-error/field-error-content-pipe.d.ts +11 -0
  225. package/pipes/field-error/index.d.ts +1 -0
  226. package/pipes/field-error/taiga-ui-kit-pipes-field-error.metadata.json +1 -1
  227. package/providers/index.d.ts +1 -0
  228. package/providers/month-formatter.provider.d.ts +6 -0
  229. package/providers/taiga-ui-kit-providers.metadata.json +1 -1
  230. package/tokens/index.d.ts +1 -0
  231. package/tokens/month-formatter.d.ts +4 -0
  232. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  233. package/components/progress/pipes/progress-color-segments.pipe.d.ts +0 -9
  234. package/esm2015/components/progress/pipes/abstract-color-segments.js +0 -32
  235. package/esm2015/components/progress/pipes/progress-color-segments-async.pipe.js +0 -15
  236. package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +0 -18
  237. package/esm5/components/progress/pipes/abstract-color-segments.js +0 -35
  238. package/esm5/components/progress/pipes/progress-color-segments-async.pipe.js +0 -21
  239. package/esm5/components/progress/pipes/progress-color-segments.pipe.js +0 -23
@@ -3,7 +3,7 @@ import { __decorate, __param } from "tslib";
3
3
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, EventEmitter, forwardRef, HostBinding, Inject, Input, Optional, Output, Self, TemplateRef, ViewChild, } from '@angular/core';
4
4
  import { NgControl } from '@angular/forms';
5
5
  import { AbstractTuiMultipleControl, EMPTY_ARRAY, isNativeFocused, setNativeFocused, TUI_FOCUSABLE_ITEM_ACCESSOR, tuiDefaultProp, tuiPure, } from '@taiga-ui/cdk';
6
- import { TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TuiDataListAccessor, TuiDataListDirective, TuiDataListHost, TuiHostedDropdownComponent, TuiSvgService, } from '@taiga-ui/core';
6
+ import { TEXTFIELD_CONTROLLER_PROVIDER, TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TUI_TEXTFIELD_WATCHED_CONTROLLER, TuiDataListAccessor, TuiDataListDirective, TuiDataListHost, TuiHostedDropdownComponent, TuiSizeL, TuiSizeS, TuiSvgService, TuiTextfieldController, } from '@taiga-ui/core';
7
7
  import { TuiStringifiableItem } from '@taiga-ui/kit/classes';
8
8
  import { TUI_ARROW_MODE } from '@taiga-ui/kit/components/arrow';
9
9
  import { TuiInputTagComponent } from '@taiga-ui/kit/components/input-tag';
@@ -12,11 +12,12 @@ import { FIXED_DROPDOWN_CONTROLLER_PROVIDER } from '@taiga-ui/kit/providers';
12
12
  import { TUI_ITEMS_HANDLERS } from '@taiga-ui/kit/tokens';
13
13
  import { TUI_MULTI_SELECT_OPTIONS } from './multi-select-options';
14
14
  let TuiMultiSelectComponent = TuiMultiSelectComponent_1 = class TuiMultiSelectComponent extends AbstractTuiMultipleControl {
15
- constructor(control, changeDetectorRef, svgService, arrowMode, itemsHandlers, options) {
15
+ constructor(control, changeDetectorRef, svgService, arrowMode, itemsHandlers, options, controller) {
16
16
  super(control, changeDetectorRef);
17
17
  this.arrowMode = arrowMode;
18
18
  this.itemsHandlers = itemsHandlers;
19
19
  this.options = options;
20
+ this.controller = controller;
20
21
  this.stringify = this.itemsHandlers.stringify;
21
22
  this.identityMatcher = this.itemsHandlers.identityMatcher;
22
23
  this.expandable = this.options.expandable;
@@ -33,6 +34,9 @@ let TuiMultiSelectComponent = TuiMultiSelectComponent_1 = class TuiMultiSelectCo
33
34
  this.disabledItemHandlerWrapper = handler => stringifiable => typeof stringifiable === 'string' || handler(stringifiable.item);
34
35
  svgService.define({ iconBlank });
35
36
  }
37
+ get size() {
38
+ return this.controller.size;
39
+ }
36
40
  get arrow() {
37
41
  return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;
38
42
  }
@@ -154,7 +158,8 @@ TuiMultiSelectComponent.ctorParameters = () => [
154
158
  { type: TuiSvgService, decorators: [{ type: Inject, args: [TuiSvgService,] }] },
155
159
  { type: undefined, decorators: [{ type: Inject, args: [TUI_ARROW_MODE,] }] },
156
160
  { type: undefined, decorators: [{ type: Inject, args: [TUI_ITEMS_HANDLERS,] }] },
157
- { type: undefined, decorators: [{ type: Inject, args: [TUI_MULTI_SELECT_OPTIONS,] }] }
161
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_MULTI_SELECT_OPTIONS,] }] },
162
+ { type: TuiTextfieldController, decorators: [{ type: Inject, args: [TUI_TEXTFIELD_WATCHED_CONTROLLER,] }] }
158
163
  ];
159
164
  __decorate([
160
165
  ContentChild(TUI_DATA_LIST_ACCESSOR)
@@ -200,6 +205,9 @@ __decorate([
200
205
  __decorate([
201
206
  ContentChild(TuiDataListDirective, { read: TemplateRef })
202
207
  ], TuiMultiSelectComponent.prototype, "datalist", void 0);
208
+ __decorate([
209
+ HostBinding('attr.data-size')
210
+ ], TuiMultiSelectComponent.prototype, "size", null);
203
211
  __decorate([
204
212
  tuiPure
205
213
  ], TuiMultiSelectComponent.prototype, "getStringifier", null);
@@ -221,8 +229,9 @@ TuiMultiSelectComponent = TuiMultiSelectComponent_1 = __decorate([
221
229
  useExisting: forwardRef(() => TuiMultiSelectComponent_1),
222
230
  },
223
231
  FIXED_DROPDOWN_CONTROLLER_PROVIDER,
232
+ TEXTFIELD_CONTROLLER_PROVIDER,
224
233
  ],
225
- styles: [":host{position:relative;display:block}:host._disabled{pointer-events:none}.t-hosted{display:block}:host:not(._editable):not(._readonly) .input{cursor:pointer}.t-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;pointer-events:none;justify-content:flex-end}.t-wrapper_disabled{opacity:var(--tui-disabled-opacity)}.t-group{display:flex;flex:1;align-items:center;padding:1.6875rem 1rem .5625rem}.t-group_fullsize{padding-top:.0625rem;padding-bottom:0}:host[data-size='m'] .t-group_fullsize.t-group_fullsize{padding-top:0}:host[data-size='m'] .t-group{padding:1.1875rem .75rem 0;font-size:.8125rem}.t-arrow{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;transition-property:color,transform;width:1.5rem;height:auto;margin:1rem .75rem;pointer-events:auto;cursor:pointer}.t-arrow:hover{color:var(--tui-text-02)}:host._disabled .t-arrow,:host._readonly .t-arrow{pointer-events:none}:host[data-mode=onDark] .t-arrow{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-arrow:hover{color:var(--tui-text-01-night)}"]
234
+ styles: [":host{position:relative;display:block}:host._disabled{pointer-events:none}.t-hosted{display:block}:host:not(._editable):not(._readonly) .input{cursor:pointer}.t-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;pointer-events:none;justify-content:flex-end}.t-wrapper_disabled{opacity:var(--tui-disabled-opacity)}:host-context([data-size='s']) .t-wrapper{height:var(--tui-height-s)}:host-context([data-size='m']) .t-wrapper{height:var(--tui-height-m)}:host-context([data-size='l']) .t-wrapper{height:var(--tui-height-l)}.t-group{display:flex;flex:1;align-items:center;padding:1.6875rem 1rem .5625rem}.t-group_fullsize{padding-top:.0625rem;padding-bottom:0}:host[data-size='m'] .t-group_fullsize.t-group_fullsize{padding-top:0}:host[data-size='m'] .t-group{padding:1.1875rem .75rem 0;font-size:.8125rem}.t-arrow{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;transition-property:color,transform;width:1.5rem;height:auto;margin:0 .75rem;pointer-events:auto;cursor:pointer}.t-arrow:hover{color:var(--tui-text-02)}:host._disabled .t-arrow,:host._readonly .t-arrow{pointer-events:none}:host[data-mode=onDark] .t-arrow{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-arrow:hover{color:var(--tui-text-01-night)}"]
226
235
  }),
227
236
  __param(0, Optional()),
228
237
  __param(0, Self()),
@@ -231,7 +240,8 @@ TuiMultiSelectComponent = TuiMultiSelectComponent_1 = __decorate([
231
240
  __param(2, Inject(TuiSvgService)),
232
241
  __param(3, Inject(TUI_ARROW_MODE)),
233
242
  __param(4, Inject(TUI_ITEMS_HANDLERS)),
234
- __param(5, Inject(TUI_MULTI_SELECT_OPTIONS))
243
+ __param(5, Inject(TUI_MULTI_SELECT_OPTIONS)),
244
+ __param(6, Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER))
235
245
  ], TuiMultiSelectComponent);
236
246
  export { TuiMultiSelectComponent };
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvIiwic291cmNlcyI6WyJtdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsV0FBVyxFQUNYLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBRzNCLGNBQWMsRUFHZCxPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsMEJBQTBCLEVBQzFCLGFBQWEsR0FDaEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsY0FBYyxFQUFlLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxrQkFBa0IsRUFBbUIsTUFBTSxzQkFBc0IsQ0FBQztBQUcxRSxPQUFPLEVB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SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7NkRBQ2tFO0FBR25GO0lBREMsTUFBTSxFQUFFOzZEQUNpRDtBQUcxRDtJQURDLFlBQVksQ0FBQyxvQkFBb0IsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUMsQ0FBQzt5REFDWjtBQTRFNUM7SUFEQyxPQUFPOzZEQUtQO0FBOEZEO0lBREMsT0FBTzt5REFLUDtBQWxPUSx1QkFBdUI7SUFqQm5DLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxrQkFBa0I7UUFDNUIsdzVEQUEyQztRQUUzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtRQUMvQyxTQUFTLEVBQUU7WUFDUDtnQkFDSSxPQUFPLEVBQUUsMkJBQTJCO2dCQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF1QixDQUFDO2FBQ3pEO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBdUIsQ0FBQzthQUN6RDtZQUNELGtDQUFrQztTQUNyQzs7S0FDSixDQUFDO0lBc0RPLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFDVixXQUFBLElBQUksRUFBRSxDQUFBO0lBQ04sV0FBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFFakIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN6QixXQUFBLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUNyQixXQUFBLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUV0QixXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO0lBRTFCLFdBQUEsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7R0EvRDVCLHVCQUF1QixDQWtQbkM7U0FsUFksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlNdWx0aXBsZUNvbnRyb2wsXG4gICAgRU1QVFlfQVJSQVksXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIFR1aU1hcHBlcixcbiAgICB0dWlQdXJlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUVUlfREFUQV9MSVNUX0FDQ0VTU09SLFxuICAgIFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICBUdWlEYXRhTGlzdEFjY2Vzc29yLFxuICAgIFR1aURhdGFMaXN0RGlyZWN0aXZlLFxuICAgIFR1aURhdGFMaXN0SG9zdCxcbiAgICBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBUdWlTdmdTZXJ2aWNlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1R1aVN0cmluZ2lmaWFibGVJdGVtfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NsYXNzZXMnO1xuaW1wb3J0IHtUVUlfQVJST1dfTU9ERSwgVHVpQXJyb3dNb2RlfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYXJyb3cnO1xuaW1wb3J0IHtUdWlJbnB1dFRhZ0NvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXRhZyc7XG5pbXBvcnQge2ljb25CbGFua30gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Byb3ZpZGVycyc7XG5pbXBvcnQge1RVSV9JVEVNU19IQU5ETEVSUywgVHVpSXRlbXNIYW5kbGVyc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1RVSV9NVUxUSV9TRUxFQ1RfT1BUSU9OUywgVHVpTXVsdGlTZWxlY3RPcHRpb25zfSBmcm9tICcuL211bHRpLXNlbGVjdC1vcHRpb25zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktbXVsdGktc2VsZWN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbXVsdGktc2VsZWN0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL211bHRpLXNlbGVjdC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aU11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0RBVEFfTElTVF9IT1NULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpTXVsdGlTZWxlY3RDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICBGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU11bHRpU2VsZWN0Q29tcG9uZW50PFQ+XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU11bHRpcGxlQ29udHJvbDxUPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8VD5cbntcbiAgICBAQ29udGVudENoaWxkKFRVSV9EQVRBX0xJU1RfQUNDRVNTT1IgYXMgYW55KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWNjZXNzb3I/OiBUdWlEYXRhTGlzdEFjY2Vzc29yPFQ+O1xuXG4gICAgQFZpZXdDaGlsZChUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhvc3RlZERyb3Bkb3duPzogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKFR1aUlucHV0VGFnQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXQ/OiBUdWlJbnB1dFRhZ0NvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzdHJpbmdpZnk6IFR1aUl0ZW1zSGFuZGxlcnM8VD5bJ3N0cmluZ2lmeSddID0gdGhpcy5pdGVtc0hhbmRsZXJzLnN0cmluZ2lmeTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpZGVudGl0eU1hdGNoZXI6IFR1aUl0ZW1zSGFuZGxlcnM8VD5bJ2lkZW50aXR5TWF0Y2hlciddID1cbiAgICAgICAgdGhpcy5pdGVtc0hhbmRsZXJzLmlkZW50aXR5TWF0Y2hlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBleHBhbmRhYmxlOiBUdWlNdWx0aVNlbGVjdE9wdGlvbnM8VD5bJ2V4cGFuZGFibGUnXSA9IHRoaXMub3B0aW9ucy5leHBhbmRhYmxlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlYXJjaDogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9lZGl0YWJsZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlZGl0YWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpSXRlbXNIYW5kbGVyczxUPlsnZGlzYWJsZWRJdGVtSGFuZGxlciddID1cbiAgICAgICAgdGhpcy5pdGVtc0hhbmRsZXJzLmRpc2FibGVkSXRlbUhhbmRsZXI7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWVDb250ZW50OiBUdWlNdWx0aVNlbGVjdE9wdGlvbnM8VD5bJ3ZhbHVlQ29udGVudCddID0gdGhpcy5vcHRpb25zLnZhbHVlQ29udGVudDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgbnVsbD4oKTtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpRGF0YUxpc3REaXJlY3RpdmUsIHtyZWFkOiBUZW1wbGF0ZVJlZn0pXG4gICAgcmVhZG9ubHkgZGF0YWxpc3Q6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSAnJztcblxuICAgIG9wZW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVHVpU3ZnU2VydmljZSkgc3ZnU2VydmljZTogVHVpU3ZnU2VydmljZSxcbiAgICAgICAgQEluamVjdChUVUlfQVJST1dfTU9ERSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhcnJvd01vZGU6IFR1aUFycm93TW9kZSxcbiAgICAgICAgQEluamVjdChUVUlfSVRFTVNfSEFORExFUlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaXRlbXNIYW5kbGVyczogVHVpSXRlbXNIYW5kbGVyczxUPixcbiAgICAgICAgQEluamVjdChUVUlfTVVMVElfU0VMRUNUX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpTXVsdGlTZWxlY3RPcHRpb25zPFQ+LFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAgICAgc3ZnU2VydmljZS5kZWZpbmUoe2ljb25CbGFua30pO1xuICAgIH1cblxuICAgIGdldCBhcnJvdygpOiBQb2x5bW9ycGhldXNDb250ZW50IHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmludGVyYWN0aXZlID8gdGhpcy5hcnJvd01vZGUuZGlzYWJsZWQgOiB0aGlzLmFycm93TW9kZS5pbnRlcmFjdGl2ZTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmlucHV0ID8gdGhpcy5pbnB1dC5uYXRpdmVGb2N1c2FibGVFbGVtZW50IDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICghIXRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5mb2N1c2VkKSB8fFxuICAgICAgICAgICAgKCEhdGhpcy5ob3N0ZWREcm9wZG93biAmJiB0aGlzLmhvc3RlZERyb3Bkb3duLmZvY3VzZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkVmFsdWUoKTogUmVhZG9ubHlBcnJheTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkR3JvdXAgPyBFTVBUWV9BUlJBWSA6IHRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgLy8gQGJhZCBUT0RPOiB0aGluayBvZiBhIGJldHRlciB3YXlcbiAgICBnZXQgc2VhcmNoT3JTcGFjZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlZEdyb3VwID8gJyAnIDogdGhpcy5zZWFyY2hTdHJpbmc7XG4gICAgfVxuXG4gICAgZ2V0IHNlYXJjaFN0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2ggPT09IG51bGwgPyAnJyA6IHRoaXMuc2VhcmNoO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3MgZW1wdHkgaWNvbiB0byBJbnB1dFRhZyAoaW5zaWRlIHRoaXMgY29tcG9uZW50KVxuICAgICAqIHRvIHByZXZlbnQgb3ZlcmZsb3cgb2YgYXJyb3cgaWNvbiBieSBtYW55IHRhZ3NcbiAgICAgKi9cbiAgICBnZXQgdGFnSWNvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSA/ICdpY29uQmxhbmsnIDogJyc7XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0SGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuZWRpdGFibGUgJiYgIXRoaXMuY29tcHV0ZWRHcm91cDtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRHcm91cCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdGhpcy52YWx1ZUNvbnRlbnQgJiZcbiAgICAgICAgICAgIHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgKCF0aGlzLmZvY3VzZWQgfHwgIXRoaXMuZWRpdGFibGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRleHQoKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxSZWFkb25seUFycmF5PFQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldENvbnRleHQodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXRTdHJpbmdpZmllcihcbiAgICAgICAgc3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFQ+LFxuICAgICk6IFR1aVN0cmluZ0hhbmRsZXI8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUPj4ge1xuICAgICAgICByZXR1cm4gKHskaW1wbGljaXR9KSA9PiBzdHJpbmdpZnkoJGltcGxpY2l0KTtcbiAgICB9XG5cbiAgICByZWFkb25seSB2YWx1ZU1hcHBlcjogVHVpTWFwcGVyPFxuICAgICAgICBSZWFkb25seUFycmF5PFQ+LFxuICAgICAgICBSZWFkb25seUFycmF5PFR1aVN0cmluZ2lmaWFibGVJdGVtPFQ+PlxuICAgID4gPSAodmFsdWUsIHN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxUPiwgZ3JvdXA6IGJvb2xlYW4pID0+XG4gICAgICAgIGdyb3VwXG4gICAgICAgICAgICA/IEVNUFRZX0FSUkFZXG4gICAgICAgICAgICA6IHZhbHVlLm1hcChpdGVtID0+IG5ldyBUdWlTdHJpbmdpZmlhYmxlSXRlbShpdGVtLCBzdHJpbmdpZnkpKTtcblxuICAgIHJlYWRvbmx5IGRpc2FibGVkSXRlbUhhbmRsZXJXcmFwcGVyOiBUdWlNYXBwZXI8XG4gICAgICAgIFR1aUJvb2xlYW5IYW5kbGVyPFQ+LFxuICAgICAgICBUdWlCb29sZWFuSGFuZGxlcjxUdWlTdHJpbmdpZmlhYmxlSXRlbTxUPj5cbiAgICA+ID0gaGFuZGxlciA9PiBzdHJpbmdpZmlhYmxlID0+XG4gICAgICAgIHR5cGVvZiBzdHJpbmdpZmlhYmxlID09PSAnc3RyaW5nJyB8fCBoYW5kbGVyKHN0cmluZ2lmaWFibGUuaXRlbSk7XG5cbiAgICBvbkhvdmVyZWRDaGFuZ2UoaG92ZXJlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZUhvdmVyZWQoaG92ZXJlZCk7XG4gICAgfVxuXG4gICAgb25TcGFjZShldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuZWRpdGFibGUpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMucmVhZE9ubHkpIHtcbiAgICAgICAgICAgIHRoaXMub3BlbiA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYW5kbGVPcHRpb24ob3B0aW9uOiBUKSB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZSwgaWRlbnRpdHlNYXRjaGVyfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdmFsdWUuZmluZEluZGV4KGl0ZW0gPT4gaWRlbnRpdHlNYXRjaGVyKGl0ZW0sIG9wdGlvbikpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgICAgICBpbmRleCA9PT0gLTEgPyBbLi4udmFsdWUsIG9wdGlvbl0gOiB2YWx1ZS5maWx0ZXIoKF8sIGkpID0+IGkgIT09IGluZGV4KSxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2gobnVsbCk7XG4gICAgfVxuXG4gICAgb25FbnRlcihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBjb25zdCB7dmFsdWV9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuYWNjZXNzb3IgPyB0aGlzLmFjY2Vzc29yLmdldE9wdGlvbnMoKSA6IFtdO1xuXG4gICAgICAgIGlmIChvcHRpb25zLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5kZXggPSB2YWx1ZS5pbmRleE9mKG9wdGlvbnNbMF0pO1xuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgICAgICBpbmRleCA9PT0gLTFcbiAgICAgICAgICAgICAgICA/IFsuLi52YWx1ZSwgb3B0aW9uc1swXV1cbiAgICAgICAgICAgICAgICA6IFsuLi52YWx1ZS5zbGljZSgwLCBpbmRleCksIC4uLnZhbHVlLnNsaWNlKGluZGV4ICsgMSldLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChudWxsKTtcbiAgICB9XG5cbiAgICBvbkNsaWNrKHtuYXRpdmVGb2N1c2FibGVFbGVtZW50fTogVHVpSW5wdXRUYWdDb21wb25lbnQpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5lZGl0YWJsZSAmJlxuICAgICAgICAgICAgdGhpcy5pbnRlcmFjdGl2ZSAmJlxuICAgICAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCAmJlxuICAgICAgICAgICAgaXNOYXRpdmVGb2N1c2VkKG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5ob3N0ZWREcm9wZG93bj8udXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQXJyb3dDbGljaygpIHtcbiAgICAgICAgdGhpcy5ob3N0ZWREcm9wZG93bj8udXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgfVxuXG4gICAgb25JbnB1dCh2YWx1ZTogUmVhZG9ubHlBcnJheTxUdWlTdHJpbmdpZmlhYmxlSXRlbTxUPj4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh2YWx1ZS5tYXAoKHtpdGVtfSkgPT4gaXRlbSkpO1xuICAgIH1cblxuICAgIG9uU2VhcmNoKHNlYXJjaDogc3RyaW5nIHwgbnVsbCkge1xuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChzZWFyY2gpO1xuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgc3VwZXIuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0Q29udGV4dChcbiAgICAgICAgJGltcGxpY2l0OiBSZWFkb25seUFycmF5PFQ+LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8UmVhZG9ubHlBcnJheTxUPj4ge1xuICAgICAgICByZXR1cm4geyRpbXBsaWNpdH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVTZWFyY2goc2VhcmNoOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIGlmICh0aGlzLnNlYXJjaCA9PT0gc2VhcmNoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlYXJjaCA9IHNlYXJjaDtcbiAgICAgICAgdGhpcy5zZWFyY2hDaGFuZ2UuZW1pdChzZWFyY2gpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dChwcmV2ZW50U2Nyb2xsOiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsIHRydWUsIHByZXZlbnRTY3JvbGwpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvIiwic291cmNlcyI6WyJtdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsV0FBVyxFQUNYLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBRzNCLGNBQWMsRUFHZCxPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILDZCQUE2QixFQUM3QixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLGdDQUFnQyxFQUNoQyxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZiwwQkFBMEIsRUFDMUIsUUFBUSxFQUNSLFFBQVEsRUFDUixhQUFhLEVBQ2Isc0JBQXNCLEdBQ3pCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGNBQWMsRUFBZSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztB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LENBQUMsQ0FBQTtJQUNyQixXQUFBLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUV0QixXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO0lBRTFCLFdBQUEsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7SUFFaEMsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtHQWpFcEMsdUJBQXVCLENBeVBuQztTQXpQWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBTZWxmLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aU11bHRpcGxlQ29udHJvbCxcbiAgICBFTVBUWV9BUlJBWSxcbiAgICBpc05hdGl2ZUZvY3VzZWQsXG4gICAgc2V0TmF0aXZlRm9jdXNlZCxcbiAgICBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTWFwcGVyLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9EQVRBX0xJU1RfQUNDRVNTT1IsXG4gICAgVFVJX0RBVEFfTElTVF9IT1NULFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aURhdGFMaXN0QWNjZXNzb3IsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxuICAgIFR1aVN2Z1NlcnZpY2UsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdpZmlhYmxlSXRlbX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jbGFzc2VzJztcbmltcG9ydCB7VFVJX0FSUk9XX01PREUsIFR1aUFycm93TW9kZX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2Fycm93JztcbmltcG9ydCB7VHVpSW5wdXRUYWdDb21wb25lbnR9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC10YWcnO1xuaW1wb3J0IHtpY29uQmxhbmt9IGZyb20gJ0B0YWlnYS11aS9raXQvY29uc3RhbnRzJztcbmltcG9ydCB7RklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfSVRFTVNfSEFORExFUlMsIFR1aUl0ZW1zSGFuZGxlcnN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUVUlfTVVMVElfU0VMRUNUX09QVElPTlMsIFR1aU11bHRpU2VsZWN0T3B0aW9uc30gZnJvbSAnLi9tdWx0aS1zZWxlY3Qtb3B0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLW11bHRpLXNlbGVjdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3Quc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlNdWx0aVNlbGVjdENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aU11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgRklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTXVsdGlTZWxlY3RDb21wb25lbnQ8VD5cbiAgICBleHRlbmRzIEFic3RyYWN0VHVpTXVsdGlwbGVDb250cm9sPFQ+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsIFR1aURhdGFMaXN0SG9zdDxUPlxue1xuICAgIEBDb250ZW50Q2hpbGQoVFVJX0RBVEFfTElTVF9BQ0NFU1NPUiBhcyBhbnkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3Nvcj86IFR1aURhdGFMaXN0QWNjZXNzb3I8VD47XG5cbiAgICBAVmlld0NoaWxkKFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaG9zdGVkRHJvcGRvd24/OiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudDtcblxuICAgIEBWaWV3Q2hpbGQoVHVpSW5wdXRUYWdDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dD86IFR1aUlucHV0VGFnQ29tcG9uZW50O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHN0cmluZ2lmeTogVHVpSXRlbXNIYW5kbGVyczxUPlsnc3RyaW5naWZ5J10gPSB0aGlzLml0ZW1zSGFuZGxlcnMuc3RyaW5naWZ5O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGlkZW50aXR5TWF0Y2hlcjogVHVpSXRlbXNIYW5kbGVyczxUPlsnaWRlbnRpdHlNYXRjaGVyJ10gPVxuICAgICAgICB0aGlzLml0ZW1zSGFuZGxlcnMuaWRlbnRpdHlNYXRjaGVyO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGV4cGFuZGFibGU6IFR1aU11bHRpU2VsZWN0T3B0aW9uczxUPlsnZXhwYW5kYWJsZSddID0gdGhpcy5vcHRpb25zLmV4cGFuZGFibGU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2VhcmNoOiBzdHJpbmcgfCBudWxsID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2VkaXRhYmxlJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGVkaXRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlJdGVtc0hhbmRsZXJzPFQ+WydkaXNhYmxlZEl0ZW1IYW5kbGVyJ10gPVxuICAgICAgICB0aGlzLml0ZW1zSGFuZGxlcnMuZGlzYWJsZWRJdGVtSGFuZGxlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZUNvbnRlbnQ6IFR1aU11bHRpU2VsZWN0T3B0aW9uczxUPlsndmFsdWVDb250ZW50J10gPSB0aGlzLm9wdGlvbnMudmFsdWVDb250ZW50O1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgc2VhcmNoQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBudWxsPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBkYXRhbGlzdDogUG9seW1vcnBoZXVzQ29udGVudCA9ICcnO1xuXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUdWlTdmdTZXJ2aWNlKSBzdmdTZXJ2aWNlOiBUdWlTdmdTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFRVSV9BUlJPV19NT0RFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFycm93TW9kZTogVHVpQXJyb3dNb2RlLFxuICAgICAgICBASW5qZWN0KFRVSV9JVEVNU19IQU5ETEVSUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpdGVtc0hhbmRsZXJzOiBUdWlJdGVtc0hhbmRsZXJzPFQ+LFxuICAgICAgICBASW5qZWN0KFRVSV9NVUxUSV9TRUxFQ1RfT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlNdWx0aVNlbGVjdE9wdGlvbnM8VD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcblxuICAgICAgICBzdmdTZXJ2aWNlLmRlZmluZSh7aWNvbkJsYW5rfSk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuc2l6ZTtcbiAgICB9XG5cbiAgICBnZXQgYXJyb3coKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5pbnRlcmFjdGl2ZSA/IHRoaXMuYXJyb3dNb2RlLmRpc2FibGVkIDogdGhpcy5hcnJvd01vZGUuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dCA/IHRoaXMuaW5wdXQubmF0aXZlRm9jdXNhYmxlRWxlbWVudCA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoISF0aGlzLmlucHV0ICYmIHRoaXMuaW5wdXQuZm9jdXNlZCkgfHxcbiAgICAgICAgICAgICghIXRoaXMuaG9zdGVkRHJvcGRvd24gJiYgdGhpcy5ob3N0ZWREcm9wZG93bi5mb2N1c2VkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFZhbHVlKCk6IFJlYWRvbmx5QXJyYXk8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlZEdyb3VwID8gRU1QVFlfQVJSQVkgOiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIC8vIEBiYWQgVE9ETzogdGhpbmsgb2YgYSBiZXR0ZXIgd2F5XG4gICAgZ2V0IHNlYXJjaE9yU3BhY2UoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcHV0ZWRHcm91cCA/ICcgJyA6IHRoaXMuc2VhcmNoU3RyaW5nO1xuICAgIH1cblxuICAgIGdldCBzZWFyY2hTdHJpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoID09PSBudWxsID8gJycgOiB0aGlzLnNlYXJjaDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzIGVtcHR5IGljb24gdG8gSW5wdXRUYWcgKGluc2lkZSB0aGlzIGNvbXBvbmVudClcbiAgICAgKiB0byBwcmV2ZW50IG92ZXJmbG93IG9mIGFycm93IGljb24gYnkgbWFueSB0YWdzXG4gICAgICovXG4gICAgZ2V0IHRhZ0ljb24oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgPyAnaWNvbkJsYW5rJyA6ICcnO1xuICAgIH1cblxuICAgIGdldCBpbnB1dEhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmVkaXRhYmxlICYmICF0aGlzLmNvbXB1dGVkR3JvdXA7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkR3JvdXAoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhIXRoaXMudmFsdWVDb250ZW50ICYmXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgICghdGhpcy5mb2N1c2VkIHx8ICF0aGlzLmVkaXRhYmxlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBjb250ZXh0KCk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8UmVhZG9ubHlBcnJheTxUPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb250ZXh0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0U3RyaW5naWZpZXIoXG4gICAgICAgIHN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxUPixcbiAgICApOiBUdWlTdHJpbmdIYW5kbGVyPFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VD4+IHtcbiAgICAgICAgcmV0dXJuICh7JGltcGxpY2l0fSkgPT4gc3RyaW5naWZ5KCRpbXBsaWNpdCk7XG4gICAgfVxuXG4gICAgcmVhZG9ubHkgdmFsdWVNYXBwZXI6IFR1aU1hcHBlcjxcbiAgICAgICAgUmVhZG9ubHlBcnJheTxUPixcbiAgICAgICAgUmVhZG9ubHlBcnJheTxUdWlTdHJpbmdpZmlhYmxlSXRlbTxUPj5cbiAgICA+ID0gKHZhbHVlLCBzdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8VD4sIGdyb3VwOiBib29sZWFuKSA9PlxuICAgICAgICBncm91cFxuICAgICAgICAgICAgPyBFTVBUWV9BUlJBWVxuICAgICAgICAgICAgOiB2YWx1ZS5tYXAoaXRlbSA9PiBuZXcgVHVpU3RyaW5naWZpYWJsZUl0ZW0oaXRlbSwgc3RyaW5naWZ5KSk7XG5cbiAgICByZWFkb25seSBkaXNhYmxlZEl0ZW1IYW5kbGVyV3JhcHBlcjogVHVpTWFwcGVyPFxuICAgICAgICBUdWlCb29sZWFuSGFuZGxlcjxUPixcbiAgICAgICAgVHVpQm9vbGVhbkhhbmRsZXI8VHVpU3RyaW5naWZpYWJsZUl0ZW08VD4+XG4gICAgPiA9IGhhbmRsZXIgPT4gc3RyaW5naWZpYWJsZSA9PlxuICAgICAgICB0eXBlb2Ygc3RyaW5naWZpYWJsZSA9PT0gJ3N0cmluZycgfHwgaGFuZGxlcihzdHJpbmdpZmlhYmxlLml0ZW0pO1xuXG4gICAgb25Ib3ZlcmVkQ2hhbmdlKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIG9uU3BhY2UoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmVkaXRhYmxlKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGFuZGxlT3B0aW9uKG9wdGlvbjogVCkge1xuICAgICAgICBjb25zdCB7dmFsdWUsIGlkZW50aXR5TWF0Y2hlcn0gPSB0aGlzO1xuICAgICAgICBjb25zdCBpbmRleCA9IHZhbHVlLmZpbmRJbmRleChpdGVtID0+IGlkZW50aXR5TWF0Y2hlcihpdGVtLCBvcHRpb24pKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgaW5kZXggPT09IC0xID8gWy4uLnZhbHVlLCBvcHRpb25dIDogdmFsdWUuZmlsdGVyKChfLCBpKSA9PiBpICE9PSBpbmRleCksXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKG51bGwpO1xuICAgIH1cblxuICAgIG9uRW50ZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmFjY2Vzc29yID8gdGhpcy5hY2Nlc3Nvci5nZXRPcHRpb25zKCkgOiBbXTtcblxuICAgICAgICBpZiAob3B0aW9ucy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdmFsdWUuaW5kZXhPZihvcHRpb25zWzBdKTtcblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgaW5kZXggPT09IC0xXG4gICAgICAgICAgICAgICAgPyBbLi4udmFsdWUsIG9wdGlvbnNbMF1dXG4gICAgICAgICAgICAgICAgOiBbLi4udmFsdWUuc2xpY2UoMCwgaW5kZXgpLCAuLi52YWx1ZS5zbGljZShpbmRleCArIDEpXSxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2gobnVsbCk7XG4gICAgfVxuXG4gICAgb25DbGljayh7bmF0aXZlRm9jdXNhYmxlRWxlbWVudH06IFR1aUlucHV0VGFnQ29tcG9uZW50KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuZWRpdGFibGUgJiZcbiAgICAgICAgICAgIHRoaXMuaW50ZXJhY3RpdmUgJiZcbiAgICAgICAgICAgIG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgJiZcbiAgICAgICAgICAgIGlzTmF0aXZlRm9jdXNlZChuYXRpdmVGb2N1c2FibGVFbGVtZW50KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuaG9zdGVkRHJvcGRvd24/LnVwZGF0ZU9wZW4oIXRoaXMub3Blbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkFycm93Q2xpY2soKSB7XG4gICAgICAgIHRoaXMuaG9zdGVkRHJvcGRvd24/LnVwZGF0ZU9wZW4oIXRoaXMub3Blbik7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cblxuICAgIG9uSW5wdXQodmFsdWU6IFJlYWRvbmx5QXJyYXk8VHVpU3RyaW5naWZpYWJsZUl0ZW08VD4+KSB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodmFsdWUubWFwKCh7aXRlbX0pID0+IGl0ZW0pKTtcbiAgICB9XG5cbiAgICBvblNlYXJjaChzZWFyY2g6IHN0cmluZyB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5vcGVuID0gdHJ1ZTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2goc2VhcmNoKTtcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmUoYWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChhY3RpdmUpO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoKSB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldENvbnRleHQoXG4gICAgICAgICRpbXBsaWNpdDogUmVhZG9ubHlBcnJheTxUPixcbiAgICApOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFJlYWRvbmx5QXJyYXk8VD4+IHtcbiAgICAgICAgcmV0dXJuIHskaW1wbGljaXR9O1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VhcmNoKHNlYXJjaDogc3RyaW5nIHwgbnVsbCkge1xuICAgICAgICBpZiAodGhpcy5zZWFyY2ggPT09IHNlYXJjaCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZWFyY2ggPSBzZWFyY2g7XG4gICAgICAgIHRoaXMuc2VhcmNoQ2hhbmdlLmVtaXQoc2VhcmNoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSW5wdXQocHJldmVudFNjcm9sbDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZUZvY3VzZWQodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50LCB0cnVlLCBwcmV2ZW50U2Nyb2xsKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,9 +1,10 @@
1
- export * from './pipes/abstract-color-segments';
2
- export * from './pipes/progress-color-segments.pipe';
3
- export * from './pipes/progress-color-segments-async.pipe';
4
1
  export * from './progress.module';
5
2
  export * from './progress-bar/progress-bar.component';
3
+ export * from './progress-bar/progress-color-segments.directive';
6
4
  export * from './progress-circle/progress-circle.component';
7
5
  export * from './progress-label/progress-label.component';
8
6
  export * from './progress-segmented/progress-segmented.component';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHJvZ3Jlc3MvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsbURBQW1ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BpcGVzL2Fic3RyYWN0LWNvbG9yLXNlZ21lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvcHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLWFzeW5jLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2dyZXNzLWNpcmNsZS9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtbGFiZWwvcHJvZ3Jlc3MtbGFiZWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3Mtc2VnbWVudGVkL3Byb2dyZXNzLXNlZ21lbnRlZC5jb21wb25lbnQnO1xuIl19
7
+ export * from './utils/abstract-color-segments';
8
+ export * from './utils/progress-color-segments.pipe';
9
+ export * from './utils/progress-color-segments-async.pipe';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHJvZ3Jlc3MvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1sYWJlbC9wcm9ncmVzcy1sYWJlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1zZWdtZW50ZWQvcHJvZ3Jlc3Mtc2VnbWVudGVkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2Fic3RyYWN0LWNvbG9yLXNlZ21lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvcHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLWFzeW5jLnBpcGUnO1xuIl19
@@ -0,0 +1,48 @@
1
+ import { __decorate, __param } from "tslib";
2
+ import { Directive, ElementRef, Inject, Input } from '@angular/core';
3
+ import { USER_AGENT } from '@ng-web-apis/common';
4
+ import { CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, isIE, TuiDestroyService, tuiPure, TuiResizeService, } from '@taiga-ui/cdk';
5
+ import { Observable } from 'rxjs';
6
+ import { map } from 'rxjs/operators';
7
+ import { calculateColorSegments } from '../utils/calculate-color-segments';
8
+ let TuiProgressColorSegmentsDirective = class TuiProgressColorSegmentsDirective {
9
+ constructor(elementRef, resize$, userAgent) {
10
+ this.elementRef = elementRef;
11
+ this.resize$ = resize$;
12
+ this.userAgent = userAgent;
13
+ this.isOldBrowsers = isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||
14
+ isIE(this.userAgent);
15
+ this.colors = [];
16
+ }
17
+ get calcSegments$() {
18
+ return this.resize$.pipe(map(() => this.isOldBrowsers
19
+ ? this.colors[0]
20
+ : calculateColorSegments(this.colors, this.elementRef.nativeElement.offsetWidth)));
21
+ }
22
+ };
23
+ TuiProgressColorSegmentsDirective.ctorParameters = () => [
24
+ { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
25
+ { type: Observable, decorators: [{ type: Inject, args: [TuiResizeService,] }] },
26
+ { type: String, decorators: [{ type: Inject, args: [USER_AGENT,] }] }
27
+ ];
28
+ __decorate([
29
+ Input('tuiProgressColorSegments')
30
+ ], TuiProgressColorSegmentsDirective.prototype, "colors", void 0);
31
+ __decorate([
32
+ tuiPure
33
+ ], TuiProgressColorSegmentsDirective.prototype, "calcSegments$", null);
34
+ TuiProgressColorSegmentsDirective = __decorate([
35
+ Directive({
36
+ selector: 'progress[tuiProgressBar][tuiProgressColorSegments]',
37
+ host: {
38
+ '[$.style.--tui-progress-color]': 'calcSegments$',
39
+ '($.style.--tui-progress-color)': '0',
40
+ },
41
+ providers: [TuiDestroyService, TuiResizeService],
42
+ }),
43
+ __param(0, Inject(ElementRef)),
44
+ __param(1, Inject(TuiResizeService)),
45
+ __param(2, Inject(USER_AGENT))
46
+ ], TuiProgressColorSegmentsDirective);
47
+ export { TuiProgressColorSegmentsDirective };
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Byb2dyZXNzLyIsInNvdXJjZXMiOlsicHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUNILDJCQUEyQixFQUMzQixlQUFlLEVBQ2YsSUFBSSxFQUNKLGlCQUFpQixFQUNqQixPQUFPLEVBQ1AsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBVXpFLElBQWEsaUNBQWlDLEdBQTlDLE1BQWEsaUNBQWlDO0lBc0IxQyxZQUN5QyxVQUEyQyxFQUNyQyxPQUE0QixFQUNsQyxTQUFpQjtRQUZqQixlQUFVLEdBQVYsVUFBVSxDQUFpQztRQUNyQyxZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFRO1FBeEJ6QyxrQkFBYSxHQUMxQixlQUFlLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBR3pCLFdBQU0sR0FBYSxFQUFFLENBQUM7SUFvQm5CLENBQUM7SUFqQkosSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDcEIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUNMLElBQUksQ0FBQyxhQUFhO1lBQ2QsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxzQkFBc0IsQ0FDbEIsSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQzVDLENBQ1YsQ0FDSixDQUFDO0lBQ04sQ0FBQztDQU9KLENBQUE7O1lBSndELFVBQVUsdUJBQTFELE1BQU0sU0FBQyxVQUFVO1lBQ2tDLFVBQVUsdUJBQTdELE1BQU0sU0FBQyxnQkFBZ0I7eUNBQ3ZCLE1BQU0sU0FBQyxVQUFVOztBQW5CdEI7SUFEQyxLQUFLLENBQUMsMEJBQTBCLENBQUM7aUVBQ1o7QUFHdEI7SUFEQyxPQUFPO3NFQVlQO0FBcEJRLGlDQUFpQztJQVI3QyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsb0RBQW9EO1FBQzlELElBQUksRUFBRTtZQUNGLGdDQUFnQyxFQUFFLGVBQWU7WUFDakQsZ0NBQWdDLEVBQUUsR0FBRztTQUN4QztRQUNELFNBQVMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDO0tBQ25ELENBQUM7SUF3Qk8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDbEIsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtJQUN4QixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtHQXpCZCxpQ0FBaUMsQ0EyQjdDO1NBM0JZLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VVNFUl9BR0VOVH0gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENIUk9NSVVNX0VER0VfU1RBUlRfVkVSU0lPTixcbiAgICBpc0VkZ2VPbGRlclRoYW4sXG4gICAgaXNJRSxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVJlc2l6ZVNlcnZpY2UsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7Y2FsY3VsYXRlQ29sb3JTZWdtZW50c30gZnJvbSAnLi4vdXRpbHMvY2FsY3VsYXRlLWNvbG9yLXNlZ21lbnRzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdwcm9ncmVzc1t0dWlQcm9ncmVzc0Jhcl1bdHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzXScsXG4gICAgaG9zdDoge1xuICAgICAgICAnWyQuc3R5bGUuLS10dWktcHJvZ3Jlc3MtY29sb3JdJzogJ2NhbGNTZWdtZW50cyQnLFxuICAgICAgICAnKCQuc3R5bGUuLS10dWktcHJvZ3Jlc3MtY29sb3IpJzogJzAnLFxuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2UsIFR1aVJlc2l6ZVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNEaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNPbGRCcm93c2VycyA9XG4gICAgICAgIGlzRWRnZU9sZGVyVGhhbihDSFJPTUlVTV9FREdFX1NUQVJUX1ZFUlNJT04sIHRoaXMudXNlckFnZW50KSB8fFxuICAgICAgICBpc0lFKHRoaXMudXNlckFnZW50KTtcblxuICAgIEBJbnB1dCgndHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzJylcbiAgICBjb2xvcnM6IHN0cmluZ1tdID0gW107XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldCBjYWxjU2VnbWVudHMkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlc2l6ZSQucGlwZShcbiAgICAgICAgICAgIG1hcCgoKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuaXNPbGRCcm93c2Vyc1xuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuY29sb3JzWzBdXG4gICAgICAgICAgICAgICAgICAgIDogY2FsY3VsYXRlQ29sb3JTZWdtZW50cyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MUHJvZ3Jlc3NFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlSZXNpemVTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IHJlc2l6ZSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoVVNFUl9BR0VOVCkgcHJpdmF0ZSByZWFkb25seSB1c2VyQWdlbnQ6IHN0cmluZyxcbiAgICApIHt9XG59XG4iXX0=
@@ -2,12 +2,13 @@ import { __decorate } from "tslib";
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { NgModule } from '@angular/core';
4
4
  import { TuiRepeatTimesModule } from '@taiga-ui/cdk';
5
- import { TuiProgressColorSegmentsPipe } from './pipes/progress-color-segments.pipe';
6
- import { TuiProgressColorSegmentsAsyncPipe } from './pipes/progress-color-segments-async.pipe';
7
5
  import { TuiProgressBarComponent } from './progress-bar/progress-bar.component';
6
+ import { TuiProgressColorSegmentsDirective } from './progress-bar/progress-color-segments.directive';
8
7
  import { TuiProgressCircleComponent } from './progress-circle/progress-circle.component';
9
8
  import { TuiProgressLabelComponent } from './progress-label/progress-label.component';
10
9
  import { TuiProgressSegmentedComponent } from './progress-segmented/progress-segmented.component';
10
+ import { TuiProgressColorSegmentsPipe } from './utils/progress-color-segments.pipe';
11
+ import { TuiProgressColorSegmentsAsyncPipe } from './utils/progress-color-segments-async.pipe';
11
12
  let TuiProgressModule = class TuiProgressModule {
12
13
  };
13
14
  TuiProgressModule = __decorate([
@@ -15,6 +16,7 @@ TuiProgressModule = __decorate([
15
16
  imports: [CommonModule, TuiRepeatTimesModule],
16
17
  declarations: [
17
18
  TuiProgressBarComponent,
19
+ TuiProgressColorSegmentsDirective,
18
20
  TuiProgressColorSegmentsPipe,
19
21
  TuiProgressColorSegmentsAsyncPipe,
20
22
  TuiProgressCircleComponent,
@@ -24,6 +26,7 @@ TuiProgressModule = __decorate([
24
26
  exports: [
25
27
  TuiProgressBarComponent,
26
28
  TuiProgressCircleComponent,
29
+ TuiProgressColorSegmentsDirective,
27
30
  TuiProgressColorSegmentsPipe,
28
31
  TuiProgressColorSegmentsAsyncPipe,
29
32
  TuiProgressLabelComponent,
@@ -32,4 +35,4 @@ TuiProgressModule = __decorate([
32
35
  })
33
36
  ], TuiProgressModule);
34
37
  export { TuiProgressModule };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Byb2dyZXNzLyIsInNvdXJjZXMiOlsicHJvZ3Jlc3MubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDOUUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDcEYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFxQmhHLElBQWEsaUJBQWlCLEdBQTlCLE1BQWEsaUJBQWlCO0NBQUcsQ0FBQTtBQUFwQixpQkFBaUI7SUFuQjdCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxvQkFBb0IsQ0FBQztRQUM3QyxZQUFZLEVBQUU7WUFDVix1QkFBdUI7WUFDdkIsNEJBQTRCO1lBQzVCLGlDQUFpQztZQUNqQywwQkFBMEI7WUFDMUIseUJBQXlCO1lBQ3pCLDZCQUE2QjtTQUNoQztRQUNELE9BQU8sRUFBRTtZQUNMLHVCQUF1QjtZQUN2QiwwQkFBMEI7WUFDMUIsNEJBQTRCO1lBQzVCLGlDQUFpQztZQUNqQyx5QkFBeUI7WUFDekIsNkJBQTZCO1NBQ2hDO0tBQ0osQ0FBQztHQUNXLGlCQUFpQixDQUFHO1NBQXBCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVJlcGVhdFRpbWVzTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHtUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlfSBmcm9tICcuL3BpcGVzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLnBpcGUnO1xuaW1wb3J0IHtUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGV9IGZyb20gJy4vcGlwZXMvcHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMtYXN5bmMucGlwZSc7XG5pbXBvcnQge1R1aVByb2dyZXNzQmFyQ29tcG9uZW50fSBmcm9tICcuL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7VHVpUHJvZ3Jlc3NDaXJjbGVDb21wb25lbnR9IGZyb20gJy4vcHJvZ3Jlc3MtY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlQcm9ncmVzc0xhYmVsQ29tcG9uZW50fSBmcm9tICcuL3Byb2dyZXNzLWxhYmVsL3Byb2dyZXNzLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aVByb2dyZXNzU2VnbWVudGVkQ29tcG9uZW50fSBmcm9tICcuL3Byb2dyZXNzLXNlZ21lbnRlZC9wcm9ncmVzcy1zZWdtZW50ZWQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUdWlSZXBlYXRUaW1lc01vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFR1aVByb2dyZXNzQmFyQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlLFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGUsXG4gICAgICAgIFR1aVByb2dyZXNzQ2lyY2xlQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc0xhYmVsQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc1NlZ21lbnRlZENvbXBvbmVudCxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgVHVpUHJvZ3Jlc3NCYXJDb21wb25lbnQsXG4gICAgICAgIFR1aVByb2dyZXNzQ2lyY2xlQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlLFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGUsXG4gICAgICAgIFR1aVByb2dyZXNzTGFiZWxDb21wb25lbnQsXG4gICAgICAgIFR1aVByb2dyZXNzU2VnbWVudGVkQ29tcG9uZW50LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVByb2dyZXNzTW9kdWxlIHt9XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Byb2dyZXNzLyIsInNvdXJjZXMiOlsicHJvZ3Jlc3MubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDOUUsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDbkcsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDcEYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDaEcsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUF1QjdGLElBQWEsaUJBQWlCLEdBQTlCLE1BQWEsaUJBQWlCO0NBQUcsQ0FBQTtBQUFwQixpQkFBaUI7SUFyQjdCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxvQkFBb0IsQ0FBQztRQUM3QyxZQUFZLEVBQUU7WUFDVix1QkFBdUI7WUFDdkIsaUNBQWlDO1lBQ2pDLDRCQUE0QjtZQUM1QixpQ0FBaUM7WUFDakMsMEJBQTBCO1lBQzFCLHlCQUF5QjtZQUN6Qiw2QkFBNkI7U0FDaEM7UUFDRCxPQUFPLEVBQUU7WUFDTCx1QkFBdUI7WUFDdkIsMEJBQTBCO1lBQzFCLGlDQUFpQztZQUNqQyw0QkFBNEI7WUFDNUIsaUNBQWlDO1lBQ2pDLHlCQUF5QjtZQUN6Qiw2QkFBNkI7U0FDaEM7S0FDSixDQUFDO0dBQ1csaUJBQWlCLENBQUc7U0FBcEIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpUmVwZWF0VGltZXNNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuXG5pbXBvcnQge1R1aVByb2dyZXNzQmFyQ29tcG9uZW50fSBmcm9tICcuL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7VHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzRGlyZWN0aXZlfSBmcm9tICcuL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1jb2xvci1zZWdtZW50cy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlQcm9ncmVzc0NpcmNsZUNvbXBvbmVudH0gZnJvbSAnLi9wcm9ncmVzcy1jaXJjbGUvcHJvZ3Jlc3MtY2lyY2xlLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aVByb2dyZXNzTGFiZWxDb21wb25lbnR9IGZyb20gJy4vcHJvZ3Jlc3MtbGFiZWwvcHJvZ3Jlc3MtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7VHVpUHJvZ3Jlc3NTZWdtZW50ZWRDb21wb25lbnR9IGZyb20gJy4vcHJvZ3Jlc3Mtc2VnbWVudGVkL3Byb2dyZXNzLXNlZ21lbnRlZC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlfSBmcm9tICcuL3V0aWxzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLnBpcGUnO1xuaW1wb3J0IHtUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGV9IGZyb20gJy4vdXRpbHMvcHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMtYXN5bmMucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHVpUmVwZWF0VGltZXNNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBUdWlQcm9ncmVzc0JhckNvbXBvbmVudCxcbiAgICAgICAgVHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzRGlyZWN0aXZlLFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlLFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGUsXG4gICAgICAgIFR1aVByb2dyZXNzQ2lyY2xlQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc0xhYmVsQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc1NlZ21lbnRlZENvbXBvbmVudCxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgVHVpUHJvZ3Jlc3NCYXJDb21wb25lbnQsXG4gICAgICAgIFR1aVByb2dyZXNzQ2lyY2xlQ29tcG9uZW50LFxuICAgICAgICBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNEaXJlY3RpdmUsXG4gICAgICAgIFR1aVByb2dyZXNzQ29sb3JTZWdtZW50c1BpcGUsXG4gICAgICAgIFR1aVByb2dyZXNzQ29sb3JTZWdtZW50c0FzeW5jUGlwZSxcbiAgICAgICAgVHVpUHJvZ3Jlc3NMYWJlbENvbXBvbmVudCxcbiAgICAgICAgVHVpUHJvZ3Jlc3NTZWdtZW50ZWRDb21wb25lbnQsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJvZ3Jlc3NNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { __decorate, __param } from "tslib";
2
+ import { ElementRef, Inject, Injectable, PipeTransform } from '@angular/core';
3
+ import { USER_AGENT } from '@ng-web-apis/common';
4
+ import { CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, isIE } from '@taiga-ui/cdk';
5
+ import { calculateColorSegments } from './calculate-color-segments';
6
+ // TODO delete in v3.0
7
+ let AbstractTuiColorSegments = class AbstractTuiColorSegments {
8
+ constructor(userAgent, elementRef) {
9
+ this.userAgent = userAgent;
10
+ this.elementRef = elementRef;
11
+ this.isOldBrowsers = isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||
12
+ isIE(this.userAgent);
13
+ }
14
+ calculate(colors) {
15
+ if (this.isOldBrowsers) {
16
+ return colors[0];
17
+ }
18
+ const elementWidth = this.elementRef.nativeElement.offsetWidth;
19
+ return calculateColorSegments(colors, elementWidth);
20
+ }
21
+ };
22
+ AbstractTuiColorSegments.ctorParameters = () => [
23
+ { type: String, decorators: [{ type: Inject, args: [USER_AGENT,] }] },
24
+ { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] }
25
+ ];
26
+ AbstractTuiColorSegments = __decorate([
27
+ Injectable(),
28
+ __param(0, Inject(USER_AGENT)),
29
+ __param(1, Inject(ElementRef))
30
+ ], AbstractTuiColorSegments);
31
+ export { AbstractTuiColorSegments };
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY29sb3Itc2VnbWVudHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHJvZ3Jlc3MvIiwic291cmNlcyI6WyJ1dGlscy9hYnN0cmFjdC1jb2xvci1zZWdtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFDLDJCQUEyQixFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFbEUsc0JBQXNCO0FBRXRCLElBQXNCLHdCQUF3QixHQUE5QyxNQUFzQix3QkFBd0I7SUFLMUMsWUFDeUMsU0FBaUIsRUFDakIsVUFBbUM7UUFEbkMsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQU4zRCxrQkFBYSxHQUMxQixlQUFlLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBS3RCLENBQUM7SUFJTSxTQUFTLENBQUMsTUFBZ0I7UUFDaEMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3BCLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BCO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO1FBRS9ELE9BQU8sc0JBQXNCLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3hELENBQUM7Q0FDSixDQUFBOzt5Q0FmUSxNQUFNLFNBQUMsVUFBVTtZQUMrQixVQUFVLHVCQUExRCxNQUFNLFNBQUMsVUFBVTs7QUFQSix3QkFBd0I7SUFEN0MsVUFBVSxFQUFFO0lBT0osV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDbEIsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7R0FQTCx3QkFBd0IsQ0FxQjdDO1NBckJxQix3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VsZW1lbnRSZWYsIEluamVjdCwgSW5qZWN0YWJsZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1VTRVJfQUdFTlR9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtDSFJPTUlVTV9FREdFX1NUQVJUX1ZFUlNJT04sIGlzRWRnZU9sZGVyVGhhbiwgaXNJRX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbmltcG9ydCB7Y2FsY3VsYXRlQ29sb3JTZWdtZW50c30gZnJvbSAnLi9jYWxjdWxhdGUtY29sb3Itc2VnbWVudHMnO1xuXG4vLyBUT0RPIGRlbGV0ZSBpbiB2My4wXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUdWlDb2xvclNlZ21lbnRzPFQ+IGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpc09sZEJyb3dzZXJzID1cbiAgICAgICAgaXNFZGdlT2xkZXJUaGFuKENIUk9NSVVNX0VER0VfU1RBUlRfVkVSU0lPTiwgdGhpcy51c2VyQWdlbnQpIHx8XG4gICAgICAgIGlzSUUodGhpcy51c2VyQWdlbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVVNFUl9BR0VOVCkgcHJpdmF0ZSByZWFkb25seSB1c2VyQWdlbnQ6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge31cblxuICAgIGFic3RyYWN0IHRyYW5zZm9ybShjb2xvcnM6IHN0cmluZ1tdKTogVDtcblxuICAgIHByb3RlY3RlZCBjYWxjdWxhdGUoY29sb3JzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmlzT2xkQnJvd3NlcnMpIHtcbiAgICAgICAgICAgIHJldHVybiBjb2xvcnNbMF07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbGVtZW50V2lkdGggPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcblxuICAgICAgICByZXR1cm4gY2FsY3VsYXRlQ29sb3JTZWdtZW50cyhjb2xvcnMsIGVsZW1lbnRXaWR0aCk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,10 @@
1
+ /**
2
+ * TODO in v3.0 move inside {@link TuiProgressColorSegmentsDirective} (as a private method)
3
+ * (after deletion of {@link TuiProgressColorSegmentsPipe} and {@link TuiProgressColorSegmentsAsyncPipe})
4
+ */
5
+ export const calculateColorSegments = (colors, progressWidth) => {
6
+ const segmentWidth = Math.ceil(progressWidth / colors.length);
7
+ const colorsString = colors.reduce((acc, color, i) => `${acc}, ${color} ${i * segmentWidth}px ${(i + 1) * segmentWidth}px`, '');
8
+ return `linear-gradient(to right ${colorsString})`;
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbG9yLXNlZ21lbnRzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Byb2dyZXNzLyIsInNvdXJjZXMiOlsidXRpbHMvY2FsY3VsYXRlLWNvbG9yLXNlZ21lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQ2xDLE1BQWdCLEVBQ2hCLGFBQXFCLEVBQ2YsRUFBRTtJQUNSLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5RCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUM5QixDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FDZCxHQUFHLEdBQUcsS0FBSyxLQUFLLElBQUksQ0FBQyxHQUFHLFlBQVksTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLElBQUksRUFDeEUsRUFBRSxDQUNMLENBQUM7SUFFRixPQUFPLDRCQUE0QixZQUFZLEdBQUcsQ0FBQztBQUN2RCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRPRE8gaW4gdjMuMCBtb3ZlIGluc2lkZSB7QGxpbmsgVHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzRGlyZWN0aXZlfSAoYXMgYSBwcml2YXRlIG1ldGhvZClcbiAqIChhZnRlciBkZWxldGlvbiBvZiB7QGxpbmsgVHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzUGlwZX0gYW5kIHtAbGluayBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luY1BpcGV9KVxuICovXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlQ29sb3JTZWdtZW50cyA9IChcbiAgICBjb2xvcnM6IHN0cmluZ1tdLFxuICAgIHByb2dyZXNzV2lkdGg6IG51bWJlcixcbik6IHN0cmluZyA9PiB7XG4gICAgY29uc3Qgc2VnbWVudFdpZHRoID0gTWF0aC5jZWlsKHByb2dyZXNzV2lkdGggLyBjb2xvcnMubGVuZ3RoKTtcbiAgICBjb25zdCBjb2xvcnNTdHJpbmcgPSBjb2xvcnMucmVkdWNlKFxuICAgICAgICAoYWNjLCBjb2xvciwgaSkgPT5cbiAgICAgICAgICAgIGAke2FjY30sICR7Y29sb3J9ICR7aSAqIHNlZ21lbnRXaWR0aH1weCAkeyhpICsgMSkgKiBzZWdtZW50V2lkdGh9cHhgLFxuICAgICAgICAnJyxcbiAgICApO1xuXG4gICAgcmV0dXJuIGBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQgJHtjb2xvcnNTdHJpbmd9KWA7XG59O1xuIl19
@@ -0,0 +1,21 @@
1
+ import { __decorate } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ import { timer } from 'rxjs';
4
+ import { map } from 'rxjs/operators';
5
+ import { AbstractTuiColorSegments } from './abstract-color-segments';
6
+ // TODO delete in v3.0
7
+ let TuiProgressColorSegmentsAsyncPipe = class TuiProgressColorSegmentsAsyncPipe extends AbstractTuiColorSegments {
8
+ /**
9
+ * @deprecated use tuiProgressColorSegments directive instead
10
+ * {@link TuiProgressColorSegmentsDirective}
11
+ * @example: `<progress tuiProgressBar [tuiProgressColorSegments]="colors">`
12
+ */
13
+ transform(colors) {
14
+ return timer(0).pipe(map(() => this.calculate(colors)));
15
+ }
16
+ };
17
+ TuiProgressColorSegmentsAsyncPipe = __decorate([
18
+ Pipe({ name: 'tuiProgressColorSegmentsAsync' })
19
+ ], TuiProgressColorSegmentsAsyncPipe);
20
+ export { TuiProgressColorSegmentsAsyncPipe };
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMtYXN5bmMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wcm9ncmVzcy8iLCJzb3VyY2VzIjpbInV0aWxzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLWFzeW5jLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkMsT0FBTyxFQUFhLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFbkUsc0JBQXNCO0FBRXRCLElBQWEsaUNBQWlDLEdBQTlDLE1BQWEsaUNBQWtDLFNBQVEsd0JBRXREO0lBQ0c7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxNQUFnQjtRQUN0QixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7Q0FDSixDQUFBO0FBWFksaUNBQWlDO0lBRDdDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSwrQkFBK0IsRUFBQyxDQUFDO0dBQ2pDLGlDQUFpQyxDQVc3QztTQVhZLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIHRpbWVyfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlDb2xvclNlZ21lbnRzfSBmcm9tICcuL2Fic3RyYWN0LWNvbG9yLXNlZ21lbnRzJztcblxuLy8gVE9ETyBkZWxldGUgaW4gdjMuMFxuQFBpcGUoe25hbWU6ICd0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHNBc3luYyd9KVxuZXhwb3J0IGNsYXNzIFR1aVByb2dyZXNzQ29sb3JTZWdtZW50c0FzeW5jUGlwZSBleHRlbmRzIEFic3RyYWN0VHVpQ29sb3JTZWdtZW50czxcbiAgICBPYnNlcnZhYmxlPHN0cmluZz5cbj4ge1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSB0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHMgZGlyZWN0aXZlIGluc3RlYWRcbiAgICAgKiB7QGxpbmsgVHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzRGlyZWN0aXZlfVxuICAgICAqIEBleGFtcGxlOiBgPHByb2dyZXNzIHR1aVByb2dyZXNzQmFyIFt0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHNdPVwiY29sb3JzXCI+YFxuICAgICAqL1xuICAgIHRyYW5zZm9ybShjb2xvcnM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRpbWVyKDApLnBpcGUobWFwKCgpID0+IHRoaXMuY2FsY3VsYXRlKGNvbG9ycykpKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { __decorate } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ import { AbstractTuiColorSegments } from './abstract-color-segments';
4
+ // TODO delete in v3.0
5
+ let TuiProgressColorSegmentsPipe = class TuiProgressColorSegmentsPipe extends AbstractTuiColorSegments {
6
+ /**
7
+ * @deprecated use tuiProgressColorSegments directive instead
8
+ * {@link TuiProgressColorSegmentsDirective}
9
+ * @example: `<progress tuiProgressBar [tuiProgressColorSegments]="colors">`
10
+ */
11
+ transform(colors) {
12
+ return this.calculate(colors);
13
+ }
14
+ };
15
+ TuiProgressColorSegmentsPipe = __decorate([
16
+ Pipe({ name: 'tuiProgressColorSegments' })
17
+ ], TuiProgressColorSegmentsPipe);
18
+ export { TuiProgressColorSegmentsPipe };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY29sb3Itc2VnbWVudHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wcm9ncmVzcy8iLCJzb3VyY2VzIjpbInV0aWxzL3Byb2dyZXNzLWNvbG9yLXNlZ21lbnRzLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkMsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFbkUsc0JBQXNCO0FBRXRCLElBQWEsNEJBQTRCLEdBQXpDLE1BQWEsNEJBQTZCLFNBQVEsd0JBQWdDO0lBQzlFOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsTUFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FDSixDQUFBO0FBVFksNEJBQTRCO0lBRHhDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSwwQkFBMEIsRUFBQyxDQUFDO0dBQzVCLDRCQUE0QixDQVN4QztTQVRZLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlDb2xvclNlZ21lbnRzfSBmcm9tICcuL2Fic3RyYWN0LWNvbG9yLXNlZ21lbnRzJztcblxuLy8gVE9ETyBkZWxldGUgaW4gdjMuMFxuQFBpcGUoe25hbWU6ICd0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHMnfSlcbmV4cG9ydCBjbGFzcyBUdWlQcm9ncmVzc0NvbG9yU2VnbWVudHNQaXBlIGV4dGVuZHMgQWJzdHJhY3RUdWlDb2xvclNlZ21lbnRzPHN0cmluZz4ge1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSB0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHMgZGlyZWN0aXZlIGluc3RlYWRcbiAgICAgKiB7QGxpbmsgVHVpUHJvZ3Jlc3NDb2xvclNlZ21lbnRzRGlyZWN0aXZlfVxuICAgICAqIEBleGFtcGxlOiBgPHByb2dyZXNzIHR1aVByb2dyZXNzQmFyIFt0dWlQcm9ncmVzc0NvbG9yU2VnbWVudHNdPVwiY29sb3JzXCI+YFxuICAgICAqL1xuICAgIHRyYW5zZm9ybShjb2xvcnM6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlKGNvbG9ycyk7XG4gICAgfVxufVxuIl19
@@ -1,15 +1,26 @@
1
1
  import { __decorate, __param } from "tslib";
2
- import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Inject, Input, Optional, Self, } from '@angular/core';
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, HostBinding, Inject, Input, Optional, Self, } from '@angular/core';
3
3
  import { NgControl, NgModel } from '@angular/forms';
4
4
  import { USER_AGENT } from '@ng-web-apis/common';
5
- import { CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, tuiDefaultProp, } from '@taiga-ui/cdk';
5
+ import { CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, tuiDefaultProp, watch, } from '@taiga-ui/cdk';
6
+ import { take } from 'rxjs/operators';
6
7
  let TuiSliderComponent = class TuiSliderComponent {
7
- constructor(control, elementRef, userAgent) {
8
- this.control = control;
8
+ constructor(control, changeDetectorRef, elementRef, userAgent) {
9
+ var _a;
9
10
  this.elementRef = elementRef;
10
11
  this.userAgent = userAgent;
11
12
  this.size = 'm';
12
13
  this.segments = 1;
14
+ if (control instanceof NgModel) {
15
+ /**
16
+ * The ValueAccessor.writeValue method is called twice on any value accessor during component initialization,
17
+ * when a control is bound using [(ngModel)], first time with a phantom null value.
18
+ * With `changeDetection: ChangeDetectionStrategy.OnPush` the second call of writeValue with real value don't re-render the view.
19
+ * ___
20
+ * See this {@link https://github.com/angular/angular/issues/14988 issue}
21
+ */
22
+ (_a = control.valueChanges) === null || _a === void 0 ? void 0 : _a.pipe(watch(changeDetectorRef), take(1)).subscribe();
23
+ }
13
24
  }
14
25
  get min() {
15
26
  return Number(this.elementRef.nativeElement.min);
@@ -20,25 +31,22 @@ let TuiSliderComponent = class TuiSliderComponent {
20
31
  get step() {
21
32
  return Number(this.elementRef.nativeElement.step) || 1;
22
33
  }
34
+ get value() {
35
+ return Number(this.elementRef.nativeElement.value) || 0;
36
+ }
23
37
  get fillPercentage() {
24
- const percentage = Math.floor((100 * this.value) / (this.max - this.min));
25
- return `${percentage}%`;
38
+ return (100 * this.value) / (this.max - this.min);
26
39
  }
27
40
  get stepPercentage() {
28
- const percentage = 100 / this.segments - 0.1;
29
- return `${percentage}%`;
41
+ return 100 / this.segments - 0.1;
30
42
  }
31
43
  get isOldEdge() {
32
44
  return isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent);
33
45
  }
34
- get value() {
35
- const { control } = this;
36
- const controlValue = control instanceof NgModel ? control.viewModel : control === null || control === void 0 ? void 0 : control.value;
37
- return controlValue || Number(this.elementRef.nativeElement.value) || 0;
38
- }
39
46
  };
40
47
  TuiSliderComponent.ctorParameters = () => [
41
48
  { type: NgControl, decorators: [{ type: Optional }, { type: Self }, { type: Inject, args: [NgControl,] }] },
49
+ { type: ChangeDetectorRef, decorators: [{ type: Inject, args: [ChangeDetectorRef,] }] },
42
50
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
43
51
  { type: String, decorators: [{ type: Inject, args: [USER_AGENT,] }] }
44
52
  ];
@@ -52,20 +60,25 @@ __decorate([
52
60
  tuiDefaultProp()
53
61
  ], TuiSliderComponent.prototype, "segments", void 0);
54
62
  __decorate([
55
- HostBinding('style.--tui-slider-fill-percentage')
63
+ HostBinding('style.--tui-slider-fill-percentage.%')
56
64
  ], TuiSliderComponent.prototype, "fillPercentage", null);
57
65
  __decorate([
58
- HostBinding('style.--tui-slider-segment-width')
66
+ HostBinding('style.--tui-slider-segment-width.%')
59
67
  ], TuiSliderComponent.prototype, "stepPercentage", null);
60
68
  __decorate([
61
69
  HostBinding('class._old-edge')
62
70
  ], TuiSliderComponent.prototype, "isOldEdge", null);
63
71
  TuiSliderComponent = __decorate([
64
72
  Component({
65
- selector: 'input[tuiSlider]',
73
+ /**
74
+ * We have to call our component as `<input tuiSlider type="range" ... />`
75
+ * because otherwise built-in angular
76
+ * {@link https://github.com/angular/angular/blob/master/packages/forms/src/directives/range_value_accessor.ts#L45 RangeValueAccessor}
77
+ * cannot be matched by its CSS selector.
78
+ */
79
+ selector: 'input[type=range][tuiSlider]',
66
80
  template: ``,
67
81
  host: {
68
- type: 'range',
69
82
  /**
70
83
  * For change detection.
71
84
  * Webkit does not have built-in method for customization of filling progress (as Firefox).
@@ -80,8 +93,9 @@ TuiSliderComponent = __decorate([
80
93
  __param(0, Optional()),
81
94
  __param(0, Self()),
82
95
  __param(0, Inject(NgControl)),
83
- __param(1, Inject(ElementRef)),
84
- __param(2, Inject(USER_AGENT))
96
+ __param(1, Inject(ChangeDetectorRef)),
97
+ __param(2, Inject(ElementRef)),
98
+ __param(3, Inject(USER_AGENT))
85
99
  ], TuiSliderComponent);
86
100
  export { TuiSliderComponent };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zbGlkZXIvIiwic291cmNlcyI6WyJzbGlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLGVBQWUsRUFDZixjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBbUJ2QixJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQWlEM0IsWUFJcUIsT0FBeUIsRUFDTCxVQUF3QyxFQUN4QyxTQUFpQjtRQUZyQyxZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUNMLGVBQVUsR0FBVixVQUFVLENBQThCO1FBQ3hDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFuRDFELFNBQUksR0FBYSxHQUFHLENBQUM7UUFJckIsYUFBUSxHQUFHLENBQUMsQ0FBQztJQWdEVixDQUFDO0lBOUNKLElBQUksR0FBRztRQUNILE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBR0QsSUFBSSxjQUFjO1FBQ2QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFFLE9BQU8sR0FBRyxVQUFVLEdBQUcsQ0FBQztJQUM1QixDQUFDO0lBR0QsSUFBSSxjQUFjO1FBQ2QsTUFBTSxVQUFVLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO1FBRTdDLE9BQU8sR0FBRyxVQUFVLEdBQUcsQ0FBQztJQUM1QixDQUFDO0lBR0QsSUFBSSxTQUFTO1FBQ1QsT0FBTyxlQUFlLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxNQUFNLEVBQUMsT0FBTyxFQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLE1BQU0sWUFBWSxHQUNkLE9BQU8sWUFBWSxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxLQUFLLENBQUM7UUFFcEUsT0FBTyxZQUFZLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1RSxDQUFDO0NBVUosQ0FBQTs7WUFKaUMsU0FBUyx1QkFIbEMsUUFBUSxZQUNSLElBQUksWUFDSixNQUFNLFNBQUMsU0FBUztZQUVnQyxVQUFVLHVCQUExRCxNQUFNLFNBQUMsVUFBVTt5Q0FDakIsTUFBTSxTQUFDLFVBQVU7O0FBbkR0QjtJQUhDLEtBQUssRUFBRTtJQUNQLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztJQUM3QixjQUFjLEVBQUU7Z0RBQ0k7QUFJckI7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7b0RBQ0o7QUFlYjtJQURDLFdBQVcsQ0FBQyxvQ0FBb0MsQ0FBQzt3REFLakQ7QUFHRDtJQURDLFdBQVcsQ0FBQyxrQ0FBa0MsQ0FBQzt3REFLL0M7QUFHRDtJQURDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQzttREFHOUI7QUF2Q1Esa0JBQWtCO0lBaEI5QixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsa0JBQWtCO1FBQzVCLFFBQVEsRUFBRSxFQUFFO1FBRVosSUFBSSxFQUFFO1lBQ0YsSUFBSSxFQUFFLE9BQU87WUFDYjs7Ozs7ZUFLRztZQUNILFNBQVMsRUFBRSxHQUFHO1NBQ2pCO1FBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2xELENBQUM7SUFtRE8sV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUNWLFdBQUEsSUFBSSxFQUFFLENBQUE7SUFDTixXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUVqQixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUNsQixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtHQXZEZCxrQkFBa0IsQ0F5RDlCO1NBekRZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2wsIE5nTW9kZWx9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VVNFUl9BR0VOVH0gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENIUk9NSVVNX0VER0VfU1RBUlRfVkVSU0lPTixcbiAgICBpc0VkZ2VPbGRlclRoYW4sXG4gICAgdHVpRGVmYXVsdFByb3AsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2lucHV0W3R1aVNsaWRlcl0nLFxuICAgIHRlbXBsYXRlOiBgYCxcbiAgICBzdHlsZVVybHM6IFsnLi9zbGlkZXIuc3R5bGUubGVzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ3JhbmdlJyxcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEZvciBjaGFuZ2UgZGV0ZWN0aW9uLlxuICAgICAgICAgKiBXZWJraXQgZG9lcyBub3QgaGF2ZSBidWlsdC1pbiBtZXRob2QgZm9yIGN1c3RvbWl6YXRpb24gb2YgZmlsbGluZyBwcm9ncmVzcyAoYXMgRmlyZWZveCkuXG4gICAgICAgICAqIFdlIGRyYXcgZmlsbGluZyBvZiBwcm9ncmVzcyBieSBgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC4uLilgIG9mIHRoZSB0cmFjay5cbiAgICAgICAgICogVGhpcyBmdW5jdGlvbiB0cmlnZ2VycyBjaGFuZ2UgZGV0ZWN0aW9uIChmb3IgYGZpbGxQZXJjZW50YWdlYCBmdW5jdGlvbikgd2hlbiB3ZSBkcmFnIHRodW1iIG9mIHRoZSBpbnB1dC5cbiAgICAgICAgICovXG4gICAgICAgICcoaW5wdXQpJzogJzAnLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVNsaWRlckNvbXBvbmVudCB7XG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVTID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlZ21lbnRzID0gMTtcblxuICAgIGdldCBtaW4oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5taW4pO1xuICAgIH1cblxuICAgIGdldCBtYXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5tYXgpIHx8IDEwMDtcbiAgICB9XG5cbiAgICBnZXQgc3RlcCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTnVtYmVyKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0ZXApIHx8IDE7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLXR1aS1zbGlkZXItZmlsbC1wZXJjZW50YWdlJylcbiAgICBnZXQgZmlsbFBlcmNlbnRhZ2UoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IE1hdGguZmxvb3IoKDEwMCAqIHRoaXMudmFsdWUpIC8gKHRoaXMubWF4IC0gdGhpcy5taW4pKTtcblxuICAgICAgICByZXR1cm4gYCR7cGVyY2VudGFnZX0lYDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tdHVpLXNsaWRlci1zZWdtZW50LXdpZHRoJylcbiAgICBnZXQgc3RlcFBlcmNlbnRhZ2UoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IDEwMCAvIHRoaXMuc2VnbWVudHMgLSAwLjE7XG5cbiAgICAgICAgcmV0dXJuIGAke3BlcmNlbnRhZ2V9JWA7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fb2xkLWVkZ2UnKVxuICAgIGdldCBpc09sZEVkZ2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpc0VkZ2VPbGRlclRoYW4oQ0hST01JVU1fRURHRV9TVEFSVF9WRVJTSU9OLCB0aGlzLnVzZXJBZ2VudCk7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHtjb250cm9sfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9XG4gICAgICAgICAgICBjb250cm9sIGluc3RhbmNlb2YgTmdNb2RlbCA/IGNvbnRyb2wudmlld01vZGVsIDogY29udHJvbD8udmFsdWU7XG5cbiAgICAgICAgcmV0dXJuIGNvbnRyb2xWYWx1ZSB8fCBOdW1iZXIodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUpIHx8IDA7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVVNFUl9BR0VOVCkgcHJpdmF0ZSByZWFkb25seSB1c2VyQWdlbnQ6IHN0cmluZyxcbiAgICApIHt9XG59XG4iXX0=
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zbGlkZXIvIiwic291cmNlcyI6WyJzbGlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUNILDJCQUEyQixFQUMzQixlQUFlLEVBQ2YsY0FBYyxFQUNkLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUF1QnBDLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBeUMzQixZQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBQzFCLFVBQXdDLEVBQ3hDLFNBQWlCOztRQURqQixlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQUN4QyxjQUFTLEdBQVQsU0FBUyxDQUFRO1FBNUMxRCxTQUFJLEdBQWEsR0FBRyxDQUFDO1FBSXJCLGFBQVEsR0FBRyxDQUFDLENBQUM7UUEwQ1QsSUFBSSxPQUFPLFlBQVksT0FBTyxFQUFFO1lBQzVCOzs7Ozs7ZUFNRztZQUNILE1BQUEsT0FBTyxDQUFDLFlBQVksMENBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEdBQUc7U0FDN0U7SUFDTCxDQUFDO0lBbERELElBQUksR0FBRztRQUNILE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFHRCxJQUFJLGNBQWM7UUFDZCxPQUFPLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFHRCxJQUFJLGNBQWM7UUFDZCxPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztJQUNyQyxDQUFDO0lBR0QsSUFBSSxTQUFTO1FBQ1QsT0FBTyxlQUFlLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7Q0FzQkosQ0FBQTs7WUFoQmdCLFNBQVMsdUJBSGpCLFFBQVEsWUFDUixJQUFJLFlBQ0osTUFBTSxTQUFDLFNBQVM7WUFFNkIsaUJBQWlCLHVCQUE5RCxNQUFNLFNBQUMsaUJBQWlCO1lBQ3dCLFVBQVUsdUJBQTFELE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsVUFBVTs7QUE1Q3RCO0lBSEMsS0FBSyxFQUFFO0lBQ1AsV0FBVyxDQUFDLGdCQUFnQixDQUFDO0lBQzdCLGNBQWMsRUFBRTtnREFDSTtBQUlyQjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTtvREFDSjtBQW1CYjtJQURDLFdBQVcsQ0FBQyxzQ0FBc0MsQ0FBQzt3REFHbkQ7QUFHRDtJQURDLFdBQVcsQ0FBQyxvQ0FBb0MsQ0FBQzt3REFHakQ7QUFHRDtJQURDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQzttREFHOUI7QUF2Q1Esa0JBQWtCO0lBckI5QixTQUFTLENBQUM7UUFDUDs7Ozs7V0FLRztRQUNILFFBQVEsRUFBRSw4QkFBOEI7UUFDeEMsUUFBUSxFQUFFLEVBQUU7UUFFWixJQUFJLEVBQUU7WUFDRjs7Ozs7ZUFLRztZQUNILFNBQVMsRUFBRSxHQUFHO1NBQ2pCO1FBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2xELENBQUM7SUEyQ08sV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUNWLFdBQUEsSUFBSSxFQUFFLENBQUE7SUFDTixXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUVqQixXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3pCLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0dBaERkLGtCQUFrQixDQTZEOUI7U0E3RFksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbCwgTmdNb2RlbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtVU0VSX0FHRU5UfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ0hST01JVU1fRURHRV9TVEFSVF9WRVJTSU9OLFxuICAgIGlzRWRnZU9sZGVyVGhhbixcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB3YXRjaCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVNpemVTfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge3Rha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gICAgLyoqXG4gICAgICogV2UgaGF2ZSB0byBjYWxsIG91ciBjb21wb25lbnQgYXMgYDxpbnB1dCB0dWlTbGlkZXIgdHlwZT1cInJhbmdlXCIgLi4uIC8+YFxuICAgICAqIGJlY2F1c2Ugb3RoZXJ3aXNlIGJ1aWx0LWluIGFuZ3VsYXJcbiAgICAgKiB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iL21hc3Rlci9wYWNrYWdlcy9mb3Jtcy9zcmMvZGlyZWN0aXZlcy9yYW5nZV92YWx1ZV9hY2Nlc3Nvci50cyNMNDUgUmFuZ2VWYWx1ZUFjY2Vzc29yfVxuICAgICAqIGNhbm5vdCBiZSBtYXRjaGVkIGJ5IGl0cyBDU1Mgc2VsZWN0b3IuXG4gICAgICovXG4gICAgc2VsZWN0b3I6ICdpbnB1dFt0eXBlPXJhbmdlXVt0dWlTbGlkZXJdJyxcbiAgICB0ZW1wbGF0ZTogYGAsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2xpZGVyLnN0eWxlLmxlc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBGb3IgY2hhbmdlIGRldGVjdGlvbi5cbiAgICAgICAgICogV2Via2l0IGRvZXMgbm90IGhhdmUgYnVpbHQtaW4gbWV0aG9kIGZvciBjdXN0b21pemF0aW9uIG9mIGZpbGxpbmcgcHJvZ3Jlc3MgKGFzIEZpcmVmb3gpLlxuICAgICAgICAgKiBXZSBkcmF3IGZpbGxpbmcgb2YgcHJvZ3Jlc3MgYnkgYGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCguLi4pYCBvZiB0aGUgdHJhY2suXG4gICAgICAgICAqIFRoaXMgZnVuY3Rpb24gdHJpZ2dlcnMgY2hhbmdlIGRldGVjdGlvbiAoZm9yIGBmaWxsUGVyY2VudGFnZWAgZnVuY3Rpb24pIHdoZW4gd2UgZHJhZyB0aHVtYiBvZiB0aGUgaW5wdXQuXG4gICAgICAgICAqL1xuICAgICAgICAnKGlucHV0KSc6ICcwJyxcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTbGlkZXJDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzaXplOiBUdWlTaXplUyA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZWdtZW50cyA9IDE7XG5cbiAgICBnZXQgbWluKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBOdW1iZXIodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubWluKTtcbiAgICB9XG5cbiAgICBnZXQgbWF4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBOdW1iZXIodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubWF4KSB8fCAxMDA7XG4gICAgfVxuXG4gICAgZ2V0IHN0ZXAoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdGVwKSB8fCAxO1xuICAgIH1cblxuICAgIGdldCB2YWx1ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTnVtYmVyKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKSB8fCAwO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuLS10dWktc2xpZGVyLWZpbGwtcGVyY2VudGFnZS4lJylcbiAgICBnZXQgZmlsbFBlcmNlbnRhZ2UoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiB0aGlzLnZhbHVlKSAvICh0aGlzLm1heCAtIHRoaXMubWluKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tdHVpLXNsaWRlci1zZWdtZW50LXdpZHRoLiUnKVxuICAgIGdldCBzdGVwUGVyY2VudGFnZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMTAwIC8gdGhpcy5zZWdtZW50cyAtIDAuMTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9vbGQtZWRnZScpXG4gICAgZ2V0IGlzT2xkRWRnZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGlzRWRnZU9sZGVyVGhhbihDSFJPTUlVTV9FREdFX1NUQVJUX1ZFUlNJT04sIHRoaXMudXNlckFnZW50KTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PixcbiAgICAgICAgQEluamVjdChVU0VSX0FHRU5UKSBwcml2YXRlIHJlYWRvbmx5IHVzZXJBZ2VudDogc3RyaW5nLFxuICAgICkge1xuICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIE5nTW9kZWwpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVGhlIFZhbHVlQWNjZXNzb3Iud3JpdGVWYWx1ZSBtZXRob2QgaXMgY2FsbGVkIHR3aWNlIG9uIGFueSB2YWx1ZSBhY2Nlc3NvciBkdXJpbmcgY29tcG9uZW50IGluaXRpYWxpemF0aW9uLFxuICAgICAgICAgICAgICogd2hlbiBhIGNvbnRyb2wgaXMgYm91bmQgdXNpbmcgWyhuZ01vZGVsKV0sIGZpcnN0IHRpbWUgd2l0aCBhIHBoYW50b20gbnVsbCB2YWx1ZS5cbiAgICAgICAgICAgICAqIFdpdGggYGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoYCB0aGUgc2Vjb25kIGNhbGwgb2Ygd3JpdGVWYWx1ZSB3aXRoIHJlYWwgdmFsdWUgZG9uJ3QgcmUtcmVuZGVyIHRoZSB2aWV3LlxuICAgICAgICAgICAgICogX19fXG4gICAgICAgICAgICAgKiBTZWUgdGhpcyB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTQ5ODggaXNzdWV9XG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnRyb2wudmFsdWVDaGFuZ2VzPy5waXBlKHdhdGNoKGNoYW5nZURldGVjdG9yUmVmKSwgdGFrZSgxKSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -147,7 +147,7 @@ TuiTextAreaComponent = __decorate([
147
147
  '($.data-mode.attr)': 'mode$',
148
148
  '[class._ios]': 'isIOS',
149
149
  },
150
- 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}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:0 solid transparent;border-width:0 var(--border-end) 0 var(--border-start);border-inline-start-width:var(--border-start);border-inline-end-width:var(--border-end)}:host[data-size='m'] .pseudo-content{padding:0 .75rem}:host[data-size='l'] .pseudo-content{padding:0 1rem}.pseudo-content__extra{background-color:var(--tui-error-bg-night)}.input{padding:0;border:0 solid transparent;border-radius:inherit;background:0 0;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:0;border-width:0 var(--border-end) 0 var(--border-start);border-inline-start-width:var(--border-start);border-inline-end-width:var(--border-end)}.input:-webkit-autofill,.input:-webkit-autofill:focus,.input:-webkit-autofill:hover{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 1000px var(--tui-autofill) inset!important}.input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .input::placeholder{color:var(--tui-text-03-night)}:host._focused .input:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .input:not(:read-only)::placeholder{opacity:1}:host[data-size='m'] .input{padding:0 .75rem}:host[data-size='l'] .input{padding:0 1rem}:host._ios .input{padding-left:.8125rem}:host[data-mode=onDark]._disabled .input{color:var(--tui-text-03-night)}.placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration,300ms);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%;font-size:.8125rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;position:absolute;left:0;max-width:100%;padding:0 1rem;border:0 solid transparent;border-width:0 var(--border-end) 0 var(--border-start);border-inline-start-width:var(--border-start);border-inline-end-width:var(--border-end);box-sizing:border-box}.placeholder_raised{transform:translateY(-.625rem)}:host[data-size='m'] .placeholder_raised{font-size:.69rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .placeholder_raised,:host._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .placeholder,:host[data-size='l']._focused._label-outside .placeholder,:host[data-size='m']._focused._label-outside .placeholder{color:var(--tui-text-03)}:host[data-size='l'] .placeholder{font-size:.9375rem}:host[data-size='l'] .placeholder_raised{font-size:.8156rem}:host[data-size='l']._focused:not(._label-outside) .placeholder,:host[data-size='m']._focused:not(._label-outside) .placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .placeholder{color:var(--tui-text-02-night)}:host[data-size='l'][data-mode=onDark]._focused:not(._label-outside) .placeholder,:host[data-size='m'][data-mode=onDark]._focused:not(._label-outside) .placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .placeholder,:host[data-size='l'][data-mode=onDark]._focused._label-outside .placeholder,:host[data-size='m'][data-mode=onDark]._focused._label-outside .placeholder{color:var(--tui-text-02-night)}:host[data-size='m'] .placeholder{top:.75rem;padding:0 .75rem}:host[data-size='l'] .placeholder{top:1rem}:host._label-outside .placeholder{overflow:initial;height:auto;white-space:initial}.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'] .icons{padding:.75rem}.cleaner{transition-duration:var(--tui-duration,300ms);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}.cleaner:hover{color:var(--tui-text-02)}:host._disabled .cleaner,:host._readonly .cleaner{pointer-events:none}:host[data-mode=onDark] .cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .cleaner:hover{color:var(--tui-text-01-night)}.tooltip{pointer-events:auto}.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] .counter{color:var(--tui-text-03-night)}"]
150
+ 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}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-width:0 var(--border-end,0) 0 var(--border-start,0);border-inline-start-width:var(--border-start,0);border-inline-end-width:var(--border-end,0)}:host[data-size='m'] .pseudo-content{padding:0 .75rem}:host[data-size='l'] .pseudo-content{padding:0 1rem}.pseudo-content__extra{background-color:var(--tui-error-bg-night)}.input{padding:0;border:0;border-radius:inherit;background:0 0;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:0;border:solid transparent;border-width:0 var(--border-end,0) 0 var(--border-start,0);border-inline-start-width:var(--border-start,0);border-inline-end-width:var(--border-end,0)}.input:-webkit-autofill,.input:-webkit-autofill:focus,.input:-webkit-autofill:hover{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 1000px var(--tui-autofill) inset!important}.input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .input::placeholder{color:var(--tui-text-03-night)}:host._focused .input:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .input:not(:read-only)::placeholder{opacity:1}:host[data-size='m'] .input{padding:0 .75rem}:host[data-size='l'] .input{padding:0 1rem}:host._ios .input{padding-left:.8125rem}:host[data-mode=onDark]._disabled .input{color:var(--tui-text-03-night)}.placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration,300ms);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%;font-size:.8125rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;position:absolute;left:0;max-width:100%;padding:0 1rem;border:solid transparent;border-width:0 var(--border-end,0) 0 var(--border-start,0);border-inline-start-width:var(--border-start,0);border-inline-end-width:var(--border-end,0);box-sizing:border-box}.placeholder_raised{transform:translateY(-.625rem)}:host[data-size='m'] .placeholder_raised{font-size:.69rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .placeholder_raised,:host._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .placeholder,:host[data-size='l']._focused._label-outside .placeholder,:host[data-size='m']._focused._label-outside .placeholder{color:var(--tui-text-03)}:host[data-size='l'] .placeholder{font-size:.9375rem}:host[data-size='l'] .placeholder_raised{font-size:.8156rem}:host[data-size='l']._focused:not(._label-outside) .placeholder,:host[data-size='m']._focused:not(._label-outside) .placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .placeholder{color:var(--tui-text-02-night)}:host[data-size='l'][data-mode=onDark]._focused:not(._label-outside) .placeholder,:host[data-size='m'][data-mode=onDark]._focused:not(._label-outside) .placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .placeholder,:host[data-size='l'][data-mode=onDark]._focused._label-outside .placeholder,:host[data-size='m'][data-mode=onDark]._focused._label-outside .placeholder{color:var(--tui-text-02-night)}:host[data-size='m'] .placeholder{top:.75rem;padding:0 .75rem}:host[data-size='l'] .placeholder{top:1rem}:host._label-outside .placeholder{overflow:initial;height:auto;white-space:initial}.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'] .icons{padding:.75rem}.cleaner{transition-duration:var(--tui-duration,300ms);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}.cleaner:hover{color:var(--tui-text-02)}:host._disabled .cleaner,:host._readonly .cleaner{pointer-events:none}:host[data-mode=onDark] .cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .cleaner:hover{color:var(--tui-text-01-night)}.tooltip{pointer-events:auto}.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] .counter{color:var(--tui-text-03-night)}"]
151
151
  }),
152
152
  __param(0, Optional()),
153
153
  __param(0, Self()),
@@ -1,3 +1,4 @@
1
1
  export * from './lazy-loading.directive';
2
2
  export * from './lazy-loading.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMvbGF6eS1sb2FkaW5nLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXp5LWxvYWRpbmcuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGF6eS1sb2FkaW5nLm1vZHVsZSc7XG4iXX0=
3
+ export * from './lazy-loading.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMvbGF6eS1sb2FkaW5nLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xhenktbG9hZGluZy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXp5LWxvYWRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGF6eS1sb2FkaW5nLnNlcnZpY2UnO1xuIl19
@@ -2,5 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './index';
5
- export { TuiLazyLoadingService as ɵa } from './lazy-loading.service';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtbGF6eS1sb2FkaW5nLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzL2xhenktbG9hZGluZy8iLCJzb3VyY2VzIjpbInRhaWdhLXVpLWtpdC1kaXJlY3RpdmVzLWxhenktbG9hZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG5cbmV4cG9ydCB7VHVpTGF6eUxvYWRpbmdTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9sYXp5LWxvYWRpbmcuc2VydmljZSc7Il19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtbGF6eS1sb2FkaW5nLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzL2xhenktbG9hZGluZy8iLCJzb3VyY2VzIjpbInRhaWdhLXVpLWtpdC1kaXJlY3RpdmVzLWxhenktbG9hZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==