@taiga-ui/styles 5.24.0 → 5.25.0

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.
@@ -6,24 +6,27 @@
6
6
  --t-space: 0.75rem;
7
7
  --t-radius: var(--tui-radius-l);
8
8
  --t-comp: -0.25rem;
9
- --t-padding: 0.75rem;
10
9
  --t-dim: calc(var(--t-padding) + var(--t-comp));
10
+ --t-padding: 0.75rem;
11
+ --tui-padding-inline: 0.75rem;
11
12
 
12
- padding: var(--t-padding);
13
+ padding: var(--t-padding) var(--tui-padding-inline);
13
14
  border-radius: var(--t-radius);
14
15
  box-sizing: border-box;
15
16
  text-align: start;
16
17
 
17
18
  &[data-space='normal'] {
18
19
  --t-radius: 1.5rem;
19
- --t-padding: 1.5rem;
20
20
  --t-space: 1.5rem;
21
+ --t-padding: 1.5rem;
22
+ --tui-padding-inline: 1.5rem;
21
23
  }
22
24
 
23
25
  &[data-space='compact'] {
24
26
  --t-radius: 1rem;
25
- --t-padding: 1.25rem;
26
27
  --t-space: 1.25rem;
28
+ --t-padding: 1.25rem;
29
+ --tui-padding-inline: 1.25rem;
27
30
  }
28
31
 
29
32
  &:not([tuiCell], [tuiHeader], [tuiForm]) {
@@ -37,7 +40,7 @@
37
40
  }
38
41
 
39
42
  &[tuiHeader] {
40
- padding: var(--t-dim) var(--t-padding);
43
+ padding: var(--t-dim) var(--tui-padding-inline);
41
44
 
42
45
  [tuiButton]:last-child,
43
46
  [tuiAvatar]:last-child,
@@ -60,14 +63,18 @@
60
63
 
61
64
  [tuiCell]:not(:where(tui-textfield *, [tuiStep])) {
62
65
  inline-size: 100%;
63
- margin: -0.5rem -0.5rem -0.75rem;
66
+ margin: -0.5rem calc(-1 * var(--tui-padding-inline)) -0.75rem;
64
67
  border-radius: var(--tui-radius-l);
65
68
 
66
- --t-pad: 0.5rem;
69
+ --t-pad: 0.5rem var(--tui-padding-inline);
67
70
 
68
71
  &:last-of-type {
69
72
  margin-block-end: -0.5rem;
70
73
  }
74
+
75
+ [data-platform]:not([data-platform='ios'], [data-platform='android']) & {
76
+ --tui-padding-inline: 0.5rem;
77
+ }
71
78
  }
72
79
 
73
80
  [tuiHeader] + [tuiDescription] {
@@ -1,14 +1,16 @@
1
1
  [tuiCardMedium]:where(*&) {
2
+ --tui-padding-inline: 0.75rem;
3
+
2
4
  inline-size: calc(8.75rem * var(--tui-font-scale));
3
5
  block-size: calc(8.75rem * var(--tui-font-scale));
4
6
  flex-direction: column;
5
7
  justify-content: space-between;
6
- padding: 0.75rem;
8
+ padding: 0.75rem var(--tui-padding-inline);
7
9
  border-radius: var(--tui-radius-l);
8
10
  box-sizing: border-box;
9
11
 
10
12
  &[tuiTitle] {
11
- padding: 0.625rem 0.75rem;
13
+ padding: 0.625rem var(--tui-padding-inline);
12
14
  }
13
15
 
14
16
  [tuiTitle] {
@@ -240,8 +240,14 @@
240
240
  }
241
241
 
242
242
  &[tuiCellStretch] {
243
- inline-size: 100%;
244
- margin-inline: -1rem;
243
+ // stylelint-disable-next-line -- fix linter
244
+ width: -moz-available;
245
+ // stylelint-disable-next-line -- fix linter
246
+ width: stretch;
247
+ margin-inline-start: calc(-1 * var(--tui-padding-inline, 0px));
248
+ margin-inline-end: calc(-1 * var(--tui-padding-inline, 0px));
249
+ padding-inline-start: var(--tui-padding-inline, 0);
250
+ padding-inline-end: var(--tui-padding-inline, 0);
245
251
  }
246
252
 
247
253
  &[tuiCellResponsive] {
@@ -290,3 +296,8 @@
290
296
  }
291
297
  }
292
298
  }
299
+
300
+ [data-platform='ios'] [tuiCellStretch]:where(*&),
301
+ [data-platform='android'] [tuiCellStretch]:where(*&) {
302
+ border-radius: 0 !important;
303
+ }
@@ -37,9 +37,9 @@
37
37
  inline-size: 100%;
38
38
  font-size: 1rem;
39
39
  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"></svg>');
40
- transform: scale(0);
40
+ scale: 0;
41
41
  transition:
42
- transform var(--tui-duration) ease-in-out,
42
+ scale var(--tui-duration) ease-in-out,
43
43
  mask 0s var(--tui-duration) ease-in-out;
44
44
  }
