rsuite 5.13.0 → 5.15.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 (149) hide show
  1. package/Button/styles/index.less +1 -0
  2. package/CHANGELOG.md +45 -0
  3. package/Dropdown/styles/index.less +8 -3
  4. package/Grid/styles/index.less +42 -10
  5. package/Sidenav/styles/index.less +45 -11
  6. package/Table/styles/index.less +0 -2
  7. package/Tooltip/styles/index.less +4 -4
  8. package/cjs/@types/common.d.ts +6 -0
  9. package/cjs/Cascader/utils.d.ts +1 -1
  10. package/cjs/Col/Col.d.ts +25 -5
  11. package/cjs/Col/Col.js +9 -1
  12. package/cjs/CustomProvider/CustomProvider.d.ts +20 -7
  13. package/cjs/CustomProvider/CustomProvider.js +24 -3
  14. package/cjs/Dropdown/useRenderDropdownItem.d.ts +1 -1
  15. package/cjs/Form/Form.d.ts +8 -8
  16. package/cjs/Form/test/Form.test.d.ts +1 -0
  17. package/cjs/Form/test/Form.test.js +18 -0
  18. package/cjs/Modal/test/Modal.test.d.ts +1 -0
  19. package/cjs/Modal/test/Modal.test.js +14 -0
  20. package/cjs/Modal/utils.d.ts +1 -1
  21. package/cjs/Nav/NavDropdownMenu.d.ts +12 -1
  22. package/cjs/Nav/NavDropdownMenu.js +9 -3
  23. package/cjs/Nav/test/Nav.test.d.ts +1 -0
  24. package/cjs/Nav/test/Nav.test.js +17 -0
  25. package/cjs/Navbar/NavbarDropdownMenu.d.ts +12 -1
  26. package/cjs/Navbar/NavbarDropdownMenu.js +9 -3
  27. package/cjs/Overlay/Modal.d.ts +1 -4
  28. package/cjs/Overlay/Overlay.d.ts +3 -1
  29. package/cjs/Overlay/Overlay.js +6 -2
  30. package/cjs/Overlay/OverlayTrigger.d.ts +8 -4
  31. package/cjs/Overlay/OverlayTrigger.js +32 -4
  32. package/cjs/Overlay/Position.d.ts +3 -1
  33. package/cjs/Overlay/Position.js +12 -4
  34. package/cjs/Overlay/positionUtils.d.ts +11 -4
  35. package/cjs/Overlay/positionUtils.js +48 -2
  36. package/cjs/Panel/Panel.js +9 -6
  37. package/cjs/Picker/utils.d.ts +1 -1
  38. package/cjs/Popover/Popover.d.ts +2 -0
  39. package/cjs/Popover/Popover.js +6 -3
  40. package/cjs/Sidenav/SidenavDropdownToggle.js +2 -1
  41. package/cjs/Sidenav/SidenavItem.d.ts +4 -0
  42. package/cjs/Sidenav/SidenavItem.js +40 -31
  43. package/cjs/Sidenav/SidenavToggle.d.ts +5 -1
  44. package/cjs/Sidenav/SidenavToggle.js +25 -9
  45. package/cjs/Toggle/Toggle.d.ts +1 -1
  46. package/cjs/Tooltip/Tooltip.d.ts +3 -1
  47. package/cjs/Tooltip/Tooltip.js +8 -3
  48. package/cjs/Whisper/Whisper.d.ts +3 -5
  49. package/cjs/Whisper/Whisper.js +6 -1
  50. package/cjs/Whisper/test/Whisper.test.d.ts +1 -0
  51. package/cjs/Whisper/test/Whisper.test.js +23 -0
  52. package/cjs/index.d.ts +3 -3
  53. package/cjs/index.js +3 -2
  54. package/cjs/toaster/ToastContainer.d.ts +1 -0
  55. package/cjs/toaster/ToastContainer.js +4 -1
  56. package/cjs/toaster/index.d.ts +1 -0
  57. package/cjs/toaster/index.js +4 -1
  58. package/cjs/toaster/toaster.d.ts +0 -1
  59. package/cjs/toaster/useToaster.d.ts +12 -0
  60. package/cjs/toaster/useToaster.js +43 -0
  61. package/cjs/utils/constants.d.ts +1 -0
  62. package/cjs/utils/constants.js +3 -1
  63. package/cjs/utils/stringToObject.d.ts +1 -1
  64. package/cjs/utils/tplTransform.d.ts +1 -1
  65. package/cjs/utils/treeUtils.d.ts +3 -3
  66. package/cjs/utils/treeUtils.js +8 -10
  67. package/cjs/utils/useCustom.d.ts +1 -1
  68. package/cjs/utils/useCustom.js +5 -3
  69. package/cjs/utils/useFocus.d.ts +1 -1
  70. package/dist/rsuite-rtl.css +741 -71
  71. package/dist/rsuite-rtl.min.css +1 -1
  72. package/dist/rsuite-rtl.min.css.map +1 -1
  73. package/dist/rsuite.css +741 -71
  74. package/dist/rsuite.js +92 -103
  75. package/dist/rsuite.js.map +1 -1
  76. package/dist/rsuite.min.css +1 -1
  77. package/dist/rsuite.min.css.map +1 -1
  78. package/dist/rsuite.min.js +1 -1
  79. package/dist/rsuite.min.js.map +1 -1
  80. package/esm/@types/common.d.ts +6 -0
  81. package/esm/Cascader/utils.d.ts +1 -1
  82. package/esm/Col/Col.d.ts +25 -5
  83. package/esm/Col/Col.js +10 -2
  84. package/esm/CustomProvider/CustomProvider.d.ts +20 -7
  85. package/esm/CustomProvider/CustomProvider.js +22 -3
  86. package/esm/Dropdown/useRenderDropdownItem.d.ts +1 -1
  87. package/esm/Form/Form.d.ts +8 -8
  88. package/esm/Form/test/Form.test.d.ts +1 -0
  89. package/esm/Form/test/Form.test.js +11 -0
  90. package/esm/Modal/test/Modal.test.d.ts +1 -0
  91. package/esm/Modal/test/Modal.test.js +9 -0
  92. package/esm/Modal/utils.d.ts +1 -1
  93. package/esm/Nav/NavDropdownMenu.d.ts +12 -1
  94. package/esm/Nav/NavDropdownMenu.js +8 -3
  95. package/esm/Nav/test/Nav.test.d.ts +1 -0
  96. package/esm/Nav/test/Nav.test.js +11 -0
  97. package/esm/Navbar/NavbarDropdownMenu.d.ts +12 -1
  98. package/esm/Navbar/NavbarDropdownMenu.js +8 -3
  99. package/esm/Overlay/Modal.d.ts +1 -4
  100. package/esm/Overlay/Overlay.d.ts +3 -1
  101. package/esm/Overlay/Overlay.js +6 -2
  102. package/esm/Overlay/OverlayTrigger.d.ts +8 -4
  103. package/esm/Overlay/OverlayTrigger.js +33 -5
  104. package/esm/Overlay/Position.d.ts +3 -1
  105. package/esm/Overlay/Position.js +12 -4
  106. package/esm/Overlay/positionUtils.d.ts +11 -4
  107. package/esm/Overlay/positionUtils.js +46 -2
  108. package/esm/Panel/Panel.js +9 -6
  109. package/esm/Picker/utils.d.ts +1 -1
  110. package/esm/Popover/Popover.d.ts +2 -0
  111. package/esm/Popover/Popover.js +6 -3
  112. package/esm/Sidenav/SidenavDropdownToggle.js +2 -1
  113. package/esm/Sidenav/SidenavItem.d.ts +4 -0
  114. package/esm/Sidenav/SidenavItem.js +38 -31
  115. package/esm/Sidenav/SidenavToggle.d.ts +5 -1
  116. package/esm/Sidenav/SidenavToggle.js +22 -9
  117. package/esm/Toggle/Toggle.d.ts +1 -1
  118. package/esm/Tooltip/Tooltip.d.ts +3 -1
  119. package/esm/Tooltip/Tooltip.js +8 -3
  120. package/esm/Whisper/Whisper.d.ts +3 -5
  121. package/esm/Whisper/Whisper.js +6 -1
  122. package/esm/Whisper/test/Whisper.test.d.ts +1 -0
  123. package/esm/Whisper/test/Whisper.test.js +16 -0
  124. package/esm/index.d.ts +3 -3
  125. package/esm/index.js +1 -1
  126. package/esm/toaster/ToastContainer.d.ts +1 -0
  127. package/esm/toaster/ToastContainer.js +1 -0
  128. package/esm/toaster/index.d.ts +1 -0
  129. package/esm/toaster/index.js +1 -0
  130. package/esm/toaster/toaster.d.ts +0 -1
  131. package/esm/toaster/useToaster.d.ts +12 -0
  132. package/esm/toaster/useToaster.js +34 -0
  133. package/esm/utils/constants.d.ts +1 -0
  134. package/esm/utils/constants.js +1 -0
  135. package/esm/utils/stringToObject.d.ts +1 -1
  136. package/esm/utils/tplTransform.d.ts +1 -1
  137. package/esm/utils/treeUtils.d.ts +3 -3
  138. package/esm/utils/treeUtils.js +8 -10
  139. package/esm/utils/useCustom.d.ts +1 -1
  140. package/esm/utils/useCustom.js +5 -3
  141. package/esm/utils/useFocus.d.ts +1 -1
  142. package/package.json +1 -1
  143. package/styles/color-modes/dark.less +223 -181
  144. package/styles/color-modes/high-contrast.less +221 -179
  145. package/styles/color-modes/light.less +47 -5
  146. package/styles/colors/dark.less +91 -91
  147. package/styles/colors/high-contrast.less +91 -91
  148. package/styles/variables.less +35 -12
  149. package/styles/color-modes/common.less +0 -44
