@taiga-ui/core 4.68.0 → 5.0.0-canary.0dce162

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 (659) hide show
  1. package/README.md +1 -1
  2. package/classes/accessors.d.ts +2 -2
  3. package/classes/driver.d.ts +1 -1
  4. package/components/button/button.directive.d.ts +2 -3
  5. package/components/button/button.options.d.ts +1 -1
  6. package/components/calendar/calendar-sheet.component.d.ts +2 -7
  7. package/components/calendar/calendar-sheet.options.d.ts +1 -3
  8. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +2 -2
  9. package/components/calendar/calendar-spin.component.d.ts +1 -0
  10. package/components/calendar/calendar-year.component.d.ts +1 -1
  11. package/components/calendar/calendar.options.d.ts +9 -0
  12. package/components/calendar/index.d.ts +3 -0
  13. package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +1 -1
  14. package/components/cell/cell.directive.d.ts +9 -0
  15. package/components/cell/cell.options.d.ts +6 -0
  16. package/components/cell/index.d.ts +2 -0
  17. package/components/data-list/data-list.component.d.ts +8 -12
  18. package/components/data-list/data-list.d.ts +3 -4
  19. package/components/data-list/data-list.tokens.d.ts +1 -20
  20. package/components/data-list/index.d.ts +4 -4
  21. package/components/data-list/opt-group.directive.d.ts +2 -2
  22. package/components/data-list/option-content.directive.d.ts +14 -0
  23. package/components/data-list/option-with-content.directive.d.ts +9 -0
  24. package/components/data-list/option-with-value.directive.d.ts +10 -0
  25. package/components/data-list/option.directive.d.ts +15 -0
  26. package/components/error/error.component.d.ts +6 -8
  27. package/components/error/error.d.ts +4 -0
  28. package/components/error/error.directive.d.ts +19 -0
  29. package/components/error/error.pipe.d.ts +10 -0
  30. package/components/error/index.d.ts +3 -0
  31. package/components/expand/expand.component.d.ts +9 -28
  32. package/components/expand/index.d.ts +0 -2
  33. package/components/icon/icon.component.d.ts +6 -11
  34. package/components/index.d.ts +3 -3
  35. package/components/input/index.d.ts +2 -0
  36. package/components/input/input.d.ts +5 -0
  37. package/components/input/input.directive.d.ts +29 -0
  38. package/components/label/label.directive.d.ts +1 -1
  39. package/components/link/index.d.ts +0 -1
  40. package/components/link/link.directive.d.ts +8 -6
  41. package/components/loader/loader.component.d.ts +7 -7
  42. package/components/loader/loader.options.d.ts +1 -3
  43. package/components/notification/index.d.ts +3 -0
  44. package/components/notification/notification.component.d.ts +14 -0
  45. package/components/notification/notification.d.ts +3 -0
  46. package/components/notification/notification.directive.d.ts +7 -12
  47. package/components/notification/notification.options.d.ts +10 -7
  48. package/components/notification/notification.service.d.ts +17 -0
  49. package/components/root/root.component.d.ts +4 -7
  50. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  51. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  52. package/components/scrollbar/scrollbar.component.d.ts +1 -5
  53. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  54. package/components/scrollbar/scrollbar.options.d.ts +1 -1
  55. package/components/spin-button/spin-button.component.d.ts +9 -10
  56. package/components/textfield/index.d.ts +1 -4
  57. package/components/textfield/textfield-content.directive.d.ts +3 -2
  58. package/components/textfield/textfield-icon.d.ts +3 -3
  59. package/components/textfield/textfield-multi/textfield-item.component.d.ts +3 -2
  60. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +9 -15
  61. package/components/textfield/textfield.component.d.ts +20 -35
  62. package/components/textfield/textfield.d.ts +2 -4
  63. package/components/textfield/textfield.options.d.ts +8 -11
  64. package/{directives → components}/title/title.directive.d.ts +2 -3
  65. package/directives/appearance/appearance.directive.d.ts +5 -13
  66. package/directives/appearance/appearance.options.d.ts +1 -2
  67. package/directives/button-x/button-x.directive.d.ts +6 -0
  68. package/directives/button-x/index.d.ts +1 -0
  69. package/directives/date-format/date-format.directive.d.ts +3 -7
  70. package/directives/group/group.directive.d.ts +7 -7
  71. package/directives/group/group.options.d.ts +1 -3
  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 -5
  76. package/directives/items-handlers/items-handlers.directive.d.ts +5 -9
  77. package/directives/items-handlers/items-handlers.tokens.d.ts +4 -4
  78. package/directives/number-format/number-format.directive.d.ts +3 -7
  79. package/fesm2022/taiga-ui-core-classes.mjs +9 -11
  80. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-core-components-button.mjs +14 -21
  82. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-core-components-calendar.mjs +139 -52
  84. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-core-components-cell.mjs +45 -0
  86. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -0
  87. package/fesm2022/taiga-ui-core-components-data-list.mjs +108 -270
  88. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-components-error.mjs +108 -26
  90. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-components-expand.mjs +34 -132
  92. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-core-components-icon.mjs +21 -43
  94. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-core-components-input.mjs +100 -0
  96. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -0
  97. package/fesm2022/taiga-ui-core-components-label.mjs +15 -18
  98. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-core-components-link.mjs +17 -36
  100. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-core-components-loader.mjs +20 -40
  102. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-core-components-notification.mjs +106 -66
  104. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-core-components-root.mjs +23 -60
  106. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +76 -96
  108. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-core-components-spin-button.mjs +18 -31
  110. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-core-components-textfield.mjs +140 -439
  112. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  113. package/fesm2022/taiga-ui-core-components-title.mjs +39 -0
  114. package/fesm2022/taiga-ui-core-components-title.mjs.map +1 -0
  115. package/fesm2022/taiga-ui-core-components.mjs +3 -3
  116. package/fesm2022/taiga-ui-core-directives-appearance.mjs +36 -75
  117. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-core-directives-button-x.mjs +51 -0
  119. package/fesm2022/taiga-ui-core-directives-button-x.mjs.map +1 -0
  120. package/fesm2022/taiga-ui-core-directives-date-format.mjs +26 -20
  121. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-core-directives-group.mjs +27 -40
  123. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  124. package/fesm2022/taiga-ui-core-directives-icons.mjs +37 -45
  125. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +21 -51
  127. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-core-directives-number-format.mjs +32 -20
  129. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-core-directives.mjs +1 -5
  131. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -15
  133. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-core-pipes.mjs +0 -8
  135. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-core-portals-alert.mjs +73 -0
  137. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  138. package/fesm2022/taiga-ui-core-portals-dialog.mjs +157 -0
  139. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  140. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +252 -429
  141. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  142. package/fesm2022/taiga-ui-core-portals-hint.mjs +544 -0
  143. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  144. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  145. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  146. package/fesm2022/taiga-ui-core-portals-popup.mjs +52 -0
  147. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  148. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  149. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  150. package/fesm2022/taiga-ui-core-services.mjs +18 -84
  151. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  152. package/fesm2022/taiga-ui-core-tokens.mjs +65 -106
  153. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  154. package/fesm2022/taiga-ui-core-utils-dom.mjs.map +1 -1
  155. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -22
  156. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  157. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +55 -19
  158. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  159. package/fesm2022/taiga-ui-core.mjs +1 -1
  160. package/index.d.ts +1 -1
  161. package/package.json +93 -214
  162. package/pipes/format-number/format-number.pipe.d.ts +6 -4
  163. package/pipes/index.d.ts +0 -8
  164. package/portals/alert/alert.directive.d.ts +11 -0
  165. package/portals/alert/alert.service.d.ts +12 -0
  166. package/portals/alert/index.d.ts +2 -0
  167. package/portals/dialog/dialog.component.d.ts +14 -0
  168. package/portals/dialog/dialog.directive.d.ts +8 -0
  169. package/{components → portals}/dialog/dialog.factory.d.ts +1 -1
  170. package/portals/dialog/dialog.options.d.ts +25 -0
  171. package/{components/dialog/dialog-close.service.d.ts → portals/dialog/dialog.providers.d.ts} +2 -0
  172. package/portals/dialog/dialog.service.d.ts +10 -0
  173. package/portals/dialog/index.d.ts +6 -0
  174. package/portals/dropdown/dropdown-close.directive.d.ts +15 -0
  175. package/portals/dropdown/dropdown-content.directive.d.ts +9 -0
  176. package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -1
  177. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  178. package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +1 -3
  179. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  180. package/portals/dropdown/dropdown-open.directive.d.ts +29 -0
  181. package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +1 -5
  182. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  183. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +6 -6
  184. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  185. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  186. package/{directives → portals}/dropdown/dropdown.d.ts +2 -3
  187. package/{directives → portals}/dropdown/dropdown.directive.d.ts +6 -8
  188. package/{directives → portals}/dropdown/index.d.ts +2 -4
  189. package/{directives → portals}/hint/hint-describe.directive.d.ts +4 -6
  190. package/{directives → portals}/hint/hint-host.directive.d.ts +2 -2
  191. package/{directives → portals}/hint/hint-hover.directive.d.ts +3 -4
  192. package/{directives → portals}/hint/hint-manual.directive.d.ts +2 -2
  193. package/portals/hint/hint-options.directive.d.ts +17 -0
  194. package/{directives → portals}/hint/hint-overflow.directive.d.ts +2 -2
  195. package/{directives → portals}/hint/hint-position.directive.d.ts +7 -8
  196. package/{directives → portals}/hint/hint-unstyled.component.d.ts +2 -7
  197. package/portals/hint/hint.component.d.ts +29 -0
  198. package/{directives → portals}/hint/hint.d.ts +1 -2
  199. package/portals/hint/hint.directive.d.ts +24 -0
  200. package/{directives → portals}/hint/index.d.ts +0 -2
  201. package/portals/index.d.ts +6 -0
  202. package/portals/modal/index.d.ts +2 -0
  203. package/portals/modal/modal.component.d.ts +17 -0
  204. package/portals/modal/modal.service.d.ts +13 -0
  205. package/portals/popup/popup.directive.d.ts +12 -0
  206. package/{directives → portals}/popup/popup.service.d.ts +1 -1
  207. package/{directives → portals}/popup/popups.component.d.ts +2 -2
  208. package/services/index.d.ts +0 -3
  209. package/styles/components/appearance.less +7 -1
  210. package/styles/components/button.less +13 -25
  211. package/styles/components/group.less +1 -1
  212. package/styles/components/icon.less +43 -22
  213. package/styles/components/icons.less +19 -14
  214. package/styles/components/label.less +4 -13
  215. package/styles/components/link.less +11 -28
  216. package/styles/components/notification.less +33 -67
  217. package/styles/components/textfield.less +129 -214
  218. package/styles/components/title.less +13 -13
  219. package/styles/mixins/appearance.less +11 -26
  220. package/styles/mixins/appearance.scss +9 -24
  221. package/styles/mixins/date-picker.less +1 -1
  222. package/styles/mixins/mixins.less +1 -7
  223. package/styles/mixins/mixins.scss +1 -7
  224. package/styles/mixins/picker.less +1 -1
  225. package/styles/mixins/picker.scss +1 -1
  226. package/styles/mixins/slider.less +31 -30
  227. package/styles/mixins/slider.scss +28 -32
  228. package/styles/taiga-ui-local.less +0 -1
  229. package/styles/taiga-ui-local.scss +0 -1
  230. package/styles/taiga-ui-theme.less +0 -1
  231. package/styles/theme/appearance/action.less +0 -14
  232. package/styles/theme/appearance/floating.less +5 -0
  233. package/styles/theme/appearance/outline.less +9 -18
  234. package/styles/theme/appearance/primary.less +2 -4
  235. package/styles/theme/appearance/secondary.less +6 -14
  236. package/styles/theme/appearance/status.less +0 -4
  237. package/styles/theme/appearance/table.less +36 -35
  238. package/styles/theme/appearance/textfield.less +27 -28
  239. package/styles/theme/appearance.less +0 -1
  240. package/styles/theme/variables.less +16 -19
  241. package/styles/variables/media.less +13 -18
  242. package/styles/variables/media.scss +13 -13
  243. package/tokens/breakpoint.d.ts +4 -0
  244. package/tokens/common-icons.d.ts +3 -3
  245. package/tokens/date-format.d.ts +2 -3
  246. package/tokens/i18n.d.ts +8 -8
  247. package/tokens/icon-resolver.d.ts +1 -5
  248. package/tokens/icons.d.ts +0 -4
  249. package/tokens/index.d.ts +2 -5
  250. package/tokens/number-format.d.ts +2 -3
  251. package/tokens/validation-errors.d.ts +4 -0
  252. package/types/direction.d.ts +1 -1
  253. package/types/index.d.ts +0 -3
  254. package/types/point.d.ts +1 -1
  255. package/types/size.d.ts +0 -11
  256. package/utils/format/index.d.ts +0 -1
  257. package/utils/miscellaneous/get-duration.d.ts +2 -0
  258. package/utils/miscellaneous/index.d.ts +2 -1
  259. package/utils/miscellaneous/provide-taiga.d.ts +13 -0
  260. package/animations/animations.d.ts +0 -109
  261. package/animations/index.d.ts +0 -1
  262. package/components/alert/alert.component.d.ts +0 -15
  263. package/components/alert/alert.directive.d.ts +0 -7
  264. package/components/alert/alert.interfaces.d.ts +0 -12
  265. package/components/alert/alert.service.d.ts +0 -7
  266. package/components/alert/alert.tokens.d.ts +0 -12
  267. package/components/alert/alerts.component.d.ts +0 -12
  268. package/components/alert/index.d.ts +0 -6
  269. package/components/data-list/data-list.directive.d.ts +0 -7
  270. package/components/data-list/option/option-content.d.ts +0 -16
  271. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  272. package/components/data-list/option/option.directive.d.ts +0 -27
  273. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  274. package/components/dialog/dialog.component.d.ts +0 -20
  275. package/components/dialog/dialog.directive.d.ts +0 -7
  276. package/components/dialog/dialog.interfaces.d.ts +0 -34
  277. package/components/dialog/dialog.service.d.ts +0 -7
  278. package/components/dialog/dialog.tokens.d.ts +0 -15
  279. package/components/dialog/dialogs.component.d.ts +0 -8
  280. package/components/dialog/index.d.ts +0 -8
  281. package/components/expand/expand-content.directive.d.ts +0 -8
  282. package/components/expand/expand.d.ts +0 -6
  283. package/components/fullscreen/fullscreen.component.d.ts +0 -14
  284. package/components/fullscreen/index.d.ts +0 -1
  285. package/components/link/link.options.d.ts +0 -12
  286. package/components/textfield/select.directive.d.ts +0 -19
  287. package/components/textfield/textfield-dropdown.directive.d.ts +0 -16
  288. package/components/textfield/textfield.directive.d.ts +0 -38
  289. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  290. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  291. package/directives/dropdown/dropdown-portal.directive.d.ts +0 -14
  292. package/directives/dropdown/dropdown.service.d.ts +0 -6
  293. package/directives/dropdown/dropdowns.component.d.ts +0 -9
  294. package/directives/hint/hint-options.directive.d.ts +0 -36
  295. package/directives/hint/hint.component.d.ts +0 -30
  296. package/directives/hint/hint.directive.d.ts +0 -26
  297. package/directives/hint/hint.service.d.ts +0 -13
  298. package/directives/hint/hints.component.d.ts +0 -12
  299. package/directives/popup/popup.directive.d.ts +0 -11
  300. package/directives/surface/index.d.ts +0 -1
  301. package/directives/surface/surface.directive.d.ts +0 -8
  302. package/esm2022/animations/animations.mjs +0 -363
  303. package/esm2022/animations/index.mjs +0 -2
  304. package/esm2022/animations/taiga-ui-core-animations.mjs +0 -5
  305. package/esm2022/classes/accessors.mjs +0 -31
  306. package/esm2022/classes/driver.mjs +0 -36
  307. package/esm2022/classes/index.mjs +0 -4
  308. package/esm2022/classes/taiga-ui-core-classes.mjs +0 -5
  309. package/esm2022/classes/vehicle.mjs +0 -7
  310. package/esm2022/components/alert/alert.component.mjs +0 -43
  311. package/esm2022/components/alert/alert.directive.mjs +0 -21
  312. package/esm2022/components/alert/alert.interfaces.mjs +0 -2
  313. package/esm2022/components/alert/alert.service.mjs +0 -18
  314. package/esm2022/components/alert/alert.tokens.mjs +0 -51
  315. package/esm2022/components/alert/alerts.component.mjs +0 -33
  316. package/esm2022/components/alert/index.mjs +0 -6
  317. package/esm2022/components/alert/taiga-ui-core-components-alert.mjs +0 -5
  318. package/esm2022/components/button/button.directive.mjs +0 -43
  319. package/esm2022/components/button/button.options.mjs +0 -7
  320. package/esm2022/components/button/index.mjs +0 -3
  321. package/esm2022/components/button/taiga-ui-core-components-button.mjs +0 -5
  322. package/esm2022/components/calendar/calendar-sheet.component.mjs +0 -168
  323. package/esm2022/components/calendar/calendar-sheet.options.mjs +0 -12
  324. package/esm2022/components/calendar/calendar-spin.component.mjs +0 -53
  325. package/esm2022/components/calendar/calendar-year.component.mjs +0 -128
  326. package/esm2022/components/calendar/calendar.component.mjs +0 -147
  327. package/esm2022/components/calendar/index.mjs +0 -6
  328. package/esm2022/components/calendar/taiga-ui-core-components-calendar.mjs +0 -5
  329. package/esm2022/components/data-list/data-list.component.mjs +0 -139
  330. package/esm2022/components/data-list/data-list.directive.mjs +0 -19
  331. package/esm2022/components/data-list/data-list.mjs +0 -14
  332. package/esm2022/components/data-list/data-list.tokens.mjs +0 -18
  333. package/esm2022/components/data-list/index.mjs +0 -9
  334. package/esm2022/components/data-list/opt-group.directive.mjs +0 -21
  335. package/esm2022/components/data-list/option/option-content.mjs +0 -36
  336. package/esm2022/components/data-list/option/option-legacy.component.mjs +0 -90
  337. package/esm2022/components/data-list/option/option.directive.mjs +0 -109
  338. package/esm2022/components/data-list/taiga-ui-core-components-data-list.mjs +0 -5
  339. package/esm2022/components/dialog/active-zone-adapter.directive.mjs +0 -37
  340. package/esm2022/components/dialog/dialog-close.service.mjs +0 -41
  341. package/esm2022/components/dialog/dialog.component.mjs +0 -63
  342. package/esm2022/components/dialog/dialog.directive.mjs +0 -21
  343. package/esm2022/components/dialog/dialog.factory.mjs +0 -15
  344. package/esm2022/components/dialog/dialog.interfaces.mjs +0 -2
  345. package/esm2022/components/dialog/dialog.service.mjs +0 -18
  346. package/esm2022/components/dialog/dialog.tokens.mjs +0 -33
  347. package/esm2022/components/dialog/dialogs.component.mjs +0 -31
  348. package/esm2022/components/dialog/index.mjs +0 -8
  349. package/esm2022/components/dialog/taiga-ui-core-components-dialog.mjs +0 -5
  350. package/esm2022/components/error/error.component.mjs +0 -34
  351. package/esm2022/components/error/index.mjs +0 -2
  352. package/esm2022/components/error/taiga-ui-core-components-error.mjs +0 -5
  353. package/esm2022/components/expand/expand-content.directive.mjs +0 -18
  354. package/esm2022/components/expand/expand.component.mjs +0 -124
  355. package/esm2022/components/expand/expand.mjs +0 -7
  356. package/esm2022/components/expand/index.mjs +0 -4
  357. package/esm2022/components/expand/taiga-ui-core-components-expand.mjs +0 -5
  358. package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -71
  359. package/esm2022/components/fullscreen/index.mjs +0 -2
  360. package/esm2022/components/fullscreen/taiga-ui-core-components-fullscreen.mjs +0 -5
  361. package/esm2022/components/icon/icon.component.mjs +0 -44
  362. package/esm2022/components/icon/icon.pipe.mjs +0 -19
  363. package/esm2022/components/icon/index.mjs +0 -3
  364. package/esm2022/components/icon/taiga-ui-core-components-icon.mjs +0 -5
  365. package/esm2022/components/index.mjs +0 -18
  366. package/esm2022/components/label/index.mjs +0 -2
  367. package/esm2022/components/label/label.directive.mjs +0 -41
  368. package/esm2022/components/label/taiga-ui-core-components-label.mjs +0 -5
  369. package/esm2022/components/link/index.mjs +0 -3
  370. package/esm2022/components/link/link.directive.mjs +0 -47
  371. package/esm2022/components/link/link.options.mjs +0 -13
  372. package/esm2022/components/link/taiga-ui-core-components-link.mjs +0 -5
  373. package/esm2022/components/loader/index.mjs +0 -3
  374. package/esm2022/components/loader/loader.component.mjs +0 -46
  375. package/esm2022/components/loader/loader.options.mjs +0 -18
  376. package/esm2022/components/loader/taiga-ui-core-components-loader.mjs +0 -5
  377. package/esm2022/components/notification/index.mjs +0 -3
  378. package/esm2022/components/notification/notification.directive.mjs +0 -81
  379. package/esm2022/components/notification/notification.options.mjs +0 -23
  380. package/esm2022/components/notification/taiga-ui-core-components-notification.mjs +0 -5
  381. package/esm2022/components/root/index.mjs +0 -2
  382. package/esm2022/components/root/root.component.mjs +0 -87
  383. package/esm2022/components/root/taiga-ui-core-components-root.mjs +0 -5
  384. package/esm2022/components/scrollbar/index.mjs +0 -9
  385. package/esm2022/components/scrollbar/scroll-controls.component.mjs +0 -32
  386. package/esm2022/components/scrollbar/scroll-into-view.directive.mjs +0 -43
  387. package/esm2022/components/scrollbar/scroll-ref.directive.mjs +0 -19
  388. package/esm2022/components/scrollbar/scrollable.directive.mjs +0 -26
  389. package/esm2022/components/scrollbar/scrollbar.component.mjs +0 -72
  390. package/esm2022/components/scrollbar/scrollbar.directive.mjs +0 -93
  391. package/esm2022/components/scrollbar/scrollbar.options.mjs +0 -6
  392. package/esm2022/components/scrollbar/scrollbar.service.mjs +0 -46
  393. package/esm2022/components/scrollbar/taiga-ui-core-components-scrollbar.mjs +0 -5
  394. package/esm2022/components/spin-button/index.mjs +0 -2
  395. package/esm2022/components/spin-button/spin-button.component.mjs +0 -51
  396. package/esm2022/components/spin-button/taiga-ui-core-components-spin-button.mjs +0 -5
  397. package/esm2022/components/taiga-ui-core-components.mjs +0 -5
  398. package/esm2022/components/textfield/index.mjs +0 -16
  399. package/esm2022/components/textfield/select-like.directive.mjs +0 -44
  400. package/esm2022/components/textfield/select.directive.mjs +0 -64
  401. package/esm2022/components/textfield/taiga-ui-core-components-textfield.mjs +0 -5
  402. package/esm2022/components/textfield/textfield-accessor.mjs +0 -7
  403. package/esm2022/components/textfield/textfield-auxiliary.mjs +0 -7
  404. package/esm2022/components/textfield/textfield-content.directive.mjs +0 -22
  405. package/esm2022/components/textfield/textfield-dropdown.directive.mjs +0 -43
  406. package/esm2022/components/textfield/textfield-icon.mjs +0 -10
  407. package/esm2022/components/textfield/textfield-multi/textfield-item.component.mjs +0 -37
  408. package/esm2022/components/textfield/textfield-multi/textfield-multi.component.mjs +0 -145
  409. package/esm2022/components/textfield/textfield.component.mjs +0 -183
  410. package/esm2022/components/textfield/textfield.directive.mjs +0 -134
  411. package/esm2022/components/textfield/textfield.mjs +0 -19
  412. package/esm2022/components/textfield/textfield.options.mjs +0 -63
  413. package/esm2022/components/textfield/with-native-picker.directive.mjs +0 -24
  414. package/esm2022/directives/appearance/appearance.bindings.mjs +0 -15
  415. package/esm2022/directives/appearance/appearance.directive.mjs +0 -79
  416. package/esm2022/directives/appearance/appearance.options.mjs +0 -12
  417. package/esm2022/directives/appearance/index.mjs +0 -5
  418. package/esm2022/directives/appearance/taiga-ui-core-directives-appearance.mjs +0 -5
  419. package/esm2022/directives/appearance/with-appearance.mjs +0 -27
  420. package/esm2022/directives/date-format/date-format.directive.mjs +0 -31
  421. package/esm2022/directives/date-format/index.mjs +0 -2
  422. package/esm2022/directives/date-format/taiga-ui-core-directives-date-format.mjs +0 -5
  423. package/esm2022/directives/dropdown/dropdown-context.directive.mjs +0 -76
  424. package/esm2022/directives/dropdown/dropdown-hover.directive.mjs +0 -70
  425. package/esm2022/directives/dropdown/dropdown-hover.options.mjs +0 -17
  426. package/esm2022/directives/dropdown/dropdown-limit-width.mjs +0 -37
  427. package/esm2022/directives/dropdown/dropdown-manual.directive.mjs +0 -27
  428. package/esm2022/directives/dropdown/dropdown-open-legacy.directive.mjs +0 -33
  429. package/esm2022/directives/dropdown/dropdown-open.directive.mjs +0 -169
  430. package/esm2022/directives/dropdown/dropdown-options.directive.mjs +0 -73
  431. package/esm2022/directives/dropdown/dropdown-portal.directive.mjs +0 -34
  432. package/esm2022/directives/dropdown/dropdown-position-sided.directive.mjs +0 -69
  433. package/esm2022/directives/dropdown/dropdown-position.directive.mjs +0 -88
  434. package/esm2022/directives/dropdown/dropdown-selection.directive.mjs +0 -159
  435. package/esm2022/directives/dropdown/dropdown.bindings.mjs +0 -19
  436. package/esm2022/directives/dropdown/dropdown.component.mjs +0 -92
  437. package/esm2022/directives/dropdown/dropdown.directive.mjs +0 -110
  438. package/esm2022/directives/dropdown/dropdown.driver.mjs +0 -32
  439. package/esm2022/directives/dropdown/dropdown.mjs +0 -29
  440. package/esm2022/directives/dropdown/dropdown.providers.mjs +0 -10
  441. package/esm2022/directives/dropdown/dropdown.service.mjs +0 -15
  442. package/esm2022/directives/dropdown/dropdowns.component.mjs +0 -24
  443. package/esm2022/directives/dropdown/index.mjs +0 -22
  444. package/esm2022/directives/dropdown/taiga-ui-core-directives-dropdown.mjs +0 -5
  445. package/esm2022/directives/dropdown/with-dropdown-open.directive.mjs +0 -23
  446. package/esm2022/directives/group/group.directive.mjs +0 -53
  447. package/esm2022/directives/group/group.options.mjs +0 -15
  448. package/esm2022/directives/group/index.mjs +0 -3
  449. package/esm2022/directives/group/taiga-ui-core-directives-group.mjs +0 -5
  450. package/esm2022/directives/hint/hint-describe.directive.mjs +0 -50
  451. package/esm2022/directives/hint/hint-driver.directive.mjs +0 -19
  452. package/esm2022/directives/hint/hint-host.directive.mjs +0 -27
  453. package/esm2022/directives/hint/hint-hover.directive.mjs +0 -59
  454. package/esm2022/directives/hint/hint-manual.directive.mjs +0 -33
  455. package/esm2022/directives/hint/hint-options.directive.mjs +0 -86
  456. package/esm2022/directives/hint/hint-overflow.directive.mjs +0 -38
  457. package/esm2022/directives/hint/hint-pointer.directive.mjs +0 -33
  458. package/esm2022/directives/hint/hint-position.directive.mjs +0 -115
  459. package/esm2022/directives/hint/hint-unstyled.component.mjs +0 -39
  460. package/esm2022/directives/hint/hint.component.mjs +0 -127
  461. package/esm2022/directives/hint/hint.directive.mjs +0 -99
  462. package/esm2022/directives/hint/hint.mjs +0 -27
  463. package/esm2022/directives/hint/hint.providers.mjs +0 -9
  464. package/esm2022/directives/hint/hint.service.mjs +0 -29
  465. package/esm2022/directives/hint/hints.component.mjs +0 -34
  466. package/esm2022/directives/hint/index.mjs +0 -17
  467. package/esm2022/directives/hint/taiga-ui-core-directives-hint.mjs +0 -5
  468. package/esm2022/directives/icons/icons.directive.mjs +0 -66
  469. package/esm2022/directives/icons/index.mjs +0 -3
  470. package/esm2022/directives/icons/taiga-ui-core-directives-icons.mjs +0 -5
  471. package/esm2022/directives/icons/with-icons.mjs +0 -22
  472. package/esm2022/directives/index.mjs +0 -12
  473. package/esm2022/directives/items-handlers/index.mjs +0 -4
  474. package/esm2022/directives/items-handlers/items-handlers.directive.mjs +0 -63
  475. package/esm2022/directives/items-handlers/items-handlers.tokens.mjs +0 -27
  476. package/esm2022/directives/items-handlers/items-handlers.validator.mjs +0 -32
  477. package/esm2022/directives/items-handlers/taiga-ui-core-directives-items-handlers.mjs +0 -5
  478. package/esm2022/directives/number-format/index.mjs +0 -2
  479. package/esm2022/directives/number-format/number-format.directive.mjs +0 -31
  480. package/esm2022/directives/number-format/taiga-ui-core-directives-number-format.mjs +0 -5
  481. package/esm2022/directives/popup/index.mjs +0 -4
  482. package/esm2022/directives/popup/popup.directive.mjs +0 -31
  483. package/esm2022/directives/popup/popup.service.mjs +0 -15
  484. package/esm2022/directives/popup/popups.component.mjs +0 -20
  485. package/esm2022/directives/popup/taiga-ui-core-directives-popup.mjs +0 -5
  486. package/esm2022/directives/surface/index.mjs +0 -2
  487. package/esm2022/directives/surface/surface.directive.mjs +0 -44
  488. package/esm2022/directives/surface/taiga-ui-core-directives-surface.mjs +0 -5
  489. package/esm2022/directives/taiga-ui-core-directives.mjs +0 -5
  490. package/esm2022/directives/title/index.mjs +0 -2
  491. package/esm2022/directives/title/taiga-ui-core-directives-title.mjs +0 -5
  492. package/esm2022/directives/title/title.directive.mjs +0 -37
  493. package/esm2022/index.mjs +0 -9
  494. package/esm2022/pipes/auto-color/auto-color.pipe.mjs +0 -19
  495. package/esm2022/pipes/auto-color/index.mjs +0 -2
  496. package/esm2022/pipes/auto-color/taiga-ui-core-pipes-auto-color.mjs +0 -5
  497. package/esm2022/pipes/calendar-sheet/calendar-sheet.pipe.mjs +0 -54
  498. package/esm2022/pipes/calendar-sheet/index.mjs +0 -2
  499. package/esm2022/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.mjs +0 -5
  500. package/esm2022/pipes/calendar-sheet/utils.mjs +0 -36
  501. package/esm2022/pipes/fallback-src/fallback-src.pipe.mjs +0 -23
  502. package/esm2022/pipes/fallback-src/index.mjs +0 -2
  503. package/esm2022/pipes/fallback-src/taiga-ui-core-pipes-fallback-src.mjs +0 -5
  504. package/esm2022/pipes/flag/flag.pipe.mjs +0 -26
  505. package/esm2022/pipes/flag/index.mjs +0 -2
  506. package/esm2022/pipes/flag/taiga-ui-core-pipes-flag.mjs +0 -5
  507. package/esm2022/pipes/format-date/format-date.pipe.mjs +0 -22
  508. package/esm2022/pipes/format-date/index.mjs +0 -2
  509. package/esm2022/pipes/format-date/taiga-ui-core-pipes-format-date.mjs +0 -5
  510. package/esm2022/pipes/format-number/format-number.pipe.mjs +0 -36
  511. package/esm2022/pipes/format-number/index.mjs +0 -2
  512. package/esm2022/pipes/format-number/taiga-ui-core-pipes-format-number.mjs +0 -5
  513. package/esm2022/pipes/index.mjs +0 -10
  514. package/esm2022/pipes/initials/index.mjs +0 -2
  515. package/esm2022/pipes/initials/initials.pipe.mjs +0 -23
  516. package/esm2022/pipes/initials/taiga-ui-core-pipes-initials.mjs +0 -5
  517. package/esm2022/pipes/month/index.mjs +0 -2
  518. package/esm2022/pipes/month/month.pipe.mjs +0 -23
  519. package/esm2022/pipes/month/taiga-ui-core-pipes-month.mjs +0 -5
  520. package/esm2022/pipes/order-week-days/index.mjs +0 -2
  521. package/esm2022/pipes/order-week-days/order-week-days.pipe.mjs +0 -30
  522. package/esm2022/pipes/order-week-days/taiga-ui-core-pipes-order-week-days.mjs +0 -5
  523. package/esm2022/pipes/taiga-ui-core-pipes.mjs +0 -5
  524. package/esm2022/services/breakpoint.service.mjs +0 -31
  525. package/esm2022/services/dark-theme.service.mjs +0 -24
  526. package/esm2022/services/format-date.service.mjs +0 -24
  527. package/esm2022/services/index.mjs +0 -6
  528. package/esm2022/services/position.service.mjs +0 -26
  529. package/esm2022/services/taiga-ui-core-services.mjs +0 -5
  530. package/esm2022/services/visual-viewport.service.mjs +0 -29
  531. package/esm2022/taiga-ui-core.mjs +0 -5
  532. package/esm2022/tokens/animations-speed.mjs +0 -9
  533. package/esm2022/tokens/assets-path.mjs +0 -11
  534. package/esm2022/tokens/auxiliary.mjs +0 -9
  535. package/esm2022/tokens/common-icons.mjs +0 -18
  536. package/esm2022/tokens/dark-mode.mjs +0 -43
  537. package/esm2022/tokens/date-format.mjs +0 -20
  538. package/esm2022/tokens/day-type-handler.mjs +0 -8
  539. package/esm2022/tokens/first-day-of-week.mjs +0 -9
  540. package/esm2022/tokens/i18n.mjs +0 -51
  541. package/esm2022/tokens/icon-resolver.mjs +0 -44
  542. package/esm2022/tokens/icon.mjs +0 -8
  543. package/esm2022/tokens/icons.mjs +0 -21
  544. package/esm2022/tokens/index.mjs +0 -21
  545. package/esm2022/tokens/media.mjs +0 -12
  546. package/esm2022/tokens/number-format.mjs +0 -24
  547. package/esm2022/tokens/reduced-motion.mjs +0 -7
  548. package/esm2022/tokens/scroll-ref.mjs +0 -6
  549. package/esm2022/tokens/selection-stream.mjs +0 -14
  550. package/esm2022/tokens/spin-icons.mjs +0 -8
  551. package/esm2022/tokens/taiga-ui-core-tokens.mjs +0 -5
  552. package/esm2022/tokens/theme.mjs +0 -5
  553. package/esm2022/tokens/viewport.mjs +0 -35
  554. package/esm2022/types/direction.mjs +0 -2
  555. package/esm2022/types/index.mjs +0 -2
  556. package/esm2022/types/interactive-state.mjs +0 -2
  557. package/esm2022/types/orientation.mjs +0 -2
  558. package/esm2022/types/point.mjs +0 -2
  559. package/esm2022/types/portal-item.mjs +0 -2
  560. package/esm2022/types/range-state.mjs +0 -2
  561. package/esm2022/types/size.mjs +0 -13
  562. package/esm2022/types/taiga-ui-core-types.mjs +0 -5
  563. package/esm2022/types/value-content-context.mjs +0 -2
  564. package/esm2022/utils/dom/check-fixed-position.mjs +0 -9
  565. package/esm2022/utils/dom/get-viewport.mjs +0 -24
  566. package/esm2022/utils/dom/get-word-range.mjs +0 -51
  567. package/esm2022/utils/dom/index.mjs +0 -4
  568. package/esm2022/utils/dom/taiga-ui-core-utils-dom.mjs +0 -5
  569. package/esm2022/utils/format/format-number.mjs +0 -47
  570. package/esm2022/utils/format/get-fractional-part-padded.mjs +0 -16
  571. package/esm2022/utils/format/index.mjs +0 -5
  572. package/esm2022/utils/format/number-to-string-without-exp.mjs +0 -18
  573. package/esm2022/utils/format/string-hash-to-hsl.mjs +0 -21
  574. package/esm2022/utils/format/taiga-ui-core-utils-format.mjs +0 -5
  575. package/esm2022/utils/index.mjs +0 -4
  576. package/esm2022/utils/miscellaneous/font-scaling.mjs +0 -21
  577. package/esm2022/utils/miscellaneous/index.mjs +0 -7
  578. package/esm2022/utils/miscellaneous/is-editing-key.mjs +0 -18
  579. package/esm2022/utils/miscellaneous/is-obscured.mjs +0 -8
  580. package/esm2022/utils/miscellaneous/override-options.mjs +0 -11
  581. package/esm2022/utils/miscellaneous/size-bigger.mjs +0 -19
  582. package/esm2022/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.mjs +0 -5
  583. package/esm2022/utils/miscellaneous/to-animation-options.mjs +0 -16
  584. package/esm2022/utils/taiga-ui-core-utils.mjs +0 -5
  585. package/fesm2022/taiga-ui-core-animations.mjs +0 -370
  586. package/fesm2022/taiga-ui-core-animations.mjs.map +0 -1
  587. package/fesm2022/taiga-ui-core-components-alert.mjs +0 -149
  588. package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
  589. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -230
  590. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  591. package/fesm2022/taiga-ui-core-components-fullscreen.mjs +0 -77
  592. package/fesm2022/taiga-ui-core-components-fullscreen.mjs.map +0 -1
  593. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  594. package/fesm2022/taiga-ui-core-directives-hint.mjs +0 -713
  595. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  596. package/fesm2022/taiga-ui-core-directives-popup.mjs +0 -63
  597. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  598. package/fesm2022/taiga-ui-core-directives-surface.mjs +0 -50
  599. package/fesm2022/taiga-ui-core-directives-surface.mjs.map +0 -1
  600. package/fesm2022/taiga-ui-core-directives-title.mjs +0 -43
  601. package/fesm2022/taiga-ui-core-directives-title.mjs.map +0 -1
  602. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -25
  603. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  604. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -94
  605. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  606. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs +0 -29
  607. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs.map +0 -1
  608. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -32
  609. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  610. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -28
  611. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  612. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -29
  613. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  614. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -29
  615. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  616. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -36
  617. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  618. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  619. package/pipes/auto-color/index.d.ts +0 -1
  620. package/pipes/calendar-sheet/index.d.ts +0 -1
  621. package/pipes/calendar-sheet/utils.d.ts +0 -20
  622. package/pipes/fallback-src/fallback-src.pipe.d.ts +0 -9
  623. package/pipes/fallback-src/index.d.ts +0 -1
  624. package/pipes/flag/flag.pipe.d.ts +0 -14
  625. package/pipes/flag/index.d.ts +0 -1
  626. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  627. package/pipes/format-date/index.d.ts +0 -1
  628. package/pipes/initials/index.d.ts +0 -1
  629. package/pipes/initials/initials.pipe.d.ts +0 -7
  630. package/pipes/month/index.d.ts +0 -1
  631. package/pipes/month/month.pipe.d.ts +0 -10
  632. package/pipes/order-week-days/index.d.ts +0 -1
  633. package/services/breakpoint.service.d.ts +0 -16
  634. package/services/dark-theme.service.d.ts +0 -10
  635. package/services/format-date.service.d.ts +0 -8
  636. package/styles/mixins/wrapper.less +0 -64
  637. package/styles/mixins/wrapper.scss +0 -61
  638. package/styles/theme/appearance/opposite.less +0 -17
  639. package/styles/theme/wrapper.less +0 -211
  640. package/tokens/day-type-handler.d.ts +0 -7
  641. package/tokens/first-day-of-week.d.ts +0 -5
  642. package/tokens/scroll-ref.d.ts +0 -2
  643. package/tokens/spin-icons.d.ts +0 -6
  644. package/tokens/theme.d.ts +0 -2
  645. package/types/portal-item.d.ts +0 -9
  646. package/types/range-state.d.ts +0 -4
  647. package/types/value-content-context.d.ts +0 -4
  648. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  649. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  650. /package/{directives → components}/title/index.d.ts +0 -0
  651. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  652. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  653. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  654. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  655. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  656. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  657. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  658. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  659. /package/{directives → portals}/popup/index.d.ts +0 -0
