@taiga-ui/core 4.52.0-canary.6ee9658 → 4.52.0-canary.7c53ccc

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 (276) hide show
  1. package/classes/accessors.d.ts +1 -1
  2. package/components/calendar/calendar-sheet.component.d.ts +1 -1
  3. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +2 -2
  4. package/components/calendar/calendar-spin.component.d.ts +1 -0
  5. package/components/calendar/calendar-year.component.d.ts +1 -1
  6. package/components/calendar/calendar.options.d.ts +9 -0
  7. package/components/calendar/index.d.ts +3 -0
  8. package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +1 -1
  9. package/components/data-list/data-list.component.d.ts +2 -4
  10. package/components/data-list/data-list.d.ts +3 -4
  11. package/components/data-list/data-list.tokens.d.ts +1 -23
  12. package/components/data-list/index.d.ts +3 -4
  13. package/components/data-list/option-content.directive.d.ts +14 -0
  14. package/components/data-list/option-with-value.directive.d.ts +9 -0
  15. package/components/data-list/option.directive.d.ts +19 -0
  16. package/components/icon/icon.component.d.ts +2 -2
  17. package/components/index.d.ts +2 -2
  18. package/components/input/index.d.ts +2 -0
  19. package/components/input/input.d.ts +5 -0
  20. package/components/{textfield/textfield.directive.d.ts → input/input.directive.d.ts} +7 -9
  21. package/components/label/label.directive.d.ts +1 -1
  22. package/components/link/index.d.ts +0 -1
  23. package/components/link/link.directive.d.ts +8 -6
  24. package/components/notification/notification.component.d.ts +1 -1
  25. package/components/notification/notification.directive.d.ts +2 -2
  26. package/components/notification/notification.options.d.ts +1 -1
  27. package/components/notification/notification.service.d.ts +1 -1
  28. package/components/root/root.component.d.ts +1 -1
  29. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  30. package/components/scrollbar/scrollbar.component.d.ts +1 -5
  31. package/components/spin-button/spin-button.component.d.ts +1 -1
  32. package/components/textfield/index.d.ts +0 -1
  33. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +2 -3
  34. package/components/textfield/textfield.component.d.ts +8 -9
  35. package/components/textfield/textfield.d.ts +2 -3
  36. package/directives/appearance/appearance.directive.d.ts +1 -1
  37. package/directives/appearance/appearance.options.d.ts +1 -2
  38. package/directives/group/group.directive.d.ts +7 -7
  39. package/directives/index.d.ts +0 -5
  40. package/directives/items-handlers/items-handlers.directive.d.ts +5 -9
  41. package/directives/items-handlers/items-handlers.tokens.d.ts +4 -4
  42. package/fesm2022/taiga-ui-core-classes.mjs +7 -9
  43. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-core-components-button.mjs +7 -7
  45. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-core-components-calendar.mjs +137 -32
  47. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-core-components-cell.mjs +7 -7
  49. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-core-components-data-list.mjs +94 -230
  51. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-core-components-error.mjs +10 -10
  53. package/fesm2022/taiga-ui-core-components-expand.mjs +3 -3
  54. package/fesm2022/taiga-ui-core-components-icon.mjs +9 -9
  55. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-core-components-input.mjs +103 -0
  57. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -0
  58. package/fesm2022/taiga-ui-core-components-label.mjs +11 -13
  59. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-core-components-link.mjs +13 -24
  61. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-core-components-loader.mjs +4 -4
  63. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-core-components-notification.mjs +24 -26
  65. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-core-components-root.mjs +7 -9
  67. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +43 -48
  69. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-core-components-spin-button.mjs +6 -6
  71. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-core-components-textfield.mjs +56 -140
  73. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  74. package/fesm2022/{taiga-ui-core-directives-title.mjs → taiga-ui-core-components-title.mjs} +8 -8
  75. package/fesm2022/{taiga-ui-core-directives-title.mjs.map → taiga-ui-core-components-title.mjs.map} +1 -1
  76. package/fesm2022/taiga-ui-core-components.mjs +2 -2
  77. package/fesm2022/taiga-ui-core-directives-appearance.mjs +10 -10
  78. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-core-directives-date-format.mjs +3 -3
  80. package/fesm2022/taiga-ui-core-directives-group.mjs +20 -28
  81. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-core-directives-icons.mjs +10 -10
  83. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +15 -36
  85. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-core-directives-number-format.mjs +3 -3
  87. package/fesm2022/taiga-ui-core-directives.mjs +0 -5
  88. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +5 -8
  90. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-pipes.mjs +0 -7
  92. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  93. package/fesm2022/{taiga-ui-core-directives-alert.mjs → taiga-ui-core-portals-alert.mjs} +12 -12
  94. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  95. package/fesm2022/taiga-ui-core-portals-dialog.mjs +158 -0
  96. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  97. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +159 -263
  98. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  99. package/fesm2022/{taiga-ui-core-directives-hint.mjs → taiga-ui-core-portals-hint.mjs} +69 -126
  100. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  101. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  102. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  103. package/fesm2022/{taiga-ui-core-directives-popup.mjs → taiga-ui-core-portals-popup.mjs} +10 -10
  104. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  105. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  106. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  107. package/fesm2022/taiga-ui-core-services.mjs +15 -79
  108. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-core-tokens.mjs +33 -47
  110. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -23
  112. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  113. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +19 -19
  114. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  115. package/fesm2022/taiga-ui-core.mjs +1 -1
  116. package/index.d.ts +1 -1
  117. package/package.json +65 -90
  118. package/pipes/format-number/format-number.pipe.d.ts +1 -1
  119. package/pipes/index.d.ts +0 -7
  120. package/{components → portals}/dialog/dialog.service.d.ts +1 -1
  121. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  122. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  123. package/portals/dropdown/dropdown-open.directive.d.ts +30 -0
  124. package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +0 -4
  125. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  126. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +4 -4
  127. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  128. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  129. package/{directives → portals}/dropdown/dropdown.d.ts +1 -2
  130. package/{directives → portals}/dropdown/dropdown.directive.d.ts +5 -6
  131. package/{directives → portals}/dropdown/index.d.ts +0 -1
  132. package/portals/hint/hint-options.directive.d.ts +17 -0
  133. package/{directives → portals}/hint/hint-position.directive.d.ts +5 -5
  134. package/{directives → portals}/hint/hint.d.ts +1 -2
  135. package/{directives → portals}/hint/hint.directive.d.ts +2 -2
  136. package/portals/index.d.ts +6 -0
  137. package/services/index.d.ts +0 -3
  138. package/styles/components/appearance.less +5 -0
  139. package/styles/components/button.less +10 -20
  140. package/styles/components/icon.less +11 -0
  141. package/styles/components/icons.less +2 -1
  142. package/styles/components/label.less +3 -12
  143. package/styles/components/link.less +8 -24
  144. package/styles/components/notification.less +31 -65
  145. package/styles/components/textfield.less +129 -211
  146. package/styles/components/title.less +8 -8
  147. package/styles/mixins/appearance.less +9 -25
  148. package/styles/mixins/appearance.scss +8 -24
  149. package/styles/mixins/date-picker.less +1 -1
  150. package/styles/mixins/picker.less +1 -1
  151. package/styles/mixins/picker.scss +1 -1
  152. package/styles/mixins/slider.less +4 -10
  153. package/styles/mixins/slider.scss +23 -22
  154. package/styles/taiga-ui-local.less +0 -1
  155. package/styles/taiga-ui-local.scss +0 -1
  156. package/styles/taiga-ui-theme.less +0 -1
  157. package/styles/theme/appearance/outline.less +9 -18
  158. package/styles/theme/appearance/primary.less +2 -4
  159. package/styles/theme/appearance/secondary.less +6 -14
  160. package/styles/theme/appearance/status.less +0 -4
  161. package/styles/theme/appearance/table.less +36 -35
  162. package/styles/theme/appearance/textfield.less +30 -27
  163. package/styles/theme/appearance.less +0 -1
  164. package/styles/theme/variables.less +16 -17
  165. package/styles/variables/media.less +13 -18
  166. package/styles/variables/media.scss +13 -13
  167. package/tokens/breakpoint.d.ts +4 -0
  168. package/tokens/common-icons.d.ts +2 -0
  169. package/tokens/icons.d.ts +0 -4
  170. package/tokens/index.d.ts +1 -4
  171. package/types/index.d.ts +0 -2
  172. package/types/point.d.ts +1 -1
  173. package/types/size.d.ts +0 -11
  174. package/utils/format/index.d.ts +0 -1
  175. package/utils/miscellaneous/font-scaling.d.ts +2 -1
  176. package/utils/miscellaneous/get-duration.d.ts +2 -0
  177. package/utils/miscellaneous/index.d.ts +1 -1
  178. package/animations/animations.d.ts +0 -109
  179. package/animations/index.d.ts +0 -1
  180. package/components/data-list/data-list.directive.d.ts +0 -7
  181. package/components/data-list/option/option-content.d.ts +0 -16
  182. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  183. package/components/data-list/option/option.directive.d.ts +0 -26
  184. package/components/link/link.options.d.ts +0 -10
  185. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  186. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  187. package/directives/hint/hint-options.directive.d.ts +0 -36
  188. package/fesm2022/taiga-ui-core-animations.mjs +0 -370
  189. package/fesm2022/taiga-ui-core-animations.mjs.map +0 -1
  190. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -158
  191. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  192. package/fesm2022/taiga-ui-core-components-modal.mjs +0 -89
  193. package/fesm2022/taiga-ui-core-components-modal.mjs.map +0 -1
  194. package/fesm2022/taiga-ui-core-directives-alert.mjs.map +0 -1
  195. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  196. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  197. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  198. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -24
  199. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  200. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -93
  201. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  202. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -31
  203. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  204. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -27
  205. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  206. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -28
  207. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  208. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -29
  209. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  210. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -35
  211. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  212. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  213. package/pipes/auto-color/index.d.ts +0 -1
  214. package/pipes/calendar-sheet/index.d.ts +0 -1
  215. package/pipes/calendar-sheet/utils.d.ts +0 -20
  216. package/pipes/flag/flag.pipe.d.ts +0 -14
  217. package/pipes/flag/index.d.ts +0 -1
  218. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  219. package/pipes/format-date/index.d.ts +0 -1
  220. package/pipes/initials/index.d.ts +0 -1
  221. package/pipes/initials/initials.pipe.d.ts +0 -7
  222. package/pipes/month/index.d.ts +0 -1
  223. package/pipes/month/month.pipe.d.ts +0 -10
  224. package/pipes/order-week-days/index.d.ts +0 -1
  225. package/services/breakpoint.service.d.ts +0 -16
  226. package/services/dark-theme.service.d.ts +0 -10
  227. package/services/format-date.service.d.ts +0 -8
  228. package/styles/mixins/wrapper.less +0 -64
  229. package/styles/mixins/wrapper.scss +0 -61
  230. package/styles/theme/appearance/opposite.less +0 -17
  231. package/styles/theme/wrapper.less +0 -211
  232. package/tokens/day-type-handler.d.ts +0 -7
  233. package/tokens/first-day-of-week.d.ts +0 -5
  234. package/tokens/scroll-ref.d.ts +0 -2
  235. package/tokens/spin-icons.d.ts +0 -6
  236. package/types/range-state.d.ts +0 -4
  237. package/types/value-content-context.d.ts +0 -4
  238. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  239. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  240. /package/{directives → components}/title/index.d.ts +0 -0
  241. /package/{directives → components}/title/title.directive.d.ts +0 -0
  242. /package/{directives → portals}/alert/alert.directive.d.ts +0 -0
  243. /package/{directives → portals}/alert/alert.service.d.ts +0 -0
  244. /package/{directives → portals}/alert/index.d.ts +0 -0
  245. /package/{components → portals}/dialog/dialog.component.d.ts +0 -0
  246. /package/{components → portals}/dialog/dialog.directive.d.ts +0 -0
  247. /package/{components → portals}/dialog/dialog.factory.d.ts +0 -0
  248. /package/{components → portals}/dialog/dialog.options.d.ts +0 -0
  249. /package/{components → portals}/dialog/dialog.providers.d.ts +0 -0
  250. /package/{components → portals}/dialog/index.d.ts +0 -0
  251. /package/{directives → portals}/dropdown/dropdown-content.directive.d.ts +0 -0
  252. /package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -0
  253. /package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +0 -0
  254. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  255. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  256. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  257. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  258. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  259. /package/{directives → portals}/hint/hint-describe.directive.d.ts +0 -0
  260. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  261. /package/{directives → portals}/hint/hint-host.directive.d.ts +0 -0
  262. /package/{directives → portals}/hint/hint-hover.directive.d.ts +0 -0
  263. /package/{directives → portals}/hint/hint-manual.directive.d.ts +0 -0
  264. /package/{directives → portals}/hint/hint-overflow.directive.d.ts +0 -0
  265. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  266. /package/{directives → portals}/hint/hint-unstyled.component.d.ts +0 -0
  267. /package/{directives → portals}/hint/hint.component.d.ts +0 -0
  268. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  269. /package/{directives → portals}/hint/index.d.ts +0 -0
  270. /package/{components → portals}/modal/index.d.ts +0 -0
  271. /package/{components → portals}/modal/modal.component.d.ts +0 -0
  272. /package/{components → portals}/modal/modal.service.d.ts +0 -0
  273. /package/{directives → portals}/popup/index.d.ts +0 -0
  274. /package/{directives → portals}/popup/popup.directive.d.ts +0 -0
  275. /package/{directives → portals}/popup/popup.service.d.ts +0 -0
  276. /package/{directives → portals}/popup/popups.component.d.ts +0 -0
