rsuite 5.0.0-beta.5 → 5.0.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.
Files changed (194) hide show
  1. package/Animation/styles/index.less +16 -16
  2. package/Animation/styles/mixin.less +2 -2
  3. package/Button/styles/index.less +36 -1
  4. package/Button/styles/mixin.less +7 -1
  5. package/CHANGELOG.md +47 -4
  6. package/Calendar/styles/index.less +7 -1
  7. package/Checkbox/styles/index.less +18 -2
  8. package/DatePicker/styles/index.less +6 -2
  9. package/Drawer/styles/index.less +11 -2
  10. package/Drawer/styles/mixin.less +2 -2
  11. package/Dropdown/styles/index.less +4 -0
  12. package/Form/styles/mixin.less +6 -0
  13. package/InputGroup/styles/index.less +4 -0
  14. package/Message/styles/index.less +16 -0
  15. package/Modal/styles/index.less +3 -2
  16. package/Nav/styles/index.less +18 -2
  17. package/Navbar/styles/index.less +68 -34
  18. package/Notification/styles/index.less +9 -3
  19. package/Pagination/styles/index.less +12 -1
  20. package/Pagination/styles/mixin.less +7 -0
  21. package/Picker/styles/index.less +25 -3
  22. package/Picker/styles/mixin.less +7 -2
  23. package/Popover/styles/index.less +23 -30
  24. package/Popover/styles/mixins.less +72 -0
  25. package/README.md +4 -4
  26. package/Radio/styles/index.less +16 -0
  27. package/RadioGroup/styles/index.less +4 -0
  28. package/Rate/styles/index.less +13 -2
  29. package/Ripple/styles/index.less +8 -4
  30. package/Sidenav/styles/index.less +160 -47
  31. package/Table/styles/index.less +8 -0
  32. package/TagInput/package.json +7 -0
  33. package/TagInput/styles/index.less +13 -0
  34. package/Toggle/styles/index.less +29 -19
  35. package/Tooltip/styles/index.less +32 -38
  36. package/Tooltip/styles/mixins.less +72 -0
  37. package/Uploader/styles/index.less +11 -1
  38. package/cjs/@types/common.d.ts +2 -0
  39. package/cjs/Animation/Bounce.js +10 -4
  40. package/cjs/Animation/Collapse.d.ts +1 -48
  41. package/cjs/Animation/Collapse.js +60 -106
  42. package/cjs/Animation/Fade.js +10 -5
  43. package/cjs/Animation/Slide.js +8 -4
  44. package/cjs/Carousel/Carousel.d.ts +7 -0
  45. package/cjs/Carousel/Carousel.js +24 -11
  46. package/cjs/CheckTree/index.js +14 -5
  47. package/cjs/CheckTreePicker/CheckTreePicker.js +9 -5
  48. package/cjs/DatePicker/DatePicker.d.ts +5 -1
  49. package/cjs/DatePicker/DatePicker.js +2 -13
  50. package/cjs/DateRangePicker/Calendar.d.ts +2 -1
  51. package/cjs/DateRangePicker/Calendar.js +4 -3
  52. package/cjs/DateRangePicker/DateRangePicker.d.ts +1 -1
  53. package/cjs/DateRangePicker/DateRangePicker.js +58 -43
  54. package/cjs/DateRangePicker/utils.d.ts +1 -1
  55. package/cjs/DateRangePicker/utils.js +9 -5
  56. package/cjs/Dropdown/Dropdown.js +31 -18
  57. package/cjs/Dropdown/DropdownContext.d.ts +4 -1
  58. package/cjs/Dropdown/DropdownItem.js +31 -4
  59. package/cjs/Dropdown/DropdownState.d.ts +37 -0
  60. package/cjs/Dropdown/DropdownState.js +66 -0
  61. package/cjs/Dropdown/DropdownToggle.js +3 -6
  62. package/cjs/InputNumber/InputNumber.js +11 -10
  63. package/cjs/InputPicker/InputPicker.d.ts +16 -3
  64. package/cjs/InputPicker/InputPicker.js +85 -44
  65. package/cjs/List/ListItem.d.ts +1 -1
  66. package/cjs/Menu/MenuItem.js +1 -1
  67. package/cjs/MultiCascader/MultiCascader.js +4 -3
  68. package/cjs/Nav/NavItem.js +11 -63
  69. package/cjs/Navbar/NavbarItem.d.ts +19 -0
  70. package/cjs/Navbar/NavbarItem.js +93 -0
  71. package/cjs/Pagination/Pagination.js +1 -1
  72. package/cjs/Picker/PickerToggle.js +2 -2
  73. package/cjs/Picker/utils.d.ts +1 -1
  74. package/cjs/Picker/utils.js +26 -22
  75. package/cjs/Progress/ProgressCircle.js +15 -15
  76. package/cjs/SelectPicker/SelectPicker.d.ts +1 -3
  77. package/cjs/Sidenav/SidenavDropdown.js +6 -1
  78. package/cjs/Sidenav/SidenavItem.js +46 -12
  79. package/cjs/Slider/Slider.js +2 -1
  80. package/cjs/TagInput/index.d.ts +13 -0
  81. package/cjs/TagInput/index.js +58 -0
  82. package/cjs/TagPicker/index.d.ts +10 -2
  83. package/cjs/TagPicker/index.js +25 -6
  84. package/cjs/Tree/Tree.d.ts +0 -2
  85. package/cjs/Tree/Tree.js +13 -4
  86. package/cjs/Tree/TreeContext.d.ts +7 -0
  87. package/cjs/Tree/TreeContext.js +13 -0
  88. package/cjs/TreePicker/TreeNode.js +10 -3
  89. package/cjs/TreePicker/TreePicker.js +22 -10
  90. package/cjs/Uploader/UploadFileItem.d.ts +5 -0
  91. package/cjs/Uploader/UploadFileItem.js +4 -3
  92. package/cjs/Uploader/Uploader.d.ts +8 -3
  93. package/cjs/Uploader/Uploader.js +12 -6
  94. package/cjs/index.d.ts +2 -0
  95. package/cjs/index.js +5 -1
  96. package/cjs/utils/ajaxUpload.d.ts +5 -1
  97. package/cjs/utils/ajaxUpload.js +24 -13
  98. package/cjs/utils/constants.d.ts +1 -0
  99. package/cjs/utils/constants.js +1 -0
  100. package/cjs/utils/dateUtils.d.ts +1 -0
  101. package/cjs/utils/dateUtils.js +5 -1
  102. package/cjs/utils/useInternalId.d.ts +4 -0
  103. package/cjs/utils/useInternalId.js +24 -0
  104. package/cjs/utils/useUniqueId.d.ts +1 -1
  105. package/cjs/utils/useUniqueId.js +1 -1
  106. package/dist/rsuite-rtl.css +1614 -221
  107. package/dist/rsuite-rtl.min.css +1 -1
  108. package/dist/rsuite-rtl.min.css.map +1 -1
  109. package/dist/rsuite.css +1618 -221
  110. package/dist/rsuite.js +288 -288
  111. package/dist/rsuite.min.css +1 -1
  112. package/dist/rsuite.min.css.map +1 -1
  113. package/dist/rsuite.min.js +1 -1
  114. package/dist/rsuite.min.js.map +1 -1
  115. package/esm/@types/common.d.ts +2 -0
  116. package/esm/Animation/Bounce.js +8 -4
  117. package/esm/Animation/Collapse.d.ts +1 -48
  118. package/esm/Animation/Collapse.js +59 -104
  119. package/esm/Animation/Fade.js +8 -4
  120. package/esm/Animation/Slide.js +6 -3
  121. package/esm/Carousel/Carousel.d.ts +7 -0
  122. package/esm/Carousel/Carousel.js +25 -12
  123. package/esm/CheckTree/index.js +11 -5
  124. package/esm/CheckTreePicker/CheckTreePicker.js +8 -6
  125. package/esm/DatePicker/DatePicker.d.ts +5 -1
  126. package/esm/DatePicker/DatePicker.js +2 -13
  127. package/esm/DateRangePicker/Calendar.d.ts +2 -1
  128. package/esm/DateRangePicker/Calendar.js +4 -3
  129. package/esm/DateRangePicker/DateRangePicker.d.ts +1 -1
  130. package/esm/DateRangePicker/DateRangePicker.js +27 -12
  131. package/esm/DateRangePicker/utils.d.ts +1 -1
  132. package/esm/DateRangePicker/utils.js +7 -3
  133. package/esm/Dropdown/Dropdown.js +30 -19
  134. package/esm/Dropdown/DropdownContext.d.ts +4 -1
  135. package/esm/Dropdown/DropdownItem.js +30 -6
  136. package/esm/Dropdown/DropdownState.d.ts +37 -0
  137. package/esm/Dropdown/DropdownState.js +55 -0
  138. package/esm/Dropdown/DropdownToggle.js +3 -6
  139. package/esm/InputNumber/InputNumber.js +11 -10
  140. package/esm/InputPicker/InputPicker.d.ts +16 -3
  141. package/esm/InputPicker/InputPicker.js +84 -45
  142. package/esm/List/ListItem.d.ts +1 -1
  143. package/esm/Menu/MenuItem.js +1 -1
  144. package/esm/MultiCascader/MultiCascader.js +4 -3
  145. package/esm/Nav/NavItem.js +12 -61
  146. package/esm/Navbar/NavbarItem.d.ts +19 -0
  147. package/esm/Navbar/NavbarItem.js +73 -0
  148. package/esm/Pagination/Pagination.js +1 -1
  149. package/esm/Picker/PickerToggle.js +2 -2
  150. package/esm/Picker/utils.d.ts +1 -1
  151. package/esm/Picker/utils.js +26 -22
  152. package/esm/Progress/ProgressCircle.js +15 -15
  153. package/esm/SelectPicker/SelectPicker.d.ts +1 -3
  154. package/esm/Sidenav/SidenavDropdown.js +5 -1
  155. package/esm/Sidenav/SidenavItem.js +47 -13
  156. package/esm/Slider/Slider.js +2 -1
  157. package/esm/TagInput/index.d.ts +13 -0
  158. package/esm/TagInput/index.js +44 -0
  159. package/esm/TagPicker/index.d.ts +10 -2
  160. package/esm/TagPicker/index.js +23 -6
  161. package/esm/Tree/Tree.d.ts +0 -2
  162. package/esm/Tree/Tree.js +10 -4
  163. package/esm/Tree/TreeContext.d.ts +7 -0
  164. package/esm/Tree/TreeContext.js +3 -0
  165. package/esm/TreePicker/TreeNode.js +10 -4
  166. package/esm/TreePicker/TreePicker.js +23 -12
  167. package/esm/Uploader/UploadFileItem.d.ts +5 -0
  168. package/esm/Uploader/UploadFileItem.js +2 -3
  169. package/esm/Uploader/Uploader.d.ts +8 -3
  170. package/esm/Uploader/Uploader.js +12 -6
  171. package/esm/index.d.ts +2 -0
  172. package/esm/index.js +1 -0
  173. package/esm/utils/ajaxUpload.d.ts +5 -1
  174. package/esm/utils/ajaxUpload.js +24 -13
  175. package/esm/utils/constants.d.ts +1 -0
  176. package/esm/utils/constants.js +1 -0
  177. package/esm/utils/dateUtils.d.ts +1 -0
  178. package/esm/utils/dateUtils.js +1 -0
  179. package/esm/utils/useInternalId.d.ts +4 -0
  180. package/esm/utils/useInternalId.js +16 -0
  181. package/esm/utils/useUniqueId.d.ts +1 -1
  182. package/esm/utils/useUniqueId.js +1 -1
  183. package/package.json +4 -9
  184. package/styles/color-modes/dark.less +28 -5
  185. package/styles/color-modes/high-contrast.less +317 -0
  186. package/styles/color-modes/light.less +24 -1
  187. package/styles/color-modes.less +5 -0
  188. package/styles/colors/high-contrast.less +105 -0
  189. package/styles/index.less +1 -0
  190. package/styles/mixins/color-modes.less +6 -0
  191. package/styles/mixins/listbox.less +13 -1
  192. package/styles/mixins/menu.less +7 -0
  193. package/styles/mixins/utilities.less +9 -1
  194. package/styles/variables.less +11 -0
