@taiga-ui/core 4.52.0-canary.216e347 → 4.52.0-canary.2c75afa

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 (506) hide show
  1. package/classes/accessors.d.ts +1 -1
  2. package/classes/driver.d.ts +1 -1
  3. package/components/alert/alert.component.d.ts +5 -6
  4. package/components/alert/alert.directive.d.ts +4 -3
  5. package/components/alert/alert.interfaces.d.ts +7 -7
  6. package/components/alert/alert.service.d.ts +6 -2
  7. package/components/alert/alert.tokens.d.ts +1 -7
  8. package/components/alert/index.d.ts +0 -1
  9. package/components/button/button.directive.d.ts +2 -3
  10. package/components/button/button.options.d.ts +1 -1
  11. package/components/calendar/calendar-sheet.component.d.ts +1 -6
  12. package/components/cell/cell.directive.d.ts +9 -0
  13. package/components/cell/cell.options.d.ts +6 -0
  14. package/components/cell/index.d.ts +2 -0
  15. package/components/data-list/data-list.component.d.ts +1 -1
  16. package/components/dialog/dialog.component.d.ts +6 -12
  17. package/components/dialog/dialog.directive.d.ts +5 -4
  18. package/components/dialog/dialog.factory.d.ts +1 -1
  19. package/components/dialog/dialog.options.d.ts +25 -0
  20. package/components/dialog/{dialog-close.service.d.ts → dialog.providers.d.ts} +2 -0
  21. package/components/dialog/dialog.service.d.ts +6 -3
  22. package/components/dialog/index.d.ts +2 -4
  23. package/components/error/error.component.d.ts +6 -8
  24. package/components/error/error.d.ts +4 -0
  25. package/components/error/error.directive.d.ts +19 -0
  26. package/components/error/error.pipe.d.ts +10 -0
  27. package/components/error/index.d.ts +3 -0
  28. package/components/expand/expand.component.d.ts +9 -28
  29. package/components/expand/index.d.ts +0 -2
  30. package/components/icon/icon.component.d.ts +6 -11
  31. package/components/index.d.ts +2 -1
  32. package/components/link/link.directive.d.ts +2 -2
  33. package/components/loader/loader.component.d.ts +7 -7
  34. package/components/modal/index.d.ts +2 -0
  35. package/components/modal/modal.component.d.ts +17 -0
  36. package/components/modal/modal.service.d.ts +13 -0
  37. package/components/notification/notification.directive.d.ts +6 -11
  38. package/components/notification/notification.options.d.ts +1 -1
  39. package/components/root/root.component.d.ts +4 -6
  40. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  41. package/components/scrollbar/scrollbar.component.d.ts +2 -2
  42. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  43. package/components/scrollbar/scrollbar.options.d.ts +1 -1
  44. package/components/spin-button/spin-button.component.d.ts +8 -9
  45. package/components/textfield/index.d.ts +1 -3
  46. package/components/textfield/textfield-content.directive.d.ts +3 -2
  47. package/components/textfield/textfield-icon.d.ts +3 -3
  48. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +5 -6
  49. package/components/textfield/textfield.component.d.ts +9 -10
  50. package/components/textfield/textfield.d.ts +2 -3
  51. package/components/textfield/textfield.directive.d.ts +11 -14
  52. package/components/textfield/textfield.options.d.ts +8 -11
  53. package/directives/appearance/appearance.directive.d.ts +5 -13
  54. package/directives/appearance/appearance.options.d.ts +1 -1
  55. package/directives/date-format/date-format.directive.d.ts +3 -7
  56. package/directives/dropdown/dropdown-content.directive.d.ts +9 -0
  57. package/directives/dropdown/dropdown-position.directive.d.ts +1 -1
  58. package/directives/dropdown/dropdown.d.ts +2 -2
  59. package/directives/dropdown/dropdown.directive.d.ts +1 -2
  60. package/directives/dropdown/index.d.ts +1 -3
  61. package/directives/hint/hint-describe.directive.d.ts +4 -6
  62. package/directives/hint/hint-host.directive.d.ts +2 -2
  63. package/directives/hint/hint-hover.directive.d.ts +3 -4
  64. package/directives/hint/hint-manual.directive.d.ts +2 -2
  65. package/directives/hint/hint-options.directive.d.ts +3 -3
  66. package/directives/hint/hint-overflow.directive.d.ts +2 -2
  67. package/directives/hint/hint-position.directive.d.ts +4 -5
  68. package/directives/hint/hint-unstyled.component.d.ts +2 -7
  69. package/directives/hint/hint.component.d.ts +10 -11
  70. package/directives/hint/hint.directive.d.ts +9 -11
  71. package/directives/hint/index.d.ts +0 -2
  72. package/directives/icons/icons.bindings.d.ts +5 -0
  73. package/directives/icons/icons.directive.d.ts +8 -16
  74. package/directives/icons/index.d.ts +1 -0
  75. package/directives/index.d.ts +1 -1
  76. package/directives/notification/index.d.ts +2 -0
  77. package/directives/notification/notification.directive.d.ts +11 -0
  78. package/directives/notification/notification.service.d.ts +12 -0
  79. package/directives/number-format/number-format.directive.d.ts +3 -7
  80. package/directives/popup/popup.directive.d.ts +6 -5
  81. package/directives/popup/popup.service.d.ts +1 -1
  82. package/directives/popup/popups.component.d.ts +2 -2
  83. package/directives/title/title.directive.d.ts +2 -3
  84. package/fesm2022/taiga-ui-core-animations.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-core-classes.mjs +4 -4
  86. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  87. package/fesm2022/taiga-ui-core-components-alert.mjs +60 -99
  88. package/fesm2022/taiga-ui-core-components-alert.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-components-button.mjs +13 -21
  90. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-components-calendar.mjs +23 -27
  92. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-core-components-cell.mjs +45 -0
  94. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -0
  95. package/fesm2022/taiga-ui-core-components-data-list.mjs +33 -42
  96. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  97. package/fesm2022/taiga-ui-core-components-dialog.mjs +75 -113
  98. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-core-components-error.mjs +109 -26
  100. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-core-components-expand.mjs +34 -132
  102. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-core-components-icon.mjs +22 -40
  104. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-core-components-label.mjs +10 -13
  106. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-core-components-link.mjs +13 -18
  108. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-core-components-loader.mjs +15 -29
  110. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-core-components-modal.mjs +89 -0
  112. package/fesm2022/taiga-ui-core-components-modal.mjs.map +1 -0
  113. package/fesm2022/taiga-ui-core-components-notification.mjs +23 -53
  114. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  115. package/fesm2022/taiga-ui-core-components-root.mjs +20 -52
  116. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  117. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +57 -65
  118. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  119. package/fesm2022/taiga-ui-core-components-spin-button.mjs +16 -29
  120. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  121. package/fesm2022/taiga-ui-core-components-textfield.mjs +164 -305
  122. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  123. package/fesm2022/taiga-ui-core-components.mjs +2 -1
  124. package/fesm2022/taiga-ui-core-components.mjs.map +1 -1
  125. package/fesm2022/taiga-ui-core-directives-appearance.mjs +26 -64
  126. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  127. package/fesm2022/taiga-ui-core-directives-date-format.mjs +26 -20
  128. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  129. package/fesm2022/taiga-ui-core-directives-dropdown.mjs +104 -164
  130. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
  131. package/fesm2022/taiga-ui-core-directives-group.mjs +10 -13
  132. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  133. package/fesm2022/taiga-ui-core-directives-hint.mjs +149 -251
  134. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +1 -1
  135. package/fesm2022/taiga-ui-core-directives-icons.mjs +35 -46
  136. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  137. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +12 -15
  138. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  139. package/fesm2022/taiga-ui-core-directives-notification.mjs +73 -0
  140. package/fesm2022/taiga-ui-core-directives-notification.mjs.map +1 -0
  141. package/fesm2022/taiga-ui-core-directives-number-format.mjs +32 -20
  142. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  143. package/fesm2022/taiga-ui-core-directives-popup.mjs +20 -27
  144. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +1 -1
  145. package/fesm2022/taiga-ui-core-directives-title.mjs +13 -19
  146. package/fesm2022/taiga-ui-core-directives-title.mjs.map +1 -1
  147. package/fesm2022/taiga-ui-core-directives.mjs +1 -1
  148. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +3 -4
  149. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +1 -1
  150. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +3 -4
  151. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +1 -1
  152. package/fesm2022/taiga-ui-core-pipes-flag.mjs +3 -4
  153. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +1 -1
  154. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +3 -4
  155. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +1 -1
  156. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +23 -14
  157. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  158. package/fesm2022/taiga-ui-core-pipes-initials.mjs +3 -4
  159. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +1 -1
  160. package/fesm2022/taiga-ui-core-pipes-month.mjs +5 -5
  161. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +1 -1
  162. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +3 -4
  163. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +1 -1
  164. package/fesm2022/taiga-ui-core-pipes.mjs +0 -1
  165. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  166. package/fesm2022/taiga-ui-core-services.mjs +18 -18
  167. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  168. package/fesm2022/taiga-ui-core-tokens.mjs +41 -39
  169. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  170. package/fesm2022/taiga-ui-core-utils-dom.mjs.map +1 -1
  171. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -0
  172. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  173. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +50 -4
  174. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  175. package/package.json +26 -123
  176. package/pipes/format-number/format-number.pipe.d.ts +5 -3
  177. package/pipes/index.d.ts +0 -1
  178. package/styles/components/appearance.less +6 -0
  179. package/styles/components/button.less +0 -2
  180. package/styles/components/icon.less +32 -22
  181. package/styles/components/icons.less +16 -12
  182. package/styles/components/link.less +2 -3
  183. package/styles/mixins/appearance.less +1 -1
  184. package/styles/mixins/mixins.less +1 -7
  185. package/styles/mixins/mixins.scss +1 -7
  186. package/styles/mixins/slider.less +21 -16
  187. package/styles/theme/appearance/outline.less +1 -2
  188. package/styles/theme/appearance/textfield.less +1 -2
  189. package/styles/theme/variables.less +2 -4
  190. package/tokens/date-format.d.ts +2 -3
  191. package/tokens/i18n.d.ts +7 -7
  192. package/tokens/icon-resolver.d.ts +1 -5
  193. package/tokens/index.d.ts +1 -0
  194. package/tokens/number-format.d.ts +2 -3
  195. package/tokens/validation-errors.d.ts +4 -0
  196. package/types/index.d.ts +0 -1
  197. package/utils/miscellaneous/index.d.ts +1 -0
  198. package/utils/miscellaneous/provide-taiga.d.ts +13 -0
  199. package/components/alert/alerts.component.d.ts +0 -12
  200. package/components/dialog/dialog.interfaces.d.ts +0 -34
  201. package/components/dialog/dialog.tokens.d.ts +0 -15
  202. package/components/dialog/dialogs.component.d.ts +0 -8
  203. package/components/expand/expand-content.directive.d.ts +0 -8
  204. package/components/expand/expand.d.ts +0 -6
  205. package/components/fullscreen/fullscreen.component.d.ts +0 -14
  206. package/components/fullscreen/index.d.ts +0 -1
  207. package/components/textfield/select.directive.d.ts +0 -19
  208. package/components/textfield/textfield-dropdown.directive.d.ts +0 -16
  209. package/directives/dropdown/dropdown-portal.directive.d.ts +0 -14
  210. package/directives/dropdown/dropdown.service.d.ts +0 -6
  211. package/directives/dropdown/dropdowns.component.d.ts +0 -9
  212. package/directives/hint/hint.service.d.ts +0 -13
  213. package/directives/hint/hints.component.d.ts +0 -12
  214. package/directives/surface/index.d.ts +0 -1
  215. package/directives/surface/surface.directive.d.ts +0 -8
  216. package/esm2022/animations/animations.mjs +0 -363
  217. package/esm2022/animations/index.mjs +0 -2
  218. package/esm2022/animations/taiga-ui-core-animations.mjs +0 -5
  219. package/esm2022/classes/accessors.mjs +0 -31
  220. package/esm2022/classes/driver.mjs +0 -36
  221. package/esm2022/classes/index.mjs +0 -4
  222. package/esm2022/classes/taiga-ui-core-classes.mjs +0 -5
  223. package/esm2022/classes/vehicle.mjs +0 -7
  224. package/esm2022/components/alert/alert.component.mjs +0 -43
  225. package/esm2022/components/alert/alert.directive.mjs +0 -21
  226. package/esm2022/components/alert/alert.interfaces.mjs +0 -2
  227. package/esm2022/components/alert/alert.service.mjs +0 -18
  228. package/esm2022/components/alert/alert.tokens.mjs +0 -51
  229. package/esm2022/components/alert/alerts.component.mjs +0 -33
  230. package/esm2022/components/alert/index.mjs +0 -6
  231. package/esm2022/components/alert/taiga-ui-core-components-alert.mjs +0 -5
  232. package/esm2022/components/button/button.directive.mjs +0 -43
  233. package/esm2022/components/button/button.options.mjs +0 -7
  234. package/esm2022/components/button/index.mjs +0 -3
  235. package/esm2022/components/button/taiga-ui-core-components-button.mjs +0 -5
  236. package/esm2022/components/calendar/calendar-sheet.component.mjs +0 -168
  237. package/esm2022/components/calendar/calendar-sheet.options.mjs +0 -12
  238. package/esm2022/components/calendar/calendar-spin.component.mjs +0 -53
  239. package/esm2022/components/calendar/calendar-year.component.mjs +0 -128
  240. package/esm2022/components/calendar/calendar.component.mjs +0 -147
  241. package/esm2022/components/calendar/index.mjs +0 -6
  242. package/esm2022/components/calendar/taiga-ui-core-components-calendar.mjs +0 -5
  243. package/esm2022/components/data-list/data-list.component.mjs +0 -139
  244. package/esm2022/components/data-list/data-list.directive.mjs +0 -19
  245. package/esm2022/components/data-list/data-list.mjs +0 -14
  246. package/esm2022/components/data-list/data-list.tokens.mjs +0 -18
  247. package/esm2022/components/data-list/index.mjs +0 -9
  248. package/esm2022/components/data-list/opt-group.directive.mjs +0 -21
  249. package/esm2022/components/data-list/option/option-content.mjs +0 -36
  250. package/esm2022/components/data-list/option/option-legacy.component.mjs +0 -90
  251. package/esm2022/components/data-list/option/option.directive.mjs +0 -109
  252. package/esm2022/components/data-list/taiga-ui-core-components-data-list.mjs +0 -5
  253. package/esm2022/components/dialog/dialog-close.service.mjs +0 -41
  254. package/esm2022/components/dialog/dialog.component.mjs +0 -63
  255. package/esm2022/components/dialog/dialog.directive.mjs +0 -21
  256. package/esm2022/components/dialog/dialog.factory.mjs +0 -15
  257. package/esm2022/components/dialog/dialog.interfaces.mjs +0 -2
  258. package/esm2022/components/dialog/dialog.service.mjs +0 -18
  259. package/esm2022/components/dialog/dialog.tokens.mjs +0 -33
  260. package/esm2022/components/dialog/dialogs.component.mjs +0 -29
  261. package/esm2022/components/dialog/index.mjs +0 -8
  262. package/esm2022/components/dialog/taiga-ui-core-components-dialog.mjs +0 -5
  263. package/esm2022/components/error/error.component.mjs +0 -34
  264. package/esm2022/components/error/index.mjs +0 -2
  265. package/esm2022/components/error/taiga-ui-core-components-error.mjs +0 -5
  266. package/esm2022/components/expand/expand-content.directive.mjs +0 -18
  267. package/esm2022/components/expand/expand.component.mjs +0 -124
  268. package/esm2022/components/expand/expand.mjs +0 -7
  269. package/esm2022/components/expand/index.mjs +0 -4
  270. package/esm2022/components/expand/taiga-ui-core-components-expand.mjs +0 -5
  271. package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -67
  272. package/esm2022/components/fullscreen/index.mjs +0 -2
  273. package/esm2022/components/fullscreen/taiga-ui-core-components-fullscreen.mjs +0 -5
  274. package/esm2022/components/icon/icon.component.mjs +0 -44
  275. package/esm2022/components/icon/icon.pipe.mjs +0 -19
  276. package/esm2022/components/icon/index.mjs +0 -3
  277. package/esm2022/components/icon/taiga-ui-core-components-icon.mjs +0 -5
  278. package/esm2022/components/index.mjs +0 -18
  279. package/esm2022/components/label/index.mjs +0 -2
  280. package/esm2022/components/label/label.directive.mjs +0 -41
  281. package/esm2022/components/label/taiga-ui-core-components-label.mjs +0 -5
  282. package/esm2022/components/link/index.mjs +0 -3
  283. package/esm2022/components/link/link.directive.mjs +0 -47
  284. package/esm2022/components/link/link.options.mjs +0 -13
  285. package/esm2022/components/link/taiga-ui-core-components-link.mjs +0 -5
  286. package/esm2022/components/loader/index.mjs +0 -3
  287. package/esm2022/components/loader/loader.component.mjs +0 -46
  288. package/esm2022/components/loader/loader.options.mjs +0 -18
  289. package/esm2022/components/loader/taiga-ui-core-components-loader.mjs +0 -5
  290. package/esm2022/components/notification/index.mjs +0 -3
  291. package/esm2022/components/notification/notification.directive.mjs +0 -81
  292. package/esm2022/components/notification/notification.options.mjs +0 -23
  293. package/esm2022/components/notification/taiga-ui-core-components-notification.mjs +0 -5
  294. package/esm2022/components/root/index.mjs +0 -2
  295. package/esm2022/components/root/root.component.mjs +0 -85
  296. package/esm2022/components/root/taiga-ui-core-components-root.mjs +0 -5
  297. package/esm2022/components/scrollbar/index.mjs +0 -9
  298. package/esm2022/components/scrollbar/scroll-controls.component.mjs +0 -32
  299. package/esm2022/components/scrollbar/scroll-into-view.directive.mjs +0 -43
  300. package/esm2022/components/scrollbar/scroll-ref.directive.mjs +0 -19
  301. package/esm2022/components/scrollbar/scrollable.directive.mjs +0 -26
  302. package/esm2022/components/scrollbar/scrollbar.component.mjs +0 -72
  303. package/esm2022/components/scrollbar/scrollbar.directive.mjs +0 -93
  304. package/esm2022/components/scrollbar/scrollbar.options.mjs +0 -6
  305. package/esm2022/components/scrollbar/scrollbar.service.mjs +0 -46
  306. package/esm2022/components/scrollbar/taiga-ui-core-components-scrollbar.mjs +0 -5
  307. package/esm2022/components/spin-button/index.mjs +0 -2
  308. package/esm2022/components/spin-button/spin-button.component.mjs +0 -51
  309. package/esm2022/components/spin-button/taiga-ui-core-components-spin-button.mjs +0 -5
  310. package/esm2022/components/taiga-ui-core-components.mjs +0 -5
  311. package/esm2022/components/textfield/index.mjs +0 -16
  312. package/esm2022/components/textfield/select-like.directive.mjs +0 -42
  313. package/esm2022/components/textfield/select.directive.mjs +0 -64
  314. package/esm2022/components/textfield/taiga-ui-core-components-textfield.mjs +0 -5
  315. package/esm2022/components/textfield/textfield-accessor.mjs +0 -7
  316. package/esm2022/components/textfield/textfield-auxiliary.mjs +0 -7
  317. package/esm2022/components/textfield/textfield-content.directive.mjs +0 -22
  318. package/esm2022/components/textfield/textfield-dropdown.directive.mjs +0 -43
  319. package/esm2022/components/textfield/textfield-icon.mjs +0 -10
  320. package/esm2022/components/textfield/textfield-multi/textfield-item.component.mjs +0 -34
  321. package/esm2022/components/textfield/textfield-multi/textfield-multi.component.mjs +0 -137
  322. package/esm2022/components/textfield/textfield.component.mjs +0 -180
  323. package/esm2022/components/textfield/textfield.directive.mjs +0 -134
  324. package/esm2022/components/textfield/textfield.mjs +0 -19
  325. package/esm2022/components/textfield/textfield.options.mjs +0 -63
  326. package/esm2022/components/textfield/with-native-picker.directive.mjs +0 -24
  327. package/esm2022/directives/appearance/appearance.bindings.mjs +0 -15
  328. package/esm2022/directives/appearance/appearance.directive.mjs +0 -79
  329. package/esm2022/directives/appearance/appearance.options.mjs +0 -12
  330. package/esm2022/directives/appearance/index.mjs +0 -5
  331. package/esm2022/directives/appearance/taiga-ui-core-directives-appearance.mjs +0 -5
  332. package/esm2022/directives/appearance/with-appearance.mjs +0 -27
  333. package/esm2022/directives/date-format/date-format.directive.mjs +0 -31
  334. package/esm2022/directives/date-format/index.mjs +0 -2
  335. package/esm2022/directives/date-format/taiga-ui-core-directives-date-format.mjs +0 -5
  336. package/esm2022/directives/dropdown/dropdown-context.directive.mjs +0 -76
  337. package/esm2022/directives/dropdown/dropdown-hover.directive.mjs +0 -70
  338. package/esm2022/directives/dropdown/dropdown-hover.options.mjs +0 -17
  339. package/esm2022/directives/dropdown/dropdown-limit-width.mjs +0 -37
  340. package/esm2022/directives/dropdown/dropdown-manual.directive.mjs +0 -27
  341. package/esm2022/directives/dropdown/dropdown-open-legacy.directive.mjs +0 -33
  342. package/esm2022/directives/dropdown/dropdown-open.directive.mjs +0 -169
  343. package/esm2022/directives/dropdown/dropdown-options.directive.mjs +0 -73
  344. package/esm2022/directives/dropdown/dropdown-portal.directive.mjs +0 -34
  345. package/esm2022/directives/dropdown/dropdown-position-sided.directive.mjs +0 -69
  346. package/esm2022/directives/dropdown/dropdown-position.directive.mjs +0 -88
  347. package/esm2022/directives/dropdown/dropdown-selection.directive.mjs +0 -159
  348. package/esm2022/directives/dropdown/dropdown.bindings.mjs +0 -19
  349. package/esm2022/directives/dropdown/dropdown.component.mjs +0 -92
  350. package/esm2022/directives/dropdown/dropdown.directive.mjs +0 -110
  351. package/esm2022/directives/dropdown/dropdown.driver.mjs +0 -32
  352. package/esm2022/directives/dropdown/dropdown.mjs +0 -29
  353. package/esm2022/directives/dropdown/dropdown.providers.mjs +0 -10
  354. package/esm2022/directives/dropdown/dropdown.service.mjs +0 -15
  355. package/esm2022/directives/dropdown/dropdowns.component.mjs +0 -24
  356. package/esm2022/directives/dropdown/index.mjs +0 -22
  357. package/esm2022/directives/dropdown/taiga-ui-core-directives-dropdown.mjs +0 -5
  358. package/esm2022/directives/dropdown/with-dropdown-open.directive.mjs +0 -23
  359. package/esm2022/directives/group/group.directive.mjs +0 -53
  360. package/esm2022/directives/group/group.options.mjs +0 -15
  361. package/esm2022/directives/group/index.mjs +0 -3
  362. package/esm2022/directives/group/taiga-ui-core-directives-group.mjs +0 -5
  363. package/esm2022/directives/hint/hint-describe.directive.mjs +0 -50
  364. package/esm2022/directives/hint/hint-driver.directive.mjs +0 -19
  365. package/esm2022/directives/hint/hint-host.directive.mjs +0 -27
  366. package/esm2022/directives/hint/hint-hover.directive.mjs +0 -59
  367. package/esm2022/directives/hint/hint-manual.directive.mjs +0 -33
  368. package/esm2022/directives/hint/hint-options.directive.mjs +0 -86
  369. package/esm2022/directives/hint/hint-overflow.directive.mjs +0 -38
  370. package/esm2022/directives/hint/hint-pointer.directive.mjs +0 -33
  371. package/esm2022/directives/hint/hint-position.directive.mjs +0 -112
  372. package/esm2022/directives/hint/hint-unstyled.component.mjs +0 -39
  373. package/esm2022/directives/hint/hint.component.mjs +0 -127
  374. package/esm2022/directives/hint/hint.directive.mjs +0 -99
  375. package/esm2022/directives/hint/hint.mjs +0 -27
  376. package/esm2022/directives/hint/hint.providers.mjs +0 -9
  377. package/esm2022/directives/hint/hint.service.mjs +0 -29
  378. package/esm2022/directives/hint/hints.component.mjs +0 -34
  379. package/esm2022/directives/hint/index.mjs +0 -17
  380. package/esm2022/directives/hint/taiga-ui-core-directives-hint.mjs +0 -5
  381. package/esm2022/directives/icons/icons.directive.mjs +0 -66
  382. package/esm2022/directives/icons/index.mjs +0 -3
  383. package/esm2022/directives/icons/taiga-ui-core-directives-icons.mjs +0 -5
  384. package/esm2022/directives/icons/with-icons.mjs +0 -22
  385. package/esm2022/directives/index.mjs +0 -12
  386. package/esm2022/directives/items-handlers/index.mjs +0 -4
  387. package/esm2022/directives/items-handlers/items-handlers.directive.mjs +0 -63
  388. package/esm2022/directives/items-handlers/items-handlers.tokens.mjs +0 -27
  389. package/esm2022/directives/items-handlers/items-handlers.validator.mjs +0 -32
  390. package/esm2022/directives/items-handlers/taiga-ui-core-directives-items-handlers.mjs +0 -5
  391. package/esm2022/directives/number-format/index.mjs +0 -2
  392. package/esm2022/directives/number-format/number-format.directive.mjs +0 -31
  393. package/esm2022/directives/number-format/taiga-ui-core-directives-number-format.mjs +0 -5
  394. package/esm2022/directives/popup/index.mjs +0 -4
  395. package/esm2022/directives/popup/popup.directive.mjs +0 -31
  396. package/esm2022/directives/popup/popup.service.mjs +0 -15
  397. package/esm2022/directives/popup/popups.component.mjs +0 -20
  398. package/esm2022/directives/popup/taiga-ui-core-directives-popup.mjs +0 -5
  399. package/esm2022/directives/surface/index.mjs +0 -2
  400. package/esm2022/directives/surface/surface.directive.mjs +0 -44
  401. package/esm2022/directives/surface/taiga-ui-core-directives-surface.mjs +0 -5
  402. package/esm2022/directives/taiga-ui-core-directives.mjs +0 -5
  403. package/esm2022/directives/title/index.mjs +0 -2
  404. package/esm2022/directives/title/taiga-ui-core-directives-title.mjs +0 -5
  405. package/esm2022/directives/title/title.directive.mjs +0 -37
  406. package/esm2022/index.mjs +0 -9
  407. package/esm2022/pipes/auto-color/auto-color.pipe.mjs +0 -19
  408. package/esm2022/pipes/auto-color/index.mjs +0 -2
  409. package/esm2022/pipes/auto-color/taiga-ui-core-pipes-auto-color.mjs +0 -5
  410. package/esm2022/pipes/calendar-sheet/calendar-sheet.pipe.mjs +0 -54
  411. package/esm2022/pipes/calendar-sheet/index.mjs +0 -2
  412. package/esm2022/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.mjs +0 -5
  413. package/esm2022/pipes/calendar-sheet/utils.mjs +0 -36
  414. package/esm2022/pipes/fallback-src/fallback-src.pipe.mjs +0 -23
  415. package/esm2022/pipes/fallback-src/index.mjs +0 -2
  416. package/esm2022/pipes/fallback-src/taiga-ui-core-pipes-fallback-src.mjs +0 -5
  417. package/esm2022/pipes/flag/flag.pipe.mjs +0 -26
  418. package/esm2022/pipes/flag/index.mjs +0 -2
  419. package/esm2022/pipes/flag/taiga-ui-core-pipes-flag.mjs +0 -5
  420. package/esm2022/pipes/format-date/format-date.pipe.mjs +0 -22
  421. package/esm2022/pipes/format-date/index.mjs +0 -2
  422. package/esm2022/pipes/format-date/taiga-ui-core-pipes-format-date.mjs +0 -5
  423. package/esm2022/pipes/format-number/format-number.pipe.mjs +0 -36
  424. package/esm2022/pipes/format-number/index.mjs +0 -2
  425. package/esm2022/pipes/format-number/taiga-ui-core-pipes-format-number.mjs +0 -5
  426. package/esm2022/pipes/index.mjs +0 -10
  427. package/esm2022/pipes/initials/index.mjs +0 -2
  428. package/esm2022/pipes/initials/initials.pipe.mjs +0 -23
  429. package/esm2022/pipes/initials/taiga-ui-core-pipes-initials.mjs +0 -5
  430. package/esm2022/pipes/month/index.mjs +0 -2
  431. package/esm2022/pipes/month/month.pipe.mjs +0 -23
  432. package/esm2022/pipes/month/taiga-ui-core-pipes-month.mjs +0 -5
  433. package/esm2022/pipes/order-week-days/index.mjs +0 -2
  434. package/esm2022/pipes/order-week-days/order-week-days.pipe.mjs +0 -30
  435. package/esm2022/pipes/order-week-days/taiga-ui-core-pipes-order-week-days.mjs +0 -5
  436. package/esm2022/pipes/taiga-ui-core-pipes.mjs +0 -5
  437. package/esm2022/services/breakpoint.service.mjs +0 -31
  438. package/esm2022/services/dark-theme.service.mjs +0 -24
  439. package/esm2022/services/format-date.service.mjs +0 -24
  440. package/esm2022/services/index.mjs +0 -6
  441. package/esm2022/services/position.service.mjs +0 -26
  442. package/esm2022/services/taiga-ui-core-services.mjs +0 -5
  443. package/esm2022/services/visual-viewport.service.mjs +0 -29
  444. package/esm2022/taiga-ui-core.mjs +0 -5
  445. package/esm2022/tokens/animations-speed.mjs +0 -9
  446. package/esm2022/tokens/assets-path.mjs +0 -11
  447. package/esm2022/tokens/auxiliary.mjs +0 -9
  448. package/esm2022/tokens/common-icons.mjs +0 -18
  449. package/esm2022/tokens/dark-mode.mjs +0 -41
  450. package/esm2022/tokens/date-format.mjs +0 -20
  451. package/esm2022/tokens/day-type-handler.mjs +0 -8
  452. package/esm2022/tokens/first-day-of-week.mjs +0 -9
  453. package/esm2022/tokens/i18n.mjs +0 -45
  454. package/esm2022/tokens/icon-resolver.mjs +0 -44
  455. package/esm2022/tokens/icon.mjs +0 -8
  456. package/esm2022/tokens/icons.mjs +0 -21
  457. package/esm2022/tokens/index.mjs +0 -21
  458. package/esm2022/tokens/media.mjs +0 -12
  459. package/esm2022/tokens/number-format.mjs +0 -24
  460. package/esm2022/tokens/reduced-motion.mjs +0 -7
  461. package/esm2022/tokens/scroll-ref.mjs +0 -6
  462. package/esm2022/tokens/selection-stream.mjs +0 -14
  463. package/esm2022/tokens/spin-icons.mjs +0 -8
  464. package/esm2022/tokens/taiga-ui-core-tokens.mjs +0 -5
  465. package/esm2022/tokens/theme.mjs +0 -5
  466. package/esm2022/tokens/viewport.mjs +0 -35
  467. package/esm2022/types/direction.mjs +0 -2
  468. package/esm2022/types/index.mjs +0 -2
  469. package/esm2022/types/interactive-state.mjs +0 -2
  470. package/esm2022/types/orientation.mjs +0 -2
  471. package/esm2022/types/point.mjs +0 -2
  472. package/esm2022/types/portal-item.mjs +0 -2
  473. package/esm2022/types/range-state.mjs +0 -2
  474. package/esm2022/types/size.mjs +0 -13
  475. package/esm2022/types/taiga-ui-core-types.mjs +0 -5
  476. package/esm2022/types/value-content-context.mjs +0 -2
  477. package/esm2022/utils/dom/check-fixed-position.mjs +0 -9
  478. package/esm2022/utils/dom/get-viewport.mjs +0 -24
  479. package/esm2022/utils/dom/get-word-range.mjs +0 -51
  480. package/esm2022/utils/dom/index.mjs +0 -4
  481. package/esm2022/utils/dom/taiga-ui-core-utils-dom.mjs +0 -5
  482. package/esm2022/utils/format/format-number.mjs +0 -47
  483. package/esm2022/utils/format/get-fractional-part-padded.mjs +0 -16
  484. package/esm2022/utils/format/index.mjs +0 -5
  485. package/esm2022/utils/format/number-to-string-without-exp.mjs +0 -18
  486. package/esm2022/utils/format/string-hash-to-hsl.mjs +0 -21
  487. package/esm2022/utils/format/taiga-ui-core-utils-format.mjs +0 -5
  488. package/esm2022/utils/index.mjs +0 -4
  489. package/esm2022/utils/miscellaneous/font-scaling.mjs +0 -11
  490. package/esm2022/utils/miscellaneous/index.mjs +0 -7
  491. package/esm2022/utils/miscellaneous/is-editing-key.mjs +0 -18
  492. package/esm2022/utils/miscellaneous/is-obscured.mjs +0 -8
  493. package/esm2022/utils/miscellaneous/override-options.mjs +0 -11
  494. package/esm2022/utils/miscellaneous/size-bigger.mjs +0 -19
  495. package/esm2022/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.mjs +0 -5
  496. package/esm2022/utils/miscellaneous/to-animation-options.mjs +0 -16
  497. package/esm2022/utils/taiga-ui-core-utils.mjs +0 -5
  498. package/fesm2022/taiga-ui-core-components-fullscreen.mjs +0 -73
  499. package/fesm2022/taiga-ui-core-components-fullscreen.mjs.map +0 -1
  500. package/fesm2022/taiga-ui-core-directives-surface.mjs +0 -50
  501. package/fesm2022/taiga-ui-core-directives-surface.mjs.map +0 -1
  502. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs +0 -29
  503. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs.map +0 -1
  504. package/pipes/fallback-src/fallback-src.pipe.d.ts +0 -9
  505. package/pipes/fallback-src/index.d.ts +0 -1
  506. package/types/portal-item.d.ts +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-directives-date-format.mjs","sources":["../../../projects/core/directives/date-format/date-format.directive.ts","../../../projects/core/directives/date-format/taiga-ui-core-directives-date-format.ts"],"sourcesContent":["import {Directive, inject, Input} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_DATE_FORMAT, type TuiDateFormatSettings} from '@taiga-ui/core/tokens';\nimport {combineLatest, map, Observable, ReplaySubject} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiDateFormat]',\n providers: [tuiProvide(TUI_DATE_FORMAT, TuiDateFormat)],\n})\nexport class TuiDateFormat extends Observable<TuiDateFormatSettings> {\n private readonly settings = new ReplaySubject<Partial<TuiDateFormatSettings>>(1);\n private readonly parent = inject(TUI_DATE_FORMAT, {skipSelf: true});\n\n constructor() {\n super((subscriber) =>\n combineLatest([this.parent, this.settings])\n .pipe(map(([parent, settings]) => ({...parent, ...settings})))\n .subscribe(subscriber),\n );\n }\n\n @Input()\n public set tuiDateFormat(format: Partial<TuiDateFormatSettings>) {\n this.settings.next(format);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAKA,MAKa,aAAc,SAAQ,UAAiC,CAAA;AAIhE,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CAAC,CAAC,UAAU,KACb,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACtC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAC,GAAG,MAAM,EAAE,GAAG,QAAQ,EAAC,CAAC,CAAC,CAAC;AAC7D,aAAA,SAAS,CAAC,UAAU,CAAC,CAC7B,CAAC;AARW,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,aAAa,CAAiC,CAAC,CAAC,CAAC;QAChE,IAAM,CAAA,MAAA,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;KAQnE;IAED,IACW,aAAa,CAAC,MAAsC,EAAA;AAC3D,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC9B;+GAfQ,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,SAAA,EAFX,CAAC,UAAU,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAE9C,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE,CAAC,UAAU,CAAC,eAAe,gBAAgB,CAAC;AAC1D,iBAAA,CAAA;0EAcc,aAAa,EAAA,CAAA;sBADvB,KAAK;;;ACtBV;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-directives-date-format.mjs","sources":["../../../projects/core/directives/date-format/date-format.directive.ts","../../../projects/core/directives/date-format/taiga-ui-core-directives-date-format.ts"],"sourcesContent":["import {computed, Directive, inject, input} from '@angular/core';\nimport {TUI_DATE_FORMAT, type TuiDateFormatSettings} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: '[tuiDateFormat]',\n providers: [\n {\n provide: TUI_DATE_FORMAT,\n useFactory: () => {\n const parent = inject(TUI_DATE_FORMAT, {skipSelf: true});\n const format = inject(TuiDateFormat).tuiDateFormat;\n\n return computed(() => ({...parent(), ...format()}));\n },\n },\n ],\n})\nexport class TuiDateFormat {\n public readonly tuiDateFormat = input.required<Partial<TuiDateFormatSettings>>();\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAiBa,aAAa,CAAA;AAd1B,IAAA,WAAA,GAAA;AAeoB,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAkC;AACnF;+GAFY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,EAZX,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,MAAK;AACb,oBAAA,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;oBACxD,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa;AAElD,oBAAA,OAAO,QAAQ,CAAC,OAAO,EAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAC,CAAC,CAAC;iBACtD;AACJ,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEQ,aAAa,EAAA,UAAA,EAAA,CAAA;kBAdzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,eAAe;4BACxB,UAAU,EAAE,MAAK;AACb,gCAAA,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AACxD,gCAAA,MAAM,MAAM,GAAG,MAAM,CAAe,aAAA,CAAA,CAAC,aAAa;AAElD,gCAAA,OAAO,QAAQ,CAAC,OAAO,EAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAC,CAAC,CAAC;6BACtD;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;;;AChBD;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Directive, InjectionToken, Optional, Self, SkipSelf, inject, Input, EventEmitter, Output, ChangeDetectorRef, INJECTOR, signal, TemplateRef, computed, Component, ChangeDetectionStrategy, ElementRef, ContentChild, ViewContainerRef } from '@angular/core';