@@ -1,86 +1,125 @@
1
- @import '../colors/high-contrast';
2
-
3
1
  // see https://rsuitejs.com/design/dark
4
2
  & {
5
- @import (multiple) 'common';
3
+ // Gray levels
4
+ --rs-gray-50: @B050-high-contrast;
5
+ --rs-gray-100: @B100-high-contrast;
6
+ --rs-gray-200: @B200-high-contrast;
7
+ --rs-gray-300: @B300-high-contrast;
8
+ --rs-gray-400: @B400-high-contrast;
9
+ --rs-gray-500: @B500-high-contrast;
10
+ --rs-gray-600: @B600-high-contrast;
11
+ --rs-gray-700: @B700-high-contrast;
12
+ --rs-gray-800: @B800-high-contrast;
13
+ --rs-gray-900: @B900-high-contrast;
14
+
15
+ // Highlight levels
16
+ --rs-primary-50: @H050-high-contrast;
17
+ --rs-primary-100: @H100-high-contrast;
18
+ --rs-primary-200: @H200-high-contrast;
19
+ --rs-primary-300: @H300-high-contrast;
20
+ --rs-primary-400: @H400-high-contrast;
21
+ --rs-primary-500: @H500-high-contrast;
22
+ --rs-primary-600: @H600-high-contrast;
23
+ --rs-primary-700: @H700-high-contrast;
24
+ --rs-primary-800: @H800-high-contrast;
25
+ --rs-primary-900: @H900-high-contrast;
26
+
27
+ // Spectrum levels
28
+ each(@spectrum, .(@color-name) {
29
+ @color: @@color-name;
30
+ @color-name-50: ~'@{color-name}-50-high-contrast';
31
+ --rs-@{color-name}-50: @@color-name-50;
32
+
33
+ each(range(9), {
34
+ @level: @{index}00;
35
+ @color-name-level: ~'@{color-name}-@{level}-high-contrast';
36
+ --rs-@{color-name}-@{level}: @@color-name-level;
37
+ });
38
+ });
39
+
40
+ // Stateful colors
41
+ --rs-state-success: @green-high-contrast;
42
+ --rs-state-info: @blue-high-contrast;
43
+ --rs-state-warning: @yellow-high-contrast;
44
+ --rs-state-error: @red-high-contrast;
6
45
 
7
46
  // Reset
8
- --rs-body: @B900;
47
+ --rs-body: @B900-high-contrast;
9
48
 
10
49
  // Misc
11
- --rs-text-link: @H500;
12
- --rs-text-link-hover: @H400;
13
- --rs-text-link-active: @H300;
14
- --rs-text-primary: @B050;
15
- --rs-text-secondary: @B200;
16
- --rs-text-tertiary: @B300;
17
- --rs-text-heading: @B000;
18
- --rs-text-inverse: @B800;
19
- --rs-text-heading-inverse: @B900;
20
- --rs-text-active: @H500;
21
- --rs-text-disabled: @B500;
22
- --rs-border-primary: @B100;
23
- --rs-border-secondary: @B700;
24
- --rs-bg-card: @B800;
25
- --rs-bg-overlay: @B800;
26
- --rs-bg-well: @B900;
27
- --rs-bg-active: @H500;
28
- --rs-bg-backdrop: fade(@B900, 80%);
29
- --rs-state-hover-bg: @B600;
30
- --rs-color-focus-ring: @B000;
31
- --rs-state-focus-shadow: 0 0 0 3px @B900, 0 0 0 5px @B000;
32
- --rs-state-focus-shadow-slim: 0 0 0 2px @B000;
33
- --rs-state-focus-outline: 3px solid fade(@H500, 25%);
50
+ --rs-text-link: @H500-high-contrast;
51
+ --rs-text-link-hover: @H400-high-contrast;
52
+ --rs-text-link-active: @H300-high-contrast;
53
+ --rs-text-primary: @B050-high-contrast;
54
+ --rs-text-secondary: @B200-high-contrast;
55
+ --rs-text-tertiary: @B300-high-contrast;
56
+ --rs-text-heading: @B000-high-contrast;
57
+ --rs-text-inverse: @B800-high-contrast;
58
+ --rs-text-heading-inverse: @B900-high-contrast;
59
+ --rs-text-active: @H500-high-contrast;
60
+ --rs-text-disabled: @B500-high-contrast;
61
+ --rs-border-primary: @B100-high-contrast;
62
+ --rs-border-secondary: @B700-high-contrast;
63
+ --rs-bg-card: @B800-high-contrast;
64
+ --rs-bg-overlay: @B800-high-contrast;
65
+ --rs-bg-well: @B900-high-contrast;
66
+ --rs-bg-active: @H500-high-contrast;
67
+ --rs-bg-backdrop: fade(@B900-high-contrast, 80%);
68
+ --rs-state-hover-bg: @B600-high-contrast;
69
+ --rs-color-focus-ring: @B000-high-contrast;
70
+ --rs-state-focus-shadow: 0 0 0 3px @B900-high-contrast, 0 0 0 5px @B000-high-contrast;
71
+ --rs-state-focus-shadow-slim: 0 0 0 2px @B000-high-contrast;
72
+ --rs-state-focus-outline: 3px solid fade(@H500-high-contrast, 25%);
34
73
  --rs-shadow-overlay: 0 4px 4px rgba(0, 0, 0, 0.12), 0 0 10px rgba(0, 0, 0, 0.06);
35
74
 
36
75
  // Button
37
76
  --rs-btn-default-bg: transparent;
38
- --rs-btn-default-text: @H500;
39
- --rs-btn-default-border: 1px solid @H500;
77
+ --rs-btn-default-text: @H500-high-contrast;
78
+ --rs-btn-default-border: 1px solid @H500-high-contrast;
40
79
  --rs-btn-default-hover-bg: transparent;
41
- --rs-btn-default-hover-text: @H400;
80
+ --rs-btn-default-hover-text: @H400-high-contrast;
42
81
  --rs-btn-default-active-bg: transparent;
43
- --rs-btn-default-active-text: @H200;
82
+ --rs-btn-default-active-text: @H200-high-contrast;
44
83
  --rs-btn-default-disabled-bg: transparent;
45
- --rs-btn-default-disabled-text: @H500;
46
- --rs-btn-primary-bg: @H500;
47
- --rs-btn-primary-text: @B900;
48
- --rs-btn-primary-hover-bg: @H400;
49
- --rs-btn-primary-active-bg: @H200;
50
- --rs-btn-subtle-text: @H500;
84
+ --rs-btn-default-disabled-text: @H500-high-contrast;
85
+ --rs-btn-primary-bg: @H500-high-contrast;
86
+ --rs-btn-primary-text: @B900-high-contrast;
87
+ --rs-btn-primary-hover-bg: @H400-high-contrast;
88
+ --rs-btn-primary-active-bg: @H200-high-contrast;
89
+ --rs-btn-subtle-text: @H500-high-contrast;
51
90
  --rs-btn-subtle-hover-bg: transparent;
52
- --rs-btn-subtle-hover-text: @H400;
91
+ --rs-btn-subtle-hover-text: @H400-high-contrast;
53
92
  --rs-btn-subtle-active-bg: transparent;
54
- --rs-btn-subtle-active-text: @H200;
55
- --rs-btn-subtle-disabled-text: @B500;
56
- --rs-btn-ghost-border: @H500;
57
- --rs-btn-ghost-text: @H500;
58
- --rs-btn-ghost-hover-border: @H400;
59
- --rs-btn-ghost-hover-text: @H400;
60
- --rs-btn-ghost-active-border: @H200;
61
- --rs-btn-ghost-active-text: @H200;
62
- --rs-btn-link-text: @H500;
63
- --rs-btn-link-hover-text: @H400;
64
- --rs-btn-link-active-text: @H200;
93
+ --rs-btn-subtle-active-text: @H200-high-contrast;
94
+ --rs-btn-subtle-disabled-text: @B500-high-contrast;
95
+ --rs-btn-ghost-border: @H500-high-contrast;
96
+ --rs-btn-ghost-text: @H500-high-contrast;
97
+ --rs-btn-ghost-hover-border: @H400-high-contrast;
98
+ --rs-btn-ghost-hover-text: @H400-high-contrast;
99
+ --rs-btn-ghost-active-border: @H200-high-contrast;
100
+ --rs-btn-ghost-active-text: @H200-high-contrast;
101
+ --rs-btn-link-text: @H500-high-contrast;
102
+ --rs-btn-link-hover-text: @H400-high-contrast;
103
+ --rs-btn-link-active-text: @H200-high-contrast;
65
104
 
66
105
  // Icon Button
67
106
  --rs-iconbtn-addon: transparent;
68
107
  --rs-iconbtn-activated-addon: transparent;
69
108
  --rs-iconbtn-pressed-addon: transparent;
70
- --rs-iconbtn-primary-addon: @H400;
71
- --rs-iconbtn-primary-activated-addon: @H300;
72
- --rs-iconbtn-primary-pressed-addon: @H100;
109
+ --rs-iconbtn-primary-addon: @H400-high-contrast;
110
+ --rs-iconbtn-primary-activated-addon: @H300-high-contrast;
111
+ --rs-iconbtn-primary-pressed-addon: @H100-high-contrast;
73
112
 
74
113
  // Divider
75
- --rs-divider-border: @B600;
114
+ --rs-divider-border: @B600-high-contrast;
76
115
 
77
116
  // Loader
78
- --rs-loader-ring: fade(@B050, 30);
79
- --rs-loader-rotor: @B000;
80
- --rs-loader-backdrop: fade(@B900, 83%);
81
- --rs-loader-ring-inverse: fade(@B050, 80);
82
- --rs-loader-rotor-inverse: @B500;
83
- --rs-loader-backdrop-inverse: fade(@B000, 90);
117
+ --rs-loader-ring: fade(@B050-high-contrast, 30);
118
+ --rs-loader-rotor: @B000-high-contrast;
119
+ --rs-loader-backdrop: fade(@B900-high-contrast, 83%);
120
+ --rs-loader-ring-inverse: fade(@B050-high-contrast, 80);
121
+ --rs-loader-rotor-inverse: @B500-high-contrast;
122
+ --rs-loader-backdrop-inverse: fade(@B000-high-contrast, 90);
84
123
 
85
124
  // Message
86
125
  --rs-message-success-header: #fff;
@@ -105,197 +144,200 @@
105
144
  --rs-message-error-border: @red-300;
106
145
 
107
146
  // Tooltip
108
- --rs-tooltip-bg: @B800;
109
- --rs-tooltip-text: @B000;
147
+ --rs-tooltip-bg: @B800-high-contrast;
148
+ --rs-tooltip-text: @B000-high-contrast;
110
149
 
111
150
  // Progress
112
- --rs-progress-bg: @B700;
113
- --rs-progress-bar: @H500;
151
+ --rs-progress-bg: @B700-high-contrast;
152
+ --rs-progress-bar: @H500-high-contrast;
114
153
  --rs-progress-bar-success: @green;
115
154
  --rs-progress-bar-fail: @red;
116
155
 
117
156
  // Placeholder
118
- --rs-placeholder: @B600;
119
- --rs-placeholder-active: lighten(@B600, 5%);
157
+ --rs-placeholder: @B600-high-contrast;
158
+ --rs-placeholder-active: lighten(@B600-high-contrast, 5%);
120
159
 
121
160
  // Dropdown
122
- --rs-dropdown-divider: @B600;
123
- --rs-dropdown-item-bg-hover: @B600;
124
- --rs-dropdown-item-bg-active: fade(@H900, 20);
125
- --rs-dropdown-item-text-active: @H500;
126
- --rs-dropdown-header-text: @B500;
161
+ --rs-dropdown-divider: @B600-high-contrast;
162
+ --rs-dropdown-item-bg-hover: @B600-high-contrast;
163
+ --rs-dropdown-item-bg-active: fade(@H900-high-contrast, 20);
164
+ --rs-dropdown-item-text-active: @H500-high-contrast;
165
+ --rs-dropdown-header-text: @B500-high-contrast;
127
166
  --rs-dropdown-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.2), 0 4px 4px 3px rgba(0, 0, 0, 0.24);
