@nutui/nutui-react 4.0.0-beta.2 → 4.0.0-beta.4

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 (291) hide show
  1. package/CHANGELOG.md +19 -2
  2. package/dist/cjs/packages/actionsheet/style/style.css +1 -5
  3. package/dist/cjs/packages/address/style/style.css +2 -6
  4. package/dist/cjs/packages/animate/style/style.css +0 -4
  5. package/dist/cjs/packages/animatingnumbers/style/style.css +1 -6
  6. package/dist/cjs/packages/audio/style/style.css +2 -6
  7. package/dist/cjs/packages/avatar/style/style.css +0 -4
  8. package/dist/cjs/packages/avatarcropper/style/style.css +0 -4
  9. package/dist/cjs/packages/avatargroup/style/style.css +0 -4
  10. package/dist/cjs/packages/backtop/style/style.css +0 -4
  11. package/dist/cjs/packages/badge/style/style.css +5 -9
  12. package/dist/cjs/packages/barrage/style/style.css +0 -4
  13. package/dist/cjs/packages/button/style/style.css +21 -25
  14. package/dist/cjs/packages/calendar/style/style.css +8 -12
  15. package/dist/cjs/packages/calendarcard/style/style.css +4 -8
  16. package/dist/cjs/packages/calendaritem/style/style.css +1 -6
  17. package/dist/cjs/packages/card/style/style.css +0 -4
  18. package/dist/cjs/packages/cascader/style/style.css +0 -4
  19. package/dist/cjs/packages/cell/style/style.css +0 -4
  20. package/dist/cjs/packages/cellgroup/style/style.css +0 -4
  21. package/dist/cjs/packages/checkbox/style/style.css +6 -10
  22. package/dist/cjs/packages/checkboxgroup/style/style.css +0 -4
  23. package/dist/cjs/packages/circleprogress/style/style.css +0 -4
  24. package/dist/cjs/packages/col/style/style.css +0 -4
  25. package/dist/cjs/packages/collapse/style/style.css +1 -6
  26. package/dist/cjs/packages/collapseitem/style/style.css +3 -7
  27. package/dist/cjs/packages/configprovider/style/style.css +1 -6
  28. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  29. package/dist/cjs/packages/countdown/style/style.css +1 -5
  30. package/dist/cjs/packages/countup/style/style.css +0 -4
  31. package/dist/cjs/packages/datepicker/style/style.css +1 -6
  32. package/dist/cjs/packages/datepickerview/style/style.css +0 -4
  33. package/dist/cjs/packages/dialog/style/style.css +1 -5
  34. package/dist/cjs/packages/divider/style/style.css +0 -4
  35. package/dist/cjs/packages/drag/style/style.css +0 -4
  36. package/dist/cjs/packages/elevator/style/style.css +1 -5
  37. package/dist/cjs/packages/ellipsis/style/style.css +0 -4
  38. package/dist/cjs/packages/empty/empty.d.ts +4 -11
  39. package/dist/cjs/packages/empty/empty.js +21 -17
  40. package/dist/cjs/packages/empty/index.d.ts +1 -1
  41. package/dist/cjs/packages/empty/style/empty.scss +97 -31
  42. package/dist/cjs/packages/empty/style/style.css +77 -36
  43. package/dist/cjs/packages/empty/style-jmapp/empty.scss +97 -31
  44. package/dist/cjs/packages/empty/style-jmapp/style.css +77 -32
  45. package/dist/cjs/packages/empty/style-jrkf/empty.scss +97 -31
  46. package/dist/cjs/packages/empty/style-jrkf/style.css +77 -32
  47. package/dist/cjs/packages/fixednav/style/style.css +0 -4
  48. package/dist/cjs/packages/form/style/style.css +1 -6
  49. package/dist/cjs/packages/formitem/style/style.css +0 -4
  50. package/dist/cjs/packages/grid/style/style.css +0 -4
  51. package/dist/cjs/packages/griditem/style/style.css +0 -4
  52. package/dist/cjs/packages/hoverbutton/style/style.css +0 -4
  53. package/dist/cjs/packages/hoverbuttonitem/style/style.css +0 -4
  54. package/dist/cjs/packages/image/style/style.css +0 -4
  55. package/dist/cjs/packages/imagepreview/style/style.css +0 -4
  56. package/dist/cjs/packages/indicator/indicator.js +6 -7
  57. package/dist/cjs/packages/indicator/style/indicator.scss +85 -37
  58. package/dist/cjs/packages/indicator/style/style.css +71 -36
  59. package/dist/cjs/packages/indicator/style-jmapp/indicator.scss +85 -37
  60. package/dist/cjs/packages/indicator/style-jmapp/style.css +65 -26
  61. package/dist/cjs/packages/indicator/style-jrkf/indicator.scss +85 -37
  62. package/dist/cjs/packages/indicator/style-jrkf/style.css +65 -26
  63. package/dist/cjs/packages/infiniteloading/style/style.css +0 -4
  64. package/dist/cjs/packages/input/style/style.css +4 -8
  65. package/dist/cjs/packages/inputnumber/style/style.css +3 -7
  66. package/dist/cjs/packages/layout/style/style.css +1 -6
  67. package/dist/cjs/packages/loading/style/style.css +0 -4
  68. package/dist/cjs/packages/lottie/style/style.css +1 -6
  69. package/dist/cjs/packages/menu/style/style.css +1 -5
  70. package/dist/cjs/packages/menuitem/style/style.css +0 -4
  71. package/dist/cjs/packages/navbar/style/style.css +0 -4
  72. package/dist/cjs/packages/noticebar/style/style.css +0 -4
  73. package/dist/cjs/packages/notify/style/style.css +0 -4
  74. package/dist/cjs/packages/numberkeyboard/style/style.css +0 -4
  75. package/dist/cjs/packages/overlay/style/style.css +0 -4
  76. package/dist/cjs/packages/pagination/style/style.css +2 -6
  77. package/dist/cjs/packages/picker/style/style.css +0 -4
  78. package/dist/cjs/packages/pickerview/style/style.css +0 -4
  79. package/dist/cjs/packages/popover/style/style.css +1 -5
  80. package/dist/cjs/packages/popup/style/style.css +0 -4
  81. package/dist/cjs/packages/price/style/style.css +0 -4
  82. package/dist/cjs/packages/progress/style/style.css +0 -4
  83. package/dist/cjs/packages/pulltorefresh/style/style.css +0 -4
  84. package/dist/cjs/packages/quickenter/style/style.css +0 -4
  85. package/dist/cjs/packages/radio/style/style.css +6 -10
  86. package/dist/cjs/packages/radiogroup/style/style.css +2 -6
  87. package/dist/cjs/packages/range/style/style.css +1 -5
  88. package/dist/cjs/packages/rate/index.d.ts +1 -1
  89. package/dist/cjs/packages/rate/rate.js +54 -8
  90. package/dist/cjs/packages/rate/style/rate.scss +244 -76
  91. package/dist/cjs/packages/rate/style/style.css +198 -72
  92. package/dist/cjs/packages/rate/style-jmapp/rate.scss +244 -76
  93. package/dist/cjs/packages/rate/style-jmapp/style.css +198 -68
  94. package/dist/cjs/packages/rate/style-jrkf/rate.scss +244 -76
  95. package/dist/cjs/packages/rate/style-jrkf/style.css +198 -68
  96. package/dist/cjs/packages/resultpage/style/style.css +0 -4
  97. package/dist/cjs/packages/row/style/style.css +0 -4
  98. package/dist/cjs/packages/safearea/style/style.css +0 -4
  99. package/dist/cjs/packages/searchbar/style/style.css +1 -5
  100. package/dist/cjs/packages/segmented/style/style.css +1 -5
  101. package/dist/cjs/packages/shortpassword/style/style.css +1 -5
  102. package/dist/cjs/packages/sidebar/style/style.css +1 -5
  103. package/dist/cjs/packages/sidebaritem/style/style.css +0 -4
  104. package/dist/cjs/packages/signature/style/style.css +0 -4
  105. package/dist/cjs/packages/skeleton/style/style.css +0 -4
  106. package/dist/cjs/packages/space/style/style.css +0 -4
  107. package/dist/cjs/packages/step/style/style.css +1 -5
  108. package/dist/cjs/packages/steps/style/style.css +1 -5
  109. package/dist/cjs/packages/sticky/style/style.css +0 -4
  110. package/dist/cjs/packages/swipe/style/style.css +0 -4
  111. package/dist/cjs/packages/swiper/style/style.css +0 -4
  112. package/dist/cjs/packages/swiperitem/style/style.css +0 -4
  113. package/dist/cjs/packages/switch/style/style.css +35 -34
  114. package/dist/cjs/packages/switch/style/switch.scss +31 -18
  115. package/dist/cjs/packages/switch/style-jmapp/style.css +22 -17
  116. package/dist/cjs/packages/switch/style-jmapp/switch.scss +31 -18
  117. package/dist/cjs/packages/switch/style-jrkf/style.css +22 -17
  118. package/dist/cjs/packages/switch/style-jrkf/switch.scss +31 -18
  119. package/dist/cjs/packages/tabbar/style/style.css +0 -4
  120. package/dist/cjs/packages/tabbaritem/style/style.css +0 -4
  121. package/dist/cjs/packages/table/style/style.css +0 -4
  122. package/dist/cjs/packages/tabpane/style/style.css +0 -4
  123. package/dist/cjs/packages/tabs/style/style.css +3 -7
  124. package/dist/cjs/packages/tag/style/style.css +0 -4
  125. package/dist/cjs/packages/textarea/style/style.css +5 -9
  126. package/dist/cjs/packages/timedetail/style/style.css +0 -4
  127. package/dist/cjs/packages/timeselect/style/style.css +0 -4
  128. package/dist/cjs/packages/toast/style/style.css +0 -4
  129. package/dist/cjs/packages/tour/style/style.css +1 -5
  130. package/dist/cjs/packages/trendarrow/style/style.css +0 -4
  131. package/dist/cjs/packages/uploader/style/style.css +2 -6
  132. package/dist/cjs/packages/video/style/style.css +0 -4
  133. package/dist/cjs/packages/virtuallist/style/style.css +0 -4
  134. package/dist/cjs/packages/watermark/style/style.css +0 -4
  135. package/dist/cjs/types/spec/empty/base.d.ts +12 -8
  136. package/dist/cjs/types/spec/empty/base.js +28 -1
  137. package/dist/cjs/types/spec/indicator/base.d.ts +2 -0
  138. package/dist/cjs/types/spec/rate/base.d.ts +3 -0
  139. package/dist/es/packages/actionsheet/style/style.css +1 -5
  140. package/dist/es/packages/address/style/style.css +2 -6
  141. package/dist/es/packages/animate/style/style.css +0 -4
  142. package/dist/es/packages/animatingnumbers/style/style.css +1 -6
  143. package/dist/es/packages/audio/style/style.css +2 -6
  144. package/dist/es/packages/avatar/style/style.css +0 -4
  145. package/dist/es/packages/avatarcropper/style/style.css +0 -4
  146. package/dist/es/packages/avatargroup/style/style.css +0 -4
  147. package/dist/es/packages/backtop/style/style.css +0 -4
  148. package/dist/es/packages/badge/style/style.css +5 -9
  149. package/dist/es/packages/barrage/style/style.css +0 -4
  150. package/dist/es/packages/button/style/style.css +21 -25
  151. package/dist/es/packages/calendar/style/style.css +8 -12
  152. package/dist/es/packages/calendarcard/style/style.css +4 -8
  153. package/dist/es/packages/calendaritem/style/style.css +1 -6
  154. package/dist/es/packages/card/style/style.css +0 -4
  155. package/dist/es/packages/cascader/style/style.css +0 -4
  156. package/dist/es/packages/cell/style/style.css +0 -4
  157. package/dist/es/packages/cellgroup/style/style.css +0 -4
  158. package/dist/es/packages/checkbox/style/style.css +6 -10
  159. package/dist/es/packages/checkboxgroup/style/style.css +0 -4
  160. package/dist/es/packages/circleprogress/style/style.css +0 -4
  161. package/dist/es/packages/col/style/style.css +0 -4
  162. package/dist/es/packages/collapse/style/style.css +1 -6
  163. package/dist/es/packages/collapseitem/style/style.css +3 -7
  164. package/dist/es/packages/configprovider/style/style.css +1 -6
  165. package/dist/es/packages/configprovider/types.d.ts +1 -1
  166. package/dist/es/packages/countdown/style/style.css +1 -5
  167. package/dist/es/packages/countup/style/style.css +0 -4
  168. package/dist/es/packages/datepicker/style/style.css +1 -6
  169. package/dist/es/packages/datepickerview/style/style.css +0 -4
  170. package/dist/es/packages/dialog/style/style.css +1 -5
  171. package/dist/es/packages/divider/style/style.css +0 -4
  172. package/dist/es/packages/drag/style/style.css +0 -4
  173. package/dist/es/packages/elevator/style/style.css +1 -5
  174. package/dist/es/packages/ellipsis/style/style.css +0 -4
  175. package/dist/es/packages/empty/empty.d.ts +4 -11
  176. package/dist/es/packages/empty/empty.js +21 -17
  177. package/dist/es/packages/empty/index.d.ts +1 -1
  178. package/dist/es/packages/empty/style/empty.scss +97 -31
  179. package/dist/es/packages/empty/style/style.css +77 -36
  180. package/dist/es/packages/empty/style-jmapp/empty.scss +97 -31
  181. package/dist/es/packages/empty/style-jmapp/style.css +77 -32
  182. package/dist/es/packages/empty/style-jrkf/empty.scss +97 -31
  183. package/dist/es/packages/empty/style-jrkf/style.css +77 -32
  184. package/dist/es/packages/fixednav/style/style.css +0 -4
  185. package/dist/es/packages/form/style/style.css +1 -6
  186. package/dist/es/packages/formitem/style/style.css +0 -4
  187. package/dist/es/packages/grid/style/style.css +0 -4
  188. package/dist/es/packages/griditem/style/style.css +0 -4
  189. package/dist/es/packages/hoverbutton/style/style.css +0 -4
  190. package/dist/es/packages/hoverbuttonitem/style/style.css +0 -4
  191. package/dist/es/packages/image/style/style.css +0 -4
  192. package/dist/es/packages/imagepreview/style/style.css +0 -4
  193. package/dist/es/packages/indicator/indicator.js +6 -7
  194. package/dist/es/packages/indicator/style/indicator.scss +85 -37
  195. package/dist/es/packages/indicator/style/style.css +71 -36
  196. package/dist/es/packages/indicator/style-jmapp/indicator.scss +85 -37
  197. package/dist/es/packages/indicator/style-jmapp/style.css +65 -26
  198. package/dist/es/packages/indicator/style-jrkf/indicator.scss +85 -37
  199. package/dist/es/packages/indicator/style-jrkf/style.css +65 -26
  200. package/dist/es/packages/infiniteloading/style/style.css +0 -4
  201. package/dist/es/packages/input/style/style.css +4 -8
  202. package/dist/es/packages/inputnumber/style/style.css +3 -7
  203. package/dist/es/packages/layout/style/style.css +1 -6
  204. package/dist/es/packages/loading/style/style.css +0 -4
  205. package/dist/es/packages/lottie/style/style.css +1 -6
  206. package/dist/es/packages/menu/style/style.css +1 -5
  207. package/dist/es/packages/menuitem/style/style.css +0 -4
  208. package/dist/es/packages/navbar/style/style.css +0 -4
  209. package/dist/es/packages/noticebar/style/style.css +0 -4
  210. package/dist/es/packages/notify/style/style.css +0 -4
  211. package/dist/es/packages/numberkeyboard/style/style.css +0 -4
  212. package/dist/es/packages/overlay/style/style.css +0 -4
  213. package/dist/es/packages/pagination/style/style.css +2 -6
  214. package/dist/es/packages/picker/style/style.css +0 -4
  215. package/dist/es/packages/pickerview/style/style.css +0 -4
  216. package/dist/es/packages/popover/style/style.css +1 -5
  217. package/dist/es/packages/popup/style/style.css +0 -4
  218. package/dist/es/packages/price/style/style.css +0 -4
  219. package/dist/es/packages/progress/style/style.css +0 -4
  220. package/dist/es/packages/pulltorefresh/style/style.css +0 -4
  221. package/dist/es/packages/quickenter/style/style.css +0 -4
  222. package/dist/es/packages/radio/style/style.css +6 -10
  223. package/dist/es/packages/radiogroup/style/style.css +2 -6
  224. package/dist/es/packages/range/style/style.css +1 -5
  225. package/dist/es/packages/rate/index.d.ts +1 -1
  226. package/dist/es/packages/rate/rate.js +54 -8
  227. package/dist/es/packages/rate/style/rate.scss +244 -76
  228. package/dist/es/packages/rate/style/style.css +198 -72
  229. package/dist/es/packages/rate/style-jmapp/rate.scss +244 -76
  230. package/dist/es/packages/rate/style-jmapp/style.css +198 -68
  231. package/dist/es/packages/rate/style-jrkf/rate.scss +244 -76
  232. package/dist/es/packages/rate/style-jrkf/style.css +198 -68
  233. package/dist/es/packages/resultpage/style/style.css +0 -4
  234. package/dist/es/packages/row/style/style.css +0 -4
  235. package/dist/es/packages/safearea/style/style.css +0 -4
  236. package/dist/es/packages/searchbar/style/style.css +1 -5
  237. package/dist/es/packages/segmented/style/style.css +1 -5
  238. package/dist/es/packages/shortpassword/style/style.css +1 -5
  239. package/dist/es/packages/sidebar/style/style.css +1 -5
  240. package/dist/es/packages/sidebaritem/style/style.css +0 -4
  241. package/dist/es/packages/signature/style/style.css +0 -4
  242. package/dist/es/packages/skeleton/style/style.css +0 -4
  243. package/dist/es/packages/space/style/style.css +0 -4
  244. package/dist/es/packages/step/style/style.css +1 -5
  245. package/dist/es/packages/steps/style/style.css +1 -5
  246. package/dist/es/packages/sticky/style/style.css +0 -4
  247. package/dist/es/packages/swipe/style/style.css +0 -4
  248. package/dist/es/packages/swiper/style/style.css +0 -4
  249. package/dist/es/packages/swiperitem/style/style.css +0 -4
  250. package/dist/es/packages/switch/style/style.css +35 -34
  251. package/dist/es/packages/switch/style/switch.scss +31 -18
  252. package/dist/es/packages/switch/style-jmapp/style.css +22 -17
  253. package/dist/es/packages/switch/style-jmapp/switch.scss +31 -18
  254. package/dist/es/packages/switch/style-jrkf/style.css +22 -17
  255. package/dist/es/packages/switch/style-jrkf/switch.scss +31 -18
  256. package/dist/es/packages/tabbar/style/style.css +0 -4
  257. package/dist/es/packages/tabbaritem/style/style.css +0 -4
  258. package/dist/es/packages/table/style/style.css +0 -4
  259. package/dist/es/packages/tabpane/style/style.css +0 -4
  260. package/dist/es/packages/tabs/style/style.css +3 -7
  261. package/dist/es/packages/tag/style/style.css +0 -4
  262. package/dist/es/packages/textarea/style/style.css +5 -9
  263. package/dist/es/packages/timedetail/style/style.css +0 -4
  264. package/dist/es/packages/timeselect/style/style.css +0 -4
  265. package/dist/es/packages/toast/style/style.css +0 -4
  266. package/dist/es/packages/tour/style/style.css +1 -5
  267. package/dist/es/packages/trendarrow/style/style.css +0 -4
  268. package/dist/es/packages/uploader/style/style.css +2 -6
  269. package/dist/es/packages/video/style/style.css +0 -4
  270. package/dist/es/packages/virtuallist/style/style.css +0 -4
  271. package/dist/es/packages/watermark/style/style.css +0 -4
  272. package/dist/es/types/spec/empty/base.d.ts +15 -11
  273. package/dist/es/types/spec/empty/base.js +13 -1
  274. package/dist/es/types/spec/indicator/base.d.ts +5 -0
  275. package/dist/es/types/spec/rate/base.d.ts +9 -0
  276. package/dist/nutui.react.umd.js +98 -37
  277. package/dist/style-jmapp.css +1 -1
  278. package/dist/style-jmapp.scss +30 -30
  279. package/dist/style-jrkf.css +1 -1
  280. package/dist/style-jrkf.scss +38 -38
  281. package/dist/style.css +1 -1
  282. package/dist/style.scss +25 -25
  283. package/dist/styles/theme-dark.scss +5 -2
  284. package/dist/styles/theme-default.scss +4 -1
  285. package/dist/styles/themes/dark.css +1 -1
  286. package/dist/styles/themes/default.css +1 -1
  287. package/dist/styles/variables-daojia.scss +53 -12
  288. package/dist/styles/variables-jmapp.scss +70 -17
  289. package/dist/styles/variables-jrkf.scss +52 -20
  290. package/dist/styles/variables.scss +73 -46
  291. package/package.json +1 -1
