@taiga-ui/core 4.52.0-canary.bf9131e → 4.52.0-canary.c8448e0

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 (320) hide show
  1. package/README.md +1 -1
  2. package/classes/accessors.d.ts +2 -2
  3. package/components/calendar/calendar-sheet.component.d.ts +1 -1
  4. package/components/calendar/calendar-sheet.options.d.ts +1 -3
  5. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +2 -2
  6. package/components/calendar/calendar-spin.component.d.ts +1 -0
  7. package/components/calendar/calendar-year.component.d.ts +1 -1
  8. package/components/calendar/calendar.options.d.ts +9 -0
  9. package/components/calendar/index.d.ts +3 -0
  10. package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +1 -1
  11. package/components/data-list/data-list.component.d.ts +7 -11
  12. package/components/data-list/data-list.d.ts +3 -4
  13. package/components/data-list/data-list.tokens.d.ts +1 -23
  14. package/components/data-list/index.d.ts +3 -4
  15. package/components/data-list/opt-group.directive.d.ts +2 -2
  16. package/components/data-list/option-content.directive.d.ts +14 -0
  17. package/components/data-list/option-with-value.directive.d.ts +9 -0
  18. package/components/data-list/option.directive.d.ts +19 -0
  19. package/components/icon/icon.component.d.ts +2 -2
  20. package/components/index.d.ts +2 -4
  21. package/components/input/index.d.ts +2 -0
  22. package/components/input/input.d.ts +5 -0
  23. package/components/input/input.directive.d.ts +29 -0
  24. package/components/label/label.directive.d.ts +1 -1
  25. package/components/link/index.d.ts +0 -1
  26. package/components/link/link.directive.d.ts +8 -6
  27. package/components/loader/loader.options.d.ts +1 -3
  28. package/components/notification/index.d.ts +3 -0
  29. package/components/notification/notification.component.d.ts +14 -0
  30. package/components/notification/notification.d.ts +3 -0
  31. package/components/notification/notification.directive.d.ts +7 -12
  32. package/components/notification/notification.options.d.ts +10 -7
  33. package/components/notification/notification.service.d.ts +17 -0
  34. package/components/root/root.component.d.ts +1 -1
  35. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  36. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  37. package/components/scrollbar/scrollbar.component.d.ts +1 -5
  38. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  39. package/components/spin-button/spin-button.component.d.ts +1 -1
  40. package/components/textfield/index.d.ts +0 -1
  41. package/components/textfield/select-like.directive.d.ts +1 -0
  42. package/components/textfield/textfield-multi/textfield-item.component.d.ts +3 -2
  43. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +9 -14
  44. package/components/textfield/textfield.component.d.ts +20 -34
  45. package/components/textfield/textfield.d.ts +2 -3
  46. package/directives/appearance/appearance.directive.d.ts +1 -1
  47. package/directives/appearance/appearance.options.d.ts +1 -2
  48. package/directives/button-x/button-x.directive.d.ts +6 -0
  49. package/directives/button-x/index.d.ts +1 -0
  50. package/directives/date-format/date-format.directive.d.ts +3 -7
  51. package/directives/group/group.directive.d.ts +7 -7
  52. package/directives/group/group.options.d.ts +1 -3
  53. package/directives/index.d.ts +1 -5
  54. package/directives/items-handlers/items-handlers.directive.d.ts +5 -9
  55. package/directives/items-handlers/items-handlers.tokens.d.ts +4 -4
  56. package/directives/number-format/number-format.directive.d.ts +3 -7
  57. package/fesm2022/taiga-ui-core-classes.mjs +9 -11
  58. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-core-components-button.mjs +7 -7
  60. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  61. package/fesm2022/taiga-ui-core-components-calendar.mjs +138 -39
  62. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-core-components-cell.mjs +7 -7
  64. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-core-components-data-list.mjs +110 -279
  66. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  67. package/fesm2022/taiga-ui-core-components-error.mjs +12 -11
  68. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  69. package/fesm2022/taiga-ui-core-components-expand.mjs +3 -3
  70. package/fesm2022/taiga-ui-core-components-icon.mjs +10 -11
  71. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-core-components-input.mjs +100 -0
  73. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -0
  74. package/fesm2022/taiga-ui-core-components-label.mjs +11 -13
  75. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-core-components-link.mjs +14 -31
  77. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-core-components-loader.mjs +7 -12
  79. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-core-components-notification.mjs +104 -49
  81. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-core-components-root.mjs +9 -13
  83. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +69 -83
  85. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-core-components-spin-button.mjs +6 -6
  87. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-core-components-textfield.mjs +131 -322
  89. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  90. package/fesm2022/{taiga-ui-core-directives-title.mjs → taiga-ui-core-components-title.mjs} +8 -8
  91. package/fesm2022/{taiga-ui-core-directives-title.mjs.map → taiga-ui-core-components-title.mjs.map} +1 -1
  92. package/fesm2022/taiga-ui-core-components.mjs +2 -4
  93. package/fesm2022/taiga-ui-core-components.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-core-directives-appearance.mjs +16 -16
  95. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-core-directives-button-x.mjs +51 -0
  97. package/fesm2022/taiga-ui-core-directives-button-x.mjs.map +1 -0
  98. package/fesm2022/taiga-ui-core-directives-date-format.mjs +26 -20
  99. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-core-directives-group.mjs +23 -35
  101. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-core-directives-icons.mjs +12 -12
  103. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  104. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +16 -40
  105. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  106. package/fesm2022/taiga-ui-core-directives-number-format.mjs +32 -20
  107. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  108. package/fesm2022/taiga-ui-core-directives.mjs +1 -5
  109. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  110. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -15
  111. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  112. package/fesm2022/taiga-ui-core-pipes.mjs +0 -7
  113. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  114. package/fesm2022/taiga-ui-core-portals-alert.mjs +73 -0
  115. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  116. package/fesm2022/taiga-ui-core-portals-dialog.mjs +159 -0
  117. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  118. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +223 -351
  119. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  120. package/fesm2022/{taiga-ui-core-directives-hint.mjs → taiga-ui-core-portals-hint.mjs} +102 -161
  121. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  122. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  123. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  124. package/fesm2022/{taiga-ui-core-directives-popup.mjs → taiga-ui-core-portals-popup.mjs} +11 -11
  125. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  126. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  127. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  128. package/fesm2022/taiga-ui-core-services.mjs +15 -79
  129. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-core-tokens.mjs +51 -60
  131. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -22
  133. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +19 -19
  135. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-core.mjs +1 -1
  137. package/index.d.ts +1 -1
  138. package/package.json +41 -67
  139. package/pipes/format-number/format-number.pipe.d.ts +6 -4
  140. package/pipes/index.d.ts +0 -7
  141. package/{directives/notification/notification.directive.d.ts → portals/alert/alert.directive.d.ts} +3 -3
  142. package/{directives/notification/notification.service.d.ts → portals/alert/alert.service.d.ts} +3 -3
  143. package/portals/alert/index.d.ts +2 -0
  144. package/{components → portals}/dialog/dialog.component.d.ts +2 -3
  145. package/{components → portals}/dialog/dialog.options.d.ts +2 -3
  146. package/{components → portals}/dialog/dialog.providers.d.ts +1 -2
  147. package/{components → portals}/dialog/dialog.service.d.ts +1 -1
  148. package/{components → portals}/dialog/index.d.ts +0 -1
  149. package/portals/dropdown/dropdown-close.directive.d.ts +15 -0
  150. package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -1
  151. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  152. package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +1 -3
  153. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  154. package/portals/dropdown/dropdown-open.directive.d.ts +29 -0
  155. package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +1 -5
  156. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  157. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +6 -6
  158. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  159. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  160. package/{directives → portals}/dropdown/dropdown.d.ts +1 -2
  161. package/{directives → portals}/dropdown/dropdown.directive.d.ts +5 -6
  162. package/{directives → portals}/dropdown/index.d.ts +1 -1
  163. package/portals/hint/hint-options.directive.d.ts +17 -0
  164. package/{directives → portals}/hint/hint-position.directive.d.ts +5 -5
  165. package/{directives → portals}/hint/hint.d.ts +1 -2
  166. package/{directives → portals}/hint/hint.directive.d.ts +2 -2
  167. package/portals/index.d.ts +6 -0
  168. package/{components → portals}/modal/modal.component.d.ts +3 -3
  169. package/{components → portals}/modal/modal.service.d.ts +3 -3
  170. package/services/index.d.ts +0 -3
  171. package/styles/components/appearance.less +5 -0
  172. package/styles/components/button.less +10 -20
  173. package/styles/components/icon.less +11 -0
  174. package/styles/components/icons.less +2 -1
  175. package/styles/components/label.less +3 -12
  176. package/styles/components/link.less +9 -24
  177. package/styles/components/notification.less +31 -65
  178. package/styles/components/textfield.less +130 -211
  179. package/styles/components/title.less +8 -8
  180. package/styles/mixins/appearance.less +11 -26
  181. package/styles/mixins/appearance.scss +9 -24
  182. package/styles/mixins/date-picker.less +1 -1
  183. package/styles/mixins/mixins.less +0 -5
  184. package/styles/mixins/mixins.scss +0 -5
  185. package/styles/mixins/picker.less +1 -1
  186. package/styles/mixins/picker.scss +1 -1
  187. package/styles/mixins/slider.less +4 -10
  188. package/styles/mixins/slider.scss +23 -22
  189. package/styles/taiga-ui-local.less +0 -1
  190. package/styles/taiga-ui-local.scss +0 -1
  191. package/styles/taiga-ui-theme.less +0 -1
  192. package/styles/theme/appearance/outline.less +9 -18
  193. package/styles/theme/appearance/primary.less +2 -4
  194. package/styles/theme/appearance/secondary.less +6 -14
  195. package/styles/theme/appearance/status.less +0 -4
  196. package/styles/theme/appearance/table.less +36 -35
  197. package/styles/theme/appearance/textfield.less +26 -27
  198. package/styles/theme/appearance.less +0 -1
  199. package/styles/theme/variables.less +16 -19
  200. package/styles/variables/media.less +13 -18
  201. package/styles/variables/media.scss +13 -13
  202. package/tokens/breakpoint.d.ts +4 -0
  203. package/tokens/common-icons.d.ts +3 -3
  204. package/tokens/date-format.d.ts +2 -3
  205. package/tokens/icons.d.ts +0 -4
  206. package/tokens/index.d.ts +1 -4
  207. package/tokens/number-format.d.ts +2 -3
  208. package/types/direction.d.ts +1 -1
  209. package/types/index.d.ts +0 -2
  210. package/types/point.d.ts +1 -1
  211. package/types/size.d.ts +0 -11
  212. package/utils/format/index.d.ts +0 -1
  213. package/utils/miscellaneous/font-scaling.d.ts +2 -1
  214. package/utils/miscellaneous/get-duration.d.ts +2 -0
  215. package/utils/miscellaneous/index.d.ts +1 -1
  216. package/animations/animations.d.ts +0 -109
  217. package/animations/index.d.ts +0 -1
  218. package/components/alert/alert.component.d.ts +0 -14
  219. package/components/alert/alert.directive.d.ts +0 -8
  220. package/components/alert/alert.interfaces.d.ts +0 -13
  221. package/components/alert/alert.service.d.ts +0 -11
  222. package/components/alert/alert.tokens.d.ts +0 -6
  223. package/components/alert/index.d.ts +0 -5
  224. package/components/data-list/data-list.directive.d.ts +0 -7
  225. package/components/data-list/option/option-content.d.ts +0 -16
  226. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  227. package/components/data-list/option/option.directive.d.ts +0 -27
  228. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  229. package/components/dialog/dialogs.component.d.ts +0 -8
  230. package/components/header/header.directive.d.ts +0 -17
  231. package/components/header/index.d.ts +0 -1
  232. package/components/link/link.options.d.ts +0 -12
  233. package/components/textfield/textfield.directive.d.ts +0 -38
  234. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  235. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  236. package/directives/hint/hint-options.directive.d.ts +0 -36
  237. package/directives/notification/index.d.ts +0 -2
  238. package/fesm2022/taiga-ui-core-animations.mjs +0 -370
  239. package/fesm2022/taiga-ui-core-animations.mjs.map +0 -1
  240. package/fesm2022/taiga-ui-core-components-alert.mjs +0 -110
  241. package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
  242. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -227
  243. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  244. package/fesm2022/taiga-ui-core-components-header.mjs +0 -42
  245. package/fesm2022/taiga-ui-core-components-header.mjs.map +0 -1
  246. package/fesm2022/taiga-ui-core-components-modal.mjs +0 -89
  247. package/fesm2022/taiga-ui-core-components-modal.mjs.map +0 -1
  248. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  249. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  250. package/fesm2022/taiga-ui-core-directives-notification.mjs +0 -73
  251. package/fesm2022/taiga-ui-core-directives-notification.mjs.map +0 -1
  252. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  253. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -25
  254. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  255. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -94
  256. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  257. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -32
  258. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  259. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -28
  260. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  261. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -29
  262. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  263. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -30
  264. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  265. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -36
  266. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  267. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  268. package/pipes/auto-color/index.d.ts +0 -1
  269. package/pipes/calendar-sheet/index.d.ts +0 -1
  270. package/pipes/calendar-sheet/utils.d.ts +0 -20
  271. package/pipes/flag/flag.pipe.d.ts +0 -14
  272. package/pipes/flag/index.d.ts +0 -1
  273. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  274. package/pipes/format-date/index.d.ts +0 -1
  275. package/pipes/initials/index.d.ts +0 -1
  276. package/pipes/initials/initials.pipe.d.ts +0 -7
  277. package/pipes/month/index.d.ts +0 -1
  278. package/pipes/month/month.pipe.d.ts +0 -10
  279. package/pipes/order-week-days/index.d.ts +0 -1
  280. package/services/breakpoint.service.d.ts +0 -16
  281. package/services/dark-theme.service.d.ts +0 -10
  282. package/services/format-date.service.d.ts +0 -8
  283. package/styles/mixins/wrapper.less +0 -64
  284. package/styles/mixins/wrapper.scss +0 -61
  285. package/styles/theme/appearance/opposite.less +0 -17
  286. package/styles/theme/wrapper.less +0 -211
  287. package/tokens/day-type-handler.d.ts +0 -7
  288. package/tokens/first-day-of-week.d.ts +0 -5
  289. package/tokens/scroll-ref.d.ts +0 -2
  290. package/tokens/spin-icons.d.ts +0 -6
  291. package/types/range-state.d.ts +0 -4
  292. package/types/value-content-context.d.ts +0 -4
  293. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  294. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  295. /package/{directives → components}/title/index.d.ts +0 -0
  296. /package/{directives → components}/title/title.directive.d.ts +0 -0
  297. /package/{components → portals}/dialog/dialog.directive.d.ts +0 -0
  298. /package/{components → portals}/dialog/dialog.factory.d.ts +0 -0
  299. /package/{directives → portals}/dropdown/dropdown-content.directive.d.ts +0 -0
  300. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  301. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  302. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  303. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  304. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  305. /package/{directives → portals}/hint/hint-describe.directive.d.ts +0 -0
  306. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  307. /package/{directives → portals}/hint/hint-host.directive.d.ts +0 -0
  308. /package/{directives → portals}/hint/hint-hover.directive.d.ts +0 -0
  309. /package/{directives → portals}/hint/hint-manual.directive.d.ts +0 -0
  310. /package/{directives → portals}/hint/hint-overflow.directive.d.ts +0 -0
  311. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  312. /package/{directives → portals}/hint/hint-unstyled.component.d.ts +0 -0
  313. /package/{directives → portals}/hint/hint.component.d.ts +0 -0
  314. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  315. /package/{directives → portals}/hint/index.d.ts +0 -0
  316. /package/{components → portals}/modal/index.d.ts +0 -0
  317. /package/{directives → portals}/popup/index.d.ts +0 -0
  318. /package/{directives → portals}/popup/popup.directive.d.ts +0 -0
  319. /package/{directives → portals}/popup/popup.service.d.ts +0 -0
  320. /package/{directives → portals}/popup/popups.component.d.ts +0 -0