128
167
 
129
168
  // ARIA menu
130
169
  --rs-menuitem-active-bg: transparent;
131
- --rs-menuitem-active-text: @H500;
170
+ --rs-menuitem-active-text: @H500-high-contrast;
132
171
 
133
172
  // Steps
134
- --rs-steps-border: @B200;
135
- --rs-steps-state-finish: @H500;
136
- --rs-steps-border-state-finish: @H500;
137
- --rs-steps-state-wait: @B200;
138
- --rs-steps-state-process: @H700;
173
+ --rs-steps-border: @B200-high-contrast;
174
+ --rs-steps-state-finish: @H500-high-contrast;
175
+ --rs-steps-border-state-finish: @H500-high-contrast;
176
+ --rs-steps-state-wait: @B200-high-contrast;
177
+ --rs-steps-state-process: @H700-high-contrast;
139
178
  --rs-steps-state-error: @red;
140
179
  --rs-steps-border-state-error: @red;
141
- --rs-steps-icon-state-process: @H500;
180
+ --rs-steps-icon-state-process: @H500-high-contrast;
142
181
  --rs-steps-icon-state-error: @red;
143
182
 
144
183
  // Navs
145
- --rs-navs-text: @B200;
146
- --rs-navs-text-hover: @H500;
184
+ --rs-navs-text: @B200-high-contrast;
185
+ --rs-navs-text-hover: @H500-high-contrast;
147
186
  --rs-navs-bg-hover: transparent;