@@ -1,47 +1,38 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, signal, Optional, SkipSelf, inject, Directive, Input, TemplateRef, PLATFORM_ID, computed, ElementRef, ViewContainerRef, ViewChild, ContentChild, forwardRef, ContentChildren, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
3
- import { TUI_IS_ANDROID } from '@taiga-ui/cdk/tokens';
2
+ import { InjectionToken, signal, Optional, SkipSelf, inject, input, Directive, viewChild, contentChild, forwardRef, ElementRef, computed, ViewContainerRef, contentChildren, ChangeDetectionStrategy, ViewEncapsulation, Component, TemplateRef } from '@angular/core';
3
+ import { WA_IS_ANDROID } from '@ng-web-apis/platform';
4
4
  import { tuiInjectElement, tuiValue, tuiIsElement } from '@taiga-ui/cdk/utils/dom';
5
- import { tuiProvide, tuiPx, tuiArrayToggle, tuiDirectiveBinding } from '@taiga-ui/cdk/utils/miscellaneous';
5
+ import { tuiProvide } from '@taiga-ui/cdk/utils/di';
6
6
  import { TuiItem } from '@taiga-ui/cdk/directives/item';
7
7
  import { TuiLabel } from '@taiga-ui/core/components/label';
8
- import { isPlatformBrowser, AsyncPipe, NgIf, DOCUMENT, NgFor, NgForOf } from '@angular/common';
9
- import { WA_NAVIGATOR, WA_WINDOW } from '@ng-web-apis/common';
10
- import * as i1$1 from '@taiga-ui/cdk/directives/native-validator';
11
- import { TuiNativeValidator } from '@taiga-ui/cdk/directives/native-validator';
12
- import * as i2$1 from '@taiga-ui/core/directives/appearance';
13
- import { tuiAppearance, tuiAppearanceState, tuiAppearanceMode, tuiAppearanceFocus, TuiAppearance } from '@taiga-ui/core/directives/appearance';
8
+ import * as i2 from '@taiga-ui/core/portals/dropdown';
9
+ import { TuiDropdownDirective, TuiDropdownOpen, TuiDropdownFixed, TuiWithDropdownOpen, TuiDropdownContent } from '@taiga-ui/core/portals/dropdown';
10
+ import { AsyncPipe } from '@angular/common';
14
11
  import { NgControl } from '@angular/forms';