@@ -1,7 +1,6 @@
1
- import { __decorate } from 'tslib';
2
1
  import * as i0 from '@angular/core';
3
- import { InjectionToken, Directive, Optional, Self, SkipSelf, inject, Input, input, output, INJECTOR, ChangeDetectionStrategy, Component, TemplateRef, signal, computed } from '@angular/core';
4
- import { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
2
+ import { InjectionToken, Directive, Optional, SkipSelf, inject, input, output, INJECTOR, ChangeDetectionStrategy, Component, TemplateRef, forwardRef, signal, computed } from '@angular/core';
3
+ import { outputFromObservable, takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
5
4
  import { EMPTY_CLIENT_RECT } from '@taiga-ui/cdk/constants';
6
5
  import * as i3 from '@taiga-ui/cdk/directives/active-zone';
7
6
  import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
@@ -11,17 +10,17 @@ import { TuiHoveredService } from '@taiga-ui/cdk/directives/hovered';
11
10
  import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
12
11
  import { tuiInjectElement, tuiPointToClientRect } from '@taiga-ui/cdk/utils/dom';
13
12
  import { tuiClamp } from '@taiga-ui/cdk/utils/math';
14
- import { tuiProvide, tuiPure, tuiSetSignal, tuiPx, tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
15
- import { TuiDriverDirective, TuiDriver, tuiAsDriver, TuiPositionAccessor, tuiFallbackAccessor, TuiRectAccessor, tuiAsRectAccessor, tuiAsVehicle, tuiPositionAccessorFor, tuiRectAccessorFor } from '@taiga-ui/core/classes';
13
+ import { tuiSetSignal, tuiPx, tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
14
+ import { TuiDriverDirective, TuiDriver, tuiAsDriver, TuiPositionAccessor, tuiFallbackAccessor, TuiRectAccessor, tuiAsVehicle, tuiAsRectAccessor, tuiPositionAccessorFor, tuiRectAccessorFor } from '@taiga-ui/core/classes';
16
15
  import { tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
17
16
  import * as i1 from '@taiga-ui/core/directives/appearance';
18
17
  import { tuiAppearance, TuiAppearance } from '@taiga-ui/core/directives/appearance';
19
18
  import { TuiPositionService, TuiVisualViewportService } from '@taiga-ui/core/services';
20
19
  import { TUI_VIEWPORT } from '@taiga-ui/core/tokens';
21
- import { tuiOverrideOptions, tuiIsObscured } from '@taiga-ui/core/utils';
20
+ import { tuiOverrideOptions, tuiIsObscured } from '@taiga-ui/core/utils/miscellaneous';
22
21
  import { PolymorpheusComponent, PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
23
- import { Subject, merge, switchMap, of, delay, takeUntil, repeat, filter, map, tap, takeWhile, distinctUntilChanged, fromEvent, debounce, timer, startWith, skip, BehaviorSubject } from 'rxjs';
24
- import { TuiPopupService } from '@taiga-ui/core/directives/popup';
22
+ import { Subject, merge, switchMap, of, delay, takeUntil, repeat, filter, map, tap, distinctUntilChanged, takeWhile, fromEvent, debounce, timer, startWith, skip, BehaviorSubject } from 'rxjs';
23
+ import { TuiPopupService } from '@taiga-ui/core/portals/popup';
25
24
  import { DOCUMENT } from '@angular/common';
26
25
  import { tuiIfMap, tuiTypedFromEvent, tuiZoneOptimized } from '@taiga-ui/cdk/observables';
27
26
  import { tuiIsFocused } from '@taiga-ui/cdk/utils/focus';
@@ -38,30 +37,30 @@ class TuiHintDriver extends TuiDriverDirective {
38
37
  super(...arguments);
39
38
  this.type = 'hint';
40
39
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDriver, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
42
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintDriver, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDriver, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
41
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiHintDriver, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
43
42
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDriver, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDriver, decorators: [{
45
44
  type: Directive
46
45
  }] });
47
46
 
48
47
  const TUI_HINT_DIRECTIONS = [
49
- 'bottom-left',
48
+ 'bottom-start',
50
49
  'bottom',
51
- 'bottom-right',
52
- 'top-left',
50
+ 'bottom-end',
51
+ 'top-start',
53
52
  'top',
54
- 'top-right',
55
- 'left-top',
56
- 'left',
57
- 'left-bottom',
58
- 'right-top',
59
- 'right',
60
- 'right-bottom',
53
+ 'top-end',
54
+ 'start-top',
55
+ 'start',
56
+ 'start-bottom',
57
+ 'end-top',
58
+ 'end',
59
+ 'end-bottom',
61
60
  ];
62
61
  /** Default values for hint options */
63
62
  const TUI_HINT_DEFAULT_OPTIONS = {
64
- direction: 'bottom-left',
63
+ direction: 'bottom-start',
65
64
  showDelay: 500,
66
65
  hideDelay: 200,
67
66
  appearance: '',
@@ -76,54 +75,9 @@ const TUI_HINT_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_HINT_OPTIONS' : '',
76
75
  });
77
76
  const tuiHintOptionsProvider = (override) => ({
78
77
  provide: TUI_HINT_OPTIONS,
79
- deps: [
80
- [new Optional(), new Self(), TuiHintOptionsDirective],
81
- [new Optional(), new SkipSelf(), TUI_HINT_OPTIONS],
82
- ],
78
+ deps: [[new Optional(), new SkipSelf(), TUI_HINT_OPTIONS]],
83
79
  useFactory: tuiOverrideOptions(override, TUI_HINT_DEFAULT_OPTIONS),
84
80
  });
85
- /**
86
- * @deprecated: drop in 5.0
87
- */
88
- class TuiHintOptionsDirective {
89
- constructor() {
90
- this.options = inject(TUI_HINT_OPTIONS, { skipSelf: true });
91
- this.direction = this.options.direction;
92
- this.appearance = this.options.appearance;
93
- this.showDelay = this.options.showDelay;
94
- this.hideDelay = this.options.hideDelay;
95
- this.icon = this.options.icon;
96
- this.change$ = new Subject();
97
- }
98
- ngOnChanges() {
99
- this.change$.next();
100
- }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintOptionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
102
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintOptionsDirective, isStandalone: true, selector: "[tuiHintContent]", inputs: { content: ["tuiHintContent", "content"], direction: ["tuiHintDirection", "direction"], appearance: ["tuiHintAppearance", "appearance"], showDelay: ["tuiHintShowDelay", "showDelay"], hideDelay: ["tuiHintHideDelay", "hideDelay"] }, providers: [tuiProvide(TUI_HINT_OPTIONS, TuiHintOptionsDirective)], usesOnChanges: true, ngImport: i0 }); }
103
- }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintOptionsDirective, decorators: [{
105
- type: Directive,
106
- args: [{
107
- standalone: true,
108
- selector: '[tuiHintContent]',
109
- providers: [tuiProvide(TUI_HINT_OPTIONS, TuiHintOptionsDirective)],
110
- }]
111
- }], propDecorators: { content: [{
112
- type: Input,
113
- args: ['tuiHintContent']
114
- }], direction: [{
115
- type: Input,
116
- args: ['tuiHintDirection']
117
- }], appearance: [{
118
- type: Input,
119
- args: ['tuiHintAppearance']
120
- }], showDelay: [{
121
- type: Input,
122
- args: ['tuiHintShowDelay']
123
- }], hideDelay: [{
124
- type: Input,
125
- args: ['tuiHintHideDelay']
126
- }] } });
127
81
 
