@taiga-ui/core 2.55.0 → 2.58.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 (795) hide show
  1. package/bundles/taiga-ui-core-abstract.umd.js +15 -15
  2. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-core-animations.umd.js +138 -138
  5. package/bundles/taiga-ui-core-animations.umd.js.map +1 -1
  6. package/bundles/taiga-ui-core-animations.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-alert.umd.js +13 -13
  8. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-alert.umd.min.js +1 -1
  10. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-button.umd.js +16 -16
  12. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-calendar.umd.js +3 -3
  15. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  16. package/bundles/taiga-ui-core-components-calendar.umd.min.js +1 -1
  17. package/bundles/taiga-ui-core-components-calendar.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-core-components-data-list.umd.js +34 -34
  19. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  20. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-dialog.umd.js +24 -24
  22. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-dropdown-box.umd.js +40 -40
  25. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js +1 -1
  27. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-error.umd.js +6 -6
  29. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-error.umd.min.js +1 -1
  31. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-expand.umd.js +14 -14
  33. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-expand.umd.min.js +1 -1
  35. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-group.umd.js +19 -19
  37. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-group.umd.min.js +1 -1
  39. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-hints-host.umd.js +47 -47
  41. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +12 -12
  44. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js +1 -1
  46. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-label.umd.js +6 -6
  48. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-label.umd.min.js +1 -1
  50. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  51. package/bundles/taiga-ui-core-components-link.umd.js +11 -11
  52. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  53. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-core-components-loader.umd.js +4 -4
  55. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-core-components-notification.umd.js +10 -10
  58. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  59. package/bundles/taiga-ui-core-components-notification.umd.min.js +1 -1
  60. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +2 -2
  62. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +9 -9
  65. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js +1 -1
  67. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  68. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +4 -4
  69. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  70. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js +1 -1
  71. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  72. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +57 -57
  73. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  74. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +1 -1
  75. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +2 -2
  77. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  78. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-core-components-root.umd.js +6 -6
  80. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  81. package/bundles/taiga-ui-core-components-root.umd.min.js +1 -1
  82. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  83. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +28 -28
  84. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  85. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +1 -1
  86. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  87. package/bundles/taiga-ui-core-components-scrollbar.umd.js +10 -10
  88. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  89. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js +1 -1
  90. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  91. package/bundles/taiga-ui-core-components-svg.umd.js +17 -17
  92. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  93. package/bundles/taiga-ui-core-components-svg.umd.min.js +1 -1
  94. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-components-theme-night.umd.js +2 -2
  96. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  97. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-core-components-tooltip.umd.js +9 -9
  99. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  100. package/bundles/taiga-ui-core-components-tooltip.umd.min.js +1 -1
  101. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-core-constants.umd.js +17 -17
  103. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  104. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  105. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  106. package/bundles/taiga-ui-core-directives-color.umd.js +6 -6
  107. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  108. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-core-directives-described-by.umd.js +8 -8
  110. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  111. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  112. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js +11 -11
  113. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  114. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  115. package/bundles/taiga-ui-core-directives-dropdown.umd.js +2 -2
  116. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  117. package/bundles/taiga-ui-core-directives-dropdown.umd.min.js.map +1 -1
  118. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +8 -8
  119. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  120. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-core-directives-hint.umd.js +7 -7
  122. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  123. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  124. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +4 -4
  125. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  126. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  127. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +1 -1
  128. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  129. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  130. package/bundles/taiga-ui-core-directives-mode.umd.js +2 -2
  131. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  132. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  133. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +5 -5
  134. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  135. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  136. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +1 -1
  137. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  138. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-core-directives-table-mode.umd.js +2 -2
  140. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  141. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  142. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +35 -35
  143. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  144. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  145. package/bundles/taiga-ui-core-directives-wrapper.umd.js +9 -9
  146. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  147. package/bundles/taiga-ui-core-directives-wrapper.umd.min.js.map +1 -1
  148. package/bundles/taiga-ui-core-enums.umd.js +1 -0
  149. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  150. package/bundles/taiga-ui-core-enums.umd.min.js +1 -1
  151. package/bundles/taiga-ui-core-enums.umd.min.js.map +1 -1
  152. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -1
  153. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  154. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  155. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +1 -1
  156. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  157. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  158. package/bundles/taiga-ui-core-observables.umd.js +2 -2
  159. package/bundles/taiga-ui-core-observables.umd.js.map +1 -1
  160. package/bundles/taiga-ui-core-observables.umd.min.js.map +1 -1
  161. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +1 -1
  162. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  163. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  164. package/bundles/taiga-ui-core-pipes-format-number.umd.js +1 -1
  165. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  166. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  167. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +3 -3
  168. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  169. package/bundles/taiga-ui-core-pipes-format-phone.umd.min.js.map +1 -1
  170. package/bundles/taiga-ui-core-pipes-month.umd.js +1 -1
  171. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  172. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  173. package/bundles/taiga-ui-core-pipes-pluralize.umd.js +1 -1
  174. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  175. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  176. package/bundles/taiga-ui-core-providers.umd.js +2 -2
  177. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  178. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  179. package/bundles/taiga-ui-core-services.umd.js +7 -7
  180. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  181. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  182. package/bundles/taiga-ui-core-tokens.umd.js +40 -40
  183. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  184. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  185. package/bundles/taiga-ui-core-utils-dom.umd.js +16 -16
  186. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  187. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  188. package/bundles/taiga-ui-core-utils-format.umd.js +17 -17
  189. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  190. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  191. package/bundles/taiga-ui-core-utils-mask.umd.js +28 -28
  192. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  193. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  194. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +12 -12
  195. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  196. package/bundles/taiga-ui-core-utils-miscellaneous.umd.min.js.map +1 -1
  197. package/bundles/taiga-ui-core-utils-polyfills.umd.js +4 -4
  198. package/bundles/taiga-ui-core-utils-polyfills.umd.js.map +1 -1
  199. package/bundles/taiga-ui-core-utils-polyfills.umd.min.js.map +1 -1
  200. package/components/alert/taiga-ui-core-components-alert.metadata.json +1 -1
  201. package/components/calendar/taiga-ui-core-components-calendar.metadata.json +1 -1
  202. package/components/dropdown-box/taiga-ui-core-components-dropdown-box.metadata.json +1 -1
  203. package/components/error/taiga-ui-core-components-error.metadata.json +1 -1
  204. package/components/expand/taiga-ui-core-components-expand.metadata.json +1 -1
  205. package/components/group/taiga-ui-core-components-group.metadata.json +1 -1
  206. package/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.metadata.json +1 -1
  207. package/components/label/taiga-ui-core-components-label.metadata.json +1 -1
  208. package/components/notification/taiga-ui-core-components-notification.metadata.json +1 -1
  209. package/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.metadata.json +1 -1
  210. package/components/primitive-spin-button/taiga-ui-core-components-primitive-spin-button.metadata.json +1 -1
  211. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  212. package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
  213. package/components/scroll-controls/taiga-ui-core-components-scroll-controls.metadata.json +1 -1
  214. package/components/scrollbar/taiga-ui-core-components-scrollbar.metadata.json +1 -1
  215. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  216. package/components/tooltip/taiga-ui-core-components-tooltip.metadata.json +1 -1
  217. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  218. package/constants/version.d.ts +1 -1
  219. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  220. package/enums/appearance.d.ts +1 -0
  221. package/enums/taiga-ui-core-enums.metadata.json +1 -1
  222. package/esm2015/abstract/abstract-dropdown.js +12 -12
  223. package/esm2015/abstract/abstract-hint-options.js +2 -2
  224. package/esm2015/abstract/abstract-hint.js +4 -4
  225. package/esm2015/animations/animations.js +140 -140
  226. package/esm2015/components/alert/alert.component.js +12 -12
  227. package/esm2015/components/alert/alert.service.js +3 -3
  228. package/esm2015/components/button/button-options.js +3 -3
  229. package/esm2015/components/button/button.component.js +15 -15
  230. package/esm2015/components/calendar/calendar.component.js +4 -4
  231. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +7 -7
  232. package/esm2015/components/data-list/data-list.component.js +12 -12
  233. package/esm2015/components/data-list/data-list.directive.js +2 -2
  234. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  235. package/esm2015/components/data-list/option/option.component.js +12 -12
  236. package/esm2015/components/dialog/dialog.component.js +12 -12
  237. package/esm2015/components/dialog/dialog.directive.js +4 -4
  238. package/esm2015/components/dialog/dialog.providers.js +7 -7
  239. package/esm2015/components/dialog/dialog.service.js +5 -5
  240. package/esm2015/components/dropdown-box/dropdown-box.component.js +41 -41
  241. package/esm2015/components/error/error.component.js +7 -7
  242. package/esm2015/components/expand/expand-content.directive.js +2 -2
  243. package/esm2015/components/expand/expand.component.js +14 -14
  244. package/esm2015/components/group/group-styles.component.js +2 -2
  245. package/esm2015/components/group/group.component.js +7 -5
  246. package/esm2015/components/group/group.directive.js +15 -15
  247. package/esm2015/components/hints-host/hint-box/hint-box.component.js +46 -46
  248. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  249. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  250. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +12 -12
  251. package/esm2015/components/label/label.component.js +7 -7
  252. package/esm2015/components/link/link.component.js +12 -12
  253. package/esm2015/components/loader/loader-options.js +3 -3
  254. package/esm2015/components/loader/loader.component.js +3 -3
  255. package/esm2015/components/notification/notification.component.js +11 -11
  256. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  257. package/esm2015/components/primitive-checkbox/checkbox-options.js +5 -5
  258. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +6 -6
  259. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +5 -5
  260. package/esm2015/components/primitive-textfield/primitive-textfield-options.js +4 -4
  261. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +30 -30
  262. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  263. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +14 -14
  264. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  265. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  266. package/esm2015/components/root/root.component.js +7 -7
  267. package/esm2015/components/scroll-controls/scroll-controls.component.js +6 -6
  268. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  269. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  270. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  271. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  272. package/esm2015/components/scrollbar/scrollbar.component.js +9 -9
  273. package/esm2015/components/svg/svg.component.js +18 -18
  274. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  275. package/esm2015/components/tooltip/tooltip.component.js +10 -10
  276. package/esm2015/constants/decimal-symbols.js +2 -2
  277. package/esm2015/constants/default-icons-path.js +2 -2
  278. package/esm2015/constants/editing-keys.js +10 -10
  279. package/esm2015/constants/events.js +5 -5
  280. package/esm2015/constants/mask-caret-trap.js +2 -2
  281. package/esm2015/constants/version.js +2 -2
  282. package/esm2015/directives/color/color.directive.js +7 -7
  283. package/esm2015/directives/described-by/described-by.directive.js +5 -5
  284. package/esm2015/directives/described-by/described-by.providers.js +3 -3
  285. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  286. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  287. package/esm2015/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  288. package/esm2015/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  289. package/esm2015/directives/hint/hint-options.js +3 -3
  290. package/esm2015/directives/hint/hint.directive.js +6 -6
  291. package/esm2015/directives/hint-controller/hint-controller.directive.js +7 -7
  292. package/esm2015/directives/hint-controller/hint-controller.provider.js +2 -2
  293. package/esm2015/directives/hint-controller/hint-controller.token.js +2 -2
  294. package/esm2015/directives/manual-hint/manual-hint-options.js +2 -2
  295. package/esm2015/directives/manual-hint/manual-hint.directive.js +4 -4
  296. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  297. package/esm2015/directives/mode/mode.directive.js +3 -3
  298. package/esm2015/directives/pointer-hint/pointer-hint-options.js +2 -2
  299. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +5 -5
  300. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  301. package/esm2015/directives/table-mode/table-mode.directive.js +3 -3
  302. package/esm2015/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  303. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  304. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  305. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  306. package/esm2015/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  307. package/esm2015/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  308. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  309. package/esm2015/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  310. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  311. package/esm2015/directives/textfield-controller/textfield-type.directive.js +5 -5
  312. package/esm2015/directives/textfield-controller/textfield.controller.js +2 -2
  313. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  314. package/esm2015/enums/appearance.js +2 -1
  315. package/esm2015/enums/base-color.js +1 -1
  316. package/esm2015/enums/button-shape.js +1 -1
  317. package/esm2015/enums/decimal.js +1 -1
  318. package/esm2015/enums/dropdown-animation.js +1 -1
  319. package/esm2015/enums/dropdown-width.js +1 -1
  320. package/esm2015/enums/hint-mode.js +1 -1
  321. package/esm2015/enums/interactive-state.js +1 -1
  322. package/esm2015/enums/link-mode.js +1 -1
  323. package/esm2015/enums/notification.js +1 -1
  324. package/esm2015/enums/orientation.js +1 -1
  325. package/esm2015/enums/range-state.js +1 -1
  326. package/esm2015/enums/support-color.js +1 -1
  327. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  328. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  329. package/esm2015/observables/smart-search.js +3 -3
  330. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  331. package/esm2015/pipes/format-number/format-number.pipe.js +2 -2
  332. package/esm2015/pipes/format-phone/format-phone.pipe.js +4 -4
  333. package/esm2015/pipes/month/month.pipe.js +2 -2
  334. package/esm2015/pipes/pluralize/pluralize.pipe.js +2 -2
  335. package/esm2015/providers/is-mobile-resolution.provider.js +2 -2
  336. package/esm2015/providers/mode.provider.js +2 -2
  337. package/esm2015/services/hint.service.js +2 -2
  338. package/esm2015/services/night-theme.service.js +4 -4
  339. package/esm2015/services/svg.service.js +4 -4
  340. package/esm2015/tokens/animation-options.js +2 -2
  341. package/esm2015/tokens/animations-duration.js +2 -2
  342. package/esm2015/tokens/assert-enabled.js +2 -2
  343. package/esm2015/tokens/data-list-accessor.js +2 -2
  344. package/esm2015/tokens/data-list-host.js +2 -2
  345. package/esm2015/tokens/document-or-shadow-root.js +2 -2
  346. package/esm2015/tokens/dropdown-directive.js +2 -2
  347. package/esm2015/tokens/element-ref.js +2 -2
  348. package/esm2015/tokens/first-day-of-week.js +2 -2
  349. package/esm2015/tokens/i18n.js +10 -10
  350. package/esm2015/tokens/icon-place.js +3 -3
  351. package/esm2015/tokens/icons-path.js +2 -2
  352. package/esm2015/tokens/icons.js +2 -2
  353. package/esm2015/tokens/is-mobile-resolution.js +3 -3
  354. package/esm2015/tokens/media.js +2 -2
  355. package/esm2015/tokens/mode.js +2 -2
  356. package/esm2015/tokens/notification-options.js +3 -3
  357. package/esm2015/tokens/number-format.js +3 -3
  358. package/esm2015/tokens/option-content.js +2 -2
  359. package/esm2015/tokens/ordered-short-week-days.js +2 -2
  360. package/esm2015/tokens/scroll-ref.js +2 -2
  361. package/esm2015/tokens/svg-content-processor.js +2 -2
  362. package/esm2015/tokens/svg-src-processor.js +2 -2
  363. package/esm2015/tokens/textfield-appearance.js +2 -2
  364. package/esm2015/tokens/textfield-host.js +2 -2
  365. package/esm2015/tokens/theme.js +3 -3
  366. package/esm2015/tokens/value-accessor.js +2 -2
  367. package/esm2015/utils/dom/are-css-vars-supported.js +2 -2
  368. package/esm2015/utils/dom/check-fixed-position.js +3 -3
  369. package/esm2015/utils/dom/get-safe-area-size.js +4 -4
  370. package/esm2015/utils/dom/process-icon.js +11 -11
  371. package/esm2015/utils/format/format-number.js +5 -5
  372. package/esm2015/utils/format/format-phone.js +9 -9
  373. package/esm2015/utils/format/get-fractional-part-padded.js +3 -3
  374. package/esm2015/utils/format/number-to-string-without-exp.js +3 -3
  375. package/esm2015/utils/format/other-decimal-symbol.js +2 -2
  376. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +11 -11
  377. package/esm2015/utils/mask/create-correction-mask.js +3 -3
  378. package/esm2015/utils/mask/create-number-mask.js +13 -13
  379. package/esm2015/utils/mask/masked-money-value-is-empty.js +3 -3
  380. package/esm2015/utils/mask/masked-number-string-to-number.js +2 -2
  381. package/esm2015/utils/miscellaneous/color-fallback.js +8 -8
  382. package/esm2015/utils/miscellaneous/icons-path-factory.js +3 -3
  383. package/esm2015/utils/miscellaneous/is-presumed-html-string.js +2 -2
  384. package/esm2015/utils/miscellaneous/size-bigger.js +3 -3
  385. package/esm2015/utils/polyfills/inner-html.js +5 -5
  386. package/esm5/abstract/abstract-dropdown.js +12 -12
  387. package/esm5/abstract/abstract-hint-options.js +2 -2
  388. package/esm5/abstract/abstract-hint.js +4 -4
  389. package/esm5/animations/animations.js +140 -140
  390. package/esm5/components/alert/alert.component.js +12 -12
  391. package/esm5/components/alert/alert.service.js +3 -3
  392. package/esm5/components/button/button-options.js +3 -3
  393. package/esm5/components/button/button.component.js +15 -15
  394. package/esm5/components/calendar/calendar.component.js +4 -4
  395. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +8 -8
  396. package/esm5/components/data-list/data-list.component.js +12 -12
  397. package/esm5/components/data-list/data-list.directive.js +2 -2
  398. package/esm5/components/data-list/opt-group.directive.js +5 -5
  399. package/esm5/components/data-list/option/option.component.js +12 -12
  400. package/esm5/components/dialog/dialog.component.js +12 -12
  401. package/esm5/components/dialog/dialog.directive.js +4 -4
  402. package/esm5/components/dialog/dialog.providers.js +7 -7
  403. package/esm5/components/dialog/dialog.service.js +5 -5
  404. package/esm5/components/dropdown-box/dropdown-box.component.js +41 -41
  405. package/esm5/components/error/error.component.js +7 -7
  406. package/esm5/components/expand/expand-content.directive.js +2 -2
  407. package/esm5/components/expand/expand.component.js +14 -14
  408. package/esm5/components/group/group-styles.component.js +2 -2
  409. package/esm5/components/group/group.component.js +5 -5
  410. package/esm5/components/group/group.directive.js +15 -15
  411. package/esm5/components/hints-host/hint-box/hint-box.component.js +46 -46
  412. package/esm5/components/hints-host/hints-host.component.js +3 -3
  413. package/esm5/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  414. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +12 -12
  415. package/esm5/components/label/label.component.js +7 -7
  416. package/esm5/components/link/link.component.js +12 -12
  417. package/esm5/components/loader/loader-options.js +3 -3
  418. package/esm5/components/loader/loader.component.js +3 -3
  419. package/esm5/components/notification/notification.component.js +11 -11
  420. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  421. package/esm5/components/primitive-checkbox/checkbox-options.js +5 -5
  422. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +6 -6
  423. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +5 -5
  424. package/esm5/components/primitive-textfield/primitive-textfield-options.js +4 -4
  425. package/esm5/components/primitive-textfield/primitive-textfield.component.js +30 -30
  426. package/esm5/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  427. package/esm5/components/primitive-textfield/textfield/textfield.component.js +14 -14
  428. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  429. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  430. package/esm5/components/root/root.component.js +7 -7
  431. package/esm5/components/scroll-controls/scroll-controls.component.js +6 -6
  432. package/esm5/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  433. package/esm5/components/scroll-controls/scrollbar.directive.js +23 -23
  434. package/esm5/components/scrollbar/scroll-ref.directive.js +2 -2
  435. package/esm5/components/scrollbar/scrollable.directive.js +2 -2
  436. package/esm5/components/scrollbar/scrollbar.component.js +9 -9
  437. package/esm5/components/svg/svg.component.js +18 -18
  438. package/esm5/components/theme-night/theme-night.component.js +3 -3
  439. package/esm5/components/tooltip/tooltip.component.js +10 -10
  440. package/esm5/constants/decimal-symbols.js +2 -2
  441. package/esm5/constants/default-icons-path.js +2 -2
  442. package/esm5/constants/editing-keys.js +10 -10
  443. package/esm5/constants/events.js +5 -5
  444. package/esm5/constants/mask-caret-trap.js +2 -2
  445. package/esm5/constants/version.js +2 -2
  446. package/esm5/directives/color/color.directive.js +7 -7
  447. package/esm5/directives/described-by/described-by.directive.js +5 -5
  448. package/esm5/directives/described-by/described-by.providers.js +5 -5
  449. package/esm5/directives/dropdown/dropdown.directive.js +3 -3
  450. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  451. package/esm5/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  452. package/esm5/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  453. package/esm5/directives/hint/hint-options.js +3 -3
  454. package/esm5/directives/hint/hint.directive.js +6 -6
  455. package/esm5/directives/hint-controller/hint-controller.directive.js +7 -7
  456. package/esm5/directives/hint-controller/hint-controller.provider.js +2 -2
  457. package/esm5/directives/hint-controller/hint-controller.token.js +2 -2
  458. package/esm5/directives/manual-hint/manual-hint-options.js +2 -2
  459. package/esm5/directives/manual-hint/manual-hint.directive.js +4 -4
  460. package/esm5/directives/mask-accessor/mask-accessor.directive.js +2 -2
  461. package/esm5/directives/mode/mode.directive.js +3 -3
  462. package/esm5/directives/pointer-hint/pointer-hint-options.js +2 -2
  463. package/esm5/directives/pointer-hint/pointer-hint.directive.js +5 -5
  464. package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  465. package/esm5/directives/table-mode/table-mode.directive.js +3 -3
  466. package/esm5/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  467. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  468. package/esm5/directives/textfield-controller/textfield-controller.provider.js +2 -2
  469. package/esm5/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  470. package/esm5/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  471. package/esm5/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  472. package/esm5/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  473. package/esm5/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  474. package/esm5/directives/textfield-controller/textfield-size.directive.js +5 -5
  475. package/esm5/directives/textfield-controller/textfield-type.directive.js +5 -5
  476. package/esm5/directives/textfield-controller/textfield.controller.js +2 -2
  477. package/esm5/directives/wrapper/wrapper.directive.js +10 -10
  478. package/esm5/enums/appearance.js +2 -1
  479. package/esm5/enums/base-color.js +1 -1
  480. package/esm5/enums/button-shape.js +1 -1
  481. package/esm5/enums/decimal.js +1 -1
  482. package/esm5/enums/dropdown-animation.js +1 -1
  483. package/esm5/enums/dropdown-width.js +1 -1
  484. package/esm5/enums/hint-mode.js +1 -1
  485. package/esm5/enums/interactive-state.js +1 -1
  486. package/esm5/enums/link-mode.js +1 -1
  487. package/esm5/enums/notification.js +1 -1
  488. package/esm5/enums/orientation.js +1 -1
  489. package/esm5/enums/range-state.js +1 -1
  490. package/esm5/enums/support-color.js +1 -1
  491. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  492. package/esm5/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  493. package/esm5/observables/smart-search.js +3 -3
  494. package/esm5/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  495. package/esm5/pipes/format-number/format-number.pipe.js +2 -2
  496. package/esm5/pipes/format-phone/format-phone.pipe.js +4 -4
  497. package/esm5/pipes/month/month.pipe.js +2 -2
  498. package/esm5/pipes/pluralize/pluralize.pipe.js +2 -2
  499. package/esm5/providers/is-mobile-resolution.provider.js +2 -2
  500. package/esm5/providers/mode.provider.js +2 -2
  501. package/esm5/services/hint.service.js +2 -2
  502. package/esm5/services/night-theme.service.js +4 -4
  503. package/esm5/services/svg.service.js +4 -4
  504. package/esm5/tokens/animation-options.js +2 -2
  505. package/esm5/tokens/animations-duration.js +2 -2
  506. package/esm5/tokens/assert-enabled.js +2 -2
  507. package/esm5/tokens/data-list-accessor.js +2 -2
  508. package/esm5/tokens/data-list-host.js +2 -2
  509. package/esm5/tokens/document-or-shadow-root.js +2 -2
  510. package/esm5/tokens/dropdown-directive.js +2 -2
  511. package/esm5/tokens/element-ref.js +2 -2
  512. package/esm5/tokens/first-day-of-week.js +2 -2
  513. package/esm5/tokens/i18n.js +10 -10
  514. package/esm5/tokens/icon-place.js +3 -3
  515. package/esm5/tokens/icons-path.js +2 -2
  516. package/esm5/tokens/icons.js +2 -2
  517. package/esm5/tokens/is-mobile-resolution.js +3 -3
  518. package/esm5/tokens/media.js +2 -2
  519. package/esm5/tokens/mode.js +2 -2
  520. package/esm5/tokens/notification-options.js +3 -3
  521. package/esm5/tokens/number-format.js +3 -3
  522. package/esm5/tokens/option-content.js +2 -2
  523. package/esm5/tokens/ordered-short-week-days.js +2 -2
  524. package/esm5/tokens/scroll-ref.js +2 -2
  525. package/esm5/tokens/svg-content-processor.js +2 -2
  526. package/esm5/tokens/svg-src-processor.js +2 -2
  527. package/esm5/tokens/textfield-appearance.js +2 -2
  528. package/esm5/tokens/textfield-host.js +2 -2
  529. package/esm5/tokens/theme.js +3 -3
  530. package/esm5/tokens/value-accessor.js +2 -2
  531. package/esm5/utils/dom/are-css-vars-supported.js +2 -2
  532. package/esm5/utils/dom/check-fixed-position.js +3 -3
  533. package/esm5/utils/dom/get-safe-area-size.js +4 -4
  534. package/esm5/utils/dom/process-icon.js +11 -11
  535. package/esm5/utils/format/format-number.js +5 -5
  536. package/esm5/utils/format/format-phone.js +9 -9
  537. package/esm5/utils/format/get-fractional-part-padded.js +3 -3
  538. package/esm5/utils/format/number-to-string-without-exp.js +3 -3
  539. package/esm5/utils/format/other-decimal-symbol.js +2 -2
  540. package/esm5/utils/mask/create-auto-corrected-money-pipe.js +12 -12
  541. package/esm5/utils/mask/create-correction-mask.js +3 -3
  542. package/esm5/utils/mask/create-number-mask.js +13 -13
  543. package/esm5/utils/mask/masked-money-value-is-empty.js +3 -3
  544. package/esm5/utils/mask/masked-number-string-to-number.js +2 -2
  545. package/esm5/utils/miscellaneous/color-fallback.js +8 -8
  546. package/esm5/utils/miscellaneous/icons-path-factory.js +3 -3
  547. package/esm5/utils/miscellaneous/is-presumed-html-string.js +2 -2
  548. package/esm5/utils/miscellaneous/size-bigger.js +3 -3
  549. package/esm5/utils/polyfills/inner-html.js +5 -5
  550. package/fesm2015/taiga-ui-core-abstract.js +15 -15
  551. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  552. package/fesm2015/taiga-ui-core-animations.js +138 -138
  553. package/fesm2015/taiga-ui-core-animations.js.map +1 -1
  554. package/fesm2015/taiga-ui-core-components-alert.js +13 -13
  555. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  556. package/fesm2015/taiga-ui-core-components-button.js +16 -16
  557. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  558. package/fesm2015/taiga-ui-core-components-calendar.js +3 -3
  559. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  560. package/fesm2015/taiga-ui-core-components-data-list.js +33 -33
  561. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  562. package/fesm2015/taiga-ui-core-components-dialog.js +24 -24
  563. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  564. package/fesm2015/taiga-ui-core-components-dropdown-box.js +40 -40
  565. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  566. package/fesm2015/taiga-ui-core-components-error.js +6 -6
  567. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  568. package/fesm2015/taiga-ui-core-components-expand.js +14 -14
  569. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  570. package/fesm2015/taiga-ui-core-components-group.js +21 -19
  571. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  572. package/fesm2015/taiga-ui-core-components-hints-host.js +47 -47
  573. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  574. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +12 -12
  575. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  576. package/fesm2015/taiga-ui-core-components-label.js +6 -6
  577. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  578. package/fesm2015/taiga-ui-core-components-link.js +11 -11
  579. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  580. package/fesm2015/taiga-ui-core-components-loader.js +4 -4
  581. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  582. package/fesm2015/taiga-ui-core-components-notification.js +10 -10
  583. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  584. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  585. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  586. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +9 -9
  587. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  588. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +4 -4
  589. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  590. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +57 -57
  591. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  592. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  593. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  594. package/fesm2015/taiga-ui-core-components-root.js +6 -6
  595. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  596. package/fesm2015/taiga-ui-core-components-scroll-controls.js +28 -28
  597. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  598. package/fesm2015/taiga-ui-core-components-scrollbar.js +10 -10
  599. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  600. package/fesm2015/taiga-ui-core-components-svg.js +17 -17
  601. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  602. package/fesm2015/taiga-ui-core-components-theme-night.js +2 -2
  603. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  604. package/fesm2015/taiga-ui-core-components-tooltip.js +9 -9
  605. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  606. package/fesm2015/taiga-ui-core-constants.js +17 -17
  607. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  608. package/fesm2015/taiga-ui-core-directives-color.js +6 -6
  609. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  610. package/fesm2015/taiga-ui-core-directives-described-by.js +6 -6
  611. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  612. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js +11 -11
  613. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  614. package/fesm2015/taiga-ui-core-directives-dropdown.js +2 -2
  615. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  616. package/fesm2015/taiga-ui-core-directives-hint-controller.js +8 -8
  617. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  618. package/fesm2015/taiga-ui-core-directives-hint.js +7 -7
  619. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  620. package/fesm2015/taiga-ui-core-directives-manual-hint.js +4 -4
  621. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  622. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  623. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  624. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  625. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  626. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +5 -5
  627. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  628. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  629. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  630. package/fesm2015/taiga-ui-core-directives-table-mode.js +2 -2
  631. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  632. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +35 -35
  633. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  634. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  635. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  636. package/fesm2015/taiga-ui-core-enums.js +1 -0
  637. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  638. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  639. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  640. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +1 -1
  641. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  642. package/fesm2015/taiga-ui-core-observables.js +2 -2
  643. package/fesm2015/taiga-ui-core-observables.js.map +1 -1
  644. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  645. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  646. package/fesm2015/taiga-ui-core-pipes-format-number.js +1 -1
  647. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  648. package/fesm2015/taiga-ui-core-pipes-format-phone.js +3 -3
  649. package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
  650. package/fesm2015/taiga-ui-core-pipes-month.js +1 -1
  651. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  652. package/fesm2015/taiga-ui-core-pipes-pluralize.js +1 -1
  653. package/fesm2015/taiga-ui-core-pipes-pluralize.js.map +1 -1
  654. package/fesm2015/taiga-ui-core-providers.js +2 -2
  655. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  656. package/fesm2015/taiga-ui-core-services.js +7 -7
  657. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  658. package/fesm2015/taiga-ui-core-tokens.js +40 -40
  659. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  660. package/fesm2015/taiga-ui-core-utils-dom.js +16 -16
  661. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  662. package/fesm2015/taiga-ui-core-utils-format.js +17 -17
  663. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  664. package/fesm2015/taiga-ui-core-utils-mask.js +27 -27
  665. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  666. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +12 -12
  667. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  668. package/fesm2015/taiga-ui-core-utils-polyfills.js +4 -4
  669. package/fesm2015/taiga-ui-core-utils-polyfills.js.map +1 -1
  670. package/fesm5/taiga-ui-core-abstract.js +15 -15
  671. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  672. package/fesm5/taiga-ui-core-animations.js +138 -138
  673. package/fesm5/taiga-ui-core-animations.js.map +1 -1
  674. package/fesm5/taiga-ui-core-components-alert.js +13 -13
  675. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  676. package/fesm5/taiga-ui-core-components-button.js +16 -16
  677. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  678. package/fesm5/taiga-ui-core-components-calendar.js +3 -3
  679. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  680. package/fesm5/taiga-ui-core-components-data-list.js +34 -34
  681. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  682. package/fesm5/taiga-ui-core-components-dialog.js +24 -24
  683. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  684. package/fesm5/taiga-ui-core-components-dropdown-box.js +40 -40
  685. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  686. package/fesm5/taiga-ui-core-components-error.js +6 -6
  687. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  688. package/fesm5/taiga-ui-core-components-expand.js +14 -14
  689. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  690. package/fesm5/taiga-ui-core-components-group.js +19 -19
  691. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  692. package/fesm5/taiga-ui-core-components-hints-host.js +47 -47
  693. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  694. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +12 -12
  695. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  696. package/fesm5/taiga-ui-core-components-label.js +6 -6
  697. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  698. package/fesm5/taiga-ui-core-components-link.js +11 -11
  699. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  700. package/fesm5/taiga-ui-core-components-loader.js +4 -4
  701. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  702. package/fesm5/taiga-ui-core-components-notification.js +10 -10
  703. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  704. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  705. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  706. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +9 -9
  707. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  708. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +4 -4
  709. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  710. package/fesm5/taiga-ui-core-components-primitive-textfield.js +57 -57
  711. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  712. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  713. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  714. package/fesm5/taiga-ui-core-components-root.js +6 -6
  715. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  716. package/fesm5/taiga-ui-core-components-scroll-controls.js +28 -28
  717. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  718. package/fesm5/taiga-ui-core-components-scrollbar.js +10 -10
  719. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  720. package/fesm5/taiga-ui-core-components-svg.js +17 -17
  721. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  722. package/fesm5/taiga-ui-core-components-theme-night.js +2 -2
  723. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  724. package/fesm5/taiga-ui-core-components-tooltip.js +9 -9
  725. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  726. package/fesm5/taiga-ui-core-constants.js +17 -17
  727. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  728. package/fesm5/taiga-ui-core-directives-color.js +6 -6
  729. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  730. package/fesm5/taiga-ui-core-directives-described-by.js +8 -8
  731. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  732. package/fesm5/taiga-ui-core-directives-dropdown-controller.js +11 -11
  733. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  734. package/fesm5/taiga-ui-core-directives-dropdown.js +2 -2
  735. package/fesm5/taiga-ui-core-directives-dropdown.js.map +1 -1
  736. package/fesm5/taiga-ui-core-directives-hint-controller.js +8 -8
  737. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  738. package/fesm5/taiga-ui-core-directives-hint.js +7 -7
  739. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  740. package/fesm5/taiga-ui-core-directives-manual-hint.js +4 -4
  741. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  742. package/fesm5/taiga-ui-core-directives-mask-accessor.js +1 -1
  743. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  744. package/fesm5/taiga-ui-core-directives-mode.js +2 -2
  745. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  746. package/fesm5/taiga-ui-core-directives-pointer-hint.js +5 -5
  747. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  748. package/fesm5/taiga-ui-core-directives-scroll-into-view.js +1 -1
  749. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  750. package/fesm5/taiga-ui-core-directives-table-mode.js +2 -2
  751. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  752. package/fesm5/taiga-ui-core-directives-textfield-controller.js +35 -35
  753. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  754. package/fesm5/taiga-ui-core-directives-wrapper.js +9 -9
  755. package/fesm5/taiga-ui-core-directives-wrapper.js.map +1 -1
  756. package/fesm5/taiga-ui-core-enums.js +1 -0
  757. package/fesm5/taiga-ui-core-enums.js.map +1 -1
  758. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  759. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  760. package/fesm5/taiga-ui-core-internal-svg-defs-host.js +1 -1
  761. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  762. package/fesm5/taiga-ui-core-observables.js +2 -2
  763. package/fesm5/taiga-ui-core-observables.js.map +1 -1
  764. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  765. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  766. package/fesm5/taiga-ui-core-pipes-format-number.js +1 -1
  767. package/fesm5/taiga-ui-core-pipes-format-number.js.map +1 -1
  768. package/fesm5/taiga-ui-core-pipes-format-phone.js +3 -3
  769. package/fesm5/taiga-ui-core-pipes-format-phone.js.map +1 -1
  770. package/fesm5/taiga-ui-core-pipes-month.js +1 -1
  771. package/fesm5/taiga-ui-core-pipes-month.js.map +1 -1
  772. package/fesm5/taiga-ui-core-pipes-pluralize.js +1 -1
  773. package/fesm5/taiga-ui-core-pipes-pluralize.js.map +1 -1
  774. package/fesm5/taiga-ui-core-providers.js +2 -2
  775. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  776. package/fesm5/taiga-ui-core-services.js +7 -7
  777. package/fesm5/taiga-ui-core-services.js.map +1 -1
  778. package/fesm5/taiga-ui-core-tokens.js +40 -40
  779. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  780. package/fesm5/taiga-ui-core-utils-dom.js +16 -16
  781. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  782. package/fesm5/taiga-ui-core-utils-format.js +17 -17
  783. package/fesm5/taiga-ui-core-utils-format.js.map +1 -1
  784. package/fesm5/taiga-ui-core-utils-mask.js +28 -28
  785. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  786. package/fesm5/taiga-ui-core-utils-miscellaneous.js +12 -12
  787. package/fesm5/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  788. package/fesm5/taiga-ui-core-utils-polyfills.js +4 -4
  789. package/fesm5/taiga-ui-core-utils-polyfills.js.map +1 -1
  790. package/package.json +4 -4
  791. package/styles/markup/tui-table.less +33 -0
  792. package/styles/mixins/mixins.less +1 -2
  793. package/styles/mixins/textfield.less +2 -2
  794. package/styles/theme/wrapper/secondary-destructive.less +29 -0
  795. package/styles/theme/wrapper.less +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-data-list.js","sources":["ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts","ng://@taiga-ui/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: './option.template.html',\n styleUrls: ['./option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: '-1',\n type: 'button',\n '[attr.disabled]': 'disabled || null',\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiOptionRole = 'option';\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: 3.0 Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding('class._with-dropdown')\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener('click')\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener('mousemove.init', ['$event'])\n @HostListener('mousemove.silent', ['$event'])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiAssertIsHTMLElement,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: 'tui-data-list',\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiDataListRole = 'listbox';\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n noop(): void {}\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener('wheel.silent.passive')\n @HostListener('mouseleave', ['$event.target'])\n handleFocusLossIfNecessary(\n element: HTMLElement = this.elementRef.nativeElement,\n ): void {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n tuiAssertIsHTMLElement(target);\n\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll('[tuiOption]'));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: 3.0 Move into separate module\n@Directive({\n selector: 'tui-data-list[tuiDataListDropdownManager]',\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit(): void {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, 'mouseenter').pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, 'keydown'),\n typedFromEvent(nativeElement, 'keydown'),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'keydown').pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'click').pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, 'focus'),\n typedFromEvent(element, 'blur'),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === 'focus' ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number): void {\n const dropdown = this.dropdowns.toArray()[index];\n const content = dropdown?.dropdownBoxRef?.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding('attr.data-label')\n @tuiDefaultProp()\n label = '';\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\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-core-components-data-list.js","sources":["ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts","ng://@taiga-ui/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: `./option.template.html`,\n styleUrls: [`./option.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: `-1`,\n type: `button`,\n '[attr.disabled]': `disabled || null`,\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = `m`;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiOptionRole = `option`;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: 3.0 Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding(`class._with-dropdown`)\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener(`click`)\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener(`mousemove.init`, [`$event`])\n @HostListener(`mousemove.silent`, [`$event`])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiAssertIsHTMLElement,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: `tui-data-list`,\n templateUrl: `./data-list.template.html`,\n styleUrls: [`./data-list.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiDataListRole = `listbox`;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener(`focusin`, [`$event.relatedTarget`, `$event.currentTarget`])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener(`mousedown.prevent`)\n noop(): void {}\n\n @HostListener(`keydown.arrowDown.prevent`, [`$event.target`, `1`])\n @HostListener(`keydown.arrowUp.prevent`, [`$event.target`, `-1`])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener(`wheel.silent.passive`)\n @HostListener(`mouseleave`, [`$event.target`])\n handleFocusLossIfNecessary(\n element: HTMLElement = this.elementRef.nativeElement,\n ): void {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n tuiAssertIsHTMLElement(target);\n\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll(`[tuiOption]`));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiDataList]`,\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: 3.0 Move into separate module\n@Directive({\n selector: `tui-data-list[tuiDataListDropdownManager]`,\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit(): void {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, `mouseenter`).pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, `keydown`),\n typedFromEvent(nativeElement, `keydown`),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, `keydown`).pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, `click`).pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, `focus`),\n typedFromEvent(element, `blur`),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === `focus` ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number): void {\n const dropdown = this.dropdowns.toArray()[index];\n const content = dropdown?.dropdownBoxRef?.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: `tui-opt-group`,\n host: {\n role: `group`,\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding(`attr.data-label`)\n @tuiDefaultProp()\n label = ``;\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -12,30 +12,30 @@ import { filter, switchMapTo, take, takeUntil } from 'rxjs/operators';