15
- import * as i4 from '@taiga-ui/core/directives/items-handlers';
16
- import { TuiWithItemsHandlers, TUI_ITEMS_HANDLERS } from '@taiga-ui/core/directives/items-handlers';
17
- import { toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
18
12
  import { WaResizeObserver } from '@ng-web-apis/resize-observer';
19
- import { TuiControl } from '@taiga-ui/cdk/classes';
20
- import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
21
- import * as i2 from '@taiga-ui/cdk/directives/transitioned';
22
- import { TuiTransitioned } from '@taiga-ui/cdk/directives/transitioned';
23
- import { tuiQueryListChanges, tuiZonefree } from '@taiga-ui/cdk/observables';
24
- import { tuiInjectId } from '@taiga-ui/cdk/services';
25
13
  import { tuiFocusedIn } from '@taiga-ui/cdk/utils/focus';
26
- import { tuiButtonOptionsProvider, TuiButton } from '@taiga-ui/core/components/button';
14
+ import { tuiGenerateId, tuiPx, tuiArrayToggle } from '@taiga-ui/cdk/utils/miscellaneous';
15
+ import { tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
27
16
  import * as i5 from '@taiga-ui/core/components/data-list';
28
17
  import { tuiAsDataListHost, TuiWithOptionContent } from '@taiga-ui/core/components/data-list';
29
- import * as i1 from '@taiga-ui/core/directives/dropdown';
30
- import { TuiDropdownDirective, tuiDropdownOpen, TuiDropdownOpen, TuiDropdownFixed, TuiWithDropdownOpen } from '@taiga-ui/core/directives/dropdown';
18
+ import * as i1 from '@taiga-ui/core/directives/appearance';
19
+ import { TuiAppearance } from '@taiga-ui/core/directives/appearance';
20
+ import { TuiButtonX } from '@taiga-ui/core/directives/button-x';
31
21
  import * as i3 from '@taiga-ui/core/directives/icons';
32
- import { TuiWithIcons, TuiIcons } from '@taiga-ui/core/directives/icons';
33
- import { TUI_COMMON_ICONS, TUI_CLEAR_WORD, TUI_AUXILIARY, TUI_SCROLL_REF } from '@taiga-ui/core/tokens';
22
+ import { TuiWithIcons, tuiIconEnd } from '@taiga-ui/core/directives/icons';
23
+ import * as i4 from '@taiga-ui/core/directives/items-handlers';
24
+ import { TuiWithItemsHandlers, TUI_ITEMS_HANDLERS } from '@taiga-ui/core/directives/items-handlers';
25
+ import { TUI_CLEAR_WORD, TUI_AUXILIARY } from '@taiga-ui/core/tokens';
34
26
  import { PolymorpheusOutlet, injectContext, PolymorpheusComponent } from '@taiga-ui/polymorpheus';
35
- import { ReplaySubject, take, switchMap, startWith, fromEvent, filter } from 'rxjs';
36
- import { TuiScrollControls } from '@taiga-ui/core/components/scrollbar';
37
- import * as i4$1 from '@taiga-ui/core/directives';
38
- import { TUI_ITEMS_HANDLERS as TUI_ITEMS_HANDLERS$1, TuiWithItemsHandlers as TuiWithItemsHandlers$1, TuiWithAppearance } from '@taiga-ui/core/directives';
27
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
28
+ import { WA_WINDOW } from '@ng-web-apis/common';
29
+ import { TuiControl } from '@taiga-ui/cdk/classes';
30
+ import '@taiga-ui/cdk/constants';
31
+ import { tuiZonefree } from '@taiga-ui/cdk/observables';
32
+ import { TuiScrollControls, TUI_SCROLL_REF } from '@taiga-ui/core/components/scrollbar';
33
+ import { fromEvent, filter } from 'rxjs';
39
34
 
40
- const DEFAULT = {
41
- appearance: 'textfield',
42
- size: 'l',
43
- cleaner: true,
44
- };
35
+ const DEFAULT = { appearance: 'textfield', size: 'l', cleaner: true };
45
36
  const TUI_TEXTFIELD_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_TEXTFIELD_OPTIONS' : '', {
46
37
  factory: () => ({
47
38
  appearance: signal(DEFAULT.appearance),
@@ -64,42 +55,32 @@ function tuiTextfieldOptionsProvider(options) {
64
55
  class TuiTextfieldOptionsDirective {
65
56
  constructor() {
66
57
  this.options = inject(TUI_TEXTFIELD_OPTIONS, { skipSelf: true });
67
- // TODO: refactor to signal inputs after Angular update
68
- this.appearance = signal(this.options.appearance());
69
- this.size = signal(this.options.size());
70
- this.cleaner = signal(this.options.cleaner());
71
- }
72
- set tuiTextfieldAppearance(appearance) {
73
- this.appearance.set(appearance);
74
- }
75
- set tuiTextfieldSize(size) {
76
- this.size.set(size);
77
- }
78
- set tuiTextfieldCleaner(enabled) {
79
- this.cleaner.set(enabled);
58
+ this.appearance = input(this.options.appearance(), {
59
+ alias: 'tuiTextfieldAppearance',
60
+ });
61
+ this.size = input(this.options.size(), {
62
+ alias: 'tuiTextfieldSize',
63
+ transform: (size) => size || DEFAULT.size,
64
+ });
65
+ this.cleaner = input(this.options.cleaner(), {
66
+ alias: 'tuiTextfieldCleaner',
67
+ });
80
68
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldOptionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
82
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldOptionsDirective, isStandalone: true, selector: "[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]", inputs: { tuiTextfieldAppearance: "tuiTextfieldAppearance", tuiTextfieldSize: "tuiTextfieldSize", tuiTextfieldCleaner: "tuiTextfieldCleaner" }, providers: [tuiProvide(TUI_TEXTFIELD_OPTIONS, TuiTextfieldOptionsDirective)], ngImport: i0 }); }
69
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldOptionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
70
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.18", type: TuiTextfieldOptionsDirective, isStandalone: true, selector: "[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]", inputs: { appearance: { classPropertyName: "appearance", publicName: "tuiTextfieldAppearance", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "tuiTextfieldSize", isSignal: true, isRequired: false, transformFunction: null }, cleaner: { classPropertyName: "cleaner", publicName: "tuiTextfieldCleaner", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiProvide(TUI_TEXTFIELD_OPTIONS, TuiTextfieldOptionsDirective)], ngImport: i0 }); }
83
71
  }
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldOptionsDirective, decorators: [{
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldOptionsDirective, decorators: [{
85
73
  type: Directive,
86
74
  args: [{
87
- standalone: true,
88
75
  selector: '[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]',
89
76
  providers: [tuiProvide(TUI_TEXTFIELD_OPTIONS, TuiTextfieldOptionsDirective)],
90
77
  }]
91
- }], propDecorators: { tuiTextfieldAppearance: [{
92
- type: Input
93
- }], tuiTextfieldSize: [{
94
- type: Input
95
- }], tuiTextfieldCleaner: [{
96
- type: Input
97
- }] } });
78
+ }] });
98
79
 
