@taiga-ui/core 2.54.1 → 2.57.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 (756) 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 +12 -12
  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 +17 -17
  12. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-button.umd.min.js +1 -1
  14. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-calendar.umd.js +1 -1
  16. package/bundles/taiga-ui-core-components-calendar.umd.js.map +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 +38 -38
  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.map +1 -1
  27. package/bundles/taiga-ui-core-components-error.umd.js +4 -4
  28. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-expand.umd.js +12 -12
  31. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-group.umd.js +19 -19
  34. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-group.umd.min.js +1 -1
  36. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-hints-host.umd.js +47 -47
  38. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +10 -10
  41. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-label.umd.js +4 -4
  44. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-link.umd.js +11 -11
  47. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-loader.umd.js +4 -4
  50. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  51. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-core-components-notification.umd.js +8 -8
  53. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  54. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  55. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +2 -2
  56. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  57. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +7 -7
  59. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +2 -2
  62. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +54 -54
  65. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +2 -2
  68. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  69. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-core-components-root.umd.js +4 -4
  71. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +26 -26
  74. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  75. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-core-components-scrollbar.umd.js +8 -8
  77. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  78. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-core-components-svg.umd.js +15 -15
  80. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  81. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-core-components-theme-night.umd.js +2 -2
  83. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  84. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-core-components-tooltip.umd.js +7 -7
  86. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  87. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-core-constants.umd.js +17 -17
  89. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  90. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  91. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-core-directives-color.umd.js +6 -6
  93. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  94. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-directives-described-by.umd.js +8 -8
  96. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  97. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js +11 -11
  99. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  100. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-core-directives-dropdown.umd.js +2 -2
  102. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  103. package/bundles/taiga-ui-core-directives-dropdown.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +8 -8
  105. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  106. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  107. package/bundles/taiga-ui-core-directives-hint.umd.js +7 -7
  108. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  109. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  110. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +4 -4
  111. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  112. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +1 -1
  114. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  115. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  116. package/bundles/taiga-ui-core-directives-mode.umd.js +2 -2
  117. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  118. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +5 -5
  120. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  121. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  122. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +1 -1
  123. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  124. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-core-directives-table-mode.umd.js +2 -2
  126. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  127. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  128. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +35 -35
  129. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  130. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-core-directives-wrapper.umd.js +9 -9
  132. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  133. package/bundles/taiga-ui-core-directives-wrapper.umd.min.js.map +1 -1
  134. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  135. package/bundles/taiga-ui-core-enums.umd.min.js.map +1 -1
  136. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -1
  137. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  138. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +1 -1
  140. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  141. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  142. package/bundles/taiga-ui-core-observables.umd.js +2 -2
  143. package/bundles/taiga-ui-core-observables.umd.js.map +1 -1
  144. package/bundles/taiga-ui-core-observables.umd.min.js.map +1 -1
  145. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +1 -1
  146. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  147. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  148. package/bundles/taiga-ui-core-pipes-format-number.umd.js +1 -1
  149. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  150. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  151. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +3 -3
  152. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  153. package/bundles/taiga-ui-core-pipes-format-phone.umd.min.js.map +1 -1
  154. package/bundles/taiga-ui-core-pipes-month.umd.js +1 -1
  155. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  156. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  157. package/bundles/taiga-ui-core-pipes-pluralize.umd.js +1 -1
  158. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  159. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  160. package/bundles/taiga-ui-core-providers.umd.js +2 -2
  161. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  162. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  163. package/bundles/taiga-ui-core-services.umd.js +7 -7
  164. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  165. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-core-tokens.umd.js +40 -40
  167. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  168. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  169. package/bundles/taiga-ui-core-utils-dom.umd.js +16 -16
  170. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  171. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  172. package/bundles/taiga-ui-core-utils-format.umd.js +17 -17
  173. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  174. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  175. package/bundles/taiga-ui-core-utils-mask.umd.js +28 -28
  176. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  177. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  178. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +12 -12
  179. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  180. package/bundles/taiga-ui-core-utils-miscellaneous.umd.min.js.map +1 -1
  181. package/bundles/taiga-ui-core-utils-polyfills.umd.js +4 -4
  182. package/bundles/taiga-ui-core-utils-polyfills.umd.js.map +1 -1
  183. package/bundles/taiga-ui-core-utils-polyfills.umd.min.js.map +1 -1
  184. package/components/alert/taiga-ui-core-components-alert.metadata.json +1 -1
  185. package/components/button/taiga-ui-core-components-button.metadata.json +1 -1
  186. package/components/group/taiga-ui-core-components-group.metadata.json +1 -1
  187. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  188. package/constants/version.d.ts +1 -1
  189. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  190. package/esm2015/abstract/abstract-dropdown.js +12 -12
  191. package/esm2015/abstract/abstract-hint-options.js +2 -2
  192. package/esm2015/abstract/abstract-hint.js +4 -4
  193. package/esm2015/animations/animations.js +140 -140
  194. package/esm2015/components/alert/alert.component.js +11 -11
  195. package/esm2015/components/alert/alert.service.js +3 -3
  196. package/esm2015/components/button/button-options.js +3 -3
  197. package/esm2015/components/button/button.component.js +16 -16
  198. package/esm2015/components/calendar/calendar.component.js +2 -2
  199. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +7 -7
  200. package/esm2015/components/data-list/data-list.component.js +12 -12
  201. package/esm2015/components/data-list/data-list.directive.js +2 -2
  202. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  203. package/esm2015/components/data-list/option/option.component.js +12 -12
  204. package/esm2015/components/dialog/dialog.component.js +12 -12
  205. package/esm2015/components/dialog/dialog.directive.js +4 -4
  206. package/esm2015/components/dialog/dialog.providers.js +7 -7
  207. package/esm2015/components/dialog/dialog.service.js +5 -5
  208. package/esm2015/components/dropdown-box/dropdown-box.component.js +39 -39
  209. package/esm2015/components/error/error.component.js +5 -5
  210. package/esm2015/components/expand/expand-content.directive.js +2 -2
  211. package/esm2015/components/expand/expand.component.js +12 -12
  212. package/esm2015/components/group/group-styles.component.js +2 -2
  213. package/esm2015/components/group/group.component.js +7 -5
  214. package/esm2015/components/group/group.directive.js +15 -15
  215. package/esm2015/components/hints-host/hint-box/hint-box.component.js +46 -46
  216. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  217. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  218. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  219. package/esm2015/components/label/label.component.js +5 -5
  220. package/esm2015/components/link/link.component.js +12 -12
  221. package/esm2015/components/loader/loader-options.js +3 -3
  222. package/esm2015/components/loader/loader.component.js +3 -3
  223. package/esm2015/components/notification/notification.component.js +9 -9
  224. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  225. package/esm2015/components/primitive-checkbox/checkbox-options.js +5 -5
  226. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  227. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  228. package/esm2015/components/primitive-textfield/primitive-textfield-options.js +4 -4
  229. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +28 -28
  230. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  231. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +13 -13
  232. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  233. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  234. package/esm2015/components/root/root.component.js +5 -5
  235. package/esm2015/components/scroll-controls/scroll-controls.component.js +4 -4
  236. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  237. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  238. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  239. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  240. package/esm2015/components/scrollbar/scrollbar.component.js +7 -7
  241. package/esm2015/components/svg/svg.component.js +16 -16
  242. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  243. package/esm2015/components/tooltip/tooltip.component.js +8 -8
  244. package/esm2015/constants/decimal-symbols.js +2 -2
  245. package/esm2015/constants/default-icons-path.js +2 -2
  246. package/esm2015/constants/editing-keys.js +10 -10
  247. package/esm2015/constants/events.js +5 -5
  248. package/esm2015/constants/mask-caret-trap.js +2 -2
  249. package/esm2015/constants/version.js +2 -2
  250. package/esm2015/directives/color/color.directive.js +7 -7
  251. package/esm2015/directives/described-by/described-by.directive.js +5 -5
  252. package/esm2015/directives/described-by/described-by.providers.js +3 -3
  253. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  254. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  255. package/esm2015/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  256. package/esm2015/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  257. package/esm2015/directives/hint/hint-options.js +3 -3
  258. package/esm2015/directives/hint/hint.directive.js +6 -6
  259. package/esm2015/directives/hint-controller/hint-controller.directive.js +7 -7
  260. package/esm2015/directives/hint-controller/hint-controller.provider.js +2 -2
  261. package/esm2015/directives/hint-controller/hint-controller.token.js +2 -2
  262. package/esm2015/directives/manual-hint/manual-hint-options.js +2 -2
  263. package/esm2015/directives/manual-hint/manual-hint.directive.js +4 -4
  264. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  265. package/esm2015/directives/mode/mode.directive.js +3 -3
  266. package/esm2015/directives/pointer-hint/pointer-hint-options.js +2 -2
  267. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +5 -5
  268. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  269. package/esm2015/directives/table-mode/table-mode.directive.js +3 -3
  270. package/esm2015/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  271. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  272. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  273. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  274. package/esm2015/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  275. package/esm2015/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  276. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  277. package/esm2015/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  278. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  279. package/esm2015/directives/textfield-controller/textfield-type.directive.js +5 -5
  280. package/esm2015/directives/textfield-controller/textfield.controller.js +2 -2
  281. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  282. package/esm2015/enums/appearance.js +1 -1
  283. package/esm2015/enums/base-color.js +1 -1
  284. package/esm2015/enums/button-shape.js +1 -1
  285. package/esm2015/enums/decimal.js +1 -1
  286. package/esm2015/enums/dropdown-animation.js +1 -1
  287. package/esm2015/enums/dropdown-width.js +1 -1
  288. package/esm2015/enums/hint-mode.js +1 -1
  289. package/esm2015/enums/interactive-state.js +1 -1
  290. package/esm2015/enums/link-mode.js +1 -1
  291. package/esm2015/enums/notification.js +1 -1
  292. package/esm2015/enums/orientation.js +1 -1
  293. package/esm2015/enums/range-state.js +1 -1
  294. package/esm2015/enums/support-color.js +1 -1
  295. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  296. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  297. package/esm2015/observables/smart-search.js +3 -3
  298. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  299. package/esm2015/pipes/format-number/format-number.pipe.js +2 -2
  300. package/esm2015/pipes/format-phone/format-phone.pipe.js +4 -4
  301. package/esm2015/pipes/month/month.pipe.js +2 -2
  302. package/esm2015/pipes/pluralize/pluralize.pipe.js +2 -2
  303. package/esm2015/providers/is-mobile-resolution.provider.js +2 -2
  304. package/esm2015/providers/mode.provider.js +2 -2
  305. package/esm2015/services/hint.service.js +2 -2
  306. package/esm2015/services/night-theme.service.js +4 -4
  307. package/esm2015/services/svg.service.js +4 -4
  308. package/esm2015/tokens/animation-options.js +2 -2
  309. package/esm2015/tokens/animations-duration.js +2 -2
  310. package/esm2015/tokens/assert-enabled.js +2 -2
  311. package/esm2015/tokens/data-list-accessor.js +2 -2
  312. package/esm2015/tokens/data-list-host.js +2 -2
  313. package/esm2015/tokens/document-or-shadow-root.js +2 -2
  314. package/esm2015/tokens/dropdown-directive.js +2 -2
  315. package/esm2015/tokens/element-ref.js +2 -2
  316. package/esm2015/tokens/first-day-of-week.js +2 -2
  317. package/esm2015/tokens/i18n.js +10 -10
  318. package/esm2015/tokens/icon-place.js +3 -3
  319. package/esm2015/tokens/icons-path.js +2 -2
  320. package/esm2015/tokens/icons.js +2 -2
  321. package/esm2015/tokens/is-mobile-resolution.js +3 -3
  322. package/esm2015/tokens/media.js +2 -2
  323. package/esm2015/tokens/mode.js +2 -2
  324. package/esm2015/tokens/notification-options.js +3 -3
  325. package/esm2015/tokens/number-format.js +3 -3
  326. package/esm2015/tokens/option-content.js +2 -2
  327. package/esm2015/tokens/ordered-short-week-days.js +2 -2
  328. package/esm2015/tokens/scroll-ref.js +2 -2
  329. package/esm2015/tokens/svg-content-processor.js +2 -2
  330. package/esm2015/tokens/svg-src-processor.js +2 -2
  331. package/esm2015/tokens/textfield-appearance.js +2 -2
  332. package/esm2015/tokens/textfield-host.js +2 -2
  333. package/esm2015/tokens/theme.js +3 -3
  334. package/esm2015/tokens/value-accessor.js +2 -2
  335. package/esm2015/utils/dom/are-css-vars-supported.js +2 -2
  336. package/esm2015/utils/dom/check-fixed-position.js +3 -3
  337. package/esm2015/utils/dom/get-safe-area-size.js +4 -4
  338. package/esm2015/utils/dom/process-icon.js +11 -11
  339. package/esm2015/utils/format/format-number.js +5 -5
  340. package/esm2015/utils/format/format-phone.js +9 -9
  341. package/esm2015/utils/format/get-fractional-part-padded.js +3 -3
  342. package/esm2015/utils/format/number-to-string-without-exp.js +3 -3
  343. package/esm2015/utils/format/other-decimal-symbol.js +2 -2
  344. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +11 -11
  345. package/esm2015/utils/mask/create-correction-mask.js +3 -3
  346. package/esm2015/utils/mask/create-number-mask.js +13 -13
  347. package/esm2015/utils/mask/masked-money-value-is-empty.js +3 -3
  348. package/esm2015/utils/mask/masked-number-string-to-number.js +2 -2
  349. package/esm2015/utils/miscellaneous/color-fallback.js +8 -8
  350. package/esm2015/utils/miscellaneous/icons-path-factory.js +3 -3
  351. package/esm2015/utils/miscellaneous/is-presumed-html-string.js +2 -2
  352. package/esm2015/utils/miscellaneous/size-bigger.js +3 -3
  353. package/esm2015/utils/polyfills/inner-html.js +5 -5
  354. package/esm5/abstract/abstract-dropdown.js +12 -12
  355. package/esm5/abstract/abstract-hint-options.js +2 -2
  356. package/esm5/abstract/abstract-hint.js +4 -4
  357. package/esm5/animations/animations.js +140 -140
  358. package/esm5/components/alert/alert.component.js +11 -11
  359. package/esm5/components/alert/alert.service.js +3 -3
  360. package/esm5/components/button/button-options.js +3 -3
  361. package/esm5/components/button/button.component.js +16 -16
  362. package/esm5/components/calendar/calendar.component.js +2 -2
  363. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +8 -8
  364. package/esm5/components/data-list/data-list.component.js +12 -12
  365. package/esm5/components/data-list/data-list.directive.js +2 -2
  366. package/esm5/components/data-list/opt-group.directive.js +5 -5
  367. package/esm5/components/data-list/option/option.component.js +12 -12
  368. package/esm5/components/dialog/dialog.component.js +12 -12
  369. package/esm5/components/dialog/dialog.directive.js +4 -4
  370. package/esm5/components/dialog/dialog.providers.js +7 -7
  371. package/esm5/components/dialog/dialog.service.js +5 -5
  372. package/esm5/components/dropdown-box/dropdown-box.component.js +39 -39
  373. package/esm5/components/error/error.component.js +5 -5
  374. package/esm5/components/expand/expand-content.directive.js +2 -2
  375. package/esm5/components/expand/expand.component.js +12 -12
  376. package/esm5/components/group/group-styles.component.js +2 -2
  377. package/esm5/components/group/group.component.js +5 -5
  378. package/esm5/components/group/group.directive.js +15 -15
  379. package/esm5/components/hints-host/hint-box/hint-box.component.js +46 -46
  380. package/esm5/components/hints-host/hints-host.component.js +3 -3
  381. package/esm5/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  382. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  383. package/esm5/components/label/label.component.js +5 -5
  384. package/esm5/components/link/link.component.js +12 -12
  385. package/esm5/components/loader/loader-options.js +3 -3
  386. package/esm5/components/loader/loader.component.js +3 -3
  387. package/esm5/components/notification/notification.component.js +9 -9
  388. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  389. package/esm5/components/primitive-checkbox/checkbox-options.js +5 -5
  390. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  391. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  392. package/esm5/components/primitive-textfield/primitive-textfield-options.js +4 -4
  393. package/esm5/components/primitive-textfield/primitive-textfield.component.js +28 -28
  394. package/esm5/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  395. package/esm5/components/primitive-textfield/textfield/textfield.component.js +13 -13
  396. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  397. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  398. package/esm5/components/root/root.component.js +5 -5
  399. package/esm5/components/scroll-controls/scroll-controls.component.js +4 -4
  400. package/esm5/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  401. package/esm5/components/scroll-controls/scrollbar.directive.js +23 -23
  402. package/esm5/components/scrollbar/scroll-ref.directive.js +2 -2
  403. package/esm5/components/scrollbar/scrollable.directive.js +2 -2
  404. package/esm5/components/scrollbar/scrollbar.component.js +7 -7
  405. package/esm5/components/svg/svg.component.js +16 -16
  406. package/esm5/components/theme-night/theme-night.component.js +3 -3
  407. package/esm5/components/tooltip/tooltip.component.js +8 -8
  408. package/esm5/constants/decimal-symbols.js +2 -2
  409. package/esm5/constants/default-icons-path.js +2 -2
  410. package/esm5/constants/editing-keys.js +10 -10
  411. package/esm5/constants/events.js +5 -5
  412. package/esm5/constants/mask-caret-trap.js +2 -2
  413. package/esm5/constants/version.js +2 -2
  414. package/esm5/directives/color/color.directive.js +7 -7
  415. package/esm5/directives/described-by/described-by.directive.js +5 -5
  416. package/esm5/directives/described-by/described-by.providers.js +5 -5
  417. package/esm5/directives/dropdown/dropdown.directive.js +3 -3
  418. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  419. package/esm5/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  420. package/esm5/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  421. package/esm5/directives/hint/hint-options.js +3 -3
  422. package/esm5/directives/hint/hint.directive.js +6 -6
  423. package/esm5/directives/hint-controller/hint-controller.directive.js +7 -7
  424. package/esm5/directives/hint-controller/hint-controller.provider.js +2 -2
  425. package/esm5/directives/hint-controller/hint-controller.token.js +2 -2
  426. package/esm5/directives/manual-hint/manual-hint-options.js +2 -2
  427. package/esm5/directives/manual-hint/manual-hint.directive.js +4 -4
  428. package/esm5/directives/mask-accessor/mask-accessor.directive.js +2 -2
  429. package/esm5/directives/mode/mode.directive.js +3 -3
  430. package/esm5/directives/pointer-hint/pointer-hint-options.js +2 -2
  431. package/esm5/directives/pointer-hint/pointer-hint.directive.js +5 -5
  432. package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  433. package/esm5/directives/table-mode/table-mode.directive.js +3 -3
  434. package/esm5/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  435. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  436. package/esm5/directives/textfield-controller/textfield-controller.provider.js +2 -2
  437. package/esm5/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  438. package/esm5/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  439. package/esm5/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  440. package/esm5/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  441. package/esm5/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  442. package/esm5/directives/textfield-controller/textfield-size.directive.js +5 -5
  443. package/esm5/directives/textfield-controller/textfield-type.directive.js +5 -5
  444. package/esm5/directives/textfield-controller/textfield.controller.js +2 -2
  445. package/esm5/directives/wrapper/wrapper.directive.js +10 -10
  446. package/esm5/enums/appearance.js +1 -1
  447. package/esm5/enums/base-color.js +1 -1
  448. package/esm5/enums/button-shape.js +1 -1
  449. package/esm5/enums/decimal.js +1 -1
  450. package/esm5/enums/dropdown-animation.js +1 -1
  451. package/esm5/enums/dropdown-width.js +1 -1
  452. package/esm5/enums/hint-mode.js +1 -1
  453. package/esm5/enums/interactive-state.js +1 -1
  454. package/esm5/enums/link-mode.js +1 -1
  455. package/esm5/enums/notification.js +1 -1
  456. package/esm5/enums/orientation.js +1 -1
  457. package/esm5/enums/range-state.js +1 -1
  458. package/esm5/enums/support-color.js +1 -1
  459. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  460. package/esm5/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  461. package/esm5/observables/smart-search.js +3 -3
  462. package/esm5/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  463. package/esm5/pipes/format-number/format-number.pipe.js +2 -2
  464. package/esm5/pipes/format-phone/format-phone.pipe.js +4 -4
  465. package/esm5/pipes/month/month.pipe.js +2 -2
  466. package/esm5/pipes/pluralize/pluralize.pipe.js +2 -2
  467. package/esm5/providers/is-mobile-resolution.provider.js +2 -2
  468. package/esm5/providers/mode.provider.js +2 -2
  469. package/esm5/services/hint.service.js +2 -2
  470. package/esm5/services/night-theme.service.js +4 -4
  471. package/esm5/services/svg.service.js +4 -4
  472. package/esm5/tokens/animation-options.js +2 -2
  473. package/esm5/tokens/animations-duration.js +2 -2
  474. package/esm5/tokens/assert-enabled.js +2 -2
  475. package/esm5/tokens/data-list-accessor.js +2 -2
  476. package/esm5/tokens/data-list-host.js +2 -2
  477. package/esm5/tokens/document-or-shadow-root.js +2 -2
  478. package/esm5/tokens/dropdown-directive.js +2 -2
  479. package/esm5/tokens/element-ref.js +2 -2
  480. package/esm5/tokens/first-day-of-week.js +2 -2
  481. package/esm5/tokens/i18n.js +10 -10
  482. package/esm5/tokens/icon-place.js +3 -3
  483. package/esm5/tokens/icons-path.js +2 -2
  484. package/esm5/tokens/icons.js +2 -2
  485. package/esm5/tokens/is-mobile-resolution.js +3 -3
  486. package/esm5/tokens/media.js +2 -2
  487. package/esm5/tokens/mode.js +2 -2
  488. package/esm5/tokens/notification-options.js +3 -3
  489. package/esm5/tokens/number-format.js +3 -3
  490. package/esm5/tokens/option-content.js +2 -2
  491. package/esm5/tokens/ordered-short-week-days.js +2 -2
  492. package/esm5/tokens/scroll-ref.js +2 -2
  493. package/esm5/tokens/svg-content-processor.js +2 -2
  494. package/esm5/tokens/svg-src-processor.js +2 -2
  495. package/esm5/tokens/textfield-appearance.js +2 -2
  496. package/esm5/tokens/textfield-host.js +2 -2
  497. package/esm5/tokens/theme.js +3 -3
  498. package/esm5/tokens/value-accessor.js +2 -2
  499. package/esm5/utils/dom/are-css-vars-supported.js +2 -2
  500. package/esm5/utils/dom/check-fixed-position.js +3 -3
  501. package/esm5/utils/dom/get-safe-area-size.js +4 -4
  502. package/esm5/utils/dom/process-icon.js +11 -11
  503. package/esm5/utils/format/format-number.js +5 -5
  504. package/esm5/utils/format/format-phone.js +9 -9
  505. package/esm5/utils/format/get-fractional-part-padded.js +3 -3
  506. package/esm5/utils/format/number-to-string-without-exp.js +3 -3
  507. package/esm5/utils/format/other-decimal-symbol.js +2 -2
  508. package/esm5/utils/mask/create-auto-corrected-money-pipe.js +12 -12
  509. package/esm5/utils/mask/create-correction-mask.js +3 -3
  510. package/esm5/utils/mask/create-number-mask.js +13 -13
  511. package/esm5/utils/mask/masked-money-value-is-empty.js +3 -3
  512. package/esm5/utils/mask/masked-number-string-to-number.js +2 -2
  513. package/esm5/utils/miscellaneous/color-fallback.js +8 -8
  514. package/esm5/utils/miscellaneous/icons-path-factory.js +3 -3
  515. package/esm5/utils/miscellaneous/is-presumed-html-string.js +2 -2
  516. package/esm5/utils/miscellaneous/size-bigger.js +3 -3
  517. package/esm5/utils/polyfills/inner-html.js +5 -5
  518. package/fesm2015/taiga-ui-core-abstract.js +15 -15
  519. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  520. package/fesm2015/taiga-ui-core-animations.js +138 -138
  521. package/fesm2015/taiga-ui-core-animations.js.map +1 -1
  522. package/fesm2015/taiga-ui-core-components-alert.js +12 -12
  523. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  524. package/fesm2015/taiga-ui-core-components-button.js +17 -17
  525. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  526. package/fesm2015/taiga-ui-core-components-calendar.js +1 -1
  527. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  528. package/fesm2015/taiga-ui-core-components-data-list.js +33 -33
  529. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  530. package/fesm2015/taiga-ui-core-components-dialog.js +24 -24
  531. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  532. package/fesm2015/taiga-ui-core-components-dropdown-box.js +38 -38
  533. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  534. package/fesm2015/taiga-ui-core-components-error.js +4 -4
  535. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  536. package/fesm2015/taiga-ui-core-components-expand.js +12 -12
  537. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  538. package/fesm2015/taiga-ui-core-components-group.js +21 -19
  539. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  540. package/fesm2015/taiga-ui-core-components-hints-host.js +47 -47
  541. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  542. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  543. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  544. package/fesm2015/taiga-ui-core-components-label.js +4 -4
  545. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  546. package/fesm2015/taiga-ui-core-components-link.js +11 -11
  547. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  548. package/fesm2015/taiga-ui-core-components-loader.js +4 -4
  549. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  550. package/fesm2015/taiga-ui-core-components-notification.js +8 -8
  551. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  552. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  553. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  554. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +7 -7
  555. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  556. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +2 -2
  557. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  558. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +54 -54
  559. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  560. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  561. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  562. package/fesm2015/taiga-ui-core-components-root.js +4 -4
  563. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  564. package/fesm2015/taiga-ui-core-components-scroll-controls.js +26 -26
  565. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  566. package/fesm2015/taiga-ui-core-components-scrollbar.js +8 -8
  567. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  568. package/fesm2015/taiga-ui-core-components-svg.js +15 -15
  569. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  570. package/fesm2015/taiga-ui-core-components-theme-night.js +2 -2
  571. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  572. package/fesm2015/taiga-ui-core-components-tooltip.js +7 -7
  573. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  574. package/fesm2015/taiga-ui-core-constants.js +17 -17
  575. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  576. package/fesm2015/taiga-ui-core-directives-color.js +6 -6
  577. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  578. package/fesm2015/taiga-ui-core-directives-described-by.js +6 -6
  579. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  580. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js +11 -11
  581. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  582. package/fesm2015/taiga-ui-core-directives-dropdown.js +2 -2
  583. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  584. package/fesm2015/taiga-ui-core-directives-hint-controller.js +8 -8
  585. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  586. package/fesm2015/taiga-ui-core-directives-hint.js +7 -7
  587. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  588. package/fesm2015/taiga-ui-core-directives-manual-hint.js +4 -4
  589. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  590. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  591. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  592. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  593. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  594. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +5 -5
  595. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  596. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  597. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  598. package/fesm2015/taiga-ui-core-directives-table-mode.js +2 -2
  599. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  600. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +35 -35
  601. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  602. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  603. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  604. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  605. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  606. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  607. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +1 -1
  608. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  609. package/fesm2015/taiga-ui-core-observables.js +2 -2
  610. package/fesm2015/taiga-ui-core-observables.js.map +1 -1
  611. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  612. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  613. package/fesm2015/taiga-ui-core-pipes-format-number.js +1 -1
  614. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  615. package/fesm2015/taiga-ui-core-pipes-format-phone.js +3 -3
  616. package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
  617. package/fesm2015/taiga-ui-core-pipes-month.js +1 -1
  618. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  619. package/fesm2015/taiga-ui-core-pipes-pluralize.js +1 -1
  620. package/fesm2015/taiga-ui-core-pipes-pluralize.js.map +1 -1
  621. package/fesm2015/taiga-ui-core-providers.js +2 -2
  622. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  623. package/fesm2015/taiga-ui-core-services.js +7 -7
  624. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  625. package/fesm2015/taiga-ui-core-tokens.js +40 -40
  626. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  627. package/fesm2015/taiga-ui-core-utils-dom.js +16 -16
  628. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  629. package/fesm2015/taiga-ui-core-utils-format.js +17 -17
  630. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  631. package/fesm2015/taiga-ui-core-utils-mask.js +27 -27
  632. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  633. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +12 -12
  634. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  635. package/fesm2015/taiga-ui-core-utils-polyfills.js +4 -4
  636. package/fesm2015/taiga-ui-core-utils-polyfills.js.map +1 -1
  637. package/fesm5/taiga-ui-core-abstract.js +15 -15
  638. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  639. package/fesm5/taiga-ui-core-animations.js +138 -138
  640. package/fesm5/taiga-ui-core-animations.js.map +1 -1
  641. package/fesm5/taiga-ui-core-components-alert.js +12 -12
  642. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  643. package/fesm5/taiga-ui-core-components-button.js +17 -17
  644. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  645. package/fesm5/taiga-ui-core-components-calendar.js +1 -1
  646. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  647. package/fesm5/taiga-ui-core-components-data-list.js +34 -34
  648. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  649. package/fesm5/taiga-ui-core-components-dialog.js +24 -24
  650. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  651. package/fesm5/taiga-ui-core-components-dropdown-box.js +38 -38
  652. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  653. package/fesm5/taiga-ui-core-components-error.js +4 -4
  654. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  655. package/fesm5/taiga-ui-core-components-expand.js +12 -12
  656. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  657. package/fesm5/taiga-ui-core-components-group.js +19 -19
  658. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  659. package/fesm5/taiga-ui-core-components-hints-host.js +47 -47
  660. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  661. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +10 -10
  662. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  663. package/fesm5/taiga-ui-core-components-label.js +4 -4
  664. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  665. package/fesm5/taiga-ui-core-components-link.js +11 -11
  666. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  667. package/fesm5/taiga-ui-core-components-loader.js +4 -4
  668. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  669. package/fesm5/taiga-ui-core-components-notification.js +8 -8
  670. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  671. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  672. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  673. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +7 -7
  674. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  675. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +2 -2
  676. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  677. package/fesm5/taiga-ui-core-components-primitive-textfield.js +54 -54
  678. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  679. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  680. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  681. package/fesm5/taiga-ui-core-components-root.js +4 -4
  682. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  683. package/fesm5/taiga-ui-core-components-scroll-controls.js +26 -26
  684. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  685. package/fesm5/taiga-ui-core-components-scrollbar.js +8 -8
  686. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  687. package/fesm5/taiga-ui-core-components-svg.js +15 -15
  688. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  689. package/fesm5/taiga-ui-core-components-theme-night.js +2 -2
  690. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  691. package/fesm5/taiga-ui-core-components-tooltip.js +7 -7
  692. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  693. package/fesm5/taiga-ui-core-constants.js +17 -17
  694. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  695. package/fesm5/taiga-ui-core-directives-color.js +6 -6
  696. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  697. package/fesm5/taiga-ui-core-directives-described-by.js +8 -8
  698. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  699. package/fesm5/taiga-ui-core-directives-dropdown-controller.js +11 -11
  700. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  701. package/fesm5/taiga-ui-core-directives-dropdown.js +2 -2
  702. package/fesm5/taiga-ui-core-directives-dropdown.js.map +1 -1
  703. package/fesm5/taiga-ui-core-directives-hint-controller.js +8 -8
  704. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  705. package/fesm5/taiga-ui-core-directives-hint.js +7 -7
  706. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  707. package/fesm5/taiga-ui-core-directives-manual-hint.js +4 -4
  708. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  709. package/fesm5/taiga-ui-core-directives-mask-accessor.js +1 -1
  710. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  711. package/fesm5/taiga-ui-core-directives-mode.js +2 -2
  712. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  713. package/fesm5/taiga-ui-core-directives-pointer-hint.js +5 -5
  714. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  715. package/fesm5/taiga-ui-core-directives-scroll-into-view.js +1 -1
  716. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  717. package/fesm5/taiga-ui-core-directives-table-mode.js +2 -2
  718. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  719. package/fesm5/taiga-ui-core-directives-textfield-controller.js +35 -35
  720. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  721. package/fesm5/taiga-ui-core-directives-wrapper.js +9 -9
  722. package/fesm5/taiga-ui-core-directives-wrapper.js.map +1 -1
  723. package/fesm5/taiga-ui-core-enums.js.map +1 -1
  724. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  725. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  726. package/fesm5/taiga-ui-core-internal-svg-defs-host.js +1 -1
  727. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  728. package/fesm5/taiga-ui-core-observables.js +2 -2
  729. package/fesm5/taiga-ui-core-observables.js.map +1 -1
  730. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  731. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  732. package/fesm5/taiga-ui-core-pipes-format-number.js +1 -1
  733. package/fesm5/taiga-ui-core-pipes-format-number.js.map +1 -1
  734. package/fesm5/taiga-ui-core-pipes-format-phone.js +3 -3
  735. package/fesm5/taiga-ui-core-pipes-format-phone.js.map +1 -1
  736. package/fesm5/taiga-ui-core-pipes-month.js +1 -1
  737. package/fesm5/taiga-ui-core-pipes-month.js.map +1 -1
  738. package/fesm5/taiga-ui-core-pipes-pluralize.js +1 -1
  739. package/fesm5/taiga-ui-core-pipes-pluralize.js.map +1 -1
  740. package/fesm5/taiga-ui-core-providers.js +2 -2
  741. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  742. package/fesm5/taiga-ui-core-services.js +7 -7
  743. package/fesm5/taiga-ui-core-services.js.map +1 -1
  744. package/fesm5/taiga-ui-core-tokens.js +40 -40
  745. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  746. package/fesm5/taiga-ui-core-utils-dom.js +16 -16
  747. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  748. package/fesm5/taiga-ui-core-utils-format.js +17 -17
  749. package/fesm5/taiga-ui-core-utils-format.js.map +1 -1
  750. package/fesm5/taiga-ui-core-utils-mask.js +28 -28
  751. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  752. package/fesm5/taiga-ui-core-utils-miscellaneous.js +12 -12
  753. package/fesm5/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  754. package/fesm5/taiga-ui-core-utils-polyfills.js +4 -4
  755. package/fesm5/taiga-ui-core-utils-polyfills.js.map +1 -1
  756. package/package.json +4 -4
