@progress/kendo-theme-fluent 10.1.0-dev.5 → 10.1.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.
@@ -39,6 +39,37 @@
39
39
  flex-wrap: nowrap;
40
40
  }
41
41
 
42
+ &.k-toolbar-scrollable {
43
+ flex-wrap: nowrap;
44
+ position: relative;
45
+ margin-inline-start: calc( var( --INTERNAL--kendo-toolbar-spacing, 0 ) * -1 );
46
+
47
+ &.k-toolbar-scrollable-overlay {
48
+ &::before {
49
+ content: '';
50
+ height: 100%;
51
+ aspect-ratio: 1;
52
+ position: absolute;
53
+ inset-inline-start: 0;
54
+ z-index: 3;
55
+ }
56
+
57
+ &::after {
58
+ content: '';
59
+ height: 100%;
60
+ aspect-ratio: 1;
61
+ position: absolute;
62
+ inset-inline-end: 0;
63
+ z-index: 3;
64
+ }
65
+
66
+ &.k-toolbar-scrollable-start::before,
67
+ &.k-toolbar-scrollable-end::after {
68
+ display: none;
69
+ }
70
+ }
71
+ }
72
+
42
73
  > * {
43
74
  flex-shrink: 0;
44
75
  display: inline-flex;
@@ -60,19 +91,20 @@
60
91
  width: min-content;
61
92
  }
62
93
 
94
+
63
95
  // Overflow anchor
64
96
  .k-toolbar-overflow-button {
65
97
  margin-inline-start: auto;
66
98
  }
67
99
 