99
80
  class TuiSelectLike {
100
81
  constructor() {
101
82
  this.el = tuiInjectElement();
102
- this.isAndroid = inject(TUI_IS_ANDROID);
83
+ this.isAndroid = inject(WA_IS_ANDROID);
103
84
  this.options = inject(TUI_TEXTFIELD_OPTIONS);
104
85
  }
105
86
  clear() {
@@ -112,13 +93,12 @@ class TuiSelectLike {
112
93
  event.preventDefault();
113
94
  this.el.focus();
114
95
  }
115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSelectLike, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
116
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiSelectLike, isStandalone: true, selector: "[tuiSelectLike]", host: { attributes: { "tuiSelectLike": "", "inputmode": "none", "spellcheck": "false", "autocomplete": "off" }, listeners: { "beforeinput": "options.cleaner() && $event.inputType.includes(\"delete\") || $event.preventDefault()", "input.capture": "$event.inputType?.includes(\"delete\") && clear()", "mousedown": "prevent($event)" } }, ngImport: i0 }); }
96
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiSelectLike, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
97
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: TuiSelectLike, isStandalone: true, selector: "[tuiSelectLike]", host: { attributes: { "tuiSelectLike": "", "inputmode": "none", "spellcheck": "false", "autocomplete": "off" }, listeners: { "beforeinput": "options.cleaner() && $event.inputType.includes(\"delete\") || $event.preventDefault()", "input.capture": "$event.inputType?.includes(\"delete\") && clear()", "mousedown": "prevent($event)" } }, ngImport: i0 }); }
117
98
  }
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSelectLike, decorators: [{
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiSelectLike, decorators: [{
119
100
  type: Directive,
120
101
  args: [{
121
- standalone: true,
122
102
  selector: '[tuiSelectLike]',
123
103
  host: {
124
104
  tuiSelectLike: '',
@@ -139,361 +119,106 @@ function tuiAsTextfieldAccessor(accessor) {
139
119
  return tuiProvide(TUI_TEXTFIELD_ACCESSOR, accessor);
140
120
  }
141
121
 
142
- // TODO: Change selector to tuiDropdown in v5 and move to TuiDropdown
143
- class TuiTextfieldDropdownDirective {
144
- constructor() {
145
- this.directive = inject(TuiDropdownDirective);
146
- this.directive.tuiDropdown = inject(TemplateRef);
147
- if (isPlatformBrowser(inject(PLATFORM_ID)) &&
148
- this.directive.el.matches(':focus-within')) {
149
- this.directive.toggle(true);
150
- }
151
- }
152
- ngOnDestroy() {
153
- this.directive.tuiDropdown = null;
154
- }
155
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldDropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
156
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldDropdownDirective, isStandalone: true, selector: "ng-template[tuiTextfieldDropdown]", ngImport: i0 }); }
157
- }
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldDropdownDirective, decorators: [{
159
- type: Directive,
160
- args: [{
161
- standalone: true,
162
- selector: 'ng-template[tuiTextfieldDropdown]',
163
- }]
164
- }], ctorParameters: function () { return []; } });
165
- /**
166
- * @deprecated remove in v5
167
- */
168
- class TuiWithTextfieldDropdown {
169
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithTextfieldDropdown, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
170
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiWithTextfieldDropdown, isStandalone: true, ngImport: i0 }); }
171
- }
172
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithTextfieldDropdown, decorators: [{
173
- type: Directive,
174
- args: [{
175
- standalone: true,
176
- }]
177
- }] });
178
-
179
- // TODO: Remove base class in v5
180
- class TuiTextfieldBaseComponent {
122
+ class TuiTextfieldComponent {
181
123
  constructor() {
182
- // TODO: refactor to signal inputs after Angular update
183
- this.filler = signal('');
184
- this.autoId = tuiInjectId();
124
+ this.autoId = tuiGenerateId();
185
125
  this.focusedIn = tuiFocusedIn(tuiInjectElement());
186
- this.contentReady$ = new ReplaySubject(1);
187
- this.inputQuery = signal(undefined);
188
- this.auxiliaryQuery = EMPTY_QUERY;
189
- this.open = tuiDropdownOpen();
126
+ this.ghost = viewChild('ghost');
190
127
  this.dropdown = inject(TuiDropdownDirective);
191
- this.dropdownOpen = inject(TuiDropdownOpen);
192
- this.icons = inject(TUI_COMMON_ICONS);
193
- this.clear = toSignal(inject(TUI_CLEAR_WORD));
128
+ this.open = inject(TuiDropdownOpen);
129
+ this.clear = inject(TUI_CLEAR_WORD);
130
+ this.label = contentChild(forwardRef(() => TuiLabel), { read: ElementRef });
194
131
  this.computedFiller = computed((value = this.value()) => {
195
132
  const filler = value + this.filler().slice(value.length);
196
133
  return filler.length > value.length ? filler : '';
197
134
  });
198
135
  this.showFiller = computed(() => this.focused() &&
199
136
  !!this.computedFiller() &&
200
- (!!this.value() || !this.input?.nativeElement.placeholder));
201
- this.focused = computed(() => this.open() || this.focusedIn());
137
+ (!!this.value() || !this.input()?.nativeElement.placeholder));
138
+ this.accessor = contentChild(TUI_TEXTFIELD_ACCESSOR, { descendants: true });
139
+ this.vcr = viewChild('vcr', { read: ViewContainerRef });
140
+ this.control = contentChild(NgControl);
141
+ this.auxiliaries = contentChildren(TUI_AUXILIARY, { descendants: true });
142
+ this.focused = computed(() => this.open.open() || this.focusedIn());
202
143
  this.options = inject(TUI_TEXTFIELD_OPTIONS);
203
144
  this.el = tuiInjectElement();
204
- this.value = tuiValue(this.inputQuery);
205
- // TODO: Refactor to signal queries when Angular is updated
206
- this.auxiliaries = toSignal(this.contentReady$.pipe(take(1), switchMap(() => tuiQueryListChanges(this.auxiliaryQuery)), startWith([])), { requireSync: true });
207
- }
208
- set fillerSetter(filler) {
209
- this.filler.set(filler);
145
+ this.input = contentChild(TUI_TEXTFIELD_ACCESSOR, { read: ElementRef });
146
+ this.content = input();
147
+ this.filler = input('');
148
+ this.value = tuiValue(this.input);
210
149
  }
211
150
  get id() {
212
- return this.input?.nativeElement.id || this.autoId;
151
+ return this.input()?.nativeElement.id || this.autoId;
213
152
  }
214
153
  get size() {
215
154
  return this.options.size();
216
155
  }
217
- ngAfterContentChecked() {
218
- this.contentReady$.next(true);
219
- this.inputQuery.set(this._input);
220
- }
221
156
  handleOption(option) {
222
- this.accessor?.setValue(option);
223
- this.open.set(false);
157
+ this.accessor()?.setValue(option);
158
+ this.open.open.set(false);
224
159
  }
225
160
  get hasLabel() {
226
- return Boolean(this.label?.nativeElement?.childNodes.length);
161
+ return Boolean(this.label()?.nativeElement?.childNodes.length);
227
162
  }
228
163
  onResize({ contentRect }) {
229
164
  this.el.style.setProperty('--t-side', tuiPx(contentRect.width));
230
165
  }
231
166
  // Click on ::before,::after pseudo-elements ([iconStart] / [iconEnd])
232
167
  onIconClick() {
233
- this.input?.nativeElement.focus();
234
- if (!this.dropdownOpen.tuiDropdownEnabled ||
235
- this.input?.nativeElement.matches('input:read-only,textarea:read-only')) {
168
+ this.input()?.nativeElement.focus();
169
+ if (!this.open.enabled() ||
170
+ this.input()?.nativeElement.matches('input:read-only,textarea:read-only')) {
236
171
  return;
237
172
  }
238
- this.open.update((open) => !open);
173
+ this.open.open.update((open) => !open);
239
174
  try {
240
- this.input?.nativeElement.showPicker?.();
175
+ this.input()?.nativeElement.showPicker?.();
241
176
  }
242
177
  catch {
243
178
  // Empty catch block - silently ignore showPicker errors
244
179
  }
245
180
  }
246
181
  onScroll(element) {
247
- if (this.input?.nativeElement === element) {
248
- this.ghost?.nativeElement.scrollTo({
249
- left: this.input.nativeElement.scrollLeft,
182
+ if (this.input()?.nativeElement === element) {
183
+ this.ghost()?.nativeElement.scrollTo({
184
+ left: this.input()?.nativeElement.scrollLeft,
250
185
  });
251
186
  }
252
187
  }
253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
254
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldBaseComponent, inputs: { content: "content", fillerSetter: ["filler", "fillerSetter"] }, queries: [{ propertyName: "label", first: true, predicate: i0.forwardRef(function () { return TuiLabel; }), descendants: true, read: ElementRef }, { propertyName: "_input", first: true, predicate: i0.forwardRef(function () { return TuiTextfieldBase; }), descendants: true, read: ElementRef }, { propertyName: "accessor", first: true, predicate: TUI_TEXTFIELD_ACCESSOR, descendants: true }, { propertyName: "control", first: true, predicate: NgControl, descendants: true }, { propertyName: "cva", first: true, predicate: TuiControl, descendants: true }, { propertyName: "input", first: true, predicate: i0.forwardRef(function () { return TuiTextfieldBase; }), descendants: true, read: ElementRef, static: true }, { propertyName: "auxiliaryQuery", predicate: TUI_AUXILIARY, descendants: true }], viewQueries: [{ propertyName: "ghost", first: true, predicate: ["ghost"], descendants: true }, { propertyName: "vcr", first: true, predicate: ["vcr"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0 }); }
255
- }
256
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBaseComponent, decorators: [{
257
- type: Directive
258
- }], propDecorators: { ghost: [{
259
- type: ViewChild,
260
- args: ['ghost']
261
- }], label: [{
262
- type: ContentChild,
263
- args: [forwardRef(() => TuiLabel), { read: ElementRef }]
264
- }], auxiliaryQuery: [{
265
- type: ContentChildren,
266
- args: [TUI_AUXILIARY, { descendants: true }]
267
- }], _input: [{
268
- type: ContentChild,
269
- args: [forwardRef(() => TuiTextfieldBase), { read: ElementRef }]
270
- }], vcr: [{
271
- type: ViewChild,
272
- args: ['vcr', { read: ViewContainerRef, static: true }]
273
- }], accessor: [{
274
- type: ContentChild,
275
- args: [TUI_TEXTFIELD_ACCESSOR, { descendants: true }]
276
- }], control: [{
277
- type: ContentChild,
278
- args: [NgControl]
279
- }], cva: [{
280
- type: ContentChild,
281
- args: [TuiControl]
282
- }], input: [{
283
- type: ContentChild,
284
- args: [forwardRef(() => TuiTextfieldBase), {
285
- read: ElementRef,
286
- static: true,
287
- }]
288
- }], content: [{
289
- type: Input
290
- }], fillerSetter: [{
291
- type: Input,
292
- args: ['filler']
293
- }] } });
294
- class TuiTextfieldComponent extends TuiTextfieldBaseComponent {
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
296
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldComponent, isStandalone: true, selector: "tui-textfield:not([multi])", host: { listeners: { "click.self.prevent": "0", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)", "tuiActiveZoneChange": "!$event && cva?.onTouched()" }, properties: { "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content && control?.value != null", "class._disabled": "input?.nativeElement?.disabled" } }, providers: [
188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
189
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: TuiTextfieldComponent, isStandalone: true, selector: "tui-textfield:not([multi])", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, filler: { classPropertyName: "filler", publicName: "filler", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "animationstart": "0", "animationcancel": "0", "click.self.prevent": "0", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)", "tuiActiveZoneChange": "!$event && control()?.valueAccessor?.onTouched?.()" }, properties: { "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content() && control()?.value != null", "class._disabled": "input()?.nativeElement?.disabled" }, classAttribute: "tui-interactive" }, providers: [
297
190
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
298
191
  tuiAsDataListHost(TuiTextfieldComponent),
299
- ], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiDropdownFixed }, { directive: i2.TuiTransitioned }, { directive: i1.TuiWithDropdownOpen }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: TuiWithTextfieldDropdown }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
192
+ ], queries: [{ propertyName: "label", first: true, predicate: i0.forwardRef(() => TuiLabel), descendants: true, read: ElementRef, isSignal: true }, { propertyName: "accessor", first: true, predicate: TUI_TEXTFIELD_ACCESSOR, descendants: true, isSignal: true }, { propertyName: "control", first: true, predicate: NgControl, descendants: true, isSignal: true }, { propertyName: "auxiliaries", predicate: TUI_AUXILIARY, descendants: true, isSignal: true }, { propertyName: "input", first: true, predicate: TUI_TEXTFIELD_ACCESSOR, descendants: true, read: ElementRef, isSignal: true }], viewQueries: [{ propertyName: "ghost", first: true, predicate: ["ghost"], descendants: true, isSignal: true }, { propertyName: "vcr", first: true, predicate: ["vcr"], descendants: true, read: ViewContainerRef, isSignal: true }], hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiDropdownDirective }, { directive: i2.TuiDropdownFixed }, { directive: i2.TuiWithDropdownOpen }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }], ngImport: i0, template: "@if (control()?.control?.valueChanges | async) {}\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input()?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <ng-container #vcr />\n @if (options.cleaner()) {\n <button\n tuiButtonX\n (click)=\"accessor()?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n }\n <ng-content select=\"tui-icon\" />\n</span>\n@if (control()?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control()?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n@if (showFiller()) {\n <input\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n />\n}\n", styles: ["tui-textfield:where(*){scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-body-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield:where(*)::-webkit-scrollbar,tui-textfield:where(*)::-webkit-scrollbar-thumb{display:none}tui-textfield:where(*)[tuiAppearance]{outline:none}tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]{color:var(--tui-text-tertiary)}@media (hover: hover) and (pointer: fine){tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled):hover:not([data-state]){color:var(--tui-text-secondary)}}tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly])[data-state=hover]{color:var(--tui-text-secondary)}tui-textfield:where(*)[data-icon-start]{--t-start: 2.25rem}tui-textfield:where(*)[data-icon-end]{--t-end: 2.25rem}tui-textfield:where(*)[tuiIcons]:before{z-index:1;block-size:var(--t-height);margin-inline-end:.5rem;pointer-events:none}tui-textfield:where(*)[tuiIcons]:after{position:relative;block-size:var(--t-height);cursor:pointer;border-inline:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield:where(*)::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield:where(*) [tuiLabel],tui-textfield:where(*)>.t-content,tui-textfield:where(*)>.t-template{pointer-events:none}tui-textfield:where(*)[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*)[data-size=s][data-icon-start]{--t-start: 1.25rem}tui-textfield:where(*)[data-size=s][data-icon-end]{--t-end: 1.25rem}tui-textfield:where(*)[data-size=s]:before{margin-inline:-.125rem .5rem;font-size:1rem}tui-textfield:where(*)[data-size=s]:after{margin-inline-start:calc(.625rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding));font-size:1rem}tui-textfield:where(*)[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield:where(*)[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-body-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*)[data-size=m][data-icon-start]{--t-start: 1.75rem}tui-textfield:where(*)[data-size=m][data-icon-end]{--t-end: 1.75rem}tui-textfield:where(*)[data-size=m]:before{margin-inline:-.125rem .125rem}tui-textfield:where(*)[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield:where(*)[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield:where(*)[data-size=l]{--t-label: -.7rem}tui-textfield:where(*):is(._disabled,[data-state=disabled]){pointer-events:none;opacity:var(--tui-disabled-opacity)}tui-textfield:where(*):is(._disabled,[data-state=disabled]) [tuiAppearance]:is(._disabled,:disabled,[data-state=disabled]){opacity:1}tui-textfield:where(*):is(._disabled,[data-state=disabled]) tui-icon{display:none}tui-textfield:where(*)._with-label>.t-template,tui-textfield:where(*)._with-label .t-filler,tui-textfield:where(*)._with-label [tuiInput]{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template::placeholder,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]::placeholder,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template._empty,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]._empty{color:transparent}tui-textfield:where(*)>.t-template,tui-textfield:where(*) .t-filler,tui-textfield:where(*) [tuiInput]{position:absolute;inset-block-start:0;inset-inline:0;inline-size:auto;block-size:100%;-webkit-appearance:none;appearance:none;background:none;font:inherit;resize:none;outline:none;color:var(--tui-text-primary);box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side, 0rem) + var(--t-padding))}tui-textfield:where(*)>.t-template:is(input,textarea):read-only~.t-filler,tui-textfield:where(*) .t-filler:is(input,textarea):read-only~.t-filler,tui-textfield:where(*) [tuiInput]:is(input,textarea):read-only~.t-filler{display:none}tui-textfield:where(*)>.t-template:disabled,tui-textfield:where(*) .t-filler:disabled,tui-textfield:where(*) [tuiInput]:disabled{animation:tuiPresent 1s infinite;opacity:1}tui-textfield:where(*)>.t-template[inputmode=none],tui-textfield:where(*) .t-filler[inputmode=none],tui-textfield:where(*) [tuiInput][inputmode=none]{caret-color:transparent}tui-textfield:where(*)>.t-template{display:flex;block-size:100%;align-items:center}tui-textfield:where(*)._with-template [tuiInput]:first-of-type{color:transparent!important}tui-textfield:where(*) [tuiInput]:-webkit-autofill [tuiLabel],tui-textfield:where(*) [tuiInput][chrome-autofilled] [tuiLabel],tui-textfield:where(*) [tuiInput]:not(._empty,:placeholder-shown) [tuiLabel],tui-textfield:where(*)[multi][multi]:not(._empty) [tuiLabel],tui-textfield:where(*) [tuiInput]:-webkit-autofill:not(tui-textfield)~[tuiLabel],tui-textfield:where(*) [tuiInput][chrome-autofilled]:not(tui-textfield)~[tuiLabel],tui-textfield:where(*) [tuiInput]:not(._empty,:placeholder-shown):not(tui-textfield)~[tuiLabel],tui-textfield:where(*)[multi][multi]:not(._empty):not(tui-textfield)~[tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*) [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;-webkit-user-select:none;user-select:none;line-height:var(--t-height);transition-duration:inherit}tui-textfield:where(*) [tuiLabel],tui-textfield:where(*) [tuiInput]::placeholder,tui-textfield:where(*) [tuiInput]._empty{color:var(--tui-text-secondary)}tui-textfield:where(*) select option[value=\"\"]:disabled{color:transparent}tui-textfield:where(*) select optgroup,tui-textfield:where(*) select option{background-color:var(--tui-background-elevation-3)}tui-textfield:where(*) select optgroup,tui-textfield:where(*) select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield:where(*) button,tui-textfield:where(*) a,tui-textfield:where(*) tui-icon{pointer-events:auto}tui-textfield:where(*)>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield:where(*) textarea~.t-content{min-inline-size:.5rem}tui-textfield:where(*):is([data-mode~=readonly],[data-state=disabled],._empty) [tuiButtonX],tui-textfield:where(*) [tuiInput]._empty~.t-content [tuiButtonX],tui-textfield:where(*) [tuiInput]:disabled~.t-content [tuiButtonX]{display:none}tui-textfield:where(*) .t-filler{pointer-events:none!important;color:var(--tui-text-tertiary)}tui-textfield:where(*) [tuiFluidTypography]{font-weight:700}tui-textfield:where(*) [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:where(*):has(input[type=tel]){direction:ltr}tui-textfield:where(*):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled) [tuiInput]:not(._empty)~[tuiLabel],tui-textfield:where(*):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled)[multi]:not(._empty) [tuiLabel]{color:var(--tui-text-negative)}tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]::placeholder,tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiInput]::placeholder,tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButtonX, selector: "[tuiButtonX]" }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["waResizeBox"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
300
193
  }