2
+ import { Injectable, Directive, InjectionToken, Optional, Self, SkipSelf, inject, Input, EventEmitter, Output, ChangeDetectorRef, INJECTOR, signal, TemplateRef, computed, forwardRef, ChangeDetectionStrategy, Component, PLATFORM_ID, ElementRef, ContentChild, ViewContainerRef } from '@angular/core';
3
3
  import { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
4
4
  import { EMPTY_CLIENT_RECT, TUI_TRUE_HANDLER, CHAR_ZERO_WIDTH_SPACE, CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
5
5
  import * as i1 from '@taiga-ui/cdk/directives/active-zone';
@@ -8,8 +8,8 @@ import * as i2 from '@taiga-ui/cdk/directives/animated';
8
8
  import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
9
9
  import { tuiInjectElement, tuiGetActualTarget, tuiPointToClientRect, tuiIsElement, tuiIsHTMLElement, tuiIsElementEditable, tuiIsTextNode, tuiIsTextfield } from '@taiga-ui/cdk/utils/dom';
10
10
  import { tuiClamp } from '@taiga-ui/cdk/utils/math';
11
- import { tuiProvide, tuiPure, tuiPx, tuiProvideOptions, tuiIsString, tuiDirectiveBinding } from '@taiga-ui/cdk/utils/miscellaneous';
12
- import { TuiDriverDirective, TuiPositionAccessor, tuiFallbackAccessor, TuiRectAccessor, tuiAsRectAccessor, tuiAsVehicle, tuiPositionAccessorFor, tuiRectAccessorFor, tuiAsDriver, TuiDriver, tuiAsPositionAccessor } from '@taiga-ui/core/classes';
11
+ import { tuiProvide, tuiPure, tuiPx, tuiProvideOptions, tuiSetSignal, tuiIsString, tuiDirectiveBinding } from '@taiga-ui/cdk/utils/miscellaneous';
12
+ import { TuiDriverDirective, TuiPositionAccessor, tuiFallbackAccessor, TuiRectAccessor, tuiAsVehicle, tuiPositionAccessorFor, tuiRectAccessorFor, tuiAsDriver, tuiAsRectAccessor, TuiDriver, tuiAsPositionAccessor } from '@taiga-ui/core/classes';
13
13
  import { TuiScrollbar } from '@taiga-ui/core/components/scrollbar';
14
14
  import { TuiVisualViewportService, TuiPositionService } from '@taiga-ui/core/services';
15
15
  import { TUI_VIEWPORT, TUI_DARK_MODE, TUI_SELECTION_STREAM } from '@taiga-ui/core/tokens';
@@ -17,15 +17,15 @@ import { PolymorpheusComponent, PolymorpheusTemplate, PolymorpheusOutlet } from
17
17
  import { BehaviorSubject, Subject, throttleTime, takeWhile, map, merge, filter, fromEvent, switchMap, delay, startWith, takeUntil, distinctUntilChanged, of, tap, share, combineLatest } from 'rxjs';
18
18
  import { coerceArray } from '@angular/cdk/coercion';
19
19
  import { tuiZonefreeScheduler, tuiTypedFromEvent, tuiZonefree, tuiIfMap, tuiCloseWatcher, tuiZonefull, tuiWatch, tuiZoneOptimized } from '@taiga-ui/cdk/observables';
20
+ import { TuiPopupService } from '@taiga-ui/core/directives/popup';
20
21
  import { tuiOverrideOptions, tuiCheckFixedPosition, tuiGetWordRange } from '@taiga-ui/core/utils';
21
- import { TuiPortalService, TuiPortals, tuiAsPortal } from '@taiga-ui/cdk/classes';
22
22
  import { __decorate } from 'tslib';
23
- import { DOCUMENT } from '@angular/common';
23
+ import { isPlatformBrowser, DOCUMENT } from '@angular/common';
24
24
  import { TUI_IS_TOUCH, TUI_RANGE } from '@taiga-ui/cdk/tokens';
25
25
  import { shouldCall } from '@taiga-ui/event-plugins';
26
26
  import * as i1$1 from '@taiga-ui/cdk/directives/obscured';
27
27
  import { TuiObscured } from '@taiga-ui/cdk/directives/obscured';
28
- import { tuiIsNativeKeyboardFocusable, tuiGetClosestFocusable, tuiIsNativeFocusedIn, tuiGetNativeFocused } from '@taiga-ui/cdk/utils/focus';
28
+ import { tuiIsKeyboardFocusable, tuiGetClosestFocusable, tuiIsFocusedIn, tuiGetFocused } from '@taiga-ui/cdk/utils/focus';
29
29
  import { tuiIsEditingKey, tuiOverrideOptions as tuiOverrideOptions$1 } from '@taiga-ui/core/utils/miscellaneous';
30
30
 
31
31
  class TuiDropdownDriver extends BehaviorSubject {
@@ -33,25 +33,22 @@ class TuiDropdownDriver extends BehaviorSubject {
33
33
  super(false);
34
34
  this.type = 'dropdown';
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDriver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
37
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDriver }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDriver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDriver }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDriver, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDriver, decorators: [{
40
40
  type: Injectable
41
- }], ctorParameters: function () { return []; } });
41
+ }], ctorParameters: () => [] });
42
42
  class TuiDropdownDriverDirective extends TuiDriverDirective {
43
43
  constructor() {
44
44
  super(...arguments);
45
45
  this.type = 'dropdown';
46
46
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDriverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
48
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownDriverDirective, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDriverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
48
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownDriverDirective, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDriverDirective, decorators: [{
51
- type: Directive,
52
- args: [{
53
- standalone: true,
54
- }]
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDriverDirective, decorators: [{
51
+ type: Directive
55
52
  }] });
56
53
 
57
54
  /**
@@ -62,17 +59,6 @@ const TUI_DROPDOWN_COMPONENT = new InjectionToken(ngDevMode ? 'TUI_DROPDOWN_COMP
62
59
  });
63
60
  const TUI_DROPDOWN_CONTEXT = new InjectionToken(ngDevMode ? 'TUI_DROPDOWN_CONTEXT' : '');
64
61
 
65
- class TuiDropdownService extends TuiPortalService {
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
67
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownService, providedIn: 'root' }); }
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownService, decorators: [{
70
- type: Injectable,
71
- args: [{
72
- providedIn: 'root',
73
- }]
74
- }] });
75
-
76
62
  /** Default values for dropdown options */
77
63
  const TUI_DROPDOWN_DEFAULT_OPTIONS = {
78
64
  align: 'left',
@@ -108,13 +94,12 @@ class TuiDropdownOptionsDirective {
108
94
  this.maxHeight = this.options.maxHeight;
109
95
  this.offset = this.options.offset;
110
96
  }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOptionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
112
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownOptionsDirective, isStandalone: true, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: { align: ["tuiDropdownAlign", "align"], appearance: ["tuiDropdownAppearance", "appearance"], direction: ["tuiDropdownDirection", "direction"], limitWidth: ["tuiDropdownLimitWidth", "limitWidth"], minHeight: ["tuiDropdownMinHeight", "minHeight"], maxHeight: ["tuiDropdownMaxHeight", "maxHeight"], offset: ["tuiDropdownOffset", "offset"] }, providers: [tuiProvide(TUI_DROPDOWN_OPTIONS, TuiDropdownOptionsDirective)], ngImport: i0 }); }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOptionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
98
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownOptionsDirective, isStandalone: true, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: { align: ["tuiDropdownAlign", "align"], appearance: ["tuiDropdownAppearance", "appearance"], direction: ["tuiDropdownDirection", "direction"], limitWidth: ["tuiDropdownLimitWidth", "limitWidth"], minHeight: ["tuiDropdownMinHeight", "minHeight"], maxHeight: ["tuiDropdownMaxHeight", "maxHeight"], offset: ["tuiDropdownOffset", "offset"] }, providers: [tuiProvide(TUI_DROPDOWN_OPTIONS, TuiDropdownOptionsDirective)], ngImport: i0 }); }
113
99
  }
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOptionsDirective, decorators: [{
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOptionsDirective, decorators: [{
115
101
  type: Directive,
116
102
  args: [{
117
- standalone: true,
118
103
  selector: '[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]',
119
104
  providers: [tuiProvide(TUI_DROPDOWN_OPTIONS, TuiDropdownOptionsDirective)],
120
105
  }]
@@ -149,7 +134,9 @@ class TuiDropdownPosition extends TuiPositionAccessor {
149
134
  this.viewport = inject(TUI_VIEWPORT);
150
135
  this.directionChange = new EventEmitter();
151
136
  this.type = 'dropdown';
152
- this.accessor = tuiFallbackAccessor('dropdown')(inject(TuiRectAccessor), inject(TuiDropdownDirective, { optional: true }));
137
+ this.accessor = tuiFallbackAccessor('dropdown')(inject(TuiRectAccessor, { optional: true }), {
138
+ getClientRect: () => this.el.getBoundingClientRect(),
139
+ });
153
140
  }
154
141
  emitDirection(direction) {
155
142
  this.directionChange.emit(direction);
@@ -158,7 +145,7 @@ class TuiDropdownPosition extends TuiPositionAccessor {
158
145
  if (!width && !height) {
159
146
  this.previous = undefined;
160
147
  }
161
- const hostRect = this.accessor?.getClientRect() ?? EMPTY_CLIENT_RECT;
148
+ const hostRect = this.accessor.getClientRect();
162
149
  const viewportRect = this.viewport.getClientRect();
163
150
  const { minHeight, direction, offset, limitWidth } = this.options;
164
151
  const align = this.getAlign(this.options.align);
@@ -202,17 +189,14 @@ class TuiDropdownPosition extends TuiPositionAccessor {
202
189
  }
203
190
  return rtl && align === 'right' ? 'left' : align;
204
191
  }
205
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
206
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownPosition, isStandalone: true, outputs: { directionChange: "tuiDropdownDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
192
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
193
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownPosition, isStandalone: true, outputs: { directionChange: "tuiDropdownDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
207
194
  }
208
195
  __decorate([
209
196
  tuiPure
210
197
  ], TuiDropdownPosition.prototype, "emitDirection", null);
211
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPosition, decorators: [{
212
- type: Directive,
213
- args: [{
214
- standalone: true,
215
- }]
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownPosition, decorators: [{
199
+ type: Directive
216
200
  }], propDecorators: { directionChange: [{
217
201
  type: Output,
218
202
  args: ['tuiDropdownDirectionChange']
@@ -221,7 +205,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
221
205
  class TuiDropdownDirective {
222
206
  constructor() {
223
207
  this.refresh$ = new Subject();
224
- this.service = inject(TuiDropdownService);
208
+ this.service = inject(TuiPopupService);
225
209
  this.cdr = inject(ChangeDetectorRef);
226
210
  // TODO: think of a better solution later
227
211
  this.drivers = coerceArray(inject(TuiDropdownDriver, { self: true, optional: true }));
@@ -274,27 +258,20 @@ class TuiDropdownDirective {
274
258
  }
275
259
  else if (!show && ref) {
276
260
  this.ref.set(null);
277
- this.service.remove(ref);
261
+ ref.destroy();
278
262
  }
279
263
  this.drivers.forEach((driver) => driver?.next(show));
280
264
  // TODO: Remove in v5, only needed in Angular 16
281
265
  this.cdr.markForCheck();
282
266
  }
283
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
284
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownDirective, isStandalone: true, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: { tuiDropdown: "tuiDropdown" }, host: { properties: { "class.tui-dropdown-open": "ref()" } }, providers: [
285
- tuiAsRectAccessor(TuiDropdownDirective),
286
- tuiAsVehicle(TuiDropdownDirective),
287
- ], exportAs: ["tuiDropdown"], hostDirectives: [{ directive: TuiDropdownDriverDirective }, { directive: TuiDropdownPosition, outputs: ["tuiDropdownDirectionChange", "tuiDropdownDirectionChange"] }], ngImport: i0 }); }
267
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
268
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownDirective, isStandalone: true, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: { tuiDropdown: "tuiDropdown" }, host: { properties: { "class.tui-dropdown-open": "ref()" } }, providers: [tuiAsVehicle(TuiDropdownDirective)], exportAs: ["tuiDropdown"], hostDirectives: [{ directive: TuiDropdownDriverDirective }, { directive: TuiDropdownPosition, outputs: ["tuiDropdownDirectionChange", "tuiDropdownDirectionChange"] }], ngImport: i0 }); }
288
269
  }
289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownDirective, decorators: [{
270
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownDirective, decorators: [{
290
271
  type: Directive,
291
272
  args: [{
292
- standalone: true,
293
273
  selector: '[tuiDropdown]:not(ng-container):not(ng-template)',
294
- providers: [
295
- tuiAsRectAccessor(TuiDropdownDirective),
296
- tuiAsVehicle(TuiDropdownDirective),
297
- ],
274
+ providers: [tuiAsVehicle(TuiDropdownDirective)],
298
275
  exportAs: 'tuiDropdown',
299
276
  hostDirectives: [
300
277
  TuiDropdownDriverDirective,
@@ -362,25 +339,47 @@ class TuiDropdownComponent {
362
339
  maxWidth: tuiPx(Math.round(viewport.width) - 16), // 8px min gap from each side
363
340
  };
364
341
  }
365
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
366
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownComponent, isStandalone: true, selector: "tui-dropdown", host: { properties: { "attr.data-appearance": "options.appearance", "attr.tuiTheme": "theme()" } }, providers: [
342
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
343
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownComponent, isStandalone: true, selector: "tui-dropdown", host: { properties: { "attr.data-appearance": "options.appearance", "attr.tuiTheme": "theme()" } }, providers: [
367
344
  TuiPositionService,
368
345
  tuiPositionAccessorFor('dropdown', TuiDropdownPosition),
369
- tuiRectAccessorFor('dropdown', TuiDropdownDirective),
370
- ], hostDirectives: [{ directive: i1.TuiActiveZone }, { directive: i2.TuiAnimated }], ngImport: i0, template: "<tui-scrollbar class=\"t-scroll\">\n <div\n *polymorpheusOutlet=\"directive._content() as text; context: {$implicit: close}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n</tui-scrollbar>\n", styles: [":host{position:absolute;display:flex;box-shadow:var(--tui-shadow-medium);color:var(--tui-text-primary);background:var(--tui-background-elevation-3);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-border-normal);box-sizing:border-box;isolation:isolate;pointer-events:auto;--tui-from: translateY(-1rem)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:not([style*=top]){visibility:hidden}.t-scroll{flex-grow:1;max-inline-size:100%;inline-size:-webkit-max-content;inline-size:max-content;overscroll-behavior:none}.t-primitive{padding:1rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollbar, selector: "tui-scrollbar", inputs: ["hidden"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
346
+ tuiRectAccessorFor('dropdown', forwardRef(() => TuiDropdownDirective)),
347
+ ], hostDirectives: [{ directive: i1.TuiActiveZone }, { directive: i2.TuiAnimated }], ngImport: i0, template: "<tui-scrollbar class=\"t-scroll\">\n <div\n *polymorpheusOutlet=\"directive._content() as text; context: {$implicit: close}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n</tui-scrollbar>\n", styles: [":host{position:absolute;display:flex;box-shadow:var(--tui-shadow-medium);color:var(--tui-text-primary);background:var(--tui-background-elevation-3);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-border-normal);box-sizing:border-box;isolation:isolate;pointer-events:auto;--tui-from: translateY(-1rem)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:not([style*=top]){visibility:hidden}.t-scroll{flex-grow:1;max-inline-size:100%;inline-size:max-content;overscroll-behavior:none}.t-primitive{padding:1rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollbar, selector: "tui-scrollbar", inputs: ["hidden"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
371
348
  }
372
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownComponent, decorators: [{
349
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownComponent, decorators: [{
373
350
  type: Component,
374
- args: [{ standalone: true, selector: 'tui-dropdown', imports: [PolymorpheusOutlet, TuiScrollbar], changeDetection: ChangeDetectionStrategy.Default, providers: [
351
+ args: [{ selector: 'tui-dropdown', imports: [PolymorpheusOutlet, TuiScrollbar], changeDetection: ChangeDetectionStrategy.Default, providers: [
375
352
  TuiPositionService,
376
353
  tuiPositionAccessorFor('dropdown', TuiDropdownPosition),
377
- tuiRectAccessorFor('dropdown', TuiDropdownDirective),
354
+ tuiRectAccessorFor('dropdown', forwardRef(() => TuiDropdownDirective)),
378
355
  ], hostDirectives: [TuiActiveZone, TuiAnimated], host: {
379
356
  '[attr.data-appearance]': 'options.appearance',
380
357
  '[attr.tuiTheme]': 'theme()',
381
- }, template: "<tui-scrollbar class=\"t-scroll\">\n <div\n *polymorpheusOutlet=\"directive._content() as text; context: {$implicit: close}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n</tui-scrollbar>\n", styles: [":host{position:absolute;display:flex;box-shadow:var(--tui-shadow-medium);color:var(--tui-text-primary);background:var(--tui-background-elevation-3);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-border-normal);box-sizing:border-box;isolation:isolate;pointer-events:auto;--tui-from: translateY(-1rem)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:not([style*=top]){visibility:hidden}.t-scroll{flex-grow:1;max-inline-size:100%;inline-size:-webkit-max-content;inline-size:max-content;overscroll-behavior:none}.t-primitive{padding:1rem}\n"] }]
358
+ }, template: "<tui-scrollbar class=\"t-scroll\">\n <div\n *polymorpheusOutlet=\"directive._content() as text; context: {$implicit: close}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n</tui-scrollbar>\n", styles: [":host{position:absolute;display:flex;box-shadow:var(--tui-shadow-medium);color:var(--tui-text-primary);background:var(--tui-background-elevation-3);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-border-normal);box-sizing:border-box;isolation:isolate;pointer-events:auto;--tui-from: translateY(-1rem)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:not([style*=top]){visibility:hidden}.t-scroll{flex-grow:1;max-inline-size:100%;inline-size:max-content;overscroll-behavior:none}.t-primitive{padding:1rem}\n"] }]
382
359
  }] });
383
360
 
361
+ class TuiDropdownContent {
362
+ constructor() {
363
+ this.directive = inject(TuiDropdownDirective);
364
+ this.directive.tuiDropdown = inject(TemplateRef);
365
+ if (isPlatformBrowser(inject(PLATFORM_ID)) &&
366
+ this.directive.el.matches(':focus-within')) {
367
+ this.directive.toggle(true);
368
+ }
369
+ }
370
+ ngOnDestroy() {
371
+ this.directive.tuiDropdown = null;
372
+ }
373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
374
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownContent, isStandalone: true, selector: "ng-template[tuiDropdown]", ngImport: i0 }); }
375
+ }
376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownContent, decorators: [{
377
+ type: Directive,
378
+ args: [{
379
+ selector: 'ng-template[tuiDropdown]',
380
+ }]
381
+ }], ctorParameters: () => [] });
382
+
384
383
  function activeZoneFilter(event) {
385
384
  return (!event ||
386
385
  (this.driver.value && !this.activeZone.contains(tuiGetActualTarget(event))));
@@ -410,8 +409,8 @@ class TuiDropdownContext extends TuiRectAccessor {
410
409
  this.currentRect = tuiPointToClientRect(x, y);
411
410
  this.driver.next(true);
412
411
  }
413
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownContext, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
414
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownContext, isStandalone: true, selector: "[tuiDropdownContext]", host: { listeners: { "document:keydown.esc": "closeDropdown()", "longtap": "onContextMenu($event.detail.clientX, $event.detail.clientY)" }, properties: { "style.user-select": "userSelect()", "style.-webkit-user-select": "userSelect()", "style.-webkit-touch-callout": "userSelect()" } }, providers: [
412
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownContext, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
413
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownContext, isStandalone: true, selector: "[tuiDropdownContext]", host: { listeners: { "document:keydown.esc": "closeDropdown()", "longtap": "onContextMenu($event.detail.clientX, $event.detail.clientY)" }, properties: { "style.user-select": "userSelect()", "style.-webkit-user-select": "userSelect()", "style.-webkit-touch-callout": "userSelect()" } }, providers: [
415
414
  TuiActiveZone,
416
415
  TuiDropdownDriver,
417
416
  tuiAsDriver(TuiDropdownDriver),
@@ -421,10 +420,9 @@ class TuiDropdownContext extends TuiRectAccessor {
421
420
  __decorate([
422
421
  shouldCall(activeZoneFilter)
423
422
  ], TuiDropdownContext.prototype, "closeDropdown", null);
424
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownContext, decorators: [{
423
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownContext, decorators: [{
425
424
  type: Directive,
426
425
  args: [{
427
- standalone: true,
428
426
  selector: '[tuiDropdownContext]',
429
427
  providers: [
430
428
  TuiActiveZone,
@@ -480,7 +478,7 @@ class TuiDropdownOpen {
480
478
  // TODO: make it private when all legacy controls will be deleted from @taiga-ui/legacy (5.0)
481
479
  this.driver = inject(TuiDropdownDriver);
482
480
  this.sub = this.driver
483
- .pipe(tuiIfMap(() => merge(tuiCloseWatcher(), this.obscured.tuiObscured.pipe(filter(Boolean)), this.activeZone.tuiActiveZoneChange.pipe(filter((a) => !a)), fromEvent(this.el, 'focusin').pipe(filter((event) => !this.host.contains(tuiGetActualTarget(event)) ||
481
+ .pipe(tuiIfMap(() => merge(tuiCloseWatcher(), this.obscured.tuiObscured$.pipe(filter(Boolean)), this.activeZone.tuiActiveZoneChange.pipe(filter((a) => !a)), fromEvent(this.el, 'focusin').pipe(filter((event) => !this.host.contains(tuiGetActualTarget(event)) ||
484
482
  !this.directive.ref())))), tuiZonefull(), tuiWatch(), takeUntilDestroyed())
485
483
  .subscribe(() => this.toggle(false));
486
484
  this.sync = this.driver.pipe(takeUntilDestroyed()).subscribe((open) => {
@@ -531,7 +529,7 @@ class TuiDropdownOpen {
531
529
  }
532
530
  get host() {
533
531
  const initial = this.dropdownHost?.nativeElement || this.el;
534
- const focusable = tuiIsNativeKeyboardFocusable(initial)
532
+ const focusable = tuiIsKeyboardFocusable(initial)
535
533
  ? initial
536
534
  : tuiGetClosestFocusable({ initial, root: this.el });
537
535
  return this.dropdownHost?.nativeElement || focusable || this.el;
@@ -540,7 +538,7 @@ class TuiDropdownOpen {
540
538
  return tuiIsElementEditable(this.host);
541
539
  }
542
540
  get focused() {
543
- return tuiIsNativeFocusedIn(this.host) || tuiIsNativeFocusedIn(this.dropdown());
541
+ return tuiIsFocusedIn(this.host) || tuiIsFocusedIn(this.dropdown());
544
542
  }
545
543
  update(open) {
546
544
  if (open && !this.tuiDropdownEnabled) {
@@ -551,7 +549,7 @@ class TuiDropdownOpen {
551
549
  this.drive();
552
550
  }
553
551
  drive(open = !!this.tuiDropdownOpen && this.tuiDropdownEnabled) {
554
- this.obscured.tuiObscuredEnabled = open;
552
+ tuiSetSignal(this.obscured.tuiObscuredEnabled, open);
555
553
  this.driver.next(open);
556
554
  }
557
555
  focusDropdown(previous) {
@@ -567,16 +565,15 @@ class TuiDropdownOpen {
567
565
  child.remove();
568
566
  focusable?.focus();
569
567
  }
570
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOpen, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
571
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownOpen, isStandalone: true, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: { tuiDropdownEnabled: "tuiDropdownEnabled", tuiDropdownOpen: "tuiDropdownOpen" }, outputs: { tuiDropdownOpenChange: "tuiDropdownOpenChange" }, host: { listeners: { "click": "onClick($event.target)", "keydown.arrowDown": "onArrow($event, false)", "keydown.arrowUp": "onArrow($event, true)", "document:keydown.zoneless.capture": "onEsc($event)", "document:keydown.zoneless": "onKeydown($event)", "tuiActiveZoneChange": "0" } }, providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)], queries: [{ propertyName: "dropdownHost", first: true, predicate: ["tuiDropdownHost"], descendants: true, read: ElementRef }], usesOnChanges: true, hostDirectives: [{ directive: i1$1.TuiObscured }, { directive: i1.TuiActiveZone, inputs: ["tuiActiveZoneParent", "tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange", "tuiActiveZoneChange"] }], ngImport: i0 }); }
568
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOpen, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
569
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownOpen, isStandalone: true, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: { tuiDropdownEnabled: "tuiDropdownEnabled", tuiDropdownOpen: "tuiDropdownOpen" }, outputs: { tuiDropdownOpenChange: "tuiDropdownOpenChange" }, host: { listeners: { "click": "onClick($event.target)", "keydown.arrowDown": "onArrow($event, false)", "keydown.arrowUp": "onArrow($event, true)", "document:keydown.zoneless.capture": "onEsc($event)", "document:keydown.zoneless": "onKeydown($event)", "tuiActiveZoneChange": "0" } }, providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)], queries: [{ propertyName: "dropdownHost", first: true, predicate: ["tuiDropdownHost"], descendants: true, read: ElementRef }], usesOnChanges: true, hostDirectives: [{ directive: i1$1.TuiObscured }, { directive: i1.TuiActiveZone, inputs: ["tuiActiveZoneParent", "tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange", "tuiActiveZoneChange"] }], ngImport: i0 }); }
572
570
  }
573
571
  __decorate([
574
572
  shouldCall(shouldClose)
575
573
  ], TuiDropdownOpen.prototype, "onEsc", null);
576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOpen, decorators: [{
574
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOpen, decorators: [{
577
575
  type: Directive,
578
576
  args: [{
579
- standalone: true,
580
577
  selector: '[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]',
581
578
  providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)],
582
579
  hostDirectives: [
@@ -641,20 +638,19 @@ class TuiDropdownHover extends TuiDriver {
641
638
  const child = !this.el.contains(element) && this.activeZone.contains(element);
642
639
  return hovered || child;
643
640
  }
644
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
645
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownHover, isStandalone: true, selector: "[tuiDropdownHover]", inputs: { showDelay: ["tuiDropdownShowDelay", "showDelay"], hideDelay: ["tuiDropdownHideDelay", "hideDelay"] }, host: { listeners: { "click.capture": "onClick($event)" } }, providers: [TuiActiveZone, tuiAsDriver(TuiDropdownHover)], queries: [{ propertyName: "dropdownHost", first: true, predicate: ["tuiDropdownHost"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0 }); }
641
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
642
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownHover, isStandalone: true, selector: "[tuiDropdownHover]", inputs: { showDelay: ["tuiDropdownShowDelay", "showDelay"], hideDelay: ["tuiDropdownHideDelay", "hideDelay"] }, host: { listeners: { "click.capture": "onClick($event)" } }, providers: [TuiActiveZone, tuiAsDriver(TuiDropdownHover)], queries: [{ propertyName: "dropdownHost", first: true, predicate: ["tuiDropdownHost"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0 }); }
646
643
  }
647
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownHover, decorators: [{
644
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownHover, decorators: [{
648
645
  type: Directive,
649
646
  args: [{
650
- standalone: true,
651
647
  selector: '[tuiDropdownHover]',
652
648
  providers: [TuiActiveZone, tuiAsDriver(TuiDropdownHover)],
653
649
  host: {
654
650
  '(click.capture)': 'onClick($event)',
655
651
  },
656
652
  }]
657
- }], ctorParameters: function () { return []; }, propDecorators: { dropdownHost: [{
653
+ }], ctorParameters: () => [], propDecorators: { dropdownHost: [{
658
654
  type: ContentChild,
659
655
  args: ['tuiDropdownHost', { descendants: true, read: ElementRef }]
660
656
  }], showDelay: [{
@@ -673,13 +669,12 @@ class TuiDropdownManual {
673
669
  ngOnChanges() {
674
670
  this.driver.next(!!this.tuiDropdownManual);
675
671
  }
676
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
677
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownManual, isStandalone: true, selector: "[tuiDropdownManual]", inputs: { tuiDropdownManual: "tuiDropdownManual" }, providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)], usesOnChanges: true, ngImport: i0 }); }
672
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
673
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownManual, isStandalone: true, selector: "[tuiDropdownManual]", inputs: { tuiDropdownManual: "tuiDropdownManual" }, providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)], usesOnChanges: true, ngImport: i0 }); }
678
674
  }
679
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownManual, decorators: [{
675
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownManual, decorators: [{
680
676
  type: Directive,
681
677
  args: [{
682
- standalone: true,
683
678
  selector: '[tuiDropdownManual]',
684
679
  providers: [TuiDropdownDriver, tuiAsDriver(TuiDropdownDriver)],
685
680
  }]
@@ -701,13 +696,12 @@ class TuiDropdownOpenLegacy {
701
696
  emitOpenChange(open) {
702
697
  this.openStateSub.next(open);
703
698
  }
704
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOpenLegacy, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
705
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownOpenLegacy, isStandalone: true, selector: "[tuiDropdownOpen]:not([tuiDropdown]),[tuiDropdownOpenChange]:not([tuiDropdown])", inputs: { tuiDropdownOpen: "tuiDropdownOpen" }, outputs: { tuiDropdownOpenChange: "tuiDropdownOpenChange" }, ngImport: i0 }); }
699
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOpenLegacy, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
700
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownOpenLegacy, isStandalone: true, selector: "[tuiDropdownOpen]:not([tuiDropdown]),[tuiDropdownOpenChange]:not([tuiDropdown])", inputs: { tuiDropdownOpen: "tuiDropdownOpen" }, outputs: { tuiDropdownOpenChange: "tuiDropdownOpenChange" }, ngImport: i0 }); }
706
701
  }
707
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownOpenLegacy, decorators: [{
702
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownOpenLegacy, decorators: [{
708
703
  type: Directive,
709
704
  args: [{
710
- standalone: true,
711
705
  selector: '[tuiDropdownOpen]:not([tuiDropdown]),[tuiDropdownOpenChange]:not([tuiDropdown])',
712
706
  }]
713
707
  }], propDecorators: { tuiDropdownOpenChange: [{
@@ -716,36 +710,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
716
710
  type: Input
717
711
  }] } });
718
712
 
719
- /**
720
- * @deprecated use {@link TuiPopup} directive instead
721
- */
722
- class TuiDropdownPortal {
723
- constructor() {
724
- this.template = inject(TemplateRef);
725
- this.service = inject(TuiDropdownService);
726
- }
727
- set tuiDropdown(show) {
728
- this.viewRef?.destroy();
729
- if (show) {
730
- this.viewRef = this.service.addTemplate(this.template);
731
- }
732
- }
733
- ngOnDestroy() {
734
- this.viewRef?.destroy();
735
- }
736
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPortal, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
737
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownPortal, isStandalone: true, selector: "ng-template[tuiDropdown]", inputs: { tuiDropdown: "tuiDropdown" }, ngImport: i0 }); }
738
- }
739
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPortal, decorators: [{
740
- type: Directive,
741
- args: [{
742
- standalone: true,
743
- selector: 'ng-template[tuiDropdown]',
744
- }]
745
- }], propDecorators: { tuiDropdown: [{
746
- type: Input
747
- }] } });
748
-
749
713
  class TuiDropdownPositionSided extends TuiPositionAccessor {
750
714
  constructor() {
751
715
  super(...arguments);
@@ -774,7 +738,7 @@ class TuiDropdownPositionSided extends TuiPositionAccessor {
774
738
  bottom: viewport.bottom - hostRect.top,
775
739
  };
776
740
  const position = {
777
- top: hostRect.bottom - height + this.tuiDropdownSidedOffset + 1,
741
+ top: hostRect.bottom - height + this.tuiDropdownSidedOffset + 1, // 1 for border
778
742
  left: hostRect.left - width - offset,
779
743
  right: hostRect.right + offset,
780
744
  bottom: hostRect.top - this.tuiDropdownSidedOffset - 1, // 1 for border
@@ -791,13 +755,12 @@ class TuiDropdownPositionSided extends TuiPositionAccessor {
791
755
  this.vertical.emitDirection(better);
792
756
  return [position[better], left];
793
757
  }
794
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPositionSided, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
795
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownPositionSided, isStandalone: true, selector: "[tuiDropdownSided]", inputs: { tuiDropdownSided: "tuiDropdownSided", tuiDropdownSidedOffset: "tuiDropdownSidedOffset" }, providers: [TuiDropdownPosition, tuiAsPositionAccessor(TuiDropdownPositionSided)], usesInheritance: true, ngImport: i0 }); }
758
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownPositionSided, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
759
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownPositionSided, isStandalone: true, selector: "[tuiDropdownSided]", inputs: { tuiDropdownSided: "tuiDropdownSided", tuiDropdownSidedOffset: "tuiDropdownSidedOffset" }, providers: [TuiDropdownPosition, tuiAsPositionAccessor(TuiDropdownPositionSided)], usesInheritance: true, ngImport: i0 }); }
796
760
  }
797
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownPositionSided, decorators: [{
761
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownPositionSided, decorators: [{
798
762
  type: Directive,
799
763
  args: [{
800
- standalone: true,
801
764
  selector: '[tuiDropdownSided]',
802
765
  providers: [TuiDropdownPosition, tuiAsPositionAccessor(TuiDropdownPositionSided)],
803
766
  }]
@@ -863,7 +826,7 @@ class TuiDropdownSelection extends TuiDriver {
863
826
  return this.el.querySelector('tui-textfield .t-ghost') || this.el;
864
827
  }
865
828
  getRange() {
866
- const active = tuiGetNativeFocused(this.doc);
829
+ const active = tuiGetFocused(this.doc);
867
830
  const selection = this.doc.getSelection();
868
831
  const range = active && tuiIsTextfield(active) && this.el.contains(active)
869
832
  ? this.veryVerySadInputFix(active)
@@ -929,23 +892,22 @@ class TuiDropdownSelection extends TuiDriver {
929
892
  this.ghost = ghost;
930
893
  return ghost;
931
894
  }
932
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownSelection, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
933
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownSelection, isStandalone: true, selector: "[tuiDropdownSelection]", inputs: { position: ["tuiDropdownSelectionPosition", "position"], tuiDropdownSelection: "tuiDropdownSelection" }, providers: [
895
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownSelection, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
896
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownSelection, isStandalone: true, selector: "[tuiDropdownSelection]", inputs: { position: ["tuiDropdownSelectionPosition", "position"], tuiDropdownSelection: "tuiDropdownSelection" }, providers: [
934
897
  tuiAsDriver(TuiDropdownSelection),
935
898
  tuiAsRectAccessor(TuiDropdownSelection),
936
899
  ], usesInheritance: true, ngImport: i0 }); }
937
900
  }
938
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownSelection, decorators: [{
901
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownSelection, decorators: [{
939
902
  type: Directive,
940
903
  args: [{
941
- standalone: true,
942
904
  selector: '[tuiDropdownSelection]',
943
905
  providers: [
944
906
  tuiAsDriver(TuiDropdownSelection),
945
907
  tuiAsRectAccessor(TuiDropdownSelection),
946
908
  ],
947
909
  }]
948
- }], ctorParameters: function () { return []; }, propDecorators: { position: [{
910
+ }], ctorParameters: () => [], propDecorators: { position: [{
949
911
  type: Input,
950
912
  args: ['tuiDropdownSelectionPosition']
951
913
  }], tuiDropdownSelection: [{
@@ -959,9 +921,9 @@ const TuiDropdown = [
959
921
  TuiDropdownComponent,
960
922
  TuiDropdownOpen,
961
923
  TuiDropdownOpenLegacy,
962
- TuiDropdownPortal,
963
924
  TuiDropdownManual,
964
925
  TuiDropdownHover,
926
+ TuiDropdownContent,
965
927
  TuiDropdownContext,
966
928
  TuiDropdownPosition,
967
929
  TuiDropdownPositionSided,
@@ -987,16 +949,15 @@ class TuiDropdownFixed {
987
949
  const override = tuiOverrideOptions$1({ limitWidth: 'fixed' }, TUI_DROPDOWN_DEFAULT_OPTIONS);
988
950
  override(inject(TUI_DROPDOWN_OPTIONS, { self: true, optional: true }), null);
989
951
  }
990
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownFixed, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
991
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownFixed, isStandalone: true, providers: [tuiDropdownOptionsProvider({})], ngImport: i0 }); }
952
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownFixed, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
953
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownFixed, isStandalone: true, providers: [tuiDropdownOptionsProvider({})], ngImport: i0 }); }
992
954
  }
993
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownFixed, decorators: [{
955
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownFixed, decorators: [{
994
956
  type: Directive,
995
957
  args: [{
996
- standalone: true,
997
958
  providers: [tuiDropdownOptionsProvider({})],
998
959
  }]
999
- }], ctorParameters: function () { return []; } });
960
+ }], ctorParameters: () => [] });
1000
961
  class TuiDropdownAuto {
1001
962
  constructor() {
1002
963
  /**
@@ -1005,41 +966,20 @@ class TuiDropdownAuto {
1005
966
  */
1006
967
  inject(TUI_DROPDOWN_OPTIONS).limitWidth = 'auto';
1007
968
  }
1008
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownAuto, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1009
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownAuto, isStandalone: true, ngImport: i0 }); }
969
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownAuto, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
970
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDropdownAuto, isStandalone: true, ngImport: i0 }); }
1010
971
  }
