@progress/kendo-theme-default 4.43.1-dev.2 → 4.43.1-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.
Files changed (109) hide show
  1. package/README.md +5 -8
  2. package/dist/all.css +2078 -1506
  3. package/dist/all.scss +2413 -2288
  4. package/package.json +2 -2
  5. package/scss/_layout.scss +0 -0
  6. package/scss/adaptive/_layout.scss +40 -86
  7. package/scss/adaptive/_theme.scss +0 -9
  8. package/scss/appbar/_layout.scss +13 -0
  9. package/scss/appbar/_variables.scss +1 -1
  10. package/scss/autocomplete/_layout.scss +4 -4
  11. package/scss/autocomplete/_theme.scss +20 -39
  12. package/scss/autocomplete/_variables.scss +0 -19
  13. package/scss/avatar/_variables.scss +11 -1
  14. package/scss/button/_layout.scss +57 -100
  15. package/scss/button/_theme.scss +177 -112
  16. package/scss/button/_variables.scss +77 -14
  17. package/scss/calendar/_layout.scss +2 -14
  18. package/scss/card/_variables.scss +4 -4
  19. package/scss/chat/_layout.scss +9 -9
  20. package/scss/chat/_theme.scss +0 -21
  21. package/scss/chat/_variables.scss +0 -7
  22. package/scss/checkbox/_index.scss +1 -0
  23. package/scss/checkbox/_layout.scss +80 -146
  24. package/scss/checkbox/_theme.scss +6 -2
  25. package/scss/checkbox/_variables.scss +87 -18
  26. package/scss/color-preview/_layout.scss +50 -8
  27. package/scss/color-preview/_theme.scss +0 -14
  28. package/scss/color-preview/_variables.scss +2 -2
  29. package/scss/coloreditor/_layout.scss +5 -1
  30. package/scss/coloreditor/_variables.scss +3 -3
  31. package/scss/colorgradient/_layout.scss +0 -4
  32. package/scss/colorpicker/_layout.scss +6 -0
  33. package/scss/combobox/_layout.scss +22 -29
  34. package/scss/combobox/_theme.scss +59 -99
  35. package/scss/combobox/_variables.scss +1 -32
  36. package/scss/common/_loading.scss +1 -13
  37. package/scss/daterangepicker/_index.scss +10 -0
  38. package/scss/daterangepicker/_layout.scss +27 -0
  39. package/scss/daterangepicker/_theme.scss +3 -0
  40. package/scss/daterangepicker/_variables.scss +1 -0
  41. package/scss/dropdowngrid/_layout.scss +1 -0
  42. package/scss/dropdownlist/_layout.scss +37 -55
  43. package/scss/dropdownlist/_theme.scss +33 -75
  44. package/scss/editor/_layout.scss +7 -22
  45. package/scss/fab/index.md +0 -0
  46. package/scss/forms/_layout.scss +10 -14
  47. package/scss/gantt/_layout.scss +1 -1
  48. package/scss/grid/_layout.scss +128 -97
  49. package/scss/grid/_theme.scss +0 -6
  50. package/scss/grid/_variables.scss +7 -9
  51. package/scss/imageeditor/_layout.scss +4 -8
  52. package/scss/imageeditor/_variables.scss +1 -0
  53. package/scss/index.scss +2 -0
  54. package/scss/input/_layout.scss +1 -1
  55. package/scss/input/_variables.scss +5 -5
  56. package/scss/list/_index.scss +1 -0
  57. package/scss/list/_layout.scss +16 -36
  58. package/scss/list/_theme.scss +4 -3
  59. package/scss/list/_variables.scss +66 -6
  60. package/scss/listbox/_layout.scss +9 -0
  61. package/scss/listbox/_variables.scss +1 -1
  62. package/scss/listview/_layout.scss +2 -9
  63. package/scss/map/_layout.scss +7 -5
  64. package/scss/maskedtextbox/_layout.scss +17 -31
  65. package/scss/maskedtextbox/_theme.scss +44 -14
  66. package/scss/mediaplayer/_layout.scss +13 -1
  67. package/scss/menu/_layout.scss +48 -5
  68. package/scss/menu/_theme.scss +6 -2
  69. package/scss/menu/_variables.scss +1 -1
  70. package/scss/multiselect/_layout.scss +2 -2
  71. package/scss/numerictextbox/_layout.scss +9 -27
  72. package/scss/numerictextbox/_theme.scss +64 -84
  73. package/scss/numerictextbox/_variables.scss +0 -27
  74. package/scss/orgchart/_variables.scss +2 -2
  75. package/scss/pager/_variables.scss +1 -1
  76. package/scss/pdf-viewer/_layout.scss +20 -29
  77. package/scss/pdf-viewer/_variables.scss +2 -5
  78. package/scss/radio/_index.scss +1 -0
  79. package/scss/radio/_layout.scss +90 -136
  80. package/scss/radio/_theme.scss +2 -2
  81. package/scss/radio/_variables.scss +88 -26
  82. package/scss/scheduler/_layout.scss +26 -13
  83. package/scss/searchbox/_layout.scss +22 -8
  84. package/scss/searchbox/_theme.scss +16 -25
  85. package/scss/searchbox/_variables.scss +0 -20
  86. package/scss/skeleton/_layout.scss +1 -1
  87. package/scss/slider/_layout.scss +35 -141
  88. package/scss/slider/_theme.scss +0 -6
  89. package/scss/spreadsheet/_layout.scss +32 -23
  90. package/scss/table/_layout.scss +29 -6
  91. package/scss/table/_theme.scss +3 -2
  92. package/scss/table/_variables.scss +3 -3
  93. package/scss/tabstrip/_layout.scss +6 -2
  94. package/scss/textarea/_layout.scss +1 -1
  95. package/scss/timeselector/_layout.scss +2 -2
  96. package/scss/toolbar/_layout.scss +37 -2
  97. package/scss/toolbar/_theme.scss +35 -7
  98. package/scss/treelist/_layout.scss +4 -0
  99. package/scss/treeview/_layout.scss +130 -116
  100. package/scss/treeview/_theme.scss +36 -25
  101. package/scss/treeview/_variables.scss +67 -13
  102. package/scss/typography/_variables.scss +3 -3
  103. package/scss/utils/_flex.scss +11 -3
  104. package/scss/virtual-scroller/_index.scss +10 -0
  105. package/scss/virtual-scroller/_layout.scss +35 -0
  106. package/scss/virtual-scroller/_theme.scss +3 -0
  107. package/scss/virtual-scroller/_variables.scss +1 -0
  108. package/scss/window/_layout.scss +2 -2
  109. package/scss/window/_variables.scss +1 -1