301
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldComponent, decorators: [{
194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldComponent, decorators: [{
302
195
  type: Component,
303
- args: [{ standalone: true, selector: 'tui-textfield:not([multi])', imports: [AsyncPipe, NgIf, PolymorpheusOutlet, TuiButton, WaResizeObserver], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
196
+ args: [{ selector: 'tui-textfield:not([multi])', imports: [AsyncPipe, PolymorpheusOutlet, TuiButtonX, WaResizeObserver], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
304
197
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
305
198
  tuiAsDataListHost(TuiTextfieldComponent),
306
199
  ], hostDirectives: [
200
+ TuiAppearance,
307
201
  TuiDropdownDirective,
308
202
  TuiDropdownFixed,
309
- TuiTransitioned,
310
203
  TuiWithDropdownOpen,
311
204
  TuiWithIcons,
312
205
  TuiWithItemsHandlers,
313
206
  TuiWithOptionContent,
314
- TuiWithTextfieldDropdown,
315
207
  ], host: {
208
+ class: 'tui-interactive',
316
209
  '[attr.data-size]': 'options.size()',
317
- '[class._with-label]': 'hasLabel',
318
- '[class._with-template]': 'content && control?.value != null',
319
- '[class._disabled]': 'input?.nativeElement?.disabled',
210
+ '[class._with-label]': 'hasLabel', // TODO :has([tuiLabel]
211
+ '[class._with-template]': 'content() && control()?.value != null',
212
+ '[class._disabled]': 'input()?.nativeElement?.disabled', // TODO :has([tuiInput]:disabled)
213
+ '(animationstart)': '0', // TODO :has([tuiInput]:disabled)
214
+ '(animationcancel)': '0', // TODO :has([tuiInput]:disabled)
320
215
  '(click.self.prevent)': '0',
216
+ // TODO preventing breaks resize: both, but not preventing breaks focus, fix
321
217
  '(pointerdown.self.prevent)': 'onIconClick()',
322
218
  '(scroll.capture.zoneless)': 'onScroll($event.target)',
323
- '(tuiActiveZoneChange)': '!$event && cva?.onTouched()',
324
- }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"] }]
325
- }] });
326
-
327
- // TODO: Drop in v5 after updated Angular and hostDirectives inherit
328
- class TuiTextfieldBase {
329
- constructor() {
330
- // TODO: refactor to signal inputs after Angular update
331
- this.focused = signal(null);
332
- this.control = inject(NgControl, { optional: true });
333
- this.a = tuiAppearance(inject(TUI_TEXTFIELD_OPTIONS).appearance, {});
334
- this.s = tuiAppearanceState(null, {});
335
- this.m = tuiAppearanceMode(this.mode, {});
336
- this.f = tuiAppearanceFocus(computed(() => this.focused() ?? this.textfield.focused()), {});
337
- this.el = tuiInjectElement();
338
- this.handlers = inject(TUI_ITEMS_HANDLERS);
339
- this.textfield = inject(TuiTextfieldComponent);
340
- this.readOnly = false;
341
- this.invalid = null;
342
- this.value = tuiValue(this.el);
343
- }
344
- set focusedSetter(focused) {
345
- this.focused.set(focused);
346
- }
347
- set stateSetter(state) {
348
- this.s.set(state);
349
- }
350
- get mode() {
351
- if (this.readOnly) {
352
- return 'readonly';
353
- }
354
- if (this.invalid === false) {
355
- return 'valid';
356
- }
357
- if (this.invalid) {
358
- return 'invalid';
359
- }
360
- return null;
361
- }
362
- // TODO: refactor to signal inputs after Angular update
363
- ngOnChanges() {
364
- this.m.set(this.mode);
365
- }
366
- setValue(value) {
367
- this.el.focus();
368
- this.el.select();
369
- if (value == null) {
370
- this.el.ownerDocument.execCommand('delete');
371
- // see https://github.com/taiga-family/taiga-ui/issues/11634
372
- // ensure non-erasable affixes actually deleted
373
- this.el.value = '';
374
- }
375
- else {
376
- this.el.ownerDocument.execCommand('insertText', false, this.handlers.stringify()(value));
377
- }
378
- }
379
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
380
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldBase, isStandalone: true, inputs: { readOnly: "readOnly", invalid: "invalid", focusedSetter: ["focused", "focusedSetter"], stateSetter: ["state", "stateSetter"] }, host: { attributes: { "tuiTextfield": "" }, listeners: { "input": "0", "focusin": "0", "focusout": "0" }, properties: { "id": "textfield.id", "readOnly": "readOnly", "class._empty": "value() === \"\"" } }, providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)], usesOnChanges: true, ngImport: i0 }); }
381
- }
382
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBase, decorators: [{
383
- type: Directive,
384
- args: [{
385
- standalone: true,
386
- providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)],
387
- host: {
388
- tuiTextfield: '',
389
- '[id]': 'textfield.id',
390
- '[readOnly]': 'readOnly',
391
- '[class._empty]': 'value() === ""',
392
- '(input)': '0',
393
- '(focusin)': '0',
394
- '(focusout)': '0',
395
- },
396
- }]
397
- }], propDecorators: { readOnly: [{
398
- type: Input
399
- }], invalid: [{
400
- type: Input
401
- }], focusedSetter: [{
402
- type: Input,
403
- args: ['focused']
404
- }], stateSetter: [{
405
- type: Input,
406
- args: ['state']
407
- }] } });
408
- class TuiTextfieldDirective extends TuiTextfieldBase {
409
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
410
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldDirective, isStandalone: true, selector: "input[tuiTextfield]:not([tuiInputCard]):not([tuiInputExpire]):not([tuiInputCVC])", providers: [
411
- tuiAsTextfieldAccessor(TuiTextfieldDirective),
412
- tuiProvide(TuiTextfieldBase, TuiTextfieldDirective),
413
- ], usesInheritance: true, hostDirectives: [{ directive: i1$1.TuiNativeValidator }, { directive: i2$1.TuiAppearance }], ngImport: i0 }); }
414
- }
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldDirective, decorators: [{
416
- type: Directive,
417
- args: [{
418
- standalone: true,
419
- // TODO: Remove :not in v.5
420
- selector: 'input[tuiTextfield]:not([tuiInputCard]):not([tuiInputExpire]):not([tuiInputCVC])',
421
- providers: [
422
- tuiAsTextfieldAccessor(TuiTextfieldDirective),
423
- tuiProvide(TuiTextfieldBase, TuiTextfieldDirective),
424
- ],
425
- hostDirectives: [TuiNativeValidator, TuiAppearance],
426
- }]
219
+ '(tuiActiveZoneChange)': '!$event && control()?.valueAccessor?.onTouched?.()',
220
+ }, template: "@if (control()?.control?.valueChanges | async) {}\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input()?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <ng-container #vcr />\n @if (options.cleaner()) {\n <button\n tuiButtonX\n (click)=\"accessor()?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n }\n <ng-content select=\"tui-icon\" />\n</span>\n@if (control()?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control()?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n@if (showFiller()) {\n <input\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n />\n}\n", styles: ["tui-textfield:where(*){scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-body-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield:where(*)::-webkit-scrollbar,tui-textfield:where(*)::-webkit-scrollbar-thumb{display:none}tui-textfield:where(*)[tuiAppearance]{outline:none}tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]{color:var(--tui-text-tertiary)}@media (hover: hover) and (pointer: fine){tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled):hover:not([data-state]){color:var(--tui-text-secondary)}}tui-textfield:where(*)[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly])[data-state=hover]{color:var(--tui-text-secondary)}tui-textfield:where(*)[data-icon-start]{--t-start: 2.25rem}tui-textfield:where(*)[data-icon-end]{--t-end: 2.25rem}tui-textfield:where(*)[tuiIcons]:before{z-index:1;block-size:var(--t-height);margin-inline-end:.5rem;pointer-events:none}tui-textfield:where(*)[tuiIcons]:after{position:relative;block-size:var(--t-height);cursor:pointer;border-inline:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield:where(*)::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield:where(*) [tuiLabel],tui-textfield:where(*)>.t-content,tui-textfield:where(*)>.t-template{pointer-events:none}tui-textfield:where(*)[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*)[data-size=s][data-icon-start]{--t-start: 1.25rem}tui-textfield:where(*)[data-size=s][data-icon-end]{--t-end: 1.25rem}tui-textfield:where(*)[data-size=s]:before{margin-inline:-.125rem .5rem;font-size:1rem}tui-textfield:where(*)[data-size=s]:after{margin-inline-start:calc(.625rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding));font-size:1rem}tui-textfield:where(*)[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield:where(*)[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-body-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*)[data-size=m][data-icon-start]{--t-start: 1.75rem}tui-textfield:where(*)[data-size=m][data-icon-end]{--t-end: 1.75rem}tui-textfield:where(*)[data-size=m]:before{margin-inline:-.125rem .125rem}tui-textfield:where(*)[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield:where(*)[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield:where(*)[data-size=l]{--t-label: -.7rem}tui-textfield:where(*):is(._disabled,[data-state=disabled]){pointer-events:none;opacity:var(--tui-disabled-opacity)}tui-textfield:where(*):is(._disabled,[data-state=disabled]) [tuiAppearance]:is(._disabled,:disabled,[data-state=disabled]){opacity:1}tui-textfield:where(*):is(._disabled,[data-state=disabled]) tui-icon{display:none}tui-textfield:where(*)._with-label>.t-template,tui-textfield:where(*)._with-label .t-filler,tui-textfield:where(*)._with-label [tuiInput]{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template::placeholder,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]::placeholder,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template._empty,tui-textfield:where(*)._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]._empty{color:transparent}tui-textfield:where(*)>.t-template,tui-textfield:where(*) .t-filler,tui-textfield:where(*) [tuiInput]{position:absolute;inset-block-start:0;inset-inline:0;inline-size:auto;block-size:100%;-webkit-appearance:none;appearance:none;background:none;font:inherit;resize:none;outline:none;color:var(--tui-text-primary);box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side, 0rem) + var(--t-padding))}tui-textfield:where(*)>.t-template:is(input,textarea):read-only~.t-filler,tui-textfield:where(*) .t-filler:is(input,textarea):read-only~.t-filler,tui-textfield:where(*) [tuiInput]:is(input,textarea):read-only~.t-filler{display:none}tui-textfield:where(*)>.t-template:disabled,tui-textfield:where(*) .t-filler:disabled,tui-textfield:where(*) [tuiInput]:disabled{animation:tuiPresent 1s infinite;opacity:1}tui-textfield:where(*)>.t-template[inputmode=none],tui-textfield:where(*) .t-filler[inputmode=none],tui-textfield:where(*) [tuiInput][inputmode=none]{caret-color:transparent}tui-textfield:where(*)>.t-template{display:flex;block-size:100%;align-items:center}tui-textfield:where(*)._with-template [tuiInput]:first-of-type{color:transparent!important}tui-textfield:where(*) [tuiInput]:-webkit-autofill [tuiLabel],tui-textfield:where(*) [tuiInput][chrome-autofilled] [tuiLabel],tui-textfield:where(*) [tuiInput]:not(._empty,:placeholder-shown) [tuiLabel],tui-textfield:where(*)[multi][multi]:not(._empty) [tuiLabel],tui-textfield:where(*) [tuiInput]:-webkit-autofill:not(tui-textfield)~[tuiLabel],tui-textfield:where(*) [tuiInput][chrome-autofilled]:not(tui-textfield)~[tuiLabel],tui-textfield:where(*) [tuiInput]:not(._empty,:placeholder-shown):not(tui-textfield)~[tuiLabel],tui-textfield:where(*)[multi][multi]:not(._empty):not(tui-textfield)~[tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*) [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;-webkit-user-select:none;user-select:none;line-height:var(--t-height);transition-duration:inherit}tui-textfield:where(*) [tuiLabel],tui-textfield:where(*) [tuiInput]::placeholder,tui-textfield:where(*) [tuiInput]._empty{color:var(--tui-text-secondary)}tui-textfield:where(*) select option[value=\"\"]:disabled{color:transparent}tui-textfield:where(*) select optgroup,tui-textfield:where(*) select option{background-color:var(--tui-background-elevation-3)}tui-textfield:where(*) select optgroup,tui-textfield:where(*) select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield:where(*) button,tui-textfield:where(*) a,tui-textfield:where(*) tui-icon{pointer-events:auto}tui-textfield:where(*)>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield:where(*) textarea~.t-content{min-inline-size:.5rem}tui-textfield:where(*):is([data-mode~=readonly],[data-state=disabled],._empty) [tuiButtonX],tui-textfield:where(*) [tuiInput]._empty~.t-content [tuiButtonX],tui-textfield:where(*) [tuiInput]:disabled~.t-content [tuiButtonX]{display:none}tui-textfield:where(*) .t-filler{pointer-events:none!important;color:var(--tui-text-tertiary)}tui-textfield:where(*) [tuiFluidTypography]{font-weight:700}tui-textfield:where(*) [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:where(*):has(input[type=tel]){direction:ltr}tui-textfield:where(*):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled) [tuiInput]:not(._empty)~[tuiLabel],tui-textfield:where(*):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled)[multi]:not(._empty) [tuiLabel]{color:var(--tui-text-negative)}tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]::placeholder,tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiInput]::placeholder,tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*):not([data-mode~=readonly])[data-focus=true] [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}\n"] }]
427
221
  }] });