148
- --rs-navs-text-active: @H500;
149
- --rs-navs-bg-active: @B400;
150
- --rs-navs-tab-border: @B600;
151
- --rs-navs-subtle-border: @B600;
152
- --rs-navs-selected: @H500;
187
+ --rs-navs-text-active: @H500-high-contrast;
188
+ --rs-navs-bg-active: @B400-high-contrast;
189
+ --rs-navs-tab-border: @B600-high-contrast;
190
+ --rs-navs-subtle-border: @B600-high-contrast;
191
+ --rs-navs-selected: @H500-high-contrast;
153
192
 
154
193
  // Navbar
155
- --rs-navbar-default-bg: @B800;
156
- --rs-navbar-default-text: @B050;
157
- --rs-navbar-default-selected-text: @H500;
194
+ --rs-navbar-default-bg: @B800-high-contrast;
195
+ --rs-navbar-default-text: @B050-high-contrast;
196
+ --rs-navbar-default-selected-text: @H500-high-contrast;
158
197
  --rs-navbar-default-hover-bg: transparent;
159
- --rs-navbar-default-hover-text: @H500;
160
- --rs-navbar-inverse-bg: @B800;
161
- --rs-navbar-inverse-text: @B050;
198
+ --rs-navbar-default-hover-text: @H500-high-contrast;
199
+ --rs-navbar-inverse-bg: @B800-high-contrast;
200
+ --rs-navbar-inverse-text: @B050-high-contrast;
162
201
  --rs-navbar-inverse-selected-bg: transparent;