128
82
  class TuiHintHover extends TuiDriver {
129
83
  constructor() {
@@ -137,7 +91,7 @@ class TuiHintHover extends TuiDriver {
137
91
  this.stream$ = merge(this.toggle$.pipe(switchMap((show) => this.isMobile
138
92
  ? of(show)
139
93
  : of(show).pipe(delay(show ? 0 : this.hideDelay()))), takeUntil(this.hovered$), repeat()), this.hovered$.pipe(switchMap((show) => this.isMobile
140
- ? of(show)
94
+ ? of(show).pipe(delay(0))
141
95
  : of(show).pipe(delay(show ? this.showDelay() : this.hideDelay()))), takeUntil(this.toggle$), repeat())).pipe(filter(() => this.enabled), map((value) => value &&
142
96
  (this.el.hasAttribute('tuiHintPointer') || !tuiIsObscured(this.el))), tap((visible) => {
143
97
  this.visible = visible;
@@ -162,10 +116,10 @@ class TuiHintHover extends TuiDriver {
162
116
  close() {
163
117
  this.toggle$.next(false);
164
118
  }
165
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
166
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintHover, isStandalone: true, inputs: { showDelay: { classPropertyName: "showDelay", publicName: "tuiHintShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "tuiHintHideDelay", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintHover), TuiHoveredService], exportAs: ["tuiHintHover"], usesInheritance: true, ngImport: i0 }); }
119
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
120
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintHover, isStandalone: true, inputs: { showDelay: { classPropertyName: "showDelay", publicName: "tuiHintShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "tuiHintHideDelay", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintHover), TuiHoveredService], exportAs: ["tuiHintHover"], usesInheritance: true, ngImport: i0 }); }
167
121
  }
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintHover, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintHover, decorators: [{
169
123
  type: Directive,
170
124
  args: [{
171
125
  providers: [tuiAsDriver(TuiHintHover), TuiHoveredService],
@@ -175,66 +129,62 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
175
129
 
176
130
  const GAP$1 = 8;
177
131
  const ARROW_OFFSET = 24;
178
- const TOP = 0;
179
- const LEFT = 1;
132
+ const TOP = 1;
133
+ const LEFT = 0;
180
134
  class TuiHintPosition extends TuiPositionAccessor {
181
135
  constructor() {
182
136
  super(...arguments);
183
137
  this.el = tuiInjectElement();
184
- this.offset = inject(TUI_IS_MOBILE) ? 16 : 8;
185
138
  this.viewport = inject(TUI_VIEWPORT);
186
- this.accessor = tuiFallbackAccessor('hint')(inject(TuiRectAccessor), inject(TuiHintDirective));
139
+ this.directionChange = new Subject();
140
+ this.accessor = tuiFallbackAccessor('hint')(inject(TuiRectAccessor, { optional: true }), { getClientRect: () => this.el.getBoundingClientRect() });
187
141
  this.points = TUI_HINT_DIRECTIONS.reduce((acc, direction) => ({ ...acc, [direction]: [0, 0] }), {});
188
142
  this.direction = input(inject(TUI_HINT_OPTIONS).direction, {
189
143
  alias: 'tuiHintDirection',
190
144
  });
191
- this.directionChange = output({
192
- alias: 'tuiHintDirectionChange',
145
+ this.offset = input(inject(TUI_IS_MOBILE) ? 16 : 8, {
146
+ alias: 'tuiHintOffset',
193
147
  });
148
+ this.tuiHintDirectionChange = outputFromObservable(this.directionChange.pipe(distinctUntilChanged()));
194
149
  this.type = 'hint';
195
150
  }
196
- emitDirection(direction) {
197
- this.directionChange.emit(direction);
198
- }
199
- getPosition(rect, el) {
151
+ getPosition({ width, height }) {
200
152
  const direction = this.direction();
201
- const width = el?.clientWidth ?? rect.width;
202
- const height = el?.clientHeight ?? rect.height;
203
- const hostRect = this.accessor.getClientRect() ?? EMPTY_CLIENT_RECT;
153
+ const hostRect = this.accessor.getClientRect();
204
154
  const leftCenter = hostRect.left + hostRect.width / 2;
205
155
  const topCenter = hostRect.top + hostRect.height / 2;
206
156
  const rtl = this.el.matches('[dir="rtl"] :scope');
207
- this.points['top-left'][TOP] = hostRect.top - height - this.offset;
208
- this.points['top-left'][LEFT] = leftCenter - width + ARROW_OFFSET;
209
- this.points.top[TOP] = this.points['top-left'][TOP];
157
+ this.points['top-start'][TOP] = hostRect.top - height - this.offset();
158
+ this.points['top-start'][LEFT] = leftCenter - width + ARROW_OFFSET;
159
+ this.points.top[TOP] = this.points['top-start'][TOP];
210
160
  this.points.top[LEFT] = leftCenter - width / 2;
211
- this.points['top-right'][TOP] = this.points['top-left'][TOP];
212
- this.points['top-right'][LEFT] = leftCenter - ARROW_OFFSET;
213
- this.points['bottom-left'][TOP] = hostRect.bottom + this.offset;
214
- this.points['bottom-left'][LEFT] = this.points['top-left'][LEFT];
215
- this.points.bottom[TOP] = this.points['bottom-left'][TOP];
161
+ this.points['top-end'][TOP] = this.points['top-start'][TOP];
162
+ this.points['top-end'][LEFT] = leftCenter - ARROW_OFFSET;
163
+ this.points['bottom-start'][TOP] = hostRect.bottom + this.offset();
164
+ this.points['bottom-start'][LEFT] = this.points['top-start'][LEFT];
165
+ this.points.bottom[TOP] = this.points['bottom-start'][TOP];
216
166
  this.points.bottom[LEFT] = this.points.top[LEFT];
217
- this.points['bottom-right'][TOP] = this.points['bottom-left'][TOP];
218
- this.points['bottom-right'][LEFT] = this.points['top-right'][LEFT];
219
- this.points['left-top'][TOP] = topCenter - height + ARROW_OFFSET;
220
- this.points['left-top'][LEFT] = hostRect.left - width - this.offset;
221
- this.points.left[TOP] = topCenter - height / 2;
222
- this.points.left[LEFT] = this.points['left-top'][LEFT];
223
- this.points['left-bottom'][TOP] = topCenter - ARROW_OFFSET;
224
- this.points['left-bottom'][LEFT] = this.points['left-top'][LEFT];
225
- this.points['right-top'][TOP] = this.points['left-top'][TOP];
226
- this.points['right-top'][LEFT] = hostRect.right + this.offset;
227
- this.points.right[TOP] = this.points.left[TOP];
228
- this.points.right[LEFT] = this.points['right-top'][LEFT];
229
- this.points['right-bottom'][TOP] = this.points['left-bottom'][TOP];
230
- this.points['right-bottom'][LEFT] = this.points['right-top'][LEFT];
167
+ this.points['bottom-end'][TOP] = this.points['bottom-start'][TOP];
168
+ this.points['bottom-end'][LEFT] = this.points['top-end'][LEFT];
169
+ this.points['start-top'][TOP] = topCenter - height + ARROW_OFFSET;
170
+ this.points['start-top'][LEFT] = hostRect.left - width - this.offset();
171
+ this.points.start[TOP] = topCenter - height / 2;
172
+ this.points.start[LEFT] = this.points['start-top'][LEFT];
173
+ this.points['start-bottom'][TOP] = topCenter - ARROW_OFFSET;
174
+ this.points['start-bottom'][LEFT] = this.points['start-top'][LEFT];
175
+ this.points['end-top'][TOP] = this.points['start-top'][TOP];
176
+ this.points['end-top'][LEFT] = hostRect.right + this.offset();
177
+ this.points.end[TOP] = this.points.start[TOP];
178
+ this.points.end[LEFT] = this.points['end-top'][LEFT];
179
+ this.points['end-bottom'][TOP] = this.points['start-bottom'][TOP];
180
+ this.points['end-bottom'][LEFT] = this.points['end-top'][LEFT];
231
181
  const array = Array.isArray(direction) ? direction : [direction];
232
182
  const priority = array.map((direction) => adjust(direction, rtl));
233
183
  const updated = priority
234
184
  .concat(TUI_HINT_DIRECTIONS)
235
185
  .find((dir) => this.checkPosition(this.points[dir], width, height)) ||
236
186
  this.fallback;
237
- this.emitDirection(adjust(updated, rtl));
187
+ this.directionChange.next(adjust(updated, rtl));
238
188
  return this.points[updated];
239
189
  }
240
190
  get fallback() {
@@ -243,22 +193,19 @@ class TuiHintPosition extends TuiPositionAccessor {
243
193
  ? 'top'
244
194
  : 'bottom';
245
195
  }
246
- checkPosition([top, left], width, height) {
196
+ checkPosition([left, top], width, height) {
247
197
  const viewport = this.viewport.getClientRect();
248
198
  return (top > viewport.top + GAP$1 &&
249
199
  left > viewport.left + GAP$1 &&
250
200
  top + height < viewport.bottom - GAP$1 &&
251
201
  left + width < viewport.right - GAP$1);
252
202
  }
253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
254
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintPosition, isStandalone: true, inputs: { direction: { classPropertyName: "direction", publicName: "tuiHintDirection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { directionChange: "tuiHintDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
203
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
204
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintPosition, isStandalone: true, inputs: { direction: { classPropertyName: "direction", publicName: "tuiHintDirection", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "tuiHintOffset", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiHintDirectionChange: "tuiHintDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
255
205
  }
256
- __decorate([
257
- tuiPure
258
- ], TuiHintPosition.prototype, "emitDirection", null);
259
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintPosition, decorators: [{
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintPosition, decorators: [{
260
207
  type: Directive
261
- }], propDecorators: { emitDirection: [] } });
208
+ }] });
262
209
  function adjust(direction, rtl) {
263
210
  if (rtl && direction.includes('left')) {
264
211
  return direction.replace('left', 'right');
@@ -304,23 +251,21 @@ class TuiHintDirective {
304
251
  this.visible.emit(false);
305
252
  }
306
253
  }
307
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
308
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintDirective, isStandalone: true, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: { content: { classPropertyName: "content", publicName: "tuiHint", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "tuiHintContext", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "tuiHintAppearance", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visible: "tuiHintVisible" }, providers: [
309
- tuiAsRectAccessor(TuiHintDirective),
254
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
255
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintDirective, isStandalone: true, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: { content: { classPropertyName: "content", publicName: "tuiHint", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "tuiHintContext", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "tuiHintAppearance", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visible: "tuiHintVisible" }, providers: [
310
256
  tuiAsVehicle(TuiHintDirective),
311
257
  {
312
258
  provide: PolymorpheusComponent,
313
259
  deps: [TUI_HINT_COMPONENT, INJECTOR],
314
260
  useClass: PolymorpheusComponent,
315
261
  },
316
- ], usesOnChanges: true, hostDirectives: [{ directive: TuiHintDriver }, { directive: TuiHintHover, inputs: ["tuiHintHideDelay", "tuiHintHideDelay", "tuiHintShowDelay", "tuiHintShowDelay"] }, { directive: TuiHintPosition, inputs: ["tuiHintDirection", "tuiHintDirection"], outputs: ["tuiHintDirectionChange", "tuiHintDirectionChange"] }], ngImport: i0 }); }
262
+ ], usesOnChanges: true, hostDirectives: [{ directive: TuiHintDriver }, { directive: TuiHintHover, inputs: ["tuiHintHideDelay", "tuiHintHideDelay", "tuiHintShowDelay", "tuiHintShowDelay"] }, { directive: TuiHintPosition, inputs: ["tuiHintDirection", "tuiHintDirection", "tuiHintOffset", "tuiHintOffset"], outputs: ["tuiHintDirectionChange", "tuiHintDirectionChange"] }], ngImport: i0 }); }
317
263
  }
318
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDirective, decorators: [{
264
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDirective, decorators: [{
319
265
  type: Directive,
320
266
  args: [{
321
267
  selector: '[tuiHint]:not(ng-container):not(ng-template)',
322
268
  providers: [
323
- tuiAsRectAccessor(TuiHintDirective),
324
269
  tuiAsVehicle(TuiHintDirective),
325
270
  {
326
271
  provide: PolymorpheusComponent,
@@ -336,7 +281,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
336
281
  },
337
282
  {
338
283
  directive: TuiHintPosition,
339
- inputs: ['tuiHintDirection'],
284
+ inputs: ['tuiHintDirection', 'tuiHintOffset'],
340
285
  outputs: ['tuiHintDirectionChange'],
341
286
  },
342
287
  ],
@@ -354,10 +299,10 @@ class TuiHintPointer extends TuiHintHover {
354
299
  onMove({ clientX, clientY }) {
355
300
  this.currentRect = tuiPointToClientRect(clientX, clientY);
356
301
  }
357
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintPointer, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
358
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintPointer, isStandalone: true, selector: "[tuiHint][tuiHintPointer]", host: { listeners: { "mousemove.zoneless": "onMove($event)" } }, providers: [tuiAsRectAccessor(TuiHintPointer), tuiAsDriver(TuiHintPointer)], usesInheritance: true, ngImport: i0 }); }
302
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintPointer, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
303
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiHintPointer, isStandalone: true, selector: "[tuiHint][tuiHintPointer]", host: { listeners: { "mousemove.zoneless": "onMove($event)" } }, providers: [tuiAsRectAccessor(TuiHintPointer), tuiAsDriver(TuiHintPointer)], usesInheritance: true, ngImport: i0 }); }
359
304
  }
360
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintPointer, decorators: [{
305
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintPointer, decorators: [{
361
306
  type: Directive,
362
307
  args: [{
363
308
  selector: '[tuiHint][tuiHintPointer]',
@@ -372,10 +317,10 @@ class TuiHintUnstyledComponent {
372
317
  constructor() {
373
318
  this.hint = inject(TuiHintDirective);
374
319
  }
375
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintUnstyledComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
376
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintUnstyledComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '<ng-container *polymorpheusOutlet="hint.content()" />', isInline: true, dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
320
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintUnstyledComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
321
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiHintUnstyledComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '<ng-container *polymorpheusOutlet="hint.content()" />', isInline: true, dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
377
322
  }
378
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintUnstyledComponent, decorators: [{
323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintUnstyledComponent, decorators: [{
379
324
  type: Component,
380
325
  args: [{
381
326
  imports: [PolymorpheusOutlet],
@@ -389,10 +334,10 @@ class TuiHintUnstyled {
389
334
  tuiSetSignal(hint.content, inject((TemplateRef)));
390
335
  hint.component = new PolymorpheusComponent(TuiHintUnstyledComponent, inject(INJECTOR));
391
336
  }
392
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintUnstyled, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
393
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintUnstyled, isStandalone: true, selector: "ng-template[tuiHint]", ngImport: i0 }); }
337
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintUnstyled, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
338
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiHintUnstyled, isStandalone: true, selector: "ng-template[tuiHint]", ngImport: i0 }); }
394
339
  }
395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintUnstyled, decorators: [{
340
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintUnstyled, decorators: [{
396
341
  type: Directive,
397
342
  args: [{
398
343
  selector: 'ng-template[tuiHint]',
@@ -403,7 +348,7 @@ const TUI_HINT_PROVIDERS = [
403
348
  TuiPositionService,
404
349
  TuiHoveredService,
405
350
  tuiPositionAccessorFor('hint', TuiHintPosition),
406
- tuiRectAccessorFor('hint', TuiHintDirective),
351
+ tuiRectAccessorFor('hint', forwardRef(() => TuiHintDirective)),
407
352
  ];
408
353
  const GAP = 8;
409
354
  class TuiHintComponent {
@@ -426,7 +371,7 @@ class TuiHintComponent {
426
371
  inject(TuiPositionService)
427
372
  .pipe(takeWhile(() => this.hint.el.isConnected), map((point) => this.vvs.correct(point)), takeUntilDestroyed())
428
373
  .subscribe({
429
- next: ([top, left]) => this.update(top, left),
374
+ next: (point) => this.update(...point),
430
375
  complete: () => this.hover.close(),
431
376
  });
432
377
  inject(TuiHoveredService)
@@ -440,13 +385,13 @@ class TuiHintComponent {
440
385
  }
441
386
  }
442
387
  apply(top, left, beakTop, beakLeft) {
443
- this.el.style.top = top;
444
- this.el.style.left = left;
388
+ this.el.style.setProperty('top', top);
389
+ this.el.style.setProperty('left', left);
445
390
  this.el.style.setProperty('--t-top', `${beakTop}%`);
446
391
  this.el.style.setProperty('--t-left', `${beakLeft}%`);
447
392
  this.el.style.setProperty('--t-rotate', !beakLeft || Math.ceil(beakLeft) === 100 ? '90deg' : '0deg');
448
393
  }
449
- update(top, left) {
394
+ update(left, top) {
450
395
  const { clientHeight, clientWidth } = this.el;
451
396
  const rect = this.accessor.getClientRect();
452
397
  if (rect === EMPTY_CLIENT_RECT || !clientHeight || !clientWidth) {
@@ -460,19 +405,16 @@ class TuiHintComponent {
460
405
  ]);
461
406
  this.apply(tuiPx(Math.round(top)), tuiPx(Math.round(safeLeft)), Math.round((tuiClamp(beakTop, 0, clientHeight) / clientHeight) * 100), Math.round((tuiClamp(beakLeft, 0, clientWidth) / clientWidth) * 100));
462
407
  }
463
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
464
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiHintComponent, isStandalone: true, selector: "tui-hint", host: { attributes: { "role": "tooltip" }, listeners: { "document:click": "onClick($event.target)" }, properties: { "class._untouchable": "pointer", "class._mobile": "isMobile", "attr.tuiTheme": "theme" } }, providers: [TUI_HINT_PROVIDERS, tuiButtonOptionsProvider({ size: 's' })], hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiAnimated }, { directive: i3.TuiActiveZone }], ngImport: i0, template: `
408
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
409
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiHintComponent, isStandalone: true, selector: "tui-hint", host: { attributes: { "role": "tooltip" }, listeners: { "document:click": "onClick($event.target)" }, properties: { "class._untouchable": "pointer", "class._mobile": "isMobile", "attr.tuiTheme": "theme" } }, providers: [TUI_HINT_PROVIDERS, tuiButtonOptionsProvider({ size: 's' })], hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiAnimated }, { directive: i3.TuiActiveZone }], ngImport: i0, template: `
465
410
  <ng-content />
466
411
  <span
467
412
  *polymorpheusOutlet="content() as text; context: hint.context()"
468
413
  [innerHTML]="text"
469
414
  ></span>
470
- `, isInline: true, styles: [":host{position:absolute;max-inline-size:min(20rem,calc(100% - 1rem));padding:.75rem 1rem;background:var(--tui-background-accent-1);border-radius:var(--tui-radius-l);color:var(--tui-text-primary-on-accent-1);box-sizing:border-box;font:var(--tui-font-text-s);white-space:pre-line;overflow-wrap:break-word;transform-origin:var(--t-left) var(--t-top);--tui-background-elevation-2: var(--tui-background-elevation-3)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade}:host :host-context(tui-root._mobile).tui-enter{animation:tuiFade var(--tui-duration) ease-in-out,tuiScale var(--tui-duration) cubic-bezier(.34,1.56,.64,1)}:host :host-context(tui-root._mobile).tui-leave{animation:tuiFade var(--tui-duration) ease-in-out reverse,tuiScale var(--tui-duration) ease-in-out reverse}:host:before{content:\"\";position:absolute;top:var(--t-top);left:var(--t-left);inline-size:.75rem;block-size:.5rem;background:inherit;-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');transition:none;transform:translate(-50%,-50%) rotate(var(--t-rotate))}:host._mobile{font:var(--tui-font-text-m)}:host._mobile:before{inline-size:1.5rem;block-size:1.125rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>')}:host:not([style*=top]){visibility:hidden}:host._untouchable{pointer-events:none}:host ::ng-deep [tuiTitle]{margin-block-end:.75rem}:host ::ng-deep [tuiTitle]+footer{margin-block-start:.75rem}:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:inline-end;margin-inline-end:-.25rem}:host ::ng-deep img{display:block;border-radius:var(--tui-radius-m)}:host ::ng-deep footer{display:flex;justify-content:flex-end;gap:.5rem;inline-size:18rem;max-inline-size:100%;margin:1rem 0 .25rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
415
+ `, isInline: true, styles: [":host{position:absolute;max-inline-size:min(20rem,calc(100% - 1rem));padding:.75rem 1rem;background:var(--tui-background-accent-1);border-radius:var(--tui-radius-l);color:var(--tui-text-primary-on-accent-1);box-sizing:border-box;font:var(--tui-font-body-s);white-space:pre-line;overflow-wrap:break-word;transform-origin:var(--t-left) var(--t-top);--tui-background-elevation-2: var(--tui-background-elevation-3)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade}:host :host-context(tui-root._mobile).tui-enter{animation:tuiFade var(--tui-duration) ease-in-out,tuiScale var(--tui-duration) cubic-bezier(.34,1.56,.64,1)}:host :host-context(tui-root._mobile).tui-leave{animation:tuiFade var(--tui-duration) ease-in-out reverse,tuiScale var(--tui-duration) ease-in-out reverse}:host:before{content:\"\";position:absolute;top:var(--t-top);left:var(--t-left);inline-size:.75rem;block-size:.5rem;background:inherit;-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');transition:none;transform:translate(-50%,-50%) rotate(var(--t-rotate))}:host._mobile{font:var(--tui-font-body-m)}:host._mobile:before{inline-size:1.5rem;block-size:1.125rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>')}:host:not([style*=top]){visibility:hidden}:host._untouchable{pointer-events:none}:host ::ng-deep [tuiTitle]{margin-block-end:.75rem}:host ::ng-deep [tuiTitle]+footer{margin-block-start:.75rem}:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:inline-end;margin-inline-end:-.25rem}:host ::ng-deep img{display:block;border-radius:var(--tui-radius-m)}:host ::ng-deep footer{display:flex;justify-content:flex-end;gap:.5rem;inline-size:18rem;max-inline-size:100%;margin:1rem 0 .25rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
471
416
  }
472
- __decorate([
473
- tuiPure
474
- ], TuiHintComponent.prototype, "apply", null);
475
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintComponent, decorators: [{
417
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintComponent, decorators: [{
476
418
  type: Component,
477
419
  args: [{ selector: 'tui-hint', imports: [PolymorpheusOutlet], template: `
478
420
  <ng-content />
@@ -486,8 +428,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
486
428
  '[class._mobile]': 'isMobile',
487
429
  '[attr.tuiTheme]': 'theme',
488
430
  '(document:click)': 'onClick($event.target)',
489
- }, styles: [":host{position:absolute;max-inline-size:min(20rem,calc(100% - 1rem));padding:.75rem 1rem;background:var(--tui-background-accent-1);border-radius:var(--tui-radius-l);color:var(--tui-text-primary-on-accent-1);box-sizing:border-box;font:var(--tui-font-text-s);white-space:pre-line;overflow-wrap:break-word;transform-origin:var(--t-left) var(--t-top);--tui-background-elevation-2: var(--tui-background-elevation-3)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade}:host :host-context(tui-root._mobile).tui-enter{animation:tuiFade var(--tui-duration) ease-in-out,tuiScale var(--tui-duration) cubic-bezier(.34,1.56,.64,1)}:host :host-context(tui-root._mobile).tui-leave{animation:tuiFade var(--tui-duration) ease-in-out reverse,tuiScale var(--tui-duration) ease-in-out reverse}:host:before{content:\"\";position:absolute;top:var(--t-top);left:var(--t-left);inline-size:.75rem;block-size:.5rem;background:inherit;-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');transition:none;transform:translate(-50%,-50%) rotate(var(--t-rotate))}:host._mobile{font:var(--tui-font-text-m)}:host._mobile:before{inline-size:1.5rem;block-size:1.125rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>')}:host:not([style*=top]){visibility:hidden}:host._untouchable{pointer-events:none}:host ::ng-deep [tuiTitle]{margin-block-end:.75rem}:host ::ng-deep [tuiTitle]+footer{margin-block-start:.75rem}:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:inline-end;margin-inline-end:-.25rem}:host ::ng-deep img{display:block;border-radius:var(--tui-radius-m)}:host ::ng-deep footer{display:flex;justify-content:flex-end;gap:.5rem;inline-size:18rem;max-inline-size:100%;margin:1rem 0 .25rem}\n"] }]
490
- }], ctorParameters: () => [], propDecorators: { apply: [] } });
431
+ }, styles: [":host{position:absolute;max-inline-size:min(20rem,calc(100% - 1rem));padding:.75rem 1rem;background:var(--tui-background-accent-1);border-radius:var(--tui-radius-l);color:var(--tui-text-primary-on-accent-1);box-sizing:border-box;font:var(--tui-font-body-s);white-space:pre-line;overflow-wrap:break-word;transform-origin:var(--t-left) var(--t-top);--tui-background-elevation-2: var(--tui-background-elevation-3)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade}:host :host-context(tui-root._mobile).tui-enter{animation:tuiFade var(--tui-duration) ease-in-out,tuiScale var(--tui-duration) cubic-bezier(.34,1.56,.64,1)}:host :host-context(tui-root._mobile).tui-leave{animation:tuiFade var(--tui-duration) ease-in-out reverse,tuiScale var(--tui-duration) ease-in-out reverse}:host:before{content:\"\";position:absolute;top:var(--t-top);left:var(--t-left);inline-size:.75rem;block-size:.5rem;background:inherit;-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');transition:none;transform:translate(-50%,-50%) rotate(var(--t-rotate))}:host._mobile{font:var(--tui-font-body-m)}:host._mobile:before{inline-size:1.5rem;block-size:1.125rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>')}:host:not([style*=top]){visibility:hidden}:host._untouchable{pointer-events:none}:host ::ng-deep [tuiTitle]{margin-block-end:.75rem}:host ::ng-deep [tuiTitle]+footer{margin-block-start:.75rem}:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:inline-end;margin-inline-end:-.25rem}:host ::ng-deep img{display:block;border-radius:var(--tui-radius-m)}:host ::ng-deep footer{display:flex;justify-content:flex-end;gap:.5rem;inline-size:18rem;max-inline-size:100%;margin:1rem 0 .25rem}\n"] }]
432
+ }], ctorParameters: () => [] });
491
433
 
492
434
  class TuiHintDescribe extends TuiDriver {
493
435
  constructor() {
@@ -504,10 +446,10 @@ class TuiHintDescribe extends TuiDriver {
504
446
  get focused() {
505
447
  return tuiIsFocused(this.element());
506
448
  }
507
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDescribe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
508
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintDescribe, isStandalone: true, selector: "[tuiHintDescribe]", inputs: { id: { classPropertyName: "id", publicName: "tuiHintDescribe", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintDescribe)], usesInheritance: true, ngImport: i0 }); }
449
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDescribe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
450
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintDescribe, isStandalone: true, selector: "[tuiHintDescribe]", inputs: { id: { classPropertyName: "id", publicName: "tuiHintDescribe", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintDescribe)], usesInheritance: true, ngImport: i0 }); }
509
451
  }
510
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintDescribe, decorators: [{
452
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintDescribe, decorators: [{
511
453
  type: Directive,
512
454
  args: [{
513
455
  selector: '[tuiHintDescribe]',
@@ -524,10 +466,10 @@ class TuiHintHost extends TuiRectAccessor {
524
466
  getClientRect() {
525
467
  return this.tuiHintHost()?.getBoundingClientRect() || EMPTY_CLIENT_RECT;
526
468
  }
527
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintHost, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
528
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintHost, isStandalone: true, selector: "[tuiHint][tuiHintHost]", inputs: { tuiHintHost: { classPropertyName: "tuiHintHost", publicName: "tuiHintHost", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsRectAccessor(TuiHintHost)], usesInheritance: true, ngImport: i0 }); }
469
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintHost, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
470
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintHost, isStandalone: true, selector: "[tuiHint][tuiHintHost]", inputs: { tuiHintHost: { classPropertyName: "tuiHintHost", publicName: "tuiHintHost", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsRectAccessor(TuiHintHost)], usesInheritance: true, ngImport: i0 }); }
529
471
  }
530
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintHost, decorators: [{
472
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintHost, decorators: [{
531
473
  type: Directive,
532
474
  args: [{
533
475
  selector: '[tuiHint][tuiHintHost]',
@@ -548,10 +490,10 @@ class TuiHintManual extends TuiDriver {
548
490
  this.stream$.next(!!this.visible());
549
491
  this.hover.enabled = this.visible() === null;
550
492
  }
551
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
552
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintManual, isStandalone: true, selector: "[tuiHint][tuiHintManual]", inputs: { visible: { classPropertyName: "visible", publicName: "tuiHintManual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintManual)], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
493
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
494
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintManual, isStandalone: true, selector: "[tuiHint][tuiHintManual]", inputs: { visible: { classPropertyName: "visible", publicName: "tuiHintManual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintManual)], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
553
495
  }
554
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintManual, decorators: [{
496
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintManual, decorators: [{
555
497
  type: Directive,
556
498
  args: [{
557
499
  selector: '[tuiHint][tuiHintManual]',
@@ -569,10 +511,10 @@ class TuiHintOverflow {
569
511
  ? this.content() || textContent
570
512
  : '');
571
513
  }
572
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintOverflow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
573
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiHintOverflow, isStandalone: true, selector: "[tuiHintOverflow]", inputs: { content: { classPropertyName: "content", publicName: "tuiHintOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "onMouseEnter($event.currentTarget)" } }, hostDirectives: [{ directive: TuiHintDirective, inputs: ["tuiHintAppearance", "tuiHintAppearance"] }], ngImport: i0 }); }
514
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintOverflow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
515
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiHintOverflow, isStandalone: true, selector: "[tuiHintOverflow]", inputs: { content: { classPropertyName: "content", publicName: "tuiHintOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "onMouseEnter($event.currentTarget)" } }, hostDirectives: [{ directive: TuiHintDirective, inputs: ["tuiHintAppearance", "tuiHintAppearance"] }], ngImport: i0 }); }
574
516
  }
575
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHintOverflow, decorators: [{
517
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiHintOverflow, decorators: [{
576
518
  type: Directive,
577
519
  args: [{
578
520
  selector: '[tuiHintOverflow]',
@@ -591,7 +533,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
591
533
  const TuiHint = [
592
534
  TuiHintComponent,
593
535
  TuiHintDirective,
594
- TuiHintOptionsDirective,
595
536
  TuiHintUnstyled,
596
537
  TuiHintDriver,
597
538
  TuiHintPosition,
@@ -607,5 +548,5 @@ const TuiHint = [
607
548
  * Generated bundle index. Do not edit.
608
549
  */
609
550
 
610
- export { TUI_HINT_COMPONENT, TUI_HINT_DEFAULT_OPTIONS, TUI_HINT_DIRECTIONS, TUI_HINT_OPTIONS, TUI_HINT_PROVIDERS, TuiHint, TuiHintComponent, TuiHintDescribe, TuiHintDirective, TuiHintDriver, TuiHintHost, TuiHintHover, TuiHintManual, TuiHintOptionsDirective, TuiHintOverflow, TuiHintPointer, TuiHintPosition, TuiHintUnstyled, TuiHintUnstyledComponent, tuiHintOptionsProvider };
611
- //# sourceMappingURL=taiga-ui-core-directives-hint.mjs.map
551
+ export { TUI_HINT_COMPONENT, TUI_HINT_DEFAULT_OPTIONS, TUI_HINT_DIRECTIONS, TUI_HINT_OPTIONS, TUI_HINT_PROVIDERS, TuiHint, TuiHintComponent, TuiHintDescribe, TuiHintDirective, TuiHintDriver, TuiHintHost, TuiHintHover, TuiHintManual, TuiHintOverflow, TuiHintPointer, TuiHintPosition, TuiHintUnstyled, TuiHintUnstyledComponent, tuiHintOptionsProvider };
552
+ //# sourceMappingURL=taiga-ui-core-portals-hint.mjs.map