@progress/kendo-theme-classic 4.43.1-dev.4 → 4.43.1-dev.8

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 (155) hide show
  1. package/dist/all.css +2571 -1722
  2. package/dist/all.scss +2772 -2284
  3. package/modules/@progress/kendo-theme-default/package.json +2 -2
  4. package/modules/@progress/kendo-theme-default/scss/action-buttons/_layout.scss +7 -0
  5. package/modules/@progress/kendo-theme-default/scss/action-sheet/_layout.scss +6 -0
  6. package/modules/@progress/kendo-theme-default/scss/adaptive/_layout.scss +40 -86
  7. package/modules/@progress/kendo-theme-default/scss/adaptive/_theme.scss +0 -9
  8. package/modules/@progress/kendo-theme-default/scss/appbar/_layout.scss +6 -1
  9. package/modules/@progress/kendo-theme-default/scss/appbar/_variables.scss +1 -1
  10. package/modules/@progress/kendo-theme-default/scss/autocomplete/_layout.scss +6 -0
  11. package/modules/@progress/kendo-theme-default/scss/autocomplete/_theme.scss +20 -39
  12. package/modules/@progress/kendo-theme-default/scss/autocomplete/_variables.scss +0 -19
  13. package/modules/@progress/kendo-theme-default/scss/avatar/_layout.scss +6 -0
  14. package/modules/@progress/kendo-theme-default/scss/avatar/_variables.scss +11 -1
  15. package/modules/@progress/kendo-theme-default/scss/badge/_layout.scss +6 -0
  16. package/modules/@progress/kendo-theme-default/scss/bottom-navigation/_layout.scss +6 -0
  17. package/modules/@progress/kendo-theme-default/scss/breadcrumb/_layout.scss +6 -0
  18. package/modules/@progress/kendo-theme-default/scss/button/_layout.scss +82 -94
  19. package/modules/@progress/kendo-theme-default/scss/button/_theme.scss +177 -112
  20. package/modules/@progress/kendo-theme-default/scss/button/_variables.scss +77 -11
  21. package/modules/@progress/kendo-theme-default/scss/calendar/_layout.scss +2 -14
  22. package/modules/@progress/kendo-theme-default/scss/captcha/_layout.scss +6 -0
  23. package/modules/@progress/kendo-theme-default/scss/card/_layout.scss +6 -0
  24. package/modules/@progress/kendo-theme-default/scss/card/_variables.scss +4 -4
  25. package/modules/@progress/kendo-theme-default/scss/chat/_layout.scss +12 -11
  26. package/modules/@progress/kendo-theme-default/scss/chat/_theme.scss +0 -21
  27. package/modules/@progress/kendo-theme-default/scss/chat/_variables.scss +0 -7
  28. package/modules/@progress/kendo-theme-default/scss/checkbox/_layout.scss +78 -145
  29. package/modules/@progress/kendo-theme-default/scss/checkbox/_theme.scss +6 -2
  30. package/modules/@progress/kendo-theme-default/scss/checkbox/_variables.scss +87 -18
  31. package/modules/@progress/kendo-theme-default/scss/chip/_layout.scss +6 -0
  32. package/modules/@progress/kendo-theme-default/scss/color-preview/_layout.scss +6 -0
  33. package/modules/@progress/kendo-theme-default/scss/coloreditor/_layout.scss +6 -0
  34. package/modules/@progress/kendo-theme-default/scss/colorgradient/_layout.scss +6 -4
  35. package/modules/@progress/kendo-theme-default/scss/colorpalette/_layout.scss +6 -0
  36. package/modules/@progress/kendo-theme-default/scss/colorpicker/_layout.scss +6 -3
  37. package/modules/@progress/kendo-theme-default/scss/combobox/_layout.scss +6 -1
  38. package/modules/@progress/kendo-theme-default/scss/common/_loading.scss +1 -13
  39. package/modules/@progress/kendo-theme-default/scss/dateinput/_layout.scss +7 -1
  40. package/modules/@progress/kendo-theme-default/scss/datepicker/_layout.scss +6 -0
  41. package/modules/@progress/kendo-theme-default/scss/daterangepicker/_index.scss +10 -0
  42. package/modules/@progress/kendo-theme-default/scss/daterangepicker/_layout.scss +33 -0
  43. package/modules/@progress/kendo-theme-default/scss/daterangepicker/_theme.scss +3 -0
  44. package/modules/@progress/kendo-theme-default/scss/daterangepicker/_variables.scss +1 -0
  45. package/modules/@progress/kendo-theme-default/scss/datetimepicker/_layout.scss +6 -2
  46. package/modules/@progress/kendo-theme-default/scss/drawer/_layout.scss +6 -0
  47. package/modules/@progress/kendo-theme-default/scss/dropdownlist/_layout.scss +6 -1
  48. package/modules/@progress/kendo-theme-default/scss/editor/_layout.scss +2 -10
  49. package/modules/@progress/kendo-theme-default/scss/expansion-panel/_layout.scss +6 -1
  50. package/modules/@progress/kendo-theme-default/scss/fab/_layout.scss +6 -0
  51. package/modules/@progress/kendo-theme-default/scss/filter/_layout.scss +8 -0
  52. package/modules/@progress/kendo-theme-default/scss/floating-label/_layout.scss +7 -0
  53. package/modules/@progress/kendo-theme-default/scss/forms/_layout.scss +7 -9
  54. package/modules/@progress/kendo-theme-default/scss/gantt/_layout.scss +1 -1
  55. package/modules/@progress/kendo-theme-default/scss/grid/_layout.scss +128 -97
  56. package/modules/@progress/kendo-theme-default/scss/grid/_theme.scss +0 -6
  57. package/modules/@progress/kendo-theme-default/scss/grid/_variables.scss +1 -3
  58. package/modules/@progress/kendo-theme-default/scss/imageeditor/_layout.scss +6 -0
  59. package/modules/@progress/kendo-theme-default/scss/index.scss +1 -0
  60. package/modules/@progress/kendo-theme-default/scss/input/_layout.scss +1 -1
  61. package/modules/@progress/kendo-theme-default/scss/input/_variables.scss +5 -5
  62. package/modules/@progress/kendo-theme-default/scss/list/_layout.scss +16 -66
  63. package/modules/@progress/kendo-theme-default/scss/list/_theme.scss +5 -4
  64. package/modules/@progress/kendo-theme-default/scss/list/_variables.scss +64 -8
  65. package/modules/@progress/kendo-theme-default/scss/listbox/_layout.scss +9 -0
  66. package/modules/@progress/kendo-theme-default/scss/listbox/_variables.scss +1 -1
  67. package/modules/@progress/kendo-theme-default/scss/listview/_layout.scss +2 -9
  68. package/modules/@progress/kendo-theme-default/scss/map/_layout.scss +12 -0
  69. package/modules/@progress/kendo-theme-default/scss/maskedtextbox/_layout.scss +6 -0
  70. package/modules/@progress/kendo-theme-default/scss/mediaplayer/_layout.scss +14 -1
  71. package/modules/@progress/kendo-theme-default/scss/menu/_layout.scss +48 -5
  72. package/modules/@progress/kendo-theme-default/scss/menu/_theme.scss +6 -2
  73. package/modules/@progress/kendo-theme-default/scss/menu/_variables.scss +1 -1
  74. package/modules/@progress/kendo-theme-default/scss/multiselect/_layout.scss +8 -2
  75. package/modules/@progress/kendo-theme-default/scss/notification/_layout.scss +6 -0
  76. package/modules/@progress/kendo-theme-default/scss/numerictextbox/_layout.scss +12 -26
  77. package/modules/@progress/kendo-theme-default/scss/numerictextbox/_theme.scss +64 -84
  78. package/modules/@progress/kendo-theme-default/scss/numerictextbox/_variables.scss +0 -27
  79. package/modules/@progress/kendo-theme-default/scss/orgchart/_layout.scss +6 -0
  80. package/modules/@progress/kendo-theme-default/scss/orgchart/_variables.scss +2 -2
  81. package/modules/@progress/kendo-theme-default/scss/pager/_layout.scss +6 -2
  82. package/modules/@progress/kendo-theme-default/scss/pager/_variables.scss +1 -1
  83. package/modules/@progress/kendo-theme-default/scss/panelbar/_layout.scss +6 -0
  84. package/modules/@progress/kendo-theme-default/scss/pdf-viewer/_layout.scss +20 -29
  85. package/modules/@progress/kendo-theme-default/scss/pdf-viewer/_variables.scss +2 -5
  86. package/modules/@progress/kendo-theme-default/scss/pivotgrid/_layout.scss +55 -83
  87. package/modules/@progress/kendo-theme-default/scss/pivotgrid/_theme.scss +39 -73
  88. package/modules/@progress/kendo-theme-default/scss/popover/_layout.scss +6 -0
  89. package/modules/@progress/kendo-theme-default/scss/progressbar/_layout.scss +6 -0
  90. package/modules/@progress/kendo-theme-default/scss/radio/_layout.scss +89 -136
  91. package/modules/@progress/kendo-theme-default/scss/radio/_theme.scss +2 -2
  92. package/modules/@progress/kendo-theme-default/scss/radio/_variables.scss +88 -26
  93. package/modules/@progress/kendo-theme-default/scss/rating/_layout.scss +6 -1
  94. package/modules/@progress/kendo-theme-default/scss/scheduler/_layout.scss +31 -12
  95. package/modules/@progress/kendo-theme-default/scss/searchbox/_layout.scss +28 -8
  96. package/modules/@progress/kendo-theme-default/scss/searchbox/_theme.scss +16 -25
  97. package/modules/@progress/kendo-theme-default/scss/searchbox/_variables.scss +0 -20
  98. package/modules/@progress/kendo-theme-default/scss/skeleton/_layout.scss +1 -1
  99. package/modules/@progress/kendo-theme-default/scss/slider/_layout.scss +71 -144
  100. package/modules/@progress/kendo-theme-default/scss/slider/_theme.scss +0 -6
  101. package/modules/@progress/kendo-theme-default/scss/spreadsheet/_layout.scss +28 -15
  102. package/modules/@progress/kendo-theme-default/scss/stepper/_layout.scss +6 -1
  103. package/modules/@progress/kendo-theme-default/scss/switch/_layout.scss +14 -9
  104. package/modules/@progress/kendo-theme-default/scss/switch/_variables.scss +127 -33
  105. package/modules/@progress/kendo-theme-default/scss/table/_layout.scss +29 -6
  106. package/modules/@progress/kendo-theme-default/scss/table/_theme.scss +3 -2
  107. package/modules/@progress/kendo-theme-default/scss/table/_variables.scss +3 -3
  108. package/modules/@progress/kendo-theme-default/scss/tabstrip/_layout.scss +16 -4
  109. package/modules/@progress/kendo-theme-default/scss/taskboard/_layout.scss +6 -2
  110. package/modules/@progress/kendo-theme-default/scss/textarea/_layout.scss +6 -0
  111. package/modules/@progress/kendo-theme-default/scss/textbox/_layout.scss +6 -0
  112. package/modules/@progress/kendo-theme-default/scss/timeline/_layout.scss +6 -4
  113. package/modules/@progress/kendo-theme-default/scss/timepicker/_layout.scss +6 -1
  114. package/modules/@progress/kendo-theme-default/scss/timeselector/_layout.scss +3 -2
  115. package/modules/@progress/kendo-theme-default/scss/toolbar/_index.scss +1 -0
  116. package/modules/@progress/kendo-theme-default/scss/toolbar/_layout.scss +22 -2
  117. package/modules/@progress/kendo-theme-default/scss/toolbar/_theme.scss +35 -7
  118. package/modules/@progress/kendo-theme-default/scss/tooltip/_layout.scss +6 -1
  119. package/modules/@progress/kendo-theme-default/scss/treelist/_layout.scss +4 -0
  120. package/modules/@progress/kendo-theme-default/scss/treeview/_layout.scss +134 -115
  121. package/modules/@progress/kendo-theme-default/scss/treeview/_theme.scss +36 -25
  122. package/modules/@progress/kendo-theme-default/scss/treeview/_variables.scss +67 -13
  123. package/modules/@progress/kendo-theme-default/scss/typography/_variables.scss +3 -3
  124. package/modules/@progress/kendo-theme-default/scss/upload/_layout.scss +6 -1
  125. package/modules/@progress/kendo-theme-default/scss/window/_layout.scss +2 -2
  126. package/modules/@progress/kendo-theme-default/scss/window/_variables.scss +1 -1
  127. package/package.json +3 -3
  128. package/scss/appbar/_variables.scss +1 -1
  129. package/scss/autocomplete/_variables.scss +0 -19
  130. package/scss/avatar/_variables.scss +13 -2
  131. package/scss/button/_variables.scss +84 -18
  132. package/scss/card/_variables.scss +4 -4
  133. package/scss/chat/_variables.scss +0 -7
  134. package/scss/checkbox/_variables.scss +89 -20
  135. package/scss/daterangepicker/_index.scss +10 -0
  136. package/scss/daterangepicker/_layout.scss +1 -0
  137. package/scss/daterangepicker/_theme.scss +1 -0
  138. package/scss/daterangepicker/_variables.scss +1 -0
  139. package/scss/grid/_variables.scss +1 -3
  140. package/scss/index.scss +1 -0
  141. package/scss/input/_variables.scss +5 -5
  142. package/scss/list/_variables.scss +64 -8
  143. package/scss/listbox/_variables.scss +1 -1
  144. package/scss/menu/_variables.scss +1 -1
  145. package/scss/numerictextbox/_variables.scss +0 -27
  146. package/scss/orgchart/_variables.scss +2 -2
  147. package/scss/pager/_variables.scss +1 -1
  148. package/scss/pdf-viewer/_variables.scss +2 -5
  149. package/scss/radio/_variables.scss +86 -27
  150. package/scss/searchbox/_variables.scss +0 -20
  151. package/scss/switch/_variables.scss +142 -48
  152. package/scss/table/_variables.scss +3 -3
  153. package/scss/toolbar/_index.scss +1 -0
  154. package/scss/treeview/_variables.scss +69 -15
  155. package/scss/typography/_variables.scss +3 -3