@@ -12,7 +12,7 @@ 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
- var TUI_DIALOGS_CLOSE = new InjectionToken('A stream to close dialogs', {
15
+ var TUI_DIALOGS_CLOSE = new InjectionToken("A stream to close dialogs", {
16
16
  factory: function () { return EMPTY; },
17
17
  });
18
18
  var SCROLLBAR_PLACEHOLDER = 17;
@@ -21,15 +21,15 @@ function dialogCloseStreamFactory(documentRef, windowRef, _a, close$, destroy$,
21
21
  var nativeElement = _a.nativeElement;
22
22
  var dismissible = _b.dismissible;
23
23
  return dismissible
24
- ? merge(typedFromEvent(nativeElement, 'click').pipe(filter(isCurrentTarget)), typedFromEvent(documentRef, 'keydown').pipe(
24
+ ? merge(typedFromEvent(nativeElement, "click").pipe(filter(isCurrentTarget)), typedFromEvent(documentRef, "keydown").pipe(
25
25
  // TODO: iframe warning
26
26
  filter(function (_a) {
27
27
  var key = _a.key, target = _a.target;
28
- return key === 'Escape' &&
28
+ return key === "Escape" &&
29
29
  target instanceof Element &&
30
30
  (!containsOrAfter(nativeElement, target) ||
31
31
  nativeElement.contains(target));
32
- })), typedFromEvent(documentRef, 'mousedown').pipe(
32
+ })), typedFromEvent(documentRef, "mousedown").pipe(
33
33
  // TODO: iframe warning
34
34
  filter(function (_a) {
35
35
  var target = _a.target, clientX = _a.clientX;
@@ -37,7 +37,7 @@ function dialogCloseStreamFactory(documentRef, windowRef, _a, close$, destroy$,
37
37
  tuiGetViewportWidth(windowRef) - clientX >
38
38
  SCROLLBAR_PLACEHOLDER &&
39
39
  !containsOrAfter(nativeElement, target);
40
- }), switchMapTo(typedFromEvent(documentRef, 'mouseup').pipe(take(1),
40
+ }), switchMapTo(typedFromEvent(documentRef, "mouseup").pipe(take(1),
41
41
  // TODO: iframe warning
42
42
  filter(function (_a) {
43
43
  var target = _a.target;
@@ -46,7 +46,7 @@ function dialogCloseStreamFactory(documentRef, windowRef, _a, close$, destroy$,
46
46
  })))), close$).pipe(takeUntil(destroy$))
47
47
  : close$;
48
48
  }
49
- var TUI_DIALOG_CLOSE_STREAM = new InjectionToken('Dialogs closing stream');
49
+ var TUI_DIALOG_CLOSE_STREAM = new InjectionToken("Dialogs closing stream");
50
50
  var TUI_DIALOG_PROVIDERS = [
51
51
  TuiDestroyService,
52
52
  {
@@ -63,7 +63,7 @@ var TUI_DIALOG_PROVIDERS = [
63
63
  },
64
64
  ];
65
65
 
66
- var REQUIRED_ERROR = new Error('Required dialog was dismissed');
66
+ var REQUIRED_ERROR = new Error("Required dialog was dismissed");
67
67
  // @dynamic
68
68
  var TuiDialogComponent = /** @class */ (function () {
69
69
  function TuiDialogComponent(duration, isMobile, context, close$, closeWord$) {
@@ -73,16 +73,16 @@ var TuiDialogComponent = /** @class */ (function () {
73
73
  this.context = context;
74
74
  this.closeWord$ = closeWord$;
75
75
  this.animation = {
76
- value: '',
76
+ value: "",
77
77
  params: {
78
- start: '40px',
78
+ start: "40px",
79
79
  duration: this.duration,
80
80
  },
81
81
  };
82
82
  this.fullscreenAnimation = {
83
- value: '',
83
+ value: "",
84
84
  params: {
85
- start: '100vh',
85
+ start: "100vh",
86
86
  duration: this.duration,
87
87
  },
88
88
  };
@@ -106,7 +106,7 @@ var TuiDialogComponent = /** @class */ (function () {
106
106
  });
107
107
  Object.defineProperty(TuiDialogComponent.prototype, "slideInTop", {
108
108
  get: function () {
109
- return this.size === 'fullscreen' || this.size === 'page' || this.isMobile
109
+ return this.size === "fullscreen" || this.size === "page" || this.isMobile
110
110
  ? this.fullscreenAnimation
111
111
  : this.animation;
112
112
  },
@@ -129,18 +129,18 @@ var TuiDialogComponent = /** @class */ (function () {
129
129
  { type: Observable, decorators: [{ type: Inject, args: [TUI_CLOSE_WORD,] }] }
130
130
  ]; };
131
131
  __decorate([
132
- HostBinding('attr.data-size')
132
+ HostBinding("attr.data-size")
133
133
  ], TuiDialogComponent.prototype, "size", null);
134
134
  __decorate([
135
- HostBinding('class._centered')
135
+ HostBinding("class._centered")
136
136
  ], TuiDialogComponent.prototype, "header", null);
137
137
  __decorate([
138
- HostBinding('@tuiSlideInTop'),
139
- HostBinding('@tuiFadeIn')
138
+ HostBinding("@tuiSlideInTop"),
139
+ HostBinding("@tuiFadeIn")
140
140
  ], TuiDialogComponent.prototype, "slideInTop", null);
141
141
  TuiDialogComponent = __decorate([
142
142
  Component({
143
- selector: 'tui-dialog',
143
+ selector: "tui-dialog",
144
144
  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",
145
145
  changeDetection: ChangeDetectionStrategy.OnPush,
146
146
  providers: TUI_DIALOG_PROVIDERS,
@@ -158,12 +158,12 @@ var TuiDialogComponent = /** @class */ (function () {
158
158
 
159
159
  var DIALOG = new PolymorpheusComponent(TuiDialogComponent);
160
160
  var DEFAULT_OPTIONS = {
161
- size: 'm',
161
+ size: "m",
162
162
  required: false,
163
163
  closeable: true,
164
164
  dismissible: true,
165
- label: '',
166
- header: '',
165
+ label: "",
166
+ header: "",
167
167
  };
168
168
  var TuiDialogService = /** @class */ (function (_super) {
169
169
  __extends(TuiDialogService, _super);
@@ -176,7 +176,7 @@ var TuiDialogService = /** @class */ (function (_super) {
176
176
  TuiDialogService.ɵprov = ɵɵdefineInjectable({ factory: function TuiDialogService_Factory() { return new TuiDialogService(ɵɵinject(TuiIdService)); }, token: TuiDialogService, providedIn: "root" });
177
177
  TuiDialogService = __decorate([
178
178
  Injectable({
179
- providedIn: 'root',
179
+ providedIn: "root",
180
180
  })
181
181
  ], TuiDialogService);
182
182
  return TuiDialogService;
@@ -189,15 +189,15 @@ var TuiDialogDirective = /** @class */ (function (_super) {
189
189
  }
190
190
  TuiDialogDirective = __decorate([
191
191
  Directive({
192
- selector: 'ng-template[tuiDialog]',
192
+ selector: "ng-template[tuiDialog]",
193
193
  providers: [
194
194
  {
195
195
  provide: AbstractTuiDialogService,
196
196
  useExisting: TuiDialogService,
197
197
  },
198
198
  ],
199
- inputs: ['options: tuiDialogOptions', 'open: tuiDialog'],
200
- outputs: ['openChange: tuiDialogChange'],
199
+ inputs: ["options: tuiDialogOptions", "open: tuiDialog"],
200
+ outputs: ["openChange: tuiDialogChange"],
201
201
  })
202
202
  ], TuiDialogDirective);
203
203
  return TuiDialogDirective;
@@ -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":"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"}
@@ -32,7 +32,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
32
32
  * Is previous position on top (to prevent jumping up and down on scroll)
33
33
  */
34
34
  this.prevDirectionIsTop = false;
35
- merge(animationFrame$.pipe(throttleTime(POLLING_TIME)), this.directive.refresh$, fromEvent(this.windowRef, 'resize'))
35
+ merge(animationFrame$.pipe(throttleTime(POLLING_TIME)), this.directive.refresh$, fromEvent(this.windowRef, "resize"))
36
36
  .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
37
37
  .subscribe(function () {
38
38
  _this.calculatePositionAndSize();
@@ -40,7 +40,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
40
40
  }
41
41
  Object.defineProperty(TuiDropdownBoxComponent.prototype, "overscroll", {
42
42
  get: function () {
43
- return this.inModal ? 'all' : 'scroll';
43
+ return this.inModal ? "all" : "scroll";
44
44
  },
45
45
  enumerable: true,
46
46
  configurable: true
@@ -60,7 +60,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
60
60
  Object.defineProperty(TuiDropdownBoxComponent.prototype, "inModal", {
61
61
  get: function () {
62
62
  // @awful TODO: get rid of component tag name dependency
63
- return !!this.directive.host.closest('tui-dialog-host');
63
+ return !!this.directive.host.closest("tui-dialog-host");
64
64
  },
65
65
  enumerable: true,
66
66
  configurable: true
@@ -68,7 +68,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
68
68
  Object.defineProperty(TuiDropdownBoxComponent.prototype, "inOption", {
69
69
  get: function () {
70
70
  // @awful TODO: get rid of component tag name dependency
71
- return !!this.directive.host.closest('[tuiOption]');
71
+ return !!this.directive.host.closest("[tuiOption]");
72
72
  },
73
73
  enumerable: true,
74
74
  configurable: true
@@ -79,7 +79,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
79
79
  var hostRect = this.directive.fixed
80
80
  ? this.portalHost.fixedPositionOffset()
81
81
  : this.portalHost.clientRect;
82
- style.position = this.directive.fixed ? 'fixed' : 'absolute';
82
+ style.position = this.directive.fixed ? "fixed" : "absolute";
83
83
  this.calculateVerticalPosition(style, clientRect, hostRect);
84
84
  this.calculateHorizontalPosition(style, clientRect, hostRect);
85
85
  this.calculateWidth(style, clientRect);
@@ -93,23 +93,23 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
93
93
  var isDropdownSizeActuallyFitsViewport = dropdownRect.right <= screenWidth && dropdownRect.left >= 0;
94
94
  var finalAlign = this.directive.align;
95
95
  switch (this.directive.align) {
96
- case 'left':
96
+ case "left":
97
97
  if (isDropdownSizeHypotheticallyFitsViewport &&
98
98
  dropdownRect.right > screenWidth) {
99
- finalAlign = 'right';
99
+ finalAlign = "right";
100
100
  }
101
101
  break;
102
- case 'right':
102
+ case "right":
103
103
  if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {
104
- finalAlign = 'left';
104
+ finalAlign = "left";
105
105
  }
106
106
  break;
107
107
  }
108
- if (style.right === 'auto' && isDropdownSizeActuallyFitsViewport) {
109
- finalAlign = 'left';
108
+ if (style.right === "auto" && isDropdownSizeActuallyFitsViewport) {
109
+ finalAlign = "left";
110
110
  }
111
- if (style.left === 'auto' && isDropdownSizeActuallyFitsViewport) {
112
- finalAlign = 'right';
111
+ if (style.left === "auto" && isDropdownSizeActuallyFitsViewport) {
112
+ finalAlign = "right";
113
113
  }
114
114
  return finalAlign;
115
115
  };
@@ -128,26 +128,26 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
128
128
  var right = Math.floor(hostRect.right - directiveRect.right - offset);
129
129
  var viewportWidth = tuiGetViewportWidth(this.windowRef);
130
130
  switch (this.getFinalAlign(style, directiveRect)) {
131
- case 'left':
131
+ case "left":
132
132
  if (right + DEFAULT_MARGIN > viewportWidth ||
133
133
  inRange(left + DEFAULT_MARGIN, 0, viewportWidth)) {
134
134
  style.left = px(left);
135
- style.right = 'auto';
135
+ style.right = "auto";
136
136
  }
137
137
  else {
138
- style.left = 'auto';
138
+ style.left = "auto";
139
139
  style.right = px(right);
140
140
  }
141
141
  break;
142
- case 'right':
142
+ case "right":
143
143
  if (inRange(right + DEFAULT_MARGIN, 0, viewportWidth) ||
144
144
  left + DEFAULT_MARGIN > viewportWidth) {
145
- style.left = 'auto';
145
+ style.left = "auto";
146
146
  style.right = px(right);
147
147
  }
148
148
  else {
149
149
  style.left = px(left);
150
- style.right = 'auto';
150
+ style.right = "auto";
151
151
  }
152
152
  break;
153
153
  }
@@ -170,11 +170,11 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
170
170
  var bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;
171
171
  var finalDirection = this.getFinalDirection(directiveRect);
172
172
  var optionOffset = this.inOption ? DEFAULT_MARGIN * 2 : 0;
173
- this.prevDirectionIsTop = finalDirection === 'top';
174
- if (finalDirection === 'top') {
173
+ this.prevDirectionIsTop = finalDirection === "top";
174
+ if (finalDirection === "top") {
175
175
  this.dropdownAnimation = this.animationBottom;
176
176
  style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));
177
- style.top = 'auto';
177
+ style.top = "auto";
178
178
  style.bottom = px(hostRect.bottom -
179
179
  directiveRect.top -
180
180
  DEFAULT_MARGIN +
@@ -189,7 +189,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
189
189
  DEFAULT_MARGIN +
190
190
  offset -
191
191
  optionOffset);
192
- style.bottom = 'auto';
192
+ style.bottom = "auto";
193
193
  }
194
194
  };
195
195
  TuiDropdownBoxComponent.prototype.getFinalDirection = function (directiveRect) {
@@ -203,14 +203,14 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
203
203
  var finalDirection = null;
204
204
  // Given direction is applied if we can fit the box in the limits that way
205
205
  switch (this.directive.direction) {
206
- case 'top':
206
+ case "top":
207
207
  if (topAvailableHeight >= this.directive.minHeight) {
208
- finalDirection = 'top';
208
+ finalDirection = "top";
209
209
  }
210
210
  break;
211
- case 'bottom':
211
+ case "bottom":
212
212
  if (bottomAvailableHeight >= this.directive.minHeight) {
213
- finalDirection = 'bottom';
213
+ finalDirection = "bottom";
214
214
  }
215
215
  break;
216
216
  }
@@ -225,15 +225,15 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
225
225
  // If there is enough space to fit below without scroll,
226
226
  // choose 'bottom', unless it was previously on the top
227
227
  if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {
228
- finalDirection = 'top';
228
+ finalDirection = "top";
229
229
  }
230
230
  else if (bottomAvailableHeight >= visualHeight) {
231
- finalDirection = 'bottom';
231
+ finalDirection = "bottom";
232
232
  }
233
233
  else {
234
234
  // Corner case — select direction with more space
235
235
  finalDirection =
236
- bottomAvailableHeight >= topAvailableHeight ? 'bottom' : 'top';
236
+ bottomAvailableHeight >= topAvailableHeight ? "bottom" : "top";
237
237
  }
238
238
  }
239
239
  return finalDirection;
@@ -246,16 +246,16 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
246
246
  */
247
247
  TuiDropdownBoxComponent.prototype.calculateWidth = function (style, directiveRect) {
248
248
  style.width =
249
- this.directive.limitMinWidth === 'fixed' && !this.directive.sided
249
+ this.directive.limitMinWidth === "fixed" && !this.directive.sided
250
250
  ? px(directiveRect.width)
251
- : '';
252
- if (this.directive.limitMinWidth === 'min' && !this.directive.sided) {
251
+ : "";
252
+ if (this.directive.limitMinWidth === "min" && !this.directive.sided) {
253
253
  style.minWidth = px(directiveRect.width);
254
254
  style.maxWidth = px(DEFAULT_MAX_WIDTH);
255
255
  return;
256
256
  }
257
- style.minWidth = '';
258
- style.maxWidth = '';
257
+ style.minWidth = "";
258
+ style.maxWidth = "";
259
259
  };
260
260
  TuiDropdownBoxComponent.prototype.moveFocusOutside = function (previous) {
261
261
  var host = this.directive.host;
@@ -279,10 +279,10 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
279
279
  { type: Observable, decorators: [{ type: Inject, args: [ANIMATION_FRAME,] }] }
280
280
  ]; };
281
281
  __decorate([
282
- HostBinding('@tuiDropdownAnimation')
282
+ HostBinding("@tuiDropdownAnimation")
283
283
  ], TuiDropdownBoxComponent.prototype, "dropdownAnimation", void 0);
284
284
  __decorate([
285
- ViewChild('content', { read: ElementRef })
285
+ ViewChild("content", { read: ElementRef })
286
286
  ], TuiDropdownBoxComponent.prototype, "contentElementRef", void 0);
287
287
  __decorate([
288
288
  tuiPure
@@ -295,7 +295,7 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
295
295
  ], TuiDropdownBoxComponent.prototype, "inOption", null);
296
296
  TuiDropdownBoxComponent = __decorate([
297
297
  Component({
298
- selector: 'tui-dropdown-box',
298
+ selector: "tui-dropdown-box",
299
299
  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",
300
300
  changeDetection: ChangeDetectionStrategy.Default,
301
301
  providers: [TuiDestroyService],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-dropdown-box.js","sources":["ng://@taiga-ui/core/components/dropdown-box/dropdown-box.component.ts","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.module.ts","ng://@taiga-ui/core/components/dropdown-box/taiga-ui-core-components-dropdown-box.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n AbstractTuiPortalHostComponent,\n getClosestFocusable,\n inRange,\n POLLING_TIME,\n px,\n TuiActiveZoneDirective,\n tuiAssertIsHTMLElement,\n TuiDestroyService,\n TuiDropdownHostComponent,\n TuiOverscrollModeT,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {tuiDropdownAnimation} from '@taiga-ui/core/animations';\nimport {DEFAULT_MARGIN, DEFAULT_MAX_WIDTH} from '@taiga-ui/core/constants';\nimport {TuiDropdownAnimation} from '@taiga-ui/core/enums';\nimport {TuiAnimationOptions, TuiDropdown} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_DROPDOWN_DIRECTIVE} from '@taiga-ui/core/tokens';\nimport {TuiHorizontalDirection, TuiVerticalDirection} from '@taiga-ui/core/types';\nimport {getScreenWidth, tuiGetViewportWidth} from '@taiga-ui/core/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {takeUntil, throttleTime} from 'rxjs/operators';\n\n/**\n * This component is used to show template in a portal using default style of white rounded box with a shadow\n */\n// @bad TODO: OnPush\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-dropdown-box',\n templateUrl: './dropdown-box.template.html',\n styleUrls: ['./dropdown-box.style.less'],\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDestroyService],\n animations: [tuiDropdownAnimation],\n})\nexport class TuiDropdownBoxComponent implements AfterViewChecked {\n private readonly animationTop = {\n value: TuiDropdownAnimation.FadeInTop,\n ...this.options,\n };\n\n private readonly animationBottom = {\n value: TuiDropdownAnimation.FadeInBottom,\n ...this.options,\n };\n\n /**\n * Is previous position on top (to prevent jumping up and down on scroll)\n */\n private prevDirectionIsTop = false;\n\n @HostBinding('@tuiDropdownAnimation')\n dropdownAnimation!: TuiAnimationOptions;\n\n @ViewChild('content', {read: ElementRef})\n readonly contentElementRef?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_DROPDOWN_DIRECTIVE) readonly directive: TuiDropdown,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalHostComponent)\n private readonly portalHost: TuiDropdownHostComponent,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n merge(\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n this.directive.refresh$,\n fromEvent(this.windowRef, 'resize'),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n this.calculatePositionAndSize();\n });\n }\n\n get overscroll(): TuiOverscrollModeT {\n return this.inModal ? 'all' : 'scroll';\n }\n\n @tuiPure\n getContext<T extends object>(\n context?: T,\n activeZone?: TuiActiveZoneDirective,\n ):\n | (T & {activeZone?: TuiActiveZoneDirective})\n | {activeZone?: TuiActiveZoneDirective} {\n return {...context, activeZone};\n }\n\n ngAfterViewChecked(): void {\n this.calculatePositionAndSize();\n }\n\n onTopFocus(): void {\n this.moveFocusOutside(true);\n }\n\n onBottomFocus(): void {\n this.moveFocusOutside(false);\n }\n\n @tuiPure\n private get inModal(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!this.directive.host.closest('tui-dialog-host');\n }\n\n @tuiPure\n private get inOption(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!this.directive.host.closest('[tuiOption]');\n }\n\n private calculatePositionAndSize(): void {\n const {clientRect} = this.directive;\n const {style} = this.elementRef.nativeElement;\n const hostRect = this.directive.fixed\n ? this.portalHost.fixedPositionOffset()\n : this.portalHost.clientRect;\n\n style.position = this.directive.fixed ? 'fixed' : 'absolute';\n\n this.calculateVerticalPosition(style, clientRect, hostRect);\n this.calculateHorizontalPosition(style, clientRect, hostRect);\n this.calculateWidth(style, clientRect);\n }\n\n private getFinalAlign(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n ): TuiHorizontalDirection {\n const dropdownRect = this.elementRef.nativeElement.getBoundingClientRect();\n const dropdownWidth = this.elementRef.nativeElement.offsetWidth;\n const screenWidth = getScreenWidth(this.windowRef.document);\n const isDropdownSizeHypotheticallyFitsViewport =\n directiveRect.left + dropdownWidth < screenWidth ||\n directiveRect.right - dropdownWidth > 0;\n const isDropdownSizeActuallyFitsViewport =\n dropdownRect.right <= screenWidth && dropdownRect.left >= 0;\n let finalAlign: TuiHorizontalDirection = this.directive.align;\n\n switch (this.directive.align) {\n case 'left':\n if (\n isDropdownSizeHypotheticallyFitsViewport &&\n dropdownRect.right > screenWidth\n ) {\n finalAlign = 'right';\n }\n\n break;\n case 'right':\n if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {\n finalAlign = 'left';\n }\n\n break;\n }\n\n if (style.right === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'left';\n }\n\n if (style.left === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'right';\n }\n\n return finalAlign;\n }\n\n /**\n * Calculates horizontal position\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateHorizontalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ): void {\n const offset = this.directive.sided\n ? this.elementRef.nativeElement.getBoundingClientRect().width + DEFAULT_MARGIN\n : 0;\n const left = Math.ceil(directiveRect.left - hostRect.left - offset);\n const right = Math.floor(hostRect.right - directiveRect.right - offset);\n const viewportWidth = tuiGetViewportWidth(this.windowRef);\n\n switch (this.getFinalAlign(style, directiveRect)) {\n case 'left':\n if (\n right + DEFAULT_MARGIN > viewportWidth ||\n inRange(left + DEFAULT_MARGIN, 0, viewportWidth)\n ) {\n style.left = px(left);\n style.right = 'auto';\n } else {\n style.left = 'auto';\n style.right = px(right);\n }\n\n break;\n case 'right':\n if (\n inRange(right + DEFAULT_MARGIN, 0, viewportWidth) ||\n left + DEFAULT_MARGIN > viewportWidth\n ) {\n style.left = 'auto';\n style.right = px(right);\n } else {\n style.left = px(left);\n style.right = 'auto';\n }\n\n break;\n }\n }\n\n /**\n * Calculates vertical position and height\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateVerticalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ): void {\n const windowHeight = this.windowRef.innerHeight;\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n const finalDirection = this.getFinalDirection(directiveRect);\n const optionOffset = this.inOption ? DEFAULT_MARGIN * 2 : 0;\n\n this.prevDirectionIsTop = finalDirection === 'top';\n\n if (finalDirection === 'top') {\n this.dropdownAnimation = this.animationBottom;\n\n style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));\n style.top = 'auto';\n style.bottom = px(\n hostRect.bottom -\n directiveRect.top -\n DEFAULT_MARGIN +\n offset -\n optionOffset,\n );\n } else {\n this.dropdownAnimation = this.animationTop;\n\n style.maxHeight = px(Math.min(boxHeightLimit, bottomAvailableHeight));\n style.top = px(\n directiveRect.bottom -\n hostRect.top -\n DEFAULT_MARGIN +\n offset -\n optionOffset,\n );\n style.bottom = 'auto';\n }\n }\n\n private getFinalDirection(directiveRect: ClientRect): TuiVerticalDirection | null {\n const windowHeight = this.windowRef.innerHeight;\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n\n // Maximum space available on top and on the bottom in the viewport\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n\n let finalDirection: TuiVerticalDirection | null = null;\n\n // Given direction is applied if we can fit the box in the limits that way\n switch (this.directive.direction) {\n case 'top':\n if (topAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'top';\n }\n\n break;\n case 'bottom':\n if (bottomAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'bottom';\n }\n\n break;\n }\n\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n\n // Choose direction if given direction did not fit\n if (finalDirection === null && this.contentElementRef) {\n // Box height if it fits without scroll\n const visualHeight = Math.min(\n this.contentElementRef.nativeElement.getBoundingClientRect().height +\n (this.elementRef.nativeElement.offsetHeight -\n this.elementRef.nativeElement.clientHeight),\n boxHeightLimit,\n );\n\n // If there is enough space to fit below without scroll,\n // choose 'bottom', unless it was previously on the top\n if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {\n finalDirection = 'top';\n } else if (bottomAvailableHeight >= visualHeight) {\n finalDirection = 'bottom';\n } else {\n // Corner case — select direction with more space\n finalDirection =\n bottomAvailableHeight >= topAvailableHeight ? 'bottom' : 'top';\n }\n }\n\n return finalDirection;\n }\n\n /**\n * Calculates width\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n */\n private calculateWidth(style: CSSStyleDeclaration, directiveRect: ClientRect): void {\n style.width =\n this.directive.limitMinWidth === 'fixed' && !this.directive.sided\n ? px(directiveRect.width)\n : '';\n\n if (this.directive.limitMinWidth === 'min' && !this.directive.sided) {\n style.minWidth = px(directiveRect.width);\n style.maxWidth = px(DEFAULT_MAX_WIDTH);\n\n return;\n }\n\n style.minWidth = '';\n style.maxWidth = '';\n }\n\n private moveFocusOutside(previous: boolean): void {\n const {host} = this.directive;\n const {ownerDocument} = host;\n const root = ownerDocument ? ownerDocument.body : host;\n\n tuiAssertIsHTMLElement(host);\n\n let focusable = getClosestFocusable(host, previous, root);\n\n while (focusable !== null && host.contains(focusable)) {\n focusable = getClosestFocusable(focusable, previous, root);\n }\n\n focusable?.focus();\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiScrollbarModule} from '@taiga-ui/core/components/scrollbar';\nimport {TuiModeModule} from '@taiga-ui/core/directives/mode';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDropdownBoxComponent} from './dropdown-box.component';\n\n@NgModule({\n imports: [\n TuiActiveZoneModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n TuiModeModule,\n ],\n entryComponents: [TuiDropdownBoxComponent],\n declarations: [TuiDropdownBoxComponent],\n exports: [TuiDropdownBoxComponent],\n})\nexport class TuiDropdownBoxModule {}\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-dropdown-box.js","sources":["ng://@taiga-ui/core/components/dropdown-box/dropdown-box.component.ts","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.module.ts","ng://@taiga-ui/core/components/dropdown-box/taiga-ui-core-components-dropdown-box.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n AbstractTuiPortalHostComponent,\n getClosestFocusable,\n inRange,\n POLLING_TIME,\n px,\n TuiActiveZoneDirective,\n tuiAssertIsHTMLElement,\n TuiDestroyService,\n TuiDropdownHostComponent,\n TuiOverscrollModeT,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {tuiDropdownAnimation} from '@taiga-ui/core/animations';\nimport {DEFAULT_MARGIN, DEFAULT_MAX_WIDTH} from '@taiga-ui/core/constants';\nimport {TuiDropdownAnimation} from '@taiga-ui/core/enums';\nimport {TuiAnimationOptions, TuiDropdown} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_DROPDOWN_DIRECTIVE} from '@taiga-ui/core/tokens';\nimport {TuiHorizontalDirection, TuiVerticalDirection} from '@taiga-ui/core/types';\nimport {getScreenWidth, tuiGetViewportWidth} from '@taiga-ui/core/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {takeUntil, throttleTime} from 'rxjs/operators';\n\n/**\n * This component is used to show template in a portal using default style of white rounded box with a shadow\n */\n// @bad TODO: OnPush\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: `tui-dropdown-box`,\n templateUrl: `./dropdown-box.template.html`,\n styleUrls: [`./dropdown-box.style.less`],\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDestroyService],\n animations: [tuiDropdownAnimation],\n})\nexport class TuiDropdownBoxComponent implements AfterViewChecked {\n private readonly animationTop = {\n value: TuiDropdownAnimation.FadeInTop,\n ...this.options,\n };\n\n private readonly animationBottom = {\n value: TuiDropdownAnimation.FadeInBottom,\n ...this.options,\n };\n\n /**\n * Is previous position on top (to prevent jumping up and down on scroll)\n */\n private prevDirectionIsTop = false;\n\n @HostBinding(`@tuiDropdownAnimation`)\n dropdownAnimation!: TuiAnimationOptions;\n\n @ViewChild(`content`, {read: ElementRef})\n readonly contentElementRef?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_DROPDOWN_DIRECTIVE) readonly directive: TuiDropdown,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalHostComponent)\n private readonly portalHost: TuiDropdownHostComponent,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n merge(\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n this.directive.refresh$,\n fromEvent(this.windowRef, `resize`),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n this.calculatePositionAndSize();\n });\n }\n\n get overscroll(): TuiOverscrollModeT {\n return this.inModal ? `all` : `scroll`;\n }\n\n @tuiPure\n getContext<T extends object>(\n context?: T,\n activeZone?: TuiActiveZoneDirective,\n ):\n | (T & {activeZone?: TuiActiveZoneDirective})\n | {activeZone?: TuiActiveZoneDirective} {\n return {...context, activeZone};\n }\n\n ngAfterViewChecked(): void {\n this.calculatePositionAndSize();\n }\n\n onTopFocus(): void {\n this.moveFocusOutside(true);\n }\n\n onBottomFocus(): void {\n this.moveFocusOutside(false);\n }\n\n @tuiPure\n private get inModal(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!this.directive.host.closest(`tui-dialog-host`);\n }\n\n @tuiPure\n private get inOption(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!this.directive.host.closest(`[tuiOption]`);\n }\n\n private calculatePositionAndSize(): void {\n const {clientRect} = this.directive;\n const {style} = this.elementRef.nativeElement;\n const hostRect = this.directive.fixed\n ? this.portalHost.fixedPositionOffset()\n : this.portalHost.clientRect;\n\n style.position = this.directive.fixed ? `fixed` : `absolute`;\n\n this.calculateVerticalPosition(style, clientRect, hostRect);\n this.calculateHorizontalPosition(style, clientRect, hostRect);\n this.calculateWidth(style, clientRect);\n }\n\n private getFinalAlign(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n ): TuiHorizontalDirection {\n const dropdownRect = this.elementRef.nativeElement.getBoundingClientRect();\n const dropdownWidth = this.elementRef.nativeElement.offsetWidth;\n const screenWidth = getScreenWidth(this.windowRef.document);\n const isDropdownSizeHypotheticallyFitsViewport =\n directiveRect.left + dropdownWidth < screenWidth ||\n directiveRect.right - dropdownWidth > 0;\n const isDropdownSizeActuallyFitsViewport =\n dropdownRect.right <= screenWidth && dropdownRect.left >= 0;\n let finalAlign: TuiHorizontalDirection = this.directive.align;\n\n switch (this.directive.align) {\n case `left`:\n if (\n isDropdownSizeHypotheticallyFitsViewport &&\n dropdownRect.right > screenWidth\n ) {\n finalAlign = `right`;\n }\n\n break;\n case `right`:\n if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {\n finalAlign = `left`;\n }\n\n break;\n }\n\n if (style.right === `auto` && isDropdownSizeActuallyFitsViewport) {\n finalAlign = `left`;\n }\n\n if (style.left === `auto` && isDropdownSizeActuallyFitsViewport) {\n finalAlign = `right`;\n }\n\n return finalAlign;\n }\n\n /**\n * Calculates horizontal position\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateHorizontalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ): void {\n const offset = this.directive.sided\n ? this.elementRef.nativeElement.getBoundingClientRect().width + DEFAULT_MARGIN\n : 0;\n const left = Math.ceil(directiveRect.left - hostRect.left - offset);\n const right = Math.floor(hostRect.right - directiveRect.right - offset);\n const viewportWidth = tuiGetViewportWidth(this.windowRef);\n\n switch (this.getFinalAlign(style, directiveRect)) {\n case `left`:\n if (\n right + DEFAULT_MARGIN > viewportWidth ||\n inRange(left + DEFAULT_MARGIN, 0, viewportWidth)\n ) {\n style.left = px(left);\n style.right = `auto`;\n } else {\n style.left = `auto`;\n style.right = px(right);\n }\n\n break;\n case `right`:\n if (\n inRange(right + DEFAULT_MARGIN, 0, viewportWidth) ||\n left + DEFAULT_MARGIN > viewportWidth\n ) {\n style.left = `auto`;\n style.right = px(right);\n } else {\n style.left = px(left);\n style.right = `auto`;\n }\n\n break;\n }\n }\n\n /**\n * Calculates vertical position and height\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateVerticalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ): void {\n const windowHeight = this.windowRef.innerHeight;\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n const finalDirection = this.getFinalDirection(directiveRect);\n const optionOffset = this.inOption ? DEFAULT_MARGIN * 2 : 0;\n\n this.prevDirectionIsTop = finalDirection === `top`;\n\n if (finalDirection === `top`) {\n this.dropdownAnimation = this.animationBottom;\n\n style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));\n style.top = `auto`;\n style.bottom = px(\n hostRect.bottom -\n directiveRect.top -\n DEFAULT_MARGIN +\n offset -\n optionOffset,\n );\n } else {\n this.dropdownAnimation = this.animationTop;\n\n style.maxHeight = px(Math.min(boxHeightLimit, bottomAvailableHeight));\n style.top = px(\n directiveRect.bottom -\n hostRect.top -\n DEFAULT_MARGIN +\n offset -\n optionOffset,\n );\n style.bottom = `auto`;\n }\n }\n\n private getFinalDirection(directiveRect: ClientRect): TuiVerticalDirection | null {\n const windowHeight = this.windowRef.innerHeight;\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n\n // Maximum space available on top and on the bottom in the viewport\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n\n let finalDirection: TuiVerticalDirection | null = null;\n\n // Given direction is applied if we can fit the box in the limits that way\n switch (this.directive.direction) {\n case `top`:\n if (topAvailableHeight >= this.directive.minHeight) {\n finalDirection = `top`;\n }\n\n break;\n case `bottom`:\n if (bottomAvailableHeight >= this.directive.minHeight) {\n finalDirection = `bottom`;\n }\n\n break;\n }\n\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n\n // Choose direction if given direction did not fit\n if (finalDirection === null && this.contentElementRef) {\n // Box height if it fits without scroll\n const visualHeight = Math.min(\n this.contentElementRef.nativeElement.getBoundingClientRect().height +\n (this.elementRef.nativeElement.offsetHeight -\n this.elementRef.nativeElement.clientHeight),\n boxHeightLimit,\n );\n\n // If there is enough space to fit below without scroll,\n // choose 'bottom', unless it was previously on the top\n if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {\n finalDirection = `top`;\n } else if (bottomAvailableHeight >= visualHeight) {\n finalDirection = `bottom`;\n } else {\n // Corner case — select direction with more space\n finalDirection =\n bottomAvailableHeight >= topAvailableHeight ? `bottom` : `top`;\n }\n }\n\n return finalDirection;\n }\n\n /**\n * Calculates width\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n */\n private calculateWidth(style: CSSStyleDeclaration, directiveRect: ClientRect): void {\n style.width =\n this.directive.limitMinWidth === `fixed` && !this.directive.sided\n ? px(directiveRect.width)\n : ``;\n\n if (this.directive.limitMinWidth === `min` && !this.directive.sided) {\n style.minWidth = px(directiveRect.width);\n style.maxWidth = px(DEFAULT_MAX_WIDTH);\n\n return;\n }\n\n style.minWidth = ``;\n style.maxWidth = ``;\n }\n\n private moveFocusOutside(previous: boolean): void {\n const {host} = this.directive;\n const {ownerDocument} = host;\n const root = ownerDocument ? ownerDocument.body : host;\n\n tuiAssertIsHTMLElement(host);\n\n let focusable = getClosestFocusable(host, previous, root);\n\n while (focusable !== null && host.contains(focusable)) {\n focusable = getClosestFocusable(focusable, previous, root);\n }\n\n focusable?.focus();\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiScrollbarModule} from '@taiga-ui/core/components/scrollbar';\nimport {TuiModeModule} from '@taiga-ui/core/directives/mode';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDropdownBoxComponent} from './dropdown-box.component';\n\n@NgModule({\n imports: [\n TuiActiveZoneModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n TuiModeModule,\n ],\n entryComponents: [TuiDropdownBoxComponent],\n declarations: [TuiDropdownBoxComponent],\n exports: [TuiDropdownBoxComponent],\n})\nexport class TuiDropdownBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -14,11 +14,11 @@ var TuiErrorComponent = /** @class */ (function () {
14
14
  this.mode$ = mode$;
15
15
  this.defaultErrorMessage$ = defaultErrorMessage$;
16
16
  this.error = null;
17
- this.animation = __assign({ value: '' }, this.options);
17
+ this.animation = __assign({ value: "" }, this.options);
18
18
  }
19
19
  Object.defineProperty(TuiErrorComponent.prototype, "errorSetter", {
20
20
  set: function (error) {
21
- this.error = typeof error === 'string' ? new TuiValidationError(error) : error;
21
+ this.error = typeof error === "string" ? new TuiValidationError(error) : error;
22
22
  },
23
23
  enumerable: true,
24
24
  configurable: true
@@ -29,12 +29,12 @@ var TuiErrorComponent = /** @class */ (function () {
29
29
  { type: Observable, decorators: [{ type: Inject, args: [TUI_DEFAULT_ERROR_MESSAGE,] }] }
30
30
  ]; };
31
31
  __decorate([
32
- Input('error'),
32
+ Input("error"),
33
33
  tuiDefaultProp()
34
34
  ], TuiErrorComponent.prototype, "errorSetter", null);
35
35
  TuiErrorComponent = __decorate([
36
36
  Component({
37
- selector: 'tui-error',
37
+ selector: "tui-error",
38
38
  template: "<div\n *ngIf=\"error\"\n polymorpheus-outlet\n automation-id=\"tui-error__text\"\n class=\"message-text\"\n [@tuiHeightCollapse]=\"animation\"\n [@tuiFadeIn]=\"animation\"\n [class.message-text_light]=\"(mode$ | async) === 'onDark'\"\n [content]=\"error.message || (defaultErrorMessage$ | async)\"\n [context]=\"error.context || {}\"\n></div>\n",
39
39
  providers: [MODE_PROVIDER],
40
40
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-error.js","sources":["ng://@taiga-ui/core/components/error/error.component.ts","ng://@taiga-ui/core/components/error/error.module.ts","ng://@taiga-ui/core/components/error/taiga-ui-core-components-error.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp, TuiValidationError} from '@taiga-ui/cdk';\nimport {tuiFadeIn, tuiHeightCollapse} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {\n TUI_ANIMATION_OPTIONS,\n TUI_DEFAULT_ERROR_MESSAGE,\n TUI_MODE,\n} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-error',\n templateUrl: './error.template.html',\n styleUrls: ['./error.style.less'],\n providers: [MODE_PROVIDER],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiHeightCollapse, tuiFadeIn],\n})\nexport class TuiErrorComponent {\n @Input('error')\n @tuiDefaultProp()\n set errorSetter(error: TuiValidationError | string | null) {\n this.error = typeof error === 'string' ? new TuiValidationError(error) : error;\n }\n\n error: TuiValidationError | null = null;\n\n readonly animation = {value: '', ...this.options} as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_DEFAULT_ERROR_MESSAGE)\n readonly defaultErrorMessage$: Observable<string>,\n ) {}\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiErrorComponent} from './error.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiErrorComponent],\n exports: [TuiErrorComponent],\n})\nexport class TuiErrorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;IAgCI,2BACoD,OAAyB,EAC9C,KAAuC,EAEzD,oBAAwC;QAHD,YAAO,GAAP,OAAO,CAAkB;QAC9C,UAAK,GAAL,KAAK,CAAkC;QAEzD,yBAAoB,GAApB,oBAAoB,CAAoB;QARrD,UAAK,GAA8B,IAAI,CAAC;QAE/B,cAAS,GAAG,WAAC,KAAK,EAAE,EAAE,IAAK,IAAI,CAAC,OAAO,CAAU,CAAC;KAOvD;IAbJ,sBAAI,0CAAW;aAAf,UAAgB,KAAyC;YACrD,IAAI,CAAC,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;SAClF;;;OAAA;;gDAOI,MAAM,SAAC,qBAAqB;gBACK,UAAU,uBAA3C,MAAM,SAAC,QAAQ;gBAEe,UAAU,uBADxC,MAAM,SAAC,yBAAyB;;IAXrC;QAFC,KAAK,CAAC,OAAO,CAAC;QACd,cAAc,EAAE;wDAGhB;IALQ,iBAAiB;QAR7B,SAAS,CAAC;YACP,QAAQ,EAAE,WAAW;YACrB,+XAAoC;YAEpC,SAAS,EAAE,CAAC,aAAa,CAAC;YAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC;;SAC7C,CAAC;QAaO,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAC7B,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChB,WAAA,MAAM,CAAC,yBAAyB,CAAC,CAAA;OAd7B,iBAAiB,CAiB7B;IAAD,wBAAC;CAjBD;;;ICVA;KAA8B;IAAjB,cAAc;QAL1B,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,CAAC;YAC3C,YAAY,EAAE,CAAC,iBAAiB,CAAC;YACjC,OAAO,EAAE,CAAC,iBAAiB,CAAC;SAC/B,CAAC;OACW,cAAc,CAAG;IAAD,qBAAC;CAA9B;;ACXA;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-error.js","sources":["ng://@taiga-ui/core/components/error/error.component.ts","ng://@taiga-ui/core/components/error/error.module.ts","ng://@taiga-ui/core/components/error/taiga-ui-core-components-error.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp, TuiValidationError} from '@taiga-ui/cdk';\nimport {tuiFadeIn, tuiHeightCollapse} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {\n TUI_ANIMATION_OPTIONS,\n TUI_DEFAULT_ERROR_MESSAGE,\n TUI_MODE,\n} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: `tui-error`,\n templateUrl: `./error.template.html`,\n styleUrls: [`./error.style.less`],\n providers: [MODE_PROVIDER],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiHeightCollapse, tuiFadeIn],\n})\nexport class TuiErrorComponent {\n @Input(`error`)\n @tuiDefaultProp()\n set errorSetter(error: TuiValidationError | string | null) {\n this.error = typeof error === `string` ? new TuiValidationError(error) : error;\n }\n\n error: TuiValidationError | null = null;\n\n readonly animation = {value: ``, ...this.options} as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_DEFAULT_ERROR_MESSAGE)\n readonly defaultErrorMessage$: Observable<string>,\n ) {}\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiErrorComponent} from './error.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiErrorComponent],\n exports: [TuiErrorComponent],\n})\nexport class TuiErrorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;IAgCI,2BACoD,OAAyB,EAC9C,KAAuC,EAEzD,oBAAwC;QAHD,YAAO,GAAP,OAAO,CAAkB;QAC9C,UAAK,GAAL,KAAK,CAAkC;QAEzD,yBAAoB,GAApB,oBAAoB,CAAoB;QARrD,UAAK,GAA8B,IAAI,CAAC;QAE/B,cAAS,GAAG,WAAC,KAAK,EAAE,EAAE,IAAK,IAAI,CAAC,OAAO,CAAU,CAAC;KAOvD;IAbJ,sBAAI,0CAAW;aAAf,UAAgB,KAAyC;YACrD,IAAI,CAAC,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;SAClF;;;OAAA;;gDAOI,MAAM,SAAC,qBAAqB;gBACK,UAAU,uBAA3C,MAAM,SAAC,QAAQ;gBAEe,UAAU,uBADxC,MAAM,SAAC,yBAAyB;;IAXrC;QAFC,KAAK,CAAC,OAAO,CAAC;QACd,cAAc,EAAE;wDAGhB;IALQ,iBAAiB;QAR7B,SAAS,CAAC;YACP,QAAQ,EAAE,WAAW;YACrB,+XAAoC;YAEpC,SAAS,EAAE,CAAC,aAAa,CAAC;YAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC;;SAC7C,CAAC;QAaO,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAC7B,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChB,WAAA,MAAM,CAAC,yBAAyB,CAAC,CAAA;OAd7B,iBAAiB,CAiB7B;IAAD,wBAAC;CAjBD;;;ICVA;KAA8B;IAAjB,cAAc;QAL1B,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,CAAC;YAC3C,YAAY,EAAE,CAAC,iBAAiB,CAAC;YACjC,OAAO,EAAE,CAAC,iBAAiB,CAAC;SAC/B,CAAC;OACW,cAAc,CAAG;IAAD,qBAAC;CAA9B;;ACXA;;;;;;"}