45
45
 
@@ -56,9 +56,9 @@
56
56
  &:indeterminate {
57
57
  &::before {
58
58
  mask-image: var(--t-icon-start);
59
- transform: scale(1);
59
+ scale: 1;
60
60
  transition:
61
- transform var(--tui-duration) ease-in-out,
61
+ scale var(--tui-duration) ease-in-out,
62
62
  mask 0s ease-in-out;
63
63
  transition-duration: inherit;
64
64
  }
@@ -68,7 +68,7 @@
68
68
 
69
69
  & > [tuiIconButton] {
70
70
  margin: -0.5rem;
71
- transform: scale(0.75);
71
+ scale: 0.75;
72
72
  }
73
73
  }
74
74
 
@@ -23,6 +23,7 @@
23
23
  [tuiTitle] {
24
24
  max-inline-size: fit-content;
25
25
  flex: 1 0 60%;
26
+ align-self: center;
26
27
  margin: 0;
27
28
  margin-inline-end: auto;
28
29
  font: inherit;
@@ -35,13 +35,13 @@
35
35
  .fullsize();
36
36
 
37
37
  font-size: 1.25rem;
38
- transition-property: transform, opacity;
38
+ transition-property: scale, opacity;
39
39
  }
40
40
 
41
41
  &::after {
42
42
  opacity: 0;
43
43
  color: var(--t-icon-color, inherit);
44
- transform: scale(0);
44
+ scale: 0;
45
45
  }
46
46
 
47
47
  &:checked {
@@ -51,7 +51,7 @@
51
51
 
52
52
  &::after {
53
53
  opacity: 1;
54
- transform: scale(1);
54
+ scale: 1;
55
55
  transition-timing-function: cubic-bezier(0.2, 0.6, 0.5, 1.8), ease-in-out;
56
56
  }
57
57
  }
@@ -18,7 +18,6 @@
18
18
  --t-size: calc(2rem * var(--t-scale));
19
19
 
20
20
  @bubble-width: calc(1.875rem * var(--t-scale));
21
- @bubble-shift: translate(calc(var(--tui-inline) * -1 * @bubble-width), calc(-1 * @bubble-width));
22
21
  @ground-shift: translate(calc(var(--tui-inline) * -50%), -50%);
23
22
 
24
23
  .transition(~'min-inline-size, grid-template-columns, block-size, border, margin, font', @tui-duration-fast);
@@ -187,7 +186,7 @@
187
186
  }
188
187
 
189
188
  &::before {
190
- transform: scale(0.99) @bubble-shift;
189
+ scale: 0.99;
191
190
  opacity: 1;
192
191
  }
193
192
 
@@ -230,7 +229,7 @@
230
229
  }
231
230
 
232
231
  &::before {
233
- transform: scale(0.99) @bubble-shift;
232
+ scale: 0.99;
234
233
  opacity: 1;
235
234
  }
236
235
 
@@ -241,7 +240,7 @@
241
240
  }
242
241
 
243
242
  &::before {
244
- .transition(~'transform, opacity');
243
+ .transition(~'scale, opacity');
245
244
 
246
245
  content: '';
247
246
  position: absolute;
@@ -253,7 +252,8 @@
253
252
  border-style: solid;
254
253
  border-color: inherit;
255
254
  opacity: 0;
256
- transform: scale(0.57) @bubble-shift;
255
+ scale: 0.57;
256
+ transform: translate(calc(var(--tui-inline) * -1 * @bubble-width), calc(-1 * @bubble-width));
257
257
  transform-origin: top var(--tui-inline-start);
258
258
  pointer-events: none;
259
259
  mask-image: url('data:image/svg+xml,<svg width="60" height="66" viewBox="0 0 60 66" xmlns="http://www.w3.org/2000/svg"><path d="M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z" /></svg>');
@@ -34,18 +34,18 @@
34
34
  }
35
35
 
36
36
  &::before {
37
- .fullsize(absolute, inset);
38
-
39
37
  content: '';
38
+ position: absolute;
39
+ inset: 0;
40
40
  margin: auto;
41
41
  border-radius: 100%;
42
42
  background: currentColor;
43
- transform: scale(0);
44
- transition-property: transform;
43
+ scale: 0;
44
+ transition-property: scale;
45
45
  }
46
46
 
47
47
  &:checked::before {
48
- transform: scale(0.5);
48
+ scale: 0.5;
49
49
  }
50
50
 
51
51
  &[data-size='s'] {
@@ -46,11 +46,11 @@
46
46
  inline-size: 1rem;
47
47
  box-shadow: calc(var(--tui-inline) * -2.625rem) 0 0 0.5rem var(--tui-background-base);
48
48
  outline-width: 0.167rem;
49
- transform: scale(0.375);
49
+ scale: 0.375;
50
50
  }
51
51
 
52
52
  &:checked::after {
53
- transform: scale(0.375) translateX(calc(var(--tui-inline) * 2.625rem));
53
+ transform: translateX(calc(var(--tui-inline) * 2.625rem));
54
54
  }