163
- --rs-navbar-inverse-selected-text: @H500;
202
+ --rs-navbar-inverse-selected-text: @H500-high-contrast;
164
203
  --rs-navbar-inverse-hover-bg: transparent;
165
- --rs-navbar-inverse-hover-text: @H500;
166
- --rs-navbar-subtle-bg: @B800;
167
- --rs-navbar-subtle-text: @B050;
168
- --rs-navbar-subtle-selected-text: @H500;
204
+ --rs-navbar-inverse-hover-text: @H500-high-contrast;
205
+ --rs-navbar-subtle-bg: @B800-high-contrast;
206
+ --rs-navbar-subtle-text: @B050-high-contrast;
207
+ --rs-navbar-subtle-selected-text: @H500-high-contrast;
169
208
  --rs-navbar-subtle-hover-bg: transparent;
170
- --rs-navbar-subtle-hover-text: @H500;
209
+ --rs-navbar-subtle-hover-text: @H500-high-contrast;
171
210
 
172
211
  // Sidenav
173
- --rs-sidenav-default-bg: @B800;
174
- --rs-sidenav-default-text: @B050;
175
- --rs-sidenav-default-selected-text: @H500;
212
+ --rs-sidenav-default-bg: @B800-high-contrast;
213
+ --rs-sidenav-default-text: @B050-high-contrast;
214
+ --rs-sidenav-default-selected-text: @H500-high-contrast;
176
215
  --rs-sidenav-default-hover-bg: transparent;
177
- --rs-sidenav-default-hover-text: @H500;
178
- --rs-sidenav-inverse-bg: @B800;
179
- --rs-sidenav-inverse-text: @B050;
216
+ --rs-sidenav-default-hover-text: @H500-high-contrast;
217
+ --rs-sidenav-default-footer-border: @B050-high-contrast;
218
+ --rs-sidenav-inverse-bg: @B800-high-contrast;
219
+ --rs-sidenav-inverse-text: @B050-high-contrast;
180
220
  --rs-sidenav-inverse-selected-bg: transparent;
