@taiga-ui/core 2.21.0 → 2.25.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 (724) hide show
  1. package/README.md +7 -3
  2. package/abstract/abstract-hint.d.ts +3 -1
  3. package/abstract/taiga-ui-core-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-core-abstract.umd.js +4 -2
  5. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  6. package/bundles/taiga-ui-core-abstract.umd.min.js +1 -1
  7. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-button.umd.js +21 -7
  9. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-button.umd.min.js +1 -1
  11. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-core-components-calendar.umd.js +1 -1
  13. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-calendar.umd.min.js +1 -1
  15. package/bundles/taiga-ui-core-components-calendar.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-core-components-data-list.umd.js +6 -5
  17. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  18. package/bundles/taiga-ui-core-components-data-list.umd.min.js +2 -2
  19. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-core-components-dialog.umd.js +16 -40
  21. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-dialog.umd.min.js +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 +1 -1
  25. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js +1 -1
  27. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-error.umd.js +1 -1
  29. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-error.umd.min.js +1 -1
  31. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-expand.umd.js +3 -2
  33. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-expand.umd.min.js +1 -1
  35. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-hints-host.umd.js +20 -14
  39. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-hints-host.umd.min.js +2 -2
  41. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +2 -15
  43. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  44. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js +1 -1
  45. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-label.umd.js +1 -1
  47. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-label.umd.min.js +1 -1
  49. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-core-components-link.umd.js +1 -1
  51. package/bundles/taiga-ui-core-components-link.umd.min.js +1 -1
  52. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  53. package/bundles/taiga-ui-core-components-loader.umd.js +2 -2
  54. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  55. package/bundles/taiga-ui-core-components-loader.umd.min.js +1 -1
  56. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-core-components-notification.umd.js +1 -1
  58. package/bundles/taiga-ui-core-components-notification.umd.min.js +1 -1
  59. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +2 -2
  60. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  61. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js +1 -1
  62. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +2 -2
  66. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js +1 -1
  67. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +138 -106
  68. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  69. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +2 -2
  70. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +2 -2
  72. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  73. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js +1 -1
  74. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  75. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +61 -61
  78. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  79. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +2 -2
  80. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-core-components-scrollbar.umd.js +52 -42
  82. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  83. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js +2 -2
  84. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  86. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  87. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  88. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  89. package/bundles/taiga-ui-core-components-tooltip.umd.js +1 -1
  90. package/bundles/taiga-ui-core-components-tooltip.umd.min.js +1 -1
  91. package/bundles/taiga-ui-core-components-wrapper.umd.js +1 -1
  92. package/bundles/taiga-ui-core-components-wrapper.umd.js.map +1 -1
  93. package/bundles/taiga-ui-core-components-wrapper.umd.min.js +1 -1
  94. package/bundles/taiga-ui-core-components-wrapper.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-components.umd.js +8 -8
  96. package/bundles/taiga-ui-core-components.umd.min.js +1 -1
  97. package/bundles/taiga-ui-core-constants.umd.js +12 -3
  98. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  99. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  100. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-core-directives-border.umd.js +291 -0
  102. package/bundles/taiga-ui-core-directives-border.umd.js.map +1 -0
  103. package/bundles/taiga-ui-core-directives-border.umd.min.js +16 -0
  104. package/bundles/taiga-ui-core-directives-border.umd.min.js.map +1 -0
  105. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  106. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  107. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  108. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  110. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  111. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  112. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-core-directives-hint.umd.js +7 -4
  114. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  115. package/bundles/taiga-ui-core-directives-hint.umd.min.js +1 -1
  116. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  117. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +7 -4
  118. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  119. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js +1 -1
  120. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  122. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  123. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  124. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +1 -1
  126. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  127. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js +1 -1
  128. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  130. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  132. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  133. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +9 -3
  134. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  135. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  136. package/bundles/taiga-ui-core-directives.umd.js +16 -8
  137. package/bundles/taiga-ui-core-directives.umd.js.map +1 -1
  138. package/bundles/taiga-ui-core-directives.umd.min.js +1 -1
  139. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -1
  140. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  141. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js +1 -1
  142. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  144. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  145. package/bundles/taiga-ui-core-modules-notifications.umd.js +25 -25
  146. package/bundles/taiga-ui-core-modules-notifications.umd.js.map +1 -1
  147. package/bundles/taiga-ui-core-modules-notifications.umd.min.js +1 -1
  148. package/bundles/taiga-ui-core-modules-notifications.umd.min.js.map +1 -1
  149. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  150. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  151. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  152. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  153. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  154. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  155. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  156. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  157. package/bundles/taiga-ui-core-pipes.umd.js +12 -12
  158. package/bundles/taiga-ui-core-pipes.umd.min.js +1 -1
  159. package/bundles/taiga-ui-core-providers.umd.js +9 -9
  160. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  161. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  162. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  163. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  164. package/bundles/taiga-ui-core-tokens.umd.js +28 -19
  165. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  166. package/bundles/taiga-ui-core-tokens.umd.min.js +1 -1
  167. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  168. package/bundles/taiga-ui-core-utils-dom.umd.js +3 -1
  169. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  170. package/bundles/taiga-ui-core-utils-dom.umd.min.js +1 -1
  171. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  172. package/bundles/taiga-ui-core-utils-mask.umd.js +28 -8
  173. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  174. package/bundles/taiga-ui-core-utils-mask.umd.min.js +1 -1
  175. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  176. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +2 -4
  177. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  178. package/bundles/taiga-ui-core-utils-miscellaneous.umd.min.js +1 -1
  179. package/bundles/taiga-ui-core-utils-miscellaneous.umd.min.js.map +1 -1
  180. package/components/button/button-options.d.ts +10 -0
  181. package/components/button/button.component.d.ts +8 -7
  182. package/components/button/index.d.ts +1 -0
  183. package/components/button/taiga-ui-core-components-button.metadata.json +1 -1
  184. package/components/calendar/taiga-ui-core-components-calendar.metadata.json +1 -1
  185. package/components/data-list/index.d.ts +1 -1
  186. package/components/data-list/taiga-ui-core-components-data-list.metadata.json +1 -1
  187. package/components/dialog/dialog.directive.d.ts +2 -11
  188. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  189. package/components/dropdown-box/taiga-ui-core-components-dropdown-box.metadata.json +1 -1
  190. package/components/error/taiga-ui-core-components-error.metadata.json +1 -1
  191. package/components/expand/taiga-ui-core-components-expand.metadata.json +1 -1
  192. package/components/group/taiga-ui-core-components-group.metadata.json +1 -1
  193. package/components/hints-host/index.d.ts +2 -2
  194. package/components/hints-host/taiga-ui-core-components-hints-host.metadata.json +1 -1
  195. package/components/hosted-dropdown/hosted-dropdown.component.d.ts +1 -3
  196. package/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.metadata.json +1 -1
  197. package/components/index.d.ts +1 -1
  198. package/components/label/taiga-ui-core-components-label.metadata.json +1 -1
  199. package/components/link/taiga-ui-core-components-link.metadata.json +1 -1
  200. package/components/loader/taiga-ui-core-components-loader.metadata.json +1 -1
  201. package/components/notification/taiga-ui-core-components-notification.metadata.json +1 -1
  202. package/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.metadata.json +1 -1
  203. package/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.metadata.json +1 -1
  204. package/components/primitive-spin-button/taiga-ui-core-components-primitive-spin-button.metadata.json +1 -1
  205. package/components/primitive-textfield/index.d.ts +1 -0
  206. package/components/primitive-textfield/primitive-textfield.component.d.ts +9 -16
  207. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  208. package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +18 -0
  209. package/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.metadata.json +1 -1
  210. package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
  211. package/components/scroll-controls/index.d.ts +1 -1
  212. package/components/scroll-controls/taiga-ui-core-components-scroll-controls.metadata.json +1 -1
  213. package/components/scrollbar/index.d.ts +1 -1
  214. package/components/scrollbar/scrollable.directive.d.ts +5 -1
  215. package/components/scrollbar/scrollbar.component.d.ts +4 -3
  216. package/components/scrollbar/taiga-ui-core-components-scrollbar.metadata.json +1 -1
  217. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  218. package/components/taiga-ui-core-components.metadata.json +1 -1
  219. package/components/theme-night/taiga-ui-core-components-theme-night.metadata.json +1 -1
  220. package/components/tooltip/taiga-ui-core-components-tooltip.metadata.json +1 -1
  221. package/components/wrapper/taiga-ui-core-components-wrapper.metadata.json +1 -1
  222. package/constants/events.d.ts +5 -0
  223. package/constants/index.d.ts +1 -1
  224. package/constants/media.d.ts +1 -0
  225. package/constants/regexp.d.ts +1 -0
  226. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  227. package/constants/version.d.ts +1 -1
  228. package/directives/border/border.directive.d.ts +9 -0
  229. package/directives/border/border.module.d.ts +2 -0
  230. package/directives/border/index.d.ts +2 -0
  231. package/directives/border/package.json +13 -0
  232. package/directives/border/taiga-ui-core-directives-border.d.ts +4 -0
  233. package/directives/border/taiga-ui-core-directives-border.metadata.json +1 -0
  234. package/directives/color/index.d.ts +1 -1
  235. package/directives/color/taiga-ui-core-directives-color.metadata.json +1 -1
  236. package/directives/described-by/taiga-ui-core-directives-described-by.metadata.json +1 -1
  237. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  238. package/directives/hint/hint.directive.d.ts +2 -2
  239. package/directives/hint/taiga-ui-core-directives-hint.metadata.json +1 -1
  240. package/directives/hint-controller/taiga-ui-core-directives-hint-controller.metadata.json +1 -1
  241. package/directives/index.d.ts +2 -1
  242. package/directives/manual-hint/manual-hint.directive.d.ts +2 -1
  243. package/directives/manual-hint/taiga-ui-core-directives-manual-hint.metadata.json +1 -1
  244. package/directives/mask-accessor/taiga-ui-core-directives-mask-accessor.metadata.json +1 -1
  245. package/directives/mode/taiga-ui-core-directives-mode.metadata.json +1 -1
  246. package/directives/pointer-hint/taiga-ui-core-directives-pointer-hint.metadata.json +1 -1
  247. package/directives/scroll-into-view/taiga-ui-core-directives-scroll-into-view.metadata.json +1 -1
  248. package/directives/table-mode/taiga-ui-core-directives-table-mode.metadata.json +1 -1
  249. package/directives/taiga-ui-core-directives.metadata.json +1 -1
  250. package/directives/textfield-controller/index.d.ts +2 -2
  251. package/directives/textfield-controller/taiga-ui-core-directives-textfield-controller.metadata.json +1 -1
  252. package/directives/textfield-controller/textfield-controller.provider.d.ts +1 -1
  253. package/esm2015/abstract/abstract-hint.js +6 -4
  254. package/esm2015/components/button/button-options.js +10 -0
  255. package/esm2015/components/button/button.component.js +12 -8
  256. package/esm2015/components/button/button.module.js +1 -1
  257. package/esm2015/components/button/index.js +2 -1
  258. package/esm2015/components/calendar/calendar.component.js +2 -2
  259. package/esm2015/components/data-list/data-list.component.js +4 -3
  260. package/esm2015/components/data-list/data-list.module.js +2 -2
  261. package/esm2015/components/data-list/index.js +2 -2
  262. package/esm2015/components/data-list/option/option.component.js +4 -4
  263. package/esm2015/components/dialog/dialog.component.js +3 -3
  264. package/esm2015/components/dialog/dialog.directive.js +14 -36
  265. package/esm2015/components/dialog/dialog.module.js +1 -1
  266. package/esm2015/components/dialog/dialog.service.js +1 -1
  267. package/esm2015/components/dropdown-box/dropdown-box.component.js +1 -1
  268. package/esm2015/components/dropdown-box/dropdown-box.module.js +1 -1
  269. package/esm2015/components/error/error.component.js +1 -1
  270. package/esm2015/components/error/error.module.js +1 -1
  271. package/esm2015/components/expand/expand.component.js +4 -3
  272. package/esm2015/components/expand/expand.module.js +2 -2
  273. package/esm2015/components/group/group.component.js +1 -1
  274. package/esm2015/components/group/group.module.js +1 -1
  275. package/esm2015/components/hints-host/hint-box/hint-box.component.js +3 -3
  276. package/esm2015/components/hints-host/hint-box/hint-box.module.js +1 -1
  277. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  278. package/esm2015/components/hints-host/hints-host.module.js +9 -3
  279. package/esm2015/components/hints-host/index.js +3 -3
  280. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +4 -13
  281. package/esm2015/components/hosted-dropdown/hosted-dropdown.module.js +2 -2
  282. package/esm2015/components/index.js +2 -2
  283. package/esm2015/components/label/label.component.js +2 -2
  284. package/esm2015/components/label/label.module.js +1 -1
  285. package/esm2015/components/link/link.component.js +1 -1
  286. package/esm2015/components/loader/loader.component.js +3 -3
  287. package/esm2015/components/loader/loader.module.js +1 -1
  288. package/esm2015/components/notification/notification.component.js +1 -1
  289. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  290. package/esm2015/components/primitive-calendar/primitive-calendar.module.js +1 -1
  291. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +1 -1
  292. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +2 -2
  293. package/esm2015/components/primitive-textfield/index.js +2 -1
  294. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +38 -67
  295. package/esm2015/components/primitive-textfield/primitive-textfield.module.js +7 -2
  296. package/esm2015/components/primitive-textfield/primitive-textfield.providers.js +1 -1
  297. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +65 -0
  298. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  299. package/esm2015/components/root/root.module.js +1 -1
  300. package/esm2015/components/scroll-controls/index.js +2 -2
  301. package/esm2015/components/scroll-controls/scroll-controls.component.js +2 -2
  302. package/esm2015/components/scroll-controls/scroll-controls.module.js +2 -2
  303. package/esm2015/components/scrollbar/index.js +2 -2
  304. package/esm2015/components/scrollbar/scrollable.directive.js +18 -4
  305. package/esm2015/components/scrollbar/scrollbar.component.js +20 -18
  306. package/esm2015/components/scrollbar/scrollbar.module.js +1 -1
  307. package/esm2015/components/svg/svg.module.js +1 -1
  308. package/esm2015/components/theme-night/theme-night.module.js +1 -1
  309. package/esm2015/components/tooltip/tooltip.component.js +1 -1
  310. package/esm2015/components/wrapper/wrapper.component.js +1 -1
  311. package/esm2015/components/wrapper/wrapper.module.js +1 -1
  312. package/esm2015/constants/events.js +6 -1
  313. package/esm2015/constants/index.js +2 -2
  314. package/esm2015/constants/media.js +2 -1
  315. package/esm2015/constants/regexp.js +2 -1
  316. package/esm2015/constants/version.js +2 -2
  317. package/esm2015/directives/border/border.directive.js +42 -0
  318. package/esm2015/directives/border/border.module.js +13 -0
  319. package/esm2015/directives/border/index.js +3 -0
  320. package/esm2015/directives/border/taiga-ui-core-directives-border.js +5 -0
  321. package/esm2015/directives/color/color.module.js +1 -1
  322. package/esm2015/directives/color/index.js +2 -2
  323. package/esm2015/directives/described-by/described-by.module.js +1 -1
  324. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +1 -1
  325. package/esm2015/directives/dropdown-controller/dropdown-controller.module.js +1 -1
  326. package/esm2015/directives/dropdown-controller/dropdown-controller.provider.js +1 -1
  327. package/esm2015/directives/dropdown-controller/dropdown-controller.token.js +1 -1
  328. package/esm2015/directives/hint/hint.directive.js +10 -7
  329. package/esm2015/directives/hint/hint.module.js +1 -1
  330. package/esm2015/directives/hint-controller/hint-controller.directive.js +1 -1
  331. package/esm2015/directives/hint-controller/hint-controller.module.js +1 -1
  332. package/esm2015/directives/hint-controller/hint-controller.provider.js +1 -1
  333. package/esm2015/directives/hint-controller/hint-controller.token.js +1 -1
  334. package/esm2015/directives/index.js +3 -2
  335. package/esm2015/directives/manual-hint/manual-hint.directive.js +10 -7
  336. package/esm2015/directives/manual-hint/manual-hint.module.js +1 -1
  337. package/esm2015/directives/mask-accessor/mask-accessor.module.js +1 -1
  338. package/esm2015/directives/mode/mode.module.js +1 -1
  339. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +2 -2
  340. package/esm2015/directives/pointer-hint/pointer-hint.module.js +1 -1
  341. package/esm2015/directives/scroll-into-view/scroll-into-view.module.js +1 -1
  342. package/esm2015/directives/table-mode/table-mode.module.js +1 -1
  343. package/esm2015/directives/textfield-controller/index.js +3 -3
  344. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -2
  345. package/esm2015/directives/textfield-controller/textfield-controller.module.js +1 -1
  346. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  347. package/esm2015/directives/textfield-controller/textfield-size.directive.js +4 -2
  348. package/esm2015/directives/textfield-controller/textfield-type.directive.js +4 -2
  349. package/esm2015/directives/textfield-controller/textfield.controller.js +1 -1
  350. package/esm2015/interfaces/dialog-context.js +1 -1
  351. package/esm2015/interfaces/index.js +1 -1
  352. package/esm2015/interfaces/media.js +1 -0
  353. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  354. package/esm2015/internal/svg-defs-host/svg-defs-host.module.js +1 -1
  355. package/esm2015/mask/index.js +1 -1
  356. package/esm2015/modules/notifications/index.js +3 -3
  357. package/esm2015/modules/notifications/notification-alert/Notification-alert.js +1 -1
  358. package/esm2015/modules/notifications/notification-alert/notification-alert.component.js +2 -2
  359. package/esm2015/modules/notifications/notifications-host/notifications-host.component.js +2 -2
  360. package/esm2015/modules/notifications/notifications.module.js +1 -1
  361. package/esm2015/modules/notifications/notifications.service.js +1 -1
  362. package/esm2015/pipes/calendar-sheet/calendar-sheet.module.js +1 -1
  363. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +1 -1
  364. package/esm2015/pipes/calendar-sheet/index.js +2 -2
  365. package/esm2015/pipes/format-number/format-number.pipe.js +1 -1
  366. package/esm2015/pipes/index.js +2 -2
  367. package/esm2015/pipes/month/month.module.js +1 -1
  368. package/esm2015/pipes/pluralize/pluralize.module.js +1 -1
  369. package/esm2015/providers/index.js +2 -2
  370. package/esm2015/services/hint.service.js +1 -1
  371. package/esm2015/tokens/animation-options.js +1 -1
  372. package/esm2015/tokens/index.js +5 -4
  373. package/esm2015/tokens/media.js +9 -0
  374. package/esm2015/tokens/ordered-short-week-days.js +1 -1
  375. package/esm2015/types/marker-handler.js +1 -1
  376. package/esm2015/utils/dom/process-icon.js +4 -2
  377. package/esm2015/utils/mask/create-number-mask.js +28 -10
  378. package/esm2015/utils/miscellaneous/get-border.js +3 -5
  379. package/esm5/abstract/abstract-hint.js +6 -4
  380. package/esm5/components/button/button-options.js +10 -0
  381. package/esm5/components/button/button.component.js +12 -8
  382. package/esm5/components/button/button.module.js +1 -1
  383. package/esm5/components/button/index.js +2 -1
  384. package/esm5/components/calendar/calendar.component.js +2 -2
  385. package/esm5/components/data-list/data-list.component.js +4 -3
  386. package/esm5/components/data-list/data-list.module.js +2 -2
  387. package/esm5/components/data-list/index.js +2 -2
  388. package/esm5/components/data-list/option/option.component.js +4 -4
  389. package/esm5/components/dialog/dialog.component.js +3 -3
  390. package/esm5/components/dialog/dialog.directive.js +18 -43
  391. package/esm5/components/dialog/dialog.module.js +1 -1
  392. package/esm5/components/dialog/dialog.service.js +1 -1
  393. package/esm5/components/dropdown-box/dropdown-box.component.js +1 -1
  394. package/esm5/components/dropdown-box/dropdown-box.module.js +1 -1
  395. package/esm5/components/error/error.component.js +1 -1
  396. package/esm5/components/error/error.module.js +1 -1
  397. package/esm5/components/expand/expand.component.js +4 -3
  398. package/esm5/components/expand/expand.module.js +2 -2
  399. package/esm5/components/group/group.component.js +1 -1
  400. package/esm5/components/group/group.module.js +1 -1
  401. package/esm5/components/hints-host/hint-box/hint-box.component.js +3 -3
  402. package/esm5/components/hints-host/hint-box/hint-box.module.js +1 -1
  403. package/esm5/components/hints-host/hints-host.component.js +3 -3
  404. package/esm5/components/hints-host/hints-host.module.js +9 -3
  405. package/esm5/components/hints-host/index.js +3 -3
  406. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +4 -17
  407. package/esm5/components/hosted-dropdown/hosted-dropdown.module.js +2 -2
  408. package/esm5/components/index.js +2 -2
  409. package/esm5/components/label/label.component.js +2 -2
  410. package/esm5/components/label/label.module.js +1 -1
  411. package/esm5/components/link/link.component.js +1 -1
  412. package/esm5/components/loader/loader.component.js +3 -3
  413. package/esm5/components/loader/loader.module.js +1 -1
  414. package/esm5/components/notification/notification.component.js +1 -1
  415. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  416. package/esm5/components/primitive-calendar/primitive-calendar.module.js +1 -1
  417. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +1 -1
  418. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +2 -2
  419. package/esm5/components/primitive-textfield/index.js +2 -1
  420. package/esm5/components/primitive-textfield/primitive-textfield.component.js +43 -104
  421. package/esm5/components/primitive-textfield/primitive-textfield.module.js +7 -2
  422. package/esm5/components/primitive-textfield/primitive-textfield.providers.js +1 -1
  423. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +99 -0
  424. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  425. package/esm5/components/root/root.module.js +1 -1
  426. package/esm5/components/scroll-controls/index.js +2 -2
  427. package/esm5/components/scroll-controls/scroll-controls.component.js +2 -2
  428. package/esm5/components/scroll-controls/scroll-controls.module.js +2 -2
  429. package/esm5/components/scrollbar/index.js +2 -2
  430. package/esm5/components/scrollbar/scrollable.directive.js +17 -5
  431. package/esm5/components/scrollbar/scrollbar.component.js +20 -22
  432. package/esm5/components/scrollbar/scrollbar.module.js +1 -1
  433. package/esm5/components/svg/svg.module.js +1 -1
  434. package/esm5/components/theme-night/theme-night.module.js +1 -1
  435. package/esm5/components/tooltip/tooltip.component.js +1 -1
  436. package/esm5/components/wrapper/wrapper.component.js +1 -1
  437. package/esm5/components/wrapper/wrapper.module.js +1 -1
  438. package/esm5/constants/events.js +6 -1
  439. package/esm5/constants/index.js +2 -2
  440. package/esm5/constants/media.js +2 -1
  441. package/esm5/constants/regexp.js +2 -1
  442. package/esm5/constants/version.js +2 -2
  443. package/esm5/directives/border/border.directive.js +51 -0
  444. package/esm5/directives/border/border.module.js +16 -0
  445. package/esm5/directives/border/index.js +3 -0
  446. package/esm5/directives/border/taiga-ui-core-directives-border.js +5 -0
  447. package/esm5/directives/color/color.module.js +1 -1
  448. package/esm5/directives/color/index.js +2 -2
  449. package/esm5/directives/described-by/described-by.module.js +1 -1
  450. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +1 -1
  451. package/esm5/directives/dropdown-controller/dropdown-controller.module.js +1 -1
  452. package/esm5/directives/dropdown-controller/dropdown-controller.provider.js +1 -1
  453. package/esm5/directives/dropdown-controller/dropdown-controller.token.js +1 -1
  454. package/esm5/directives/hint/hint.directive.js +10 -7
  455. package/esm5/directives/hint/hint.module.js +1 -1
  456. package/esm5/directives/hint-controller/hint-controller.directive.js +1 -1
  457. package/esm5/directives/hint-controller/hint-controller.module.js +1 -1
  458. package/esm5/directives/hint-controller/hint-controller.provider.js +1 -1
  459. package/esm5/directives/hint-controller/hint-controller.token.js +1 -1
  460. package/esm5/directives/index.js +3 -2
  461. package/esm5/directives/manual-hint/manual-hint.directive.js +10 -7
  462. package/esm5/directives/manual-hint/manual-hint.module.js +1 -1
  463. package/esm5/directives/mask-accessor/mask-accessor.module.js +1 -1
  464. package/esm5/directives/mode/mode.module.js +1 -1
  465. package/esm5/directives/pointer-hint/pointer-hint.directive.js +2 -2
  466. package/esm5/directives/pointer-hint/pointer-hint.module.js +1 -1
  467. package/esm5/directives/scroll-into-view/scroll-into-view.module.js +1 -1
  468. package/esm5/directives/table-mode/table-mode.module.js +1 -1
  469. package/esm5/directives/textfield-controller/index.js +3 -3
  470. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -2
  471. package/esm5/directives/textfield-controller/textfield-controller.module.js +1 -1
  472. package/esm5/directives/textfield-controller/textfield-controller.provider.js +2 -2
  473. package/esm5/directives/textfield-controller/textfield-size.directive.js +4 -2
  474. package/esm5/directives/textfield-controller/textfield-type.directive.js +4 -2
  475. package/esm5/directives/textfield-controller/textfield.controller.js +1 -1
  476. package/esm5/interfaces/dialog-context.js +1 -1
  477. package/esm5/interfaces/index.js +1 -1
  478. package/esm5/interfaces/media.js +1 -0
  479. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  480. package/esm5/internal/svg-defs-host/svg-defs-host.module.js +1 -1
  481. package/esm5/mask/index.js +1 -1
  482. package/esm5/modules/notifications/index.js +3 -3
  483. package/esm5/modules/notifications/notification-alert/Notification-alert.js +1 -1
  484. package/esm5/modules/notifications/notification-alert/notification-alert.component.js +2 -2
  485. package/esm5/modules/notifications/notifications-host/notifications-host.component.js +2 -2
  486. package/esm5/modules/notifications/notifications.module.js +1 -1
  487. package/esm5/modules/notifications/notifications.service.js +1 -1
  488. package/esm5/pipes/calendar-sheet/calendar-sheet.module.js +1 -1
  489. package/esm5/pipes/calendar-sheet/calendar-sheet.pipe.js +1 -1
  490. package/esm5/pipes/calendar-sheet/index.js +2 -2
  491. package/esm5/pipes/format-number/format-number.pipe.js +1 -1
  492. package/esm5/pipes/index.js +2 -2
  493. package/esm5/pipes/month/month.module.js +1 -1
  494. package/esm5/pipes/pluralize/pluralize.module.js +1 -1
  495. package/esm5/providers/index.js +2 -2
  496. package/esm5/services/hint.service.js +1 -1
  497. package/esm5/tokens/animation-options.js +1 -1
  498. package/esm5/tokens/index.js +5 -4
  499. package/esm5/tokens/media.js +9 -0
  500. package/esm5/tokens/ordered-short-week-days.js +1 -1
  501. package/esm5/types/marker-handler.js +1 -1
  502. package/esm5/utils/dom/process-icon.js +4 -2
  503. package/esm5/utils/mask/create-number-mask.js +30 -10
  504. package/esm5/utils/miscellaneous/get-border.js +3 -5
  505. package/fesm2015/taiga-ui-core-abstract.js +4 -2
  506. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  507. package/fesm2015/taiga-ui-core-components-button.js +21 -9
  508. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  509. package/fesm2015/taiga-ui-core-components-calendar.js +1 -1
  510. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  511. package/fesm2015/taiga-ui-core-components-data-list.js +6 -5
  512. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  513. package/fesm2015/taiga-ui-core-components-dialog.js +16 -37
  514. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  515. package/fesm2015/taiga-ui-core-components-dropdown-box.js +1 -1
  516. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  517. package/fesm2015/taiga-ui-core-components-error.js +1 -1
  518. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  519. package/fesm2015/taiga-ui-core-components-expand.js +3 -2
  520. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  521. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  522. package/fesm2015/taiga-ui-core-components-hints-host.js +16 -10
  523. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  524. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +3 -12
  525. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  526. package/fesm2015/taiga-ui-core-components-label.js +1 -1
  527. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  528. package/fesm2015/taiga-ui-core-components-link.js +1 -1
  529. package/fesm2015/taiga-ui-core-components-loader.js +2 -2
  530. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  531. package/fesm2015/taiga-ui-core-components-notification.js +1 -1
  532. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  533. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  534. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  535. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +2 -2
  536. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +102 -69
  537. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  538. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  539. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  540. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  541. package/fesm2015/taiga-ui-core-components-scroll-controls.js +56 -56
  542. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  543. package/fesm2015/taiga-ui-core-components-scrollbar.js +49 -33
  544. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  545. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  546. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  547. package/fesm2015/taiga-ui-core-components-tooltip.js +1 -1
  548. package/fesm2015/taiga-ui-core-components-wrapper.js +1 -1
  549. package/fesm2015/taiga-ui-core-components-wrapper.js.map +1 -1
  550. package/fesm2015/taiga-ui-core-components.js +1 -1
  551. package/fesm2015/taiga-ui-core-constants.js +11 -4
  552. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  553. package/fesm2015/taiga-ui-core-directives-border.js +57 -0
  554. package/fesm2015/taiga-ui-core-directives-border.js.map +1 -0
  555. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  556. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  557. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  558. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  559. package/fesm2015/taiga-ui-core-directives-hint.js +9 -6
  560. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  561. package/fesm2015/taiga-ui-core-directives-manual-hint.js +9 -6
  562. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  563. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  564. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  565. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +1 -1
  566. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  567. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  568. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  569. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +9 -3
  570. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  571. package/fesm2015/taiga-ui-core-directives.js +2 -1
  572. package/fesm2015/taiga-ui-core-directives.js.map +1 -1
  573. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  574. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  575. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  576. package/fesm2015/taiga-ui-core-modules-notifications.js +24 -24
  577. package/fesm2015/taiga-ui-core-modules-notifications.js.map +1 -1
  578. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  579. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  580. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  581. package/fesm2015/taiga-ui-core-pipes-pluralize.js.map +1 -1
  582. package/fesm2015/taiga-ui-core-pipes.js +1 -1
  583. package/fesm2015/taiga-ui-core-providers.js +7 -7
  584. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  585. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  586. package/fesm2015/taiga-ui-core-tokens.js +28 -20
  587. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  588. package/fesm2015/taiga-ui-core-utils-dom.js +3 -1
  589. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  590. package/fesm2015/taiga-ui-core-utils-mask.js +27 -9
  591. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  592. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +2 -4
  593. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  594. package/fesm5/taiga-ui-core-abstract.js +4 -2
  595. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  596. package/fesm5/taiga-ui-core-components-button.js +21 -9
  597. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  598. package/fesm5/taiga-ui-core-components-calendar.js +1 -1
  599. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  600. package/fesm5/taiga-ui-core-components-data-list.js +6 -5
  601. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  602. package/fesm5/taiga-ui-core-components-dialog.js +20 -44
  603. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  604. package/fesm5/taiga-ui-core-components-dropdown-box.js +1 -1
  605. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  606. package/fesm5/taiga-ui-core-components-error.js +1 -1
  607. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  608. package/fesm5/taiga-ui-core-components-expand.js +3 -2
  609. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  610. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  611. package/fesm5/taiga-ui-core-components-hints-host.js +16 -10
  612. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  613. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +3 -16
  614. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  615. package/fesm5/taiga-ui-core-components-label.js +1 -1
  616. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  617. package/fesm5/taiga-ui-core-components-link.js +1 -1
  618. package/fesm5/taiga-ui-core-components-loader.js +2 -2
  619. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  620. package/fesm5/taiga-ui-core-components-notification.js +1 -1
  621. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  622. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  623. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  624. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +2 -2
  625. package/fesm5/taiga-ui-core-components-primitive-textfield.js +141 -106
  626. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  627. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  628. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  629. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  630. package/fesm5/taiga-ui-core-components-scroll-controls.js +63 -63
  631. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  632. package/fesm5/taiga-ui-core-components-scrollbar.js +51 -41
  633. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  634. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  635. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  636. package/fesm5/taiga-ui-core-components-tooltip.js +1 -1
  637. package/fesm5/taiga-ui-core-components-wrapper.js +1 -1
  638. package/fesm5/taiga-ui-core-components-wrapper.js.map +1 -1
  639. package/fesm5/taiga-ui-core-components.js +1 -1
  640. package/fesm5/taiga-ui-core-constants.js +11 -4
  641. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  642. package/fesm5/taiga-ui-core-directives-border.js +69 -0
  643. package/fesm5/taiga-ui-core-directives-border.js.map +1 -0
  644. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  645. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  646. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  647. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  648. package/fesm5/taiga-ui-core-directives-hint.js +9 -6
  649. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  650. package/fesm5/taiga-ui-core-directives-manual-hint.js +9 -6
  651. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  652. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  653. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  654. package/fesm5/taiga-ui-core-directives-pointer-hint.js +1 -1
  655. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  656. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  657. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  658. package/fesm5/taiga-ui-core-directives-textfield-controller.js +9 -3
  659. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  660. package/fesm5/taiga-ui-core-directives.js +2 -1
  661. package/fesm5/taiga-ui-core-directives.js.map +1 -1
  662. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  663. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  664. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  665. package/fesm5/taiga-ui-core-modules-notifications.js +25 -25
  666. package/fesm5/taiga-ui-core-modules-notifications.js.map +1 -1
  667. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  668. package/fesm5/taiga-ui-core-pipes-format-number.js.map +1 -1
  669. package/fesm5/taiga-ui-core-pipes-month.js.map +1 -1
  670. package/fesm5/taiga-ui-core-pipes-pluralize.js.map +1 -1
  671. package/fesm5/taiga-ui-core-pipes.js +1 -1
  672. package/fesm5/taiga-ui-core-providers.js +7 -7
  673. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  674. package/fesm5/taiga-ui-core-services.js.map +1 -1
  675. package/fesm5/taiga-ui-core-tokens.js +28 -20
  676. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  677. package/fesm5/taiga-ui-core-utils-dom.js +3 -1
  678. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  679. package/fesm5/taiga-ui-core-utils-mask.js +30 -10
  680. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  681. package/fesm5/taiga-ui-core-utils-miscellaneous.js +2 -4
  682. package/fesm5/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  683. package/interfaces/index.d.ts +2 -1
  684. package/interfaces/media.d.ts +6 -0
  685. package/interfaces/taiga-ui-core-interfaces.metadata.json +1 -1
  686. package/internal/primitive-year-month-pagination/taiga-ui-core-internal-primitive-year-month-pagination.metadata.json +1 -1
  687. package/internal/svg-defs-host/taiga-ui-core-internal-svg-defs-host.metadata.json +1 -1
  688. package/mask/index.d.ts +1 -1
  689. package/mask/taiga-ui-core-mask.metadata.json +1 -1
  690. package/modules/notifications/index.d.ts +2 -2
  691. package/modules/notifications/taiga-ui-core-modules-notifications.metadata.json +1 -1
  692. package/package.json +5 -5
  693. package/pipes/calendar-sheet/index.d.ts +1 -1
  694. package/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.metadata.json +1 -1
  695. package/pipes/index.d.ts +1 -1
  696. package/pipes/month/taiga-ui-core-pipes-month.metadata.json +1 -1
  697. package/pipes/pluralize/taiga-ui-core-pipes-pluralize.metadata.json +1 -1
  698. package/pipes/taiga-ui-core-pipes.metadata.json +1 -1
  699. package/providers/index.d.ts +1 -1
  700. package/providers/taiga-ui-core-providers.metadata.json +1 -1
  701. package/services/taiga-ui-core-services.metadata.json +1 -1
  702. package/styles/basic/main.less +2 -4
  703. package/styles/markup/tui-autofill.less +2 -0
  704. package/styles/markup/tui-container-old.less +69 -0
  705. package/styles/markup/tui-form-old.less +141 -0
  706. package/styles/markup/tui-form.less +12 -12
  707. package/styles/markup/tui-group-old.less +322 -0
  708. package/styles/markup/tui-group.less +2 -2
  709. package/styles/markup/tui-row-old.less +157 -0
  710. package/styles/markup/tui-table.less +2 -2
  711. package/styles/mixins/mixins.less +8 -3
  712. package/styles/mixins/picker.less +1 -1
  713. package/styles/mixins/textfield.less +37 -78
  714. package/styles/taiga-ui-global-old.less +18 -0
  715. package/styles/taiga-ui-local-old.less +7 -0
  716. package/styles/theme/variables.less +4 -0
  717. package/styles/theme/wrapper/table.less +4 -0
  718. package/styles/variables/media-old.less +48 -0
  719. package/styles/variables/media.less +4 -4
  720. package/tokens/index.d.ts +4 -3
  721. package/tokens/media.d.ts +3 -0
  722. package/tokens/taiga-ui-core-tokens.metadata.json +1 -1
  723. package/utils/mask/create-number-mask.d.ts +1 -0
  724. package/utils/miscellaneous/get-border.d.ts +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@taiga-ui/core/animations'), require('@taiga-ui/core/directives/hint'), require('@taiga-ui/core/services'), require('@taiga-ui/core/tokens'), require('@angular/common'), require('@taiga-ui/cdk'), require('@tinkoff/ng-polymorpheus'), require('@ng-web-apis/common'), require('@taiga-ui/core/directives/pointer-hint'), require('rxjs'), require('rxjs/operators')) :