55
55
  }
56
56
 
@@ -60,7 +60,7 @@
60
60
  }
61
61
 
62
62
  &::after {
63
- transform: scale(0.33333) translateX(calc(var(--tui-inline) * 4.5rem));
63
+ transform: translateX(calc(var(--tui-inline) * 4.5rem));
64
64
  }
65
65
  }
66
66
 
@@ -88,7 +88,7 @@
88
88
  inset-inline-end: 0;
89
89
  border-radius: 100%;
90
90
  background: none;
91
- transform: scale(0.33333);
91
+ scale: 0.33333;
92
92
  box-shadow: calc(var(--tui-inline) * -4.5rem) 0 0 0.75rem var(--tui-background-base);
93
93
  outline: 0.375rem solid var(--tui-background-neutral-2-pressed);
94
94
  }
@@ -1,7 +1,6 @@
1
1
  @import '../utils.less';
2
2
 
3
3
  tui-textfield:where(*&) {
4
- .scrollbar-hidden();
5
4
  .transition(color, @tui-duration-fast);
6
5
 
7
6
  --t-height: calc(var(--tui-height-l) + 2.5 * var(--t-label) * var(--tui-font-offset));
@@ -26,6 +25,7 @@ tui-textfield:where(*&) {
26
25
  font: var(--tui-typography-ui-m);
27
26
  box-sizing: border-box;
28
27
  isolation: isolate;
28
+ scrollbar-width: thin;
29
29
 
30
30
  &[tuiAppearance] {
31
31
  outline: none;
@@ -325,8 +325,12 @@ tui-textfield:where(*&) {
325
325
  border-radius: inherit;
326
326
  }
327
327
 
328
- textarea ~ .t-content {
329
- min-inline-size: 1px;
328
+ textarea {
329
+ scrollbar-width: thin;
330
+
331
+ & ~ .t-content {
332
+ min-inline-size: 1px;
333
+ }
330
334
  }
331
335
 
332
336
  &:is([data-mode~='readonly'], [data-state='disabled'], ._empty) [tuiButtonX],
@@ -1,7 +1,7 @@
1
1
  @import '../utils.less';
2
2
 
3
3
  [tuiToast]:where(*&) {
4
- .transition(transform);
4
+ .transition(scale);
5
5
 
6
6
  display: grid;
7
7
  grid-auto-flow: column;
@@ -44,13 +44,10 @@
44
44
  }
45
45
 
46
46
  .appearance-invalid(@content) {
47
- &:is([data-mode~='invalid'], .tui-invalid, :invalid:not(._untouched)):not(
48
- [data-mode~='readonly'],
49
- [data-mode~='valid'],
50
- [data-state='disabled'],
51
- :disabled,
52
- ._disabled
53
- ) {
54
- @content();
47
+ &:is([data-mode~='invalid'], .tui-invalid),
48
+ &:invalid:not(._untouched) {
49
+ &:not([data-mode~='readonly'], [data-mode~='valid'], [data-state='disabled'], :disabled, ._disabled) {
50
+ @content();
51
+ }
55
52
  }
56
53
  }
@@ -45,13 +45,10 @@
45
45
  }
46
46
 
47
47
  @mixin appearance-invalid {
48
- &:is([data-mode~='invalid'], .tui-invalid, :invalid:not(._untouched)):not(
49
- [data-mode~='readonly'],
50
- [data-mode~='valid'],
51
- [data-state='disabled'],
52
- :disabled,
53
- ._disabled
54
- ) {
55
- @content;
48
+ &:is([data-mode~='invalid'], .tui-invalid),
49
+ &:invalid:not(._untouched) {
50
+ &:not([data-mode~='readonly'], [data-mode~='valid'], [data-state='disabled'], :disabled, ._disabled) {
51
+ @content;
52
+ }
56
53
  }
57
54
  }
@@ -104,7 +104,6 @@
104
104
 
105
105
  .scrollbar-hidden() {
106
106
  scrollbar-width: none;
107
- -ms-overflow-style: none;
108
107
 
109
108
  &::-webkit-scrollbar,
110
109
  &::-webkit-scrollbar-thumb {
@@ -96,9 +96,9 @@
96
96
  --tui-text-primary-on-accent-2: #fff;
97
97
  --tui-text-action: #4c66c3;
98
98
  --tui-text-action-hover: #6c86e2;
99
- --tui-text-positive: #3aa981;
99
+ --tui-text-positive: #008764;
100
100
  --tui-text-positive-hover: #7ac5aa;
101
- --tui-text-negative: #ff291a;
101
+ --tui-text-negative: #eb1700;
102
102
  --tui-text-negative-hover: #ff4d4d;
103
103
  // Charts
104
104
  --tui-chart-categorical-00: var(--tui-background-accent-1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/styles",
3
- "version": "5.24.0",
3
+ "version": "5.25.0",
4
4
  "description": "Framework-agnostic package with styles for Taiga UI",
5
5
  "repository": {
6
6
  "type": "git",