181
- --rs-sidenav-inverse-selected-text: @H500;
221
+ --rs-sidenav-inverse-selected-text: @H500-high-contrast;
182
222
  --rs-sidenav-inverse-hover-bg: transparent;
183
- --rs-sidenav-subtle-bg: @B800;
184
- --rs-sidenav-subtle-text: @B050;
185
- --rs-sidenav-subtle-selected-text: @H500;
223
+ --rs-sidenav-inverse-footer-border: @B050-high-contrast;
224
+ --rs-sidenav-subtle-bg: @B800-high-contrast;
225
+ --rs-sidenav-subtle-text: @B050-high-contrast;
226
+ --rs-sidenav-subtle-selected-text: @H500-high-contrast;
186
227
  --rs-sidenav-subtle-hover-bg: transparent;
187
- --rs-sidenav-subtle-hover-text: @H500;
228
+ --rs-sidenav-subtle-hover-text: @H500-high-contrast;
229
+ --rs-sidenav-subtle-footer-border: @B050-high-contrast;
188
230
 
189
231
  // Input
190
- --rs-input-bg: @B800;
191
- --rs-input-focus-border: @H500;
192
- --rs-input-disabled-bg: @B700;
232
+ --rs-input-bg: @B800-high-contrast;
233
+ --rs-input-focus-border: @H500-high-contrast;
234
+ --rs-input-disabled-bg: @B700-high-contrast;
193
235
 
194
236
  // ARIA Listboxes
195
237
  --rs-listbox-option-hover-bg: transparent;
196
- --rs-listbox-option-hover-text: @H500;
197
- --rs-listbox-option-selected-text: @H500;
238
+ --rs-listbox-option-hover-text: @H500-high-contrast;
239
+ --rs-listbox-option-selected-text: @H500-high-contrast;
198
240
  --rs-listbox-option-selected-bg: transparent;
199
- --rs-listbox-option-disabled-text: @B500;
200
- --rs-listbox-option-disabled-selected-text: @H200;
241
+ --rs-listbox-option-disabled-text: @B500-high-contrast;
242
+ --rs-listbox-option-disabled-selected-text: @H200-high-contrast;
201
243
 
202
244
  // Checkbox
203
- --rs-checkbox-icon: @B800;
204
- --rs-checkbox-border: @B100;
205
- --rs-checkbox-checked-bg: @H500;
206
- --rs-checkbox-disabled-bg: @B500;
245
+ --rs-checkbox-icon: @B800-high-contrast;
246
+ --rs-checkbox-border: @B100-high-contrast;
247
+ --rs-checkbox-checked-bg: @H500-high-contrast;
248
+ --rs-checkbox-disabled-bg: @B500-high-contrast;
207
249
 
208
250
  // Radio
209
- --rs-radio-marker: @B800;
210
- --rs-radio-border: @B100;
211
- --rs-radio-checked-bg: @H500;
212
- --rs-radio-disabled-bg: @B500;
251
+ --rs-radio-marker: @B800-high-contrast;
252
+ --rs-radio-border: @B100-high-contrast;
253
+ --rs-radio-checked-bg: @H500-high-contrast;
254
+ --rs-radio-disabled-bg: @B500-high-contrast;
213
255
 
214
256
  // Rate
215
- --rs-rate-symbol: @B100;
216
- --rs-rate-symbol-checked: @H500;
257
+ --rs-rate-symbol: @B100-high-contrast;
258
+ --rs-rate-symbol-checked: @H500-high-contrast;
217
259
 
218
260
  // Toggle
219
- --rs-toggle-bg: @B800;
220
- --rs-toggle-thumb: @B100;
221
- --rs-toggle-hover-bg: @B800;
222
- --rs-toggle-disabled-bg: @B800;
223
- --rs-toggle-disabled-thumb: @B300;
224
- --rs-toggle-checked-bg: @H500;
225
- --rs-toggle-checked-thumb: @B800;
226
- --rs-toggle-checked-hover-bg: @H400;
227
- --rs-toggle-checked-disabled-bg: @H900;
228
- --rs-toggle-checked-disabled-thumb: @B800;
261
+ --rs-toggle-bg: @B800-high-contrast;
262
+ --rs-toggle-thumb: @B100-high-contrast;
263
+ --rs-toggle-hover-bg: @B800-high-contrast;
264
+ --rs-toggle-disabled-bg: @B800-high-contrast;
265
+ --rs-toggle-disabled-thumb: @B300-high-contrast;
266
+ --rs-toggle-checked-bg: @H500-high-contrast;
267
+ --rs-toggle-checked-thumb: @B800-high-contrast;
268
+ --rs-toggle-checked-hover-bg: @H400-high-contrast;
269
+ --rs-toggle-checked-disabled-bg: @H900-high-contrast;
270
+ --rs-toggle-checked-disabled-thumb: @B800-high-contrast;
229
271
 
230
272
  // Slider
