@taiga-ui/styles 5.9.0 → 5.10.0-canary.b4fb16b
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.
- package/components/avatar.less +1 -0
- package/components/block.less +7 -0
- package/components/button.less +8 -4
- package/components/chip.less +4 -4
- package/components/icons.less +2 -1
- package/components/label.less +4 -1
- package/components/notification.less +3 -2
- package/components/pin.less +21 -18
- package/components/textfield.less +4 -4
- package/package.json +2 -2
- package/theme/palette.less +10 -10
- package/theme/variables.less +8 -1
package/components/avatar.less
CHANGED
package/components/block.less
CHANGED
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
|
|
26
26
|
position: relative;
|
|
27
27
|
display: inline-flex;
|
|
28
|
+
align-items: center;
|
|
28
29
|
gap: 0.75rem;
|
|
29
30
|
color: var(--tui-text-primary);
|
|
30
31
|
border-radius: var(--t-radius);
|
|
@@ -129,4 +130,10 @@
|
|
|
129
130
|
font-size: 1rem;
|
|
130
131
|
border: none;
|
|
131
132
|
}
|
|
133
|
+
|
|
134
|
+
&::before,
|
|
135
|
+
&::after,
|
|
136
|
+
:where(:is(input[type='checkbox'], input[type='radio'])) {
|
|
137
|
+
align-self: flex-start;
|
|
138
|
+
}
|
|
132
139
|
}
|
package/components/button.less
CHANGED
|
@@ -21,11 +21,13 @@
|
|
|
21
21
|
--t-size: var(--tui-height-l);
|
|
22
22
|
--t-radius: var(--tui-radius-l);
|
|
23
23
|
--t-gap: 0.25rem;
|
|
24
|
-
--t-padding: 0 1.25rem;
|
|
24
|
+
--t-padding: 0.5rem 1.25rem;
|
|
25
25
|
--t-margin: -0.25rem;
|
|
26
26
|
|
|
27
27
|
.button-base();
|
|
28
28
|
|
|
29
|
+
// stylelint-disable-next-line -- graceful degradation
|
|
30
|
+
min-block-size: fit-content;
|
|
29
31
|
block-size: var(--t-size);
|
|
30
32
|
justify-content: center;
|
|
31
33
|
border-radius: var(--t-radius);
|
|
@@ -68,7 +70,7 @@
|
|
|
68
70
|
--t-size: var(--tui-height-s);
|
|
69
71
|
--t-radius: var(--tui-radius-s);
|
|
70
72
|
--t-gap: 0.125rem;
|
|
71
|
-
--t-padding: 0 0.625rem;
|
|
73
|
+
--t-padding: 0.125rem 0.625rem;
|
|
72
74
|
--t-margin: -0.125rem;
|
|
73
75
|
|
|
74
76
|
font: var(--tui-typography-body-s);
|
|
@@ -89,7 +91,7 @@
|
|
|
89
91
|
--t-size: var(--tui-height-m);
|
|
90
92
|
--t-radius: var(--tui-radius-m);
|
|
91
93
|
--t-gap: 0.125rem;
|
|
92
|
-
--t-padding: 0 1rem;
|
|
94
|
+
--t-padding: 0.375rem 1rem;
|
|
93
95
|
--t-margin: -0.375rem;
|
|
94
96
|
|
|
95
97
|
font: var(--tui-typography-body-m);
|
|
@@ -120,7 +122,6 @@
|
|
|
120
122
|
&[tuiButtonVertical] {
|
|
121
123
|
// StackBlitz changes "0rem" to "0" breaking calc
|
|
122
124
|
--t-margin: ~'0rem' !important;
|
|
123
|
-
--t-line-height: 1rem;
|
|
124
125
|
|
|
125
126
|
flex-direction: column;
|
|
126
127
|
flex-shrink: 1;
|
|
@@ -133,6 +134,9 @@
|
|
|
133
134
|
|
|
134
135
|
& > * {
|
|
135
136
|
max-block-size: calc(var(--t-line-height) * 2);
|
|
137
|
+
line-height: inherit !important;
|
|
138
|
+
|
|
139
|
+
--t-line-height: var(--tui-lh) !important;
|
|
136
140
|
}
|
|
137
141
|
}
|
|
138
142
|
|
package/components/chip.less
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
--t-gap: 0.125rem;
|
|
21
21
|
--t-margin: -0.125rem;
|
|
22
22
|
--t-icon-size: 1rem;
|
|
23
|
-
--t-padding: 0 0.625rem;
|
|
23
|
+
--t-padding: 0.125rem 0.625rem;
|
|
24
24
|
--t-size: var(--tui-height-s);
|
|
25
25
|
|
|
26
26
|
.button-base();
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
font: var(--tui-typography-body-s);
|
|
29
29
|
border-radius: var(--tui-radius-m);
|
|
30
30
|
padding: var(--t-padding);
|
|
31
|
-
block-size: var(--t-size);
|
|
31
|
+
min-block-size: var(--t-size);
|
|
32
32
|
inline-size: fit-content;
|
|
33
33
|
max-inline-size: 100%;
|
|
34
34
|
isolation: isolate;
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
&[data-size='xs'] {
|
|
71
|
-
--t-padding: 0 0.375rem;
|
|
71
|
+
--t-padding: 0.125rem 0.375rem;
|
|
72
72
|
--t-size: var(--tui-height-xs);
|
|
73
73
|
|
|
74
74
|
border-radius: var(--tui-radius-xs);
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
&[data-size='m'] {
|
|
82
82
|
--t-margin: -0.375rem;
|
|
83
83
|
--t-icon-size: 1.5rem;
|
|
84
|
-
--t-padding: 0 1rem;
|
|
84
|
+
--t-padding: 0.125rem 1rem;
|
|
85
85
|
--t-size: var(--tui-height-m);
|
|
86
86
|
|
|
87
87
|
font: var(--tui-typography-body-m);
|
package/components/icons.less
CHANGED
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
:where([tuiIcons]&) {
|
|
21
21
|
--t-icon-start: none;
|
|
22
22
|
--t-icon-end: none;
|
|
23
|
-
|
|
23
|
+
// Equals to 1 if the font offset is over 10px (150% OS scaling)
|
|
24
|
+
--t-zoom: ~'calc(clamp(0, var(--t-font-offset, 0) - 10, 1))';
|
|
24
25
|
|
|
25
26
|
&::before,
|
|
26
27
|
&::after {
|
package/components/label.less
CHANGED
|
@@ -29,11 +29,14 @@
|
|
|
29
29
|
|
|
30
30
|
input[type='checkbox'],
|
|
31
31
|
input[type='radio'] {
|
|
32
|
+
font: inherit;
|
|
33
|
+
inset-block-start: calc(var(--tui-lh) / 2);
|
|
34
|
+
transform: translateY(-50%);
|
|
32
35
|
margin-inline-end: 0.5rem;
|
|
33
36
|
|
|
34
37
|
&[data-size='s'] {
|
|
38
|
+
line-height: 1.3;
|
|
35
39
|
margin-inline-end: 0.25rem;
|
|
36
|
-
margin-block-start: 0.125rem;
|
|
37
40
|
}
|
|
38
41
|
}
|
|
39
42
|
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
&::before {
|
|
59
59
|
position: absolute;
|
|
60
60
|
inset-inline-start: -1rem;
|
|
61
|
-
inset-block-start: calc(var(--t-offset) + var(--tui-lh));
|
|
61
|
+
inset-block-start: calc((var(--t-offset) + var(--tui-lh)) * (1 - 0.15 * var(--t-zoom)));
|
|
62
62
|
transform: translateY(-100%);
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -85,7 +85,8 @@
|
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
&::before {
|
|
88
|
-
inset-inline-start: -1rem;
|
|
88
|
+
inset-inline-start: calc(-1rem * (1 - 0.2 * var(--t-zoom)));
|
|
89
|
+
inset-block-start: calc((var(--t-offset) + var(--tui-lh)) * (1 - 0.1 * var(--t-zoom)));
|
|
89
90
|
font-size: 1rem;
|
|
90
91
|
}
|
|
91
92
|
|
package/components/pin.less
CHANGED
|
@@ -14,10 +14,11 @@
|
|
|
14
14
|
* Compass
|
|
15
15
|
*/
|
|
16
16
|
[tuiPin]:where(*&) {
|
|
17
|
-
--t-
|
|
17
|
+
--t-scale: calc(1 + (var(--tui-font-scale) - 1) / 2);
|
|
18
|
+
--t-size: calc(2rem * var(--t-scale));
|
|
18
19
|
|
|
19
|
-
@bubble-width: 1.875rem;
|
|
20
|
-
@bubble-shift: translate(calc(var(--tui-inline) *
|
|
20
|
+
@bubble-width: calc(1.875rem * var(--t-scale));
|
|
21
|
+
@bubble-shift: translate(calc(var(--tui-inline) * -1 * @bubble-width), calc(-1 * @bubble-width));
|
|
21
22
|
@ground-shift: translate(calc(var(--tui-inline) * -50%), -50%);
|
|
22
23
|
|
|
23
24
|
.transition(~'min-inline-size, grid-template-columns, block-size, border, margin, font', @tui-duration-fast);
|
|
@@ -30,7 +31,7 @@
|
|
|
30
31
|
grid-template-rows: 100%;
|
|
31
32
|
grid-template-columns: var(--t-size) 1fr;
|
|
32
33
|
min-inline-size: var(--t-size);
|
|
33
|
-
max-inline-size: 11.25rem;
|
|
34
|
+
max-inline-size: calc(11.25rem * var(--t-scale));
|
|
34
35
|
block-size: var(--t-size);
|
|
35
36
|
text-align: center;
|
|
36
37
|
border-radius: 100rem;
|
|
@@ -39,7 +40,7 @@
|
|
|
39
40
|
box-sizing: border-box;
|
|
40
41
|
color: var(--tui-text-primary-on-accent-2);
|
|
41
42
|
background: var(--tui-background-accent-2);
|
|
42
|
-
box-shadow: 0 0 0 0.125rem var(--tui-background-elevation-1);
|
|
43
|
+
box-shadow: 0 0 0 calc(0.125rem * var(--t-scale)) var(--tui-background-elevation-1);
|
|
43
44
|
border: 0 solid var(--tui-background-accent-2);
|
|
44
45
|
transform: @ground-shift;
|
|
45
46
|
|
|
@@ -48,7 +49,7 @@
|
|
|
48
49
|
});
|
|
49
50
|
|
|
50
51
|
&:empty {
|
|
51
|
-
--t-size: 0.75rem;
|
|
52
|
+
--t-size: calc(0.75rem * var(--t-scale));
|
|
52
53
|
|
|
53
54
|
&::before {
|
|
54
55
|
display: none;
|
|
@@ -127,22 +128,23 @@
|
|
|
127
128
|
|
|
128
129
|
content: '';
|
|
129
130
|
position: absolute;
|
|
130
|
-
inset: 0;
|
|
131
|
+
inset: -1px 0;
|
|
131
132
|
z-index: -1;
|
|
132
133
|
inset-inline-end: -1px;
|
|
133
134
|
background: var(--tui-background-elevation-1);
|
|
134
135
|
border-radius: 100rem;
|
|
135
136
|
mask-image: radial-gradient(
|
|
136
|
-
circle closest-corner at
|
|
137
|
-
transparent calc(100% -
|
|
138
|
-
black calc(100%)
|
|
137
|
+
circle closest-corner at var(--tui-inline-start) center,
|
|
138
|
+
transparent calc(100% - 1px),
|
|
139
|
+
black calc(100% - 0.5px)
|
|
139
140
|
);
|
|
140
|
-
mask-position: calc(var(--t-size) / 2);
|
|
141
|
+
mask-position: calc(var(--tui-inline) * var(--t-size) / 2);
|
|
141
142
|
mask-repeat: no-repeat;
|
|
142
143
|
}
|
|
143
144
|
|
|
144
145
|
[tuiSubtitle] {
|
|
145
146
|
display: flex;
|
|
147
|
+
align-items: center;
|
|
146
148
|
gap: 0.125rem;
|
|
147
149
|
font: var(--tui-typography-ui-2xs);
|
|
148
150
|
color: var(--tui-text-secondary);
|
|
@@ -154,7 +156,7 @@
|
|
|
154
156
|
}
|
|
155
157
|
|
|
156
158
|
&:has(:checked) {
|
|
157
|
-
--t-size: 3.5rem;
|
|
159
|
+
--t-size: calc(3.5rem * var(--t-scale));
|
|
158
160
|
|
|
159
161
|
font: var(--tui-typography-body-l);
|
|
160
162
|
font-weight: bold;
|
|
@@ -190,14 +192,14 @@
|
|
|
190
192
|
}
|
|
191
193
|
|
|
192
194
|
&::after {
|
|
193
|
-
inset-block-start: 4.5rem;
|
|
195
|
+
inset-block-start: calc(4.5rem * var(--t-scale));
|
|
194
196
|
opacity: 1;
|
|
195
197
|
}
|
|
196
198
|
}
|
|
197
199
|
|
|
198
200
|
// TODO: Fallback until Safari 15.4
|
|
199
201
|
&._open {
|
|
200
|
-
--t-size: 3.5rem;
|
|
202
|
+
--t-size: calc(3.5rem * var(--t-scale));
|
|
201
203
|
|
|
202
204
|
font: var(--tui-typography-body-l);
|
|
203
205
|
font-weight: bold;
|
|
@@ -233,7 +235,7 @@
|
|
|
233
235
|
}
|
|
234
236
|
|
|
235
237
|
&::after {
|
|
236
|
-
inset-block-start: 4.5rem;
|
|
238
|
+
inset-block-start: calc(4.5rem * var(--t-scale));
|
|
237
239
|
opacity: 1;
|
|
238
240
|
}
|
|
239
241
|
}
|
|
@@ -244,10 +246,10 @@
|
|
|
244
246
|
content: '';
|
|
245
247
|
position: absolute;
|
|
246
248
|
z-index: -1;
|
|
247
|
-
inset-block: 50% -0.625rem;
|
|
248
|
-
inset-inline: 50% -0.25rem;
|
|
249
|
+
inset-block: 50% calc(-0.625rem * var(--t-scale));
|
|
250
|
+
inset-inline: 50% calc(-0.25rem * var(--t-scale));
|
|
249
251
|
box-sizing: border-box;
|
|
250
|
-
border-width: 2.2rem @bubble-width;
|
|
252
|
+
border-width: calc(2.2rem * var(--t-scale)) @bubble-width;
|
|
251
253
|
border-style: solid;
|
|
252
254
|
border-color: inherit;
|
|
253
255
|
opacity: 0;
|
|
@@ -256,6 +258,7 @@
|
|
|
256
258
|
pointer-events: none;
|
|
257
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>');
|
|
258
260
|
mask-repeat: no-repeat;
|
|
261
|
+
mask-size: 100%;
|
|
259
262
|
}
|
|
260
263
|
|
|
261
264
|
&::after {
|
|
@@ -41,7 +41,7 @@ tui-textfield:where(*&) {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
&[data-icon-start] {
|
|
44
|
-
--t-start: 2.5rem;
|
|
44
|
+
--t-start: calc(2.5rem * (1 + 0.25 * var(--t-zoom)));
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
&[data-icon-end] {
|
|
@@ -55,8 +55,8 @@ tui-textfield:where(*&) {
|
|
|
55
55
|
inline-size: 1.5rem;
|
|
56
56
|
margin-inline-end: 1rem;
|
|
57
57
|
pointer-events: none;
|
|
58
|
-
//
|
|
59
|
-
|
|
58
|
+
// Compensating zoomed icons at high font-scaling
|
|
59
|
+
max-block-size: calc(var(--t-height) * (1 - 0.2 * var(--t-zoom)));
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
&::after {
|
|
@@ -145,7 +145,7 @@ tui-textfield:where(*&) {
|
|
|
145
145
|
font: var(--tui-typography-ui-s);
|
|
146
146
|
|
|
147
147
|
&[data-icon-start] {
|
|
148
|
-
--t-start: 2.125rem;
|
|
148
|
+
--t-start: calc(2.125rem * (1 + 0.25 * var(--t-zoom)));
|
|
149
149
|
}
|
|
150
150
|
|
|
151
151
|
&[data-icon-end] {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/styles",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.10.0-canary.b4fb16b",
|
|
4
4
|
"description": "Framework-agnostic package with styles for Taiga UI",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,6 +25,6 @@
|
|
|
25
25
|
"./*": "./*"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"@taiga-ui/design-tokens": "~0.
|
|
28
|
+
"@taiga-ui/design-tokens": "~0.304.0"
|
|
29
29
|
}
|
|
30
30
|
}
|
package/theme/palette.less
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
--tui-border-hover: rgba(255, 255, 255, 0.6);
|
|
21
21
|
--tui-border-focus: rgba(255, 255, 255, 0.64);
|
|
22
22
|
// Statuses
|
|
23
|
-
--tui-status-negative:
|
|
24
|
-
--tui-status-negative-pale: rgba(
|
|
25
|
-
--tui-status-negative-pale-hover: rgba(
|
|
23
|
+
--tui-status-negative: #ff4d4d;
|
|
24
|
+
--tui-status-negative-pale: rgba(255, 77, 77, 0.24);
|
|
25
|
+
--tui-status-negative-pale-hover: rgba(255, 77, 77, 0.32);
|
|
26
26
|
--tui-status-positive: rgb(74, 201, 155);
|
|
27
27
|
--tui-status-positive-pale: rgba(74, 201, 155, 0.32);
|
|
28
28
|
--tui-status-positive-pale-hover: rgba(74, 201, 155, 0.4);
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
--tui-text-action-hover: #526ed3;
|
|
42
42
|
--tui-text-positive: #44c596;
|
|
43
43
|
--tui-text-positive-hover: #3aa981;
|
|
44
|
-
--tui-text-negative: #
|
|
45
|
-
--tui-text-negative-hover: #
|
|
44
|
+
--tui-text-negative: #ff4d4d;
|
|
45
|
+
--tui-text-negative-hover: #f66;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
.light() {
|
|
@@ -75,9 +75,9 @@
|
|
|
75
75
|
--tui-border-hover: rgba(0, 0, 0, 0.16);
|
|
76
76
|
--tui-border-focus: rgba(51, 51, 51, 0.64);
|
|
77
77
|
// Statuses
|
|
78
|
-
--tui-status-negative:
|
|
79
|
-
--tui-status-negative-pale: rgba(
|
|
80
|
-
--tui-status-negative-pale-hover: rgba(
|
|
78
|
+
--tui-status-negative: #ff291a;
|
|
79
|
+
--tui-status-negative-pale: rgba(245, 34, 34, 0.08);
|
|
80
|
+
--tui-status-negative-pale-hover: rgba(245, 34, 34, 0.16);
|
|
81
81
|
--tui-status-positive: rgba(74, 201, 155, 1);
|
|
82
82
|
--tui-status-positive-pale: rgba(74, 201, 155, 0.12);
|
|
83
83
|
--tui-status-positive-pale-hover: rgba(74, 201, 155, 0.24);
|
|
@@ -98,8 +98,8 @@
|
|
|
98
98
|
--tui-text-action-hover: #6c86e2;
|
|
99
99
|
--tui-text-positive: #3aa981;
|
|
100
100
|
--tui-text-positive-hover: #7ac5aa;
|
|
101
|
-
--tui-text-negative: #
|
|
102
|
-
--tui-text-negative-hover: #
|
|
101
|
+
--tui-text-negative: #ff291a;
|
|
102
|
+
--tui-text-negative-hover: #ff4d4d;
|
|
103
103
|
// Charts
|
|
104
104
|
--tui-chart-categorical-00: var(--tui-background-accent-1);
|
|
105
105
|
--tui-chart-categorical-01: #ea97c4;
|
package/theme/variables.less
CHANGED
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
// Fonts
|
|
7
7
|
--tui-typography-family-text: 'Manrope', system-ui, sans-serif;
|
|
8
8
|
--tui-typography-family-display: 'Manrope', system-ui, sans-serif;
|
|
9
|
-
--tui-font-offset:
|
|
9
|
+
--tui-font-offset: calc(var(--t-font-offset, 0) * 1px);
|
|
10
|
+
--tui-font-scale: calc((22 + var(--t-font-offset, 0)) / 22);
|
|
10
11
|
// Heading
|
|
11
12
|
--tui-typography-heading-h1: bold calc(var(--tui-font-offset) + 3.125rem) / calc(56 / 50) var(--tui-typography-family-display);
|
|
12
13
|
--tui-typography-heading-h2: bold calc(var(--tui-font-offset) + 2.75rem) / calc(48 / 44) var(--tui-typography-family-display);
|
|
@@ -53,6 +54,12 @@
|
|
|
53
54
|
@supports (font-size: 1lh) {
|
|
54
55
|
--tui-lh: 1lh;
|
|
55
56
|
}
|
|
57
|
+
|
|
58
|
+
// TODO: drop in v6
|
|
59
|
+
--tui-duration-slowest: calc(var(--tui-duration) / 0.429);
|
|
60
|
+
--tui-duration-slow: calc(var(--tui-duration) / 0.6);
|
|
61
|
+
--tui-duration-fast: calc(var(--tui-duration) / 2);
|
|
62
|
+
--tui-duration-fastest: calc(var(--tui-duration) / 4);
|
|
56
63
|
}
|
|
57
64
|
|
|
58
65
|
[dir='rtl'] {
|