428
- class TuiWithTextfield {
429
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithTextfield, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
430
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiWithTextfield, isStandalone: true, hostDirectives: [{ directive: TuiTextfieldDirective, inputs: ["invalid", "invalid", "focused", "focused", "readOnly", "readOnly", "state", "state"] }], ngImport: i0 }); }
431
- }
432
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithTextfield, decorators: [{
433
- type: Directive,
434
- args: [{
435
- standalone: true,
436
- hostDirectives: [
437
- {
438
- directive: TuiTextfieldDirective,
439
- inputs: ['invalid', 'focused', 'readOnly', 'state'],
440
- },
441
- ],
442
- }]
443
- }] });
444
-
445
- /**
446
- * @deprecated use {@link TuiSelect} from @taiga-ui/kit instead, drop in v5
447
- */
448
- class TuiSelect extends TuiTextfieldBase {
449
- constructor() {
450
- super(...arguments);
451
- this.nav = inject(WA_NAVIGATOR);
452
- this.doc = inject(DOCUMENT);
453
- this.placeholder = '';
454
- }
455
- setValue(value) {
456
- this.control?.control?.setValue(value);
457
- this.el.dispatchEvent(new Event('input', { bubbles: true }));
458
- }
459
- focus() {
460
- this.el.classList.add('_ios-fix');
461
- this.el.focus();
462
- this.el.classList.remove('_ios-fix');
463
- }
464
- get ariaLabel() {
465
- return this.doc.querySelector(`label[for="${this.el.id}"]`)
466
- ? null
467
- : this.el.getAttribute('aria-label') || this.placeholder;
468
- }
469
- get stringified() {
470
- return this.handlers.stringify()(this.control?.value ?? '');
471
- }
472
- async onCopy() {
473
- await this.nav.clipboard.writeText(this.stringified);
474
- }
475
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSelect, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
476
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiSelect, isStandalone: true, selector: "select[tuiTextfield]", inputs: { placeholder: "placeholder" }, host: { listeners: { "input": "0", "focusin": "0", "focusout": "0", "keydown.space.prevent": "0", "keydown.enter.prevent": "0", "keydown.backspace": "setValue(\"\")", "mousedown.prevent": "focus()", "keydown.control.c": "onCopy()", "keydown.meta.c": "onCopy()" }, properties: { "id": "textfield.id", "class._empty": "stringified === \"\"", "attr.aria-label": "ariaLabel" } }, providers: [tuiAsTextfieldAccessor(TuiSelect)], usesInheritance: true, hostDirectives: [{ directive: i1$1.TuiNativeValidator }, { directive: i2$1.TuiAppearance }], ngImport: i0, template: "<option\n *ngIf=\"placeholder && !stringified; else selected\"\n disabled\n selected\n value=\"\"\n>\n {{ placeholder }}\n</option>\n<ng-template #selected>\n <option\n *ngFor=\"let item of [stringified]\"\n selected\n [value]=\"item\"\n >\n {{ item }}\n </option>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
477
- }
478
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSelect, decorators: [{
479
- type: Component,
480
- args: [{ standalone: true, selector: 'select[tuiTextfield]', imports: [NgFor, NgIf], changeDetection: ChangeDetectionStrategy.Default, providers: [tuiAsTextfieldAccessor(TuiSelect)], hostDirectives: [TuiNativeValidator, TuiAppearance], host: {
481
- '[id]': 'textfield.id',
482
- '[class._empty]': 'stringified === ""',
483
- '[attr.aria-label]': 'ariaLabel',
484
- '(input)': '0',
485
- '(focusin)': '0',
486
- '(focusout)': '0',
487
- '(keydown.space.prevent)': '0',
488
- '(keydown.enter.prevent)': '0',
489
- '(keydown.backspace)': 'setValue("")',
490
- '(mousedown.prevent)': 'focus()',
491
- '(keydown.control.c)': 'onCopy()',
492
- '(keydown.meta.c)': 'onCopy()',
493
- }, template: "<option\n *ngIf=\"placeholder && !stringified; else selected\"\n disabled\n selected\n value=\"\"\n>\n {{ placeholder }}\n</option>\n<ng-template #selected>\n <option\n *ngFor=\"let item of [stringified]\"\n selected\n [value]=\"item\"\n >\n {{ item }}\n </option>\n</ng-template>\n" }]
494
- }], propDecorators: { placeholder: [{
495
- type: Input
496
- }] } });
497
222
 