12
12
  import { TuiIdService } from '@taiga-ui/cdk/services';
13
13
  import { TuiButtonModule } from '@taiga-ui/core/components/button';
14
14
 
15
- const TUI_DIALOGS_CLOSE = new InjectionToken('A stream to close dialogs', {
15
+ const TUI_DIALOGS_CLOSE = new InjectionToken(`A stream to close dialogs`, {
16
16
  factory: () => EMPTY,
17
17
  });
18
18
  const SCROLLBAR_PLACEHOLDER = 17;
19
19
  // eslint-disable-next-line @typescript-eslint/naming-convention
20
20
  function dialogCloseStreamFactory(documentRef, windowRef, { nativeElement }, close$, destroy$, { dismissible }) {
21
21
  return dismissible
22
- ? merge(typedFromEvent(nativeElement, 'click').pipe(filter(isCurrentTarget)), typedFromEvent(documentRef, 'keydown').pipe(
22
+ ? merge(typedFromEvent(nativeElement, `click`).pipe(filter(isCurrentTarget)), typedFromEvent(documentRef, `keydown`).pipe(
23
23
  // TODO: iframe warning
24
- filter(({ key, target }) => key === 'Escape' &&
24
+ filter(({ key, target }) => key === `Escape` &&
25
25
  target instanceof Element &&
26
26
  (!containsOrAfter(nativeElement, target) ||
27
- nativeElement.contains(target)))), typedFromEvent(documentRef, 'mousedown').pipe(
27
+ nativeElement.contains(target)))), typedFromEvent(documentRef, `mousedown`).pipe(
28
28
  // TODO: iframe warning
29
29
  filter(({ target, clientX }) => target instanceof Element &&
30
30
  tuiGetViewportWidth(windowRef) - clientX >
31
31
  SCROLLBAR_PLACEHOLDER &&
32
- !containsOrAfter(nativeElement, target)), switchMapTo(typedFromEvent(documentRef, 'mouseup').pipe(take(1),
32
+ !containsOrAfter(nativeElement, target)), switchMapTo(typedFromEvent(documentRef, `mouseup`).pipe(take(1),
33
33
  // TODO: iframe warning
34
34
  filter(({ target }) => target instanceof Element &&
35
35
  !containsOrAfter(nativeElement, target))))), close$).pipe(takeUntil(destroy$))
36
36
  : close$;
37
37
  }
38
- const TUI_DIALOG_CLOSE_STREAM = new InjectionToken('Dialogs closing stream');
38
+ const TUI_DIALOG_CLOSE_STREAM = new InjectionToken(`Dialogs closing stream`);
39
39
  const TUI_DIALOG_PROVIDERS = [
40
40
  TuiDestroyService,
41
41
  {
@@ -52,7 +52,7 @@ const TUI_DIALOG_PROVIDERS = [
52
52
  },
53
53
  ];
54
54
 
55
- const REQUIRED_ERROR = new Error('Required dialog was dismissed');
55
+ const REQUIRED_ERROR = new Error(`Required dialog was dismissed`);
56
56
  // @dynamic
57
57
  let TuiDialogComponent = class TuiDialogComponent {
58
58
  constructor(duration, isMobile, context, close$, closeWord$) {
@@ -61,16 +61,16 @@ let TuiDialogComponent = class TuiDialogComponent {
61
61
  this.context = context;
62
62
  this.closeWord$ = closeWord$;
63
63
  this.animation = {
64
- value: '',
64
+ value: ``,
65
65
  params: {
66
- start: '40px',
66
+ start: `40px`,
67
67
  duration: this.duration,
68
68
  },
69
69
  };
70
70
  this.fullscreenAnimation = {
71
- value: '',
71
+ value: ``,
72
72
  params: {
73
- start: '100vh',
73
+ start: `100vh`,
74
74
  duration: this.duration,
75
75
  },
76
76
  };
@@ -85,7 +85,7 @@ let TuiDialogComponent = class TuiDialogComponent {
85
85
  return this.context.header;
86
86
  }
87
87
  get slideInTop() {
88
- return this.size === 'fullscreen' || this.size === 'page' || this.isMobile
88
+ return this.size === `fullscreen` || this.size === `page` || this.isMobile
89
89
  ? this.fullscreenAnimation
90
90
  : this.animation;
91
91
  }
@@ -106,18 +106,18 @@ TuiDialogComponent.ctorParameters = () => [
106
106
  { type: Observable, decorators: [{ type: Inject, args: [TUI_CLOSE_WORD,] }] }
107
107
  ];
108
108
  __decorate([
109
- HostBinding('attr.data-size')
109
+ HostBinding(`attr.data-size`)
110
110
  ], TuiDialogComponent.prototype, "size", null);
111
111
  __decorate([
112
- HostBinding('class._centered')
112
+ HostBinding(`class._centered`)
113
113
  ], TuiDialogComponent.prototype, "header", null);
114
114
  __decorate([
115
- HostBinding('@tuiSlideInTop'),
116
- HostBinding('@tuiFadeIn')
115
+ HostBinding(`@tuiSlideInTop`),
116
+ HostBinding(`@tuiFadeIn`)
117
117
  ], TuiDialogComponent.prototype, "slideInTop", null);
118
118
  TuiDialogComponent = __decorate([
119
119
  Component({
120
- selector: 'tui-dialog',
120
+ selector: `tui-dialog`,
121
121
  template: "<header\n *ngIf=\"header\"\n polymorpheus-outlet\n class=\"t-header\"\n [content]=\"header\"\n [context]=\"context\"\n></header>\n<div class=\"t-content\">\n <h2\n class=\"t-heading\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section\n polymorpheus-outlet\n [context]=\"context\"\n [content]=\"context.content\"\n >\n <ng-template let-text>\n {{ text }}\n <div class=\"t-buttons\">\n <button\n tuiButton\n size=\"m\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ $any(context.data)?.button || 'OK' }}\n </button>\n </div>\n </ng-template>\n </section>\n</div>\n<div\n *ngIf=\"context.closeable\"\n class=\"t-wrapper\"\n>\n <button\n tuiIconButton\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-dialog__close\"\n size=\"s\"\n appearance=\"\"\n icon=\"tuiIconCloseLarge\"\n shape=\"rounded\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"close()\"\n ></button>\n</div>\n",
122
122
  changeDetection: ChangeDetectionStrategy.OnPush,
123
123
  providers: TUI_DIALOG_PROVIDERS,
@@ -133,12 +133,12 @@ TuiDialogComponent = __decorate([
133
133
 
134
134
  const DIALOG = new PolymorpheusComponent(TuiDialogComponent);
135
135
  const DEFAULT_OPTIONS = {
136
- size: 'm',
136
+ size: `m`,
137
137
  required: false,
138
138
  closeable: true,
139
139
  dismissible: true,
140
- label: '',
141
- header: '',
140
+ label: ``,
141
+ header: ``,
142
142
  };
143
143
  let TuiDialogService = class TuiDialogService extends AbstractTuiDialogService {
144
144
  constructor() {
@@ -150,7 +150,7 @@ let TuiDialogService = class TuiDialogService extends AbstractTuiDialogService {
150
150
  TuiDialogService.ɵprov = ɵɵdefineInjectable({ factory: function TuiDialogService_Factory() { return new TuiDialogService(ɵɵinject(TuiIdService)); }, token: TuiDialogService, providedIn: "root" });
151
151
  TuiDialogService = __decorate([
152
152
  Injectable({
153
- providedIn: 'root',
153
+ providedIn: `root`,
154
154
  })
155
155
  ], TuiDialogService);
156
156
 
@@ -158,15 +158,15 @@ let TuiDialogDirective = class TuiDialogDirective extends AbstractTuiDialogDirec
158
158
  };
159
159
  TuiDialogDirective = __decorate([
160
160
  Directive({
161
- selector: 'ng-template[tuiDialog]',
161
+ selector: `ng-template[tuiDialog]`,
162
162
  providers: [
163
163
  {
164
164
  provide: AbstractTuiDialogService,
165
165
  useExisting: TuiDialogService,
166
166
  },
167
167
  ],
168
- inputs: ['options: tuiDialogOptions', 'open: tuiDialog'],
169
- outputs: ['openChange: tuiDialogChange'],
168
+ inputs: [`options: tuiDialogOptions`, `open: tuiDialog`],
169
+ outputs: [`openChange: tuiDialogChange`],
170
170
  })
171
171
  ], TuiDialogDirective);
172
172
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-dialog.js","sources":["ng://@taiga-ui/core/components/dialog/dialog.providers.ts","ng://@taiga-ui/core/components/dialog/dialog.component.ts","ng://@taiga-ui/core/components/dialog/dialog.service.ts","ng://@taiga-ui/core/components/dialog/dialog.directive.ts","ng://@taiga-ui/core/components/dialog/dialog.module.ts","ng://@taiga-ui/core/components/dialog/taiga-ui-core-components-dialog.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n containsOrAfter,\n isCurrentTarget,\n TuiDestroyService,\n TuiDialog,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {tuiGetViewportWidth} from '@taiga-ui/core/utils/dom';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, switchMapTo, take, takeUntil} from 'rxjs/operators';\n\nexport const TUI_DIALOGS_CLOSE = new InjectionToken<Observable<unknown>>(\n 'A stream to close dialogs',\n {\n factory: () => EMPTY,\n },\n);\n\nconst SCROLLBAR_PLACEHOLDER = 17;\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dialogCloseStreamFactory(\n documentRef: Document,\n windowRef: Window,\n {nativeElement}: ElementRef<HTMLElement>,\n close$: Observable<void>,\n destroy$: Observable<void>,\n {dismissible}: TuiDialog<TuiDialogOptions<unknown>, unknown>,\n): Observable<unknown> {\n return dismissible\n ? merge(\n typedFromEvent(nativeElement, 'click').pipe(filter(isCurrentTarget)),\n typedFromEvent(documentRef, 'keydown').pipe(\n // TODO: iframe warning\n filter(\n ({key, target}) =>\n key === 'Escape' &&\n target instanceof Element &&\n (!containsOrAfter(nativeElement, target) ||\n nativeElement.contains(target)),\n ),\n ),\n typedFromEvent(documentRef, 'mousedown').pipe(\n // TODO: iframe warning\n filter(\n ({target, clientX}) =>\n target instanceof Element &&\n tuiGetViewportWidth(windowRef) - clientX >\n SCROLLBAR_PLACEHOLDER &&\n !containsOrAfter(nativeElement, target),\n ),\n switchMapTo(\n typedFromEvent(documentRef, 'mouseup').pipe(\n take(1),\n // TODO: iframe warning\n filter(\n ({target}) =>\n target instanceof Element &&\n !containsOrAfter(nativeElement, target),\n ),\n ),\n ),\n ),\n close$,\n ).pipe(takeUntil(destroy$))\n : close$;\n}\n\nexport const TUI_DIALOG_CLOSE_STREAM = new InjectionToken<Observable<unknown>>(\n 'Dialogs closing stream',\n);\nexport const TUI_DIALOG_PROVIDERS: Provider[] = [\n TuiDestroyService,\n {\n provide: TUI_DIALOG_CLOSE_STREAM,\n deps: [\n DOCUMENT,\n WINDOW,\n ElementRef,\n TUI_DIALOGS_CLOSE,\n TuiDestroyService,\n POLYMORPHEUS_CONTEXT,\n ],\n useFactory: dialogCloseStreamFactory,\n },\n];\n","import {ChangeDetectionStrategy, Component, HostBinding, Inject} from '@angular/core';\nimport {TUI_IS_MOBILE, TuiDialog} from '@taiga-ui/cdk';\nimport {tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiAnimationOptions, TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATIONS_DURATION, TUI_CLOSE_WORD} from '@taiga-ui/core/tokens';\nimport {TuiDialogSize} from '@taiga-ui/core/types';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TUI_DIALOG_CLOSE_STREAM, TUI_DIALOG_PROVIDERS} from './dialog.providers';\n\nconst REQUIRED_ERROR = new Error('Required dialog was dismissed');\n\n// @dynamic\n@Component({\n selector: 'tui-dialog',\n templateUrl: './dialog.template.html',\n styleUrls: ['./dialog.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_DIALOG_PROVIDERS,\n animations: [tuiSlideInTop, tuiFadeIn],\n})\nexport class TuiDialogComponent<O, I> {\n private readonly animation = {\n value: '',\n params: {\n start: '40px',\n duration: this.duration,\n },\n } as const;\n\n private readonly fullscreenAnimation = {\n value: '',\n params: {\n start: '100vh',\n duration: this.duration,\n },\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) private readonly duration: number,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiDialogOptions<I>, O>,\n @Inject(TUI_DIALOG_CLOSE_STREAM)\n close$: Observable<unknown>,\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n ) {\n close$.subscribe(() => {\n this.close();\n });\n }\n\n @HostBinding('attr.data-size')\n get size(): TuiDialogSize {\n return this.context.size;\n }\n\n @HostBinding('class._centered')\n get header(): PolymorpheusContent {\n return this.context.header;\n }\n\n @HostBinding('@tuiSlideInTop')\n @HostBinding('@tuiFadeIn')\n get slideInTop(): TuiAnimationOptions {\n return this.size === 'fullscreen' || this.size === 'page' || this.isMobile\n ? this.fullscreenAnimation\n : this.animation;\n }\n\n close(): void {\n if (this.context.required) {\n this.context.$implicit.error(REQUIRED_ERROR);\n } else {\n this.context.$implicit.complete();\n }\n }\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogComponent} from './dialog.component';\n\nconst DIALOG = new PolymorpheusComponent(TuiDialogComponent);\nconst DEFAULT_OPTIONS = {\n size: 'm',\n required: false,\n closeable: true,\n dismissible: true,\n label: '',\n header: '',\n} as const;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiDialogService extends AbstractTuiDialogService<TuiDialogOptions<any>> {\n protected readonly component = DIALOG;\n protected readonly defaultOptions: TuiDialogOptions<any> = DEFAULT_OPTIONS as any;\n}\n","import {Directive} from '@angular/core';\nimport {AbstractTuiDialogDirective, AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\n\nimport {TuiDialogService} from './dialog.service';\n\n@Directive({\n selector: 'ng-template[tuiDialog]',\n providers: [\n {\n provide: AbstractTuiDialogService,\n useExisting: TuiDialogService,\n },\n ],\n inputs: ['options: tuiDialogOptions', 'open: tuiDialog'],\n outputs: ['openChange: tuiDialogChange'],\n})\nexport class TuiDialogDirective<T> extends AbstractTuiDialogDirective<\n TuiDialogOptions<T>\n> {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TUI_DIALOGS, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogComponent} from './dialog.component';\nimport {TuiDialogDirective} from './dialog.directive';\nimport {TuiDialogService} from './dialog.service';\n\n@NgModule({\n imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiPreventDefaultModule],\n declarations: [TuiDialogComponent, TuiDialogDirective],\n exports: [TuiDialogComponent, TuiDialogDirective],\n entryComponents: [TuiDialogComponent],\n providers: [\n {\n provide: TUI_DIALOGS,\n useExisting: TuiDialogService,\n multi: true,\n },\n ],\n})\nexport class TuiDialogModule {}\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-core-components-dialog.js","sources":["ng://@taiga-ui/core/components/dialog/dialog.providers.ts","ng://@taiga-ui/core/components/dialog/dialog.component.ts","ng://@taiga-ui/core/components/dialog/dialog.service.ts","ng://@taiga-ui/core/components/dialog/dialog.directive.ts","ng://@taiga-ui/core/components/dialog/dialog.module.ts","ng://@taiga-ui/core/components/dialog/taiga-ui-core-components-dialog.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n containsOrAfter,\n isCurrentTarget,\n TuiDestroyService,\n TuiDialog,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {tuiGetViewportWidth} from '@taiga-ui/core/utils/dom';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, switchMapTo, take, takeUntil} from 'rxjs/operators';\n\nexport const TUI_DIALOGS_CLOSE = new InjectionToken<Observable<unknown>>(\n `A stream to close dialogs`,\n {\n factory: () => EMPTY,\n },\n);\n\nconst SCROLLBAR_PLACEHOLDER = 17;\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dialogCloseStreamFactory(\n documentRef: Document,\n windowRef: Window,\n {nativeElement}: ElementRef<HTMLElement>,\n close$: Observable<void>,\n destroy$: Observable<void>,\n {dismissible}: TuiDialog<TuiDialogOptions<unknown>, unknown>,\n): Observable<unknown> {\n return dismissible\n ? merge(\n typedFromEvent(nativeElement, `click`).pipe(filter(isCurrentTarget)),\n typedFromEvent(documentRef, `keydown`).pipe(\n // TODO: iframe warning\n filter(\n ({key, target}) =>\n key === `Escape` &&\n target instanceof Element &&\n (!containsOrAfter(nativeElement, target) ||\n nativeElement.contains(target)),\n ),\n ),\n typedFromEvent(documentRef, `mousedown`).pipe(\n // TODO: iframe warning\n filter(\n ({target, clientX}) =>\n target instanceof Element &&\n tuiGetViewportWidth(windowRef) - clientX >\n SCROLLBAR_PLACEHOLDER &&\n !containsOrAfter(nativeElement, target),\n ),\n switchMapTo(\n typedFromEvent(documentRef, `mouseup`).pipe(\n take(1),\n // TODO: iframe warning\n filter(\n ({target}) =>\n target instanceof Element &&\n !containsOrAfter(nativeElement, target),\n ),\n ),\n ),\n ),\n close$,\n ).pipe(takeUntil(destroy$))\n : close$;\n}\n\nexport const TUI_DIALOG_CLOSE_STREAM = new InjectionToken<Observable<unknown>>(\n `Dialogs closing stream`,\n);\nexport const TUI_DIALOG_PROVIDERS: Provider[] = [\n TuiDestroyService,\n {\n provide: TUI_DIALOG_CLOSE_STREAM,\n deps: [\n DOCUMENT,\n WINDOW,\n ElementRef,\n TUI_DIALOGS_CLOSE,\n TuiDestroyService,\n POLYMORPHEUS_CONTEXT,\n ],\n useFactory: dialogCloseStreamFactory,\n },\n];\n","import {ChangeDetectionStrategy, Component, HostBinding, Inject} from '@angular/core';\nimport {TUI_IS_MOBILE, TuiDialog} from '@taiga-ui/cdk';\nimport {tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiAnimationOptions, TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATIONS_DURATION, TUI_CLOSE_WORD} from '@taiga-ui/core/tokens';\nimport {TuiDialogSize} from '@taiga-ui/core/types';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TUI_DIALOG_CLOSE_STREAM, TUI_DIALOG_PROVIDERS} from './dialog.providers';\n\nconst REQUIRED_ERROR = new Error(`Required dialog was dismissed`);\n\n// @dynamic\n@Component({\n selector: `tui-dialog`,\n templateUrl: `./dialog.template.html`,\n styleUrls: [`./dialog.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_DIALOG_PROVIDERS,\n animations: [tuiSlideInTop, tuiFadeIn],\n})\nexport class TuiDialogComponent<O, I> {\n private readonly animation = {\n value: ``,\n params: {\n start: `40px`,\n duration: this.duration,\n },\n } as const;\n\n private readonly fullscreenAnimation = {\n value: ``,\n params: {\n start: `100vh`,\n duration: this.duration,\n },\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) private readonly duration: number,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiDialogOptions<I>, O>,\n @Inject(TUI_DIALOG_CLOSE_STREAM)\n close$: Observable<unknown>,\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n ) {\n close$.subscribe(() => {\n this.close();\n });\n }\n\n @HostBinding(`attr.data-size`)\n get size(): TuiDialogSize {\n return this.context.size;\n }\n\n @HostBinding(`class._centered`)\n get header(): PolymorpheusContent {\n return this.context.header;\n }\n\n @HostBinding(`@tuiSlideInTop`)\n @HostBinding(`@tuiFadeIn`)\n get slideInTop(): TuiAnimationOptions {\n return this.size === `fullscreen` || this.size === `page` || this.isMobile\n ? this.fullscreenAnimation\n : this.animation;\n }\n\n close(): void {\n if (this.context.required) {\n this.context.$implicit.error(REQUIRED_ERROR);\n } else {\n this.context.$implicit.complete();\n }\n }\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogComponent} from './dialog.component';\n\nconst DIALOG = new PolymorpheusComponent(TuiDialogComponent);\nconst DEFAULT_OPTIONS = {\n size: `m`,\n required: false,\n closeable: true,\n dismissible: true,\n label: ``,\n header: ``,\n} as const;\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiDialogService extends AbstractTuiDialogService<TuiDialogOptions<any>> {\n protected readonly component = DIALOG;\n protected readonly defaultOptions: TuiDialogOptions<any> = DEFAULT_OPTIONS as any;\n}\n","import {Directive} from '@angular/core';\nimport {AbstractTuiDialogDirective, AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {TuiDialogOptions} from '@taiga-ui/core/interfaces';\n\nimport {TuiDialogService} from './dialog.service';\n\n@Directive({\n selector: `ng-template[tuiDialog]`,\n providers: [\n {\n provide: AbstractTuiDialogService,\n useExisting: TuiDialogService,\n },\n ],\n inputs: [`options: tuiDialogOptions`, `open: tuiDialog`],\n outputs: [`openChange: tuiDialogChange`],\n})\nexport class TuiDialogDirective<T> extends AbstractTuiDialogDirective<\n TuiDialogOptions<T>\n> {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TUI_DIALOGS, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogComponent} from './dialog.component';\nimport {TuiDialogDirective} from './dialog.directive';\nimport {TuiDialogService} from './dialog.service';\n\n@NgModule({\n imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiPreventDefaultModule],\n declarations: [TuiDialogComponent, TuiDialogDirective],\n exports: [TuiDialogComponent, TuiDialogDirective],\n entryComponents: [TuiDialogComponent],\n providers: [\n {\n provide: TUI_DIALOGS,\n useExisting: TuiDialogService,\n multi: true,\n },\n ],\n})\nexport class TuiDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAgBa,iBAAiB,GAAG,IAAI,cAAc,CAC/C,2BAA2B,EAC3B;IACI,OAAO,EAAE,MAAM,KAAK;CACvB,EACH;AAEF,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC;SACgB,wBAAwB,CACpC,WAAqB,EACrB,SAAiB,EACjB,EAAC,aAAa,EAA0B,EACxC,MAAwB,EACxB,QAA0B,EAC1B,EAAC,WAAW,EAAgD;IAE5D,OAAO,WAAW;UACZ,KAAK,CACD,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EACpE,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,IAAI;;QAEvC,MAAM,CACF,CAAC,EAAC,GAAG,EAAE,MAAM,EAAC,KACV,GAAG,KAAK,QAAQ;YAChB,MAAM,YAAY,OAAO;aACxB,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC;gBACpC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAC1C,CACJ,EACD,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,IAAI;;QAEzC,MAAM,CACF,CAAC,EAAC,MAAM,EAAE,OAAO,EAAC,KACd,MAAM,YAAY,OAAO;YACzB,mBAAmB,CAAC,SAAS,CAAC,GAAG,OAAO;gBACpC,qBAAqB;YACzB,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,CAC9C,EACD,WAAW,CACP,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,IAAI,CACvC,IAAI,CAAC,CAAC,CAAC;;QAEP,MAAM,CACF,CAAC,EAAC,MAAM,EAAC,KACL,MAAM,YAAY,OAAO;YACzB,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,CAC9C,CACJ,CACJ,CACJ,EACD,MAAM,CACT,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;UAC3B,MAAM,CAAC;AACjB,CAAC;MAEY,uBAAuB,GAAG,IAAI,cAAc,CACrD,wBAAwB,EAC1B;MACW,oBAAoB,GAAe;IAC5C,iBAAiB;IACjB;QACI,OAAO,EAAE,uBAAuB;QAChC,IAAI,EAAE;YACF,QAAQ;YACR,MAAM;YACN,UAAU;YACV,iBAAiB;YACjB,iBAAiB;YACjB,oBAAoB;SACvB;QACD,UAAU,EAAE,wBAAwB;KACvC;;;AC9EL,MAAM,cAAc,GAAG,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;AAElE;IASa,kBAAkB,GAA/B,MAAa,kBAAkB;IAiB3B,YACsD,QAAgB,EAC1B,QAAiB,EAEhD,OAA0C,EAEnD,MAA2B,EACM,UAA8B;QANb,aAAQ,GAAR,QAAQ,CAAQ;QAC1B,aAAQ,GAAR,QAAQ,CAAS;QAEhD,YAAO,GAAP,OAAO,CAAmC;QAGlB,eAAU,GAAV,UAAU,CAAoB;QAvBlD,cAAS,GAAG;YACzB,KAAK,EAAE,EAAE;YACT,MAAM,EAAE;gBACJ,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B;SACK,CAAC;QAEM,wBAAmB,GAAG;YACnC,KAAK,EAAE,EAAE;YACT,MAAM,EAAE;gBACJ,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B;SACK,CAAC;QAWP,MAAM,CAAC,SAAS,CAAC;YACb,IAAI,CAAC,KAAK,EAAE,CAAC;SAChB,CAAC,CAAC;KACN;IAGD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;KAC5B;IAGD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;KAC9B;IAID,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ;cACpE,IAAI,CAAC,mBAAmB;cACxB,IAAI,CAAC,SAAS,CAAC;KACxB;IAED,KAAK;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;SAChD;aAAM;YACH,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;SACrC;KACJ;EACJ;;yCAtCQ,MAAM,SAAC,uBAAuB;0CAC9B,MAAM,SAAC,aAAa;4CACpB,MAAM,SAAC,oBAAoB;YAGpB,UAAU,uBADjB,MAAM,SAAC,uBAAuB;YAEc,UAAU,uBAAtD,MAAM,SAAC,cAAc;;AAQ1B;IADC,WAAW,CAAC,gBAAgB,CAAC;8CAG7B;AAGD;IADC,WAAW,CAAC,iBAAiB,CAAC;gDAG9B;AAID;IAFC,WAAW,CAAC,gBAAgB,CAAC;IAC7B,WAAW,CAAC,YAAY,CAAC;oDAKzB;AA/CQ,kBAAkB;IAR9B,SAAS,CAAC;QACP,QAAQ,EAAE,YAAY;QACtB,8uCAAqC;QAErC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,oBAAoB;QAC/B,UAAU,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC;;KACzC,CAAC;IAmBO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAC/B,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,oBAAoB,CAAC,CAAA;IAE5B,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAE/B,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;GAxBlB,kBAAkB,CAwD9B;;ACvED,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;AAC7D,MAAM,eAAe,GAAG;IACpB,IAAI,EAAE,GAAG;IACT,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;CACJ,CAAC;IAKE,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,wBAA+C;IAArF;;QACuB,cAAS,GAAG,MAAM,CAAC;QACnB,mBAAc,GAA0B,eAAsB,CAAC;KACrF;EAAA;;AAHY,gBAAgB;IAH5B,UAAU,CAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;GACW,gBAAgB,CAG5B;;ICNY,kBAAkB,GAA/B,MAAa,kBAAsB,SAAQ,0BAE1C;EAAG;AAFS,kBAAkB;IAX9B,SAAS,CAAC;QACP,QAAQ,EAAE,wBAAwB;QAClC,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,wBAAwB;gBACjC,WAAW,EAAE,gBAAgB;aAChC;SACJ;QACD,MAAM,EAAE,CAAC,2BAA2B,EAAE,iBAAiB,CAAC;QACxD,OAAO,EAAE,CAAC,6BAA6B,CAAC;KAC3C,CAAC;GACW,kBAAkB,CAE3B;;ICIS,eAAe,GAA5B,MAAa,eAAe;EAAG;AAAlB,eAAe;IAb3B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,uBAAuB,CAAC;QACrF,YAAY,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;QACtD,OAAO,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;QACjD,eAAe,EAAE,CAAC,kBAAkB,CAAC;QACrC,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,gBAAgB;gBAC7B,KAAK,EAAE,IAAI;aACd;SACJ;KACJ,CAAC;GACW,eAAe,CAAG;;ACvB/B;;;;;;"}
@@ -31,14 +31,14 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
31
31
  * Is previous position on top (to prevent jumping up and down on scroll)
32
32
  */
33
33
  this.prevDirectionIsTop = false;
34
- merge(animationFrame$.pipe(throttleTime(POLLING_TIME)), this.directive.refresh$, fromEvent(this.windowRef, 'resize'))
34
+ merge(animationFrame$.pipe(throttleTime(POLLING_TIME)), this.directive.refresh$, fromEvent(this.windowRef, `resize`))
35
35
  .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
36
36
  .subscribe(() => {
37
37
  this.calculatePositionAndSize();
38
38
  });
39
39
  }
40
40
  get overscroll() {
41
- return this.inModal ? 'all' : 'scroll';
41
+ return this.inModal ? `all` : `scroll`;
42
42
  }
43
43
  getContext(context, activeZone) {
44
44
  return Object.assign(Object.assign({}, context), { activeZone });
@@ -54,11 +54,11 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
54
54
  }
55
55
  get inModal() {
56
56
  // @awful TODO: get rid of component tag name dependency
57
- return !!this.directive.host.closest('tui-dialog-host');
57
+ return !!this.directive.host.closest(`tui-dialog-host`);
58
58
  }
59
59
  get inOption() {
60
60
  // @awful TODO: get rid of component tag name dependency
61
- return !!this.directive.host.closest('[tuiOption]');
61
+ return !!this.directive.host.closest(`[tuiOption]`);
62
62
  }
63
63
  calculatePositionAndSize() {
64
64
  const { clientRect } = this.directive;
@@ -66,7 +66,7 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
66
66
  const hostRect = this.directive.fixed
67
67
  ? this.portalHost.fixedPositionOffset()
68
68
  : this.portalHost.clientRect;
69
- style.position = this.directive.fixed ? 'fixed' : 'absolute';
69
+ style.position = this.directive.fixed ? `fixed` : `absolute`;
70
70
  this.calculateVerticalPosition(style, clientRect, hostRect);
71
71
  this.calculateHorizontalPosition(style, clientRect, hostRect);
72
72
  this.calculateWidth(style, clientRect);
@@ -80,23 +80,23 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
80
80
  const isDropdownSizeActuallyFitsViewport = dropdownRect.right <= screenWidth && dropdownRect.left >= 0;
81
81
  let finalAlign = this.directive.align;
82
82
  switch (this.directive.align) {
83
- case 'left':
83
+ case `left`:
84
84
  if (isDropdownSizeHypotheticallyFitsViewport &&
85
85
  dropdownRect.right > screenWidth) {
86
- finalAlign = 'right';
86
+ finalAlign = `right`;
87
87
  }
88
88
  break;
89
- case 'right':
89
+ case `right`:
90
90
  if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {
91
- finalAlign = 'left';
91
+ finalAlign = `left`;
92
92
  }
93
93
  break;
94
94
  }
95
- if (style.right === 'auto' && isDropdownSizeActuallyFitsViewport) {
96
- finalAlign = 'left';
95
+ if (style.right === `auto` && isDropdownSizeActuallyFitsViewport) {
96
+ finalAlign = `left`;
97
97
  }
98
- if (style.left === 'auto' && isDropdownSizeActuallyFitsViewport) {
99
- finalAlign = 'right';
98
+ if (style.left === `auto` && isDropdownSizeActuallyFitsViewport) {
99
+ finalAlign = `right`;
100
100
  }
101
101
  return finalAlign;
102
102
  }
@@ -115,26 +115,26 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
115
115
  const right = Math.floor(hostRect.right - directiveRect.right - offset);
116
116
  const viewportWidth = tuiGetViewportWidth(this.windowRef);
117
117
  switch (this.getFinalAlign(style, directiveRect)) {
118
- case 'left':
118
+ case `left`:
119
119
  if (right + DEFAULT_MARGIN > viewportWidth ||
120
120
  inRange(left + DEFAULT_MARGIN, 0, viewportWidth)) {
121
121
  style.left = px(left);
122
- style.right = 'auto';
122
+ style.right = `auto`;
123
123
  }
124
124
  else {
125
- style.left = 'auto';
125
+ style.left = `auto`;
126
126
  style.right = px(right);
127
127
  }
128
128
  break;
129
- case 'right':
129
+ case `right`:
130
130
  if (inRange(right + DEFAULT_MARGIN, 0, viewportWidth) ||
131
131
  left + DEFAULT_MARGIN > viewportWidth) {
132
- style.left = 'auto';
132
+ style.left = `auto`;
133
133
  style.right = px(right);
134
134
  }
135
135
  else {
136
136
  style.left = px(left);
137
- style.right = 'auto';
137
+ style.right = `auto`;
138
138
  }
139
139
  break;
140
140
  }
@@ -157,11 +157,11 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
157
157
  const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;
158
158
  const finalDirection = this.getFinalDirection(directiveRect);
159
159
  const optionOffset = this.inOption ? DEFAULT_MARGIN * 2 : 0;
160
- this.prevDirectionIsTop = finalDirection === 'top';
161
- if (finalDirection === 'top') {
160
+ this.prevDirectionIsTop = finalDirection === `top`;
161
+ if (finalDirection === `top`) {
162
162
  this.dropdownAnimation = this.animationBottom;
163
163
  style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));
164
- style.top = 'auto';
164
+ style.top = `auto`;
165
165
  style.bottom = px(hostRect.bottom -
166
166
  directiveRect.top -
167
167
  DEFAULT_MARGIN +
@@ -176,7 +176,7 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
176
176
  DEFAULT_MARGIN +
177
177
  offset -
178
178
  optionOffset);
179
- style.bottom = 'auto';
179
+ style.bottom = `auto`;
180
180
  }
181
181
  }
182
182
  getFinalDirection(directiveRect) {
@@ -190,14 +190,14 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
190
190
  let finalDirection = null;
191
191
  // Given direction is applied if we can fit the box in the limits that way
192
192
  switch (this.directive.direction) {
193
- case 'top':
193
+ case `top`:
194
194
  if (topAvailableHeight >= this.directive.minHeight) {
195
- finalDirection = 'top';
195
+ finalDirection = `top`;
196
196
  }
197
197
  break;
198
- case 'bottom':
198
+ case `bottom`:
199
199
  if (bottomAvailableHeight >= this.directive.minHeight) {
200
- finalDirection = 'bottom';
200
+ finalDirection = `bottom`;
201
201
  }
202
202
  break;
203
203
  }
@@ -212,15 +212,15 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
212
212
  // If there is enough space to fit below without scroll,
213
213
  // choose 'bottom', unless it was previously on the top
214
214
  if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {
215
- finalDirection = 'top';
215
+ finalDirection = `top`;
216
216
  }
217
217
  else if (bottomAvailableHeight >= visualHeight) {
218
- finalDirection = 'bottom';
218
+ finalDirection = `bottom`;
219
219
  }
220
220
  else {
221
221
  // Corner case — select direction with more space
222
222
  finalDirection =
223
- bottomAvailableHeight >= topAvailableHeight ? 'bottom' : 'top';
223
+ bottomAvailableHeight >= topAvailableHeight ? `bottom` : `top`;
224
224
  }
225
225
  }
226
226
  return finalDirection;
@@ -233,16 +233,16 @@ let TuiDropdownBoxComponent = class TuiDropdownBoxComponent {
233
233
  */
234
234
  calculateWidth(style, directiveRect) {
235
235
  style.width =
236
- this.directive.limitMinWidth === 'fixed' && !this.directive.sided
236
+ this.directive.limitMinWidth === `fixed` && !this.directive.sided
237
237
  ? px(directiveRect.width)
238
- : '';
239
- if (this.directive.limitMinWidth === 'min' && !this.directive.sided) {
238
+ : ``;
239
+ if (this.directive.limitMinWidth === `min` && !this.directive.sided) {
240
240
  style.minWidth = px(directiveRect.width);
241
241
  style.maxWidth = px(DEFAULT_MAX_WIDTH);
242
242
  return;
243
243
  }
244
- style.minWidth = '';
245
- style.maxWidth = '';
244
+ style.minWidth = ``;
245
+ style.maxWidth = ``;
246
246
  }
247
247
  moveFocusOutside(previous) {
248
248
  const { host } = this.directive;
@@ -267,10 +267,10 @@ TuiDropdownBoxComponent.ctorParameters = () => [
267
267
  { type: Observable, decorators: [{ type: Inject, args: [ANIMATION_FRAME,] }] }
268
268
  ];
269
269
  __decorate([
270
- HostBinding('@tuiDropdownAnimation')
270
+ HostBinding(`@tuiDropdownAnimation`)
271
271
  ], TuiDropdownBoxComponent.prototype, "dropdownAnimation", void 0);
272
272
  __decorate([
273
- ViewChild('content', { read: ElementRef })
273
+ ViewChild(`content`, { read: ElementRef })
274
274
  ], TuiDropdownBoxComponent.prototype, "contentElementRef", void 0);
275
275
  __decorate([
276
276
  tuiPure
@@ -283,12 +283,12 @@ __decorate([
283
283
  ], TuiDropdownBoxComponent.prototype, "inOption", null);
284
284
  TuiDropdownBoxComponent = __decorate([
285
285
  Component({
286
- selector: 'tui-dropdown-box',
287
- template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"wrapper\"\n [tuiOverscroll]=\"overscroll\"\n [tuiMode]=\"null\"\n [tuiActiveZoneParent]=\"directive.activeZone || null\"\n>\n <tui-scrollbar class=\"scroll\">\n <div\n tabindex=\"0\"\n (focus)=\"onTopFocus()\"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class=\"content\"\n [content]=\"directive.content\"\n [context]=\"getContext(directive.context, activeZone)\"\n ></div>\n <div\n tabindex=\"0\"\n (focus)=\"onBottomFocus()\"\n ></div>\n </tui-scrollbar>\n</div>\n",
286
+ selector: `tui-dropdown-box`,
287
+ template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"t-wrapper\"\n [tuiOverscroll]=\"overscroll\"\n [tuiMode]=\"null\"\n [tuiActiveZoneParent]=\"directive.activeZone || null\"\n>\n <tui-scrollbar class=\"t-scroll\">\n <div\n tabindex=\"0\"\n (focus)=\"onTopFocus()\"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class=\"t-content\"\n [content]=\"directive.content\"\n [context]=\"getContext(directive.context, activeZone)\"\n ></div>\n <div\n tabindex=\"0\"\n (focus)=\"onBottomFocus()\"\n ></div>\n </tui-scrollbar>\n</div>\n",
288
288
  changeDetection: ChangeDetectionStrategy.Default,
289
289
  providers: [TuiDestroyService],
290
290
  animations: [tuiDropdownAnimation],
291
- styles: [":host{z-index:0;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:absolute;top:0;left:0;display:flex;background-color:#fff;background-color:var(--tui-elevation-01);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-base-03);box-sizing:border-box}:host.ng-animating{pointer-events:none}.content{display:flex;flex-direction:column;max-height:100%}.wrapper{flex-grow:1;max-width:100%;max-height:inherit;overflow:visible}.scroll{height:100%}"]
291
+ styles: [":host{z-index:0;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:absolute;top:0;left:0;display:flex;background-color:#fff;background-color:var(--tui-elevation-01);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-base-03);box-sizing:border-box}:host.ng-animating{pointer-events:none}.t-content{display:flex;flex-direction:column;max-height:100%}.t-wrapper{flex-grow:1;max-width:100%;max-height:inherit;overflow:visible}.t-scroll{height:100%}"]
292
292
  }),
293
293
  __param(0, Inject(TuiDestroyService)),
294
294
  __param(1, Inject(NgZone)),