@@ -32,7 +32,7 @@
32
32
  padding: var(--t-padding);
33
33
  user-select: none;
34
34
  cursor: pointer;
35
- font: var(--tui-font-text-m);
35
+ font: var(--tui-font-body-m);
36
36
  font-weight: bold;
37
37
 
38
38
  > .t-loader {
@@ -50,10 +50,11 @@
50
50
  --t-padding: 0 0.375rem;
51
51
  --t-margin: -0.125rem;
52
52
 
53
- font: var(--tui-font-text-s);
53
+ font: var(--tui-font-body-s);
54
54
 
55
55
  tui-icon,
56
- &::before {
56
+ &::before,
57
+ &::after {
57
58
  font-size: 1rem;
58
59
  }
59
60
  }
@@ -65,10 +66,11 @@
65
66
  --t-padding: 0 0.625rem;
66
67
  --t-margin: -0.125rem;
67
68
 
68
- font: var(--tui-font-text-s);
69
+ font: var(--tui-font-body-s);
69
70
 
70
71
  tui-icon,
71
- &:not([tuiIconButton][data-appearance='icon']):not([tuiIconButton][data-appearance='link'])::before {
72
+ &:not([tuiIconButton][data-appearance='icon'], [tuiIconButton][data-appearance='link'])::before,
73
+ &:not([tuiIconButton][data-appearance='icon'], [tuiIconButton][data-appearance='link'])::after {
72
74
  font-size: 1rem;
73
75
  }
74
76
  }
@@ -80,12 +82,8 @@
80
82
  --t-padding: 0 1rem;
81
83
  --t-margin: -0.375rem;
82
84
 
83
- font: var(--tui-font-text-m);
85
+ font: var(--tui-font-body-m);
84
86
  font-weight: bold;
85
-
86
- &::after {
87
- margin-inline-end: -0.125rem;
88
- }
89
87
  }