498
223
  /*
499
224
  * Internal wrapper for polymorpheus-context
@@ -504,54 +229,55 @@ class TuiTextfieldItemComponent {
504
229
  this.handlers = inject(TUI_ITEMS_HANDLERS);
505
230
  this.context = injectContext();
506
231
  this.textfield = inject(TuiTextfieldMultiComponent);
507
- }
508
- get content() {
509
- return (this.textfield.item ?? this.handlers.stringify()(this.context.$implicit.item));
232
+ this.content = computed(() => this.textfield.item() ??
233
+ this.handlers.stringify()(this.context.$implicit.item));
510
234
  }
511
235
  prevent(e) {
512
236
  this.textfield.focused() && e.preventDefault();
513
237
  }
514
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
515
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldItemComponent, isStandalone: true, selector: "tui-textfield-item", host: { listeners: { "pointerdown.self": "prevent($event)", "keydown.arrowLeft.prevent": "el.previousElementSibling?.firstChild?.focus()", "keydown.arrowRight.prevent": "el.nextElementSibling?.firstChild?.focus()" }, properties: { "class._string": "!textfield.item", "class._disabled": "handlers.disabledItemHandler()(context.$implicit.item)" } }, ngImport: i0, template: '<ng-container *polymorpheusOutlet="content as text; context: context">{{ text }}</ng-container>', isInline: true, styles: [":host{max-inline-size:100%;flex-shrink:0;white-space:nowrap;text-overflow:ellipsis;color:var(--tui-text-primary)}:host._string{overflow:hidden}:host._string._disabled{opacity:var(--tui-disabled-opacity)}:host._string:after{content:\",\\a0\"}:host:last-of-type{max-inline-size:80%}:host-context(tui-textfield:not([data-focus=\"true\"])):last-of-type:after{display:none}:host-context(tui-textfield:has([tuiSelectLike])):last-of-type:after,:host-context(tui-textfield[data-mode~=\"readonly\"]):last-of-type:after{content:\"\\a0\"}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
238
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
239
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: TuiTextfieldItemComponent, isStandalone: true, selector: "tui-textfield-item", host: { listeners: { "pointerdown.self": "prevent($event)", "keydown.arrowLeft.prevent": "el.previousElementSibling?.firstChild?.focus()", "keydown.arrowRight.prevent": "el.nextElementSibling?.firstChild?.focus()" }, properties: { "class._string": "!textfield.item()", "class._disabled": "handlers.disabledItemHandler()(context.$implicit.item)" } }, ngImport: i0, template: '<ng-container *polymorpheusOutlet="content() as text; context: context">{{ text }}</ng-container>', isInline: true, styles: [":host{max-inline-size:100%;flex-shrink:0;white-space:nowrap;text-overflow:ellipsis;color:var(--tui-text-primary)}:host._string{overflow:hidden}:host._string._disabled{opacity:var(--tui-disabled-opacity)}:host._string:after{content:\",\\a0\"}:host:last-of-type{max-inline-size:80%}:host-context(tui-textfield:not([data-focus=\"true\"])):last-of-type:after{display:none}:host-context(tui-textfield:has([tuiSelectLike])):last-of-type:after,:host-context(tui-textfield[data-mode~=\"readonly\"]):last-of-type:after{content:\"\\a0\"}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
516
240
  }
517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldItemComponent, decorators: [{
241
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldItemComponent, decorators: [{
518
242
  type: Component,
519
- args: [{ standalone: true, selector: 'tui-textfield-item', imports: [PolymorpheusOutlet], template: '<ng-container *polymorpheusOutlet="content as text; context: context">{{ text }}</ng-container>', changeDetection: ChangeDetectionStrategy.Default, host: {
520
- '[class._string]': '!textfield.item',
243
+ args: [{ selector: 'tui-textfield-item', imports: [PolymorpheusOutlet], template: '<ng-container *polymorpheusOutlet="content() as text; context: context">{{ text }}</ng-container>', changeDetection: ChangeDetectionStrategy.Default, host: {
244
+ '[class._string]': '!textfield.item()',
521
245
  '[class._disabled]': 'handlers.disabledItemHandler()(context.$implicit.item)',
522
246
  '(pointerdown.self)': 'prevent($event)',
523
247
  '(keydown.arrowLeft.prevent)': 'el.previousElementSibling?.firstChild?.focus()',
524
248
  '(keydown.arrowRight.prevent)': 'el.nextElementSibling?.firstChild?.focus()',
525
249
  }, styles: [":host{max-inline-size:100%;flex-shrink:0;white-space:nowrap;text-overflow:ellipsis;color:var(--tui-text-primary)}:host._string{overflow:hidden}:host._string._disabled{opacity:var(--tui-disabled-opacity)}:host._string:after{content:\",\\a0\"}:host:last-of-type{max-inline-size:80%}:host-context(tui-textfield:not([data-focus=\"true\"])):last-of-type:after{display:none}:host-context(tui-textfield:has([tuiSelectLike])):last-of-type:after,:host-context(tui-textfield[data-mode~=\"readonly\"]):last-of-type:after{content:\"\\a0\"}\n"] }]
526
250
  }] });
251
+ const TUI_TEXTFIELD_ITEM = new PolymorpheusComponent(TuiTextfieldItemComponent);
527
252
 
528
- class TuiTextfieldMultiComponent extends TuiTextfieldBaseComponent {
253
+ class TuiTextfieldMultiComponent extends TuiTextfieldComponent {
529
254
  constructor() {
530
255
  super(...arguments);
531
256
  this.height = signal(null);
532
257
  this.win = inject(WA_WINDOW);
533
- this.handlers = inject(TUI_ITEMS_HANDLERS$1);
534
- this.component = new PolymorpheusComponent(TuiTextfieldItemComponent);
258
+ this.handlers = inject(TUI_ITEMS_HANDLERS);
259
+ this.component = TUI_TEXTFIELD_ITEM;
535
260
  this.sub = fromEvent(this.el, 'scroll')
536
- .pipe(filter(() => this.rows === 1), tuiZonefree(), takeUntilDestroyed())
261
+ .pipe(filter(() => this.rows() === 1), tuiZonefree(), takeUntilDestroyed())
537
262
  .subscribe(() => {
538
263
  this.el.style.setProperty('--t-scroll', tuiPx(-1 * this.el.scrollLeft));
539
264
  });
540
- this.rows = 100;
265
+ this.cva = contentChild(TuiControl);
266
+ this.item = contentChild(TuiItem, { read: TemplateRef, descendants: true });
267
+ this.rows = input(100);
541
268
  }
542
269
  handleOption(option) {
543
- this.accessor?.setValue(tuiArrayToggle(this.control?.value ?? [], option, this.handlers.identityMatcher()));
270
+ this.accessor()?.setValue(tuiArrayToggle(this.control()?.value ?? [], option, this.handlers.identityMatcher()));
544
271
  }
545
272
  get placeholder() {
546
- const placeholder = this.input?.nativeElement.matches('input')
547
- ? this.input.nativeElement.placeholder
548
- : this.computedFiller();
273
+ const el = this.input()?.nativeElement;
274
+ const placeholder = el?.matches('input') ? el.placeholder : this.computedFiller();
549
275
  const value = this.computedFiller() || this.value();
550
276
  const longer = value.length > placeholder.length ? value : placeholder;
551
277
  return this.focused() ? longer : '';
552
278
  }
553
279
  onItems({ target }) {
554
- const height = this.rows > 1 && this.control?.value?.length
280
+ const height = this.rows() > 1 && this.control()?.value?.length
555
281
  ? (target.querySelector('tui-textfield-item')?.clientHeight ?? 0)
556
282
  : null;
557
283
  if (height !== 0) {
@@ -568,41 +294,39 @@ class TuiTextfieldMultiComponent extends TuiTextfieldBaseComponent {
568
294
  focusInput() {
569
295
  const selection = this.win.getSelection();
570
296
  if (!selection?.rangeCount || selection.getRangeAt(0)?.collapsed) {
571
- this.input?.nativeElement.focus();
297
+ this.input()?.nativeElement.focus();
572
298
  }
573
299
  }
574
300
  onClick(target) {
575
301
  if (target === this.el ||
576
- !this.cva?.interactive() ||
302
+ !this.cva()?.interactive() ||
577
303
  (!this.el.matches('[tuiChevron]') &&
578
304
  !this.el.querySelector('select, [tuiInputDateMulti]')) ||
579
305
  target.matches('input:read-only,input[inputmode="none"]')) {
580
306
  return;
581
307
  }
582
- this.open.update((open) => !open);
308
+ this.open.open.update((open) => !open);
583
309
  try {
584
- this.input?.nativeElement.showPicker?.();
310
+ this.input()?.nativeElement.showPicker?.();
585
311
  }
586
312
  catch {
587
313
  // Empty catch block - silently ignore showPicker errors
588
314
  }
589
315
  }
590
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldMultiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
591
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldMultiComponent, isStandalone: true, selector: "tui-textfield[multi]", inputs: { rows: "rows" }, host: { listeners: { "click.prevent": "onClick($event.target)", "tuiActiveZoneChange": "!$event && (el.scrollTo({left: 0}) || cva?.onTouched())", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)" }, properties: { "attr.data-state": "control?.disabled ? \"disabled\" : null", "class._empty": "!control?.value?.length", "style.--t-item-height.px": "height()", "style.--t-rows": "rows", "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content && control?.value != null", "class._disabled": "input?.nativeElement?.disabled" }, classAttribute: "tui-interactive" }, providers: [
316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldMultiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
317
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: TuiTextfieldMultiComponent, isStandalone: true, selector: "tui-textfield[multi]", inputs: { rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click.prevent": "onClick($event.target)", "tuiActiveZoneChange": "!$event && el.scrollTo({left: 0})" }, properties: { "attr.data-state": "control()?.disabled ? \"disabled\" : null", "class._empty": "!control()?.value?.length", "style.--t-item-height.px": "height()", "style.--t-rows": "rows()" } }, providers: [
592
318
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
593
319
  tuiAsDataListHost(TuiTextfieldMultiComponent),
594
320
  tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),
595
321
  tuiProvide(TUI_SCROLL_REF, ElementRef),
596
- ], queries: [{ propertyName: "item", first: true, predicate: TuiItem, descendants: true, read: TemplateRef }], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownFixed }, { directive: i1.TuiDropdownDirective }, { directive: i1.TuiWithDropdownOpen }, { directive: TuiWithTextfieldDropdown }, { directive: i3.TuiWithIcons }, { directive: i4$1.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: i4$1.TuiWithAppearance }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<tui-scroll-controls\n *ngIf=\"rows > 1\"\n class=\"t-scrollbar\"\n/>\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows === 1\"\n (click)=\"focusInput()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n <ng-template\n *ngFor=\"let item of control?.value; let index = index\"\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index}}\"\n />\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}tui-textfield[multi][multi]{flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior-x:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:before,tui-textfield[multi][multi]:after{position:sticky;top:0;left:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi][tuiChevron]:after{top:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]>.t-items{position:sticky;left:var(--t-start);display:flex;inset-inline-start:var(--t-start);min-inline-size:0;min-block-size:-webkit-fit-content;min-block-size:-moz-fit-content;min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit}tui-textfield[multi][multi]>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]>.t-items:not(tui-textfield[multi][multi]>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]>.t-items>label[tuiLabel]{position:absolute;top:0;inline-size:100%}tui-textfield[multi][multi]>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]>.t-items>.t-input input{position:absolute;left:0;inset-inline-start:0;inline-size:100%;padding:0}tui-textfield[multi][multi]>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]>.t-items>.t-input .t-filler{position:absolute;left:0;inset-inline-start:0;color:var(--tui-text-tertiary);pointer-events:none}tui-textfield[multi][multi]>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]>.t-content{position:sticky;top:0;left:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));inset-inline-start:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]>.t-content .t-clear{display:flex}tui-textfield[multi][multi][data-mode~=invalid]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-negative)}tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-primary)!important}tui-textfield[multi][multi][data-mode~=readonly]>.t-content .t-clear,tui-textfield[multi][multi]._disabled>.t-content .t-clear,tui-textfield[multi][multi]._empty>.t-content .t-clear{display:none}tui-textfield[multi][multi]>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]._empty>.t-items input::placeholder,tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:not(._empty)>.t-items [tuiLabel],tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items [tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi][data-state=disabled],tui-textfield[multi][multi][data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi][data-state=disabled] select,tui-textfield[multi][multi][data-mode~=readonly] select{display:none}tui-textfield[multi][multi][data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi][data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi][data-size=l]:after{left:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding));margin-inline-start:-.75rem}tui-textfield[multi][multi][data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi][data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi][data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi][data-size=m]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=m]:after{left:calc(100% - var(--t-end) - .25rem);inset-inline-start:calc(100% - var(--t-end) - .25rem);margin-inline-start:-.125rem;border-width:.625rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi][data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi][data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi][data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi][data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi][data-size=s]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=s]:after{left:calc(100% - var(--t-end) - .125rem);inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi][data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input::placeholder,tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][data-focus=true] input::placeholder,tui-textfield[multi][multi][data-focus=true] input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input::placeholder,tui-textfield[multi][multi][tuiWrapper]._focused input::placeholder,tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input._empty,tui-textfield[multi][multi][tuiWrapper]._focused input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi] tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi] input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi] select{opacity:0;padding:0;pointer-events:none}tui-textfield[multi][multi]._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:has([tuiSelectLike]){cursor:pointer}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
322
+ ], queries: [{ propertyName: "cva", first: true, predicate: TuiControl, descendants: true, isSignal: true }, { propertyName: "item", first: true, predicate: TuiItem, descendants: true, read: TemplateRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (control()?.control?.valueChanges | async) {}\n@if (rows() > 1) {\n <tui-scroll-controls class=\"t-scrollbar\" />\n}\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows() === 1\"\n (click)=\"focusInput()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n @for (item of control()?.value; track item) {\n <ng-template\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index: $index}}\"\n />\n }\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input()?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n @if (options.cleaner()) {\n <button\n tuiButtonX\n (click)=\"accessor()?.setValue([])\"\n >\n {{ clear() }}\n </button>\n }\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n@if (control()?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control()?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n", styles: ["tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]){scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-body-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-scrollbar,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-scrollbar-thumb{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance]{outline:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]{color:var(--tui-text-tertiary)}@media (hover: hover) and (pointer: fine){tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled):hover:not([data-state]){color:var(--tui-text-secondary)}}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly])[data-state=hover]{color:var(--tui-text-secondary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-icon-start]{--t-start: 2.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-icon-end]{--t-end: 2.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiIcons]:before{z-index:1;block-size:var(--t-height);margin-inline-end:.5rem;pointer-events:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiIcons]:after{position:relative;block-size:var(--t-height);cursor:pointer;border-inline:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template{pointer-events:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s][data-icon-start]{--t-start: 1.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s][data-icon-end]{--t-end: 1.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:before{margin-inline:-.125rem .5rem;font-size:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:after{margin-inline-start:calc(.625rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding));font-size:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-body-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m][data-icon-start]{--t-start: 1.75rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m][data-icon-end]{--t-end: 1.75rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:before{margin-inline:-.125rem .125rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]{--t-label: -.7rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]){pointer-events:none;opacity:var(--tui-disabled-opacity)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]) [tuiAppearance]:is(._disabled,:disabled,[data-state=disabled]){opacity:1}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]) tui-icon{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label>.t-template,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label .t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label [tuiInput]{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template._empty,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]._empty{color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]{position:absolute;inset-block-start:0;inset-inline:0;inline-size:auto;block-size:100%;-webkit-appearance:none;appearance:none;background:none;font:inherit;resize:none;outline:none;color:var(--tui-text-primary);box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side, 0rem) + var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template:is(input,textarea):read-only~.t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler:is(input,textarea):read-only~.t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:is(input,textarea):read-only~.t-filler{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template:disabled,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler:disabled,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:disabled{animation:tuiPresent 1s infinite;opacity:1}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template[inputmode=none],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler[inputmode=none],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][inputmode=none]{caret-color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template{display:flex;block-size:100%;align-items:center}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-template [tuiInput]:first-of-type{color:transparent!important}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:-webkit-autofill [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][chrome-autofilled] [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:not(._empty,:placeholder-shown) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[multi][multi]:not(._empty) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:-webkit-autofill:not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][chrome-autofilled]:not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:not(._empty,:placeholder-shown):not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[multi][multi]:not(._empty):not(tui-textfield)~[tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;-webkit-user-select:none;user-select:none;line-height:var(--t-height);transition-duration:inherit}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]._empty{color:var(--tui-text-secondary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option[value=\"\"]:disabled{color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select optgroup,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option{background-color:var(--tui-background-elevation-3)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select optgroup,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) button,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) a,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) tui-icon{pointer-events:auto}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) textarea~.t-content{min-inline-size:.5rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=readonly],[data-state=disabled],._empty) [tuiButtonX],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]._empty~.t-content [tuiButtonX],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:disabled~.t-content [tuiButtonX]{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler{pointer-events:none!important;color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiFluidTypography]{font-weight:700}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):has(input[type=tel]){direction:ltr}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled) [tuiInput]:not(._empty)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled)[multi]:not(._empty) [tuiLabel]{color:var(--tui-text-negative)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]){flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior-x:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):before,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):after{position:sticky;inset-block-start:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiChevron]:after{inset-block-start:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items{position:sticky;display:flex;inset-inline-start:var(--t-start);min-inline-size:0;max-block-size:var(--t-height);min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit;box-sizing:border-box}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side, 0rem) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items:not(tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>label[tuiLabel]{position:absolute;inset-block-start:0;inline-size:100%}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-filler,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input [tuiInput]{block-size:100%;padding:0;pointer-events:auto}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content{position:sticky;inset-block-start:0;inset-inline-start:calc(100% - var(--t-side, 0rem) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty>.t-items input::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-state=disabled],tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-state=disabled] select,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly] select{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]:after{inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-start:-.75rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:before{inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:after{inset-inline-start:calc(100% - var(--t-end) - .25rem);border-width:.625rem;margin-inline-start:-.125rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:before{inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:after{inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select{opacity:0;pointer-events:none!important}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):has([tuiSelectLike]){cursor:pointer}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButtonX, selector: "[tuiButtonX]" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["waResizeBox"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
597
323
  }
598
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldMultiComponent, decorators: [{
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldMultiComponent, decorators: [{
599
325
  type: Component,
600
- args: [{ standalone: true, selector: 'tui-textfield[multi]', imports: [
326
+ args: [{ selector: 'tui-textfield[multi]', imports: [
601
327
  AsyncPipe,
602
- NgForOf,
603
- NgIf,
604
328
  PolymorpheusOutlet,
605
- TuiButton,
329
+ TuiButtonX,
606
330
  TuiScrollControls,
607
331
  WaResizeObserver,
608
332
  ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -610,47 +334,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
610
334
  tuiAsDataListHost(TuiTextfieldMultiComponent),
611
335
  tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),
612
336
  tuiProvide(TUI_SCROLL_REF, ElementRef),
613
- ], hostDirectives: [
614
- TuiDropdownFixed,
615
- TuiDropdownDirective,
616
- TuiWithDropdownOpen,
617
- TuiWithTextfieldDropdown,
618
- TuiWithIcons,
619
- TuiWithItemsHandlers$1,
620
- TuiWithOptionContent,
621
- TuiWithAppearance,
622
337
  ], host: {
623
- class: 'tui-interactive',
624
- '[attr.data-state]': 'control?.disabled ? "disabled" : null',
625
- '[class._empty]': '!control?.value?.length',
338
+ '[attr.data-state]': 'control()?.disabled ? "disabled" : null',
339
+ '[class._empty]': '!control()?.value?.length',
626
340
  '[style.--t-item-height.px]': 'height()',
627
- '[style.--t-rows]': 'rows',
341
+ '[style.--t-rows]': 'rows()',
628
342
  '(click.prevent)': 'onClick($event.target)',
629
- '(tuiActiveZoneChange)': '!$event && (el.scrollTo({left: 0}) || cva?.onTouched())',
630
- // TODO: Remove in v5
631
- '[attr.data-size]': 'options.size()',
632
- '[class._with-label]': 'hasLabel',
633
- '[class._with-template]': 'content && control?.value != null',
634
- '[class._disabled]': 'input?.nativeElement?.disabled',
635
- '(pointerdown.self.prevent)': 'onIconClick()',
636
- '(scroll.capture.zoneless)': 'onScroll($event.target)',
637
- }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<tui-scroll-controls\n *ngIf=\"rows > 1\"\n class=\"t-scrollbar\"\n/>\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows === 1\"\n (click)=\"focusInput()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n <ng-template\n *ngFor=\"let item of control?.value; let index = index\"\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index}}\"\n />\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}tui-textfield[multi][multi]{flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior-x:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:before,tui-textfield[multi][multi]:after{position:sticky;top:0;left:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi][tuiChevron]:after{top:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]>.t-items{position:sticky;left:var(--t-start);display:flex;inset-inline-start:var(--t-start);min-inline-size:0;min-block-size:-webkit-fit-content;min-block-size:-moz-fit-content;min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit}tui-textfield[multi][multi]>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]>.t-items:not(tui-textfield[multi][multi]>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]>.t-items>label[tuiLabel]{position:absolute;top:0;inline-size:100%}tui-textfield[multi][multi]>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]>.t-items>.t-input input{position:absolute;left:0;inset-inline-start:0;inline-size:100%;padding:0}tui-textfield[multi][multi]>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]>.t-items>.t-input .t-filler{position:absolute;left:0;inset-inline-start:0;color:var(--tui-text-tertiary);pointer-events:none}tui-textfield[multi][multi]>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]>.t-content{position:sticky;top:0;left:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));inset-inline-start:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]>.t-content .t-clear{display:flex}tui-textfield[multi][multi][data-mode~=invalid]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-negative)}tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-primary)!important}tui-textfield[multi][multi][data-mode~=readonly]>.t-content .t-clear,tui-textfield[multi][multi]._disabled>.t-content .t-clear,tui-textfield[multi][multi]._empty>.t-content .t-clear{display:none}tui-textfield[multi][multi]>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]._empty>.t-items input::placeholder,tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:not(._empty)>.t-items [tuiLabel],tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items [tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi][data-state=disabled],tui-textfield[multi][multi][data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi][data-state=disabled] select,tui-textfield[multi][multi][data-mode~=readonly] select{display:none}tui-textfield[multi][multi][data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi][data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi][data-size=l]:after{left:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding));margin-inline-start:-.75rem}tui-textfield[multi][multi][data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi][data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi][data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi][data-size=m]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=m]:after{left:calc(100% - var(--t-end) - .25rem);inset-inline-start:calc(100% - var(--t-end) - .25rem);margin-inline-start:-.125rem;border-width:.625rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi][data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi][data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi][data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi][data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi][data-size=s]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=s]:after{left:calc(100% - var(--t-end) - .125rem);inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi][data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input::placeholder,tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][data-focus=true] input::placeholder,tui-textfield[multi][multi][data-focus=true] input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input::placeholder,tui-textfield[multi][multi][tuiWrapper]._focused input::placeholder,tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input._empty,tui-textfield[multi][multi][tuiWrapper]._focused input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi] tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi] input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi] select{opacity:0;padding:0;pointer-events:none}tui-textfield[multi][multi]._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:has([tuiSelectLike]){cursor:pointer}\n"] }]
638
- }], propDecorators: { item: [{
639
- type: ContentChild,
640
- args: [TuiItem, { read: TemplateRef, descendants: true }]
641
- }], rows: [{
642
- type: Input
643
- }] } });
343
+ '(tuiActiveZoneChange)': '!$event && el.scrollTo({left: 0})',
344
+ }, template: "@if (control()?.control?.valueChanges | async) {}\n@if (rows() > 1) {\n <tui-scroll-controls class=\"t-scrollbar\" />\n}\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows() === 1\"\n (click)=\"focusInput()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n @for (item of control()?.value; track item) {\n <ng-template\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index: $index}}\"\n />\n }\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input()?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n @if (options.cleaner()) {\n <button\n tuiButtonX\n (click)=\"accessor()?.setValue([])\"\n >\n {{ clear() }}\n </button>\n }\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n@if (control()?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control()?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n", styles: ["tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]){scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-body-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-scrollbar,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-scrollbar-thumb{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance]{outline:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]{color:var(--tui-text-tertiary)}@media (hover: hover) and (pointer: fine){tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled):hover:not([data-state]){color:var(--tui-text-secondary)}}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiAppearance][data-appearance=\"\"]:not([data-mode~=readonly])[data-state=hover]{color:var(--tui-text-secondary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-icon-start]{--t-start: 2.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-icon-end]{--t-end: 2.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiIcons]:before{z-index:1;block-size:var(--t-height);margin-inline-end:.5rem;pointer-events:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiIcons]:after{position:relative;block-size:var(--t-height);cursor:pointer;border-inline:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template{pointer-events:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s][data-icon-start]{--t-start: 1.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s][data-icon-end]{--t-end: 1.25rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:before{margin-inline:-.125rem .5rem;font-size:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:after{margin-inline-start:calc(.625rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding));font-size:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-body-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-ui-s);line-height:1rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m][data-icon-start]{--t-start: 1.75rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m][data-icon-end]{--t-end: 1.75rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:before{margin-inline:-.125rem .125rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]{--t-label: -.7rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]){pointer-events:none;opacity:var(--tui-disabled-opacity)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]) [tuiAppearance]:is(._disabled,:disabled,[data-state=disabled]){opacity:1}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is(._disabled,[data-state=disabled]) tui-icon{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label>.t-template,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label .t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label [tuiInput]{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly])>.t-template._empty,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-label:is(:not([data-focus=true]),[data-mode~=readonly]) [tuiInput]._empty{color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]{position:absolute;inset-block-start:0;inset-inline:0;inline-size:auto;block-size:100%;-webkit-appearance:none;appearance:none;background:none;font:inherit;resize:none;outline:none;color:var(--tui-text-primary);box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side, 0rem) + var(--t-padding))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template:is(input,textarea):read-only~.t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler:is(input,textarea):read-only~.t-filler,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:is(input,textarea):read-only~.t-filler{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template:disabled,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler:disabled,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:disabled{animation:tuiPresent 1s infinite;opacity:1}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template[inputmode=none],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler[inputmode=none],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][inputmode=none]{caret-color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-template{display:flex;block-size:100%;align-items:center}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._with-template [tuiInput]:first-of-type{color:transparent!important}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:-webkit-autofill [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][chrome-autofilled] [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:not(._empty,:placeholder-shown) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[multi][multi]:not(._empty) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:-webkit-autofill:not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput][chrome-autofilled]:not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:not(._empty,:placeholder-shown):not(tui-textfield)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[multi][multi]:not(._empty):not(tui-textfield)~[tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;-webkit-user-select:none;user-select:none;line-height:var(--t-height);transition-duration:inherit}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]._empty{color:var(--tui-text-secondary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option[value=\"\"]:disabled{color:transparent}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select optgroup,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option{background-color:var(--tui-background-elevation-3)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select optgroup,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) button,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) a,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) tui-icon{pointer-events:auto}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) textarea~.t-content{min-inline-size:.5rem}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=readonly],[data-state=disabled],._empty) [tuiButtonX],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]._empty~.t-content [tuiButtonX],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiInput]:disabled~.t-content [tuiButtonX]{display:none}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) .t-filler{pointer-events:none!important;color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiFluidTypography]{font-weight:700}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):has(input[type=tel]){direction:ltr}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled) [tuiInput]:not(._empty)~[tuiLabel],tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):is([data-mode~=invalid],.tui-invalid,:invalid):not([data-mode~=readonly],[data-mode~=valid],[data-state=disabled],:disabled,._disabled)[multi]:not(._empty) [tuiLabel]{color:var(--tui-text-negative)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly]):focus-visible:not([data-focus=false]) [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiInput]::placeholder,tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiInput]._empty{color:var(--tui-text-tertiary)}tui-textfield:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):not([data-mode~=readonly])[data-focus=true] [tuiLabel]{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]){flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior-x:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):before,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):after{position:sticky;inset-block-start:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[tuiChevron]:after{inset-block-start:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items{position:sticky;display:flex;inset-inline-start:var(--t-start);min-inline-size:0;max-block-size:var(--t-height);min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit;box-sizing:border-box}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side, 0rem) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items:not(tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>label[tuiLabel]{position:absolute;inset-block-start:0;inline-size:100%}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-filler,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input [tuiInput]{block-size:100%;padding:0;pointer-events:auto}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-content{position:sticky;inset-block-start:0;inset-inline-start:calc(100% - var(--t-side, 0rem) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty>.t-items input::placeholder,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-state=disabled],tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-state=disabled] select,tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-mode~=readonly] select{display:none}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]:after{inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-start:-.75rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:before{inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]:after{inset-inline-start:calc(100% - var(--t-end) - .25rem);border-width:.625rem;margin-inline-start:-.125rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:before{inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]:after{inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])[data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]) select{opacity:0;pointer-events:none!important}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"])._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:where(*[data-tui-version=\"5.0.0-canary.0dce162\"]):has([tuiSelectLike]){cursor:pointer}\n"] }]
345
+ }] });
644
346
 
645
347
  const TuiTextfield = [
646
348
  TuiItem,
647
349
  TuiLabel,
648
- TuiSelect,
649
350
  TuiTextfieldComponent,
650
- TuiTextfieldDirective,
651
351
  TuiTextfieldOptionsDirective,
652
- TuiTextfieldDropdownDirective,
653
352
  TuiTextfieldMultiComponent,
353
+ TuiDropdownContent,
654
354
  ];
655
355
 
656
356
  function tuiInjectAuxiliary(predicate) {
@@ -660,26 +360,28 @@ function tuiInjectAuxiliary(predicate) {
660
360
 
661
361
  class TuiTextfieldContent {
662
362
  constructor() {
663
- this.ref = inject(TuiTextfieldComponent).vcr?.createEmbeddedView(inject(TemplateRef));
363
+ this.ref = inject(TuiTextfieldComponent)
364
+ .vcr()
365
+ ?.createEmbeddedView(inject(TemplateRef));
664
366
  }
665
367
  ngDoCheck() {
666
368
  this.ref?.detectChanges();
667
369
  }
668
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
669
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldContent, isStandalone: true, selector: "ng-template[tuiTextfieldContent]", ngImport: i0 }); }
370
+ ngOnDestroy() {
371
+ this.ref?.destroy();
372
+ }
373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
374
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: TuiTextfieldContent, isStandalone: true, selector: "ng-template[tuiTextfieldContent]", ngImport: i0 }); }
670
375
  }
671
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldContent, decorators: [{
376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiTextfieldContent, decorators: [{
672
377
  type: Directive,
673
- args: [{
674
- standalone: true,
675
- selector: 'ng-template[tuiTextfieldContent]',
676
- }]
378
+ args: [{ selector: 'ng-template[tuiTextfieldContent]' }]
677
379
  }] });
678
380
 
679
- function tuiTextfieldIconBinding(token) {
680
- const textfield = inject(TUI_TEXTFIELD_OPTIONS);
681
- const options = inject(token);
682
- return tuiDirectiveBinding(TuiIcons, 'iconEnd', computed(() => options.icon(textfield.size())), {});
381
+ function tuiTextfieldIcon(token) {
382
+ const { size } = inject(TUI_TEXTFIELD_OPTIONS);
383
+ const { icon } = inject(token);
384
+ return tuiIconEnd(computed(() => icon(size())), {});
683
385
  }
684
386
 
685
387
  /**
@@ -694,17 +396,16 @@ class TuiWithNativePicker {
694
396
  constructor() {
695
397
  tuiInjectElement().type = 'text';
696
398
  }
697
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithNativePicker, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
698
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiWithNativePicker, isStandalone: true, ngImport: i0 }); }
399
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiWithNativePicker, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
400
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: TuiWithNativePicker, isStandalone: true, ngImport: i0 }); }
699
401
  }
700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiWithNativePicker, decorators: [{
701
- type: Directive,
702
- args: [{ standalone: true }]
703
- }], ctorParameters: function () { return []; } });
402
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiWithNativePicker, decorators: [{
403
+ type: Directive
404
+ }], ctorParameters: () => [] });
704
405
 
705
406
  /**
706
407
  * Generated bundle index. Do not edit.
707
408
  */