68
- // Separator
69
- .k-separator,
70
- .k-toolbar-separator {
71
- width: 0;
72
- height: calc( var( --kendo-toolbar-line-height, #{$kendo-toolbar-line-height} ) * 1em );
73
- border-width: 0 0 0 1px;
74
- border-style: solid;
75
- align-self: center;
100
+ // Overflow separator
101
+ .k-toolbar-separator.k-toolbar-button-separator {
102
+ margin-inline-start: auto;
103
+ height: var( --INTERNAL--kendo-toolbar-separator-height, 100% );
104
+
105
+ + .k-toolbar-overflow-button {
106
+ margin-inline-start: 0;
107
+ }
76
108
  }
77
109
 
78
110
  // Spacer
@@ -89,6 +121,47 @@
89
121
  }
90
122
  }
91
123
 
124
+ // Separator
125
+ .k-toolbar .k-separator,
126
+ .k-toolbar-separator {
127
+ width: 0;
128
+ height: calc( var( --kendo-toolbar-line-height, #{$kendo-toolbar-line-height} ) * 1em );
129
+ border-width: 0 0 0 1px;
130
+ border-style: solid;
131
+ align-self: center;
132
+ }
133
+
134
+ .k-toolbar-items {
135
+ display: flex;
136
+ flex-flow: row nowrap;
137
+ gap: var( --INTERNAL--kendo-toolbar-spacing, 0 );
138
+ align-items: center;
139
+ justify-content: flex-start;
140
+ flex: 1 1 auto;
141
+ overflow: hidden;
142
+ }
143
+
144
+ .k-toolbar-items-scroll {
145
+ overflow-x: auto;
146
+ scrollbar-width: none;
147
+
148
+ &::-webkit-scrollbar {
149
+ display: none;
150
+ }
151
+ }
152
+
153
+ .k-toolbar-items-list {
154
+ display: flex;
155
+ flex-flow: row wrap;
156
+ padding-inline: var( --INTERNAL--kendo-toolbar-padding-x, 0 );
157
+ padding-block: var( --INTERNAL--kendo-toolbar-padding-y, 0 );
158
+ gap: var( --INTERNAL--kendo-toolbar-spacing, 0 );
159
+ align-items: center;
160
+ justify-content: flex-start;
161
+ flex: 1 1 auto;
162
+ overflow: hidden;
163
+ }
164
+
92
165
  // Outline Toolbar
93
166
  .k-toolbar-outline {
94
167
  border-width: var( --kendo-toolbar-outline-border-width, #{$kendo-toolbar-outline-border-width} );
@@ -115,13 +188,17 @@
115
188
  $_padding-x: map.get( $size-props, padding-x );
116
189
  $_padding-y: map.get( $size-props, padding-y );
117
190
  $_spacing: map.get( $size-props, spacing );
191
+ $_separator-height: map.get( $size-props, separator-height );
118
192
 
119
- .k-toolbar-#{$size} {
193
+ .k-toolbar-#{$size},
194
+ .k-toolbar-items-list-#{$size} {
120
195
  --INTERNAL--kendo-toolbar-padding-x: var( --kendo-toolbar-#{$size}-padding-x, #{$_padding-x} );
121
196
  --INTERNAL--kendo-toolbar-padding-y: var( --kendo-toolbar-#{$size}-padding-y, #{$_padding-y} );
122
197
  --INTERNAL--kendo-toolbar-spacing: var( --kendo-toolbar-#{$size}-spacing, #{$_spacing} );
198
+ --INTERNAL--kendo-toolbar-separator-height: var( --kendo-toolbar-#{$size}-separator-height, #{$_separator-height} );
123
199
  }
124
200
  }
201
+
125
202
  // Remove once we decide to not size empty containers
126
203
  .k-toolbar-sm::before {
127
204
  height: var( --kendo-button-sm-inner-calc-size, #{$kendo-button-sm-inner-calc-size} );
@@ -5,11 +5,6 @@
5
5
 
6
6
  // Theme
7
7
  .k-toolbar {
8
- // Separator
9
- .k-separator,
10
- .k-toolbar-separator {
11
- border-color: var( --kendo-toolbar-separator-border, #{$kendo-toolbar-separator-border} );
12
- }
13
8
 
14
9
  // Template item
15
10
  .k-toolbar-item:focus,
@@ -19,6 +14,16 @@
19
14
 
20
15
  }
21
16
 
17
+ // Separator
18
+ .k-toolbar .k-separator,
19
+ .k-toolbar-separator {
20
+ border-color: var( --kendo-toolbar-separator-border, #{$kendo-toolbar-separator-border} );
21
+ }
22
+
23
+ .k-toolbar-items {
24
+ border-color: inherit;
25
+ }
26
+
22
27
  // Solid Toolbar
23
28
  .k-toolbar-solid {
24
29
  @include fill (
@@ -26,6 +31,20 @@
26
31
  var( --kendo-toolbar-bg, #{$kendo-toolbar-bg} ),
27
32
  var( --kendo-toolbar-border, #{$kendo-toolbar-border} )
28
33
  );
34
+
35
+ &.k-toolbar-scrollable-overlay {
36
+ &::before {
37
+ background: linear-gradient(90deg, var( --kendo-toolbar-scroll-overlay, #{$kendo-toolbar-scroll-overlay} ));
38
+ }
39
+
40
+ &::after {
41
+ background: linear-gradient(270deg, var( --kendo-toolbar-scroll-overlay, #{$kendo-toolbar-scroll-overlay} ));
42
+ }
43
+ }
44
+ }
45
+
46
+ .k-toolbar-items-list-solid {
47
+ border-color: var( --kendo-toolbar-border, #{$kendo-toolbar-border} );
29
48
  }
30
49
 
31
50
  // Outline Toolbar
@@ -34,6 +53,20 @@
34
53
  $color: var( --kendo-toolbar-outline-text, #{$kendo-toolbar-outline-text} ),
35
54
  $border: var( --kendo-toolbar-outline-border, #{$kendo-toolbar-outline-border} )
36
55
  );
56
+
57
+ &.k-toolbar-scrollable-overlay {
58
+ &::before {
59
+ background: linear-gradient(90deg, var( --kendo-toolbar-outline-scroll-overlay, #{$kendo-toolbar-outline-scroll-overlay} ));
60
+ }
61
+
62
+ &::after {
63
+ background: linear-gradient(270deg, var( --kendo-toolbar-outline-scroll-overlay, #{$kendo-toolbar-outline-scroll-overlay} ));
64
+ }
65
+ }
66
+ }
67
+
68
+ .k-toolbar-items-list-outline {
69
+ border-color: var( --kendo-toolbar-outline-border, #{$kendo-toolbar-outline-border} );
37
70
  }
38
71
 
39
72
  // Flat Toolbar
@@ -43,9 +76,24 @@
43
76
  $border: var( --kendo-toolbar-flat-border, #{$kendo-toolbar-flat-border} )
44
77
  );
45
78
 
46
- > .k-separator {
79
+ > .k-separator,
80
+ .k-toolbar-separator {
47
81
  border-inline-color: var( --kendo-toolbar-flat-border, #{$kendo-toolbar-flat-border} );
48
82
  }
83
+
84
+ &.k-toolbar-scrollable-overlay {
85
+ &::before {
86
+ background: linear-gradient(90deg, var( --kendo-toolbar-flat-scroll-overlay, #{$kendo-toolbar-flat-scroll-overlay} ));
87
+ }
88
+
89
+ &::after {
90
+ background: linear-gradient(270deg, var( --kendo-toolbar-flat-scroll-overlay, #{$kendo-toolbar-flat-scroll-overlay} ));
91
+ }
92
+ }
93
+ }
94
+
95
+ .k-toolbar-items-list-flat {
96
+ border-color: var( --kendo-toolbar-flat-border, #{$kendo-toolbar-flat-border} );
49
97
  }
50
98
 
51
99
  // stylelint-disable selector-class-pattern
@@ -95,7 +143,40 @@
95
143
  color: inherit;
96
144
  }
97
145
  }
146
+ }
98
147
 
148
+ // RTL
149
+ .k-rtl,
150
+ [dir="rtl"] {
151
+ .k-toolbar-scrollable-overlay {
152
+ &::before {
153
+ background: linear-gradient(270deg, var( --kendo-toolbar-scroll-overlay, #{$kendo-toolbar-scroll-overlay} ));
154
+ }
155
+
156
+ &::after {
157
+ background: linear-gradient(90deg, var( --kendo-toolbar-scroll-overlay, #{$kendo-toolbar-scroll-overlay} ));
158
+ }
159
+
160
+ &.k-toolbar-outline {
161
+ &::before {
162
+ background: linear-gradient(270deg, var( --kendo-toolbar-outline-scroll-overlay, #{$kendo-toolbar-outline-scroll-overlay} ));
163
+ }
164
+
165
+ &::after {
166
+ background: linear-gradient(90deg, var( --kendo-toolbar-outline-scroll-overlay, #{$kendo-toolbar-outline-scroll-overlay} ));
167
+ }
168
+ }
169
+
170
+ &.k-toolbar-flat {
171
+ &::before {
172
+ background: linear-gradient(270deg, var( --kendo-toolbar-flat-scroll-overlay, #{$kendo-toolbar-flat-scroll-overlay} ));
173
+ }
174
+
175
+ &::after {
176
+ background: linear-gradient(90deg, var( --kendo-toolbar-flat-scroll-overlay, #{$kendo-toolbar-flat-scroll-overlay} ));
177
+ }
178
+ }
179
+ }
99
180
  }
100
181
 
101
182
  }
@@ -1,5 +1,6 @@
1
1
  @use "sass:map";
2
2
  @use "../core/_index.scss" as *;
3
+ @use "../button/_variables.scss" as *;
3
4
 
4
5
  /// The horizontal padding of the small Toolbar.
5
6
  /// @group toolbar
@@ -31,6 +32,16 @@ $kendo-toolbar-md-spacing: k-spacing(2) !default;
31
32
  /// @group toolbar
32
33
  $kendo-toolbar-lg-spacing: k-spacing(2) !default;
33
34
 
35
+ /// The height of the small Toolbar button separator.
36
+ /// @group toolbar
37
+ $kendo-toolbar-sm-separator-height: $kendo-button-sm-calc-size !default;
38
+ /// The height of the medium Toolbar button separator.
39
+ /// @group toolbar
40
+ $kendo-toolbar-md-separator-height: $kendo-button-md-calc-size !default;
41
+ /// The height of the large Toolbar button separator.
42
+ /// @group toolbar
43
+ $kendo-toolbar-lg-separator-height: $kendo-button-lg-calc-size !default;
44
+
34
45
  /// The width of the border around the Toolbar.
35
46
  /// @group toolbar
36
47
  $kendo-toolbar-border-width: 1px !default;
@@ -54,6 +65,10 @@ $kendo-toolbar-text: var( --kendo-component-text, inherit ) !default;
54
65
  /// The color of the border around the Toolbar.
55
66
  /// @group toolbar
56
67
  $kendo-toolbar-border: var( --kendo-component-border, initial ) !default;
68
+ /// The left and right scroll overlay of the Toolbar.
69
+ /// @group toolbar
70
+ $kendo-toolbar-scroll-overlay: $kendo-toolbar-bg, if($kendo-enable-color-system, color-mix(in srgb, k-color( app-surface ) 0%, transparent), rgba( $kendo-color-white, 0)) !default;
71
+
57
72
 
58
73
  /// The text color of the outline Toolbar.
59
74
  /// @group toolbar
@@ -64,6 +79,10 @@ $kendo-toolbar-outline-border: k-color(border) !default;
64
79
  /// The width of the border around the outline Toolbar.
65
80
  /// @group toolbar
66
81
  $kendo-toolbar-outline-border-width: $kendo-toolbar-border-width !default;
82
+ /// The left and right scroll overlay of the outline Toolbar.
83
+ /// @group toolbar
84
+ $kendo-toolbar-outline-scroll-overlay: if($kendo-enable-color-system, k-color( app-surface ), $kendo-color-white), if($kendo-enable-color-system, color-mix(in srgb, k-color( app-surface ) 0%, transparent), rgba( $kendo-color-white, 0)) !default;
85
+
67
86
 
68
87
  /// The text color of the flat Toolbar.
69
88
  /// @group toolbar
@@ -74,6 +93,10 @@ $kendo-toolbar-flat-border: $kendo-toolbar-border !default;
74
93
  /// Border width of the flat Toolbar.
75
94
  /// @group toolbar
76
95
  $kendo-toolbar-flat-border-width: 1px !default;
96
+ /// The left and right scroll overlay of the flat Toolbar.
97
+ /// @group toolbar
98
+ $kendo-toolbar-flat-scroll-overlay: if($kendo-enable-color-system, k-color( app-surface ), $kendo-color-white), if($kendo-enable-color-system, color-mix(in srgb, k-color( app-surface ) 0%, transparent), rgba( $kendo-color-white, 0)) !default;
99
+
77
100
 
78
101
  /// The color of the separator border of the Toolbar.
79
102
  /// @group toolbar
@@ -99,16 +122,19 @@ $kendo-toolbar-sizes: (
99
122
  sm: (
100
123
  padding-x: $kendo-toolbar-sm-padding-x,
101
124
  padding-y: $kendo-toolbar-sm-padding-y,
102
- spacing: $kendo-toolbar-sm-spacing
125
+ spacing: $kendo-toolbar-sm-spacing,
126
+ separator-height: $kendo-toolbar-sm-separator-height
103
127
  ),
104
128
  md: (
105
129
  padding-x: $kendo-toolbar-md-padding-x,
106
130
  padding-y: $kendo-toolbar-md-padding-y,
107
- spacing: $kendo-toolbar-md-spacing
131
+ spacing: $kendo-toolbar-md-spacing,
132
+ separator-height: $kendo-toolbar-md-separator-height
108
133
  ),
109
134
  lg: (
110
135
  padding-x: $kendo-toolbar-lg-padding-x,
111
136
  padding-y: $kendo-toolbar-lg-padding-y,
112
- spacing: $kendo-toolbar-lg-spacing
137
+ spacing: $kendo-toolbar-lg-spacing,
138
+ separator-height: $kendo-toolbar-lg-separator-height
113
139
  )
114
140
  ) !default;