90
88
 
91
89
  &._loading {
@@ -104,10 +102,6 @@
104
102
  }
105
103
  }
106
104
 
107
- &[tuiIcons]::after {
108
- font-size: 1rem;
109
- }
110
-
111
105
  &[tuiButtonVertical] {
112
106
  // StackBlitz changes "0rem" to "0" breaking calc
113
107
  --t-margin: ~'0rem' !important;
@@ -120,7 +114,7 @@
120
114
  gap: 0.375rem;
121
115
  min-inline-size: 5rem;
122
116
  white-space: pre-line;
123
- font: var(--tui-font-text-ui-s);
117
+ font: var(--tui-font-ui-s);
124
118
 
125
119
  & > * {
126
120
  max-block-size: calc(var(--t-line-height) * 2);
@@ -134,11 +128,7 @@
134
128
  font-size: 0 !important;
135
129
  padding: 0;
136
130
 
137
- &[data-size='l']::after {
138
- margin: 0;
139
- }
140
-
141
- &&[style*='--t-icon-start:']::after {
131
+ &&[data-icon-start]::after {
142
132
  display: none;
143
133
  }
144
134
  }
@@ -31,6 +31,7 @@ tui-icon {
31
31
  vertical-align: middle;
32
32
  box-sizing: border-box;
33
33
  mask: var(--t-icon-bg) no-repeat center / calc(100% + 10 * var(--tui-stroke-width, 0.125rem)) 100%;
34
+ zoom: ~'calc(100% * (min(max(var(--tui-font-offset) - 10px, 0px), 1px) / 0.8px))';
34
35
 
35
36
  @media @tui-mouse {
36
37
  &[data-appearance='icon']:hover {
@@ -69,4 +70,14 @@ tui-icon {
69
70
  --tui-icon-size: 0.5715em;
70
71
  }
71
72
  }
73
+
74
+ &[data-icon-start='img']::before,
75
+ &[data-icon-end='img']::after {
76
+ zoom: 1;
77
+ }
78
+
79
+ &[data-icon-start='font']::before,
80
+ &[data-icon-end='font']::after {
81
+ zoom: 0.667;
82
+ }
72
83
  }
@@ -31,6 +31,7 @@
31
31
  flex-shrink: 0;
32
32
  box-sizing: content-box;
33
33
  background: currentColor;
34
+ zoom: ~'calc(100% * (min(max(var(--tui-font-offset) - 10px, 0px), 1px) / 0.8px))';
34
35
  }
35
36
 
36
37
  &::before {
@@ -62,7 +63,7 @@
62
63
  display: grid;
63
64
  mask: none;
64
65
  background: none;
65
- font: 1.3em/1 var(--tui-font-icon, inherit);
66
+ font: 1.5em / 1 var(--tui-font-icon, inherit);
66
67
  text-align: center;
67
68
  place-content: center;
68
69
  text-transform: none;
@@ -18,22 +18,13 @@
18
18
  display: flex;
19
19
  gap: 0.25rem;
20
20
  flex-direction: column;
21
- font: var(--tui-font-text-s);
21
+ font: var(--tui-font-body-s);
22
22
  color: var(--tui-text-primary);
23
23
 
24
24
  &:not([data-orientation='vertical']) {
25
25
  flex-direction: row;
26
26
  inline-size: fit-content;
27
- font: var(--tui-font-text-m);
28
- }
29
-
30
- // TODO: Remove after legacy inputs are dropped
31
- &:has(tui-textfield),
32
- &:has(tui-primitive-textfield),
33
- &:has(tui-textarea) {
34
- flex-direction: column !important;
35
- inline-size: auto !important;
36
- font: var(--tui-font-text-s) !important;
27
+ font: var(--tui-font-body-m);
37
28
  }
38
29
 
39
30
  input[type='checkbox'],
@@ -47,7 +38,7 @@
47
38
  }
48
39
 
49
40
  small {
50
- font: var(--tui-font-text-s);
41
+ font: var(--tui-font-body-s);
51
42
  }
52
43
 
53
44
  [tuiTitle] {
@@ -21,19 +21,14 @@
21
21
  border: none;
22
22
  cursor: pointer;
23
23
  font: inherit;
24
- color: var(--tui-text-primary);
25
- text-decoration: none dashed currentColor;
24
+ color: inherit;
25
+ border-radius: 0.125rem;
26
+ outline-width: 1px;
27
+ outline-offset: -1px;
26
28
  text-underline-offset: 0.2em;
27
- text-decoration-thickness: 0.7px;
29
+ text-decoration: none dashed currentColor 1px;
28
30
  text-decoration-color: color-mix(in lch, currentColor, transparent);
29
31
 
30
- // TODO: Remove in v5
31
- @media @tui-mouse {
32
- &:hover {
33
- --tui-text-secondary: var(--tui-text-primary);
34
- }
35
- }
36
-
37
32
  &::before {
38
33
  margin-inline-end: 0.25rem;
39
34
  }
@@ -58,12 +53,6 @@
58
53
  display: inline-block;
59
54
  }
60
55
 
61
- .appearance-focus({
62
- outline: none;
63
- background: var(--tui-service-selection-background);
64
- background: color-mix(in lch, currentColor 12%, transparent);
65
- });
66
-
67
56
  .appearance-hover({
68
57
  text-decoration-color: currentColor;
69
58
  });
@@ -72,13 +61,8 @@
72
61
  text-decoration-color: currentColor;
73
62
  });