3
- typeof define === 'function' && define.amd ? define('@taiga-ui/core/components/hints-host', ['exports', '@angular/core', '@taiga-ui/core/animations', '@taiga-ui/core/directives/hint', '@taiga-ui/core/services', '@taiga-ui/core/tokens', '@angular/common', '@taiga-ui/cdk', '@tinkoff/ng-polymorpheus', '@ng-web-apis/common', '@taiga-ui/core/directives/pointer-hint', 'rxjs', 'rxjs/operators'], factory) :
4
- (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].core = global['taiga-ui'].core || {}, global['taiga-ui'].core.components = global['taiga-ui'].core.components || {}, global['taiga-ui'].core.components['hints-host'] = {}), global.ng.core, global['taiga-ui'].core.animations, global['taiga-ui'].core.directives.hint, global['taiga-ui'].core.services, global['taiga-ui'].core.tokens, global.ng.common, global.cdk, global.ngPolymorpheus, global.common$1, global['taiga-ui'].core.directives['pointer-hint'], global.rxjs, global.rxjs.operators));
5
- }(this, (function (exports, core, animations, hint, services, tokens, common, cdk, ngPolymorpheus, common$1, pointerHint, rxjs, operators) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@ng-web-apis/common'), require('@taiga-ui/cdk'), require('@taiga-ui/core/directives/pointer-hint'), require('rxjs'), require('rxjs/operators'), require('@taiga-ui/core/animations'), require('@taiga-ui/core/directives/hint'), require('@taiga-ui/core/services'), require('@taiga-ui/core/tokens'), require('@angular/common'), require('@tinkoff/ng-polymorpheus')) :
3
+ typeof define === 'function' && define.amd ? define('@taiga-ui/core/components/hints-host', ['exports', '@angular/core', '@ng-web-apis/common', '@taiga-ui/cdk', '@taiga-ui/core/directives/pointer-hint', 'rxjs', 'rxjs/operators', '@taiga-ui/core/animations', '@taiga-ui/core/directives/hint', '@taiga-ui/core/services', '@taiga-ui/core/tokens', '@angular/common', '@tinkoff/ng-polymorpheus'], factory) :
4
+ (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].core = global['taiga-ui'].core || {}, global['taiga-ui'].core.components = global['taiga-ui'].core.components || {}, global['taiga-ui'].core.components['hints-host'] = {}), global.ng.core, global.common, global.cdk, global['taiga-ui'].core.directives['pointer-hint'], global.rxjs, global.rxjs.operators, global['taiga-ui'].core.animations, global['taiga-ui'].core.directives.hint, global['taiga-ui'].core.services, global['taiga-ui'].core.tokens, global.ng.common, global.ngPolymorpheus));
5
+ }(this, (function (exports, core, common, cdk, pointerHint, rxjs, operators, animations, hint, services, tokens, common$1, ngPolymorpheus) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -250,13 +250,13 @@
250
250
  TuiHintsHostComponent = __decorate([
251
251
  core.Component({
252
252
  selector: 'tui-hints-host',
253
- template: "<tui-hint-box\n *ngFor=\"let hint of hints$ | async\"\n role=\"tooltip\"\n [attr.id]=\"hint.id\"\n [@tuiFadeIn]=\"animation\"\n [hint]=\"hint\"\n (tuiHoveredChange)=\"onHovered($event, hint)\"\n>\n <div polymorpheus-outlet [content]=\"hint.content\">\n <ng-template let-text>\n <span class=\"text\">{{text}}</span>\n </ng-template>\n </div>\n</tui-hint-box>\n",
253
+ template: "<tui-hint-box\n *ngFor=\"let hint of hints$ | async\"\n role=\"tooltip\"\n [@tuiFadeIn]=\"animation\"\n [attr.id]=\"hint.id\"\n [hint]=\"hint\"\n [tuiActiveZoneParent]=\"hint.activeZone\"\n (tuiHoveredChange)=\"onHovered($event, hint)\"\n>\n <div polymorpheus-outlet [content]=\"hint.content\">\n <ng-template let-text>\n <span class=\"t-text\">{{ text }}</span>\n </ng-template>\n </div>\n</tui-hint-box>\n",
254
254
  changeDetection: core.ChangeDetectionStrategy.OnPush,
255
255
  animations: [animations.tuiFadeIn],
256
256
  host: {
257
257
  'aria-live': 'polite',
258
258
  },
259
- styles: [":host{position:fixed;bottom:0;left:0;width:100%;height:0}.text{white-space:pre-wrap}"]
259
+ styles: [":host{position:fixed;bottom:0;left:0;width:100%;height:0}.t-text{white-space:pre-wrap}"]
260
260
  }),
261
261
  __param(0, core.Inject(tokens.TUI_ANIMATION_OPTIONS)),
262
262
  __param(1, core.Inject(core.ElementRef)),
@@ -447,11 +447,11 @@
447
447
  style.width = cdk.px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);
448
448
  };
449
449
  TuiHintBoxComponent.ctorParameters = function () { return [
450
- { type: rxjs.Observable, decorators: [{ type: core.Inject, args: [common$1.ANIMATION_FRAME,] }] },
450
+ { type: rxjs.Observable, decorators: [{ type: core.Inject, args: [common.ANIMATION_FRAME,] }] },
451
451
  { type: rxjs.Observable, decorators: [{ type: core.Inject, args: [cdk.TuiDestroyService,] }] },
452
452
  { type: core.NgZone, decorators: [{ type: core.Inject, args: [core.NgZone,] }] },
453
453
  { type: core.ElementRef, decorators: [{ type: core.Inject, args: [core.ElementRef,] }] },
454
- { type: Window, decorators: [{ type: core.Inject, args: [common$1.WINDOW,] }] },
454
+ { type: Window, decorators: [{ type: core.Inject, args: [common.WINDOW,] }] },
455
455
  { type: Boolean, decorators: [{ type: core.Inject, args: [cdk.TUI_IS_MOBILE,] }] },
456
456
  { type: TuiHintsHostComponent, decorators: [{ type: core.Inject, args: [TuiHintsHostComponent,] }] }
457
457
  ]; };
@@ -471,16 +471,16 @@
471
471
  TuiHintBoxComponent = __decorate([
472
472
  core.Component({
473
473
  selector: 'tui-hint-box[hint]',
474
- template: "<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div *ngIf=\"isMobile\" #arrow class=\"arrow\"></div>\n<div class=\"tooltip\" automation-id=\"tui-hint-box__tooltip\">\n <ng-content></ng-content>\n</div>\n",
474
+ template: "<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div *ngIf=\"isMobile\" #arrow class=\"t-arrow\"></div>\n<div automation-id=\"tui-hint-box__tooltip\" class=\"t-tooltip\">\n <ng-content></ng-content>\n</div>\n",
475
475
  changeDetection: core.ChangeDetectionStrategy.OnPush,
476
476
  providers: [cdk.TuiDestroyService],
477
- styles: [":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .tooltip{font:inherit}"]
477
+ styles: [":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}"]
478
478
  }),
479
- __param(0, core.Inject(common$1.ANIMATION_FRAME)),
479
+ __param(0, core.Inject(common.ANIMATION_FRAME)),
480
480
  __param(1, core.Inject(cdk.TuiDestroyService)),
481
481
  __param(2, core.Inject(core.NgZone)),
482
482
  __param(3, core.Inject(core.ElementRef)),
483
- __param(4, core.Inject(common$1.WINDOW)),
483
+ __param(4, core.Inject(common.WINDOW)),
484
484
  __param(5, core.Inject(cdk.TUI_IS_MOBILE)),
485
485
  __param(6, core.Inject(TuiHintsHostComponent))
486
486
  ], TuiHintBoxComponent);
@@ -492,7 +492,7 @@
492
492
  }
493
493
  TuiHintBoxModule = __decorate([
494
494
  core.NgModule({
495
- imports: [common.CommonModule],
495
+ imports: [common$1.CommonModule],
496
496
  declarations: [TuiHintBoxComponent],
497
497
  exports: [TuiHintBoxComponent],
498
498
  })
@@ -505,7 +505,13 @@
505
505
  }
506
506
  TuiHintsHostModule = __decorate([
507
507
  core.NgModule({
508
- imports: [common.CommonModule, ngPolymorpheus.PolymorpheusModule, cdk.TuiHoveredModule, TuiHintBoxModule],
508
+ imports: [
509
+ common$1.CommonModule,
510
+ ngPolymorpheus.PolymorpheusModule,
511
+ cdk.TuiHoveredModule,
512
+ TuiHintBoxModule,
513
+ cdk.TuiActiveZoneModule,
514
+ ],
509
515
  declarations: [TuiHintsHostComponent],
510
516
  exports: [TuiHintsHostComponent],
511
517
  entryComponents: [TuiHintsHostComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-hints-host.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\n\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHoveredModule, TuiHintBoxModule],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"],"names":["TuiHintDirective","Inject","TUI_ANIMATION_OPTIONS","ElementRef","TuiHintService","Component","ChangeDetectionStrategy","tuiFadeIn","tuiZonefree","takeUntil","TuiPointerHintDirective","px","Observable","ANIMATION_FRAME","TuiDestroyService","NgZone","WINDOW","TUI_IS_MOBILE","Input","ViewChild","tuiPure","HostBinding","NgModule","CommonModule","PolymorpheusModule","TuiHoveredModule"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-hints-host.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHoveredModule,\n TuiHintBoxModule,\n TuiActiveZoneModule,\n ],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"],"names":["TuiHintDirective","Inject","TUI_ANIMATION_OPTIONS","ElementRef","TuiHintService","Component","ChangeDetectionStrategy","tuiFadeIn","tuiZonefree","takeUntil","TuiPointerHintDirective","px","Observable","ANIMATION_FRAME","TuiDestroyService","NgZone","WINDOW","TUI_IS_MOBILE","Input","ViewChild","tuiPure","HostBinding","NgModule","CommonModule","PolymorpheusModule","TuiHoveredModule","TuiActiveZoneModule"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/directives/hint"),require("@taiga-ui/core/services"),require("@taiga-ui/core/tokens"),require("@angular/common"),require("@taiga-ui/cdk"),require("@tinkoff/ng-polymorpheus"),require("@ng-web-apis/common"),require("@taiga-ui/core/directives/pointer-hint"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/hints-host",["exports","@angular/core","@taiga-ui/core/animations","@taiga-ui/core/directives/hint","@taiga-ui/core/services","@taiga-ui/core/tokens","@angular/common","@taiga-ui/cdk","@tinkoff/ng-polymorpheus","@ng-web-apis/common","@taiga-ui/core/directives/pointer-hint","rxjs","rxjs/operators"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["hints-host"]={}),t.ng.core,t["taiga-ui"].core.animations,t["taiga-ui"].core.directives.hint,t["taiga-ui"].core.services,t["taiga-ui"].core.tokens,t.ng.common,t.cdk,t.ngPolymorpheus,t.common$1,t["taiga-ui"].core.directives["pointer-hint"],t.rxjs,t.rxjs.operators)}(this,(function(t,e,o,i,r,n,a,s,h,c,d,l,u){"use strict";
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ng-web-apis/common"),require("@taiga-ui/cdk"),require("@taiga-ui/core/directives/pointer-hint"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/directives/hint"),require("@taiga-ui/core/services"),require("@taiga-ui/core/tokens"),require("@angular/common"),require("@tinkoff/ng-polymorpheus")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/hints-host",["exports","@angular/core","@ng-web-apis/common","@taiga-ui/cdk","@taiga-ui/core/directives/pointer-hint","rxjs","rxjs/operators","@taiga-ui/core/animations","@taiga-ui/core/directives/hint","@taiga-ui/core/services","@taiga-ui/core/tokens","@angular/common","@tinkoff/ng-polymorpheus"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["hints-host"]={}),t.ng.core,t.common,t.cdk,t["taiga-ui"].core.directives["pointer-hint"],t.rxjs,t.rxjs.operators,t["taiga-ui"].core.animations,t["taiga-ui"].core.directives.hint,t["taiga-ui"].core.services,t["taiga-ui"].core.tokens,t.ng.common,t.ngPolymorpheus)}(this,(function(t,e,o,i,r,n,a,s,h,c,d,l,u){"use strict";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var p=function(){return(p=Object.assign||function(t){for(var e,o=1,i=arguments.length;o<i;o++)for(var r in e=arguments[o])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function f(t,e,o,i){var r,n=arguments.length,a=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(n<3?r(a):n>3?r(e,o,a):r(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a}function m(t,e){return function(o,i){e(o,i,t)}}var g=function(){function t(t,e,o){this.options=t,this.elementRef=e,this.hints$=o,this.animation=p({value:""},this.options)}return Object.defineProperty(t.prototype,"clientRect",{get:function(){return this.elementRef.nativeElement.getBoundingClientRect()},enumerable:!0,configurable:!0}),t.prototype.onHovered=function(t,e){e instanceof i.TuiHintDirective&&e.componentHovered$.next(t)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[n.TUI_ANIMATION_OPTIONS]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:r.TuiHintService,decorators:[{type:e.Inject,args:[r.TuiHintService]}]}]},t=f([e.Component({selector:"tui-hints-host",template:'<tui-hint-box\n *ngFor="let hint of hints$ | async"\n role="tooltip"\n [attr.id]="hint.id"\n [@tuiFadeIn]="animation"\n [hint]="hint"\n (tuiHoveredChange)="onHovered($event, hint)"\n>\n <div polymorpheus-outlet [content]="hint.content">\n <ng-template let-text>\n <span class="text">{{text}}</span>\n </ng-template>\n </div>\n</tui-hint-box>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,animations:[o.tuiFadeIn],host:{"aria-live":"polite"},styles:[":host{position:fixed;bottom:0;left:0;width:100%;height:0}.text{white-space:pre-wrap}"]}),m(0,e.Inject(n.TUI_ANIMATION_OPTIONS)),m(1,e.Inject(e.ElementRef)),m(2,e.Inject(r.TuiHintService))],t)}(),b=16+8*Math.sqrt(2)/2,v={"top-left":"bottom-left","top-right":"bottom-right","bottom-left":"top-left","bottom-right":"top-right",left:"right",right:"left"},w={"top-left":"top-right","top-right":"top-left","bottom-left":"bottom-right","bottom-right":"bottom-left",left:"right",right:"left"},y=function(){function t(t,e,o,i,r,n,a){var h=this;this.elementRef=i,this.windowRef=r,this.isMobile=n,this.hintsHost=a,t.pipe(s.tuiZonefree(o),u.takeUntil(e)).subscribe((function(){h.calculatePosition()}))}return Object.defineProperty(t.prototype,"isUntouchable",{get:function(){return this.hint instanceof d.TuiPointerHintDirective},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mode",{get:function(){return this.hint.mode},enumerable:!0,configurable:!0}),t.prototype.calculatePosition=function(){"overflow"!==this.mode?this.calculateCoordinates():this.setOverflowStyles()},t.prototype.calculateCoordinates=function(){if(this.isMobile)this.calculateMobileCoordinates();else{var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,i=o.style,r=o.getBoundingClientRect(),n=t.width>2*b,a=["left","right","bottom-left","bottom-right","top-left","top-right"],h=0,c=0,d=this.hint.direction,l=t.top+t.height/2-r.height/2-e.top,u=t.left-r.width-8-e.left,p=t.left+t.width+8-e.left,f=t.bottom+8-e.top,m=t.top-r.height-8-e.top,g=n?t.left-e.left:t.left+t.width/2-b-e.left,y=n?t.left-r.width+t.width-e.left:t.left-r.width+t.width/2+b-e.left;for(a.splice(a.indexOf(d),1);;){switch(d){case"left":h=l,c=u;break;case"right":h=l,c=p;break;case"top-right":h=m,c=g;break;case"top-left":h=m,c=y;break;case"bottom-right":h=f,c=g;break;case"bottom-left":h=f,c=y}var x=h+e.top>8&&h+r.height+8+e.top<this.windowRef.innerHeight,I=c>8&&c+r.width+8+e.left<e.width;if(0===a.length||x&&I)break;d=x?w[d]:v[d],d=a.splice(a.indexOf(d),1)[0]||d}i.top=s.px(h),i.left=s.px(c),o.setAttribute("data-tui-host-direction",d)}},t.prototype.calculateMobileCoordinates=function(){var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,i=o.style,r=o.getBoundingClientRect(),n=t.top-r.height-8-e.top,a=t.bottom+8-e.top,h=n+e.top>8&&t.top<this.windowRef.innerHeight,c=t.bottom>0&&t.bottom+16+r.height<this.windowRef.innerHeight,d=this.hint.direction.includes("top")&&h||!c?"top":"bottom",l=e.left+t.left+t.width/2-r.width/2,u=Math.max(l+r.width+8>e.right?e.right-8-r.width:l,16);i.left=s.px(u),i.top="top"===d?s.px(n):s.px(a),this.arrow&&(this.arrow.nativeElement.style.left=s.px(t.left<=16&&t.width>32?16:t.left+t.width/2-u-4)),o.setAttribute("data-tui-host-direction",d)},t.prototype.setOverflowStyles=function(){var t=this.hint.getElementClientRect(),e=this.elementRef.nativeElement.style;e.top=s.px(t.top-window.innerHeight-12-1),e.left=s.px(t.left-16-1),e.width=s.px(t.width+32+2)},t.ctorParameters=function(){return[{type:l.Observable,decorators:[{type:e.Inject,args:[c.ANIMATION_FRAME]}]},{type:l.Observable,decorators:[{type:e.Inject,args:[s.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:Window,decorators:[{type:e.Inject,args:[c.WINDOW]}]},{type:Boolean,decorators:[{type:e.Inject,args:[s.TUI_IS_MOBILE]}]},{type:g,decorators:[{type:e.Inject,args:[g]}]}]},f([e.Input()],t.prototype,"hint",void 0),f([e.ViewChild("arrow")],t.prototype,"arrow",void 0),f([s.tuiPure,e.HostBinding("class._untouchable")],t.prototype,"isUntouchable",null),f([e.HostBinding("attr.data-mode")],t.prototype,"mode",null),t=f([e.Component({selector:"tui-hint-box[hint]",template:'\x3c!-- @bad TODO: Refactor to use this arrow in all cases --\x3e\n<div *ngIf="isMobile" #arrow class="arrow"></div>\n<div class="tooltip" automation-id="tui-hint-box__tooltip">\n <ng-content></ng-content>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,providers:[s.TuiDestroyService],styles:[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .tooltip{font:inherit}"]}),m(0,e.Inject(c.ANIMATION_FRAME)),m(1,e.Inject(s.TuiDestroyService)),m(2,e.Inject(e.NgZone)),m(3,e.Inject(e.ElementRef)),m(4,e.Inject(c.WINDOW)),m(5,e.Inject(s.TUI_IS_MOBILE)),m(6,e.Inject(g))],t)}(),x=function(){function t(){}return t=f([e.NgModule({imports:[a.CommonModule],declarations:[y],exports:[y]})],t)}(),I=function(){function t(){}return t=f([e.NgModule({imports:[a.CommonModule,h.PolymorpheusModule,s.TuiHoveredModule,x],declarations:[g],exports:[g],entryComponents:[g]})],t)}();t.TuiHintBoxComponent=y,t.TuiHintBoxModule=x,t.TuiHintsHostComponent=g,t.TuiHintsHostModule=I,Object.defineProperty(t,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var p=function(){return(p=Object.assign||function(t){for(var e,o=1,i=arguments.length;o<i;o++)for(var r in e=arguments[o])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function f(t,e,o,i){var r,n=arguments.length,a=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(n<3?r(a):n>3?r(e,o,a):r(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a}function m(t,e){return function(o,i){e(o,i,t)}}var g=function(){function t(t,e,o){this.options=t,this.elementRef=e,this.hints$=o,this.animation=p({value:""},this.options)}return Object.defineProperty(t.prototype,"clientRect",{get:function(){return this.elementRef.nativeElement.getBoundingClientRect()},enumerable:!0,configurable:!0}),t.prototype.onHovered=function(t,e){e instanceof h.TuiHintDirective&&e.componentHovered$.next(t)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[d.TUI_ANIMATION_OPTIONS]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:c.TuiHintService,decorators:[{type:e.Inject,args:[c.TuiHintService]}]}]},t=f([e.Component({selector:"tui-hints-host",template:'<tui-hint-box\n *ngFor="let hint of hints$ | async"\n role="tooltip"\n [@tuiFadeIn]="animation"\n [attr.id]="hint.id"\n [hint]="hint"\n [tuiActiveZoneParent]="hint.activeZone"\n (tuiHoveredChange)="onHovered($event, hint)"\n>\n <div polymorpheus-outlet [content]="hint.content">\n <ng-template let-text>\n <span class="t-text">{{ text }}</span>\n </ng-template>\n </div>\n</tui-hint-box>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,animations:[s.tuiFadeIn],host:{"aria-live":"polite"},styles:[":host{position:fixed;bottom:0;left:0;width:100%;height:0}.t-text{white-space:pre-wrap}"]}),m(0,e.Inject(d.TUI_ANIMATION_OPTIONS)),m(1,e.Inject(e.ElementRef)),m(2,e.Inject(c.TuiHintService))],t)}(),b=16+8*Math.sqrt(2)/2,v={"top-left":"bottom-left","top-right":"bottom-right","bottom-left":"top-left","bottom-right":"top-right",left:"right",right:"left"},w={"top-left":"top-right","top-right":"top-left","bottom-left":"bottom-right","bottom-right":"bottom-left",left:"right",right:"left"},y=function(){function t(t,e,o,r,n,s,h){var c=this;this.elementRef=r,this.windowRef=n,this.isMobile=s,this.hintsHost=h,t.pipe(i.tuiZonefree(o),a.takeUntil(e)).subscribe((function(){c.calculatePosition()}))}return Object.defineProperty(t.prototype,"isUntouchable",{get:function(){return this.hint instanceof r.TuiPointerHintDirective},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mode",{get:function(){return this.hint.mode},enumerable:!0,configurable:!0}),t.prototype.calculatePosition=function(){"overflow"!==this.mode?this.calculateCoordinates():this.setOverflowStyles()},t.prototype.calculateCoordinates=function(){if(this.isMobile)this.calculateMobileCoordinates();else{var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.width>2*b,s=["left","right","bottom-left","bottom-right","top-left","top-right"],h=0,c=0,d=this.hint.direction,l=t.top+t.height/2-n.height/2-e.top,u=t.left-n.width-8-e.left,p=t.left+t.width+8-e.left,f=t.bottom+8-e.top,m=t.top-n.height-8-e.top,g=a?t.left-e.left:t.left+t.width/2-b-e.left,y=a?t.left-n.width+t.width-e.left:t.left-n.width+t.width/2+b-e.left;for(s.splice(s.indexOf(d),1);;){switch(d){case"left":h=l,c=u;break;case"right":h=l,c=p;break;case"top-right":h=m,c=g;break;case"top-left":h=m,c=y;break;case"bottom-right":h=f,c=g;break;case"bottom-left":h=f,c=y}var x=h+e.top>8&&h+n.height+8+e.top<this.windowRef.innerHeight,I=c>8&&c+n.width+8+e.left<e.width;if(0===s.length||x&&I)break;d=x?w[d]:v[d],d=s.splice(s.indexOf(d),1)[0]||d}r.top=i.px(h),r.left=i.px(c),o.setAttribute("data-tui-host-direction",d)}},t.prototype.calculateMobileCoordinates=function(){var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.top-n.height-8-e.top,s=t.bottom+8-e.top,h=a+e.top>8&&t.top<this.windowRef.innerHeight,c=t.bottom>0&&t.bottom+16+n.height<this.windowRef.innerHeight,d=this.hint.direction.includes("top")&&h||!c?"top":"bottom",l=e.left+t.left+t.width/2-n.width/2,u=Math.max(l+n.width+8>e.right?e.right-8-n.width:l,16);r.left=i.px(u),r.top="top"===d?i.px(a):i.px(s),this.arrow&&(this.arrow.nativeElement.style.left=i.px(t.left<=16&&t.width>32?16:t.left+t.width/2-u-4)),o.setAttribute("data-tui-host-direction",d)},t.prototype.setOverflowStyles=function(){var t=this.hint.getElementClientRect(),e=this.elementRef.nativeElement.style;e.top=i.px(t.top-window.innerHeight-12-1),e.left=i.px(t.left-16-1),e.width=i.px(t.width+32+2)},t.ctorParameters=function(){return[{type:n.Observable,decorators:[{type:e.Inject,args:[o.ANIMATION_FRAME]}]},{type:n.Observable,decorators:[{type:e.Inject,args:[i.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:Window,decorators:[{type:e.Inject,args:[o.WINDOW]}]},{type:Boolean,decorators:[{type:e.Inject,args:[i.TUI_IS_MOBILE]}]},{type:g,decorators:[{type:e.Inject,args:[g]}]}]},f([e.Input()],t.prototype,"hint",void 0),f([e.ViewChild("arrow")],t.prototype,"arrow",void 0),f([i.tuiPure,e.HostBinding("class._untouchable")],t.prototype,"isUntouchable",null),f([e.HostBinding("attr.data-mode")],t.prototype,"mode",null),t=f([e.Component({selector:"tui-hint-box[hint]",template:'\x3c!-- @bad TODO: Refactor to use this arrow in all cases --\x3e\n<div *ngIf="isMobile" #arrow class="t-arrow"></div>\n<div automation-id="tui-hint-box__tooltip" class="t-tooltip">\n <ng-content></ng-content>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,providers:[i.TuiDestroyService],styles:[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}"]}),m(0,e.Inject(o.ANIMATION_FRAME)),m(1,e.Inject(i.TuiDestroyService)),m(2,e.Inject(e.NgZone)),m(3,e.Inject(e.ElementRef)),m(4,e.Inject(o.WINDOW)),m(5,e.Inject(i.TUI_IS_MOBILE)),m(6,e.Inject(g))],t)}(),x=function(){function t(){}return t=f([e.NgModule({imports:[l.CommonModule],declarations:[y],exports:[y]})],t)}(),I=function(){function t(){}return t=f([e.NgModule({imports:[l.CommonModule,u.PolymorpheusModule,i.TuiHoveredModule,x,i.TuiActiveZoneModule],declarations:[g],exports:[g],entryComponents:[g]})],t)}();t.TuiHintBoxComponent=y,t.TuiHintBoxModule=x,t.TuiHintsHostComponent=g,t.TuiHintsHostModule=I,Object.defineProperty(t,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-core-components-hints-host.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","TuiHintsHostComponent","options","elementRef","hints$","animation","value","nativeElement","getBoundingClientRect","onHovered","hovered","directive","TuiHintDirective","componentHovered$","next","Inject","args","TUI_ANIMATION_OPTIONS","ElementRef","type","TuiHintService","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","tuiFadeIn","host","aria-live","ARROWHEAD_OFFSET","Math","sqrt","reverseDirectionsVertical","top-left","top-right","bottom-left","bottom-right","left","right","reverseDirectionsHorizontal","TuiHintBoxComponent","animationFrame$","destroy$","ngZone","windowRef","isMobile","hintsHost","_this","pipe","tuiZonefree","takeUntil","subscribe","calculatePosition","hint","TuiPointerHintDirective","mode","calculateCoordinates","setOverflowStyles","calculateMobileCoordinates","hostRect","getElementClientRect","portalRect","clientRect","tooltip","style","tooltipRect","isHostLong","width","directions","top","direction","horizontalTop","height","horizontalLeft","horizontalRight","verticalBottom","bottom","verticalTop","verticalRight","verticalLeft","splice","indexOf","verticalFit","innerHeight","horizontalFit","px","setAttribute","verticalTopFit","verticalBottomFit","includes","attemptedLeft","max","SPACE","arrow","ARROW_OFFSET","ARROW_SIZE","window","LEFT_PADDING","BORDER_WIDTH","Observable","ANIMATION_FRAME","TuiDestroyService","NgZone","Window","WINDOW","TUI_IS_MOBILE","Input","ViewChild","tuiPure","HostBinding","providers","TuiHintBoxModule","NgModule","imports","CommonModule","declarations","exports","TuiHintsHostModule","PolymorpheusModule","TuiHoveredModule","entryComponents"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\n\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHoveredModule, TuiHintBoxModule],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","TuiHintsHostComponent","options","elementRef","hints$","animation","value","nativeElement","getBoundingClientRect","onHovered","hovered","directive","TuiHintDirective","componentHovered$","next","Inject","args","TUI_ANIMATION_OPTIONS","ElementRef","type","TuiHintService","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","tuiFadeIn","host","aria-live","ARROWHEAD_OFFSET","Math","sqrt","reverseDirectionsVertical","top-left","top-right","bottom-left","bottom-right","left","right","reverseDirectionsHorizontal","TuiHintBoxComponent","animationFrame$","destroy$","ngZone","windowRef","isMobile","hintsHost","_this","pipe","tuiZonefree","takeUntil","subscribe","calculatePosition","hint","TuiPointerHintDirective","mode","calculateCoordinates","setOverflowStyles","calculateMobileCoordinates","hostRect","getElementClientRect","portalRect","clientRect","tooltip","style","tooltipRect","isHostLong","width","directions","top","direction","horizontalTop","height","horizontalLeft","horizontalRight","verticalBottom","bottom","verticalTop","verticalRight","verticalLeft","splice","indexOf","verticalFit","innerHeight","horizontalFit","px","setAttribute","verticalTopFit","verticalBottomFit","includes","attemptedLeft","max","SPACE","arrow","ARROW_OFFSET","ARROW_SIZE","window","LEFT_PADDING","BORDER_WIDTH","Observable","ANIMATION_FRAME","TuiDestroyService","NgZone","Window","WINDOW","TUI_IS_MOBILE","Input","ViewChild","tuiPure","HostBinding","providers","TuiHintBoxModule","NgModule","imports","CommonModule","declarations","exports","TuiHintsHostModule","PolymorpheusModule","TuiHoveredModule","TuiActiveZoneModule","entryComponents"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHoveredModule,\n TuiHintBoxModule,\n TuiActiveZoneModule,\n ],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"]}