@taiga-ui/kit 3.10.0 → 3.12.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 (271) hide show
  1. package/bundles/taiga-ui-kit-components-accordion.umd.js +3 -1
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-avatar.umd.js +9 -2
  5. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +3 -1
  10. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +3 -1
  17. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-input-date.umd.js +3 -1
  19. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-input-files.umd.js +246 -69
  21. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +16 -2
  24. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-month.umd.js +17 -3
  26. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +20 -2
  29. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-input-phone.umd.js +6 -2
  31. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-island.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-push.umd.js +3 -1
  40. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-range.umd.js +4 -2
  43. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-slider.umd.js +3 -1
  46. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-stepper.umd.js +20 -13
  48. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-tiles.umd.js +645 -0
  51. package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -0
  52. package/bundles/taiga-ui-kit-components.umd.js +10 -4
  53. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  54. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +3 -1
  55. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +3 -1
  57. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-pipes-stringify.umd.js.map +1 -1
  61. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  64. package/components/accordion/accordion.component.d.ts +1 -1
  65. package/components/arrow/arrow-options.d.ts +2 -2
  66. package/components/avatar/avatar-options.d.ts +1 -1
  67. package/components/avatar/avatar.component.d.ts +5 -3
  68. package/components/badge/badge.component.d.ts +1 -1
  69. package/components/badged-content/badged-content.component.d.ts +1 -1
  70. package/components/calendar-month/calendar-month.component.d.ts +1 -1
  71. package/components/calendar-range/calendar-range.component.d.ts +3 -3
  72. package/components/checkbox-block/checkbox-block.component.d.ts +1 -1
  73. package/components/combo-box/combo-box.component.d.ts +1 -1
  74. package/components/data-list-wrapper/data-list-wrapper.d.ts +3 -3
  75. package/components/filter/filter.component.d.ts +1 -1
  76. package/components/index.d.ts +1 -0
  77. package/components/input-date-range/input-date-range.component.d.ts +1 -1
  78. package/components/input-files/index.d.ts +2 -0
  79. package/components/input-files/input-files.component.d.ts +20 -6
  80. package/components/input-files/input-files.directive.d.ts +20 -0
  81. package/components/input-files/input-files.module.d.ts +8 -7
  82. package/components/input-files/input-files.options.d.ts +17 -0
  83. package/components/input-inline/input-inline.component.d.ts +1 -1
  84. package/components/input-month/input-month.component.d.ts +4 -2
  85. package/components/input-month-range/input-month-range.component.d.ts +4 -2
  86. package/components/input-password/input-password-options.d.ts +2 -2
  87. package/components/input-password/input-password.component.d.ts +3 -3
  88. package/components/input-phone/input-phone.component.d.ts +1 -1
  89. package/components/input-phone-international/input-phone-international.component.d.ts +1 -1
  90. package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -1
  91. package/components/input-range/input-range.component.d.ts +1 -1
  92. package/components/input-tag/input-tag-options.d.ts +1 -1
  93. package/components/input-tag/input-tag.component.d.ts +4 -4
  94. package/components/input-time/input-time-options.d.ts +2 -2
  95. package/components/island/island.component.d.ts +1 -1
  96. package/components/marker-icon/marker-icon.component.d.ts +1 -1
  97. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +1 -1
  98. package/components/multi-select/multi-select.component.d.ts +2 -2
  99. package/components/pdf-viewer/pdf-viewer.service.d.ts +1 -1
  100. package/components/push/push-alert.directive.d.ts +1 -1
  101. package/components/radio-block/radio-block.component.d.ts +1 -1
  102. package/components/range/range-change.directive.d.ts +2 -2
  103. package/components/range/range.component.d.ts +1 -1
  104. package/components/select/select.component.d.ts +1 -1
  105. package/components/slider/helpers/slider-readonly.directive.d.ts +2 -2
  106. package/components/stepper/step/step.component.d.ts +1 -1
  107. package/components/stepper/stepper.component.d.ts +3 -2
  108. package/components/tag/tag-options.d.ts +1 -1
  109. package/components/tag/tag.component.d.ts +2 -2
  110. package/components/tiles/index.d.ts +4 -0
  111. package/components/tiles/package.json +10 -0
  112. package/components/tiles/taiga-ui-kit-components-tiles.d.ts +5 -0
  113. package/components/tiles/tile-handle.directive.d.ts +13 -0
  114. package/components/tiles/tile.component.d.ts +30 -0
  115. package/components/tiles/tiles.component.d.ts +19 -0
  116. package/components/tiles/tiles.module.d.ts +10 -0
  117. package/directives/lazy-loading/lazy-loading.directive.d.ts +3 -2
  118. package/directives/lazy-loading/lazy-loading.service.d.ts +4 -3
  119. package/esm2015/components/accordion/accordion.component.js +5 -3
  120. package/esm2015/components/arrow/arrow-options.js +1 -1
  121. package/esm2015/components/avatar/avatar-options.js +1 -1
  122. package/esm2015/components/avatar/avatar.component.js +6 -3
  123. package/esm2015/components/badge/badge.component.js +1 -1
  124. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  125. package/esm2015/components/calendar-month/calendar-month.component.js +1 -1
  126. package/esm2015/components/calendar-range/calendar-range.component.js +5 -3
  127. package/esm2015/components/checkbox-block/checkbox-block.component.js +1 -1
  128. package/esm2015/components/combo-box/combo-box.component.js +1 -1
  129. package/esm2015/components/data-list-wrapper/data-list-wrapper.js +1 -1
  130. package/esm2015/components/filter/filter.component.js +1 -1
  131. package/esm2015/components/index.js +2 -1
  132. package/esm2015/components/input-date/input-date.component.js +5 -3
  133. package/esm2015/components/input-date-range/input-date-range.component.js +1 -1
  134. package/esm2015/components/input-date-time/input-date-time.component.js +5 -3
  135. package/esm2015/components/input-files/index.js +3 -1
  136. package/esm2015/components/input-files/input-files.component.js +75 -26
  137. package/esm2015/components/input-files/input-files.directive.js +77 -0
  138. package/esm2015/components/input-files/input-files.module.js +12 -3
  139. package/esm2015/components/input-files/input-files.options.js +16 -0
  140. package/esm2015/components/input-inline/input-inline.component.js +1 -1
  141. package/esm2015/components/input-month/input-month.component.js +15 -5
  142. package/esm2015/components/input-month-range/input-month-range.component.js +14 -4
  143. package/esm2015/components/input-password/input-password-options.js +1 -1
  144. package/esm2015/components/input-password/input-password.component.js +1 -1
  145. package/esm2015/components/input-phone/input-phone.component.js +7 -3
  146. package/esm2015/components/input-phone-international/input-phone-international.component.js +13 -2
  147. package/esm2015/components/input-phone-international/tokens/countries-masks.js +9 -2
  148. package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +1 -1
  149. package/esm2015/components/input-range/input-range.component.js +1 -1
  150. package/esm2015/components/input-tag/input-tag-options.js +1 -1
  151. package/esm2015/components/input-tag/input-tag.component.js +1 -1
  152. package/esm2015/components/input-time/input-time-options.js +1 -1
  153. package/esm2015/components/island/island.component.js +1 -1
  154. package/esm2015/components/marker-icon/marker-icon.component.js +1 -1
  155. package/esm2015/components/multi-select/hide-selected.pipe.js +1 -1
  156. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  157. package/esm2015/components/multi-select/multi-select.component.js +1 -1
  158. package/esm2015/components/pdf-viewer/pdf-viewer.service.js +1 -1
  159. package/esm2015/components/push/push-alert.directive.js +5 -3
  160. package/esm2015/components/radio-block/radio-block.component.js +1 -1
  161. package/esm2015/components/range/range-change.directive.js +5 -3
  162. package/esm2015/components/range/range.component.js +2 -2
  163. package/esm2015/components/select/select.component.js +1 -1
  164. package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -3
  165. package/esm2015/components/stepper/step/step.component.js +2 -2
  166. package/esm2015/components/stepper/stepper.component.js +12 -9
  167. package/esm2015/components/tag/tag-options.js +1 -1
  168. package/esm2015/components/tag/tag.component.js +1 -1
  169. package/esm2015/components/tiles/index.js +5 -0
  170. package/esm2015/components/tiles/taiga-ui-kit-components-tiles.js +5 -0
  171. package/esm2015/components/tiles/tile-handle.directive.js +53 -0
  172. package/esm2015/components/tiles/tile.component.js +102 -0
  173. package/esm2015/components/tiles/tiles.component.js +99 -0
  174. package/esm2015/components/tiles/tiles.module.js +20 -0
  175. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +1 -1
  176. package/esm2015/directives/lazy-loading/lazy-loading.service.js +5 -3
  177. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +5 -3
  178. package/esm2015/pipes/field-error/field-error-pipe.js +1 -1
  179. package/esm2015/pipes/filter-by-input/filter-by-input-with.pipe.js +1 -1
  180. package/esm2015/pipes/filter-by-input/filter-by-input.base.js +1 -1
  181. package/esm2015/pipes/filter-by-input/filter-by-input.pipe.js +1 -1
  182. package/esm2015/pipes/stringify/stringify.pipe.js +1 -1
  183. package/esm2015/tokens/input-date-options.js +1 -1
  184. package/esm2015/tokens/validation-errors.js +1 -1
  185. package/esm2015/types/dropdown-position.js +1 -1
  186. package/esm2015/types/file-state.js +1 -1
  187. package/esm2015/types/marker-icon-mode.js +1 -1
  188. package/esm2015/types/status.js +1 -1
  189. package/esm2015/types/step-state.js +1 -1
  190. package/esm2015/types/time-format-parts.js +1 -1
  191. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +1 -1
  192. package/esm2015/utils/mask/create-time-mask.js +1 -1
  193. package/esm2015/utils/miscellaneous/is-flat.js +1 -1
  194. package/esm2015/utils/miscellaneous/replay-control-value-changes-factory.js +1 -1
  195. package/fesm2015/taiga-ui-kit-components-accordion.js +3 -1
  196. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  197. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  198. package/fesm2015/taiga-ui-kit-components-avatar.js +5 -2
  199. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  200. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  201. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  202. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  203. package/fesm2015/taiga-ui-kit-components-calendar-range.js +4 -2
  204. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  205. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  206. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  207. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  208. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  209. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  210. package/fesm2015/taiga-ui-kit-components-input-date-time.js +4 -2
  211. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  212. package/fesm2015/taiga-ui-kit-components-input-date.js +4 -2
  213. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  214. package/fesm2015/taiga-ui-kit-components-input-files.js +167 -29
  215. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  216. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  217. package/fesm2015/taiga-ui-kit-components-input-month-range.js +13 -3
  218. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  219. package/fesm2015/taiga-ui-kit-components-input-month.js +14 -4
  220. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  221. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  222. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +20 -2
  223. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  224. package/fesm2015/taiga-ui-kit-components-input-phone.js +6 -2
  225. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  226. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  227. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  228. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  229. package/fesm2015/taiga-ui-kit-components-island.js.map +1 -1
  230. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  231. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  232. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  233. package/fesm2015/taiga-ui-kit-components-push.js +4 -2
  234. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
  235. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  236. package/fesm2015/taiga-ui-kit-components-range.js +4 -2
  237. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  238. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  239. package/fesm2015/taiga-ui-kit-components-slider.js +3 -1
  240. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  241. package/fesm2015/taiga-ui-kit-components-stepper.js +12 -9
  242. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  243. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  244. package/fesm2015/taiga-ui-kit-components-tiles.js +262 -0
  245. package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -0
  246. package/fesm2015/taiga-ui-kit-components.js +1 -0
  247. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  248. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +4 -2
  249. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  250. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +4 -2
  251. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  252. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  253. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  254. package/fesm2015/taiga-ui-kit-pipes-stringify.js.map +1 -1
  255. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  256. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  257. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  258. package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +1 -1
  259. package/package.json +8 -8
  260. package/pipes/field-error/field-error-pipe.d.ts +1 -1
  261. package/pipes/filter-by-input/filter-by-input.base.d.ts +1 -1
  262. package/pipes/stringify/stringify.pipe.d.ts +1 -1
  263. package/tokens/input-date-options.d.ts +1 -1
  264. package/types/dropdown-position.d.ts +1 -1
  265. package/types/file-state.d.ts +1 -1
  266. package/types/marker-icon-mode.d.ts +1 -1
  267. package/types/status.d.ts +1 -1
  268. package/types/step-state.d.ts +1 -1
  269. package/types/time-format-parts.d.ts +1 -1
  270. package/utils/miscellaneous/is-flat.d.ts +1 -1
  271. package/utils/miscellaneous/replay-control-value-changes-factory.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-badged-content.js","sources":["../../../projects/kit/components/badged-content/badged-content.component.ts","../../../projects/kit/components/badged-content/badged-content.template.html","../../../projects/kit/components/badged-content/badged-content.module.ts","../../../projects/kit/components/badged-content/taiga-ui-kit-components-badged-content.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber, tuiIsString, tuiPx} from '@taiga-ui/cdk';\nimport {tuiSizeBigger, TuiSizeL, TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nconst BADGE_SIZE: {[key: string]: TuiSizeXS | TuiSizeL} = {\n xs: `xs`,\n s: `s`,\n m: `s`,\n l: `m`,\n xl: `m`,\n xxl: `l`,\n};\n\n@Component({\n selector: `tui-badged-content`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: `./badged-content.template.html`,\n styleUrls: [`./badged-content.style.less`],\n})\nexport class TuiBadgedContentComponent {\n @Input()\n @HostBinding(`attr.data-tui-host-top`)\n @tuiDefaultProp()\n contentTop: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-tui-host-bottom`)\n @tuiDefaultProp()\n contentBottom: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = `m`;\n\n @Input()\n @tuiDefaultProp()\n colorTop = ``;\n\n @Input()\n @tuiDefaultProp()\n colorBottom = ``;\n\n @Input()\n @HostBinding(`class._rounded`)\n @tuiDefaultProp()\n rounded = false;\n\n get topNotification(): string {\n return !this.contentTop && this.colorTop ? this.colorTop : ``;\n }\n\n get bottomNotification(): string {\n return !this.contentBottom && this.colorBottom ? this.colorBottom : ``;\n }\n\n get badgeSize(): TuiSizeXS | TuiSizeL {\n return BADGE_SIZE[this.size];\n }\n\n get badgeHidden(): boolean {\n return this.size === `xs`;\n }\n\n get sizeBig(): boolean {\n return tuiSizeBigger(this.size);\n }\n\n get boxShadow(): string {\n const borderWidth = this.sizeBig ? 3 : 2;\n\n return `0 0 0 ${tuiPx(borderWidth)}`;\n }\n\n contentIsNumber(content: PolymorpheusContent): content is number {\n return tuiIsNumber(content?.valueOf());\n }\n\n contentIsString(content: PolymorpheusContent): content is string {\n return tuiIsString(content?.valueOf());\n }\n\n getStatus(color: string): TuiStatus {\n return color ? `custom` : `primary`;\n }\n}\n","<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiBadgedContentComponent} from './badged-content.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiSvgModule, TuiBadgeModule],\n declarations: [TuiBadgedContentComponent],\n exports: [TuiBadgedContentComponent],\n})\nexport class TuiBadgedContentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-badged-content.js","sources":["../../../projects/kit/components/badged-content/badged-content.component.ts","../../../projects/kit/components/badged-content/badged-content.template.html","../../../projects/kit/components/badged-content/badged-content.module.ts","../../../projects/kit/components/badged-content/taiga-ui-kit-components-badged-content.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber, tuiIsString, tuiPx} from '@taiga-ui/cdk';\nimport {tuiSizeBigger, TuiSizeL, TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nconst BADGE_SIZE: {[key: string]: TuiSizeL | TuiSizeXS} = {\n xs: `xs`,\n s: `s`,\n m: `s`,\n l: `m`,\n xl: `m`,\n xxl: `l`,\n};\n\n@Component({\n selector: `tui-badged-content`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: `./badged-content.template.html`,\n styleUrls: [`./badged-content.style.less`],\n})\nexport class TuiBadgedContentComponent {\n @Input()\n @HostBinding(`attr.data-tui-host-top`)\n @tuiDefaultProp()\n contentTop: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-tui-host-bottom`)\n @tuiDefaultProp()\n contentBottom: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = `m`;\n\n @Input()\n @tuiDefaultProp()\n colorTop = ``;\n\n @Input()\n @tuiDefaultProp()\n colorBottom = ``;\n\n @Input()\n @HostBinding(`class._rounded`)\n @tuiDefaultProp()\n rounded = false;\n\n get topNotification(): string {\n return !this.contentTop && this.colorTop ? this.colorTop : ``;\n }\n\n get bottomNotification(): string {\n return !this.contentBottom && this.colorBottom ? this.colorBottom : ``;\n }\n\n get badgeSize(): TuiSizeL | TuiSizeXS {\n return BADGE_SIZE[this.size];\n }\n\n get badgeHidden(): boolean {\n return this.size === `xs`;\n }\n\n get sizeBig(): boolean {\n return tuiSizeBigger(this.size);\n }\n\n get boxShadow(): string {\n const borderWidth = this.sizeBig ? 3 : 2;\n\n return `0 0 0 ${tuiPx(borderWidth)}`;\n }\n\n contentIsNumber(content: PolymorpheusContent): content is number {\n return tuiIsNumber(content?.valueOf());\n }\n\n contentIsString(content: PolymorpheusContent): content is string {\n return tuiIsString(content?.valueOf());\n }\n\n getStatus(color: string): TuiStatus {\n return color ? `custom` : `primary`;\n }\n}\n","<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiBadgedContentComponent} from './badged-content.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiSvgModule, TuiBadgeModule],\n declarations: [TuiBadgedContentComponent],\n exports: [TuiBadgedContentComponent],\n})\nexport class TuiBadgedContentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-calendar-month.js","sources":["../../../projects/kit/components/calendar-month/calendar-month.component.ts","../../../projects/kit/components/calendar-month/calendar-month.template.html","../../../projects/kit/components/calendar-month/calendar-month.module.ts","../../../projects/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n tuiNullableSame,\n tuiPure,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState, TuiWithOptionalMinMax} from '@taiga-ui/core';\nimport {TuiMonthContext} from '@taiga-ui/kit/interfaces';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\nimport {TuiBooleanHandlerWithContext} from '@taiga-ui/kit/types';\nimport {Observable} from 'rxjs';\n\nconst TODAY = TuiDay.currentLocal();\n\n@Component({\n selector: `tui-calendar-month`,\n templateUrl: `./calendar-month.template.html`,\n styleUrls: [`./calendar-month.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiCalendarMonthComponent implements TuiWithOptionalMinMax<TuiMonth> {\n @Input()\n @tuiDefaultProp()\n value: TuiMonthRange | TuiMonth | null = null;\n\n @Input()\n @tuiDefaultProp()\n year: TuiYear = TODAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext> =\n ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n @Output()\n readonly yearChange = new EventEmitter<TuiYear>();\n\n isYearPickerShown = false;\n\n hoveredItem: TuiMonth | null = null;\n pressedItem: TuiMonth | null = null;\n\n constructor(\n @Inject(TUI_CALENDAR_MONTHS) readonly months$: Observable<readonly string[]>,\n ) {}\n\n @HostBinding(`class._single`)\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiMonth || this.value.isSingleMonth)\n );\n }\n\n get previousYearDisabled(): boolean {\n return this.year.yearSameOrBefore(this.min);\n }\n\n get nextYearDisabled(): boolean {\n return this.year.yearSameOrAfter(this.max);\n }\n\n getItemState(item: TuiMonth): TuiInteractiveState | null {\n const {disabledItemHandlerWithMinMax, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandlerWithMinMax(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem?.monthSame(item)) {\n return TuiInteractiveState.Active;\n }\n\n if (hoveredItem?.monthSame(item)) {\n return TuiInteractiveState.Hover;\n }\n\n return null;\n }\n\n getItemRange(item: TuiMonth): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiMonth) {\n return value.monthSame(item) ? TuiRangeState.Single : null;\n }\n\n const theFirstOfRange = value.from.monthSame(item) && !value.isSingleMonth;\n const hoveredItemAfterFrom =\n hoveredItem?.monthAfter(value.from) &&\n value.from.monthSame(item) &&\n value.isSingleMonth;\n const hoveredItemIsCandidateToBeFrom =\n hoveredItem?.monthSame(item) &&\n hoveredItem?.monthBefore(value.from) &&\n value.isSingleMonth;\n\n if (theFirstOfRange || hoveredItemAfterFrom || hoveredItemIsCandidateToBeFrom) {\n return TuiRangeState.Start;\n }\n\n const theLastOfRange = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemBeforeTo =\n value.to.monthSame(item) &&\n hoveredItem?.monthBefore(value.to) &&\n value.isSingleMonth;\n const hoveredItemIsCandidateToBeTo =\n hoveredItem?.monthSame(item) &&\n hoveredItem?.monthAfter(value.from) &&\n value.isSingleMonth;\n\n if (theLastOfRange || hoveredItemBeforeTo || hoveredItemIsCandidateToBeTo) {\n return TuiRangeState.End;\n }\n\n return value.isSingleMonth && value.from.monthSame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n isItemInsideRange(month: TuiMonth): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiMonth) {\n return false;\n }\n\n if (!value.isSingleMonth) {\n return value.from.monthSameOrBefore(month) && value.to.monthAfter(month);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiMonthRange.sort(value.from, hoveredItem);\n\n return range.from.monthSameOrBefore(month) && range.to.monthAfter(month);\n }\n\n onPickerYearClick(year: TuiYear): void {\n this.isYearPickerShown = false;\n\n if (this.year.yearSame(year)) {\n return;\n }\n\n this.updateActiveYear(year);\n }\n\n onItemClick(month: TuiMonth): void {\n if (this.disabledItemHandlerWithMinMax(month)) {\n return;\n }\n\n this.monthClick.emit(month);\n }\n\n onYearClick(): void {\n this.isYearPickerShown = true;\n }\n\n onNextYear(): void {\n this.updateActiveYear(this.year.append({year: 1}));\n }\n\n onPreviousYear(): void {\n this.updateActiveYear(this.year.append({year: -1}));\n }\n\n onItemHovered(hovered: boolean, item: TuiMonth): void {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n onItemPressed(pressed: boolean, item: TuiMonth): void {\n this.updatePressedItem(pressed ? item : null);\n }\n\n @tuiPure\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext>,\n value: TuiMonth | TuiMonthRange | null,\n min: TuiMonth,\n max: TuiMonth,\n ): TuiBooleanHandler<TuiMonth> {\n return item =>\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item, {value});\n }\n\n private get disabledItemHandlerWithMinMax(): TuiBooleanHandler<TuiMonth> {\n return this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler,\n this.value,\n this.min,\n this.max,\n );\n }\n\n private updateHoveredItem(month: TuiMonth | null): void {\n if (tuiNullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updatePressedItem(item: TuiMonth | null): void {\n this.pressedItem = item;\n }\n\n private updateActiveYear(year: TuiYear): void {\n this.year = year;\n this.yearChange.emit(year);\n }\n}\n","<tui-scrollbar\n *ngIf=\"isYearPickerShown; else monthSelect\"\n class=\"t-scrollbar\"\n>\n <tui-primitive-year-picker\n [min]=\"min\"\n [max]=\"max\"\n [initialItem]=\"year\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n tuiLink\n automation-id=\"tui-calendar-month__active-year\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ year.formattedYear }}\n </button>\n </tui-primitive-spin-button>\n <div class=\"t-row\">\n <ng-container *ngFor=\"let month of months$ | async; let index = index\">\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"t-cell\"\n [class.t-cell_today]=\"isItemToday(item)\"\n [class.t-cell_interval]=\"isItemInsideRange(item)\"\n [attr.data-range]=\"getItemRange(item)\"\n [attr.data-state]=\"getItemState(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"t-item\">{{ month }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiFocusableModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiLinkModule,\n TuiPrimitiveSpinButtonModule,\n TuiPrimitiveYearPickerModule,\n TuiScrollbarModule,\n} from '@taiga-ui/core';\n\nimport {TuiCalendarMonthComponent} from './calendar-month.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiPrimitiveYearPickerModule,\n TuiPrimitiveSpinButtonModule,\n TuiScrollbarModule,\n TuiLinkModule,\n TuiLetModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusableModule,\n ],\n declarations: [TuiCalendarMonthComponent],\n exports: [TuiCalendarMonthComponent],\n})\nexport class TuiCalendarMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-calendar-month.js","sources":["../../../projects/kit/components/calendar-month/calendar-month.component.ts","../../../projects/kit/components/calendar-month/calendar-month.template.html","../../../projects/kit/components/calendar-month/calendar-month.module.ts","../../../projects/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n tuiNullableSame,\n tuiPure,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState, TuiWithOptionalMinMax} from '@taiga-ui/core';\nimport {TuiMonthContext} from '@taiga-ui/kit/interfaces';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\nimport {TuiBooleanHandlerWithContext} from '@taiga-ui/kit/types';\nimport {Observable} from 'rxjs';\n\nconst TODAY = TuiDay.currentLocal();\n\n@Component({\n selector: `tui-calendar-month`,\n templateUrl: `./calendar-month.template.html`,\n styleUrls: [`./calendar-month.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiCalendarMonthComponent implements TuiWithOptionalMinMax<TuiMonth> {\n @Input()\n @tuiDefaultProp()\n value: TuiMonth | TuiMonthRange | null = null;\n\n @Input()\n @tuiDefaultProp()\n year: TuiYear = TODAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext> =\n ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n @Output()\n readonly yearChange = new EventEmitter<TuiYear>();\n\n isYearPickerShown = false;\n\n hoveredItem: TuiMonth | null = null;\n pressedItem: TuiMonth | null = null;\n\n constructor(\n @Inject(TUI_CALENDAR_MONTHS) readonly months$: Observable<readonly string[]>,\n ) {}\n\n @HostBinding(`class._single`)\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiMonth || this.value.isSingleMonth)\n );\n }\n\n get previousYearDisabled(): boolean {\n return this.year.yearSameOrBefore(this.min);\n }\n\n get nextYearDisabled(): boolean {\n return this.year.yearSameOrAfter(this.max);\n }\n\n getItemState(item: TuiMonth): TuiInteractiveState | null {\n const {disabledItemHandlerWithMinMax, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandlerWithMinMax(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem?.monthSame(item)) {\n return TuiInteractiveState.Active;\n }\n\n if (hoveredItem?.monthSame(item)) {\n return TuiInteractiveState.Hover;\n }\n\n return null;\n }\n\n getItemRange(item: TuiMonth): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiMonth) {\n return value.monthSame(item) ? TuiRangeState.Single : null;\n }\n\n const theFirstOfRange = value.from.monthSame(item) && !value.isSingleMonth;\n const hoveredItemAfterFrom =\n hoveredItem?.monthAfter(value.from) &&\n value.from.monthSame(item) &&\n value.isSingleMonth;\n const hoveredItemIsCandidateToBeFrom =\n hoveredItem?.monthSame(item) &&\n hoveredItem?.monthBefore(value.from) &&\n value.isSingleMonth;\n\n if (theFirstOfRange || hoveredItemAfterFrom || hoveredItemIsCandidateToBeFrom) {\n return TuiRangeState.Start;\n }\n\n const theLastOfRange = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemBeforeTo =\n value.to.monthSame(item) &&\n hoveredItem?.monthBefore(value.to) &&\n value.isSingleMonth;\n const hoveredItemIsCandidateToBeTo =\n hoveredItem?.monthSame(item) &&\n hoveredItem?.monthAfter(value.from) &&\n value.isSingleMonth;\n\n if (theLastOfRange || hoveredItemBeforeTo || hoveredItemIsCandidateToBeTo) {\n return TuiRangeState.End;\n }\n\n return value.isSingleMonth && value.from.monthSame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n isItemInsideRange(month: TuiMonth): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiMonth) {\n return false;\n }\n\n if (!value.isSingleMonth) {\n return value.from.monthSameOrBefore(month) && value.to.monthAfter(month);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiMonthRange.sort(value.from, hoveredItem);\n\n return range.from.monthSameOrBefore(month) && range.to.monthAfter(month);\n }\n\n onPickerYearClick(year: TuiYear): void {\n this.isYearPickerShown = false;\n\n if (this.year.yearSame(year)) {\n return;\n }\n\n this.updateActiveYear(year);\n }\n\n onItemClick(month: TuiMonth): void {\n if (this.disabledItemHandlerWithMinMax(month)) {\n return;\n }\n\n this.monthClick.emit(month);\n }\n\n onYearClick(): void {\n this.isYearPickerShown = true;\n }\n\n onNextYear(): void {\n this.updateActiveYear(this.year.append({year: 1}));\n }\n\n onPreviousYear(): void {\n this.updateActiveYear(this.year.append({year: -1}));\n }\n\n onItemHovered(hovered: boolean, item: TuiMonth): void {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n onItemPressed(pressed: boolean, item: TuiMonth): void {\n this.updatePressedItem(pressed ? item : null);\n }\n\n @tuiPure\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext>,\n value: TuiMonth | TuiMonthRange | null,\n min: TuiMonth,\n max: TuiMonth,\n ): TuiBooleanHandler<TuiMonth> {\n return item =>\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item, {value});\n }\n\n private get disabledItemHandlerWithMinMax(): TuiBooleanHandler<TuiMonth> {\n return this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler,\n this.value,\n this.min,\n this.max,\n );\n }\n\n private updateHoveredItem(month: TuiMonth | null): void {\n if (tuiNullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updatePressedItem(item: TuiMonth | null): void {\n this.pressedItem = item;\n }\n\n private updateActiveYear(year: TuiYear): void {\n this.year = year;\n this.yearChange.emit(year);\n }\n}\n","<tui-scrollbar\n *ngIf=\"isYearPickerShown; else monthSelect\"\n class=\"t-scrollbar\"\n>\n <tui-primitive-year-picker\n [min]=\"min\"\n [max]=\"max\"\n [initialItem]=\"year\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n tuiLink\n automation-id=\"tui-calendar-month__active-year\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ year.formattedYear }}\n </button>\n </tui-primitive-spin-button>\n <div class=\"t-row\">\n <ng-container *ngFor=\"let month of months$ | async; let index = index\">\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"t-cell\"\n [class.t-cell_today]=\"isItemToday(item)\"\n [class.t-cell_interval]=\"isItemInsideRange(item)\"\n [attr.data-range]=\"getItemRange(item)\"\n [attr.data-state]=\"getItemState(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"t-item\">{{ month }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiFocusableModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiLinkModule,\n TuiPrimitiveSpinButtonModule,\n TuiPrimitiveYearPickerModule,\n TuiScrollbarModule,\n} from '@taiga-ui/core';\n\nimport {TuiCalendarMonthComponent} from './calendar-month.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiPrimitiveYearPickerModule,\n TuiPrimitiveSpinButtonModule,\n TuiScrollbarModule,\n TuiLinkModule,\n TuiLetModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusableModule,\n ],\n declarations: [TuiCalendarMonthComponent],\n exports: [TuiCalendarMonthComponent],\n})\nexport class TuiCalendarMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { EventEmitter, ChangeDetectorRef, Component, ChangeDetectionStrategy, Optional, Inject, Input, Output, HostListener, NgModule } from '@angular/core';
3
+ import { EventEmitter, ChangeDetectorRef, Component, ChangeDetectionStrategy, Optional, Inject, Self, Input, Output, HostListener, NgModule } from '@angular/core';
4
4
  import * as i4 from '@taiga-ui/cdk';
5
5
  import { TuiMonth, ALWAYS_FALSE_HANDLER, TUI_FIRST_DAY, TUI_LAST_DAY, tuiWatch, tuiIsString, TuiDayRange, tuiNullableSame, TuiDestroyService, tuiDefaultProp, tuiPure, TuiMapperPipeModule, TuiPreventDefaultModule } from '@taiga-ui/cdk';
6
6
  import * as i2 from '@taiga-ui/core';
@@ -105,7 +105,7 @@ class TuiCalendarRangeComponent {
105
105
  };
106
106
  }
107
107
  }
108
- TuiCalendarRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiCalendarRangeComponent, deps: [{ token: TUI_CALENDAR_DATE_STREAM, optional: true }, { token: ChangeDetectorRef }, { token: TuiDestroyService }, { token: TUI_OTHER_DATE_TEXT }], target: i0.ɵɵFactoryTarget.Component });
108
+ TuiCalendarRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiCalendarRangeComponent, deps: [{ token: TUI_CALENDAR_DATE_STREAM, optional: true }, { token: ChangeDetectorRef }, { token: TuiDestroyService, self: true }, { token: TUI_OTHER_DATE_TEXT }], target: i0.ɵɵFactoryTarget.Component });
109
109
  TuiCalendarRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiCalendarRangeComponent, selector: "tui-calendar-range", inputs: { defaultViewedMonth: "defaultViewedMonth", disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", items: "items", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", value: "value" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown.capture": "onEsc($event)" } }, providers: [TuiDestroyService], ngImport: i0, template: "<tui-primitive-calendar-range\n *ngIf=\"!items.length; else presets\"\n automation-id=\"tui-calendar-range__calendars\"\n tuiPreventDefault=\"mousedown\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [defaultViewedMonthFirst]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n></tui-primitive-calendar-range>\n<ng-template #presets>\n <div class=\"t-wrapper\">\n <tui-calendar\n automation-id=\"tui-calendar-range__calendar\"\n tuiPreventDefault=\"mousedown\"\n [value]=\"value\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [month]=\"computedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n (dayClick)=\"onDayClick($event)\"\n ></tui-calendar>\n <tui-data-list\n role=\"menu\"\n automation-id=\"tui-calendar-range__menu\"\n class=\"t-menu\"\n >\n <button\n *ngFor=\"let item of items | tuiMapper: mapper:min:max:minLength:(otherDateText$ | async)\"\n tuiOption\n tuiPreventDefault=\"mousedown\"\n role=\"menuitemradio\"\n automation-id=\"tui-calendar-range__menu__item\"\n [attr.aria-checked]=\"isItemActive(item)\"\n (keydown.enter.prevent)=\"onItemSelect(item)\"\n (keydown.space.prevent)=\"onItemSelect(item)\"\n (click)=\"onItemSelect(item)\"\n >\n {{ item }}\n <tui-svg\n *ngIf=\"isItemActive(item)\"\n automation-id=\"tui-calendar-range__checkmark\"\n src=\"tuiIconCheck\"\n class=\"t-checkmark\"\n ></tui-svg>\n </button>\n </tui-data-list>\n </div>\n</ng-template>\n", styles: [":host{display:block}.t-wrapper{display:flex}.t-menu{width:11rem;border-left:1px solid var(--tui-base-03)}.t-checkmark{margin-left:auto;width:1rem;height:1rem}\n"], components: [{ type: i1.TuiPrimitiveCalendarRangeComponent, selector: "tui-primitive-calendar-range", inputs: ["disabledItemHandler", "markerHandler", "defaultViewedMonthFirst", "defaultViewedMonthSecond", "min", "max", "value"], outputs: ["dayClick"] }, { type: i2.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "value", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }, { type: i2.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent", "size"] }, { type: i2.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]" }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "tuiMapper": i4.TuiMapperPipe, "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
110
110
  __decorate([
111
111
  tuiDefaultProp()
@@ -155,6 +155,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
155
155
  type: Inject,
156
156
  args: [ChangeDetectorRef]
157
157
  }] }, { type: i4.TuiDestroyService, decorators: [{
158
+ type: Self
159
+ }, {
158
160
  type: Inject,
159
161
  args: [TuiDestroyService]
160
162
  }] }, { type: i5.Observable, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-calendar-range.js","sources":["../../../projects/kit/components/calendar-range/calendar-range.component.ts","../../../projects/kit/components/calendar-range/calendar-range.template.html","../../../projects/kit/components/calendar-range/calendar-range.module.ts","../../../projects/kit/components/calendar-range/taiga-ui-kit-components-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n tuiDefaultProp,\n TuiDestroyService,\n tuiIsString,\n TuiMapper,\n TuiMonth,\n tuiNullableSame,\n tuiPure,\n tuiWatch,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DEFAULT_MARKER_HANDLER,\n TuiMarkerHandler,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiDayRangePeriod} from '@taiga-ui/kit/classes';\nimport {MAX_DAY_RANGE_LENGTH_MAPPER} from '@taiga-ui/kit/constants';\nimport {TUI_CALENDAR_DATE_STREAM, TUI_OTHER_DATE_TEXT} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n@Component({\n selector: `tui-calendar-range`,\n templateUrl: `./calendar-range.template.html`,\n styleUrls: [`./calendar-range.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiCalendarRangeComponent implements TuiWithOptionalMinMax<TuiDay> {\n @Input()\n @tuiDefaultProp()\n defaultViewedMonth: TuiMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiDayRangePeriod[] = [];\n\n @Input()\n @tuiDefaultProp()\n min: TuiDay = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiDay = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n minLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n maxLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly valueChange = new EventEmitter<TuiDayRange | null>();\n\n previousValue: TuiDayRange | null = null;\n\n readonly maxLengthMapper: TuiMapper<TuiDay, TuiDay> = MAX_DAY_RANGE_LENGTH_MAPPER;\n\n constructor(\n @Optional()\n @Inject(TUI_CALENDAR_DATE_STREAM)\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(TUI_OTHER_DATE_TEXT) readonly otherDateText$: Observable<string>,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges\n .pipe(tuiWatch(changeDetectorRef), takeUntil(destroy$))\n .subscribe(value => {\n this.value = value;\n });\n }\n\n @HostListener(`document:keydown.capture`, [`$event`])\n onEsc(event: KeyboardEvent): void {\n if (event.key !== `Escape` || !this.value?.isSingleDay) {\n return;\n }\n\n event.stopPropagation();\n this.value = this.previousValue;\n }\n\n readonly mapper: TuiMapper<\n readonly TuiDayRangePeriod[],\n ReadonlyArray<TuiDayRangePeriod | string>\n > = (\n items,\n min: TuiDay,\n max: TuiDay | null,\n minLength: TuiDayLike | null,\n otherDateText: string,\n ) => [\n ...items.filter(\n item =>\n (minLength === null ||\n item.range.from.append(minLength).daySameOrBefore(item.range.to)) &&\n item.range.to.daySameOrAfter(min) &&\n (max === null || item.range.from.daySameOrBefore(max)),\n ),\n otherDateText,\n ];\n\n get calculatedDisabledItemHandler(): TuiBooleanHandler<TuiDay> {\n return this.calculateDisabledItemHandler(\n this.disabledItemHandler,\n this.value,\n this.minLength,\n );\n }\n\n get computedMonth(): TuiMonth {\n return this.value ? this.value.to : this.defaultViewedMonth;\n }\n\n isItemActive(item: string | TuiDayRangePeriod): boolean {\n const {activePeriod} = this;\n\n return (tuiIsString(item) && activePeriod === null) || activePeriod === item;\n }\n\n onRangeChange(dayRange: TuiDayRange): void {\n this.updateValue(dayRange);\n }\n\n onDayClick(day: TuiDay): void {\n const {value} = this;\n\n this.previousValue = value;\n\n if (value === null || !value.isSingleDay) {\n this.value = new TuiDayRange(day, day);\n\n return;\n }\n\n this.updateValue(TuiDayRange.sort(value.from, day));\n }\n\n onItemSelect(item: string | TuiDayRangePeriod): void {\n if (typeof item !== `string`) {\n this.updateValue(item.range.dayLimit(this.min, this.max));\n\n return;\n }\n\n if (this.activePeriod !== null) {\n this.updateValue(null);\n }\n }\n\n updateValue(value: TuiDayRange | null): void {\n this.value = value;\n this.valueChange.emit(value);\n }\n\n private get activePeriod(): TuiDayRangePeriod | null {\n return (\n this.items.find(item =>\n tuiNullableSame<TuiDayRange>(\n this.value,\n item.range,\n (a, b) =>\n a.from.daySame(b.from.dayLimit(this.min, this.max)) &&\n a.to.daySame(b.to.dayLimit(this.min, this.max)),\n ),\n ) || null\n );\n }\n\n @tuiPure\n private calculateDisabledItemHandler(\n disabledItemHandler: TuiBooleanHandler<TuiDay>,\n value: TuiDayRange | null,\n minLength: TuiDayLike | null,\n ): TuiBooleanHandler<TuiDay> {\n return item => {\n if (!value?.isSingleDay || !minLength) {\n return disabledItemHandler(item);\n }\n\n const negativeMinLength = Object.fromEntries(\n Object.entries(minLength).map(([key, value]) => [key, -value]),\n );\n const disabledBefore = value.from.append(negativeMinLength).append({day: 1});\n const disabledAfter = value.from.append(minLength).append({day: -1});\n const inDisabledRange =\n disabledBefore.dayBefore(item) && disabledAfter.dayAfter(item);\n\n return inDisabledRange || disabledItemHandler(item);\n };\n }\n}\n","<tui-primitive-calendar-range\n *ngIf=\"!items.length; else presets\"\n automation-id=\"tui-calendar-range__calendars\"\n tuiPreventDefault=\"mousedown\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [defaultViewedMonthFirst]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n></tui-primitive-calendar-range>\n<ng-template #presets>\n <div class=\"t-wrapper\">\n <tui-calendar\n automation-id=\"tui-calendar-range__calendar\"\n tuiPreventDefault=\"mousedown\"\n [value]=\"value\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [month]=\"computedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n (dayClick)=\"onDayClick($event)\"\n ></tui-calendar>\n <tui-data-list\n role=\"menu\"\n automation-id=\"tui-calendar-range__menu\"\n class=\"t-menu\"\n >\n <button\n *ngFor=\"let item of items | tuiMapper: mapper:min:max:minLength:(otherDateText$ | async)\"\n tuiOption\n tuiPreventDefault=\"mousedown\"\n role=\"menuitemradio\"\n automation-id=\"tui-calendar-range__menu__item\"\n [attr.aria-checked]=\"isItemActive(item)\"\n (keydown.enter.prevent)=\"onItemSelect(item)\"\n (keydown.space.prevent)=\"onItemSelect(item)\"\n (click)=\"onItemSelect(item)\"\n >\n {{ item }}\n <tui-svg\n *ngIf=\"isItemActive(item)\"\n automation-id=\"tui-calendar-range__checkmark\"\n src=\"tuiIconCheck\"\n class=\"t-checkmark\"\n ></tui-svg>\n </button>\n </tui-data-list>\n </div>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiDataListModule, TuiSvgModule} from '@taiga-ui/core';\nimport {TuiPrimitiveCalendarRangeModule} from '@taiga-ui/kit/internal/primitive-calendar-range';\n\nimport {TuiCalendarRangeComponent} from './calendar-range.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n TuiCalendarModule,\n TuiCalendarModule,\n TuiSvgModule,\n TuiDataListModule,\n TuiPrimitiveCalendarRangeModule,\n ],\n declarations: [TuiCalendarRangeComponent],\n exports: [TuiCalendarRangeComponent],\n})\nexport class TuiCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-calendar-range.js","sources":["../../../projects/kit/components/calendar-range/calendar-range.component.ts","../../../projects/kit/components/calendar-range/calendar-range.template.html","../../../projects/kit/components/calendar-range/calendar-range.module.ts","../../../projects/kit/components/calendar-range/taiga-ui-kit-components-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n tuiDefaultProp,\n TuiDestroyService,\n tuiIsString,\n TuiMapper,\n TuiMonth,\n tuiNullableSame,\n tuiPure,\n tuiWatch,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DEFAULT_MARKER_HANDLER,\n TuiMarkerHandler,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiDayRangePeriod} from '@taiga-ui/kit/classes';\nimport {MAX_DAY_RANGE_LENGTH_MAPPER} from '@taiga-ui/kit/constants';\nimport {TUI_CALENDAR_DATE_STREAM, TUI_OTHER_DATE_TEXT} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n@Component({\n selector: `tui-calendar-range`,\n templateUrl: `./calendar-range.template.html`,\n styleUrls: [`./calendar-range.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiCalendarRangeComponent implements TuiWithOptionalMinMax<TuiDay> {\n @Input()\n @tuiDefaultProp()\n defaultViewedMonth: TuiMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiDayRangePeriod[] = [];\n\n @Input()\n @tuiDefaultProp()\n min: TuiDay = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiDay = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n minLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n maxLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly valueChange = new EventEmitter<TuiDayRange | null>();\n\n previousValue: TuiDayRange | null = null;\n\n readonly maxLengthMapper: TuiMapper<TuiDay, TuiDay> = MAX_DAY_RANGE_LENGTH_MAPPER;\n\n constructor(\n @Optional()\n @Inject(TUI_CALENDAR_DATE_STREAM)\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(TUI_OTHER_DATE_TEXT) readonly otherDateText$: Observable<string>,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges\n .pipe(tuiWatch(changeDetectorRef), takeUntil(destroy$))\n .subscribe(value => {\n this.value = value;\n });\n }\n\n @HostListener(`document:keydown.capture`, [`$event`])\n onEsc(event: KeyboardEvent): void {\n if (event.key !== `Escape` || !this.value?.isSingleDay) {\n return;\n }\n\n event.stopPropagation();\n this.value = this.previousValue;\n }\n\n readonly mapper: TuiMapper<\n readonly TuiDayRangePeriod[],\n ReadonlyArray<TuiDayRangePeriod | string>\n > = (\n items,\n min: TuiDay,\n max: TuiDay | null,\n minLength: TuiDayLike | null,\n otherDateText: string,\n ) => [\n ...items.filter(\n item =>\n (minLength === null ||\n item.range.from.append(minLength).daySameOrBefore(item.range.to)) &&\n item.range.to.daySameOrAfter(min) &&\n (max === null || item.range.from.daySameOrBefore(max)),\n ),\n otherDateText,\n ];\n\n get calculatedDisabledItemHandler(): TuiBooleanHandler<TuiDay> {\n return this.calculateDisabledItemHandler(\n this.disabledItemHandler,\n this.value,\n this.minLength,\n );\n }\n\n get computedMonth(): TuiMonth {\n return this.value ? this.value.to : this.defaultViewedMonth;\n }\n\n isItemActive(item: TuiDayRangePeriod | string): boolean {\n const {activePeriod} = this;\n\n return (tuiIsString(item) && activePeriod === null) || activePeriod === item;\n }\n\n onRangeChange(dayRange: TuiDayRange): void {\n this.updateValue(dayRange);\n }\n\n onDayClick(day: TuiDay): void {\n const {value} = this;\n\n this.previousValue = value;\n\n if (value === null || !value.isSingleDay) {\n this.value = new TuiDayRange(day, day);\n\n return;\n }\n\n this.updateValue(TuiDayRange.sort(value.from, day));\n }\n\n onItemSelect(item: TuiDayRangePeriod | string): void {\n if (typeof item !== `string`) {\n this.updateValue(item.range.dayLimit(this.min, this.max));\n\n return;\n }\n\n if (this.activePeriod !== null) {\n this.updateValue(null);\n }\n }\n\n updateValue(value: TuiDayRange | null): void {\n this.value = value;\n this.valueChange.emit(value);\n }\n\n private get activePeriod(): TuiDayRangePeriod | null {\n return (\n this.items.find(item =>\n tuiNullableSame<TuiDayRange>(\n this.value,\n item.range,\n (a, b) =>\n a.from.daySame(b.from.dayLimit(this.min, this.max)) &&\n a.to.daySame(b.to.dayLimit(this.min, this.max)),\n ),\n ) || null\n );\n }\n\n @tuiPure\n private calculateDisabledItemHandler(\n disabledItemHandler: TuiBooleanHandler<TuiDay>,\n value: TuiDayRange | null,\n minLength: TuiDayLike | null,\n ): TuiBooleanHandler<TuiDay> {\n return item => {\n if (!value?.isSingleDay || !minLength) {\n return disabledItemHandler(item);\n }\n\n const negativeMinLength = Object.fromEntries(\n Object.entries(minLength).map(([key, value]) => [key, -value]),\n );\n const disabledBefore = value.from.append(negativeMinLength).append({day: 1});\n const disabledAfter = value.from.append(minLength).append({day: -1});\n const inDisabledRange =\n disabledBefore.dayBefore(item) && disabledAfter.dayAfter(item);\n\n return inDisabledRange || disabledItemHandler(item);\n };\n }\n}\n","<tui-primitive-calendar-range\n *ngIf=\"!items.length; else presets\"\n automation-id=\"tui-calendar-range__calendars\"\n tuiPreventDefault=\"mousedown\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [defaultViewedMonthFirst]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n></tui-primitive-calendar-range>\n<ng-template #presets>\n <div class=\"t-wrapper\">\n <tui-calendar\n automation-id=\"tui-calendar-range__calendar\"\n tuiPreventDefault=\"mousedown\"\n [value]=\"value\"\n [markerHandler]=\"markerHandler\"\n [min]=\"min | tuiMapper: maxLengthMapper:value:maxLength:true\"\n [max]=\"max | tuiMapper: maxLengthMapper:value:maxLength:false\"\n [month]=\"computedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n (dayClick)=\"onDayClick($event)\"\n ></tui-calendar>\n <tui-data-list\n role=\"menu\"\n automation-id=\"tui-calendar-range__menu\"\n class=\"t-menu\"\n >\n <button\n *ngFor=\"let item of items | tuiMapper: mapper:min:max:minLength:(otherDateText$ | async)\"\n tuiOption\n tuiPreventDefault=\"mousedown\"\n role=\"menuitemradio\"\n automation-id=\"tui-calendar-range__menu__item\"\n [attr.aria-checked]=\"isItemActive(item)\"\n (keydown.enter.prevent)=\"onItemSelect(item)\"\n (keydown.space.prevent)=\"onItemSelect(item)\"\n (click)=\"onItemSelect(item)\"\n >\n {{ item }}\n <tui-svg\n *ngIf=\"isItemActive(item)\"\n automation-id=\"tui-calendar-range__checkmark\"\n src=\"tuiIconCheck\"\n class=\"t-checkmark\"\n ></tui-svg>\n </button>\n </tui-data-list>\n </div>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiDataListModule, TuiSvgModule} from '@taiga-ui/core';\nimport {TuiPrimitiveCalendarRangeModule} from '@taiga-ui/kit/internal/primitive-calendar-range';\n\nimport {TuiCalendarRangeComponent} from './calendar-range.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n TuiCalendarModule,\n TuiCalendarModule,\n TuiSvgModule,\n TuiDataListModule,\n TuiPrimitiveCalendarRangeModule,\n ],\n declarations: [TuiCalendarRangeComponent],\n exports: [TuiCalendarRangeComponent],\n})\nexport class TuiCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-checkbox-block.js","sources":["../../../projects/kit/components/checkbox-block/checkbox-block.component.ts","../../../projects/kit/components/checkbox-block/checkbox-block.template.html","../../../projects/kit/components/checkbox-block/checkbox-block.module.ts","../../../projects/kit/components/checkbox-block/taiga-ui-kit-components-checkbox-block.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiHorizontalDirection,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCheckboxComponent} from '@taiga-ui/kit/components/checkbox';\n\n@Component({\n selector: `tui-checkbox-block`,\n templateUrl: `./checkbox-block.template.html`,\n styleUrls: [`./checkbox-block.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiCheckboxBlockComponent),\n tuiAsControl(TuiCheckboxBlockComponent),\n ],\n})\nexport class TuiCheckboxBlockComponent\n extends AbstractTuiNullableControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiCheckboxComponent)\n private readonly checkbox?: TuiCheckboxComponent;\n\n @Input()\n @HostBinding(`attr.data-tui-host-align`)\n @tuiDefaultProp()\n contentAlign: TuiHorizontalDirection = `right`;\n\n @Input()\n @HostBinding(`class._hidden_checkbox`)\n @tuiDefaultProp()\n hideCheckbox = false;\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL = `l`;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.checkbox ? this.checkbox.nativeFocusableElement : null;\n }\n\n @HostBinding(`class._active`)\n get checked(): boolean {\n return this.value !== false && this.hideCheckbox;\n }\n\n get checkboxSize(): TuiSizeL {\n return this.size === `l` ? `l` : `m`;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n if (!this.modeDirective?.mode) {\n return this.checked\n ? TuiAppearance.WhiteblockActive\n : TuiAppearance.Whiteblock;\n }\n\n return this.checked ? TuiAppearance.Primary : TuiAppearance.Secondary;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onFocusVisible(focusVisible: boolean): void {\n this.updateFocusVisible(focusVisible);\n }\n\n onModelChange(value: boolean): void {\n this.updateValue(value);\n }\n}\n","<label class=\"t-wrapper\">\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n >\n <div class=\"t-content-wrapper\">\n <div class=\"t-content\">\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</label>\n","import {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiHoveredModule, TuiPressedModule} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\nimport {TuiCheckboxModule} from '@taiga-ui/kit/components/checkbox';\n\nimport {TuiCheckboxBlockComponent} from './checkbox-block.component';\n\n@NgModule({\n imports: [\n FormsModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiCheckboxModule,\n TuiWrapperModule,\n ],\n declarations: [TuiCheckboxBlockComponent],\n exports: [TuiCheckboxBlockComponent],\n})\nexport class TuiCheckboxBlockModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-checkbox-block.js","sources":["../../../projects/kit/components/checkbox-block/checkbox-block.component.ts","../../../projects/kit/components/checkbox-block/checkbox-block.template.html","../../../projects/kit/components/checkbox-block/checkbox-block.module.ts","../../../projects/kit/components/checkbox-block/taiga-ui-kit-components-checkbox-block.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiHorizontalDirection,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCheckboxComponent} from '@taiga-ui/kit/components/checkbox';\n\n@Component({\n selector: `tui-checkbox-block`,\n templateUrl: `./checkbox-block.template.html`,\n styleUrls: [`./checkbox-block.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiCheckboxBlockComponent),\n tuiAsControl(TuiCheckboxBlockComponent),\n ],\n})\nexport class TuiCheckboxBlockComponent\n extends AbstractTuiNullableControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiCheckboxComponent)\n private readonly checkbox?: TuiCheckboxComponent;\n\n @Input()\n @HostBinding(`attr.data-tui-host-align`)\n @tuiDefaultProp()\n contentAlign: TuiHorizontalDirection = `right`;\n\n @Input()\n @HostBinding(`class._hidden_checkbox`)\n @tuiDefaultProp()\n hideCheckbox = false;\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeS = `l`;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.checkbox ? this.checkbox.nativeFocusableElement : null;\n }\n\n @HostBinding(`class._active`)\n get checked(): boolean {\n return this.value !== false && this.hideCheckbox;\n }\n\n get checkboxSize(): TuiSizeL {\n return this.size === `l` ? `l` : `m`;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n if (!this.modeDirective?.mode) {\n return this.checked\n ? TuiAppearance.WhiteblockActive\n : TuiAppearance.Whiteblock;\n }\n\n return this.checked ? TuiAppearance.Primary : TuiAppearance.Secondary;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onFocusVisible(focusVisible: boolean): void {\n this.updateFocusVisible(focusVisible);\n }\n\n onModelChange(value: boolean): void {\n this.updateValue(value);\n }\n}\n","<label class=\"t-wrapper\">\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n >\n <div class=\"t-content-wrapper\">\n <div class=\"t-content\">\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</label>\n","import {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiHoveredModule, TuiPressedModule} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\nimport {TuiCheckboxModule} from '@taiga-ui/kit/components/checkbox';\n\nimport {TuiCheckboxBlockComponent} from './checkbox-block.component';\n\n@NgModule({\n imports: [\n FormsModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiCheckboxModule,\n TuiWrapperModule,\n ],\n declarations: [TuiCheckboxBlockComponent],\n exports: [TuiCheckboxBlockComponent],\n})\nexport class TuiCheckboxBlockModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-combo-box.js","sources":["../../../projects/kit/components/combo-box/combo-box.component.ts","../../../projects/kit/components/combo-box/combo-box.template.html","../../../projects/kit/components/combo-box/combo-box.directive.ts","../../../projects/kit/components/combo-box/combo-box-strict.directive.ts","../../../projects/kit/components/combo-box/combo-box.module.ts","../../../projects/kit/components/combo-box/taiga-ui-kit-components-combo-box.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n TUI_STRICT_MATCHER,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n tuiIsPresent,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_MODE, TuiArrowMode} from '@taiga-ui/kit/components/arrow';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: `tui-combo-box`,\n templateUrl: `./combo-box.template.html`,\n styleUrls: [`./combo-box.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiComboBoxComponent),\n tuiAsDataListHost(TuiComboBoxComponent),\n tuiAsControl(TuiComboBoxComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiComboBoxComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n stringify: TuiItemsHandlers<T>['stringify'] = this.itemsHandlers.stringify;\n\n @Input()\n @tuiDefaultProp()\n strictMatcher: TuiStringMatcher<T> = TUI_STRICT_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiItemsHandlers<T>['identityMatcher'] =\n this.itemsHandlers.identityMatcher;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiValueContentContext<T>> = ``;\n\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = null;\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n > = ``;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_ARROW_MODE)\n private readonly arrowMode: TuiArrowMode,\n @Inject(TUI_ITEMS_HANDLERS)\n private readonly itemsHandlers: TuiItemsHandlers<T>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get arrow(): PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeS | TuiSizeM | TuiSizeL>\n > {\n return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get nativeValue(): string {\n return this.value === null ? this.search || `` : this.stringify(this.value);\n }\n\n get showValueTemplate(): boolean {\n return tuiIsPresent(this.value) && !this.focused;\n }\n\n get computedContent(): PolymorpheusContent<TuiValueContentContext<T>> {\n return this.valueContent || this.nativeValue;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n checkOption(option: T): void {\n if (!this.isStrictMatch(option)) {\n return;\n }\n\n this.updateValue(option);\n this.updateSearch(null);\n }\n\n handleOption(item: T): void {\n this.setNativeValue(this.stringify(item));\n this.focusInput();\n this.close();\n this.updateSearch(null);\n this.updateValue(item);\n }\n\n onFieldKeyDownEnter(event: Event): void {\n if (this.open) {\n event.preventDefault();\n }\n\n const options = this.accessor?.getOptions() || [];\n\n if (options.length !== 1) {\n return;\n }\n\n this.updateValue(options[0]);\n this.updateSearch(null);\n this.close();\n }\n\n onValueChange(value: string): void {\n this.updateSearch(value);\n\n const match = this.accessor?.getOptions().find(item => this.isStrictMatch(item));\n\n if (match !== undefined) {\n this.updateValue(match);\n this.updateSearch(null);\n\n return;\n }\n\n if (this.strict || this.search === ``) {\n this.updateValue(null);\n }\n\n this.hostedDropdown?.updateOpen(true);\n }\n\n override updateValue(value: T | null): void {\n super.updateValue(value);\n }\n\n toggle(): void {\n this.hostedDropdown?.updateOpen(!this.open);\n }\n\n private isStrictMatch(item: T): boolean {\n return this.strictMatcher(item, this.search || ``, this.stringify);\n }\n\n private close(): void {\n this.hostedDropdown?.updateOpen(false);\n }\n\n private updateSearch(search: string | null): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-combo-box__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n (click)=\"toggle()\"\n (keydown.enter)=\"onFieldKeyDownEnter($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <div\n *ngIf=\"showValueTemplate\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-combo-box__template\"\n class=\"t-value\"\n >\n <ng-container\n *polymorpheusOutlet=\"computedContent as text; context: {$implicit: value!, active: computedFocused}\"\n >\n {{ text }}\n </ng-container>\n </div>\n </tui-primitive-textfield>\n\n <ng-template #icon>\n <div class=\"t-icon\">\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: `tui-combo-box`,\n providers: [tuiAsTextfieldHost(TuiComboBoxDirective)],\n})\nexport class TuiComboBoxDirective extends AbstractTuiTextfieldHost<\n TuiComboBoxComponent<unknown>\n> {\n override get value(): string {\n return this.host.nativeValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {Directive, HostListener, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: `tui-combo-box[strict]`,\n})\nexport class TuiComboBoxStrictDirective<T> {\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n constructor(\n @Inject(TuiComboBoxComponent)\n private readonly comboBox: TuiComboBoxComponent<T | string>,\n ) {}\n\n @HostListener(`input`)\n onInput(): void {\n if (!this.strict && this.comboBox.search) {\n this.comboBox.updateValue(this.comboBox.search);\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\nimport {TuiComboBoxDirective} from './combo-box.directive';\nimport {TuiComboBoxStrictDirective} from './combo-box-strict.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiSelectOptionModule,\n TuiArrowModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n ],\n exports: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n TuiTextfieldComponent,\n ],\n})\nexport class TuiComboBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AA6DM,MAAO,oBACT,SAAQ,0BAA6B,CAAA;AA+CrC,IAAA,WAAA,CAII,OAAyB,EACE,iBAAoC,EAE9C,SAAuB,EAEvB,aAAkC,EAAA;AAEnD,QAAA,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAJjB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAc;QAEvB,IAAa,CAAA,aAAA,GAAb,aAAa,CAAqB;AA1CvD,QAAA,IAAA,CAAA,SAAS,GAAqC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QAI3E,IAAa,CAAA,aAAA,GAAwB,kBAAkB,CAAC;AAIxD,QAAA,IAAA,CAAA,eAAe,GACX,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;QAIvC,IAAY,CAAA,YAAA,GAAmD,EAAE,CAAC;QAIlE,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC;QAId,IAAM,CAAA,MAAA,GAAkB,IAAI,CAAC;AAGpB,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAiB,CAAC;QAGjD,IAAQ,CAAA,QAAA,GAEb,EAAE,CAAC;QAEP,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC;KAcZ;AAED,IAAA,IAAI,KAAK,GAAA;QAGL,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;KACnF;AAED,IAAA,IAAI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC;KACxE;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,QACI,kBAAkB,CAAC,IAAI,CAAC,sBAAsB,CAAC;AAC/C,aAAC,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EACxD;KACL;AAED,IAAA,IAAI,WAAW,GAAA;QACX,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC/E;AAED,IAAA,IAAI,iBAAiB,GAAA;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;KACpD;AAED,IAAA,IAAI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW,CAAC;KAChD;AAED,IAAA,YAAY,CAAC,MAAe,EAAA;AACxB,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KAC9B;AAED,IAAA,WAAW,CAAC,MAAS,EAAA;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;YAC7B,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;KAC3B;AAED,IAAA,YAAY,CAAC,IAAO,EAAA;QAChB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,EAAE,CAAC;AACb,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACxB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KAC1B;AAED,IAAA,mBAAmB,CAAC,KAAY,EAAA;;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE;YACX,KAAK,CAAC,cAAc,EAAE,CAAC;AAC1B,SAAA;AAED,QAAA,MAAM,OAAO,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,EAAE,KAAI,EAAE,CAAC;AAElD,QAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO;AACV,SAAA;QAED,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,EAAE,CAAC;KAChB;AAED,IAAA,aAAa,CAAC,KAAa,EAAA;;AACvB,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAEzB,MAAM,KAAK,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,EAAA,CAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAEjF,IAAI,KAAK,KAAK,SAAS,EAAE;AACrB,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACxB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAExB,OAAO;AACV,SAAA;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAA,CAAE,EAAE;AACnC,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAC1B,SAAA;QAED,CAAA,EAAA,GAAA,IAAI,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,CAAC,IAAI,CAAC,CAAC;KACzC;AAEQ,IAAA,WAAW,CAAC,KAAe,EAAA;AAChC,QAAA,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC5B;IAED,MAAM,GAAA;;QACF,CAAA,EAAA,GAAA,IAAI,CAAC,cAAc,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/C;AAEO,IAAA,aAAa,CAAC,IAAO,EAAA;AACzB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;KACtE;IAEO,KAAK,GAAA;;QACT,CAAA,EAAA,GAAA,IAAI,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1C;AAEO,IAAA,YAAY,CAAC,MAAqB,EAAA;AACtC,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE;YACxB,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACrB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAClC;AAEO,IAAA,cAAc,CAAC,KAAa,EAAA;QAChC,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC7B,YAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7C,SAAA;KACJ;IAEO,UAAU,CAAC,gBAAyB,KAAK,EAAA;QAC7C,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAC,aAAa,EAAC,CAAC,CAAC;AACtD,SAAA;KACJ;;AAtLQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAmDjB,SAAS,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAET,iBAAiB,EACjB,EAAA,EAAA,KAAA,EAAA,cAAc,aAEd,kBAAkB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAxDrB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EARlB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAAA;QACP,0BAA0B,CAAC,oBAAoB,CAAC;QAChD,iBAAiB,CAAC,oBAAoB,CAAC;QACvC,YAAY,CAAC,oBAAoB,CAAC;QAClC,kBAAkB,CAAC,iBAAiB,CAAC;AACxC,KAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAOa,sBAA6B,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAqC7B,oBAAoB,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAS,WAAW,EAlC3C,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,0BAA0B,EAG1B,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,8BAA8B,ECvE7C,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6jDAgDA,EDWmB,MAAA,EAAA,CAAA,8PAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,EAAA,QAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,qHAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAC,kCAAkC,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;AAiBnD,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC0D,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI3E,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACuC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIxD,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAEsB,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIvC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACiD,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIlE,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACH,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAId,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACY,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FApCpB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAbhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAe,aAAA,CAAA;AACzB,oBAAA,WAAW,EAAE,CAA2B,yBAAA,CAAA;oBACxC,SAAS,EAAE,CAAC,CAAA,sBAAA,CAAwB,CAAC;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACP,wBAAA,0BAA0B,CAAsB,oBAAA,CAAA;AAChD,wBAAA,iBAAiB,CAAsB,oBAAA,CAAA;AACvC,wBAAA,YAAY,CAAsB,oBAAA,CAAA;wBAClC,kBAAkB,CAAC,iBAAiB,CAAC;AACxC,qBAAA;oBACD,aAAa,EAAE,CAAC,kCAAkC,CAAC;AACtD,iBAAA,CAAA;;0BAkDQ,QAAQ;;0BACR,IAAI;;0BACJ,MAAM;2BAAC,SAAS,CAAA;;0BAEhB,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,MAAM;2BAAC,cAAc,CAAA;;0BAErB,MAAM;2BAAC,kBAAkB,CAAA;4CAnDb,QAAQ,EAAA,CAAA;sBADxB,YAAY;uBAAC,sBAA6B,CAAA;gBAI1B,cAAc,EAAA,CAAA;sBAD9B,SAAS;uBAAC,0BAA0B,CAAA;gBAIpB,SAAS,EAAA,CAAA;sBADzB,SAAS;uBAAC,8BAA8B,CAAA;gBAKzC,SAAS,EAAA,CAAA;sBAFR,KAAK;gBAMN,aAAa,EAAA,CAAA;sBAFZ,KAAK;gBAMN,eAAe,EAAA,CAAA;sBAFd,KAAK;gBAON,YAAY,EAAA,CAAA;sBAFX,KAAK;gBAMN,MAAM,EAAA,CAAA;sBAFL,KAAK;gBAMN,MAAM,EAAA,CAAA;sBAFL,KAAK;gBAKG,YAAY,EAAA,CAAA;sBADpB,MAAM;gBAIE,QAAQ,EAAA,CAAA;sBADhB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAC,IAAI,EAAE,WAAW,EAAC,CAAA;;;AE7FrD,MAAO,oBAAqB,SAAQ,wBAEzC,CAAA;AACG,IAAA,IAAa,KAAK,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;KAChC;AAED,IAAA,aAAa,CAAC,KAAa,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KAClC;;kHATQ,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,wCAFlB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAE5C,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAe,aAAA,CAAA;AACzB,oBAAA,SAAS,EAAE,CAAC,kBAAkB,CAAA,oBAAA,CAAsB,CAAC;AACxD,iBAAA,CAAA;;;MCAY,0BAA0B,CAAA;AAKnC,IAAA,WAAA,CAEqB,QAA0C,EAAA;QAA1C,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAkC;QAJ/D,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC;KAKV;IAGJ,OAAO,GAAA;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACnD,SAAA;KACJ;;AAfQ,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,kBAMvB,oBAAoB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4GANvB,0BAA0B,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAGnC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACH,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAHL,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAuB,qBAAA,CAAA;AACpC,iBAAA,CAAA;;0BAOQ,MAAM;2BAAC,oBAAoB,CAAA;4CAHhC,MAAM,EAAA,CAAA;sBAFL,KAAK;gBAUN,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,CAAO,KAAA,CAAA,CAAA;;;MCsBZ,iBAAiB,CAAA;;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAXtB,oBAAoB;QACpB,0BAA0B;AAC1B,QAAA,oBAAoB,aAZpB,YAAY;QACZ,kBAAkB;QAClB,mBAAmB;QACnB,2BAA2B;QAC3B,uBAAuB;QACvB,qBAAqB;QACrB,cAAc;AACd,QAAA,4BAA4B,aAQ5B,oBAAoB;QACpB,0BAA0B;QAC1B,oBAAoB;QACpB,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAGhB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAtBjB,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,kBAAkB;YAClB,mBAAmB;YACnB,2BAA2B;YAC3B,uBAAuB;YACvB,qBAAqB;YACrB,cAAc;YACd,4BAA4B;AAC/B,SAAA,CAAA,EAAA,CAAA,CAAA;4FAaQ,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAvB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,kBAAkB;wBAClB,mBAAmB;wBACnB,2BAA2B;wBAC3B,uBAAuB;wBACvB,qBAAqB;wBACrB,cAAc;wBACd,4BAA4B;AAC/B,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,oBAAoB;wBACpB,0BAA0B;wBAC1B,oBAAoB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,oBAAoB;wBACpB,0BAA0B;wBAC1B,oBAAoB;wBACpB,qBAAqB;AACxB,qBAAA;AACJ,iBAAA,CAAA;;;ACvCD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-combo-box.js","sources":["../../../projects/kit/components/combo-box/combo-box.component.ts","../../../projects/kit/components/combo-box/combo-box.template.html","../../../projects/kit/components/combo-box/combo-box.directive.ts","../../../projects/kit/components/combo-box/combo-box-strict.directive.ts","../../../projects/kit/components/combo-box/combo-box.module.ts","../../../projects/kit/components/combo-box/taiga-ui-kit-components-combo-box.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n TUI_STRICT_MATCHER,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n tuiIsPresent,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_MODE, TuiArrowMode} from '@taiga-ui/kit/components/arrow';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: `tui-combo-box`,\n templateUrl: `./combo-box.template.html`,\n styleUrls: [`./combo-box.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiComboBoxComponent),\n tuiAsDataListHost(TuiComboBoxComponent),\n tuiAsControl(TuiComboBoxComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiComboBoxComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n stringify: TuiItemsHandlers<T>['stringify'] = this.itemsHandlers.stringify;\n\n @Input()\n @tuiDefaultProp()\n strictMatcher: TuiStringMatcher<T> = TUI_STRICT_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiItemsHandlers<T>['identityMatcher'] =\n this.itemsHandlers.identityMatcher;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiValueContentContext<T>> = ``;\n\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = null;\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n > = ``;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_ARROW_MODE)\n private readonly arrowMode: TuiArrowMode,\n @Inject(TUI_ITEMS_HANDLERS)\n private readonly itemsHandlers: TuiItemsHandlers<T>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get arrow(): PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeL | TuiSizeM | TuiSizeS>\n > {\n return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get nativeValue(): string {\n return this.value === null ? this.search || `` : this.stringify(this.value);\n }\n\n get showValueTemplate(): boolean {\n return tuiIsPresent(this.value) && !this.focused;\n }\n\n get computedContent(): PolymorpheusContent<TuiValueContentContext<T>> {\n return this.valueContent || this.nativeValue;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n checkOption(option: T): void {\n if (!this.isStrictMatch(option)) {\n return;\n }\n\n this.updateValue(option);\n this.updateSearch(null);\n }\n\n handleOption(item: T): void {\n this.setNativeValue(this.stringify(item));\n this.focusInput();\n this.close();\n this.updateSearch(null);\n this.updateValue(item);\n }\n\n onFieldKeyDownEnter(event: Event): void {\n if (this.open) {\n event.preventDefault();\n }\n\n const options = this.accessor?.getOptions() || [];\n\n if (options.length !== 1) {\n return;\n }\n\n this.updateValue(options[0]);\n this.updateSearch(null);\n this.close();\n }\n\n onValueChange(value: string): void {\n this.updateSearch(value);\n\n const match = this.accessor?.getOptions().find(item => this.isStrictMatch(item));\n\n if (match !== undefined) {\n this.updateValue(match);\n this.updateSearch(null);\n\n return;\n }\n\n if (this.strict || this.search === ``) {\n this.updateValue(null);\n }\n\n this.hostedDropdown?.updateOpen(true);\n }\n\n override updateValue(value: T | null): void {\n super.updateValue(value);\n }\n\n toggle(): void {\n this.hostedDropdown?.updateOpen(!this.open);\n }\n\n private isStrictMatch(item: T): boolean {\n return this.strictMatcher(item, this.search || ``, this.stringify);\n }\n\n private close(): void {\n this.hostedDropdown?.updateOpen(false);\n }\n\n private updateSearch(search: string | null): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-combo-box__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n (click)=\"toggle()\"\n (keydown.enter)=\"onFieldKeyDownEnter($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <div\n *ngIf=\"showValueTemplate\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-combo-box__template\"\n class=\"t-value\"\n >\n <ng-container\n *polymorpheusOutlet=\"computedContent as text; context: {$implicit: value!, active: computedFocused}\"\n >\n {{ text }}\n </ng-container>\n </div>\n </tui-primitive-textfield>\n\n <ng-template #icon>\n <div class=\"t-icon\">\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: `tui-combo-box`,\n providers: [tuiAsTextfieldHost(TuiComboBoxDirective)],\n})\nexport class TuiComboBoxDirective extends AbstractTuiTextfieldHost<\n TuiComboBoxComponent<unknown>\n> {\n override get value(): string {\n return this.host.nativeValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {Directive, HostListener, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: `tui-combo-box[strict]`,\n})\nexport class TuiComboBoxStrictDirective<T> {\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n constructor(\n @Inject(TuiComboBoxComponent)\n private readonly comboBox: TuiComboBoxComponent<T | string>,\n ) {}\n\n @HostListener(`input`)\n onInput(): void {\n if (!this.strict && this.comboBox.search) {\n this.comboBox.updateValue(this.comboBox.search);\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\nimport {TuiComboBoxDirective} from './combo-box.directive';\nimport {TuiComboBoxStrictDirective} from './combo-box-strict.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiSelectOptionModule,\n TuiArrowModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n ],\n exports: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n TuiTextfieldComponent,\n ],\n})\nexport class TuiComboBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = this.defaultSize;\n\n protected constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeXS | TuiSizeL,\n ) {}\n\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: `tui-data-list-wrapper[labels]`,\n templateUrl: `./data-list-group-wrapper.template.html`,\n styleUrls: [`./data-list-wrapper.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || `m`);\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: `tui-data-list-wrapper:not([labels])`,\n templateUrl: `./data-list-wrapper.template.html`,\n styleUrls: [`./data-list-wrapper.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || `m`);\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = this.defaultSize;\n\n protected constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeL | TuiSizeXS,\n ) {}\n\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: `tui-data-list-wrapper[labels]`,\n templateUrl: `./data-list-group-wrapper.template.html`,\n styleUrls: [`./data-list-wrapper.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || `m`);\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: `tui-data-list-wrapper:not([labels])`,\n templateUrl: `./data-list-wrapper.template.html`,\n styleUrls: [`./data-list-wrapper.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || `m`);\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;MAwBsB,0BAA0B,CAAA;IAiB5C,WACuB,CAAA,aAAkC,EAClC,WAAiC,EAAA;QADjC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAqB;QAClC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;QAjBrC,IAAY,CAAA,YAAA,GAAqC,WAAW,CAAC;AAIhF,QAAA,IAAA,CAAA,mBAAmB,GACf,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC;QAI3C,IAAY,CAAA,YAAA,GAAwB,EAAE,CAAC;AAIvC,QAAA,IAAA,CAAA,IAAI,GAAyB,IAAI,CAAC,WAAW,CAAC;AAS9C,QAAA,IAAA,CAAA,WAAW,GAAmD,CAAC,EAAC,SAAS,EAAC,KACtE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KALxC;AAOJ,IAAA,UAAU,CACN,SAAY,EACZ,EAAC,aAAa,EAA0B,EAAA;QAExC,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,kBAAkB,CAAC,aAAa,CAAC,EAAC,CAAC;KACjE;IAED,UAAU,CAAC,kBAA2B,KAAK,EAAA;QACvC,OAAO,IAAI,CAAC,YAAY;AACnB,aAAA,MAAM,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAK,eAAe,IAAI,CAAC,QAAQ,CAAC;aACpD,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,KAAK,KAAK,CAAC;aACvB,MAAM,CAAC,YAAY,CAAC,CAAC;KAC7B;;wHAvCiB,0BAA0B,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,8NACb,kBAAkB,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAKjD,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAE0B,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,qBAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI3C,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACsB,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIvC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC6B,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAS9C,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAE2B,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAzB1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAD/C,SAAS;kHAGa,YAAY,EAAA,CAAA;sBAD9B,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,kBAAkB,CAAC,CAAA;gBAKlD,mBAAmB,EAAA,CAAA;sBAFlB,KAAK;gBAON,YAAY,EAAA,CAAA;sBAFX,KAAK;gBAMN,IAAI,EAAA,CAAA;sBAFH,KAAK;gBAWN,WAAW,EAAA,CAAA;sBAFV,KAAK;;;AChCJ,MAAO,gCAAoC,SAAQ,0BAA6B,CAAA;IASlF,WACgC,CAAA,aAAkC,EAG9D,UAA4C,EAAA;AAE5C,QAAA,KAAK,CAAC,aAAa,EAAE,CAAA,UAAU,KAAV,IAAA,IAAA,UAAU,KAAV,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,UAAU,CAAE,IAAI,KAAI,CAAA,CAAA,CAAG,CAAC,CAAC;QAZlD,IAAK,CAAA,KAAA,GAA0B,EAAE,CAAC;QAIlC,IAAM,CAAA,MAAA,GAAsB,EAAE,CAAC;KAS9B;;8HAhBQ,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAU7B,kBAAkB,EAAA,EAAA,EAAA,KAAA,EAElB,yBAAyB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kHAZ5B,gCAAgC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAF9B,CAAC,qBAAqB,CAAC,gCAAgC,CAAC,CAAC,iDCZxE,83BA4BA,EAAA,MAAA,EAAA,CAAA,kDAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,SAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADXI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACiB,CAAA,EAAA,gCAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIlC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACc,CAAA,EAAA,gCAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAPtB,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAP5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAA+B,6BAAA,CAAA;AACzC,oBAAA,WAAW,EAAE,CAAyC,uCAAA,CAAA;oBACtD,SAAS,EAAE,CAAC,CAAA,8BAAA,CAAgC,CAAC;oBAC7C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE,CAAC,qBAAqB,CAAA,gCAAA,CAAkC,CAAC;AACvE,iBAAA,CAAA;;0BAWQ,MAAM;2BAAC,kBAAkB,CAAA;;0BACzB,QAAQ;;0BACR,MAAM;2BAAC,yBAAyB,CAAA;4CATrC,KAAK,EAAA,CAAA;sBAFJ,KAAK;gBAMN,MAAM,EAAA,CAAA;sBAFL,KAAK;;;AELJ,MAAO,2BAA+B,SAAQ,0BAA6B,CAAA;IAK7E,WACgC,CAAA,aAAkC,EAG9D,UAA4C,EAAA;AAE5C,QAAA,KAAK,CAAC,aAAa,EAAE,CAAA,UAAU,KAAV,IAAA,IAAA,UAAU,KAAV,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,UAAU,CAAE,IAAI,KAAI,CAAA,CAAA,CAAG,CAAC,CAAC;QARlD,IAAK,CAAA,KAAA,GAAwB,EAAE,CAAC;KAS/B;;yHAZQ,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAMxB,kBAAkB,EAAA,EAAA,EAAA,KAAA,EAElB,yBAAyB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6GAR5B,2BAA2B,EAAA,QAAA,EAAA,qCAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAFzB,CAAC,qBAAqB,CAAC,2BAA2B,CAAC,CAAC,iDCZnE,q0BA4BA,EAAA,MAAA,EAAA,CAAA,kDAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,SAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADXI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACe,CAAA,EAAA,2BAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAHvB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAPvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAqC,mCAAA,CAAA;AAC/C,oBAAA,WAAW,EAAE,CAAmC,iCAAA,CAAA;oBAChD,SAAS,EAAE,CAAC,CAAA,8BAAA,CAAgC,CAAC;oBAC7C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE,CAAC,qBAAqB,CAAA,2BAAA,CAA6B,CAAC;AAClE,iBAAA,CAAA;;0BAOQ,MAAM;2BAAC,kBAAkB,CAAA;;0BACzB,QAAQ;;0BACR,MAAM;2BAAC,yBAAyB,CAAA;4CALrC,KAAK,EAAA,CAAA;sBAFJ,KAAK;;;MESG,wBAAwB,CAAA;;sHAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,EAPlB,YAAA,EAAA,CAAA,2BAA2B,EAAE,gCAAgC,aANxE,YAAY;QACZ,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;AACjB,QAAA,eAAe,aAIf,2BAA2B;QAC3B,gCAAgC;QAChC,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAGf,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,EAdxB,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,kBAAkB;YAClB,gBAAgB;YAChB,iBAAiB;YACjB,eAAe;AAClB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAQQ,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAfpC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,kBAAkB;wBAClB,gBAAgB;wBAChB,iBAAiB;wBACjB,eAAe;AAClB,qBAAA;AACD,oBAAA,YAAY,EAAE,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;AAC7E,oBAAA,OAAO,EAAE;wBACL,2BAA2B;wBAC3B,gCAAgC;wBAChC,oBAAoB;AACvB,qBAAA;AACJ,iBAAA,CAAA;;;ACvBD;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-filter.js","sources":["../../../projects/kit/components/filter/filter.component.ts","../../../projects/kit/components/filter/filter.template.html","../../../projects/kit/components/filter/filter.module.ts","../../../projects/kit/components/filter/taiga-ui-kit-components-filter.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiMultipleControl,\n ALWAYS_FALSE_HANDLER,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiHandler,\n TuiIdentityMatcher,\n tuiIsNativeFocusedIn,\n} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// @bad TODO: Add active zone to track focus\n@Component({\n selector: `tui-filter`,\n templateUrl: `./filter.template.html`,\n styleUrls: [`./filter.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiFilterComponent<T> extends AbstractTuiMultipleControl<T> {\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly T[] = [];\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL = `m`;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Output()\n readonly toggledItem = new EventEmitter<T>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {\n super(control, changeDetectorRef);\n }\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = ({$implicit}: TuiContextWithImplicit<unknown>) =>\n TUI_DEFAULT_STRINGIFY($implicit);\n\n @Input()\n @tuiDefaultProp()\n badgeHandler: TuiHandler<T, number> = item => Number(item);\n\n get focused(): boolean {\n return tuiIsNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n onCheckbox(value: boolean, item: T): void {\n this.toggledItem.emit(item);\n this.updateValue(\n value\n ? [...this.value, item]\n : this.value.filter(arrItem => !this.identityMatcher(arrItem, item)),\n );\n }\n\n isCheckboxEnabled(item: T): boolean {\n return this.value.some(arrItem => this.identityMatcher(arrItem, item));\n }\n}\n","<tui-checkbox-block\n *ngFor=\"let item of items\"\n automation-id=\"tui-filter__checkbox\"\n class=\"t-item\"\n [disabled]=\"disabledItemHandler(item)\"\n [hideCheckbox]=\"true\"\n [ngModel]=\"isCheckboxEnabled(item)\"\n [size]=\"size\"\n (ngModelChange)=\"onCheckbox($event, item)\"\n>\n <div\n automation-id=\"tui-filter__content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: item}\">\n {{ text }}\n </ng-container>\n <tui-badge\n *ngIf=\"badgeHandler(item) as badgeValue\"\n automation-id=\"tui-filter__badge\"\n tuiMode=\"onLight\"\n class=\"t-badge\"\n [class.t-badge_disabled]=\"disabledItemHandler(item)\"\n [size]=\"size\"\n [value]=\"badgeValue\"\n ></tui-badge>\n </div>\n</tui-checkbox-block>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiModeModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {TuiCheckboxBlockModule} from '@taiga-ui/kit/components/checkbox-block';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFilterComponent} from './filter.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiCheckboxBlockModule,\n TuiBadgeModule,\n TuiModeModule,\n ],\n declarations: [TuiFilterComponent],\n exports: [TuiFilterComponent],\n})\nexport class TuiFilterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-filter.js","sources":["../../../projects/kit/components/filter/filter.component.ts","../../../projects/kit/components/filter/filter.template.html","../../../projects/kit/components/filter/filter.module.ts","../../../projects/kit/components/filter/taiga-ui-kit-components-filter.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiMultipleControl,\n ALWAYS_FALSE_HANDLER,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiHandler,\n TuiIdentityMatcher,\n tuiIsNativeFocusedIn,\n} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// @bad TODO: Add active zone to track focus\n@Component({\n selector: `tui-filter`,\n templateUrl: `./filter.template.html`,\n styleUrls: [`./filter.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiFilterComponent<T> extends AbstractTuiMultipleControl<T> {\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly T[] = [];\n\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeS = `m`;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Output()\n readonly toggledItem = new EventEmitter<T>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {\n super(control, changeDetectorRef);\n }\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = ({$implicit}: TuiContextWithImplicit<unknown>) =>\n TUI_DEFAULT_STRINGIFY($implicit);\n\n @Input()\n @tuiDefaultProp()\n badgeHandler: TuiHandler<T, number> = item => Number(item);\n\n get focused(): boolean {\n return tuiIsNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n onCheckbox(value: boolean, item: T): void {\n this.toggledItem.emit(item);\n this.updateValue(\n value\n ? [...this.value, item]\n : this.value.filter(arrItem => !this.identityMatcher(arrItem, item)),\n );\n }\n\n isCheckboxEnabled(item: T): boolean {\n return this.value.some(arrItem => this.identityMatcher(arrItem, item));\n }\n}\n","<tui-checkbox-block\n *ngFor=\"let item of items\"\n automation-id=\"tui-filter__checkbox\"\n class=\"t-item\"\n [disabled]=\"disabledItemHandler(item)\"\n [hideCheckbox]=\"true\"\n [ngModel]=\"isCheckboxEnabled(item)\"\n [size]=\"size\"\n (ngModelChange)=\"onCheckbox($event, item)\"\n>\n <div\n automation-id=\"tui-filter__content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: item}\">\n {{ text }}\n </ng-container>\n <tui-badge\n *ngIf=\"badgeHandler(item) as badgeValue\"\n automation-id=\"tui-filter__badge\"\n tuiMode=\"onLight\"\n class=\"t-badge\"\n [class.t-badge_disabled]=\"disabledItemHandler(item)\"\n [size]=\"size\"\n [value]=\"badgeValue\"\n ></tui-badge>\n </div>\n</tui-checkbox-block>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiModeModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {TuiCheckboxBlockModule} from '@taiga-ui/kit/components/checkbox-block';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFilterComponent} from './filter.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiCheckboxBlockModule,\n TuiBadgeModule,\n TuiModeModule,\n ],\n declarations: [TuiFilterComponent],\n exports: [TuiFilterComponent],\n})\nexport class TuiFilterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}