@@ -14,6 +14,37 @@
14
14
  }
15
15
  }
16
16
 
17
+ &-horizontal {
18
+ flex-direction: row;
19
+ align-items: center;
20
+ }
21
+
22
+ &-vertical {
23
+ flex-direction: column;
24
+ align-items: center;
25
+ }
26
+
27
+ &-list {
28
+ display: flex;
29
+ align-items: center;
30
+ }
31
+
32
+ &-label {
33
+ color: $rate-label-color;
34
+ white-space: nowrap;
35
+ }
36
+
37
+ &-labels {
38
+ display: flex;
39
+ width: 100%;
40
+
41
+ &-item {
42
+ flex: 1;
43
+ text-align: center;
44
+ color: $rate-label-color;
45
+ }
46
+ }
47
+
17
48
  &-item {
18
49
  display: flex;
19
50
  align-items: center;
@@ -33,38 +64,6 @@
33
64
  }
34
65
  }
35
66
 
36
- &-normal {
37
- margin-left: $rate-item-margin;
38
- .nut-icon {
39
- height: $rate-icon-size;
40
- width: $rate-icon-size;
41
- }
42
- }
43
-
44
- &-large {
45
- margin-left: calc($rate-item-margin * 2);
46
- .nut-icon {
47
- height: calc($rate-icon-size + scale-px(8px));
48
- width: calc($rate-icon-size + scale-px(8px));
49
- }
50
- }
51
-
52
- &-small {
53
- margin-left: calc($rate-item-margin / 2);
54
- .nut-icon {
55
- height: calc($rate-icon-size - scale-px(4px));
56
- width: calc($rate-icon-size - scale-px(4px));
57
- }
58
- }
59
-
60
- &-normal,
61
- &-large,
62
- &-small {
63
- &:first-child {
64
- margin-left: 0;
65
- }
66
- }
67
-
68
67
  &-icon {
69
68
  display: flex;
70
69
  align-items: center;
@@ -93,6 +92,10 @@
93
92
  left: auto;
94
93
  transform: none;
95
94
  }
