@taiga-ui/core 4.52.0-canary.46625cf → 4.52.0-canary.49575ff

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 (312) hide show
  1. package/README.md +1 -1
  2. package/classes/accessors.d.ts +2 -2
  3. package/components/calendar/calendar-sheet.component.d.ts +1 -1
  4. package/components/calendar/calendar-sheet.options.d.ts +1 -3
  5. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +2 -2
  6. package/components/calendar/calendar-spin.component.d.ts +1 -0
  7. package/components/calendar/calendar-year.component.d.ts +1 -1
  8. package/components/calendar/calendar.options.d.ts +9 -0
  9. package/components/calendar/index.d.ts +3 -0
  10. package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +1 -1
  11. package/components/data-list/data-list.component.d.ts +8 -12
  12. package/components/data-list/data-list.d.ts +3 -4
  13. package/components/data-list/data-list.tokens.d.ts +1 -23
  14. package/components/data-list/index.d.ts +3 -4
  15. package/components/data-list/opt-group.directive.d.ts +2 -2
  16. package/components/data-list/option-content.directive.d.ts +14 -0
  17. package/components/data-list/option-with-value.directive.d.ts +9 -0
  18. package/components/data-list/option.directive.d.ts +19 -0
  19. package/components/error/error.component.d.ts +1 -1
  20. package/components/icon/icon.component.d.ts +2 -2
  21. package/components/index.d.ts +2 -3
  22. package/components/input/index.d.ts +2 -0
  23. package/components/input/input.d.ts +5 -0
  24. package/components/input/input.directive.d.ts +30 -0
  25. package/components/label/label.directive.d.ts +1 -1
  26. package/components/link/index.d.ts +0 -1
  27. package/components/link/link.directive.d.ts +8 -6
  28. package/components/loader/loader.component.d.ts +7 -7
  29. package/components/loader/loader.options.d.ts +1 -3
  30. package/components/notification/index.d.ts +3 -0
  31. package/components/notification/notification.component.d.ts +14 -0
  32. package/components/notification/notification.d.ts +3 -0
  33. package/components/notification/notification.directive.d.ts +7 -12
  34. package/components/notification/notification.options.d.ts +10 -7
  35. package/components/notification/notification.service.d.ts +17 -0
  36. package/components/root/root.component.d.ts +1 -1
  37. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  38. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  39. package/components/scrollbar/scrollbar.component.d.ts +1 -5
  40. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  41. package/components/spin-button/spin-button.component.d.ts +9 -10
  42. package/components/textfield/index.d.ts +0 -1
  43. package/components/textfield/textfield-multi/textfield-item.component.d.ts +3 -2
  44. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +10 -14
  45. package/components/textfield/textfield.component.d.ts +23 -36
  46. package/components/textfield/textfield.d.ts +2 -3
  47. package/components/textfield/textfield.options.d.ts +8 -11
  48. package/directives/date-format/date-format.directive.d.ts +3 -7
  49. package/directives/group/group.directive.d.ts +7 -7
  50. package/directives/group/group.options.d.ts +1 -3
  51. package/directives/index.d.ts +0 -4
  52. package/directives/items-handlers/items-handlers.directive.d.ts +5 -9
  53. package/directives/items-handlers/items-handlers.tokens.d.ts +4 -4
  54. package/directives/number-format/number-format.directive.d.ts +3 -7
  55. package/fesm2022/taiga-ui-core-classes.mjs +9 -11
  56. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  57. package/fesm2022/taiga-ui-core-components-button.mjs +7 -7
  58. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-core-components-calendar.mjs +139 -35
  60. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  61. package/fesm2022/taiga-ui-core-components-cell.mjs +7 -7
  62. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-core-components-data-list.mjs +111 -280
  64. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-core-components-error.mjs +14 -13
  66. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  67. package/fesm2022/taiga-ui-core-components-expand.mjs +3 -3
  68. package/fesm2022/taiga-ui-core-components-icon.mjs +10 -11
  69. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-core-components-input.mjs +104 -0
  71. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -0
  72. package/fesm2022/taiga-ui-core-components-label.mjs +11 -13
  73. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  74. package/fesm2022/taiga-ui-core-components-link.mjs +14 -31
  75. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-core-components-loader.mjs +16 -34
  77. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-core-components-notification.mjs +104 -49
  79. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-core-components-root.mjs +9 -14
  81. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +68 -82
  83. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-core-components-spin-button.mjs +18 -31
  85. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-core-components-textfield.mjs +124 -327
  87. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  88. package/fesm2022/{taiga-ui-core-directives-title.mjs → taiga-ui-core-components-title.mjs} +8 -8
  89. package/fesm2022/{taiga-ui-core-directives-title.mjs.map → taiga-ui-core-components-title.mjs.map} +1 -1
  90. package/fesm2022/taiga-ui-core-components.mjs +2 -3
  91. package/fesm2022/taiga-ui-core-components.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-core-directives-appearance.mjs +16 -16
  93. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-core-directives-date-format.mjs +26 -20
  95. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-core-directives-group.mjs +23 -35
  97. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-core-directives-icons.mjs +12 -12
  99. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +18 -42
  101. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-core-directives-number-format.mjs +32 -20
  103. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  104. package/fesm2022/taiga-ui-core-directives.mjs +0 -4
  105. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  106. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -15
  107. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  108. package/fesm2022/taiga-ui-core-pipes.mjs +0 -7
  109. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  110. package/fesm2022/taiga-ui-core-portals-alert.mjs +73 -0
  111. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  112. package/fesm2022/taiga-ui-core-portals-dialog.mjs +158 -0
  113. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  114. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +171 -302
  115. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  116. package/fesm2022/{taiga-ui-core-directives-hint.mjs → taiga-ui-core-portals-hint.mjs} +145 -235
  117. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  118. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  119. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  120. package/fesm2022/{taiga-ui-core-directives-popup.mjs → taiga-ui-core-portals-popup.mjs} +12 -13
  121. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  122. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  123. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  124. package/fesm2022/taiga-ui-core-services.mjs +15 -79
  125. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-core-tokens.mjs +51 -60
  127. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -22
  129. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +20 -20
  131. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-core.mjs +1 -1
  133. package/index.d.ts +1 -1
  134. package/package.json +67 -89
  135. package/pipes/format-number/format-number.pipe.d.ts +6 -4
  136. package/pipes/index.d.ts +0 -7
  137. package/portals/alert/alert.directive.d.ts +11 -0
  138. package/portals/alert/alert.service.d.ts +12 -0
  139. package/portals/alert/index.d.ts +2 -0
  140. package/{components → portals}/dialog/dialog.component.d.ts +3 -4
  141. package/portals/dialog/dialog.directive.d.ts +8 -0
  142. package/{components → portals}/dialog/dialog.options.d.ts +2 -3
  143. package/{components → portals}/dialog/dialog.providers.d.ts +1 -2
  144. package/portals/dialog/dialog.service.d.ts +10 -0
  145. package/{components → portals}/dialog/index.d.ts +0 -1
  146. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  147. package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +1 -3
  148. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  149. package/portals/dropdown/dropdown-open.directive.d.ts +30 -0
  150. package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +0 -4
  151. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  152. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +5 -5
  153. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  154. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  155. package/{directives → portals}/dropdown/dropdown.d.ts +1 -2
  156. package/{directives → portals}/dropdown/dropdown.directive.d.ts +6 -8
  157. package/{directives → portals}/dropdown/index.d.ts +0 -1
  158. package/{directives → portals}/hint/hint-describe.directive.d.ts +4 -6
  159. package/{directives → portals}/hint/hint-host.directive.d.ts +2 -2
  160. package/{directives → portals}/hint/hint-hover.directive.d.ts +3 -4
  161. package/{directives → portals}/hint/hint-manual.directive.d.ts +2 -2
  162. package/{directives → portals}/hint/hint-overflow.directive.d.ts +2 -2
  163. package/{directives → portals}/hint/hint-position.directive.d.ts +6 -7
  164. package/{directives → portals}/hint/hint-unstyled.component.d.ts +2 -7
  165. package/{directives → portals}/hint/hint.component.d.ts +7 -6
  166. package/portals/hint/hint.directive.d.ts +24 -0
  167. package/{directives → portals}/hint/index.d.ts +0 -2
  168. package/portals/index.d.ts +6 -0
  169. package/portals/modal/index.d.ts +2 -0
  170. package/portals/modal/modal.component.d.ts +17 -0
  171. package/portals/modal/modal.service.d.ts +13 -0
  172. package/services/index.d.ts +0 -3
  173. package/styles/components/appearance.less +5 -0
  174. package/styles/components/button.less +10 -20
  175. package/styles/components/icon.less +11 -0
  176. package/styles/components/icons.less +2 -1
  177. package/styles/components/label.less +3 -12
  178. package/styles/components/link.less +9 -24
  179. package/styles/components/notification.less +21 -22
  180. package/styles/components/textfield.less +35 -68
  181. package/styles/components/title.less +8 -8
  182. package/styles/mixins/appearance.less +10 -26
  183. package/styles/mixins/appearance.scss +8 -24
  184. package/styles/mixins/date-picker.less +1 -1
  185. package/styles/mixins/mixins.less +0 -13
  186. package/styles/mixins/mixins.scss +0 -13
  187. package/styles/mixins/picker.less +1 -1
  188. package/styles/mixins/picker.scss +1 -1
  189. package/styles/mixins/slider.less +1 -1
  190. package/styles/mixins/slider.scss +2 -3
  191. package/styles/taiga-ui-local.less +0 -1
  192. package/styles/taiga-ui-local.scss +0 -1
  193. package/styles/taiga-ui-theme.less +0 -1
  194. package/styles/theme/appearance/outline.less +9 -18
  195. package/styles/theme/appearance/primary.less +2 -4
  196. package/styles/theme/appearance/secondary.less +6 -14
  197. package/styles/theme/appearance/status.less +0 -4
  198. package/styles/theme/appearance/table.less +38 -31
  199. package/styles/theme/appearance.less +0 -1
  200. package/styles/theme/variables.less +18 -19
  201. package/tokens/breakpoint.d.ts +4 -0
  202. package/tokens/common-icons.d.ts +3 -3
  203. package/tokens/date-format.d.ts +2 -3
  204. package/tokens/i18n.d.ts +7 -7
  205. package/tokens/icons.d.ts +0 -4
  206. package/tokens/index.d.ts +1 -4
  207. package/tokens/number-format.d.ts +2 -3
  208. package/types/index.d.ts +0 -3
  209. package/types/point.d.ts +1 -1
  210. package/types/size.d.ts +0 -11
  211. package/utils/format/index.d.ts +0 -1
  212. package/utils/miscellaneous/font-scaling.d.ts +2 -1
  213. package/utils/miscellaneous/get-duration.d.ts +2 -0
  214. package/utils/miscellaneous/index.d.ts +1 -1
  215. package/animations/animations.d.ts +0 -109
  216. package/animations/index.d.ts +0 -1
  217. package/components/alert/alert.component.d.ts +0 -13
  218. package/components/alert/alert.directive.d.ts +0 -8
  219. package/components/alert/alert.interfaces.d.ts +0 -14
  220. package/components/alert/alert.service.d.ts +0 -10
  221. package/components/alert/alert.tokens.d.ts +0 -5
  222. package/components/alert/index.d.ts +0 -5
  223. package/components/data-list/data-list.directive.d.ts +0 -7
  224. package/components/data-list/option/option-content.d.ts +0 -16
  225. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  226. package/components/data-list/option/option.directive.d.ts +0 -27
  227. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  228. package/components/dialog/dialog.directive.d.ts +0 -7
  229. package/components/dialog/dialog.service.d.ts +0 -7
  230. package/components/dialog/dialogs.component.d.ts +0 -8
  231. package/components/header/header.directive.d.ts +0 -17
  232. package/components/header/index.d.ts +0 -1
  233. package/components/link/link.options.d.ts +0 -12
  234. package/components/textfield/textfield.directive.d.ts +0 -38
  235. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  236. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  237. package/directives/hint/hint.directive.d.ts +0 -26
  238. package/directives/hint/hint.service.d.ts +0 -13
  239. package/directives/hint/hints.component.d.ts +0 -12
  240. package/fesm2022/taiga-ui-core-animations.mjs +0 -370
  241. package/fesm2022/taiga-ui-core-animations.mjs.map +0 -1
  242. package/fesm2022/taiga-ui-core-components-alert.mjs +0 -112
  243. package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
  244. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -215
  245. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  246. package/fesm2022/taiga-ui-core-components-header.mjs +0 -42
  247. package/fesm2022/taiga-ui-core-components-header.mjs.map +0 -1
  248. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  249. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  250. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  251. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -25
  252. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  253. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -94
  254. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  255. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -32
  256. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  257. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -28
  258. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  259. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -29
  260. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  261. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -29
  262. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  263. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -36
  264. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  265. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  266. package/pipes/auto-color/index.d.ts +0 -1
  267. package/pipes/calendar-sheet/index.d.ts +0 -1
  268. package/pipes/calendar-sheet/utils.d.ts +0 -20
  269. package/pipes/flag/flag.pipe.d.ts +0 -14
  270. package/pipes/flag/index.d.ts +0 -1
  271. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  272. package/pipes/format-date/index.d.ts +0 -1
  273. package/pipes/initials/index.d.ts +0 -1
  274. package/pipes/initials/initials.pipe.d.ts +0 -7
  275. package/pipes/month/index.d.ts +0 -1
  276. package/pipes/month/month.pipe.d.ts +0 -10
  277. package/pipes/order-week-days/index.d.ts +0 -1
  278. package/services/breakpoint.service.d.ts +0 -16
  279. package/services/dark-theme.service.d.ts +0 -10
  280. package/services/format-date.service.d.ts +0 -8
  281. package/styles/mixins/wrapper.less +0 -64
  282. package/styles/mixins/wrapper.scss +0 -61
  283. package/styles/theme/appearance/opposite.less +0 -17
  284. package/styles/theme/wrapper.less +0 -211
  285. package/tokens/day-type-handler.d.ts +0 -7
  286. package/tokens/first-day-of-week.d.ts +0 -5
  287. package/tokens/scroll-ref.d.ts +0 -2
  288. package/tokens/spin-icons.d.ts +0 -6
  289. package/types/portal-item.d.ts +0 -9
  290. package/types/range-state.d.ts +0 -4
  291. package/types/value-content-context.d.ts +0 -4
  292. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  293. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  294. /package/{directives → components}/title/index.d.ts +0 -0
  295. /package/{directives → components}/title/title.directive.d.ts +0 -0
  296. /package/{components → portals}/dialog/dialog.factory.d.ts +0 -0
  297. /package/{directives → portals}/dropdown/dropdown-content.directive.d.ts +0 -0
  298. /package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -0
  299. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  300. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  301. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  302. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  303. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  304. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  305. /package/{directives → portals}/hint/hint-options.directive.d.ts +0 -0
  306. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  307. /package/{directives → portals}/hint/hint.d.ts +0 -0
  308. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  309. /package/{directives → portals}/popup/index.d.ts +0 -0
  310. /package/{directives → portals}/popup/popup.directive.d.ts +0 -0
  311. /package/{directives → portals}/popup/popup.service.d.ts +0 -0
  312. /package/{directives → portals}/popup/popups.component.d.ts +0 -0