1011
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownAuto, decorators: [{
1012
- type: Directive,
1013
- args: [{ standalone: true }]
1014
- }], ctorParameters: function () { return []; } });
1015
-
1016
- /**
1017
- * Host element for dynamically created portals, for example using {@link TuiDropdownDirective}.
1018
- */
1019
- class TuiDropdowns extends TuiPortals {
1020
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdowns, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1021
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdowns, isStandalone: true, selector: "tui-dropdowns", host: { styleAttribute: "position: absolute; width: 100%; top: 0" }, providers: [tuiAsPortal(TuiDropdownService)], usesInheritance: true, ngImport: i0, template: '<ng-container #viewContainer />', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1022
- }
1023
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdowns, decorators: [{
1024
- type: Component,
1025
- args: [{
1026
- standalone: true,
1027
- selector: 'tui-dropdowns',
1028
- template: '<ng-container #viewContainer />',
1029
- changeDetection: ChangeDetectionStrategy.OnPush,
1030
- providers: [tuiAsPortal(TuiDropdownService)],
1031
- host: { style: 'position: absolute; width: 100%; top: 0' },
1032
- }]
1033
- }] });
972
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDropdownAuto, decorators: [{
973
+ type: Directive
974
+ }], ctorParameters: () => [] });
1034
975
 