@@ -3,32 +3,32 @@
3
3
  @import 'animation';
4
4
 
5
5
  // Slide
6
- .slide-out {
6
+ .rs-anim-slide-out {
7
7
  .animation-common(cubic-bezier(0.4, 0, 1, 1)); //Fast out
8
8
  }
9
9
 
10
- .slide-in {
10
+ .rs-anim-slide-in {
11
11
  .animation-common(ease-in-out);
12
12
  }
13
13
 
14
- .right {
14
+ .rs-anim-right {
15
15
  .slide-animation-setting(slideInRight, slideOutRight);
16
16
  }
17
17
 
18
- .left {
18
+ .rs-anim-left {
19
19
  .slide-animation-setting(slideInLeft, slideOutLeft);
20
20
  }
21
21
 
22
- .top {
22
+ .rs-anim-top {
23
23
  .slide-animation-setting(slideInTop, slideOutTop);
24
24
  }
25
25
 
26
- .bottom {
26
+ .rs-anim-bottom {
27
27
  .slide-animation-setting(slideInBottom, slideOutBottom);
28
28
  }
29
29
 
30
30
  // Bounce
31
- .bounce-in {
31
+ .rs-anim-bounce-in {
32
32
  animation-name: bounceIn;
33
33
  .animation-common(cubic-bezier(0.68, -0.55, 0.27, 1.55)); // Ease in out
34
34
 
@@ -45,7 +45,7 @@
45
45
  }
46
46
  }
47
47
 
48
- .bounce-out {
48
+ .rs-anim-bounce-out {
49
49
  animation-name: bounceOut;
50
50
  .animation-common(cubic-bezier(0.4, 0, 1, 1)); //Fast out
51
51
 
@@ -62,36 +62,36 @@
62
62
  }
63
63
  }
64
64
 
65
- .fade {
65
+ .rs-anim-fade {
66
66
  opacity: 0;
67
67
  transition: opacity 0.15s linear;
68
68
  pointer-events: none;
69
69
 
70
- &.in {
70
+ &.rs-anim-in {
71
71
  opacity: 1;
72
72
  pointer-events: unset;
73
73
  }
74
74
  }
75
75
 
76
- .collapse {
76
+ .rs-anim-collapse {
77
77
  display: none;
78
78
 
79
- &.in {
79
+ &.rs-anim-in {
80
80
  display: block;
81
81
  }
82
82
 
83
- tr&.in {
83
+ tr&.rs-anim-in {
84
84
  display: table-row;
85
85
  }
86
86
 
87
- tbody&.in {
87
+ tbody&.rs-anim-in {
88
88
  display: table-row-group;
89
89
  }
90
90
  }
91
91
 
92
- .collapsing {
92
+ .rs-anim-collapsing {
93
93
  position: relative;
94
94
  height: 0;
95
95
  overflow: hidden;
96
- transition: height 0.35s ease, visibility 0.35s ease;
96
+ transition: height 0.35s ease, width 0.35s ease, visibility 0.35s ease;
97
97
  }
@@ -5,11 +5,11 @@
5
5
  }
6
6
 
7
7
  .slide-animation-setting(@move-in-animation-name,@move-out-animation-name) {
8
- &.slide-in {
8
+ &.rs-anim-slide-in {
9
9
  animation-name: @move-in-animation-name;
10
10
  }
11
11
 
12
- &.slide-out {
12
+ &.rs-anim-slide-out {
13
13
  animation-name: @move-out-animation-name;
14
14
  }
15
15
  }
@@ -18,13 +18,17 @@
18
18
  white-space: nowrap;
19
19
  transition: @btn-transition;
20
20
  // Reset border style in all browser
21
- border: none;
21
+ border: var(--rs-btn-default-border, none);
22
22
  user-select: none;
23
23
  text-decoration: none;
24
24
  color: var(--rs-btn-default-text);
25
25
  background-color: var(--rs-btn-default-bg);
26
26
  border-radius: 6px;
27
27
 
28
+ .high-contrast-mode({
29
+ transition: none;
30
+ });
31
+
28
32
  .rs-btn-md();
29
33
 
30
34
  &:focus {
@@ -33,6 +37,7 @@
33
37
  }
34
38
 
35
39
  .button-activated({
40
+ color: var(--rs-btn-default-hover-text);
36
41
  background-color: var(--rs-btn-default-hover-bg);
37
42
  });
38
43
 
@@ -57,6 +62,7 @@
57
62
  .rs-btn-primary {
58
63
  color: var(--rs-btn-primary-text);
59
64
  background-color: var(--rs-btn-primary-bg);
65
+ border: none;
60
66
 
61
67
  .button-activated({
62
68
  color: var(--rs-btn-primary-text);
@@ -79,6 +85,7 @@
79
85
  .rs-btn-subtle {
80
86
  color: var(--rs-btn-subtle-text);
81
87
  background-color: transparent;
88
+ border: none;
82
89
 
83
90
  .button-activated({
84
91
  color: var(--rs-btn-subtle-hover-text);
@@ -100,6 +107,7 @@
100
107
  .rs-btn-link {
101
108
  color: var(--rs-btn-link-text);
102
109
  background-color: transparent;
110
+ border: none;
103
111
 
104
112
  .button-activated({
105
113
  color: var(--rs-btn-link-hover-text);
@@ -191,6 +199,25 @@ each(@spectrum, .(@color) {
191
199
  --rs-btn-link-hover-text: @C400;
192
200
  --rs-btn-link-active-text: @C200;
193
201
  });
202
+
203
+ .high-contrast-mode({
204
+ --rs-btn-primary-bg: @C700;
205
+ --rs-btn-primary-hover-bg: @C600;
206
+ --rs-btn-primary-active-bg: @C400;
207
+ --rs-btn-subtle-hover-bg: @C600;
208
+ --rs-btn-subtle-hover-text: var(--rs-gray-900);
209
+ --rs-btn-subtle-active-bg: @C400;
210
+ --rs-btn-subtle-active-text: var(--rs-gray-900);
211
+ --rs-btn-ghost-border: @C500;
212
+ --rs-btn-ghost-text: @C500;
213
+ --rs-btn-ghost-hover-border: @C400;
214
+ --rs-btn-ghost-hover-text: @C400;
215
+ --rs-btn-ghost-active-border: @C200;
216
+ --rs-btn-ghost-active-text: @C200;
217
+ --rs-btn-link-text: @C500;
218
+ --rs-btn-link-hover-text: @C400;
219
+ --rs-btn-link-active-text: @C200;
220
+ });
194
221
  }
195
222
  });
196
223
 
@@ -260,6 +287,10 @@ each(@spectrum, .(@color) {
260
287
 
261
288
  .rs-btn-primary& {
262
289
  border-color: rgba(248, 247, 250, 0.3);
290
+
291
+ .high-contrast-mode({
292
+ border-color: var(--rs-loader-ring-inverse);
293
+ });
263
294
  }
264
295
  }
265
296
 
@@ -271,6 +302,10 @@ each(@spectrum, .(@color) {
271
302
 
272
303
  .rs-btn-primary& {
273
304
  border-top-color: #fff;
305
+
306
+ .high-contrast-mode({
307
+ border-top-color: var(--rs-loader-rotor-inverse);
308
+ });
274
309
  }
275
310
  }
276
311
  }
@@ -1,3 +1,4 @@
1
+ @import '../../styles/mixins/color-modes';
1
2
  // States
2
3
 
3
4
  .button-activated(@rules) {
@@ -18,6 +19,10 @@
18
19
  &:disabled,
19
20
  &.rs-btn-disabled {
20
21
  @rules();
22
+
23
+ .high-contrast-mode({
24
+ opacity: 0.5;
25
+ });
21
26
  }
22
27
  }
23
28
 
@@ -65,6 +70,7 @@
65
70
 
66
71
  > .rs-icon {
67
72
  left: 0;
73
+ border-right: var(--rs-btn-default-border, none);
68
74
  }
69
75
  }
70
76
 
@@ -73,6 +79,7 @@
73
79
 
74
80
  > .rs-icon {
75
81
  right: 0;
82
+ border-left: var(--rs-btn-default-border, none);
76
83
  }
77
84
  }
78
85
  }
@@ -117,4 +124,3 @@
117
124
  @icon-size: 12px;
118
125
  );
119
126
  }
120
-
package/CHANGELOG.md CHANGED
@@ -1,17 +1,60 @@
1
- <a name="5.0.0-beta.5"></a>
2
- # [5.0.0-beta.5](https://github.com/rsuite/rsuite/compare/v5.0.0-beta.4...v5.0.0-beta.5) (2021-08-18)
1
+ <a name="5.0.0-beta.8"></a>
2
+ # [5.0.0-beta.8](https://github.com/rsuite/rsuite/compare/v5.0.0-beta.7...v5.0.0-beta.8) (2021-09-17)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * **date-picker:** fix calendar header wrapping ([#1907](https://github.com/rsuite/rsuite/issues/1907)) ([4cfc3af](https://github.com/rsuite/rsuite/commit/4cfc3af))
8
+ * **navbar,dropdown:** unexpected focus submenu ([#1908](https://github.com/rsuite/rsuite/issues/1908)) ([697aa3e](https://github.com/rsuite/rsuite/commit/697aa3e))
9
+
10
+
11
+ ### Features
12
+
13
+ * **table:** support `rowSpan` on `<Table.Column>` ([#1909](https://github.com/rsuite/rsuite/issues/1909)) ([34a3a1f](https://github.com/rsuite/rsuite/commit/34a3a1f))
14
+
3
15
 
4
16
 
17
+ <a name="5.0.0-beta.7"></a>
18
+
19
+ # [5.0.0-beta.7](https://github.com/rsuite/rsuite/compare/v5.0.0-beta.6...v5.0.0-beta.7) (2021-09-09)
20
+
5
21
  ### Bug Fixes
6
22
 
7
- * **date-picker:** fix DatePicker cannot be used as controlled ([#1844](https://github.com/rsuite/rsuite/issues/1844)) ([3d6c035](https://github.com/rsuite/rsuite/commit/3d6c035)), closes [#1842](https://github.com/rsuite/rsuite/issues/1842)
23
+ - **tag-input:** adjust default value of the trigger to `Enter` ([#1886](https://github.com/rsuite/rsuite/issues/1886)) ([4405b6b](https://github.com/rsuite/rsuite/commit/4405b6b))
24
+
25
+ ### Features
26
+
27
+ - **carousel:** support `onSelect`, `onSlideEnd`, `onSlideStart` on `<Carousel>` ([#1889](https://github.com/rsuite/rsuite/issues/1889)) ([91e7b98](https://github.com/rsuite/rsuite/commit/91e7b98))
28
+ - **date-picker:** remove `inline` on `<DatePicker>` ([#1892](https://github.com/rsuite/rsuite/issues/1892)) ([83a77df](https://github.com/rsuite/rsuite/commit/83a77df))
29
+ - **theme:** added support for high-contrast theme ([#1828](https://github.com/rsuite/rsuite/pull/1828))
8
30
 
31
+ <a name="5.0.0-beta.6"></a>
32
+
33
+ # [5.0.0-beta.6](https://github.com/rsuite/rsuite/compare/v5.0.0-beta.5...v5.0.0-beta.6) (2021-09-06)
34
+
35
+ ### Bug Fixes
36
+
37
+ - **drawer:** fix incorrect styles in drawer title and drawer actions ([#1874](https://github.com/rsuite/rsuite/issues/1874)) ([747a5f1](https://github.com/rsuite/rsuite/commit/747a5f1))
38
+ - **list-item:** fix unable to set HTML event on List.Item ([#1863](https://github.com/rsuite/rsuite/issues/1863)) ([07578a2](https://github.com/rsuite/rsuite/commit/07578a2)), closes [#1859](https://github.com/rsuite/rsuite/issues/1859)
39
+ - **sidenav:** fix incorrect indent before dropdown toggle ([#1856](https://github.com/rsuite/rsuite/issues/1856)) ([048da73](https://github.com/rsuite/rsuite/commit/048da73))
9
40
 
10
41
  ### Features
11
42
 
12
- * **dropdown:** support `renderToggle` on `<Dropdown>` ([#1843](https://github.com/rsuite/rsuite/issues/1843)) ([99c1925](https://github.com/rsuite/rsuite/commit/99c1925))
43
+ - **tag-input:** add support for TagInput ([#1848](https://github.com/rsuite/rsuite/issues/1848)) ([eb66602](https://github.com/rsuite/rsuite/commit/eb66602)), closes [#1265](https://github.com/rsuite/rsuite/issues/1265)
44
+ - **tag-picker:** support `trigger` on `<TagPicker>` ([#1847](https://github.com/rsuite/rsuite/issues/1847)) ([8ace065](https://github.com/rsuite/rsuite/commit/8ace065))
45
+ - **uploader:** support `disableMultipart` on `<Uploader>` ([#1862](https://github.com/rsuite/rsuite/issues/1862)) ([a6d7dcb](https://github.com/rsuite/rsuite/commit/a6d7dcb))
46
+
47
+ <a name="5.0.0-beta.5"></a>
48
+
49
+ # [5.0.0-beta.5](https://github.com/rsuite/rsuite/compare/v5.0.0-beta.4...v5.0.0-beta.5) (2021-08-18)
13
50
 
51
+ ### Bug Fixes
52
+
53
+ - **date-picker:** fix DatePicker cannot be used as controlled ([#1844](https://github.com/rsuite/rsuite/issues/1844)) ([3d6c035](https://github.com/rsuite/rsuite/commit/3d6c035)), closes [#1842](https://github.com/rsuite/rsuite/issues/1842)
54
+
55
+ ### Features
14
56
 
57
+ - **dropdown:** support `renderToggle` on `<Dropdown>` ([#1843](https://github.com/rsuite/rsuite/issues/1843)) ([99c1925](https://github.com/rsuite/rsuite/commit/99c1925))
15
58
 
16
59
  <a name="5.0.0-beta.4"></a>
17
60
 
@@ -590,7 +590,13 @@
590
590
 
591
591
  &&-active {
592
592
  background-color: var(--rs-bg-active);
593
- color: #fff;
593
+ color: var(--rs-calendar-date-selected-text);
594
+
595
+ .high-contrast-mode({
596
+ &:hover {
597
+ .listbox-option-active();
598
+ }
599
+ });
594
600
  }
595
601
 
596
602
  &&-disabled {
@@ -4,7 +4,7 @@
4
4
  .rs-checkbox {
5
5
  .radio-checkbox-common();
6
6
 
7
- [type='checkbox']:focus ~ .rs-checkbox-inner::before {
7
+ [type='checkbox']:focus-visible ~ .rs-checkbox-inner::before {
8
8
  box-shadow: var(--rs-state-focus-shadow);
9
9
  }
10
10
  }
@@ -37,6 +37,10 @@
37
37
  transform: rotate(45deg) scale(0);
38
38
  transition: opacity 0.2s ease-in, transform 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46);
39
39
 
40
+ .high-contrast-mode({
41
+ transition: none;
42
+ });
43
+
40
44
  .rs-checkbox-checked &,
41
45
  .rs-checkbox-indeterminate & {
42
46
  border: solid var(--rs-checkbox-icon);
@@ -95,6 +99,10 @@
95
99
  visibility: hidden;
96
100
  transition: transform 0.2s linear, opacity 0.2s linear;
97
101
 
102
+ .high-contrast-mode({
103
+ transition: none;
104
+ });
105
+
98
106
  .rs-checkbox-checked & {
99
107
  transform: scale(1.5);
100
108
  opacity: 0;
@@ -116,7 +124,11 @@
116
124
 
117
125
  transition: background 0.2s linear, border 0.2s linear, box-shadow 0.2s linear;
118
126
 
119
- .rs-checkbox-checker:hover & {
127
+ .high-contrast-mode({
128
+ transition: none;
129
+ });
130
+
131
+ label:hover & {
120
132
  border-color: var(--rs-checkbox-checked-bg);
121
133
  }
122
134
 
@@ -134,6 +146,10 @@
134
146
  .rs-checkbox-disabled.rs-checkbox-checked &,
135
147
  .rs-checkbox-disabled.rs-checkbox-indeterminate & {
136
148
  opacity: 0.3;
149
+
150
+ .high-contrast-mode({
151
+ opacity: 0.5;
152
+ });
137
153
  }
138
154
  }
139
155
  }
@@ -55,7 +55,7 @@
55
55
  }
56
56
 
57
57
  .rs-calendar {
58
- width: @calendar-width;
58
+ min-width: @calendar-width;
59
59
  // To make sure <Calendar/> horizontal align at center when toolbar width is so long.
60
60
  display: block;
61
61
  margin: 0 auto;
@@ -65,13 +65,17 @@
65
65
  @datepicker-calendar-cell-gap-x * 7 + 30px * 8 + @datepicker-calendar-padding-x * 2
66
66
  );
67
67
 
68
- width: @calendar-width;
68
+ min-width: @calendar-width;
69
69
  }
70
70
 
71
71
  &-header {
72
72
  width: 100%;
73
73
  }
74
74
 
75
+ &-table {
76
+ width: unset;
77
+ }
78
+
75
79
  .rs-calendar-month-dropdown-cell-content,
76
80
  .rs-calendar-table-cell-content {
77
81
  width: @calendar-in-menu-content-side-length;
@@ -127,6 +127,10 @@
127
127
  outline: 0;
128
128
  width: 100%;
129
129
  height: 100%;
130
+
131
+ .high-contrast-mode({
132
+ background-color: var(--rs-drawer-bg);
133
+ });
130
134
  }
131
135
 
132
136
  .rs-drawer-backdrop {
@@ -139,12 +143,12 @@
139
143
  background-color: var(--rs-bg-backdrop);
140
144
 
141
145
  // Fade for backdrop
142
- &.fade {
146
+ &.rs-anim-fade {
143
147
  opacity: 0;
144
148
  transition: opacity 0.3s ease-in;
145
149
  }
146
150
 
147
- &.in {
151
+ &.rs-anim-in {
148
152
  opacity: 1;
149
153
  }
150
154
  }
@@ -183,6 +187,11 @@
183
187
  flex-shrink: 0;
184
188
  text-align: right; // right align buttons
185
189
  border-top: none;
190
+ margin-left: auto;
191
+
192
+ .rs-drawer-title ~ & {
193
+ margin-left: 10px;
194
+ }
186
195
 
187
196
  // Properly space out buttons
188
197
  .rs-btn + .rs-btn {
@@ -13,11 +13,11 @@
13
13
  }
14
14
 
15
15
  .drawer-animation-setting(@move-in-animation-name,@move-out-animation-name) {
16
- &.slide-out {
16
+ &.rs-slide-out {
17
17
  animation-name: @move-out-animation-name;
18
18
  }
19
19
 
20
- &.slide-in {
20
+ &.rs-slide-in {
21
21
  animation-name: @move-in-animation-name;
22
22
  }
23
23
  }
@@ -107,6 +107,10 @@
107
107
  z-index: @zindex-dropdown + 1;
108
108
  float: left;
109
109
  box-shadow: var(--rs-dropdown-shadow);
110
+
111
+ .high-contrast-mode({
112
+ border: 1px solid var(--rs-border-primary);
113
+ });
110
114
  }
111
115
 
112
116
  &[hidden] {
@@ -1,3 +1,5 @@
1
+ @import '../../styles/mixins/color-modes';
2
+
1
3
  .default-input() {
2
4
  display: block;
3
5
  width: 100%;
@@ -9,6 +11,10 @@
9
11
  border-radius: @border-radius;
10
12
  .input-md();
11
13
 
14
+ .high-contrast-mode({
15
+ transition: none;
16
+ });
17
+
12
18
  // Placeholder
13
19
  &::placeholder {
14
20
  color: var(--rs-text-secondary);
@@ -18,6 +18,10 @@
18
18
  color: var(--rs-text-primary);
19
19
  border: 1px solid var(--rs-border-primary);
20
20
 
21
+ .high-contrast-mode({
22
+ transition: none;
23
+ });
24
+
21
25
  &:not(.rs-input-group-disabled):hover,
22
26
  &:not(.rs-input-group-disabled).rs-input-group-focus,
23
27
  &:focus-within {
@@ -117,6 +117,10 @@
117
117
  var(--rs-message-success-text);
118
118
  var(--rs-message-success-icon);
119
119
  );
120
+
121
+ .high-contrast-mode({
122
+ border: 1px solid var(--rs-message-success-border);
123
+ });
120
124
  }
121
125
 
122
126
  .rs-message-info {
@@ -126,6 +130,10 @@
126
130
  var(--rs-message-info-text);
127
131
  var(--rs-message-info-icon);
128
132
  );
133
+
134
+ .high-contrast-mode({
135
+ border: 1px solid var(--rs-message-info-border);
136
+ });
129
137
  }
130
138
 
131
139
  .rs-message-warning {
@@ -135,6 +143,10 @@
135
143
  var(--rs-message-warning-text);
136
144
  var(--rs-message-warning-icon);
137
145
  );
146
+
147
+ .high-contrast-mode({
148
+ border: 1px solid var(--rs-message-warning-border);
149
+ });
138
150
  }
139
151
 
140
152
  .rs-message-error {
@@ -144,4 +156,8 @@
144
156
  var(--rs-message-error-text);
145
157
  var(--rs-message-error-icon);
146
158
  );
159
+
160
+ .high-contrast-mode({
161
+ border: 1px solid var(--rs-message-error-border);
162
+ });
147
163
  }
@@ -63,6 +63,7 @@
63
63
  .rs-modal-content {
64
64
  position: relative;
65
65
  background-color: var(--rs-bg-overlay);
66
+ border: var(--rs-modal-border, none);
66
67
  border-radius: @modal-border-radius;
67
68
  // Remove focus outline from opened modal
68
69
  outline: 0;
@@ -80,12 +81,12 @@
80
81
  background-color: var(--rs-bg-backdrop);
81
82
 
82
83
  // Fade for backdrop
83
- &.fade {
84
+ &.rs-anim-fade {
84
85
  opacity: 0;
85
86
  transition: opacity 0.3s ease-in;
86
87
  }
87
88
 
88
- &.in {
89
+ &.rs-anim-in {
89
90
  opacity: 1;
90
91
  }
91
92
  }
@@ -37,20 +37,32 @@
37
37
  outline: none;
38
38
  .reset-link-text-decoration(none);
39
39
 
40
+ .high-contrast-mode({
41
+ transition: none;
42
+ });
43
+
40
44
  &:hover,
41
45
  &:focus,
42
46
  &&-focus {
43
47
  color: var(--rs-navs-text-hover);
48
+
49
+ .high-contrast-mode({
50
+ text-decoration: underline;
51
+ });
44
52
  }
45
53
 
46
54
  &:focus-visible {
47
- .focus-ring();
55
+ .focus-ring(slim);
48
56
 
49
- z-index: 1;
57
+ z-index: 2;
50
58
  }
51
59
 
52
60
  &:active {
53
61
  color: var(--rs-navs-text-active);
62
+
63
+ .high-contrast-mode({
64
+ text-decoration: underline;
65
+ });
54
66
  }
55
67
 
56
68
  &.rs-nav-item-disabled {
@@ -63,6 +75,10 @@
63
75
  position: relative;
64
76
  color: var(--rs-navs-selected);
65
77
  z-index: 1;
78
+
79
+ .high-contrast-mode({
80
+ text-decoration: underline;
81
+ });
66
82
  }
67
83
 
68
84
  > .rs-icon {