@@ -6,8 +6,8 @@ tui-textfield {
6
6
 
7
7
  --t-height: var(--tui-height-l);
8
8
  --t-padding: var(--tui-padding-l);
9
- --t-label: -0.7em;
10
- --t-label-size: 0.83em;
9
+ --t-label-y: -0.75rem;
10
+ --t-label-font: var(--tui-font-body-s);
11
11
  --t-end: ~'0rem';
12
12
  --t-start: ~'0rem';
13
13
 
@@ -19,7 +19,7 @@ tui-textfield {
19
19
  min-block-size: var(--t-height);
20
20
  padding: 0 var(--t-padding);
21
21
  border-radius: var(--tui-radius-l);
22
- font: var(--tui-font-text-ui-m);
22
+ font: var(--tui-font-ui-m);
23
23
  line-height: 1.25rem;
24
24
  box-sizing: border-box;
25
25
  gap: 0 0.25rem;
@@ -30,11 +30,11 @@ tui-textfield {
30
30
  color: var(--tui-text-tertiary);
31
31
  }
32
32
 
33
- &[style*='--t-icon-start:'] {
33
+ &[data-icon-start] {
34
34
  --t-start: 2.25rem;
35
35
  }
36
36
 
37
- &[style*='--t-icon-end:'] {
37
+ &[data-icon-end] {
38
38
  --t-end: 2.25rem;
39
39
  }
40
40
 
@@ -42,8 +42,7 @@ tui-textfield {
42
42
  position: relative;
43
43
  block-size: auto;
44
44
  align-self: stretch;
45
- border-inline-start: var(--t-padding) solid transparent;
46
- border-inline-end: var(--t-padding) solid transparent;
45
+ border-inline: var(--t-padding) solid transparent;
47
46
  margin: 0 calc(-1 * var(--t-padding));
48
47
  }
49
48
 
@@ -80,8 +79,7 @@ tui-textfield {
80
79
  font: inherit;
81
80
  resize: none;
82
81
  outline: none;
83
- padding-block-start: 1.125rem;
84
- padding-block-end: 1.125rem;
82
+ padding-block: 1.125rem;
85
83
  color: var(--tui-text-primary);
86
84
 
87
85
  &[inputmode='none'] {
@@ -95,34 +93,31 @@ tui-textfield {
95
93
 
96
94
  border-radius: var(--tui-radius-m);
97
95
  gap: 0;
98
- font: var(--tui-font-text-ui-s);
96
+ font: var(--tui-font-ui-s);
99
97
  line-height: 1rem;
100
98
 
101
- &[style*='--t-icon-start:'] {
99
+ &[data-icon-start] {
102
100
  --t-start: 1.25rem;
103
101
  }
104
102
 
105
- &[style*='--t-icon-end:'] {
103
+ &[data-icon-end] {
106
104
  --t-end: 1.25rem;
107
105
  }
108
106
 
109
107
  &::before {
110
- margin-inline-end: 0.5rem;
111
- margin-inline-start: -0.125rem;
108
+ margin-inline: -0.125rem 0.5rem;
112
109
  font-size: 1rem;
113
110
  }
114
111
 
115
112
  &::after {
116
- margin-inline-end: calc(-0.125rem - var(--t-padding));
117
- margin-inline-start: calc(0.625rem - var(--t-padding));
113
+ margin-inline: calc(0.625rem - var(--t-padding)) calc(-0.125rem - var(--t-padding));
118
114
  font-size: 1rem;
119
115
  }
120
116
 
121
117
  input,
122
118
  select,
123
119
  textarea {
124
- padding-block-start: 0.5rem;
125
- padding-block-end: 0.5rem;
120
+ padding-block: 0.5rem;
126
121
  }
127
122
 
128
123
  & > .t-content {
@@ -133,34 +128,33 @@ tui-textfield {
133
128
  &[data-size='m'] {
134
129
  --t-height: var(--tui-height-m);
135
130
  --t-padding: var(--tui-padding-m);
131
+ --t-label-font: var(--tui-font-body-xs);
132
+ --t-label-y: -0.5625rem;
136
133
 
137
134
  border-radius: var(--tui-radius-m);
138
- font: var(--tui-font-text-ui-s);
135
+ font: var(--tui-font-ui-s);
139
136
  line-height: 1rem;
140
137
 
141
- &[style*='--t-icon-start:'] {
138
+ &[data-icon-start] {
142
139
  --t-start: 1.75rem;
143
140
  }
144
141
 
145
- &[style*='--t-icon-end:'] {
142
+ &[data-icon-end] {
146
143
  --t-end: 1.75rem;
147
144
  }
148
145
 
149
146
  &::before {
150
- margin-inline-start: -0.125rem;
151
- margin-inline-end: 0.125rem;
147
+ margin-inline: -0.125rem 0.125rem;
152
148
  }
153
149
 
154
150
  &::after {
155
- margin-inline-start: calc(0.25rem - var(--t-padding));
156
- margin-inline-end: calc(-0.125rem - var(--t-padding));
151
+ margin-inline: calc(0.25rem - var(--t-padding)) calc(-0.125rem - var(--t-padding));
157
152
  }
158
153
 
159
154
  input,
160
155
  select,
161
156
  textarea {
162
- padding-block-start: 0.875rem;
163
- padding-block-end: 0.875rem;
157
+ padding-block: 0.875rem;
164
158
  }
165
159
 
166
160
  & > .t-content {
@@ -209,36 +203,12 @@ tui-textfield {
209
203
  opacity: var(--tui-disabled-opacity);
210
204
  }
211
205
 
212
- &:has(label:not(:empty)) {
213
- & > .t-template,
214
- input:not([type='range']),
215
- select:defined,
216
- textarea:defined {
217
- padding-block-start: calc(var(--t-height) / 3);
218
- padding-block-end: 0;
219
- }
220
- }
221
-
222
- &:not([data-focus='true']):has(label:not(:empty)) {
223
- & > .t-template,
224
- input:not([type='range']),
225
- select:defined,
226
- textarea:defined {
227
- &::placeholder,
228
- &._empty {
229
- color: transparent;
230
- }
231
- }
232
- }
233
-
234
- // TODO: Fallback until Safari 15.4
235
206
  &._with-label {
236
207
  & > .t-template,
237
208
  input:not([type='range']),
238
209
  select:defined,
239
210
  textarea:defined {
240
- padding-block-start: calc(var(--t-height) / 3);
241
- padding-block-end: 0;
211
+ padding-block: calc(var(--t-height) / 3) 0;
242
212
  }
243
213
  }
244
214
 
@@ -266,8 +236,12 @@ tui-textfield {
266
236
  border-width: 0;
267
237
  overscroll-behavior: none;
268
238
  // StackBlitz changes "0rem" to "0" breaking calc
269
- padding-inline-start: calc(var(--t-start, ~'0rem') + var(--t-padding));
270
- padding-inline-end: calc(var(--t-end, ~'0rem') + var(--t-side) + var(--t-padding));
239
+ padding-inline: calc(var(--t-start, ~'0rem') + var(--t-padding))
240
+ calc(var(--t-end, ~'0rem') + var(--t-side, ~'0rem') + var(--t-padding));
241
+
242
+ &:disabled {
243
+ animation: tuiPresent 1s infinite;
244
+ }
271
245
  }
272
246
 
273
247
  & > .t-template {
@@ -288,7 +262,6 @@ tui-textfield {
288
262
  pointer-events: auto;
289
263
  background: none;
290
264
 
291
- // TODO: Remove :not when we drop old select tuiTextfield in v5
292
265
  &:not(select):read-only ~ .t-filler {
293
266
  display: none;
294
267
  }
@@ -307,8 +280,9 @@ tui-textfield {
307
280
  &:-webkit-autofill,
308
281
  &:not(._empty):not(:placeholder-shown) {
309
282
  & ~ label {
310
- font-size: var(--t-label-size);
311
- transform: translateY(var(--t-label));
283
+ font: var(--t-label-font);
284
+ line-height: var(--t-height);
285
+ transform: translateY(var(--t-label-y));
312
286
  }
313
287
 
314
288
  &:not(:disabled)[data-mode~='invalid'] ~ label,
@@ -330,19 +304,12 @@ tui-textfield {
330
304
 
331
305
  & ~ label {
332
306
  color: var(--tui-text-primary) !important;
333
- font-size: var(--t-label-size);
334
- transform: translateY(var(--t-label));
307
+ font: var(--t-label-font);
308
+ line-height: var(--t-height);
309
+ transform: translateY(var(--t-label-y));
335
310
  }
336
311
  });
337
312
  }
338
-
339
- // @deprecated remove in v5
340
- .ios-only({
341
- &._ios-fix {
342
- position: fixed;
343
- left: 1000rem;
344
- }
345
- });
346
313
  }
347
314
 
348
315
  // Increasing specificity to override all other styles
@@ -420,7 +387,7 @@ tui-textfield {
420
387
  }
421
388
 
422
389
  & > .t-filler:defined {
423
- pointer-events: none;
390
+ pointer-events: none !important;
424
391
  color: var(--tui-text-tertiary);
425
392
  opacity: 1;
426
393
  }
@@ -26,32 +26,32 @@
26
26
  text-align: start;
27
27
  gap: 0.25rem;
28
28
  margin: 0;
29
- font: var(--tui-font-text-ui-m);
29
+ font: var(--tui-font-ui-m);
30
30
 
31
31
  &[data-size='s'] {
32
32
  gap: 0.125rem;
33
- font: var(--tui-font-text-s);
33
+ font: var(--tui-font-body-s);
34
34
 
35
35
  [tuiSubtitle] {
36
- font: var(--tui-font-text-xs);
36
+ font: var(--tui-font-body-xs);
37
37
  }
38
38
  }
39
39
 
40
40
  &[data-size='m'] {
41
41
  gap: 0.125rem;
42
- font: var(--tui-font-heading-5);
42
+ font: var(--tui-font-heading-h5);
43
43
 
44
44
  [tuiSubtitle] {
45
- font: var(--tui-font-text-m);
45
+ font: var(--tui-font-body-m);
46
46
  }
47
47
  }
48
48
 
49
49
  &[data-size='l'] {
50
50
  gap: 0.5rem;
51
- font: var(--tui-font-heading-3);
51
+ font: var(--tui-font-heading-h3);
52
52
 
53
53
  [tuiSubtitle] {
54
- font: var(--tui-font-text-m);
54
+ font: var(--tui-font-body-m);
55
55
  }
56
56
  }
57
57
 
@@ -67,7 +67,7 @@
67
67
  }
68
68
 
69
69
  [tuiSubtitle] {
70
- font: var(--tui-font-text-ui-s);
70
+ font: var(--tui-font-ui-s);
71
71
  margin: 0;
72
72
  }
73
73
 
@@ -3,7 +3,7 @@
3
3
  .appearance-hover(@content) {
4
4
  .interactive({
5
5
  @media @tui-mouse {
6
- &:hover:not(:disabled):not([data-state]) {
6
+ &:hover:not([data-state]) {
7
7
  @content();
8
8
  }
9
9
  }
@@ -12,19 +12,11 @@
12
12
  &[data-state='hover'] {
13
13
  @content();
14
14
  }
15
-
16
- /* @deprecated TODO remove in v5 */
17
- @media @tui-mouse {
18
- &[tuiWrapper]:hover:not(._no-hover),
19
- &[tuiWrapper][data-state='hover'] {
20
- @content();
21
- }
22
- }
23
15
  }
24
16
 
25
17
  .appearance-active(@content) {
26
18
  .interactive({
27
- &:active:not(:disabled):not([data-state]) {
19
+ &:active:not([data-state]) {
28
20
  @content();
29
21
  }
30
22
  });
@@ -32,13 +24,6 @@
32
24
  &[data-state='active'] {
33
25
  @content();
34
26
  }
35
-
36
- /* @deprecated TODO remove in v5 */
37
- &[tuiWrapper]:active:not(._no-active),
38
- &[tuiWrapper][data-state='active'],
39
- &[tuiWrapper][data-state='active']:hover {
40
- @content();
41
- }
42
27
  }
43
28
 
44
29
  .appearance-disabled(@content) {
@@ -46,12 +31,6 @@
46
31
  &[data-state='disabled'] {
47
32
  @content();
48
33
  }
49
-
50
- /* @deprecated TODO remove in v5 */
51
- &[tuiWrapper]:disabled:not([data-state]),
52
- &[tuiWrapper][data-state='disabled'] {
53
- @content();
54
- }
55
34
  }
56
35
 
57
36
  .appearance-focus(@content) {
@@ -62,10 +41,15 @@
62
41
  &[data-focus='true'] {
63
42
  @content();
64
43
  }
44
+ }
65
45
 
66
- /* @deprecated TODO remove in v5 */
67
- &[tuiWrapper]:not(._focused):has(:focus-visible),
68
- &[tuiWrapper]._focused {
46
+ .appearance-invalid(@content) {
47
+ &:is([data-mode~='invalid'], .tui-invalid, :invalid):not(
48
+ [data-mode~='readonly'],
49
+ [data-mode~='valid'],
50
+ [data-state='disabled'],
51
+ :disabled
52
+ ) {
69
53
  @content();
70
54
  }
71
55
  }
@@ -13,14 +13,6 @@
13
13
  &[data-state='hover'] {
14
14
  @content;
15
15
  }
16
-
17
- /* @deprecated TODO remove in v5 */
18
- @media ($tui-mouse) {
19
- &[tuiWrapper]:hover:not(._no-hover),
20
- &[tuiWrapper][data-state='hover'] {
21
- @content;
22
- }
23
- }
24
16
  }
25
17
 
26
18
  @mixin appearance-active {
@@ -33,13 +25,6 @@
33
25
  &[data-state='active'] {
34
26
  @content;
35
27
  }
36
-
37
- /* @deprecated TODO remove in v5 */
38
- &[tuiWrapper]:active:not(._no-active),
39
- &[tuiWrapper][data-state='active'],
40
- &[tuiWrapper][data-state='active']:hover {
41
- @content;
42
- }
43
28
  }
44
29
 
45
30
  @mixin appearance-disabled {
@@ -47,12 +32,6 @@
47
32
  &[data-state='disabled'] {
48
33
  @content;
49
34
  }
50
-
51
- /* @deprecated TODO remove in v5 */
52
- &[tuiWrapper]:disabled:not([data-state]),
53
- &[tuiWrapper][data-state='disabled'] {
54
- @content;
55
- }
56
35
  }
57
36
 
58
37
  @mixin appearance-focus {
@@ -63,10 +42,15 @@
63
42
  &[data-focus='true'] {
64
43
  @content;
65
44
  }
45
+ }
66
46
 
67
- /* @deprecated TODO remove in v5 */
68
- &[tuiWrapper]:not(._focused):has(:focus-visible),
69
- &[tuiWrapper]._focused {
47
+ @mixin appearance-invalid {
48
+ &:is([data-mode~='invalid'], .tui-invalid, :invalid):not(
49
+ [data-mode~='readonly'],
50
+ [data-mode~='valid'],
51
+ [data-state='disabled'],
52
+ :disabled
53
+ ) {
70
54
  @content;
71
55
  }
72
56
  }
@@ -4,7 +4,7 @@
4
4
  .t-row {
5
5
  display: flex;
6
6
  justify-content: flex-start;
7
- font: var(--tui-font-text-m);
7
+ font: var(--tui-font-body-m);
8
8
 
9
9
  &:first-child {
10
10
  justify-content: flex-end;
@@ -1,11 +1,6 @@
1
1
  @import 'browsers.less';
2
2
 
3
3
  .interactive(@ruleset) {
4
- // TODO remove after dropping Safari 13 support
5
- &:matches(a, button, select, textarea, input, label, .tui-interactive):not(:disabled) {
6
- @ruleset();
7
- }
8
-
9
4
  &:is(a, button, select, textarea, input, label, .tui-interactive):not(:disabled) {
10
5
  @ruleset();
11
6
  }
@@ -171,11 +166,3 @@
171
166
  .tui-mask(@x, @y, @r) {
172
167
  mask: radial-gradient(circle at @x @y, transparent @r, black @r);
173
168
  }
174
-
175
- .portal-loop (@i) when (@i > 0) {
176
- .portal-loop(@i - 1);
177
-
178
- &:nth-of-type(@{i}) {
179
- grid-row: ~'1000@{i}';
180
- }
181
- }
@@ -1,11 +1,6 @@
1
1
  @import 'browsers.scss';
2
2
 
3
3
  @mixin interactive {
4
- // TODO remove after dropping Safari 13 support
5
- &:matches(a, button, select, textarea, input, label, .tui-interactive):not(:disabled) {
6
- @content;
7
- }
8
-
9
4
  &:is(a, button, select, textarea, input, label, .tui-interactive):not(:disabled) {
10
5
  @content;
11
6
  }
@@ -164,11 +159,3 @@
164
159
  @mixin tui-mask($x, $y, $r) {
165
160
  mask: radial-gradient(circle at $x $y, transparent $r, black $r);
166
161
  }
167
-
168
- @mixin portal-loop($n) {
169
- @for $i from 1 through $n {
170
- &:nth-of-type(#{$i}) {
171
- grid-row: #{$i + 10000};
172
- }
173
- }
174
- }
@@ -4,7 +4,7 @@
4
4
  .picker(@itemSize) {
5
5
  :host {
6
6
  display: block;
7
- font: var(--tui-font-text-m);
7
+ font: var(--tui-font-body-m);
8
8
  }
9
9
 
10
10
  .t-row {
@@ -4,7 +4,7 @@
4
4
  @mixin picker($itemSize) {
5
5
  :host {
6
6
  display: block;
7
- font: var(--tui-font-text-m);
7
+ font: var(--tui-font-body-m);
8
8
  }
9
9
 
10
10
  .t-row {
@@ -15,7 +15,7 @@
15
15
  --t-offset: calc(@thumb / 2);
16
16
 
17
17
  display: flex;
18
- font: var(--tui-font-text-s);
18
+ font: var(--tui-font-body-s);
19
19
  margin-inline-start: var(--t-offset);
20
20
  margin-inline-end: var(--t-offset);
21
21
 
@@ -17,7 +17,7 @@ $track-inset: (
17
17
  --t-offset: calc($thumb / 2);
18
18
 
19
19
  display: flex;
20
- font: var(--tui-font-text-s);
20
+ font: var(--tui-font-body-s);
21
21
  margin-inline-start: var(--t-offset);
22
22
  margin-inline-end: var(--t-offset);
23
23
 
@@ -60,12 +60,11 @@ $track-inset: (
60
60
  --t-offset: calc(var(--tui-radius-l) / 2 + $thumb / 2);
61
61
  }
62
62
 
63
- tui-input-range:not([new]) + &, /* TODO(v5): delete */
64
63
  tui-range + & {
65
64
  --t-offset: $thumb;
66
65
  }
67
66
 
68
- tui-input-range[new] + & {
67
+ tui-input-range + & {
69
68
  --t-offset: calc(map-get($track-inset, $input-size) + $thumb);
70
69
  }
71
70
  }
@@ -3,6 +3,5 @@
3
3
  @import 'mixins/mixins.less';
4
4
  @import 'mixins/picker.less';
5
5
  @import 'mixins/slider.less';
6
- @import 'mixins/wrapper.less';
7
6
  @import 'mixins/appearance.less';
8
7
  @import 'variables/media.less';
@@ -2,6 +2,5 @@
2
2
  @import 'mixins/mixins.scss';
3
3
  @import 'mixins/picker.scss';
4
4
  @import 'mixins/slider.scss';
5
- @import 'mixins/wrapper.scss';
6
5
  @import 'mixins/appearance.scss';
7
6
  @import 'variables/media.scss';
@@ -1,5 +1,4 @@
1
1
  @import 'theme/variables.less';
2
2
  @import 'theme/palette.less';
3
3
  @import 'theme/appearance.less';
4
- @import 'theme/wrapper.less';
5
4
  @import 'theme/appearance/textfield.less';
@@ -2,9 +2,7 @@
2
2
 
3
3
  [tuiAppearance][data-appearance='outline'],
4
4
  [tuiAppearance][data-appearance='outline-destructive'],
5
- [tuiAppearance][data-appearance='outline-grayscale'],
6
- /* TODO @deprecated remove in v5 */
7
- [tuiAppearance][data-appearance='whiteblock'] {
5
+ [tuiAppearance][data-appearance='outline-grayscale'] {
8
6
  --t-bs: var(--tui-border-normal);
9
7
 
10
8
  color: var(--tui-text-action);
@@ -25,17 +23,14 @@
25
23
  });
26
24
  }
27
25
 
28
- &:invalid:not([data-mode]),
29
- &[data-mode~='invalid'],
30
- &.tui-invalid:not([data-mode]) {
26
+ .appearance-invalid({
31
27
  box-shadow: inset 0 0 0 1px var(--tui-status-negative-pale-hover);
32
- }
33
28
 
34
- &:checked:invalid:not([data-mode]),
35
- &[data-mode~='checked'][data-mode~='invalid'],
36
- &:checked.tui-invalid:not([data-mode]) {
37
- box-shadow: inset 0 0 0 2px var(--tui-status-negative);
38
- }
29
+ &:checked,
30
+ &[data-mode~='checked'] {
31
+ box-shadow: inset 0 0 0 2px var(--tui-status-negative);
32
+ }
33
+ });
39
34
 
40
35
  .appearance-hover({
41
36
  cursor: pointer;
@@ -48,9 +43,7 @@
48
43
  });
49
44
  }
50
45
 
51
- [tuiAppearance][data-appearance='outline-grayscale'],
52
- /* TODO @deprecated remove in v5 */
53
- [tuiAppearance][data-appearance='whiteblock'] {
46
+ [tuiAppearance][data-appearance='outline-grayscale'] {
54
47
  color: var(--tui-text-primary);
55
48
  }
56
49
 
@@ -60,9 +53,7 @@
60
53
 
61
54
  [tuiAppearance][data-appearance='icon'],
62
55
  [tuiAppearance][data-appearance='outline-grayscale'],
63
- [tuiAppearance][data-appearance='floating'],
64
- /* TODO @deprecated remove in v5 */
65
- [tuiAppearance][data-appearance='whiteblock'] {
56
+ [tuiAppearance][data-appearance='floating'] {
66
57
  color: var(--tui-text-primary);
67
58
 
68
59
  &::before,
@@ -6,11 +6,9 @@
6
6
  background: var(--t-bg);
7
7
  color: var(--tui-text-primary-on-accent-1);
8
8
 
9
- &:invalid:not([data-mode]),
10
- &[data-mode~='invalid'],
11
- &.tui-invalid:not([data-mode]) {
9
+ .appearance-invalid({
12
10
  background: var(--tui-status-negative);
13
- }
11
+ });
14
12
 
15
13
  .appearance-hover({
16
14
  --t-bg: var(--tui-background-accent-1-hover);
@@ -2,9 +2,7 @@
2
2
 
3
3
  [tuiAppearance][data-appearance='secondary'],
4
4
  [tuiAppearance][data-appearance='secondary-destructive'],
5
- [tuiAppearance][data-appearance='secondary-grayscale'],
6
- /* TODO @deprecated remove in v5 */
7
- [tuiAppearance][data-appearance='destructive'] {
5
+ [tuiAppearance][data-appearance='secondary-grayscale'] {
8
6
  background: var(--tui-background-neutral-1);
9
7
  color: var(--tui-text-action);
10
8
 
@@ -30,9 +28,7 @@
30
28
  background: var(--tui-background-accent-1-pressed);
31
29
  });
32
30
 
33
- &:invalid:not([data-mode]),
34
- &[data-mode~='invalid'],
35
- &.tui-invalid:not([data-mode]) {
31
+ .appearance-invalid({
36
32
  background: var(--tui-status-negative);
37
33
  color: #fff;
38
34
 
@@ -45,12 +41,10 @@
45
41
  background: var(--tui-status-negative);
46
42
  color: #fff;
47
43
  });
48
- }
44
+ });
49
45
  }
50
46
 
51
- &:invalid:not([data-mode]),
52
- &[data-mode~='invalid'],
53
- &.tui-invalid:not([data-mode]) {
47
+ .appearance-invalid({
54
48
  color: var(--tui-text-negative);
55
49
  background: var(--tui-status-negative-pale);
56
50
 
@@ -63,12 +57,10 @@
63
57
  color: var(--tui-text-negative-hover);
64
58
  background: var(--tui-status-negative-pale-hover);
65
59
  });
66
- }
60
+ });
67
61
  }
68
62
 
69
- [tuiAppearance][data-appearance='secondary-destructive'],
70
- /* TODO @deprecated remove in v5 */
71
- [tuiAppearance][data-appearance='destructive'] {
63
+ [tuiAppearance][data-appearance='secondary-destructive'] {
72
64
  color: var(--tui-text-negative);
73
65
  }
74
66