1035
976
  class TuiWithDropdownOpen {
1036
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithDropdownOpen, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1037
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiWithDropdownOpen, isStandalone: true, hostDirectives: [{ directive: TuiDropdownOpen, inputs: ["tuiDropdownOpen", "open", "tuiDropdownEnabled", "tuiDropdownEnabled"], outputs: ["tuiDropdownOpenChange", "openChange"] }], ngImport: i0 }); }
977
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiWithDropdownOpen, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
978
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiWithDropdownOpen, isStandalone: true, hostDirectives: [{ directive: TuiDropdownOpen, inputs: ["tuiDropdownOpen", "open", "tuiDropdownEnabled", "tuiDropdownEnabled"], outputs: ["tuiDropdownOpenChange", "openChange"] }], ngImport: i0 }); }
1038
979
  }
1039
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithDropdownOpen, decorators: [{
980
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiWithDropdownOpen, decorators: [{
1040
981
  type: Directive,
1041
982
  args: [{
1042
- standalone: true,
1043
983
  hostDirectives: [
1044
984
  {
1045
985
  directive: TuiDropdownOpen,
@@ -1054,5 +994,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1054
994
  * Generated bundle index. Do not edit.
1055
995
  */
1056
996
 
1057
- export { TUI_DROPDOWN_COMPONENT, TUI_DROPDOWN_CONTEXT, TUI_DROPDOWN_DEFAULT_OPTIONS, TUI_DROPDOWN_HOVER_DEFAULT_OPTIONS, TUI_DROPDOWN_HOVER_OPTIONS, TUI_DROPDOWN_OPTIONS, TuiDropdown, TuiDropdownAuto, TuiDropdownComponent, TuiDropdownContext, TuiDropdownDirective, TuiDropdownDriver, TuiDropdownDriverDirective, TuiDropdownFixed, TuiDropdownHover, TuiDropdownManual, TuiDropdownOpen, TuiDropdownOpenLegacy, TuiDropdownOptionsDirective, TuiDropdownPortal, TuiDropdownPosition, TuiDropdownPositionSided, TuiDropdownSelection, TuiDropdownService, TuiDropdowns, TuiWithDropdownOpen, tuiDropdown, tuiDropdownEnabled, tuiDropdownHoverOptionsProvider, tuiDropdownOpen, tuiDropdownOptionsProvider };
997
+ export { TUI_DROPDOWN_COMPONENT, TUI_DROPDOWN_CONTEXT, TUI_DROPDOWN_DEFAULT_OPTIONS, TUI_DROPDOWN_HOVER_DEFAULT_OPTIONS, TUI_DROPDOWN_HOVER_OPTIONS, TUI_DROPDOWN_OPTIONS, TuiDropdown, TuiDropdownAuto, TuiDropdownComponent, TuiDropdownContent, TuiDropdownContext, TuiDropdownDirective, TuiDropdownDriver, TuiDropdownDriverDirective, TuiDropdownFixed, TuiDropdownHover, TuiDropdownManual, TuiDropdownOpen, TuiDropdownOpenLegacy, TuiDropdownOptionsDirective, TuiDropdownPosition, TuiDropdownPositionSided, TuiDropdownSelection, TuiWithDropdownOpen, tuiDropdown, tuiDropdownEnabled, tuiDropdownHoverOptionsProvider, tuiDropdownOpen, tuiDropdownOptionsProvider };
1058
998
  //# sourceMappingURL=taiga-ui-core-directives-dropdown.mjs.map