708
409
 
709
- export { TUI_TEXTFIELD_ACCESSOR, TUI_TEXTFIELD_OPTIONS, TuiSelect, TuiSelectLike, TuiTextfield, TuiTextfieldBase, TuiTextfieldBaseComponent, TuiTextfieldComponent, TuiTextfieldContent, TuiTextfieldDirective, TuiTextfieldDropdownDirective, TuiTextfieldItemComponent, TuiTextfieldMultiComponent, TuiTextfieldOptionsDirective, TuiWithNativePicker, TuiWithTextfield, TuiWithTextfieldDropdown, tuiAsTextfieldAccessor, tuiInjectAuxiliary, tuiTextfieldIconBinding, tuiTextfieldOptionsProvider };
410
+ export { TUI_TEXTFIELD_ACCESSOR, TUI_TEXTFIELD_ITEM, TUI_TEXTFIELD_OPTIONS, TuiSelectLike, TuiTextfield, TuiTextfieldComponent, TuiTextfieldContent, TuiTextfieldItemComponent, TuiTextfieldMultiComponent, TuiTextfieldOptionsDirective, TuiWithNativePicker, tuiAsTextfieldAccessor, tuiInjectAuxiliary, tuiTextfieldIcon, tuiTextfieldOptionsProvider };
710
411
  //# sourceMappingURL=taiga-ui-core-components-textfield.mjs.map