@@ -1,62 +1,55 @@
1
- @include exports("combobox/layout") {
1
+ @include exports( "combobox/layout" ) {
2
2
 
3
3
  // Combobox
4
4
  .k-combobox {
5
+ @include border-radius( $input-border-radius );
5
6
  width: $input-default-width;
6
- border-width: 0;
7
+ border-width: $input-border-width;
8
+ border-style: solid;
7
9
  box-sizing: border-box;
8
10
  outline: 0;
9
- background: none;
10
11
  font-family: $input-font-family;
11
12
  font-size: $input-font-size;
12
13
  line-height: $input-line-height;
13
- text-align: left;
14
+ text-align: start;
14
15
  white-space: nowrap;
15
16
  display: inline-flex;
17
+ flex-flow: row nowrap;
16
18
  vertical-align: middle;
17
19
  position: relative;
20
+ overflow: hidden;
21
+ transition: all .1s ease; // sass-lint:disable-line no-transition-all
18
22
  -webkit-touch-callout: none;
19
23
  -webkit-tap-highlight-color: $rgba-transparent;
20
24
 
21
- .k-dropdown-wrap {
22
- @include border-radius( $input-border-radius );
23
- padding: 0;
24
- width: 100%;
25
- border-width: 1px;
26
- border-style: solid;
27
- box-sizing: border-box;
28
- position: relative;
29
- display: flex;
30
- flex-flow: row nowrap;
31
- transition: all .1s ease; // sass-lint:disable-line no-transition-all
32
- outline: 0;
33
- cursor: initial;
34
- overflow: hidden;
35
- }
36
-
37
25
 
38
26
  // Input
39
27
  .k-input {}
40
28
 
29
+
30
+ // Loading icon
31
+ .k-i-loading {
32
+ width: $input-icon-width;
33
+ height: $input-icon-height;
34
+ }
35
+
36
+
41
37
  // Select
42
38
  .k-select {
43
- padding: $combobox-select-padding-y $combobox-select-padding-x;
44
- width: if( $use-picker-select-width, $combobox-select-width, null );
39
+ padding: $picker-select-padding-y $picker-select-padding-x;
40
+ width: if( $use-picker-select-width, $spinner-width, null );
45
41
  border-width: 0;
46
42
  border-inline-start-width: $picker-select-border-width;
47
- box-sizing: border-box;
48
43
  border-style: solid;
44
+ box-sizing: border-box;
45
+ outline: 0;
49
46
  display: flex;
47
+ flex-flow: row nowrap;
50
48
  align-items: center;
51
49
  justify-content: center;
52
50
  flex: 0 0 auto;
53
- text-align: center;
54
51
  cursor: pointer;
55
52
  }
56
-
57
- &[dir="rtl"],
58
- .k-rtl & {
59
- text-align: right;
60
- }
61
53
  }
54
+
62
55
  }
@@ -1,125 +1,85 @@
1
- @include exports("combobox/theme") {
1
+ @include exports( "combobox/theme" ) {
2
2
 
3
3
  .k-combobox {
4
-
5
- // Normal state
6
- .k-dropdown-wrap {
7
- @include fill(
8
- $combobox-text,
9
- $combobox-bg,
10
- $combobox-border
11
- );
12
-
13
- // Invalid state
14
- &.k-invalid,
15
- &.k-invalid:hover,
16
- &.k-state-invalid {
17
- border-color: $invalid-border;
18
-
19
- .k-input-validation-icon {
20
- color: $invalid-text;
21
- }
22
-
23
- &:focus,
24
- &.k-state-focused {
25
- @include box-shadow($invalid-shadow);
26
- }
27
- }
28
- }
29
-
30
- .k-select {
31
- @include fill(
32
- $combobox-select-text,
33
- $combobox-select-bg,
34
- $combobox-select-border,
35
- $combobox-select-gradient
36
- );
37
- }
4
+ @include fill(
5
+ $input-text,
6
+ $input-bg,
7
+ $input-border
8
+ );
38
9
 
39
10
  // Hover state
40
- > :hover,
41
- .k-state-hover {
11
+ &:hover,
12
+ &.k-state-hover {
42
13
  @include fill(
43
- $combobox-hovered-text,
44
- $combobox-hovered-bg,
45
- $combobox-hovered-border
14
+ $input-hovered-text,
15
+ $input-hovered-bg,
16
+ $input-hovered-border
46
17
  );
47
18
  }
48
- .k-select:hover {
19
+
20
+ // Focus state
21
+ &:focus,
22
+ &.k-state-focus {
49
23
  @include fill(
50
- $combobox-select-hovered-text,
51
- $combobox-select-hovered-bg,
52
- $combobox-select-hovered-border,
53
- $combobox-select-hovered-gradient
24
+ $input-focused-text,
25
+ $input-focused-bg,
26
+ $input-focused-border
54
27
  );
28
+ @include box-shadow( $input-focused-shadow );
55
29
  }
56
-
57
- // Focus state
58
- > .k-state-focused {
30
+ &:focus-within {
59
31
  @include fill(
60
- $combobox-focused-text,
61
- $combobox-focused-bg,
62
- $combobox-focused-border
32
+ $input-focused-text,
33
+ $input-focused-bg,
34
+ $input-focused-border
63
35
  );
64
- @include box-shadow($combobox-focused-shadow);
36
+ @include box-shadow( $input-focused-shadow );
65
37
  }
66
38
 
67
- // Invalid
68
- &.k-state-invalid,
69
- &.ng-invalid.ng-touched,
70
- &.ng-invalid.ng-dirty {
71
- .k-dropdown-wrap {
72
- border-color: $invalid-border;
73
-
74
- .k-input-validation-icon {
75
- color: $invalid-text;
76
- }
77
39
 
78
- &:focus,
79
- &.k-state-focused {
80
- @include box-shadow($invalid-shadow);
81
- }
82
- }
83
- }
84
- }
40
+ // Invalid state
41
+ &.k-invalid,
42
+ &.ng-invalid,
43
+ &.k-state-invalid {
44
+ border-color: $invalid-border;
85
45
 
86
- // Universal rendering
87
- .k-combobox {
88
- &.k-state-hover {
89
- .k-dropdown-wrap {
90
- @include fill(
91
- $combobox-hovered-text,
92
- $combobox-hovered-bg,
93
- $combobox-hovered-border
94
- );
46
+ .k-input-validation-icon {
47
+ color: $invalid-text;
95
48
  }
96
- }
97
49
 
98
- &.k-state-focus {
99
- .k-dropdown-wrap {
100
- @include fill(
101
- $combobox-focused-text,
102
- $combobox-focused-bg,
103
- $combobox-focused-border
104
- );
105
- @include box-shadow($combobox-focused-shadow);
50
+ &:focus-within,
51
+ &.k-state-focus {
52
+ @include box-shadow($invalid-shadow);
106
53
  }
107
54
  }
108
55
 
109
- &.k-invalid {
110
- .k-dropdown-wrap {
111
- border-color: $invalid-border;
112
56
 
113
- .k-input-validation-icon {
114
- color: $invalid-text;
115
- }
116
- }
57
+ // Select
58
+ .k-select {
59
+ @include fill(
60
+ $picker-select-text,
61
+ $picker-select-bg,
62
+ $picker-select-border,
63
+ $picker-select-gradient
64
+ );
117
65
  }
118
-
119
- &.k-invalid.k-state-focus {
120
- .k-dropdown-wrap {
121
- @include box-shadow($invalid-shadow);
122
- }
66
+ .k-select:hover,
67
+ .k-select.k-state-hover {
68
+ @include fill(
69
+ $picker-select-hovered-text,
70
+ $picker-select-hovered-bg,
71
+ $picker-select-hovered-border,
72
+ $picker-select-hovered-gradient
73
+ );
74
+ }
75
+ .k-select:active,
76
+ .k-select.k-state-active {
77
+ @include fill(
78
+ $picker-select-pressed-text,
79
+ $picker-select-pressed-bg,
80
+ $picker-select-pressed-border,
81
+ $picker-select-pressed-gradient
82
+ );
123
83
  }
124
84
  }
125
85
 
@@ -1,32 +1 @@
1
- // Comboboxes
2
- $combobox-select-padding-x: 0px !default;
3
- $combobox-select-padding-y: 0px !default;
4
- $combobox-select-width: $button-inner-calc-size !default;
5
-
6
- $combobox-bg: $input-bg !default;
7
- $combobox-text: $input-text !default;
8
- $combobox-border: $input-border !default;
9
-
10
- $combobox-hovered-bg: $input-hovered-bg !default;
11
- $combobox-hovered-text: $input-hovered-text !default;
12
- $combobox-hovered-border: $input-hovered-border !default;
13
-
14
- $combobox-focused-bg: $input-focused-bg !default;
15
- $combobox-focused-text: $input-focused-text !default;
16
- $combobox-focused-border: $input-focused-border !default;
17
- $combobox-focused-shadow: $input-focused-shadow !default;
18
-
19
- $combobox-select-bg: $button-bg !default;
20
- $combobox-select-text: $button-text !default;
21
- $combobox-select-border: $button-border !default;
22
- $combobox-select-gradient: $button-gradient !default;
23
-
24
- $combobox-select-hovered-bg: $button-hovered-bg !default;
25
- $combobox-select-hovered-text: $button-hovered-text !default;
26
- $combobox-select-hovered-border: $button-hovered-border !default;
27
- $combobox-select-hovered-gradient: $button-hovered-gradient !default;
28
-
29
- $combobox-select-pressed-bg: $button-active-bg !default;
30
- $combobox-select-pressed-text: $button-active-text !default;
31
- $combobox-select-pressed-border: $button-active-border !default;
32
- $combobox-select-pressed-gradient: $button-active-gradient !default;
1
+ // Combobox
@@ -1,17 +1,5 @@
1
1
  @include exports( "common/loading" ) {
2
2
 
3
- // Loading indicator
4
- .k-loading {
5
- width: 64px;
6
- height: 64px;
7
- display: block;
8
-
9
- .animate {
10
- animation: loading 2s infinite linear;
11
- }
12
- }
13
-
14
-
15
3
  // Loading mask
16
4
  .k-loading-mask,
17
5
  .k-loading-image,
@@ -100,7 +88,7 @@
100
88
  content: "";
101
89
  // See https://github.com/telerik/kendo-themes/issues/1925
102
90
  border-width: 1px; // TODO: Remove once we drop IE support
103
- border-width: #{"max( 1px, .015em )"}; // sass-lint:disable-line no-duplicate-properties
91
+ border-width: clamp( .015em, 1px, 1px ); // sass-lint:disable-line no-duplicate-properties
104
92
  font-size: 4em;
105
93
  }
106
94
  }
@@ -0,0 +1,10 @@
1
+ @import "../core/_index.scss";
2
+
3
+
4
+ // Dependencies
5
+
6
+
7
+ // Component
8
+ @import "_variables.scss";
9
+ @import "_layout.scss";
10
+ @import "_theme.scss";
@@ -0,0 +1,27 @@
1
+ @include exports( "daterangepicker/layout" ) {
2
+
3
+ // Daterange picker
4
+ .k-daterangepicker {
5
+ border: 0;
6
+ display: inline-flex;
7
+ flex-flow: row nowrap;
8
+ align-items: flex-start;
9
+ gap: map-get( $spacing, 2 );
10
+ }
11
+
12
+
13
+ // Angular specific
14
+ kendo-daterange {
15
+ // @extend .k-daterangepicker;
16
+ }
17
+
18
+
19
+ // React specific
20
+ .k-daterangepicker-wrap {
21
+ display: inherit;
22
+ flex-flow: inherit;
23
+ align-items: inherit;
24
+ gap: inherit;
25
+ }
26
+
27
+ }
@@ -0,0 +1,3 @@
1
+ @include exports("daterangepicker/theme") {
2
+
3
+ }
@@ -0,0 +1 @@
1
+ // Daterangepicker
@@ -1,4 +1,5 @@
1
1
  @include exports("dropdowngrid/layout") {
2
+
2
3
  .k-dropdowngrid-popup {
3
4
  overflow: hidden;
4
5
  }
@@ -2,70 +2,55 @@
2
2
 
3
3
  // Dropdown list
4
4
  .k-dropdown {
5
+ @include border-radius( $input-border-radius );
5
6
  width: $input-default-width;
6
- border-width: 0;
7
- outline: 0;
8
- background: none;
7
+ border-width: $input-border-width;
8
+ border-style: solid;
9
9
  box-sizing: border-box;
10
+ outline: 0;
10
11
  font-family: $input-font-family;
11
12
  font-size: $input-font-size;
12
13
  line-height: $input-line-height;
13
- text-align: left;
14
+ text-align: start;
14
15
  white-space: nowrap;
15
16
  display: inline-flex;
17
+ flex-flow: row nowrap;
16
18
  vertical-align: middle;
17
19
  position: relative;
20
+ overflow: hidden;
21
+ transition: all .1s ease; // sass-lint:disable-line no-transition-all
18
22
  -webkit-touch-callout: none;
19
23
  -webkit-tap-highlight-color: $rgba-transparent;
20
24
 
21
- .k-dropdown-wrap {
22
- @include border-radius( $input-border-radius );
23
- padding: 0;
24
- width: 100%;
25
- display: flex;
26
- flex-flow: row nowrap;
27
- border-width: 1px;
28
- border-style: solid;
29
- box-sizing: border-box;
30
- position: relative;
31
- transition: all .1s ease; // sass-lint:disable-line no-transition-all
32
- cursor: pointer;
33
- outline: 0;
34
- overflow: hidden;
35
-
36
25
 
37
- // Input
38
- .k-input {}
26
+ // Input
27
+ .k-input {}
39
28
 
40
29
 
41
- // Select
42
- .k-select {
43
- padding: $picker-select-padding-y $picker-select-padding-x;
44
- width: if( $use-picker-select-width, $button-inner-calc-size, null );
45
- border-width: 0;
46
- border-inline-start-width: $picker-select-border-width;
47
- border-color: transparent;
48
- box-sizing: border-box;
49
- border-style: solid;
50
- display: flex;
51
- align-items: center;
52
- justify-content: center;
53
- flex: 0 0 auto;
54
- text-align: center;
55
- cursor: pointer;
56
- }
30
+ // Loading icon
31
+ .k-i-loading {
32
+ width: $input-icon-width;
33
+ height: $input-icon-height;
57
34
  }
58
35
 
59
- }
60
-
61
-
62
- // RTL
63
36
 
64
- .k-dropdown.k-rtl,
65
- .k-dropdown[dir="rtl"],
66
- .k-rtl .k-dropdown,
67
- [dir="rtl"] .k-dropdown {
68
- text-align: right;
37
+ // Select
38
+ .k-select {
39
+ padding: $picker-select-padding-y $picker-select-padding-x;
40
+ width: if( $use-picker-select-width, $spinner-width, null );
41
+ border-width: 0;
42
+ border-inline-start-width: $picker-select-border-width;
43
+ border-style: solid;
44
+ border-color: transparent;
45
+ box-sizing: border-box;
46
+ outline: 0;
47
+ display: flex;
48
+ flex-flow: row nowrap;
49
+ align-items: center;
50
+ justify-content: center;
51
+ flex: 0 0 auto;
52
+ cursor: pointer;
53
+ }
69
54
  }
70
55
 
71
56
 
@@ -74,16 +59,13 @@
74
59
  .k-dropdown-operator {
75
60
  width: auto;
76
61
 
77
- .k-dropdown-wrap {
78
- .k-input {
79
- display: none;
80
- }
81
- .k-select {
82
- width: $button-inner-calc-size;
83
- height: $button-inner-calc-size;
84
- }
62
+ .k-input {
63
+ display: none;
64
+ }
65
+ .k-select {
66
+ width: $button-inner-calc-size;
67
+ height: $button-inner-calc-size;
85
68
  }
86
-
87
69
  }
88
70
 
89
71
 
@@ -1,78 +1,7 @@
1
1
  @include exports( "dropdownlist/theme" ) {
2
2
 
3
+ // Dropdown list
3
4
  .k-dropdown {
4
-
5
- .k-dropdown-wrap {
6
- @include fill(
7
- $dropdownlist-text,
8
- $dropdownlist-bg,
9
- $dropdownlist-border,
10
- $dropdownlist-gradient
11
- );
12
-
13
- // Hover state
14
- &:hover,
15
- &.k-state-hover {
16
- @include fill(
17
- $dropdownlist-hovered-text,
18
- $dropdownlist-hovered-bg,
19
- $dropdownlist-hovered-border,
20
- $dropdownlist-hovered-gradient
21
- );
22
- }
23
-
24
- &.k-state-active {}
25
-
26
- // Focused state
27
- &.k-state-focused {
28
- @include fill(
29
- $dropdownlist-focused-text,
30
- $dropdownlist-focused-bg,
31
- $dropdownlist-focused-border,
32
- $dropdownlist-focused-gradient
33
- );
34
- @include box-shadow($dropdownlist-focused-shadow);
35
- }
36
-
37
- // Invalid state
38
- &.k-invalid,
39
- &.k-invalid:hover,
40
- &.k-state-invalid {
41
- border-color: $invalid-border;
42
-
43
- .k-input-validation-icon {
44
- color: $invalid-text;
45
- }
46
-
47
- &:focus,
48
- &.k-state-focused {
49
- @include box-shadow($invalid-shadow);
50
- }
51
- }
52
- }
53
-
54
- // Invalid
55
- &.k-state-invalid,
56
- &.ng-invalid.ng-touched,
57
- &.ng-invalid.ng-dirty {
58
- > .k-dropdown-wrap {
59
- border-color: $invalid-border;
60
-
61
- .k-input-validation-icon {
62
- color: $invalid-text;
63
- }
64
-
65
- &:focus,
66
- &.k-state-focused {
67
- @include box-shadow($invalid-shadow);
68
- }
69
- }
70
- }
71
-
72
- }
73
-
74
- // Native select
75
- select.k-dropdown {
76
5
  @include fill(
77
6
  $dropdownlist-text,
78
7
  $dropdownlist-bg,
@@ -81,7 +10,8 @@
81
10
  );
82
11
 
83
12
  // Hover state
84
- &:hover {
13
+ &:hover,
14
+ &.k-state-hover {
85
15
  @include fill(
86
16
  $dropdownlist-hovered-text,
87
17
  $dropdownlist-hovered-bg,
@@ -90,8 +20,18 @@
90
20
  );
91
21
  }
92
22
 
93
- // Focused state
94
- &:focus {
23
+ // Focus state
24
+ &:focus,
25
+ &.k-state-focus {
26
+ @include fill(
27
+ $dropdownlist-focused-text,
28
+ $dropdownlist-focused-bg,
29
+ $dropdownlist-focused-border,
30
+ $dropdownlist-focused-gradient
31
+ );
32
+ @include box-shadow($dropdownlist-focused-shadow);
33
+ }
34
+ &:focus-within {
95
35
  @include fill(
96
36
  $dropdownlist-focused-text,
97
37
  $dropdownlist-focused-bg,
@@ -100,6 +40,24 @@
100
40
  );
101
41
  @include box-shadow($dropdownlist-focused-shadow);
102
42
  }
43
+
44
+
45
+ // Invalid state
46
+ &.k-invalid,
47
+ &.ng-invalid,
48
+ &.k-state-invalid {
49
+ border-color: $invalid-border;
50
+
51
+ .k-input-validation-icon {
52
+ color: $invalid-text;
53
+ }
54
+
55
+ &:focus-within,
56
+ &.k-state-focus {
57
+ @include box-shadow($invalid-shadow);
58
+ }
59
+ }
60
+
103
61
  }
104
62
 
105
63
  }