74
63
 
75
- @media @tui-mouse {
76
- &[data-appearance='']:hover {
77
- opacity: 0.7;
78
- }
79
- }
80
-
81
- &[data-appearance='']:active {
82
- opacity: 0.7;
64
+ &[data-appearance=''] {
65
+ text-decoration-line: underline;
66
+ text-decoration-style: solid;
83
67
  }
84
68
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @name Notification
5
- * @selector tui-notification, [tuiNotification]
5
+ * @selector [tuiNotification]
6
6
  *
7
7
  * @description
8
8
  * A colored rounded block of information with optional icon, title, subtitle and actions
@@ -11,17 +11,16 @@
11
11
  * data-size — size (default: 'l') ('s' | 'm' | 'l')
12
12
  *
13
13
  * @example
14
- * <tui-notification tuiAppearance data-appearance="negative">
14
+ * <div tuiNotification tuiAppearance data-appearance="negative">
15
15
  * <span tuiTitle>
16
16
  * Error
17
17
  * <span tuiSubtitle>Something went wrong</span>
18
18
  * </span>
19
- * </tui-notification>
19
+ * </div>
20
20
  *
21
21
  * @see-also
22
22
  * Icons, Appearance
23
23
  */
24
- tui-notification,
25
24
  [tuiNotification] {
26
25
  .button-clear();
27
26
 
@@ -30,7 +29,7 @@ tui-notification,
30
29
  max-block-size: 100%;
31
30
  color: var(--tui-text-primary);
32
31
  padding: 1rem;
33
- font: var(--tui-font-text-m);
32
+ font: var(--tui-font-body-m);
34
33
  line-height: 1.5rem;
35
34
  border-radius: var(--tui-radius-l);
36
35
  box-sizing: border-box;
@@ -39,63 +38,55 @@ tui-notification,
39
38
  border-inline-start: var(--t-start) solid transparent;
40
39
  border-inline-end: var(--t-end) solid transparent;
41
40
 
41
+ .interactive({
42
+ cursor: pointer;
43
+ });
44
+
42
45
  --t-start: 0;
43
46
  --t-end: 0;
44
47
 
45
- &[style*='--t-icon-start:'] {
48
+ &[data-icon-start] {
46
49
  --t-start: 2rem;
47
50
  }
48
51
 
49
- &[style*='--t-icon-end:'] {
52
+ &[data-icon-end] {
50
53
  --t-end: 1.5rem;
51
54
  }
52
55
 
53
56
  &::before {
54
57
  position: absolute;
55
- left: -1rem;
56
58
  inset-inline-start: -1rem;
57
59
  }
58
60
 
59
61
  &::after {
60
62
  .center-top();
61
63
 
62
- right: -0.5rem;
64
+ inset-inline-end: -0.5rem;
63
65
  font-size: 1rem;
64
66
  margin: 0;
65
67
  margin-inline-end: -0.25rem;
66
68
  margin-inline-start: auto;
67
69
  color: var(--tui-text-tertiary) !important;
68
-
69
- @supports (inset-inline-end: 0) {
70
- right: unset;
71
- inset-inline-end: -0.5rem;
72
- }
73
70
  }
74
71
 
75
72
  &[data-size='s'] {
76
73
  padding: 0.375rem 0.625rem;
77
- font: var(--tui-font-text-s);
74
+ font: var(--tui-font-body-s);
78
75
  line-height: 1.25rem;
79
76
  border-radius: var(--tui-radius-m);
80
77
 
81
- &[style*='--t-icon-start:'] {
78
+ &[data-icon-start] {
82
79
  --t-start: 1.5rem;
83
80
  }
84
81
 
85
82
  &::before {
86
- top: 0.5rem;
87
- left: -0.875rem;
83
+ inset-block-start: 0.5rem;
88
84
  inset-inline-start: -0.875rem;
89
85
  font-size: 1rem;
90
86
  }
91
87
 
92
88
  &::after {
93
- right: -0.875rem;
94
-
95
- @supports (inset-inline-end: 0) {
96
- right: unset;
97
- inset-inline-end: -0.875rem;
98
- }
89
+ inset-inline-end: -0.875rem;
99
90
  }
100
91
 
101
92
  tui-icon {
@@ -103,12 +94,12 @@ tui-notification,
103
94
  }
104
95
 
105
96
  [tuiTitle] {
106
- font: var(--tui-font-text-s);
97
+ font: var(--tui-font-body-s);
107
98
  font-weight: bold;
108
99
  }
109
100
 
110
101
  [tuiSubtitle] {
111
- font: var(--tui-font-text-s);
102
+ font: var(--tui-font-body-s);
112
103
  }
113
104
 
114
105
  [tuiSubtitle] + * {
@@ -117,39 +108,28 @@ tui-notification,
117
108
  }
118
109
 
119
110
  > [tuiIconButton] {
120
- top: 0;
121
- right: 0;
122
-
123
- @supports (inset-inline-end: 0) {
124
- right: unset;
125
- inset-inline-end: 0;
126
- }
111
+ inset-block-start: 0;
112
+ inset-inline-end: 0;
127
113
  }
128
114
  }
129
115
 
130
116
  &[data-size='m'] {
131
117
  padding: 0.75rem;
132
- font: var(--tui-font-text-s);
118
+ font: var(--tui-font-body-s);
133
119
  line-height: 1.25rem;
134
120
  border-radius: var(--tui-radius-m);
135
121
 
136
- &[style*='--t-icon-start:'] {
122
+ &[data-icon-start] {
137
123
  --t-start: 1.625rem;
138
124
  }
139
125
 
140
126
  &::before {
141
- left: -0.875rem;
142
127
  inset-inline-start: -0.875rem;
143
128
  font-size: 1.25rem;
144
129
  }
145
130
 
146
131
  &::after {
147
- right: -0.75rem;
148
-
149
- @supports (inset-inline-end: 0) {
150
- right: unset;
151
- inset-inline-end: -0.75rem;
152
- }
132
+ inset-inline-end: -0.75rem;
153
133
  }
154
134
 
155
135
  tui-icon {
@@ -157,12 +137,12 @@ tui-notification,
157
137
  }
158
138
 
159
139
  [tuiTitle] {
160
- font: var(--tui-font-text-ui-m);
140
+ font: var(--tui-font-ui-m);
161
141
  font-weight: bold;
162
142
  }
163
143
 
164
144
  [tuiSubtitle] {
165
- font: var(--tui-font-text-s);
145
+ font: var(--tui-font-body-s);
166
146
  }
167
147
 
168
148
  [tuiSubtitle] + * {
@@ -171,48 +151,34 @@ tui-notification,
171
151
  }
172
152
 
173
153
  > [tuiIconButton] {
174
- top: 0.375rem;
175
- right: 0.5rem;
176
-
177
- @supports (inset-inline-end: 0) {
178
- right: unset;
179
- inset-inline-end: 0.5rem;
180
- }
154
+ inset-block-start: 0.375rem;
155
+ inset-inline-end: 0.5rem;
181
156
  }
182
157
  }
183
158
 
184
159
  [tuiTitle] {
185
160
  gap: 0.125rem;
186
- font: var(--tui-font-text-ui-l);
161
+ font: var(--tui-font-ui-l);
187
162
  font-weight: bold;
188
163
  }
189
164
 
190
165
  [tuiSubtitle] {
191
- font: var(--tui-font-text-m);
166
+ font: var(--tui-font-body-m);
192
167
 
193
168
  + * {
194
169
  display: flex;
195
170
  align-items: center;
196
171
  gap: 1.25rem;
197
172
  margin-block-start: 0.625rem;
198
- font: var(--tui-font-text-s);
173
+ font: var(--tui-font-body-s);
199
174
  }
200
175
  }
201
176
 
202
177
  > [tuiIconButton] {
203
178
  position: absolute;
204
- top: 0.75rem;
205
- right: 0.75rem;
179
+ inset-block-start: 0.75rem;
180
+ inset-inline-end: 0.75rem;
206
181
  box-shadow: none !important;
207
182
  background: transparent !important;
208
-
209
- @supports (inset-inline-end: 0) {
210
- right: unset;
211
- inset-inline-end: 0.75rem;
212
- }
213
183
  }
214
184
  }
215
-
216
- [tuiNotification] {
217
- cursor: pointer;
218
- }