231
- --rs-slider-bar: @B600;
232
- --rs-slider-hover-bar: @B600;
233
- --rs-slider-thumb-border: @H500;
234
- --rs-slider-thumb-bg: @B700;
235
- --rs-slider-thumb-hover-shadow: 0 0 0 8px fade(@H500, 25);
236
- --rs-slider-progress: @H500;
273
+ --rs-slider-bar: @B600-high-contrast;
274
+ --rs-slider-hover-bar: @B600-high-contrast;
275
+ --rs-slider-thumb-border: @H500-high-contrast;
276
+ --rs-slider-thumb-bg: @B700-high-contrast;
277
+ --rs-slider-thumb-hover-shadow: 0 0 0 8px fade(@H500-high-contrast, 25);
278
+ --rs-slider-progress: @H500-high-contrast;
237
279
 
238
280
  // Uploader
239
- --rs-uploader-item-bg: @B300;
240
- --rs-uploader-item-hover-bg: @B800;
241
- --rs-uploader-item-hover-text: @H500;
242
- --rs-uploader-overlay-bg: fade(@B600, 80);
243
- --rs-uploader-dnd-bg: @B700;
244
- --rs-uploader-dnd-border: @B200;
245
- --rs-uploader-dnd-hover-border: @H500;
281
+ --rs-uploader-item-bg: @B300-high-contrast;
282
+ --rs-uploader-item-hover-bg: @B800-high-contrast;
283
+ --rs-uploader-item-hover-text: @H500-high-contrast;
284
+ --rs-uploader-overlay-bg: fade(@B600-high-contrast, 80);
285
+ --rs-uploader-dnd-bg: @B700-high-contrast;
286
+ --rs-uploader-dnd-border: @B200-high-contrast;
287
+ --rs-uploader-dnd-hover-border: @H500-high-contrast;
246
288
 
247
289
  // Avatar
248
- --rs-avatar-bg: @B400;
249
- --rs-avatar-text: @B000;
290
+ --rs-avatar-bg: @B400-high-contrast;
291
+ --rs-avatar-text: @B000-high-contrast;
250
292
 
251
293
  // Badge
252
294
  --rs-badge-bg: @red-500;
253
- --rs-badge-text: @B000;
295
+ --rs-badge-text: @B000-high-contrast;
254
296
 
255
297
  // Tag
256
- --rs-tag-bg: @B600;
298
+ --rs-tag-bg: @B600-high-contrast;
257
299
  --rs-tag-close: @red;
258
300
 
259
301
  // Carousel
260
- --rs-carousel-bg: @B600;
261
- --rs-carousel-indicator: fade(@B000, 40);
262
- --rs-carousel-indicator-hover: @B000;
263
- --rs-carousel-indicator-active: @H500;
302
+ --rs-carousel-bg: @B600-high-contrast;
303
+ --rs-carousel-indicator: fade(@B000-high-contrast, 40);
304
+ --rs-carousel-indicator-hover: @B000-high-contrast;
305
+ --rs-carousel-indicator-active: @H500-high-contrast;
264
306
 
265
307
  // Panel
266
308
  --rs-panel-shadow: 0 4px 4px rgba(0, 0, 0, 0.12), 0 0 10px rgba(0, 0, 0, 0.06);
267
309
 
268
310
  // Pagination
269
- --rs-pagination-item-text: @B050;
270
- --rs-pagination-item-current-text: @H500;
311
+ --rs-pagination-item-text: @B050-high-contrast;
312
+ --rs-pagination-item-current-text: @H500-high-contrast;
271
313
 
272
314
  // List
273
315
  --rs-list-bg: transparent;
274
- --rs-list-border: @B700;
275
- --rs-list-hover-bg: @B600;
276
- --rs-list-placeholder-bg: fade(@H900, 20%);
277
- --rs-list-placeholder-border: @H500;
316
+ --rs-list-border: @B700-high-contrast;
317
+ --rs-list-hover-bg: @B600-high-contrast;
318
+ --rs-list-placeholder-bg: fade(@H900-high-contrast, 20%);
319
+ --rs-list-placeholder-border: @H500-high-contrast;
278
320
 
279
321
  // Timeline
280
- --rs-timeline-indicator-bg: @B500;
281
- --rs-timeline-indicator-active-bg: @H500;
322
+ --rs-timeline-indicator-bg: @B500-high-contrast;
323
+ --rs-timeline-indicator-active-bg: @H500-high-contrast;
282
324
 
283
325
  // Table
284
326
  --rs-table-shadow: rgba(9, 9, 9, 0.99);
285
- --rs-table-sort: @H500;
286
- --rs-table-resize: @H500;
287
- --rs-table-scrollbar-track: @B700;
288
- --rs-table-scrollbar-thumb: @B200;
289
- --rs-table-scrollbar-thumb-active: @B100;
290
- --rs-table-scrollbar-vertical-track: @B700;
327
+ --rs-table-sort: @H500-high-contrast;
328
+ --rs-table-resize: @H500-high-contrast;
329
+ --rs-table-scrollbar-track: @B700-high-contrast;
330
+ --rs-table-scrollbar-thumb: @B200-high-contrast;
331
+ --rs-table-scrollbar-thumb-active: @B100-high-contrast;
332
+ --rs-table-scrollbar-vertical-track: @B700-high-contrast;
291
333
 
292
334
  // Drawer
293
- --rs-drawer-bg: @B700;
335
+ --rs-drawer-bg: @B700-high-contrast;
294
336
  --rs-drawer-shadow: 0 4px 4px rgba(0, 0, 0, 0.12), 0 0 10px rgba(0, 0, 0, 0.06);
295
337
 
296
338
  // Modal