@@ -24,6 +24,12 @@
24
24
  -webkit-appearance: none;
25
25
  position: relative;
26
26
 
27
+ *,
28
+ *::before,
29
+ *::after {
30
+ box-sizing: border-box;
31
+ }
32
+
27
33
  &:disabled,
28
34
  &.k-state-disabled {
29
35
  @include disabled( $disabled-styling );
@@ -64,6 +70,21 @@
64
70
  .k-button .k-button-text {}
65
71
 
66
72
 
73
+ // Button arrow
74
+ .k-button-arrow {
75
+ padding-left: $button-arrow-padding-x;
76
+ padding-right: $button-arrow-padding-x;
77
+ flex: none;
78
+ display: inline-flex;
79
+ align-items: center;
80
+ justify-content: center;
81
+ }
82
+ .k-button > .k-button-arrow {
83
+ margin-inline-start: -$button-arrow-padding-x;
84
+ margin-inline-end: -$button-padding-x;
85
+ }
86
+
87
+
67
88
  // Text button
68
89
  .k-text-button {
69
90
 
@@ -78,8 +99,6 @@
78
99
  .k-icon-button,
79
100
  .k-button.k-button-icon {
80
101
  padding: $button-padding-y;
81
- width: $button-calc-size;
82
- height: $button-calc-size;
83
102
  gap: 0;
84
103
 
85
104
  > .k-text,
@@ -89,8 +108,14 @@
89
108
 
90
109
  .k-button-icon {
91
110
  margin: 0;
111
+ min-width: calc( #{$button-font-size} * #{$button-line-height} );
112
+ min-height: calc( #{$button-font-size} * #{$button-line-height} );
92
113
  }
93
114
  }
115
+ .k-icon-button > .k-button-arrow {
116
+ margin-inline-start: 0;
117
+ margin-inline-end: -$button-padding-y;
118
+ }
94
119
  // TODO: REMOVE
95
120
  .k-button.k-button-icon {
96
121
  padding: $button-padding-y;
@@ -130,50 +155,51 @@
130
155
  -webkit-touch-callout: none;
131
156
  -webkit-tap-highlight-color: $rgba-transparent;
132
157
 
133
- .k-button {
134
- @include border-radius( 0 );
135
- }
136
- .k-button ~ .k-button {
158
+ > .k-button + .k-button {
137
159
  margin-inline-start: if( $button-border-width == 0, null, -$button-border-width );
138
160
  }
139
161
 
140
- .k-button:hover,
141
- .k-button.k-state-hover,
142
- .k-button:active,
143
- .k-button.k-state-active,
144
- .k-button.k-state-selected,
145
- .k-button:focus,
146
- .k-button.k-state-focus {
162
+ > .k-button:hover,
163
+ > .k-button.k-state-hover,
164
+ > .k-button:focus,
165
+ > .k-button.k-state-focus,
166
+ > .k-button:active,
167
+ > .k-button.k-state-active,
168
+ > .k-button.k-state-selected {
147
169
  z-index: 2;
148
170
  }
149
171
 
150
- .k-group-start,
151
- .k-button:first-child {
152
- @include border-left-radius( $button-border-radius );
172
+ .k-button:not(:first-child):not(:last-child) {
173
+ border-start-end-radius: 0;
174
+ border-end-end-radius: 0;
175
+ border-start-start-radius: 0;
176
+ border-end-start-radius: 0;
153
177
  }
154
- .k-group-end,
155
- .k-button:last-child {
156
- @include border-right-radius( $button-border-radius );
178
+ > .k-button:first-child:not(:only-child) {
179
+ border-start-end-radius: 0;
180
+ border-end-end-radius: 0;
157
181
  }
158
- .k-group-start.k-group-end,
159
- .k-button:first-child:last-child {
160
- @include border-radius( $button-border-radius );
182
+ > .k-button:last-child:not(:only-child) {
183
+ border-start-start-radius: 0;
184
+ border-end-start-radius: 0;
185
+ }
186
+
187
+ &:disabled,
188
+ &[disabled],
189
+ &.k-disabled,
190
+ &.k-state-disabled {
191
+ opacity: 1;
192
+ filter: none;
161
193
  }
162
194
 
163
195
  }
164
196
 
165
197
  .k-button-group-stretched {
166
- display: flex;
198
+ width: 100%;
167
199
 
168
- .k-button {
169
- display: inline-block;
200
+ > * {
170
201
  flex: 1 0 0%;
171
202
  overflow: hidden;
172
- text-overflow: ellipsis;
173
-
174
- > .k-icon {
175
- vertical-align: text-bottom;
176
- }
177
203
  }
178
204
  }
179
205
 
@@ -187,32 +213,13 @@
187
213
  flex-flow: row nowrap;
188
214
  vertical-align: middle;
189
215
 
190
- .k-button {
191
- @include border-radius( 0 );
192
- }
193
-
194
- // .k-button
195
- > .k-button:first-child {
196
- @include border-left-radius( $button-border-radius );
197
- }
198
- > .k-split-button-arrow,
199
- > .k-button:last-child {
200
- @include border-right-radius( $button-border-radius );
201
- margin-inline-start: if( $button-border-width == 0, null, -$button-border-width );
202
- padding: $button-padding-y;
216
+ .k-split-button-arrow {
217
+ padding: $button-arrow-padding-y $button-arrow-padding-x;
203
218
  width: auto;
204
219
  flex: none;
205
- }
206
220
 
207
- &[dir="rtl"] {
208
- // k-button
209
- > .k-button:first-child {
210
- @include border-left-radius( 0 );
211
- @include border-right-radius( $button-border-radius );
212
- }
213
- > .k-button:last-child {
214
- @include border-right-radius( 0 );
215
- @include border-left-radius( $button-border-radius );
221
+ .k-button-icon {
222
+ min-width: 0;
216
223
  }
217
224
  }
218
225
  }
@@ -256,13 +263,29 @@
256
263
  .k-button-outline {
257
264
  @include box-shadow( none );
258
265
  color: inherit;
259
- background: none;
266
+ background-color: transparent;
267
+ background-image: none !important; // sass-lint:disable-line no-important
260
268
  }
261
269
  .k-button.k-outline {
262
270
  @extend .k-button-outline;
263
271
  }
264
272
 
265
273
 
274
+ // Link button
275
+ .k-button-link {
276
+ @include box-shadow( none );
277
+ border-color: transparent !important; // sass-lint:disable-line no-important
278
+ color: inherit;
279
+ background-color: transparent !important; // sass-lint:disable-line no-important
280
+ background-image: none !important; // sass-lint:disable-line no-important
281
+ text-decoration: none;
282
+ }
283
+ .k-button-link:hover,
284
+ .k-button-link.k-state-hover {
285
+ text-decoration: underline;
286
+ }
287
+
288
+
266
289
  // Clear button
267
290
  .k-button-clear {
268
291
  border-color: transparent !important; // sass-lint:disable-line no-important
@@ -272,46 +295,11 @@
272
295
  }
273
296
 
274
297
 
275
- // RTL
276
- .k-rtl {
277
-
278
- // Button group
279
- .k-button-group {
280
-
281
- .k-button {
282
- @include border-radius( 0 );
283
- }
284
-
285
- .k-group-start,
286
- .k-button:first-child {
287
- @include border-right-radius( $button-border-radius );
288
- }
289
- .k-group-end,
290
- .k-button:last-child {
291
- @include border-left-radius( $button-border-radius );
292
- }
293
- .k-group-start.k-group-end,
294
- .k-button:first-child:last-child {
295
- @include border-radius( $button-border-radius );
296
- }
297
-
298
- }
299
-
300
- // Split button
301
- .k-split-button {
302
-
303
- .k-button {
304
- @include border-radius( 0 );
305
- }
306
-
307
- // k-button
308
- > .k-button:first-child {
309
- @include border-right-radius( $button-border-radius );
310
- }
311
- > .k-split-button-arrow,
312
- > .k-button:last-child {
313
- @include border-left-radius( $button-border-radius );
314
- }
298
+ // IE
299
+ .k-ie .k-button-group,
300
+ .k-ie .k-split-button {
301
+ .k-button {
302
+ @include border-radius( 0 );
315
303
  }
316
304
  }
317
305
 
@@ -1,8 +1,7 @@
1
1
  @include exports( "button/theme" ) {
2
2
 
3
- // Default button
4
- .k-button,
5
- .k-button-secondary {
3
+ // Solid button
4
+ .k-button {
6
5
  @include fill(
7
6
  $button-text,
8
7
  $button-bg,
@@ -66,75 +65,70 @@
66
65
  }
67
66
 
68
67
  }
68
+ .k-button.k-primary {
69
+ @extend .k-button-solid-primary !optional;
70
+ }
69
71
 
72
+ $_shade-fn: get-function( $solid-button-shade-function );
70
73
 
71
- // Primary button
72
- .k-button-primary {
73
- @include fill(
74
- $primary-button-text,
75
- $primary-button-bg,
76
- $primary-button-border,
77
- $primary-button-gradient
78
- );
79
- @include box-shadow( $primary-button-shadow );
74
+ @each $name, $color in $button-theme-colors {
75
+ $_button-text: contrast-wcag( $color );
76
+ $_button-bg: if( $solid-button-shade-bg-amount, call( $_shade-fn, $color, $solid-button-shade-bg-amount ), null );
77
+ $_button-border: if( $solid-button-shade-border-amount, call( $_shade-fn, $color, $solid-button-shade-border-amount ), null );
80
78
 
81
- // Hovoer state
82
- &:hover,
83
- &.k-state-hover {
84
- @include fill(
85
- $primary-button-hovered-text,
86
- $primary-button-hovered-bg,
87
- $primary-button-hovered-border,
88
- $primary-button-hovered-gradient
89
- );
90
- @include box-shadow( $primary-button-hovered-shadow );
91
- }
79
+ $_button-hover-text: null;
80
+ $_button-hover-bg: if( $solid-button-hover-shade-bg-amount, call( $_shade-fn, $color, $solid-button-hover-shade-bg-amount ), null );
81
+ $_button-hover-border: if( $solid-button-hover-shade-border-amount, call( $_shade-fn, $color, $solid-button-hover-shade-border-amount ), null );
92
82
 
93
- // Focused state
94
- &:focus,
95
- &.k-state-focus,
96
- &.k-state-focused {
97
- @include box-shadow( $primary-button-focused-shadow );
98
- }
83
+ $_button-active-text: null;
84
+ $_button-active-bg: if( $solid-button-active-shade-bg-amount, call( $_shade-fn, $color, $solid-button-active-shade-bg-amount ), null );
85
+ $_button-active-border: if( $solid-button-active-shade-border-amount, call( $_shade-fn, $color, $solid-button-active-shade-border-amount ), null );
99
86
 
100
- // Active state
101
- &:active,
102
- &.k-state-active {
87
+ .k-button-solid.k-button-solid-#{$name} {
103
88
  @include fill(
104
- $primary-button-active-text,
105
- $primary-button-active-bg,
106
- $primary-button-active-border,
107
- $primary-button-active-gradient
89
+ $_button-text,
90
+ $_button-bg,
91
+ $_button-border,
92
+ $solid-button-gradient
108
93
  );
109
- @include box-shadow( $primary-button-active-shadow );
110
- }
111
94
 
112
- // Selected state
113
- &.k-state-selected {
114
- @include fill(
115
- $primary-button-selected-text,
116
- $primary-button-selected-bg,
117
- $primary-button-selected-border,
118
- $primary-button-selected-gradient
119
- );
120
- @include box-shadow( $primary-button-selected-shadow );
121
- }
95
+ // Hover state
96
+ &:hover,
97
+ &.k-state-hover {
98
+ @include fill(
99
+ $_button-hover-text,
100
+ $_button-hover-bg,
101
+ $_button-hover-border
102
+ );
103
+ }
122
104
 
123
- // Disabled state
124
- &:disabled,
125
- &.k-state-disabled {
126
- @include fill(
127
- $button-disabled-text,
128
- $button-disabled-bg,
129
- $button-disabled-border,
130
- $button-disabled-gradient
131
- );
132
- @include box-shadow( $button-disabled-shadow );
133
- }
105
+ // Focus state
106
+ &:focus,
107
+ &.k-state-focus {
108
+ @if ( $solid-button-shadow ) {
109
+ box-shadow: 0 0 $solid-button-shadow-blur $solid-button-shadow-spread rgba( $_button-border, $solid-button-shadow-opacity );
110
+ }
111
+ }
134
112
 
135
- }
136
- .k-button.k-primary {
137
- @extend .k-button-primary;
113
+ // Active state
114
+ &:active,
115
+ &.k-state-active {
116
+ @include fill(
117
+ $_button-active-text,
118
+ $_button-active-bg,
119
+ $_button-active-border
120
+ );
121
+ }
122
+
123
+ // Selected
124
+ &.k-state-selected {
125
+ @include fill(
126
+ $_button-active-text,
127
+ $_button-active-bg,
128
+ $_button-active-border
129
+ );
130
+ }
131
+ }
138
132
  }
139
133
 
140
134
 
@@ -143,18 +137,7 @@
143
137
 
144
138
 
145
139
  // Button group
146
- .k-button-group {
147
-
148
- .k-button:focus,
149
- .k-button.k-state-focus,
150
- .k-button.k-state-focused,
151
- .k-button-outline:focus,
152
- .k-button-outline.k-state-focus,
153
- .k-button-outline.k-state-focused {
154
- @include box-shadow( $button-group-focus-shadow );
155
- }
156
-
157
- }
140
+ .k-button-group {}
158
141
 
159
142
 
160
143
  // Split button
@@ -176,62 +159,96 @@
176
159
  @include box-shadow( none );
177
160
  border-color: currentColor;
178
161
  color: $button-text;
179
- background: none;
162
+ background-color: transparent;
180
163
 
181
164
  // Hover state
182
165
  &:hover,
183
166
  &.k-state-hover {
184
- @include fill( contrast-wcag( $button-text ), $button-text, $button-text, none );
167
+ @include fill(
168
+ contrast-wcag( $button-text ),
169
+ $button-text,
170
+ $button-text
171
+ );
185
172
  }
186
173
 
187
174
  // Focused state
188
175
  &:focus,
189
176
  &.k-state-focus,
190
177
  &.k-state-focused {
191
- box-shadow: $button-focused-shadow;
178
+ @if ($outline-button-shadow) {
179
+ box-shadow: 0 0 $outline-button-shadow-blur $outline-button-shadow-spread rgba( $button-text, $outline-button-shadow-opacity );
180
+ }
192
181
  }
193
182
 
194
183
  // Active state
195
184
  &:active,
196
185
  &.k-state-active {
197
- @include fill( contrast-wcag( $button-text ), $button-text, $button-text, none );
186
+ @include fill(
187
+ contrast-wcag( $button-text ),
188
+ $button-text,
189
+ $button-text
190
+ );
198
191
  }
199
192
 
200
193
  // Selected state
201
194
  &.k-state-selected {
202
- @include fill( contrast-wcag( $button-text ), $button-text, $button-text, none );
195
+ @include fill(
196
+ contrast-wcag( $button-text ),
197
+ $button-text,
198
+ $button-text
199
+ );
203
200
  }
204
201
  }
205
202
  .k-button-outline.k-primary {
206
- border-color: currentColor;
207
- color: $primary-button-bg;
208
- background: none;
209
- box-shadow: none;
203
+ @extend .k-button-outline-primary !optional;
204
+ }
210
205
 
211
- // Hover state
212
- &:hover,
213
- &.k-state-hover {
214
- @include fill( contrast-wcag( $primary-button-bg ), $primary-button-bg, $primary-button-bg, none );
215
- }
206
+ @each $name, $color in $button-theme-colors {
207
+ .k-button-outline.k-button-outline-#{$name} {
208
+ @include box-shadow( none );
209
+ border-color: currentColor;
210
+ color: $color;
211
+ background-color: transparent;
212
+
213
+ // Hover state
214
+ &:hover,
215
+ &.k-state-hover {
216
+ @include fill(
217
+ contrast-wcag( $color ),
218
+ $color,
219
+ $color
220
+ );
221
+ }
216
222
 
217
- // Focused state
218
- &:focus,
219
- &.k-state-focus,
220
- &.k-state-focused {
221
- box-shadow: $primary-button-focused-shadow;
222
- }
223
+ // Focused state
224
+ &:focus,
225
+ &.k-state-focus,
226
+ &.k-state-focused {
227
+ @if ($outline-button-shadow) {
228
+ box-shadow: 0 0 $outline-button-shadow-blur $outline-button-shadow-spread rgba( $color, $outline-button-shadow-opacity );
229
+ }
230
+ }
223
231
 
224
- // Actove state
225
- &:active,
226
- &.k-state-active {
227
- @include fill( contrast-wcag( $primary-button-bg ), $primary-button-bg, $primary-button-bg, none );
228
- box-shadow: none;
229
- }
232
+ // Active state
233
+ &:active,
234
+ &.k-state-active {
235
+ @include fill(
236
+ contrast-wcag( $color ),
237
+ $color,
238
+ $color
239
+ );
240
+ box-shadow: none;
241
+ }
230
242
 
231
- // Selected state
232
- &.k-state-selected {
233
- @include fill( contrast-wcag( $primary-button-bg ), $primary-button-bg, $primary-button-bg, none );
234
- box-shadow: none;
243
+ // Selected state
244
+ &.k-state-selected {
245
+ @include fill(
246
+ contrast-wcag( $color ),
247
+ $color,
248
+ $color
249
+ );
250
+ box-shadow: none;
251
+ }
235
252
  }
236
253
  }
237
254
 
@@ -254,17 +271,65 @@
254
271
  &.k-state-focus {
255
272
  color: inherit;
256
273
  }
274
+
275
+ // Disabled state
276
+ &:disabled,
277
+ &.k-state-disabled {
278
+ color: $button-disabled-text;
279
+ }
257
280
  }
258
281
  .k-button-flat.k-primary {
282
+ @extend .k-button-flat-primary !optional;
283
+ }
259
284
 
260
- &,
261
- &:hover,
262
- &.k-state-hover,
263
- &:active,
264
- &.k-state-active,
265
- &:focus,
266
- &.k-state-focus {
267
- color: $primary;
285
+ @each $name, $color in $button-theme-colors {
286
+ .k-button-flat.k-button-flat-#{$name} {
287
+
288
+ &,
289
+ &:hover,
290
+ &.k-state-hover,
291
+ &:active,
292
+ &.k-state-active,
293
+ &:focus,
294
+ &.k-state-focus {
295
+ color: $color;
296
+ }
297
+
298
+ // Disabled state
299
+ &:disabled,
300
+ &.k-state-disabled {
301
+ color: $button-disabled-text;
302
+ }
303
+ }
304
+ }
305
+
306
+ }
307
+
308
+
309
+
310
+
311
+ @include exports( "link-button/theme" ) {
312
+
313
+ @each $name, $color in map-merge( $button-theme-colors, ( "base": $base-text ) ) {
314
+ .k-button-link.k-button-link-#{$name} {
315
+ @include box-shadow( none );
316
+ color: $color;
317
+
318
+ &:hover,
319
+ &.k-state-hover {
320
+ color: try-shade( $color, 2 );
321
+ }
322
+ &:focus,
323
+ &.k-state-focus {
324
+ @if ($link-button-shadow) {
325
+ box-shadow: 0 0 $link-button-shadow-blur $link-button-shadow-spread rgba( $color, $link-button-shadow-opacity );
326
+ }
327
+ }
328
+ &:active,
329
+ &.k-state-active,
330
+ &.k-state-selected {
331
+ color: try-shade( $color, 2 );
332
+ }
268
333
  }
269
334
  }
270
335