@progress/kendo-theme-default 10.1.0-dev.4 → 10.1.0-dev.6
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/dist/all.css +1 -1
- package/dist/default-blue.css +1 -1
- package/dist/default-dataviz-v4.css +1 -1
- package/dist/default-green.css +1 -1
- package/dist/default-main-dark.css +1 -1
- package/dist/default-main.css +1 -1
- package/dist/default-nordic.css +1 -1
- package/dist/default-ocean-blue-a11y.css +1 -1
- package/dist/default-ocean-blue.css +1 -1
- package/dist/default-orange.css +1 -1
- package/dist/default-purple.css +1 -1
- package/dist/default-turquoise.css +1 -1
- package/dist/default-urban.css +1 -1
- package/dist/meta/sassdoc-data.json +3348 -1460
- package/dist/meta/sassdoc-raw-data.json +1577 -727
- package/dist/meta/variables.json +221 -29
- package/lib/swatches/default-blue.json +1 -1
- package/lib/swatches/default-dataviz-v4.json +1 -1
- package/lib/swatches/default-green.json +1 -1
- package/lib/swatches/default-main-dark.json +1 -1
- package/lib/swatches/default-main.json +1 -1
- package/lib/swatches/default-nordic.json +1 -1
- package/lib/swatches/default-ocean-blue-a11y.json +1 -1
- package/lib/swatches/default-ocean-blue.json +1 -1
- package/lib/swatches/default-orange.json +1 -1
- package/lib/swatches/default-purple.json +1 -1
- package/lib/swatches/default-turquoise.json +1 -1
- package/lib/swatches/default-urban.json +1 -1
- package/package.json +4 -4
- package/scss/button/_variables.scss +8 -8
- package/scss/checkbox/_layout.scss +15 -3
- package/scss/checkbox/_variables.scss +2 -2
- package/scss/dock-manager/_layout.scss +4 -0
- package/scss/index.scss +3 -0
- package/scss/input/_layout.scss +52 -0
- package/scss/input/_theme.scss +1 -0
- package/scss/input/_variables.scss +7 -0
- package/scss/otp/_index.scss +18 -0
- package/scss/otp/_layout.scss +41 -0
- package/scss/otp/_theme.scss +12 -0
- package/scss/otp/_variables.scss +61 -0
- package/scss/pdf-viewer/_layout.scss +15 -0
- package/scss/radio/_layout.scss +12 -1
- package/scss/radio/_variables.scss +1 -1
- package/scss/tabstrip/_layout.scss +109 -1
- package/scss/tabstrip/_theme.scss +47 -0
- package/scss/tabstrip/_variables.scss +64 -0
- package/scss/toolbar/_layout.scss +99 -9
- package/scss/toolbar/_theme.scss +89 -8
- package/scss/toolbar/_variables.scss +34 -9
|
@@ -26,6 +26,13 @@
|
|
|
26
26
|
|
|
27
27
|
// Checkbox indicator
|
|
28
28
|
.k-checkbox::before {
|
|
29
|
+
@if $kendo-checkbox-indicator-type == "image" {
|
|
30
|
+
content: "";
|
|
31
|
+
display: block;
|
|
32
|
+
width: 100%;
|
|
33
|
+
height: 100%;
|
|
34
|
+
mask-repeat: no-repeat;
|
|
35
|
+
}
|
|
29
36
|
@if $kendo-checkbox-indicator-type == "glyph" {
|
|
30
37
|
content: $kendo-checkbox-checked-glyph;
|
|
31
38
|
width: 1em;
|
|
@@ -40,12 +47,14 @@
|
|
|
40
47
|
}
|
|
41
48
|
}
|
|
42
49
|
|
|
43
|
-
|
|
44
50
|
// Checked state
|
|
45
51
|
.k-checkbox:checked,
|
|
46
52
|
.k-checkbox.k-checked {
|
|
47
53
|
@if $kendo-checkbox-indicator-type == "image" {
|
|
48
|
-
|
|
54
|
+
&::before {
|
|
55
|
+
background-color: currentColor;
|
|
56
|
+
mask-image: $kendo-checkbox-checked-image;
|
|
57
|
+
}
|
|
49
58
|
}
|
|
50
59
|
|
|
51
60
|
@if $kendo-checkbox-indicator-type == "glyph" {
|
|
@@ -60,7 +69,10 @@
|
|
|
60
69
|
.k-checkbox:indeterminate,
|
|
61
70
|
.k-checkbox.k-indeterminate {
|
|
62
71
|
@if $kendo-checkbox-indicator-type == "image" {
|
|
63
|
-
|
|
72
|
+
&::before {
|
|
73
|
+
background-color: currentColor;
|
|
74
|
+
mask-image: $kendo-checkbox-indeterminate-image;
|
|
75
|
+
}
|
|
64
76
|
}
|
|
65
77
|
|
|
66
78
|
@if $kendo-checkbox-indicator-type == "glyph" {
|
|
@@ -160,10 +160,10 @@ $kendo-checkbox-indeterminate-glyph: "\e121" !default;
|
|
|
160
160
|
|
|
161
161
|
/// The image for a checked CheckBox indicator.
|
|
162
162
|
/// @group checkbox
|
|
163
|
-
$kendo-checkbox-checked-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#
|
|
163
|
+
$kendo-checkbox-checked-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#ffffff' stroke-linecap='square' stroke-linejoin='square' stroke-width='2' d='M3,8 l3,3 l7-7'/></svg>") ) !default;
|
|
164
164
|
/// The image for a indeterminate CheckBox indicator.
|
|
165
165
|
/// @group checkbox
|
|
166
|
-
$kendo-checkbox-indeterminate-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#
|
|
166
|
+
$kendo-checkbox-indeterminate-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#ff6358' stroke-linecap='square' stroke-linejoin='square' stroke-width='2' d='M4,8 h8'/></svg>") ) !default;
|
|
167
167
|
|
|
168
168
|
|
|
169
169
|
// CheckBox label
|
package/scss/index.scss
CHANGED
|
@@ -114,6 +114,7 @@
|
|
|
114
114
|
@forward "./map/_index.scss";
|
|
115
115
|
@forward "./orgchart/_index.scss";
|
|
116
116
|
@forward "./signature/_index.scss";
|
|
117
|
+
@forward "./otp/_index.scss";
|
|
117
118
|
|
|
118
119
|
|
|
119
120
|
// Use component modules
|
|
@@ -200,6 +201,7 @@
|
|
|
200
201
|
@use "./switch/_index.scss" as *;
|
|
201
202
|
@use "./upload/_index.scss" as *;
|
|
202
203
|
@use "./dropzone/_index.scss" as *;
|
|
204
|
+
@use "./otp/_index.scss" as *;
|
|
203
205
|
|
|
204
206
|
|
|
205
207
|
// Command interfaces
|
|
@@ -372,6 +374,7 @@
|
|
|
372
374
|
@include kendo-switch--styles();
|
|
373
375
|
@include kendo-upload--styles();
|
|
374
376
|
@include kendo-dropzone--styles();
|
|
377
|
+
@include kendo-otp--styles();
|
|
375
378
|
|
|
376
379
|
|
|
377
380
|
// Command interfaces
|
package/scss/input/_layout.scss
CHANGED
|
@@ -237,6 +237,58 @@
|
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
239
|
|
|
240
|
+
// Input group
|
|
241
|
+
.k-input-group {
|
|
242
|
+
margin: 0;
|
|
243
|
+
padding: 0;
|
|
244
|
+
border-width: 0;
|
|
245
|
+
box-sizing: border-box;
|
|
246
|
+
list-style: none;
|
|
247
|
+
outline: 0;
|
|
248
|
+
display: inline-flex;
|
|
249
|
+
flex-flow: row nowrap;
|
|
250
|
+
vertical-align: middle;
|
|
251
|
+
position: relative;
|
|
252
|
+
-webkit-touch-callout: none;
|
|
253
|
+
-webkit-tap-highlight-color: $kendo-color-rgba-transparent;
|
|
254
|
+
|
|
255
|
+
> .k-input + .k-input {
|
|
256
|
+
margin-inline-start: if( $kendo-input-border-width == 0, null, -$kendo-input-border-width );
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
> .k-input:hover,
|
|
260
|
+
> .k-input.k-hover,
|
|
261
|
+
> .k-input:focus,
|
|
262
|
+
> .k-input:focus-within,
|
|
263
|
+
> .k-input.k-focus,
|
|
264
|
+
> .k-input:active,
|
|
265
|
+
> .k-input.k-active,
|
|
266
|
+
> .k-input.k-selected {
|
|
267
|
+
z-index: 2;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.k-input:not(:first-child):not(:last-child) {
|
|
271
|
+
border-start-end-radius: 0;
|
|
272
|
+
border-end-end-radius: 0;
|
|
273
|
+
border-start-start-radius: 0;
|
|
274
|
+
border-end-start-radius: 0;
|
|
275
|
+
}
|
|
276
|
+
> .k-input:first-child:not(:only-child) {
|
|
277
|
+
border-start-end-radius: 0;
|
|
278
|
+
border-end-end-radius: 0;
|
|
279
|
+
}
|
|
280
|
+
> .k-input:last-child:not(:only-child) {
|
|
281
|
+
border-start-start-radius: 0;
|
|
282
|
+
border-end-start-radius: 0;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
&:disabled,
|
|
286
|
+
&[disabled],
|
|
287
|
+
&.k-disabled {
|
|
288
|
+
opacity: 1;
|
|
289
|
+
filter: none;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
240
292
|
|
|
241
293
|
// Input with icon styles
|
|
242
294
|
.k-input-icon,
|
package/scss/input/_theme.scss
CHANGED
|
@@ -72,6 +72,13 @@ $kendo-input-md-line-height: $kendo-input-line-height !default;
|
|
|
72
72
|
/// @group input
|
|
73
73
|
$kendo-input-lg-line-height: var( --kendo-line-height-lg, normal ) !default;
|
|
74
74
|
|
|
75
|
+
/// The calculated height of the Input.
|
|
76
|
+
/// @group input
|
|
77
|
+
$kendo-input-calc-size: calc( ( #{$kendo-input-line-height} * 1em ) + ( #{$kendo-input-padding-y} * 2 ) + ( #{$kendo-input-border-width * 2} ) ) !default;
|
|
78
|
+
$kendo-input-sm-calc-size: calc( ( #{$kendo-input-sm-line-height} * 1em ) + ( #{$kendo-input-sm-padding-y} * 2 ) + ( #{$kendo-input-border-width * 2} ) ) !default;
|
|
79
|
+
$kendo-input-md-calc-size: calc( ( #{$kendo-input-md-line-height} * 1em ) + ( #{$kendo-input-md-padding-y} * 2 ) + ( #{$kendo-input-border-width * 2} ) ) !default;
|
|
80
|
+
$kendo-input-lg-calc-size: calc( ( #{$kendo-input-lg-line-height} * 1em ) + ( #{$kendo-input-lg-padding-y} * 2 ) + ( #{$kendo-input-border-width * 2} ) ) !default;
|
|
81
|
+
|
|
75
82
|
/// The sizes map for the Input components.
|
|
76
83
|
/// @group input
|
|
77
84
|
$kendo-input-sizes: (
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Dependencies
|
|
2
|
+
@use "../core/_index.scss" as *;
|
|
3
|
+
@use "../input/_index.scss" as *;
|
|
4
|
+
|
|
5
|
+
// Component
|
|
6
|
+
@forward "./_variables.scss";
|
|
7
|
+
@use "./_layout.scss" as *;
|
|
8
|
+
@use "./_theme.scss" as *;
|
|
9
|
+
|
|
10
|
+
// Expose
|
|
11
|
+
@mixin kendo-otp--styles() {
|
|
12
|
+
@include import-once( "otp" ) {
|
|
13
|
+
@include core-styles();
|
|
14
|
+
@include kendo-input--styles();
|
|
15
|
+
@include kendo-otp--layout();
|
|
16
|
+
@include kendo-otp--theme();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
@use "sass:map";
|
|
2
|
+
@use "./_variables.scss" as *;
|
|
3
|
+
@use "../core/_index.scss" as *;
|
|
4
|
+
@use "../input/_variables.scss" as *;
|
|
5
|
+
|
|
6
|
+
@mixin kendo-otp--layout-base() {
|
|
7
|
+
// OTP
|
|
8
|
+
.k-otp {
|
|
9
|
+
display: flex;
|
|
10
|
+
width: min-content;
|
|
11
|
+
align-items: center;
|
|
12
|
+
flex-direction: row;
|
|
13
|
+
|
|
14
|
+
.k-otp-input > .k-input-inner {
|
|
15
|
+
text-align: center;
|
|
16
|
+
padding-inline: 0;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@each $size, $size-props in $kendo-otp-sizes {
|
|
21
|
+
$_gap: map.get($size-props, gap);
|
|
22
|
+
$_separator-padding-x: map.get($size-props, separator-padding-x);
|
|
23
|
+
$_input-width: map.get($size-props, input-width);
|
|
24
|
+
|
|
25
|
+
.k-otp-#{$size} {
|
|
26
|
+
gap: $_gap;
|
|
27
|
+
|
|
28
|
+
.k-otp-input {
|
|
29
|
+
min-width: $_input-width;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.k-otp-separator:not(:empty) {
|
|
33
|
+
padding-inline: $_separator-padding-x;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
@mixin kendo-otp--layout() {
|
|
40
|
+
@include kendo-otp--layout-base();
|
|
41
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
@use "../core/_index.scss" as *;
|
|
2
|
+
@use "../input/_variables.scss" as *;
|
|
3
|
+
|
|
4
|
+
// OTP
|
|
5
|
+
|
|
6
|
+
/// The gap between the items in the OTP.
|
|
7
|
+
/// @group one-time-password
|
|
8
|
+
$kendo-otp-gap: k-spacing(1.5) !default;
|
|
9
|
+
/// The gap between the items in the small OTP.
|
|
10
|
+
/// @group one-time-password
|
|
11
|
+
$kendo-otp-sm-gap: k-spacing(1) !default;
|
|
12
|
+
/// The gap between the items in the medium OTP.
|
|
13
|
+
/// @group one-time-password
|
|
14
|
+
$kendo-otp-md-gap: $kendo-otp-gap !default;
|
|
15
|
+
/// The gap between the items in the large OTP.
|
|
16
|
+
/// @group one-time-password
|
|
17
|
+
$kendo-otp-lg-gap: k-spacing(2) !default;
|
|
18
|
+
|
|
19
|
+
/// The horizontal padding of the OTP separator.
|
|
20
|
+
/// @group one-time-password
|
|
21
|
+
$kendo-otp-separator-padding-x: $kendo-otp-gap !default;
|
|
22
|
+
/// The horizontal padding of the small OTP separator.
|
|
23
|
+
/// @group one-time-password
|
|
24
|
+
$kendo-otp-sm-separator-padding-x: $kendo-otp-sm-gap !default;
|
|
25
|
+
/// The horizontal padding of the medium OTP separator.
|
|
26
|
+
/// @group one-time-password
|
|
27
|
+
$kendo-otp-md-separator-padding-x: $kendo-otp-separator-padding-x !default;
|
|
28
|
+
/// The horizontal padding of the large OTP separator.
|
|
29
|
+
/// @group one-time-password
|
|
30
|
+
$kendo-otp-lg-separator-padding-x: $kendo-otp-lg-gap !default;
|
|
31
|
+
|
|
32
|
+
/// The horizontal padding of the OTP separator.
|
|
33
|
+
/// @group one-time-password
|
|
34
|
+
$kendo-otp-input-width: $kendo-input-calc-size !default;
|
|
35
|
+
/// The horizontal padding of the small OTP separator.
|
|
36
|
+
/// @group one-time-password
|
|
37
|
+
$kendo-otp-sm-input-width: $kendo-input-sm-calc-size !default;
|
|
38
|
+
/// The horizontal padding of the medium OTP separator.
|
|
39
|
+
/// @group one-time-password
|
|
40
|
+
$kendo-otp-md-input-width: $kendo-otp-input-width !default;
|
|
41
|
+
/// The horizontal padding of the large OTP separator.
|
|
42
|
+
/// @group one-time-password
|
|
43
|
+
$kendo-otp-lg-input-width: $kendo-input-lg-calc-size !default;
|
|
44
|
+
|
|
45
|
+
$kendo-otp-sizes: (
|
|
46
|
+
sm: (
|
|
47
|
+
gap: $kendo-otp-sm-gap,
|
|
48
|
+
separator-padding-x: $kendo-otp-sm-separator-padding-x,
|
|
49
|
+
input-width: $kendo-otp-sm-input-width
|
|
50
|
+
),
|
|
51
|
+
md: (
|
|
52
|
+
gap: $kendo-otp-md-gap,
|
|
53
|
+
separator-padding-x: $kendo-otp-md-separator-padding-x,
|
|
54
|
+
input-width: $kendo-otp-md-input-width
|
|
55
|
+
),
|
|
56
|
+
lg: (
|
|
57
|
+
gap: $kendo-otp-lg-gap,
|
|
58
|
+
separator-padding-x: $kendo-otp-lg-separator-padding-x,
|
|
59
|
+
input-width: $kendo-otp-lg-input-width
|
|
60
|
+
)
|
|
61
|
+
) !default;
|
|
@@ -149,6 +149,7 @@
|
|
|
149
149
|
|
|
150
150
|
section {
|
|
151
151
|
position: absolute;
|
|
152
|
+
pointer-events: auto;
|
|
152
153
|
}
|
|
153
154
|
|
|
154
155
|
.k-annotation-text-content {
|
|
@@ -160,6 +161,14 @@
|
|
|
160
161
|
user-select: none;
|
|
161
162
|
pointer-events: none;
|
|
162
163
|
}
|
|
164
|
+
|
|
165
|
+
.k-link-annotation > a {
|
|
166
|
+
position: absolute;
|
|
167
|
+
top: 0;
|
|
168
|
+
left: 0;
|
|
169
|
+
width: 100%;
|
|
170
|
+
height: 100%;
|
|
171
|
+
}
|
|
163
172
|
}
|
|
164
173
|
|
|
165
174
|
.k-annotation-editor-layer {
|
|
@@ -193,6 +202,12 @@
|
|
|
193
202
|
height: 100%;
|
|
194
203
|
pointer-events: auto;
|
|
195
204
|
}
|
|
205
|
+
|
|
206
|
+
&.k-highlight-editor-disabled {
|
|
207
|
+
.k-internal {
|
|
208
|
+
pointer-events: none;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
196
211
|
}
|
|
197
212
|
|
|
198
213
|
.k-free-text-editor {
|
package/scss/radio/_layout.scss
CHANGED
|
@@ -40,6 +40,14 @@
|
|
|
40
40
|
top: 50%;
|
|
41
41
|
left: 50%;
|
|
42
42
|
}
|
|
43
|
+
|
|
44
|
+
@if $kendo-radio-indicator-type == "image" {
|
|
45
|
+
content: "";
|
|
46
|
+
display: block;
|
|
47
|
+
width: 100%;
|
|
48
|
+
height: 100%;
|
|
49
|
+
mask-repeat: no-repeat;
|
|
50
|
+
}
|
|
43
51
|
}
|
|
44
52
|
|
|
45
53
|
|
|
@@ -47,7 +55,10 @@
|
|
|
47
55
|
.k-radio:checked,
|
|
48
56
|
.k-radio.k-checked {
|
|
49
57
|
@if $kendo-radio-indicator-type == "image" {
|
|
50
|
-
|
|
58
|
+
&::before {
|
|
59
|
+
background-color: currentColor;
|
|
60
|
+
mask-image: $kendo-radio-checked-image;
|
|
61
|
+
}
|
|
51
62
|
}
|
|
52
63
|
|
|
53
64
|
@if $kendo-radio-indicator-type == "glyph" {
|
|
@@ -153,7 +153,7 @@ $kendo-radio-checked-glyph: "\e308" !default;
|
|
|
153
153
|
|
|
154
154
|
/// The image of the checked RadioButton indicator.
|
|
155
155
|
/// @group radio
|
|
156
|
-
$kendo-radio-checked-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><circle cx='50%' cy='50%' r='4' fill='#
|
|
156
|
+
$kendo-radio-checked-image: k-escape-svg( url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><circle cx='50%' cy='50%' r='4' fill='#ffffff'/></svg>") ) !default;
|
|
157
157
|
/// The image of the disabled and checked RadioButton indicator.
|
|
158
158
|
/// @group radio
|
|
159
159
|
$kendo-radio-disabled-checked-image: null !default;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
@use "sass:map";
|
|
1
2
|
@use "../core/_index.scss" as *;
|
|
2
3
|
@use "../icons/_variables.scss" as *;
|
|
3
4
|
@use "./variables.scss" as *;
|
|
@@ -169,11 +170,94 @@
|
|
|
169
170
|
// Scrolling
|
|
170
171
|
.k-tabstrip-scrollable {
|
|
171
172
|
> .k-tabstrip-items-wrapper {
|
|
172
|
-
|
|
173
173
|
> .k-tabstrip-items {
|
|
174
174
|
flex-wrap: nowrap;
|
|
175
175
|
white-space: nowrap;
|
|
176
176
|
overflow: hidden;
|
|
177
|
+
|
|
178
|
+
&.k-tabstrip-items-scroll {
|
|
179
|
+
scrollbar-width: none;
|
|
180
|
+
|
|
181
|
+
&::-webkit-scrollbar {
|
|
182
|
+
display: none;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
&.k-tabstrip-top,
|
|
189
|
+
&.k-tabstrip-bottom {
|
|
190
|
+
.k-tabstrip-items.k-tabstrip-items-scroll {
|
|
191
|
+
overflow-x: auto;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
&.k-tabstrip-left,
|
|
196
|
+
&.k-tabstrip-right {
|
|
197
|
+
.k-tabstrip-items.k-tabstrip-items-scroll {
|
|
198
|
+
overflow-y: auto;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
.k-tabstrip-scrollable-overlay {
|
|
204
|
+
.k-tabstrip-items-wrapper {
|
|
205
|
+
&::before,
|
|
206
|
+
&::after {
|
|
207
|
+
content: '';
|
|
208
|
+
position: absolute;
|
|
209
|
+
z-index: 3;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
&.k-tabstrip-top,
|
|
214
|
+
&.k-tabstrip-bottom {
|
|
215
|
+
.k-tabstrip-items-wrapper {
|
|
216
|
+
&::before,
|
|
217
|
+
&::after {
|
|
218
|
+
height: 100%;
|
|
219
|
+
aspect-ratio: 1;
|
|
220
|
+
}
|
|
221
|
+
&::before {
|
|
222
|
+
inset-inline-start: 0;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
&::after {
|
|
226
|
+
inset-inline-end: 0;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
&.k-tabstrip-left,
|
|
232
|
+
&.k-tabstrip-right {
|
|
233
|
+
.k-tabstrip-items-wrapper {
|
|
234
|
+
&::before,
|
|
235
|
+
&::after {
|
|
236
|
+
width: 100%;
|
|
237
|
+
}
|
|
238
|
+
&::before {
|
|
239
|
+
inset-block-start: 0;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
&::after {
|
|
243
|
+
inset-block-end: 0;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
&.k-tabstrip-scrollable-start {
|
|
249
|
+
.k-tabstrip-items-wrapper {
|
|
250
|
+
&::before {
|
|
251
|
+
display: none;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
&.k-tabstrip-scrollable-end {
|
|
257
|
+
.k-tabstrip-items-wrapper {
|
|
258
|
+
&::after {
|
|
259
|
+
display: none;
|
|
260
|
+
}
|
|
177
261
|
}
|
|
178
262
|
}
|
|
179
263
|
}
|
|
@@ -375,6 +459,30 @@
|
|
|
375
459
|
|
|
376
460
|
}
|
|
377
461
|
|
|
462
|
+
// TabStrip sizes
|
|
463
|
+
@each $size, $size-props in $kendo-tabstrip-sizes {
|
|
464
|
+
$_font-size: map.get( $size-props, font-size );
|
|
465
|
+
$_line-height: map.get( $size-props, line-height );
|
|
466
|
+
$_item-padding-x: map.get( $size-props, item-padding-x );
|
|
467
|
+
$_item-padding-y: map.get( $size-props, item-padding-y );
|
|
468
|
+
|
|
469
|
+
.k-tabstrip-#{$size} {
|
|
470
|
+
.k-tabstrip-items .k-link {
|
|
471
|
+
font-size: $_font-size;
|
|
472
|
+
line-height: $_line-height;
|
|
473
|
+
padding-block: $_item-padding-y;
|
|
474
|
+
padding-inline: $_item-padding-x;
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
:is(&.k-tabstrip-left, &.k-tabstrip-right):is(.k-tabstrip-scrollable-overlay) :is(.k-tabstrip-items-wrapper){
|
|
478
|
+
&::before,
|
|
479
|
+
&::after {
|
|
480
|
+
height: calc( ($_line-height * 1em) + ($kendo-tabstrip-border-width * 2) + ($_item-padding-y * 2) );
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
|
|
378
486
|
}
|
|
379
487
|
|
|
380
488
|
|
|
@@ -101,6 +101,53 @@
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
// Scrolling
|
|
105
|
+
.k-tabstrip-scrollable-overlay {
|
|
106
|
+
&.k-tabstrip-top,
|
|
107
|
+
&.k-tabstrip-bottom {
|
|
108
|
+
.k-tabstrip-items-wrapper {
|
|
109
|
+
&::before {
|
|
110
|
+
background: linear-gradient(90deg, $kendo-tabstrip-scroll-overlay);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
&::after {
|
|
114
|
+
background: linear-gradient(270deg, $kendo-tabstrip-scroll-overlay);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
&.k-tabstrip-left,
|
|
120
|
+
&.k-tabstrip-right {
|
|
121
|
+
.k-tabstrip-items-wrapper {
|
|
122
|
+
&::before {
|
|
123
|
+
background: linear-gradient(180deg, $kendo-tabstrip-scroll-overlay);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
&::after {
|
|
127
|
+
background: linear-gradient(360deg, $kendo-tabstrip-scroll-overlay);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// RTL
|
|
135
|
+
.k-rtl,
|
|
136
|
+
[dir="rtl"] {
|
|
137
|
+
&.k-tabstrip-scrollable-overlay {
|
|
138
|
+
&.k-tabstrip-top,
|
|
139
|
+
&.k-tabstrip-bottom {
|
|
140
|
+
.k-tabstrip-items-wrapper {
|
|
141
|
+
&::before {
|
|
142
|
+
background: linear-gradient(270deg, $kendo-tabstrip-scroll-overlay);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
&::after {
|
|
146
|
+
background: linear-gradient(90deg, $kendo-tabstrip-scroll-overlay);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
104
151
|
}
|
|
105
152
|
|
|
106
153
|
|
|
@@ -27,6 +27,25 @@ $kendo-tabstrip-line-height: var( --kendo-line-height, normal ) !default;
|
|
|
27
27
|
/// @group tabstrip
|
|
28
28
|
$kendo-tabstrip-border-width: 1px !default;
|
|
29
29
|
|
|
30
|
+
/// The font size of the small TabStrip.
|
|
31
|
+
/// @group tabstrip
|
|
32
|
+
$kendo-tabstrip-sm-font-size: $kendo-tabstrip-font-size !default;
|
|
33
|
+
/// The line height of the small TabStrip.
|
|
34
|
+
/// @group tabstrip
|
|
35
|
+
$kendo-tabstrip-sm-line-height: $kendo-tabstrip-line-height !default;
|
|
36
|
+
/// The font size of the medium TabStrip.
|
|
37
|
+
/// @group tabstrip
|
|
38
|
+
$kendo-tabstrip-md-font-size: $kendo-tabstrip-font-size !default;
|
|
39
|
+
/// The line height of the medium TabStrip.
|
|
40
|
+
/// @group tabstrip
|
|
41
|
+
$kendo-tabstrip-md-line-height: $kendo-tabstrip-line-height !default;
|
|
42
|
+
/// The font size of the large TabStrip.
|
|
43
|
+
/// @group tabstrip
|
|
44
|
+
$kendo-tabstrip-lg-font-size: var( --kendo-font-size-lg, inherit ) !default;
|
|
45
|
+
/// The line height of the large TabStrip.
|
|
46
|
+
/// @group tabstrip
|
|
47
|
+
$kendo-tabstrip-lg-line-height: var( --kendo-line-height-lg, normal ) !default;
|
|
48
|
+
|
|
30
49
|
/// The background color of the TabStrip wrapper.
|
|
31
50
|
/// @group tabstrip
|
|
32
51
|
$kendo-tabstrip-wrapper-bg: null !default;
|
|
@@ -62,6 +81,24 @@ $kendo-tabstrip-item-border-radius: k-border-radius(md) !default;
|
|
|
62
81
|
/// The gap between the TabStrip items.
|
|
63
82
|
/// @group tabstrip
|
|
64
83
|
$kendo-tabstrip-item-gap: k-spacing(0) !default;
|
|
84
|
+
/// The horizontal padding of the small TabStrip items.
|
|
85
|
+
/// @group tabstrip
|
|
86
|
+
$kendo-tabstrip-sm-item-padding-x: k-spacing(3) !default;
|
|
87
|
+
/// The vertical padding of the small TabStrip items.
|
|
88
|
+
/// @group tabstrip
|
|
89
|
+
$kendo-tabstrip-sm-item-padding-y: k-spacing(1) !default;
|
|
90
|
+
/// The horizontal padding of the medium TabStrip items.
|
|
91
|
+
/// @group tabstrip
|
|
92
|
+
$kendo-tabstrip-md-item-padding-x: $kendo-tabstrip-item-padding-x !default;
|
|
93
|
+
/// The vertical padding of the medium TabStrip items.
|
|
94
|
+
/// @group tabstrip
|
|
95
|
+
$kendo-tabstrip-md-item-padding-y: $kendo-tabstrip-item-padding-y !default;
|
|
96
|
+
/// The horizontal padding of the large TabStrip items.
|
|
97
|
+
/// @group tabstrip
|
|
98
|
+
$kendo-tabstrip-lg-item-padding-x: k-spacing(3) !default;
|
|
99
|
+
/// The vertical padding of the large TabStrip items.
|
|
100
|
+
/// @group tabstrip
|
|
101
|
+
$kendo-tabstrip-lg-item-padding-y: k-spacing(2.5) !default;
|
|
65
102
|
|
|
66
103
|
/// The background color of the TabStrip items.
|
|
67
104
|
/// @group tabstrip
|
|
@@ -162,3 +199,30 @@ $kendo-tabstrip-content-border: $kendo-component-border !default;
|
|
|
162
199
|
/// The border color of the focused TabStrip content.
|
|
163
200
|
/// @group tabstrip
|
|
164
201
|
$kendo-tabstrip-content-focus-border: $kendo-component-text !default;
|
|
202
|
+
|
|
203
|
+
/// The left and right scroll overlay of the TabStrip.
|
|
204
|
+
/// @group tabstrip
|
|
205
|
+
$kendo-tabstrip-scroll-overlay: if($kendo-enable-color-system, k-color( app-surface ), rgba( $kendo-color-white, 0)), if($kendo-enable-color-system, color-mix(in srgb, k-color( app-surface ) 0%, transparent), rgba( $kendo-color-white, 0)) !default;
|
|
206
|
+
|
|
207
|
+
/// The size map of the TabStrip.
|
|
208
|
+
/// @group tabstrip
|
|
209
|
+
$kendo-tabstrip-sizes: (
|
|
210
|
+
sm: (
|
|
211
|
+
font-size: $kendo-tabstrip-sm-font-size,
|
|
212
|
+
line-height: $kendo-tabstrip-sm-line-height,
|
|
213
|
+
item-padding-x: $kendo-tabstrip-sm-item-padding-x,
|
|
214
|
+
item-padding-y: $kendo-tabstrip-sm-item-padding-y
|
|
215
|
+
),
|
|
216
|
+
md: (
|
|
217
|
+
font-size: $kendo-tabstrip-md-font-size,
|
|
218
|
+
line-height: $kendo-tabstrip-md-line-height,
|
|
219
|
+
item-padding-x: $kendo-tabstrip-md-item-padding-x,
|
|
220
|
+
item-padding-y: $kendo-tabstrip-md-item-padding-y
|
|
221
|
+
),
|
|
222
|
+
lg: (
|
|
223
|
+
font-size: $kendo-tabstrip-lg-font-size,
|
|
224
|
+
line-height: $kendo-tabstrip-lg-line-height,
|
|
225
|
+
item-padding-x: $kendo-tabstrip-lg-item-padding-x,
|
|
226
|
+
item-padding-y: $kendo-tabstrip-lg-item-padding-y
|
|
227
|
+
)
|
|
228
|
+
) !default;
|