95
+
96
+ &-animate {
97
+ animation: nut-rate-bounce 0.3s ease-in-out;
98
+ }
96
99
  }
97
100
  }
98
101
 
@@ -107,85 +110,250 @@
107
110
  color: $rate-font-color;
108
111
  font-family: 'JDZH-Regular';
109
112
 
110
- &-normal {
111
- padding-left: $rate-item-margin;
112
- font-size: $rate-font-size;
113
+ &-disabled {
114
+ color: $rate-icon-inactive-color;
115
+ }
116
+ }
117
+
118
+ // horizontal layout
119
+ &-horizontal {
120
+ .nut-rate-item {
121
+ margin-left: $rate-item-margin;
122
+ &:first-child {
123
+ margin-left: 0;
124
+ }
125
+ }
126
+
127
+ // 12DP - star gap 2px
128
+ .nut-rate-item-small {
129
+ margin-left: scale-px(2px);
130
+ &:first-child {
131
+ margin-left: 0;
132
+ }
133
+ .nut-icon {
134
+ height: scale-font-px(12px);
135
+ width: scale-font-px(12px);
136
+ }
137
+ }
138
+
139
+ .nut-rate-item-normal {
140
+ .nut-icon {
141
+ height: scale-font-px(16px);
142
+ width: scale-font-px(16px);
143
+ }
144
+ }
145
+
146
+ .nut-rate-item-large {
147
+ .nut-icon {
148
+ height: scale-font-px(20px);
149
+ width: scale-font-px(20px);
150
+ }
151
+ }
152
+
153
+ .nut-rate-label-small {
154
+ font-size: $font-size-s;
155
+ margin-right: scale-px(4px);
156
+ }
157
+
158
+ .nut-rate-label-normal {
159
+ font-size: $font-size-s;
160
+ margin-right: scale-px(12px);
161
+ }
162
+
163
+ .nut-rate-label-large {
164
+ font-size: $font-size-base;
165
+ margin-right: scale-px(12px);
166
+ }
167
+
168
+ .nut-rate-score-small {
169
+ padding-left: scale-px(4px);
170
+ font-size: $font-size-s;
113
171
  line-height: $line-height-s;
114
172
  }
115
173
 
116
- &-large {
117
- font-size: $rate-font-size-large;
118
- line-height: $line-height-xl;
119
- padding-left: calc($rate-item-margin * 2);
174
+ .nut-rate-score-normal {
175
+ padding-left: scale-px(12px);
176
+ font-size: $font-size-s;
177
+ line-height: $line-height-s;
120
178
  }
121
179
 
122
- &-small {
123
- font-size: $rate-font-size-small;
124
- line-height: $line-height-xxs;
125
- padding-left: calc($rate-item-margin / 2);
180
+ .nut-rate-score-large {
181
+ padding-left: scale-px(12px);
182
+ font-size: $font-size-base;
183
+ line-height: $line-height-base;
126
184
  }
185
+ }
127
186
 
128
- &-disabled {
129
- color: $rate-icon-inactive-color;
187
+ // vertical layout
188
+ &-vertical {
189
+ .nut-rate-list {
190
+ justify-content: center;
191
+ width: 100%;
192
+ }
193
+
194
+ .nut-rate-item {
195
+ margin-left: $rate-item-margin;
196
+ &:first-child {
197
+ margin-left: 0;
198
+ }
199
+ }
200
+
201
+ .nut-rate-item-small,
202
+ .nut-rate-item-normal {
203
+ .nut-icon {
204
+ height: scale-font-px(20px);
205
+ width: scale-font-px(20px);
206
+ }
207
+ }
208
+
209
+ .nut-rate-item-large {
210
+ flex: 1;
211
+ justify-content: center;
212
+
213
+ .nut-icon {
214
+ height: scale-font-px(28px);
215
+ width: scale-font-px(28px);
216
+ }
217
+ }
218
+
219
+ .nut-rate-label-small,
220
+ .nut-rate-label-normal {
221
+ font-size: $font-size-xs;
222
+ margin-top: scale-px(6px);
223
+ }
224
+
225
+ .nut-rate-label-large {
226
+ font-size: $font-size-s;
227
+ margin-top: scale-px(8px);
228
+ }
229
+
230
+ .nut-rate-labels {
231
+ width: 100%;
232
+ }
233
+
234
+ .nut-rate-labels-small,
235
+ .nut-rate-labels-normal {
236
+ margin-top: scale-px(6px);
237
+
238
+ .nut-rate-labels-item {
239
+ font-size: $font-size-xs;
240
+ }
241
+ }
242
+
243
+ .nut-rate-labels-large {
244
+ margin-top: scale-px(8px);
245
+
246
+ .nut-rate-labels-item {
247
+ font-size: $font-size-s;
248
+ }
249
+ }
250
+
251
+ .nut-rate-score-small,
252
+ .nut-rate-score-normal {
253
+ font-size: $font-size-xs;
254
+ line-height: $line-height-xs;
255
+ margin-top: scale-px(6px);
256
+ }
257
+
258
+ .nut-rate-score-large {
259
+ font-size: $font-size-s;
260
+ line-height: $line-height-s;
261
+ margin-top: scale-px(8px);
130
262
  }
131
263
  }
132
264
  }
133
265
 
266
+ @keyframes nut-rate-bounce {
267
+ 0% {
268
+ transform: scale(1);
269
+ }
270
+ 50% {
271
+ transform: scale(1.25);
272
+ }
273
+ 100% {
274
+ transform: scale(1);
275
+ }
276
+ }
277
+
134
278
  [dir='rtl'] .nut-rate,
135
279
  .nut-rtl .nut-rate {
136
- &-item {
137
- margin-left: 0;
138
- &:first-child {
280
+ &-horizontal {
281
+ .nut-rate-item {
282
+ margin-left: 0;
283
+ margin-right: $rate-item-margin;
284
+
285
+ &:first-child {
286
+ margin-right: 0;
287
+ }
288
+ }
289
+
290
+ .nut-rate-item-small {
291
+ margin-left: 0;
292
+ margin-right: scale-px(2px);
293
+
294
+ &:first-child {
295
+ margin-right: 0;
296
+ }
297
+ }
298
+
299
+ .nut-rate-label {
139
300
  margin-right: 0;
140
301
  }
141
302
 
142
- &-normal {
143
- margin-right: $rate-item-margin;
303
+ .nut-rate-label-small {
304
+ margin-left: scale-px(4px);
144
305
  }
145
306
 
146
- &-large {
147
- margin-right: calc($rate-item-margin * 2);
307
+ .nut-rate-label-normal {
308
+ margin-left: scale-px(12px);
148
309
  }
149
310
 
150
- &-small {
151
- margin-right: calc($rate-item-margin - scale-px(2px));
311
+ .nut-rate-label-large {
312
+ margin-left: scale-px(12px);
152
313
  }
153
314
 
154
- &:last-child {
155
- margin-left: 0;
315
+ .nut-rate-score {
316
+ padding-left: 0;
156
317
  }
157
318
 
158
- &-half {
159
- left: auto;
160
- right: 0;
319
+ .nut-rate-score-small {
320
+ padding-right: scale-px(4px);
161
321
  }
162
322
 
163
- &-icon {
164
- &.nut-rate-item-icon.nut-rate-item-icon-half {
165
- left: auto;
166
- right: 0;
167
- }
323
+ .nut-rate-score-normal {
324
+ padding-right: scale-px(12px);
325
+ }
168
326
 
169
- &.nut-rate-item-icon::before {
170
- left: auto;
171
- right: auto;
172
- }
327
+ .nut-rate-score-large {
328
+ padding-right: scale-px(12px);
173
329
  }
174
330
  }
175
331
 
176
- &-score {
177
- padding-left: 0;
332
+ &-vertical {
333
+ .nut-rate-item {
334
+ margin-left: 0;
335
+ margin-right: $rate-item-margin;
178
336
 
179
- &-large {
180
- padding-right: calc($rate-item-margin * 2);
337
+ &:first-child {
338
+ margin-right: 0;
339
+ }
181
340
  }
341
+ }
182
342
 
183
- &-normal {
184
- padding-right: $rate-item-margin;
343
+ &-item-half {
344
+ left: auto;
345
+ right: 0;
346
+ }
347
+
348
+ &-item-icon {
349
+ &.nut-rate-item-icon.nut-rate-item-icon-half {
350
+ left: auto;
351
+ right: 0;
185
352
  }
186
353
 
187
- &-small {
188
- padding-right: calc($rate-item-margin - scale-px(2px));
354
+ &.nut-rate-item-icon::before {
355
+ left: auto;
356
+ right: auto;
189
357
  }
190
358
  }
191
359
  }
@@ -12,6 +12,31 @@
12
12
  .nut-rate.readonly .nut-rate-item-icon {
13
13
  cursor: default;
14
14
  }
15
+ .nut-rate-horizontal {
16
+ flex-direction: row;
17
+ align-items: center;
18
+ }
19
+ .nut-rate-vertical {
20
+ flex-direction: column;
21
+ align-items: center;
22
+ }
23
+ .nut-rate-list {
24
+ display: flex;
25
+ align-items: center;
26
+ }
27
+ .nut-rate-label {
28
+ color: var(--nutui-rate-label-color, var(--nutui-color-text-disabled));
29
+ white-space: nowrap;
30
+ }
31
+ .nut-rate-labels {
32
+ display: flex;
33
+ width: 100%;
34
+ }
35
+ .nut-rate-labels-item {
36
+ flex: 1;
37
+ text-align: center;
38
+ color: var(--nutui-rate-label-color, var(--nutui-color-text-disabled));
39
+ }
15
40
  .nut-rate-item {
16
41
  display: flex;
17
42
  align-items: center;
@@ -29,30 +54,6 @@
29
54
  .nut-rate-item-half .nut-icon {
30
55
  flex-shrink: 0;
31
56
  }
32
- .nut-rate-item-normal {
33
- margin-left: var(--nutui-rate-item-margin, 14px);
34
- }
35
- .nut-rate-item-normal .nut-icon {
36
- height: var(--nutui-rate-icon-size, 12px);
37
- width: var(--nutui-rate-icon-size, 12px);
38
- }
39
- .nut-rate-item-large {
40
- margin-left: calc(var(--nutui-rate-item-margin, 14px) * 2);
41
- }
42
- .nut-rate-item-large .nut-icon {
43
- height: calc(var(--nutui-rate-icon-size, 12px) + scale-px(8px));
44
- width: calc(var(--nutui-rate-icon-size, 12px) + scale-px(8px));
45
- }
46
- .nut-rate-item-small {
47
- margin-left: calc(var(--nutui-rate-item-margin, 14px) / 2);
48
- }
49
- .nut-rate-item-small .nut-icon {
50
- height: calc(var(--nutui-rate-icon-size, 12px) - scale-px(4px));
51
- width: calc(var(--nutui-rate-icon-size, 12px) - scale-px(4px));
52
- }
53
- .nut-rate-item-normal:first-child, .nut-rate-item-large:first-child, .nut-rate-item-small:first-child {
54
- margin-left: 0;
55
- }
56
57
  .nut-rate-item-icon {
57
58
  display: flex;
58
59
  align-items: center;
@@ -76,6 +77,9 @@
76
77
  left: auto;
77
78
  transform: none;
78
79
  }
80
+ .nut-rate-item-icon-animate {
81
+ animation: nut-rate-bounce 0.3s ease-in-out;
82
+ }
79
83
  .nut-rate-score {
80
84
  /* #ifdef dynamic*/
81
85
  display: flex;
@@ -87,48 +91,190 @@
87
91
  color: var(--nutui-rate-font-color, var(--nutui-color-primary-icon, #ff3333));
88
92
  font-family: "JDZH-Regular";
89
93
  }
90
- .nut-rate-score-normal {
91
- padding-left: var(--nutui-rate-item-margin, 14px);
92
- font-size: var(--nutui-rate-font-size, 12px);
94
+ .nut-rate-score-disabled {
95
+ color: var(--nutui-rate-icon-inactive-color, var(--nutui-color-text-disabled));
96
+ }
97
+ .nut-rate-horizontal .nut-rate-item {
98
+ margin-left: var(--nutui-rate-item-margin, 14px);
99
+ }
100
+ .nut-rate-horizontal .nut-rate-item:first-child {
101
+ margin-left: 0;
102
+ }
103
+ .nut-rate-horizontal .nut-rate-item-small {
104
+ margin-left: scale-px(2px);
105
+ }
106
+ .nut-rate-horizontal .nut-rate-item-small:first-child {
107
+ margin-left: 0;
108
+ }
109
+ .nut-rate-horizontal .nut-rate-item-small .nut-icon {
110
+ height: scale-font-px(12px);
111
+ width: scale-font-px(12px);
112
+ }
113
+ .nut-rate-horizontal .nut-rate-item-normal .nut-icon {
114
+ height: scale-font-px(16px);
115
+ width: scale-font-px(16px);
116
+ }
117
+ .nut-rate-horizontal .nut-rate-item-large .nut-icon {
118
+ height: scale-font-px(20px);
119
+ width: scale-font-px(20px);
120
+ }
121
+ .nut-rate-horizontal .nut-rate-label-small {
122
+ font-size: var(--nutui-font-text-small);
123
+ margin-right: scale-px(4px);
124
+ }
125
+ .nut-rate-horizontal .nut-rate-label-normal {
126
+ font-size: var(--nutui-font-text-small);
127
+ margin-right: scale-px(12px);
128
+ }
129
+ .nut-rate-horizontal .nut-rate-label-large {
130
+ font-size: var(--nutui-font-text);
131
+ margin-right: scale-px(12px);
132
+ }
133
+ .nut-rate-horizontal .nut-rate-score-small {
134
+ padding-left: scale-px(4px);
135
+ font-size: var(--nutui-font-text-small);
93
136
  line-height: var(--nutui-line-height-s, var(--nutui-font-text-small));
94
137
  }
95
- .nut-rate-score-large {
96
- font-size: var(--nutui-rate-font-size-large, calc(var(--nutui-rate-font-size, 12px) + 6px));
97
- line-height: var(--nutui-line-height-xl, var(--nutui-font-h2));
98
- padding-left: calc(var(--nutui-rate-item-margin, 14px) * 2);
138
+ .nut-rate-horizontal .nut-rate-score-normal {
139
+ padding-left: scale-px(12px);
140
+ font-size: var(--nutui-font-text-small);
141
+ line-height: var(--nutui-line-height-s, var(--nutui-font-text-small));
99
142
  }
100
- .nut-rate-score-small {
101
- font-size: var(--nutui-rate-font-size-small, calc(var(--nutui-rate-font-size, 12px) - 2px));
102
- line-height: var(--nutui-line-height-xxs, var(--nutui-font-text-mini));
103
- padding-left: calc(var(--nutui-rate-item-margin, 14px) / 2);
143
+ .nut-rate-horizontal .nut-rate-score-large {
144
+ padding-left: scale-px(12px);
145
+ font-size: var(--nutui-font-text);
146
+ line-height: var(--nutui-line-height-base, var(--nutui-line-height, var(--nutui-font-text)));
104
147
  }
105
- .nut-rate-score-disabled {
106
- color: var(--nutui-rate-icon-inactive-color, var(--nutui-color-text-disabled));
148
+ .nut-rate-vertical .nut-rate-list {
149
+ justify-content: center;
150
+ width: 100%;
151
+ }
152
+ .nut-rate-vertical .nut-rate-item {
153
+ margin-left: var(--nutui-rate-item-margin, 14px);
154
+ }
155
+ .nut-rate-vertical .nut-rate-item:first-child {
156
+ margin-left: 0;
157
+ }
158
+ .nut-rate-vertical .nut-rate-item-small .nut-icon,
159
+ .nut-rate-vertical .nut-rate-item-normal .nut-icon {
160
+ height: scale-font-px(20px);
161
+ width: scale-font-px(20px);
162
+ }
163
+ .nut-rate-vertical .nut-rate-item-large {
164
+ flex: 1;
165
+ justify-content: center;
166
+ }
167
+ .nut-rate-vertical .nut-rate-item-large .nut-icon {
168
+ height: scale-font-px(28px);
169
+ width: scale-font-px(28px);
170
+ }
171
+ .nut-rate-vertical .nut-rate-label-small,
172
+ .nut-rate-vertical .nut-rate-label-normal {
173
+ font-size: var(--nutui-font-text-xs);
174
+ margin-top: scale-px(6px);
175
+ }
176
+ .nut-rate-vertical .nut-rate-label-large {
177
+ font-size: var(--nutui-font-text-small);
178
+ margin-top: scale-px(8px);
179
+ }
180
+ .nut-rate-vertical .nut-rate-labels {
181
+ width: 100%;
182
+ }
183
+ .nut-rate-vertical .nut-rate-labels-small,
184
+ .nut-rate-vertical .nut-rate-labels-normal {
185
+ margin-top: scale-px(6px);
186
+ }
187
+ .nut-rate-vertical .nut-rate-labels-small .nut-rate-labels-item,
188
+ .nut-rate-vertical .nut-rate-labels-normal .nut-rate-labels-item {
189
+ font-size: var(--nutui-font-text-xs);
190
+ }
191
+ .nut-rate-vertical .nut-rate-labels-large {
192
+ margin-top: scale-px(8px);
193
+ }
194
+ .nut-rate-vertical .nut-rate-labels-large .nut-rate-labels-item {
195
+ font-size: var(--nutui-font-text-small);
196
+ }
197
+ .nut-rate-vertical .nut-rate-score-small,
198
+ .nut-rate-vertical .nut-rate-score-normal {
199
+ font-size: var(--nutui-font-text-xs);
200
+ line-height: var(--nutui-line-height-xs, var(--nutui-font-text-xs));
201
+ margin-top: scale-px(6px);
202
+ }
203
+ .nut-rate-vertical .nut-rate-score-large {
204
+ font-size: var(--nutui-font-text-small);
205
+ line-height: var(--nutui-line-height-s, var(--nutui-font-text-small));
206
+ margin-top: scale-px(8px);
107
207
  }
108
208
 
109
- [dir=rtl] .nut-rate-item,
110
- .nut-rtl .nut-rate-item {
209
+ @keyframes nut-rate-bounce {
210
+ 0% {
211
+ transform: scale(1);
212
+ }
213
+ 50% {
214
+ transform: scale(1.25);
215
+ }
216
+ 100% {
217
+ transform: scale(1);
218
+ }
219
+ }
220
+ [dir=rtl] .nut-rate-horizontal .nut-rate-item,
221
+ .nut-rtl .nut-rate-horizontal .nut-rate-item {
111
222
  margin-left: 0;
223
+ margin-right: var(--nutui-rate-item-margin, 14px);
112
224
  }
113
- [dir=rtl] .nut-rate-item:first-child,
114
- .nut-rtl .nut-rate-item:first-child {
225
+ [dir=rtl] .nut-rate-horizontal .nut-rate-item:first-child,
226
+ .nut-rtl .nut-rate-horizontal .nut-rate-item:first-child {
115
227
  margin-right: 0;
116
228
  }
117
- [dir=rtl] .nut-rate-item-normal,
118
- .nut-rtl .nut-rate-item-normal {
119
- margin-right: var(--nutui-rate-item-margin, 14px);
229
+ [dir=rtl] .nut-rate-horizontal .nut-rate-item-small,
230
+ .nut-rtl .nut-rate-horizontal .nut-rate-item-small {
231
+ margin-left: 0;
232
+ margin-right: scale-px(2px);
233
+ }
234
+ [dir=rtl] .nut-rate-horizontal .nut-rate-item-small:first-child,
235
+ .nut-rtl .nut-rate-horizontal .nut-rate-item-small:first-child {
236
+ margin-right: 0;
237
+ }
238
+ [dir=rtl] .nut-rate-horizontal .nut-rate-label,
239
+ .nut-rtl .nut-rate-horizontal .nut-rate-label {
240
+ margin-right: 0;
241
+ }
242
+ [dir=rtl] .nut-rate-horizontal .nut-rate-label-small,
243
+ .nut-rtl .nut-rate-horizontal .nut-rate-label-small {
244
+ margin-left: scale-px(4px);
245
+ }
246
+ [dir=rtl] .nut-rate-horizontal .nut-rate-label-normal,
247
+ .nut-rtl .nut-rate-horizontal .nut-rate-label-normal {
248
+ margin-left: scale-px(12px);
249
+ }
250
+ [dir=rtl] .nut-rate-horizontal .nut-rate-label-large,
251
+ .nut-rtl .nut-rate-horizontal .nut-rate-label-large {
252
+ margin-left: scale-px(12px);
253
+ }
254
+ [dir=rtl] .nut-rate-horizontal .nut-rate-score,
255
+ .nut-rtl .nut-rate-horizontal .nut-rate-score {
256
+ padding-left: 0;
120
257
  }
121
- [dir=rtl] .nut-rate-item-large,
122
- .nut-rtl .nut-rate-item-large {
123
- margin-right: calc(var(--nutui-rate-item-margin, 14px) * 2);
258
+ [dir=rtl] .nut-rate-horizontal .nut-rate-score-small,
259
+ .nut-rtl .nut-rate-horizontal .nut-rate-score-small {
260
+ padding-right: scale-px(4px);
124
261
  }
125
- [dir=rtl] .nut-rate-item-small,
126
- .nut-rtl .nut-rate-item-small {
127
- margin-right: calc(var(--nutui-rate-item-margin, 14px) - scale-px(2px));
262
+ [dir=rtl] .nut-rate-horizontal .nut-rate-score-normal,
263
+ .nut-rtl .nut-rate-horizontal .nut-rate-score-normal {
264
+ padding-right: scale-px(12px);
128
265
  }
129
- [dir=rtl] .nut-rate-item:last-child,
130
- .nut-rtl .nut-rate-item:last-child {
266
+ [dir=rtl] .nut-rate-horizontal .nut-rate-score-large,
267
+ .nut-rtl .nut-rate-horizontal .nut-rate-score-large {
268
+ padding-right: scale-px(12px);
269
+ }
270
+ [dir=rtl] .nut-rate-vertical .nut-rate-item,
271
+ .nut-rtl .nut-rate-vertical .nut-rate-item {
131
272
  margin-left: 0;
273
+ margin-right: var(--nutui-rate-item-margin, 14px);
274
+ }
275
+ [dir=rtl] .nut-rate-vertical .nut-rate-item:first-child,
276
+ .nut-rtl .nut-rate-vertical .nut-rate-item:first-child {
277
+ margin-right: 0;
132
278
  }
133
279
  [dir=rtl] .nut-rate-item-half,
134
280
  .nut-rtl .nut-rate-item-half {
@@ -144,20 +290,4 @@
144
290
  .nut-rtl .nut-rate-item-icon.nut-rate-item-icon::before {
145
291
  left: auto;
146
292
  right: auto;
147
- }
148
- [dir=rtl] .nut-rate-score,
149
- .nut-rtl .nut-rate-score {
150
- padding-left: 0;
151
- }
152
- [dir=rtl] .nut-rate-score-large,
153
- .nut-rtl .nut-rate-score-large {
154
- padding-right: calc(var(--nutui-rate-item-margin, 14px) * 2);
155
- }
156
- [dir=rtl] .nut-rate-score-normal,
157
- .nut-rtl .nut-rate-score-normal {
158
- padding-right: var(--nutui-rate-item-margin, 14px);
159
- }
160
- [dir=rtl] .nut-rate-score-small,
161
- .nut-rtl .nut-rate-score-small {
162
- padding-right: calc(var(--nutui-rate-item-margin, 14px) - scale-px(2px));
163
293
  }