297
339
  --rs-modal-shadow: 0 4px 4px rgba(0, 0, 0, 0.12), 0 0 10px rgba(0, 0, 0, 0.06);
298
- --rs-modal-border: 1px solid @B100;
340
+ --rs-modal-border: 1px solid @B100-high-contrast;
299
341
 
300
342
  // Form
301
343
  --rs-form-errormessage-text: #fff;
@@ -303,16 +345,16 @@
303
345
  --rs-form-errormessage-border: @red-500;
304
346
 
305
347
  // Picker
306
- --rs-picker-value: @H500;
307
- --rs-picker-count-bg: @H500;
308
- --rs-picker-count-text: @B900;
348
+ --rs-picker-value: @H500-high-contrast;
349
+ --rs-picker-count-bg: @H500-high-contrast;
350
+ --rs-picker-count-text: @B900-high-contrast;
309
351
 
310
352
  // Calendar
311
- --rs-calendar-today-bg: @H500;
312
- --rs-calendar-today-text: @B900;
313
- --rs-calendar-range-bg: fade(@H900, 50%);
314
- --rs-calendar-time-unit-bg: @B900;
315
- --rs-calendar-date-selected-text: @B900;
353
+ --rs-calendar-today-bg: @H500-high-contrast;
354
+ --rs-calendar-today-text: @B900-high-contrast;
355
+ --rs-calendar-range-bg: fade(@H900-high-contrast, 50%);
356
+ --rs-calendar-time-unit-bg: @B900-high-contrast;
357
+ --rs-calendar-date-selected-text: @B900-high-contrast;
316
358
 
317
359
  // Popover
318
360
  --rs-popover-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
@@ -1,8 +1,47 @@
1
- @import '../colors/light';
2
-
3
1
  // see https://rsuitejs.com/design/default
4
2
  & {
5
- @import (multiple) 'common';
3
+ // Gray levels
4
+ --rs-gray-50: @B050;
5
+ --rs-gray-100: @B100;
6
+ --rs-gray-200: @B200;
7
+ --rs-gray-300: @B300;
8
+ --rs-gray-400: @B400;
9
+ --rs-gray-500: @B500;
10
+ --rs-gray-600: @B600;
11
+ --rs-gray-700: @B700;
12
+ --rs-gray-800: @B800;
13
+ --rs-gray-900: @B900;
14
+
15
+ // Highlight levels
16
+ --rs-primary-50: @H050;
17
+ --rs-primary-100: @H100;
18
+ --rs-primary-200: @H200;
19
+ --rs-primary-300: @H300;
20
+ --rs-primary-400: @H400;
21
+ --rs-primary-500: @H500;
22
+ --rs-primary-600: @H600;
23
+ --rs-primary-700: @H700;
24
+ --rs-primary-800: @H800;
25
+ --rs-primary-900: @H900;
26
+
27
+ // Spectrum levels
28
+ each(@spectrum, .(@color-name) {
29
+ @color: @@color-name;
30
+ @color-name-50: ~'@{color-name}-50';
31
+ --rs-@{color-name}-50: @@color-name-50;
32
+
33
+ each(range(9), {
34
+ @level: @{index}00;
35
+ @color-name-level: ~'@{color-name}-@{level}';
36
+ --rs-@{color-name}-@{level}: @@color-name-level;
37
+ });
38
+ });
39
+
40
+ // Stateful colors
41
+ --rs-state-success: @green;
42
+ --rs-state-info: @blue;
43
+ --rs-state-warning: @yellow;
44
+ --rs-state-error: @red;
6
45
 
7
46
  // Reset
8
47
  --rs-body: @B000;
@@ -120,8 +159,8 @@
120
159
 
121
160
  // Dropdown
122
161
  --rs-dropdown-divider: @B200;
123
- --rs-dropdown-item-bg-hover: @H050;
124
- --rs-dropdown-item-bg-active: fade(@H050, 50);
162
+ --rs-dropdown-item-bg-hover: fade(@H100, 50%);
163
+ --rs-dropdown-item-bg-active: @H050;
125
164
  --rs-dropdown-item-text-active: @H700;
126
165
  --rs-dropdown-header-text: @B500;
127
166
  --rs-dropdown-shadow: 0 0 10px rgba(0, 0, 0, 0.06), 0 4px 4px rgba(0, 0, 0, 0.12);
@@ -174,15 +213,18 @@
174
213
  --rs-sidenav-default-selected-text: @H700;
175
214
  --rs-sidenav-default-hover-bg: @B200;
176
215
  --rs-sidenav-default-hover-text: @B800;
216
+ --rs-sidenav-default-footer-border: @B200;
177
217
  --rs-sidenav-inverse-bg: @H500;
178
218
  --rs-sidenav-inverse-text: #fff;
179
219
  --rs-sidenav-inverse-selected-bg: @H700;
180
220
  --rs-sidenav-inverse-hover-bg: @H600;
221
+ --rs-sidenav-inverse-footer-border: @H600;
181
222
  --rs-sidenav-subtle-bg: #fff;
182
223
  --rs-sidenav-subtle-text: @B600;
183
224
  --rs-sidenav-subtle-selected-text: @H700;
184
225
  --rs-sidenav-subtle-hover-bg: @B050;
185
226
  --rs-sidenav-subtle-hover-text: @B800;
227
+ --rs-sidenav-subtle-footer-border: @B200;
186
228
 
187
229
  // Input
188
230
  --rs-input-bg: @B000;