@nutui/nutui-react-taro 3.0.0-beta.0 → 3.0.0-beta.1

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 (482) hide show
  1. package/CHANGELOG.md +1022 -893
  2. package/README.md +23 -27
  3. package/dist/cjs/locales/base.d.ts +7 -0
  4. package/dist/cjs/locales/en-US.js +7 -0
  5. package/dist/cjs/locales/id-ID.js +7 -0
  6. package/dist/cjs/locales/tr-TR.js +7 -0
  7. package/dist/cjs/locales/zh-CN.js +7 -0
  8. package/dist/cjs/locales/zh-TW.js +7 -0
  9. package/dist/cjs/locales/zh-UG.js +7 -0
  10. package/dist/cjs/packages/actionsheet/actionsheet.js +9 -7
  11. package/dist/cjs/packages/actionsheet/style/actionsheet.scss +1 -1
  12. package/dist/cjs/packages/actionsheet/style/style.css +71 -24
  13. package/dist/cjs/packages/address/address.js +0 -1
  14. package/dist/cjs/packages/address/existRender.js +1 -0
  15. package/dist/cjs/packages/address/style/address.scss +1 -1
  16. package/dist/cjs/packages/address/style/style.css +105 -57
  17. package/dist/cjs/packages/address/types.js +0 -1
  18. package/dist/cjs/packages/animatingnumbers/animatingnumbers.js +4 -3
  19. package/dist/cjs/packages/animatingnumbers/countup.js +18 -9
  20. package/dist/cjs/packages/animatingnumbers/style/style.css +3 -3
  21. package/dist/cjs/packages/audio/audio.js +19 -20
  22. package/dist/cjs/packages/audio/style/style.css +68 -66
  23. package/dist/cjs/packages/avatar/avatar.js +11 -13
  24. package/dist/cjs/packages/avatar/style/style.css +2 -2
  25. package/dist/cjs/packages/avatarcropper/avatarcropper.js +38 -39
  26. package/dist/cjs/packages/backtop/backtop.d.ts +5 -0
  27. package/dist/cjs/packages/backtop/backtop.js +55 -17
  28. package/dist/cjs/packages/backtop/style/backtop.scss +9 -3
  29. package/dist/cjs/packages/backtop/style/style.css +12 -8
  30. package/dist/cjs/packages/backtop/style/style.harmony.css +13 -6
  31. package/dist/cjs/packages/badge/style/style.css +1 -1
  32. package/dist/cjs/packages/barrage/barrage.js +64 -52
  33. package/dist/cjs/packages/barrage/style/barrage.scss +1 -1
  34. package/dist/cjs/packages/barrage/style/style.css +3 -3
  35. package/dist/cjs/packages/button/button.js +5 -3
  36. package/dist/cjs/packages/button/style/style.css +58 -58
  37. package/dist/cjs/packages/calendar/calendar.d.ts +2 -0
  38. package/dist/cjs/packages/calendar/calendar.js +4 -2
  39. package/dist/cjs/packages/calendar/style/calendar.scss +1 -1
  40. package/dist/cjs/packages/calendar/style/style.css +75 -28
  41. package/dist/cjs/packages/calendarcard/style/style.css +4 -4
  42. package/dist/cjs/packages/calendaritem/calendaritem.d.ts +1 -0
  43. package/dist/cjs/packages/calendaritem/calendaritem.js +36 -25
  44. package/dist/cjs/packages/card/style/style.css +16 -14
  45. package/dist/cjs/packages/cascader/cascader.js +26 -13
  46. package/dist/cjs/packages/cascader/style/style.css +88 -40
  47. package/dist/cjs/packages/cell/cell.d.ts +2 -1
  48. package/dist/cjs/packages/cell/cell.js +7 -3
  49. package/dist/cjs/packages/cell/style/cell.scss +20 -0
  50. package/dist/cjs/packages/cell/style/style.css +33 -13
  51. package/dist/cjs/packages/cell/style/style.harmony.css +20 -0
  52. package/dist/cjs/packages/cellgroup/style/style.css +5 -5
  53. package/dist/cjs/packages/checkbox/style/checkbox.scss +3 -3
  54. package/dist/cjs/packages/checkbox/style/style.css +21 -21
  55. package/dist/cjs/packages/checkboxgroup/checkboxgroup.js +7 -8
  56. package/dist/cjs/packages/checkboxgroup/style/checkboxgroup.scss +2 -2
  57. package/dist/cjs/packages/checkboxgroup/style/style.css +5 -5
  58. package/dist/cjs/packages/circleprogress/style/style.css +3 -3
  59. package/dist/cjs/packages/collapse/style/style.css +10 -10
  60. package/dist/cjs/packages/collapseitem/collapseitem.js +0 -1
  61. package/dist/cjs/packages/collapseitem/style/style.css +10 -10
  62. package/dist/cjs/packages/configprovider/configprovider.js +0 -1
  63. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  64. package/dist/cjs/packages/countdown/countdown.js +0 -1
  65. package/dist/cjs/packages/countdown/style/style.css +1 -1
  66. package/dist/cjs/packages/countup/style/style.css +3 -3
  67. package/dist/cjs/packages/datepicker/datepicker.js +4 -5
  68. package/dist/cjs/packages/datepicker/style/style.css +79 -32
  69. package/dist/cjs/packages/dialog/dialog.js +3 -3
  70. package/dist/cjs/packages/dialog/style/style.css +64 -67
  71. package/dist/cjs/packages/divider/style/divider.scss +1 -0
  72. package/dist/cjs/packages/divider/style/style.css +6 -5
  73. package/dist/cjs/packages/drag/drag.js +1 -1
  74. package/dist/cjs/packages/elevator/elevator.js +9 -10
  75. package/dist/cjs/packages/elevator/style/elevator.scss +1 -2
  76. package/dist/cjs/packages/elevator/style/style.css +12 -12
  77. package/dist/cjs/packages/ellipsis/ellipsis.js +9 -10
  78. package/dist/cjs/packages/ellipsis/style/style.css +1 -1
  79. package/dist/cjs/packages/empty/empty.js +0 -2
  80. package/dist/cjs/packages/empty/style/empty.scss +2 -2
  81. package/dist/cjs/packages/empty/style/style.css +6 -6
  82. package/dist/cjs/packages/fixednav/fixednav.js +8 -7
  83. package/dist/cjs/packages/fixednav/style/fixednav.scss +1 -1
  84. package/dist/cjs/packages/fixednav/style/style.css +2 -5
  85. package/dist/cjs/packages/form/form.js +2 -0
  86. package/dist/cjs/packages/form/style/style.css +42 -22
  87. package/dist/cjs/packages/form/types.d.ts +1 -0
  88. package/dist/cjs/packages/form/useform.js +19 -16
  89. package/dist/cjs/packages/formitem/formitem.d.ts +1 -0
  90. package/dist/cjs/packages/formitem/formitem.js +15 -21
  91. package/dist/cjs/packages/formitem/style/style.css +4 -4
  92. package/dist/cjs/packages/grid/style/style.css +7 -7
  93. package/dist/cjs/packages/griditem/griditem.js +0 -2
  94. package/dist/cjs/packages/griditem/style/style.css +6 -6
  95. package/dist/cjs/packages/hoverbutton/style/hoverbutton.scss +4 -4
  96. package/dist/cjs/packages/image/image.js +0 -1
  97. package/dist/cjs/packages/image/style/style.css +2 -2
  98. package/dist/cjs/packages/imagepreview/imagepreview.d.ts +17 -13
  99. package/dist/cjs/packages/imagepreview/imagepreview.js +53 -31
  100. package/dist/cjs/packages/imagepreview/style/style.css +66 -19
  101. package/dist/cjs/packages/indicator/style/style.css +1 -1
  102. package/dist/cjs/packages/infiniteloading/infiniteloading.d.ts +2 -1
  103. package/dist/cjs/packages/infiniteloading/infiniteloading.js +42 -15
  104. package/dist/cjs/packages/infiniteloading/style/infiniteloading.scss +2 -2
  105. package/dist/cjs/packages/infiniteloading/style/style.css +4 -4
  106. package/dist/cjs/packages/input/input.js +5 -7
  107. package/dist/cjs/packages/input/style/style.css +5 -5
  108. package/dist/cjs/packages/inputnumber/inputnumber.d.ts +2 -1
  109. package/dist/cjs/packages/inputnumber/inputnumber.js +35 -13
  110. package/dist/cjs/packages/inputnumber/style/style.css +3 -3
  111. package/dist/cjs/packages/layout/layout.js +1 -4
  112. package/dist/cjs/packages/loading/loading.js +4 -3
  113. package/dist/cjs/packages/loading/style/style.css +6 -6
  114. package/dist/cjs/packages/menu/menu.js +37 -24
  115. package/dist/cjs/packages/menu/style/style.css +8 -11
  116. package/dist/cjs/packages/menuitem/menuitem.d.ts +1 -0
  117. package/dist/cjs/packages/menuitem/menuitem.js +39 -29
  118. package/dist/cjs/packages/menuitem/style/style.css +5 -8
  119. package/dist/cjs/packages/navbar/navbar.js +7 -4
  120. package/dist/cjs/packages/navbar/style/navbar.scss +0 -5
  121. package/dist/cjs/packages/navbar/style/style.css +7 -11
  122. package/dist/cjs/packages/noticebar/style/style.css +2 -2
  123. package/dist/cjs/packages/notify/notify.js +4 -2
  124. package/dist/cjs/packages/notify/style/style.css +4 -4
  125. package/dist/cjs/packages/numberkeyboard/numberkeyboard.js +43 -23
  126. package/dist/cjs/packages/numberkeyboard/style/style.css +73 -26
  127. package/dist/cjs/packages/overlay/style/overlay.scss +0 -4
  128. package/dist/cjs/packages/overlay/style/style.css +1 -4
  129. package/dist/cjs/packages/pagination/pagination.js +2 -3
  130. package/dist/cjs/packages/pagination/style/pagination.scss +2 -2
  131. package/dist/cjs/packages/pagination/style/style.css +7 -7
  132. package/dist/cjs/packages/picker/picker.js +5 -5
  133. package/dist/cjs/packages/picker/pickerpanel.js +8 -7
  134. package/dist/cjs/packages/picker/style/style.css +79 -32
  135. package/dist/cjs/packages/popover/popover.js +14 -13
  136. package/dist/cjs/packages/popover/style/popover.scss +3 -3
  137. package/dist/cjs/packages/popover/style/style.css +66 -19
  138. package/dist/cjs/packages/popup/popup.js +3 -2
  139. package/dist/cjs/packages/popup/style/popup.scss +52 -3
  140. package/dist/cjs/packages/popup/style/style.css +63 -16
  141. package/dist/cjs/packages/popup/style/style.harmony.css +133 -9
  142. package/dist/cjs/packages/price/style/price.scss +1 -1
  143. package/dist/cjs/packages/price/style/style.css +3 -3
  144. package/dist/cjs/packages/progress/progress.js +65 -25
  145. package/dist/cjs/packages/progress/style/progress.scss +4 -2
  146. package/dist/cjs/packages/progress/style/style.css +5 -4
  147. package/dist/cjs/packages/progress/style/style.harmony.css +5 -4
  148. package/dist/cjs/packages/pulltorefresh/pulltorefresh.js +25 -9
  149. package/dist/cjs/packages/pulltorefresh/style/pulltorefresh.scss +7 -2
  150. package/dist/cjs/packages/pulltorefresh/style/style.css +6 -3
  151. package/dist/cjs/packages/pulltorefresh/style/style.harmony.css +13 -1
  152. package/dist/cjs/packages/radio/radio.js +16 -14
  153. package/dist/cjs/packages/radio/style/radio.scss +2 -2
  154. package/dist/cjs/packages/radio/style/style.css +9 -9
  155. package/dist/cjs/packages/radiogroup/radiogroup.js +5 -3
  156. package/dist/cjs/packages/radiogroup/style/radiogroup.scss +2 -2
  157. package/dist/cjs/packages/radiogroup/style/style.css +2 -2
  158. package/dist/cjs/packages/range/range.js +51 -42
  159. package/dist/cjs/packages/range/style/range.scss +4 -2
  160. package/dist/cjs/packages/range/style/style.css +9 -7
  161. package/dist/cjs/packages/resultpage/style/style.css +5 -5
  162. package/dist/cjs/packages/searchbar/searchbar.d.ts +0 -14
  163. package/dist/cjs/packages/searchbar/style/style.css +7 -7
  164. package/dist/cjs/packages/shortpassword/shortpassword.js +15 -14
  165. package/dist/cjs/packages/shortpassword/style/shortpassword.scss +3 -3
  166. package/dist/cjs/packages/shortpassword/style/style.css +74 -27
  167. package/dist/cjs/packages/sidenavbar/sidenavbar.js +5 -4
  168. package/dist/cjs/packages/sidenavbar/style/style.css +67 -20
  169. package/dist/cjs/packages/sidenavbaritem/style/style.css +2 -2
  170. package/dist/cjs/packages/signature/signature.js +4 -3
  171. package/dist/cjs/packages/signature/style/style.css +3 -3
  172. package/dist/cjs/packages/skeleton/style/style.css +5 -5
  173. package/dist/cjs/packages/skeleton/style/style.harmony.css +90 -68
  174. package/dist/cjs/packages/step/style/style.css +16 -16
  175. package/dist/cjs/packages/steps/style/style.css +16 -16
  176. package/dist/cjs/packages/sticky/sticky.js +27 -31
  177. package/dist/cjs/packages/subsidenavbar/style/style.css +2 -2
  178. package/dist/cjs/packages/subsidenavbar/subsidenavbar.js +3 -2
  179. package/dist/cjs/packages/swipe/swipe.js +3 -3
  180. package/dist/cjs/packages/swiper/style/style.css +1 -1
  181. package/dist/cjs/packages/swiper/swiper.d.ts +2 -1
  182. package/dist/cjs/packages/swiper/swiper.js +0 -1
  183. package/dist/cjs/packages/swiperitem/swiperitem.js +0 -1
  184. package/dist/cjs/packages/switch/style/style.css +4 -4
  185. package/dist/cjs/packages/switch/style/switch.scss +1 -1
  186. package/dist/cjs/packages/tabbar/style/style.css +5 -5
  187. package/dist/cjs/packages/tabbar/tabbar.js +4 -3
  188. package/dist/cjs/packages/tabbaritem/style/style.css +4 -4
  189. package/dist/cjs/packages/tabbaritem/tabbaritem.js +5 -4
  190. package/dist/cjs/packages/table/style/style.css +12 -12
  191. package/dist/cjs/packages/table/table.js +21 -17
  192. package/dist/cjs/packages/tabpane/style/style.css +1 -1
  193. package/dist/cjs/packages/tabpane/tabpane.js +2 -1
  194. package/dist/cjs/packages/tabs/style/style.css +19 -18
  195. package/dist/cjs/packages/tabs/style/tabs.scss +6 -5
  196. package/dist/cjs/packages/tabs/tabs.js +2 -0
  197. package/dist/cjs/packages/tag/style/style.css +10 -8
  198. package/dist/cjs/packages/tag/style/style.harmony.css +4 -2
  199. package/dist/cjs/packages/tag/style/tag.scss +2 -0
  200. package/dist/cjs/packages/textarea/style/style.css +16 -16
  201. package/dist/cjs/packages/textarea/style/style.harmony.css +9 -9
  202. package/dist/cjs/packages/textarea/style/textarea.scss +10 -11
  203. package/dist/cjs/packages/textarea/textarea.js +1 -1
  204. package/dist/cjs/packages/timedetail/style/style.css +4 -4
  205. package/dist/cjs/packages/timedetail/style/timedetail.scss +1 -1
  206. package/dist/cjs/packages/timedetail/timedetail.js +3 -2
  207. package/dist/cjs/packages/timeselect/style/style.css +74 -27
  208. package/dist/cjs/packages/timeselect/timeselect.js +5 -5
  209. package/dist/cjs/packages/toast/style/style.css +3 -3
  210. package/dist/cjs/packages/toast/style/toast.scss +2 -2
  211. package/dist/cjs/packages/toast/toast.js +2 -2
  212. package/dist/cjs/packages/tour/style/style.css +68 -21
  213. package/dist/cjs/packages/trendarrow/style/style.css +1 -1
  214. package/dist/cjs/packages/uploader/preview.js +13 -14
  215. package/dist/cjs/packages/uploader/style/style.css +17 -14
  216. package/dist/cjs/packages/uploader/style/uploader.scss +4 -3
  217. package/dist/cjs/packages/uploader/uploader.d.ts +2 -3
  218. package/dist/cjs/packages/uploader/uploader.js +45 -20
  219. package/dist/cjs/packages/uploader/utils.js +8 -5
  220. package/dist/cjs/packages/virtuallist/style/style.css +4 -4
  221. package/dist/cjs/packages/watermark/watermark.d.ts +2 -0
  222. package/dist/cjs/packages/watermark/watermark.js +4 -2
  223. package/dist/cjs/utils/get-rect-by-taro.js +1 -1
  224. package/dist/cjs/utils/get-scroll-parent.d.ts +1 -1
  225. package/dist/cjs/utils/merge-props.d.ts +9 -5
  226. package/dist/cjs/utils/merge-props.js +37 -6
  227. package/dist/cjs/utils/raf.js +3 -2
  228. package/dist/cjs/utils/typings.d.ts +1 -0
  229. package/dist/cjs/utils/use-client-rect.d.ts +1 -1
  230. package/dist/es/locales/base.d.ts +7 -0
  231. package/dist/es/locales/en-US.js +7 -0
  232. package/dist/es/locales/id-ID.js +7 -0
  233. package/dist/es/locales/tr-TR.js +7 -0
  234. package/dist/es/locales/zh-CN.js +7 -0
  235. package/dist/es/locales/zh-TW.js +7 -0
  236. package/dist/es/locales/zh-UG.js +7 -0
  237. package/dist/es/packages/actionsheet/actionsheet.js +9 -7
  238. package/dist/es/packages/actionsheet/style/actionsheet.scss +1 -1
  239. package/dist/es/packages/actionsheet/style/style.css +71 -24
  240. package/dist/es/packages/address/address.js +0 -1
  241. package/dist/es/packages/address/existRender.js +1 -0
  242. package/dist/es/packages/address/style/address.scss +1 -1
  243. package/dist/es/packages/address/style/style.css +105 -57
  244. package/dist/es/packages/address/types.js +0 -1
  245. package/dist/es/packages/animatingnumbers/animatingnumbers.js +4 -3
  246. package/dist/es/packages/animatingnumbers/countup.js +19 -10
  247. package/dist/es/packages/animatingnumbers/style/style.css +3 -3
  248. package/dist/es/packages/audio/audio.js +19 -20
  249. package/dist/es/packages/audio/style/style.css +68 -66
  250. package/dist/es/packages/avatar/avatar.js +12 -13
  251. package/dist/es/packages/avatar/style/style.css +2 -2
  252. package/dist/es/packages/avatarcropper/avatarcropper.js +39 -40
  253. package/dist/es/packages/backtop/backtop.d.ts +8 -19
  254. package/dist/es/packages/backtop/backtop.js +57 -19
  255. package/dist/es/packages/backtop/style/backtop.scss +9 -3
  256. package/dist/es/packages/backtop/style/style.css +12 -8
  257. package/dist/es/packages/backtop/style/style.harmony.css +13 -6
  258. package/dist/es/packages/badge/style/style.css +1 -1
  259. package/dist/es/packages/barrage/barrage.js +64 -52
  260. package/dist/es/packages/barrage/style/barrage.scss +1 -1
  261. package/dist/es/packages/barrage/style/style.css +3 -3
  262. package/dist/es/packages/button/button.js +5 -3
  263. package/dist/es/packages/button/style/style.css +58 -58
  264. package/dist/es/packages/calendar/calendar.d.ts +10 -0
  265. package/dist/es/packages/calendar/calendar.js +4 -2
  266. package/dist/es/packages/calendar/style/calendar.scss +1 -1
  267. package/dist/es/packages/calendar/style/style.css +75 -28
  268. package/dist/es/packages/calendarcard/style/style.css +4 -4
  269. package/dist/es/packages/calendaritem/calendaritem.d.ts +1 -0
  270. package/dist/es/packages/calendaritem/calendaritem.js +37 -26
  271. package/dist/es/packages/card/style/style.css +16 -14
  272. package/dist/es/packages/cascader/cascader.js +27 -14
  273. package/dist/es/packages/cascader/style/style.css +88 -40
  274. package/dist/es/packages/cell/cell.d.ts +2 -1
  275. package/dist/es/packages/cell/cell.js +7 -3
  276. package/dist/es/packages/cell/style/cell.scss +20 -0
  277. package/dist/es/packages/cell/style/style.css +33 -13
  278. package/dist/es/packages/cell/style/style.harmony.css +20 -0
  279. package/dist/es/packages/cellgroup/style/style.css +5 -5
  280. package/dist/es/packages/checkbox/style/checkbox.scss +3 -3
  281. package/dist/es/packages/checkbox/style/style.css +21 -21
  282. package/dist/es/packages/checkboxgroup/checkboxgroup.js +7 -8
  283. package/dist/es/packages/checkboxgroup/style/checkboxgroup.scss +2 -2
  284. package/dist/es/packages/checkboxgroup/style/style.css +5 -5
  285. package/dist/es/packages/circleprogress/style/style.css +3 -3
  286. package/dist/es/packages/collapse/style/style.css +10 -10
  287. package/dist/es/packages/collapseitem/collapseitem.js +0 -1
  288. package/dist/es/packages/collapseitem/style/style.css +10 -10
  289. package/dist/es/packages/configprovider/configprovider.js +0 -1
  290. package/dist/es/packages/configprovider/types.d.ts +1 -1
  291. package/dist/es/packages/countdown/countdown.js +0 -1
  292. package/dist/es/packages/countdown/style/style.css +1 -1
  293. package/dist/es/packages/countup/style/style.css +3 -3
  294. package/dist/es/packages/datepicker/datepicker.js +4 -5
  295. package/dist/es/packages/datepicker/style/style.css +79 -32
  296. package/dist/es/packages/dialog/dialog.js +3 -3
  297. package/dist/es/packages/dialog/style/style.css +64 -67
  298. package/dist/es/packages/divider/style/divider.scss +1 -0
  299. package/dist/es/packages/divider/style/style.css +6 -5
  300. package/dist/es/packages/drag/drag.js +1 -1
  301. package/dist/es/packages/elevator/elevator.js +10 -11
  302. package/dist/es/packages/elevator/style/elevator.scss +1 -2
  303. package/dist/es/packages/elevator/style/style.css +12 -12
  304. package/dist/es/packages/ellipsis/ellipsis.js +7 -10
  305. package/dist/es/packages/ellipsis/style/style.css +1 -1
  306. package/dist/es/packages/empty/empty.js +0 -2
  307. package/dist/es/packages/empty/style/empty.scss +2 -2
  308. package/dist/es/packages/empty/style/style.css +6 -6
  309. package/dist/es/packages/fixednav/fixednav.js +8 -7
  310. package/dist/es/packages/fixednav/style/fixednav.scss +1 -1
  311. package/dist/es/packages/fixednav/style/style.css +2 -5
  312. package/dist/es/packages/form/form.js +2 -0
  313. package/dist/es/packages/form/style/style.css +42 -22
  314. package/dist/es/packages/form/types.d.ts +1 -0
  315. package/dist/es/packages/form/useform.js +16 -16
  316. package/dist/es/packages/formitem/formitem.d.ts +5 -0
  317. package/dist/es/packages/formitem/formitem.js +16 -21
  318. package/dist/es/packages/formitem/style/style.css +4 -4
  319. package/dist/es/packages/grid/style/style.css +7 -7
  320. package/dist/es/packages/griditem/griditem.js +0 -2
  321. package/dist/es/packages/griditem/style/style.css +6 -6
  322. package/dist/es/packages/hoverbutton/style/hoverbutton.scss +4 -4
  323. package/dist/es/packages/image/image.js +0 -1
  324. package/dist/es/packages/image/style/style.css +2 -2
  325. package/dist/es/packages/imagepreview/imagepreview.d.ts +17 -13
  326. package/dist/es/packages/imagepreview/imagepreview.js +51 -29
  327. package/dist/es/packages/imagepreview/style/style.css +66 -19
  328. package/dist/es/packages/indicator/style/style.css +1 -1
  329. package/dist/es/packages/infiniteloading/infiniteloading.d.ts +13 -56
  330. package/dist/es/packages/infiniteloading/infiniteloading.js +44 -17
  331. package/dist/es/packages/infiniteloading/style/infiniteloading.scss +2 -2
  332. package/dist/es/packages/infiniteloading/style/style.css +4 -4
  333. package/dist/es/packages/input/input.js +5 -7
  334. package/dist/es/packages/input/style/style.css +5 -5
  335. package/dist/es/packages/inputnumber/inputnumber.d.ts +2 -1
  336. package/dist/es/packages/inputnumber/inputnumber.js +35 -13
  337. package/dist/es/packages/inputnumber/style/style.css +3 -3
  338. package/dist/es/packages/layout/layout.js +1 -4
  339. package/dist/es/packages/loading/loading.js +4 -3
  340. package/dist/es/packages/loading/style/style.css +6 -6
  341. package/dist/es/packages/menu/menu.js +38 -25
  342. package/dist/es/packages/menu/style/style.css +8 -11
  343. package/dist/es/packages/menuitem/menuitem.d.ts +5 -0
  344. package/dist/es/packages/menuitem/menuitem.js +40 -30
  345. package/dist/es/packages/menuitem/style/style.css +5 -8
  346. package/dist/es/packages/navbar/navbar.js +7 -4
  347. package/dist/es/packages/navbar/style/navbar.scss +0 -5
  348. package/dist/es/packages/navbar/style/style.css +7 -11
  349. package/dist/es/packages/noticebar/style/style.css +2 -2
  350. package/dist/es/packages/notify/notify.js +5 -3
  351. package/dist/es/packages/notify/style/style.css +4 -4
  352. package/dist/es/packages/numberkeyboard/numberkeyboard.js +43 -23
  353. package/dist/es/packages/numberkeyboard/style/style.css +73 -26
  354. package/dist/es/packages/overlay/style/overlay.scss +0 -4
  355. package/dist/es/packages/overlay/style/style.css +1 -4
  356. package/dist/es/packages/pagination/pagination.js +2 -3
  357. package/dist/es/packages/pagination/style/pagination.scss +2 -2
  358. package/dist/es/packages/pagination/style/style.css +7 -7
  359. package/dist/es/packages/picker/picker.js +5 -5
  360. package/dist/es/packages/picker/pickerpanel.js +8 -7
  361. package/dist/es/packages/picker/style/style.css +79 -32
  362. package/dist/es/packages/popover/popover.js +14 -13
  363. package/dist/es/packages/popover/style/popover.scss +3 -3
  364. package/dist/es/packages/popover/style/style.css +66 -19
  365. package/dist/es/packages/popup/popup.d.ts +18 -90
  366. package/dist/es/packages/popup/popup.js +3 -2
  367. package/dist/es/packages/popup/style/popup.scss +52 -3
  368. package/dist/es/packages/popup/style/style.css +63 -16
  369. package/dist/es/packages/popup/style/style.harmony.css +133 -9
  370. package/dist/es/packages/price/style/price.scss +1 -1
  371. package/dist/es/packages/price/style/style.css +3 -3
  372. package/dist/es/packages/progress/progress.d.ts +8 -40
  373. package/dist/es/packages/progress/progress.js +66 -25
  374. package/dist/es/packages/progress/style/progress.scss +4 -2
  375. package/dist/es/packages/progress/style/style.css +5 -4
  376. package/dist/es/packages/progress/style/style.harmony.css +5 -4
  377. package/dist/es/packages/pulltorefresh/pulltorefresh.d.ts +12 -60
  378. package/dist/es/packages/pulltorefresh/pulltorefresh.js +25 -9
  379. package/dist/es/packages/pulltorefresh/style/pulltorefresh.scss +7 -2
  380. package/dist/es/packages/pulltorefresh/style/style.css +6 -3
  381. package/dist/es/packages/pulltorefresh/style/style.harmony.css +13 -1
  382. package/dist/es/packages/radio/radio.js +16 -14
  383. package/dist/es/packages/radio/style/radio.scss +2 -2
  384. package/dist/es/packages/radio/style/style.css +9 -9
  385. package/dist/es/packages/radiogroup/radiogroup.js +5 -3
  386. package/dist/es/packages/radiogroup/style/radiogroup.scss +2 -2
  387. package/dist/es/packages/radiogroup/style/style.css +2 -2
  388. package/dist/es/packages/range/range.js +51 -43
  389. package/dist/es/packages/range/style/range.scss +4 -2
  390. package/dist/es/packages/range/style/style.css +9 -7
  391. package/dist/es/packages/resultpage/style/style.css +5 -5
  392. package/dist/es/packages/searchbar/searchbar.d.ts +14 -14
  393. package/dist/es/packages/searchbar/style/style.css +7 -7
  394. package/dist/es/packages/shortpassword/shortpassword.js +15 -14
  395. package/dist/es/packages/shortpassword/style/shortpassword.scss +3 -3
  396. package/dist/es/packages/shortpassword/style/style.css +74 -27
  397. package/dist/es/packages/sidenavbar/sidenavbar.js +5 -4
  398. package/dist/es/packages/sidenavbar/style/style.css +67 -20
  399. package/dist/es/packages/sidenavbaritem/style/style.css +2 -2
  400. package/dist/es/packages/signature/signature.js +4 -3
  401. package/dist/es/packages/signature/style/style.css +3 -3
  402. package/dist/es/packages/skeleton/style/style.css +5 -5
  403. package/dist/es/packages/skeleton/style/style.harmony.css +90 -68
  404. package/dist/es/packages/step/style/style.css +16 -16
  405. package/dist/es/packages/steps/style/style.css +16 -16
  406. package/dist/es/packages/sticky/sticky.js +29 -33
  407. package/dist/es/packages/subsidenavbar/style/style.css +2 -2
  408. package/dist/es/packages/subsidenavbar/subsidenavbar.js +3 -2
  409. package/dist/es/packages/swipe/swipe.js +2 -3
  410. package/dist/es/packages/swiper/style/style.css +1 -1
  411. package/dist/es/packages/swiper/swiper.d.ts +2 -1
  412. package/dist/es/packages/swiper/swiper.js +0 -1
  413. package/dist/es/packages/swiperitem/swiperitem.js +0 -1
  414. package/dist/es/packages/switch/style/style.css +4 -4
  415. package/dist/es/packages/switch/style/switch.scss +1 -1
  416. package/dist/es/packages/tabbar/style/style.css +5 -5
  417. package/dist/es/packages/tabbar/tabbar.d.ts +1 -1
  418. package/dist/es/packages/tabbar/tabbar.js +4 -3
  419. package/dist/es/packages/tabbaritem/style/style.css +4 -4
  420. package/dist/es/packages/tabbaritem/tabbaritem.js +5 -4
  421. package/dist/es/packages/table/style/style.css +12 -12
  422. package/dist/es/packages/table/table.js +21 -17
  423. package/dist/es/packages/tabpane/style/style.css +1 -1
  424. package/dist/es/packages/tabpane/tabpane.js +2 -1
  425. package/dist/es/packages/tabs/style/style.css +19 -18
  426. package/dist/es/packages/tabs/style/tabs.scss +6 -5
  427. package/dist/es/packages/tabs/tabs.js +2 -0
  428. package/dist/es/packages/tag/style/style.css +10 -8
  429. package/dist/es/packages/tag/style/style.harmony.css +4 -2
  430. package/dist/es/packages/tag/style/tag.scss +2 -0
  431. package/dist/es/packages/textarea/style/style.css +16 -16
  432. package/dist/es/packages/textarea/style/style.harmony.css +9 -9
  433. package/dist/es/packages/textarea/style/textarea.scss +10 -11
  434. package/dist/es/packages/textarea/textarea.js +1 -1
  435. package/dist/es/packages/timedetail/style/style.css +4 -4
  436. package/dist/es/packages/timedetail/style/timedetail.scss +1 -1
  437. package/dist/es/packages/timedetail/timedetail.js +3 -2
  438. package/dist/es/packages/timeselect/style/style.css +74 -27
  439. package/dist/es/packages/timeselect/timeselect.js +5 -5
  440. package/dist/es/packages/toast/style/style.css +3 -3
  441. package/dist/es/packages/toast/style/toast.scss +2 -2
  442. package/dist/es/packages/toast/toast.js +2 -2
  443. package/dist/es/packages/tour/style/style.css +68 -21
  444. package/dist/es/packages/trendarrow/style/style.css +1 -1
  445. package/dist/es/packages/uploader/preview.js +14 -15
  446. package/dist/es/packages/uploader/style/style.css +17 -14
  447. package/dist/es/packages/uploader/style/uploader.scss +4 -3
  448. package/dist/es/packages/uploader/uploader.d.ts +10 -3
  449. package/dist/es/packages/uploader/uploader.js +48 -23
  450. package/dist/es/packages/uploader/utils.js +8 -5
  451. package/dist/es/packages/virtuallist/style/style.css +4 -4
  452. package/dist/es/packages/watermark/watermark.d.ts +10 -0
  453. package/dist/es/packages/watermark/watermark.js +4 -2
  454. package/dist/es/utils/get-rect-by-taro.js +1 -1
  455. package/dist/es/utils/get-scroll-parent.d.ts +1 -1
  456. package/dist/es/utils/merge-props.d.ts +9 -5
  457. package/dist/es/utils/merge-props.js +30 -3
  458. package/dist/es/utils/raf.js +3 -2
  459. package/dist/es/utils/typings.d.ts +1 -0
  460. package/dist/es/utils/use-client-rect.d.ts +1 -1
  461. package/dist/nutui.react.umd.js +1554 -1192
  462. package/dist/style.css +1 -1
  463. package/dist/styles/font-jrkf/config.json +175 -0
  464. package/dist/styles/font-jrkf/demo.css +539 -0
  465. package/dist/styles/font-jrkf/demo_index.html +1821 -0
  466. package/dist/styles/font-jrkf/iconfont.css +299 -0
  467. package/dist/styles/font-jrkf/iconfont.eot +0 -0
  468. package/dist/styles/font-jrkf/iconfont.js +68 -0
  469. package/dist/styles/font-jrkf/iconfont.json +506 -0
  470. package/dist/styles/font-jrkf/iconfont.svg +356 -0
  471. package/dist/styles/font-jrkf/iconfont.ttf +0 -0
  472. package/dist/styles/font-jrkf/iconfont.woff +0 -0
  473. package/dist/styles/font-jrkf/iconfont.woff2 +0 -0
  474. package/dist/styles/theme-dark.scss +254 -59
  475. package/dist/styles/theme-default.scss +198 -29
  476. package/dist/styles/theme-jmapp.scss +1 -1
  477. package/dist/styles/theme-jrkf.scss +260 -0
  478. package/dist/styles/themes/default.scss +39 -39
  479. package/dist/styles/variables-jmapp.scss +150 -110
  480. package/dist/styles/variables-jrkf.scss +2504 -0
  481. package/dist/styles/variables.scss +190 -179
  482. package/package.json +6 -4
@@ -8,8 +8,8 @@
8
8
  justify-content: center;
9
9
  width: 100%;
10
10
  overflow: hidden;
11
- font-size: var(--nutui-font-size-2, 12px);
12
- color: var(--nutui-infiniteloading-color, var(--nutui-gray-5, #888b94));
11
+ font-size: var(--nutui-font-size-s, 12px);
12
+ color: var(--nutui-infiniteloading-color, var(--nutui-color-text-help, #888b94));
13
13
  }
14
14
  .nut-infiniteloading .nut-infinite-top-tips {
15
15
  width: 100%;
@@ -30,8 +30,8 @@
30
30
  justify-content: center;
31
31
  width: 100%;
32
32
  padding-top: 6px;
33
- font-size: var(--nutui-font-size-2, 12px);
34
- color: var(--nutui-infiniteloading-color, var(--nutui-gray-5, #888b94));
33
+ font-size: var(--nutui-font-size-s, 12px);
34
+ color: var(--nutui-infiniteloading-color, var(--nutui-color-text-help, #888b94));
35
35
  text-align: center;
36
36
  }
37
37
  .nut-infiniteloading .nut-infinite-bottom-tips {
@@ -106,13 +106,11 @@ var Input = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
106
106
  var updateValue = function updateValue(value) {
107
107
  var trigger = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 'onChange';
108
108
  var val = value;
109
- if ((0, _taro.getEnv)() === _taro.ENV_TYPE.WEB) {
110
- if (type === 'number') {
111
- val = (0, _utils.formatNumber)(val, false, true);
112
- }
113
- if (type === 'digit') {
114
- val = (0, _utils.formatNumber)(val, true, true);
115
- }
109
+ if (type === 'number') {
110
+ val = (0, _utils.formatNumber)(val, false, true);
111
+ }
112
+ if (type === 'digit') {
113
+ val = (0, _utils.formatNumber)(val, true, true);
116
114
  }
117
115
  if (formatter && trigger === formatTrigger) {
118
116
  val = formatter(val);
@@ -7,11 +7,11 @@
7
7
  align-items: center;
8
8
  padding: var(--nutui-input-padding, 10px 25px);
9
9
  line-height: 24px;
10
- font-size: var(--nutui-input-font-size, var(--nutui-font-size-3, 14px));
10
+ font-size: var(--nutui-input-font-size, var(--nutui-font-size-base, 14px));
11
11
  box-sizing: border-box;
12
12
  border-radius: var(--nutui-input-border-radius, 0);
13
- background-color: var(--nutui-input-background-color, var(--nutui-gray-1, #ffffff));
14
- border-bottom: var(--nutui-input-border-bottom-width, 0px) solid var(--nutui-input-border-bottom, var(--nutui-black-3, rgba(0, 0, 0, 0.06)));
13
+ background-color: var(--nutui-input-background-color, var(--nutui-color-background-overlay, #ffffff));
14
+ border-bottom: var(--nutui-input-border-bottom-width, 0px) solid var(--nutui-input-border-bottom, var(--nutui-color-border, rgba(0, 0, 0, 0.06)));
15
15
  }
16
16
  .nut-input .nut-icon {
17
17
  color: #c8c9cc;
@@ -19,8 +19,8 @@
19
19
 
20
20
  .nut-input-native {
21
21
  flex: 1;
22
- color: var(--nutui-input-color, var(--nutui-gray-7, #1a1a1a));
23
- font-size: var(--nutui-input-font-size, var(--nutui-font-size-3, 14px));
22
+ color: var(--nutui-input-color, var(--nutui-color-title, #1a1a1a));
23
+ font-size: var(--nutui-input-font-size, var(--nutui-font-size-base, 14px));
24
24
  padding: 0;
25
25
  border: 0;
26
26
  outline: 0 none;
@@ -13,10 +13,11 @@ export interface InputNumberProps extends BasicComponent {
13
13
  step: number;
14
14
  digits: number;
15
15
  async: boolean;
16
+ select: boolean;
16
17
  formatter?: (value?: string | number) => string;
17
18
  onPlus: (e: ITouchEvent) => void;
18
19
  onMinus: (e: ITouchEvent) => void;
19
- onOverlimit: (e: ITouchEvent) => void;
20
+ onOverlimit: (e: ITouchEvent | ChangeEvent<HTMLInputElement>) => void;
20
21
  onBlur: (e: React.FocusEvent<HTMLInputElement>) => void;
21
22
  onFocus: (e: React.FocusEvent<HTMLInputElement>) => void;
22
23
  onChange: (param: string | number, e: ITouchEvent | ChangeEvent<HTMLInputElement>) => void;
@@ -31,11 +31,12 @@ var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typing
31
31
  type: 'digit',
32
32
  step: 1,
33
33
  digits: 0,
34
- async: false
34
+ async: false,
35
+ select: true
35
36
  });
36
37
  var classPrefix = "nut-inputnumber";
37
38
  var InputNumber = function InputNumber(props) {
38
- var _ref = (0, _object_spread._)({}, defaultProps, props), children = _ref.children, disabled = _ref.disabled, min = _ref.min, max = _ref.max, type = _ref.type, readOnly = _ref.readOnly, value = _ref.value, defaultValue = _ref.defaultValue, allowEmpty = _ref.allowEmpty, digits = _ref.digits, step = _ref.step, async = _ref.async, className = _ref.className, style = _ref.style, formatter = _ref.formatter, onPlus = _ref.onPlus, onMinus = _ref.onMinus, onOverlimit = _ref.onOverlimit, onBlur = _ref.onBlur, onFocus = _ref.onFocus, onChange = _ref.onChange, restProps = (0, _object_without_properties._)(_ref, [
39
+ var _ref = (0, _object_spread._)({}, defaultProps, props), children = _ref.children, disabled = _ref.disabled, min = _ref.min, max = _ref.max, type = _ref.type, readOnly = _ref.readOnly, value = _ref.value, defaultValue = _ref.defaultValue, allowEmpty = _ref.allowEmpty, digits = _ref.digits, step = _ref.step, async = _ref.async, select = _ref.select, className = _ref.className, style = _ref.style, formatter = _ref.formatter, onPlus = _ref.onPlus, onMinus = _ref.onMinus, onOverlimit = _ref.onOverlimit, onBlur = _ref.onBlur, onFocus = _ref.onFocus, onChange = _ref.onChange, restProps = (0, _object_without_properties._)(_ref, [
39
40
  "children",
40
41
  "disabled",
41
42
  "min",
@@ -48,6 +49,7 @@ var InputNumber = function InputNumber(props) {
48
49
  "digits",
49
50
  "step",
50
51
  "async",
52
+ "select",
51
53
  "className",
52
54
  "style",
53
55
  "formatter",
@@ -65,11 +67,12 @@ var InputNumber = function InputNumber(props) {
65
67
  var _useState = (0, _sliced_to_array._)((0, _react.useState)(false), 2), focused = _useState[0], setFocused = _useState[1];
66
68
  var inputRef = (0, _react.useRef)(null);
67
69
  (0, _react.useEffect)(function() {
68
- if (focused) {
70
+ if (select && focused) {
69
71
  var _inputRef_current_select, _inputRef_current;
70
72
  (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : (_inputRef_current_select = _inputRef_current.select) === null || _inputRef_current_select === void 0 ? void 0 : _inputRef_current_select.call(_inputRef_current);
71
73
  }
72
74
  }, [
75
+ select,
73
76
  focused
74
77
  ]);
75
78
  var _usePropsValue = (0, _sliced_to_array._)((0, _usepropsvalue.usePropsValue)({
@@ -150,8 +153,22 @@ var InputNumber = function InputNumber(props) {
150
153
  if (text === '-') return null;
151
154
  return text;
152
155
  };
156
+ var clampValue = function clampValue(valueStr) {
157
+ if (valueStr === null) return defaultValue;
158
+ var val = Number(parseFloat(valueStr || '0').toFixed(digits));
159
+ return Math.max(Number(min), Math.min(Number(max), val));
160
+ };
161
+ var handleValueChange = function handleValueChange(valueStr, e) {
162
+ var val = clampValue(valueStr);
163
+ // input暂不触发onOverlimit
164
+ // if (val !== Number(e.target.value)) {
165
+ // onOverlimit?.(e)
166
+ // }
167
+ if (val !== Number(shadowValue)) {
168
+ onChange === null || onChange === void 0 ? void 0 : onChange(val, e);
169
+ }
170
+ };
153
171
  var handleInputChange = function handleInputChange(e) {
154
- if (!focused && isHarmony) return;
155
172
  // 设置 input 值, 在 blur 时格式化
156
173
  setInputValue(e.target.value);
157
174
  var valueStr = parseValue(e.target.value);
@@ -162,24 +179,29 @@ var InputNumber = function InputNumber(props) {
162
179
  setShadowValue(defaultValue);
163
180
  }
164
181
  } else {
165
- setShadowValue(valueStr);
166
- }
167
- if (!async) {
168
- onChange === null || onChange === void 0 ? void 0 : onChange(parseFloat(valueStr || '0').toFixed(digits), e);
182
+ setShadowValue(clampValue(valueStr));
169
183
  }
184
+ !async && handleValueChange(valueStr, e);
170
185
  };
171
186
  var handleFocus = function handleFocus(e) {
172
187
  setFocused(true);
173
188
  setInputValue(shadowValue !== undefined && shadowValue !== null ? bound(Number(shadowValue), Number(min), Number(max)).toString() : '');
174
- onFocus && onFocus(e);
189
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);
175
190
  };
176
191
  var handleBlur = function handleBlur(e) {
177
192
  setFocused(false);
178
- onBlur && onBlur(e);
179
- if (async) {
180
- var valueStr = parseValue(e.target.value);
181
- onChange === null || onChange === void 0 ? void 0 : onChange(parseFloat(valueStr || '0').toFixed(digits), e);
193
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
194
+ var valueStr = parseValue(e.target.value);
195
+ if (valueStr === null) {
196
+ if (allowEmpty) {
197
+ setShadowValue(null);
198
+ } else {
199
+ setShadowValue(defaultValue);
200
+ }
201
+ } else {
202
+ setShadowValue(clampValue(valueStr));
182
203
  }
204
+ async && handleValueChange(valueStr, e);
183
205
  };
184
206
  return /*#__PURE__*/ _react.default.createElement(_components.View, {
185
207
  className: classes,
@@ -13,7 +13,7 @@
13
13
  border-radius: var(--nutui-inputnumber-button-border-radius, 16px);
14
14
  }
15
15
  .nut-inputnumber-icon {
16
- color: var(--nutui-inputnumber-icon-color, var(--nutui-gray-6, #505259));
16
+ color: var(--nutui-inputnumber-icon-color, var(--nutui-color-text, #505259));
17
17
  /* #ifdef rn harmony */
18
18
  font-size: 14px;
19
19
  /* #endif */
@@ -37,8 +37,8 @@
37
37
  border: var(--nutui-inputnumber-input-border, 0);
38
38
  border-radius: var(--nutui-inputnumber-input-border-radius, 6px);
39
39
  margin: var(--nutui-inputnumber-input-margin, 0);
40
- color: var(--nutui-inputnumber-input-font-color, var(--nutui-gray-7, #1a1a1a));
41
- background-color: var(--nutui-inputnumber-input-background-color, var(--nutui-gray-3, #f5f6fa));
40
+ color: var(--nutui-inputnumber-input-font-color, var(--nutui-color-title, #1a1a1a));
41
+ background-color: var(--nutui-inputnumber-input-background-color, var(--nutui-color-background, #f5f6fa));
42
42
  }
43
43
  .nut-inputnumber-input-disabled {
44
44
  color: var(--nutui-inputnumber-disabled-color, var(--nutui-color-text-disabled, #c2c4cc));
@@ -9,12 +9,9 @@ Object.defineProperty(exports, "Layout", {
9
9
  }
10
10
  });
11
11
  var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
12
- var _object_spread = require("@swc/helpers/_/_object_spread");
13
12
  var _components = require("@tarojs/components");
14
13
  var _react = /*#__PURE__*/ _interop_require_default._(require("react"));
15
- var defaultProps = {};
16
- var Layout = function Layout(props) {
17
- var children = (0, _object_spread._)({}, defaultProps, props).children;
14
+ var Layout = function Layout() {
18
15
  return /*#__PURE__*/ _react.default.createElement(_components.View, {
19
16
  className: "nut-layout"
20
17
  }, "Layout");
@@ -15,6 +15,7 @@ var _object_without_properties = require("@swc/helpers/_/_object_without_propert
15
15
  var _react = /*#__PURE__*/ _interop_require_default._(require("react"));
16
16
  var _classnames = /*#__PURE__*/ _interop_require_default._(require("classnames"));
17
17
  var _iconsreacttaro = require("@nutui/icons-react-taro");
18
+ var _components = require("@tarojs/components");
18
19
  var _typings = require("../../utils/typings");
19
20
  // 方便以后扩展设置为键值对形式
20
21
  var loadingMap = {
@@ -36,14 +37,14 @@ var Loading = function Loading(props) {
36
37
  ]);
37
38
  var classPrefix = 'nut-loading';
38
39
  var CurLoadingIcon = loadingMap[rest.type] || _iconsreacttaro.Loading1;
39
- return /*#__PURE__*/ _react.default.createElement("div", {
40
+ return /*#__PURE__*/ _react.default.createElement(_components.View, {
40
41
  className: (0, _classnames.default)(classPrefix, direction === 'vertical' ? "".concat(classPrefix, "-vertical") : '', className),
41
42
  style: style
42
- }, /*#__PURE__*/ _react.default.createElement("div", {
43
+ }, /*#__PURE__*/ _react.default.createElement(_components.View, {
43
44
  className: "".concat(classPrefix, "-icon-box")
44
45
  }, icon || /*#__PURE__*/ _react.default.createElement(CurLoadingIcon, {
45
46
  className: "".concat(classPrefix, "-icon")
46
- })), children ? /*#__PURE__*/ _react.default.createElement("div", {
47
+ })), children ? /*#__PURE__*/ _react.default.createElement(_components.View, {
47
48
  className: "".concat(classPrefix, "-text")
48
49
  }, children) : '');
49
50
  };
@@ -14,15 +14,15 @@
14
14
  animation: nut-loading-rotation 1s infinite linear;
15
15
  }
16
16
  .nut-loading .nut-loading-icon-box .nut-loading-icon {
17
- color: var(--nutui-loading-icon-color, var(--nutui-gray-5, #888b94));
18
- width: var(--nutui-loading-icon-size, var(--nutui-font-size-2, 12px));
19
- height: var(--nutui-loading-icon-size, var(--nutui-font-size-2, 12px));
20
- font-size: var(--nutui-loading-icon-size, var(--nutui-font-size-2, 12px));
17
+ color: var(--nutui-loading-icon-color, var(--nutui-color-text-help, #888b94));
18
+ width: var(--nutui-loading-icon-size, var(--nutui-font-size-s, 12px));
19
+ height: var(--nutui-loading-icon-size, var(--nutui-font-size-s, 12px));
20
+ font-size: var(--nutui-loading-icon-size, var(--nutui-font-size-s, 12px));
21
21
  }
22
22
  .nut-loading .nut-loading-text {
23
23
  padding: 8px;
24
- color: var(--nutui-loading-color, var(--nutui-gray-5, #888b94));
25
- font-size: var(--nutui-loading-font-size, var(--nutui-font-size-2, 12px));
24
+ color: var(--nutui-loading-color, var(--nutui-color-text-help, #888b94));
25
+ font-size: var(--nutui-loading-font-size, var(--nutui-font-size-s, 12px));
26
26
  }
27
27
 
28
28
  @keyframes nut-loading-rotation {
@@ -18,6 +18,7 @@ var _to_consumable_array = require("@swc/helpers/_/_to_consumable_array");
18
18
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
19
19
  var _classnames = /*#__PURE__*/ _interop_require_default._(require("classnames"));
20
20
  var _iconsreacttaro = require("@nutui/icons-react-taro");
21
+ var _components = require("@tarojs/components");
21
22
  var _menuitem = require("../menuitem/menuitem");
22
23
  var _typings = require("../../utils/typings");
23
24
  var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typings.ComponentDefaults), {
@@ -44,16 +45,22 @@ var Menu = function Menu(props) {
44
45
  "onOpen"
45
46
  ]);
46
47
  var menuRef = (0, _react.useRef)(null);
47
- var _useState = (0, _sliced_to_array._)((0, _react.useState)(false), 2), isScrollFixed = _useState[0], setIsScrollFixed = _useState[1];
48
+ var _useState = (0, _sliced_to_array._)((0, _react.useState)([]), 2), showMenuItem = _useState[0], setShowMenuItem = _useState[1];
49
+ var _useState1 = (0, _sliced_to_array._)((0, _react.useState)([]), 2), menuItemTitle = _useState1[0], setMenuItemTitle = _useState1[1];
50
+ var _useState2 = (0, _sliced_to_array._)((0, _react.useState)(false), 2), isScrollFixed = _useState2[0], setIsScrollFixed = _useState2[1];
51
+ var cls = (0, _classnames.default)("nut-menu", className, {
52
+ 'scroll-fixed': isScrollFixed
53
+ });
48
54
  var getScrollTop = function getScrollTop(el) {
49
- return Math.max(0, 'scrollTop' in el ? el.scrollTop : el.pageYOffset);
55
+ return Math.max(0, el === window ? window.scrollY : el.scrollTop);
50
56
  };
51
- var onScroll = function onScroll() {
52
- var scrollFixed = props.scrollFixed;
57
+ var onScroll = (0, _react.useCallback)(function() {
53
58
  var scrollTop = getScrollTop(window);
54
59
  var isFixed = scrollTop > (typeof scrollFixed === 'boolean' ? 30 : Number(scrollFixed));
55
60
  setIsScrollFixed(isFixed);
56
- };
61
+ }, [
62
+ scrollFixed
63
+ ]);
57
64
  (0, _react.useEffect)(function() {
58
65
  if (scrollFixed) {
59
66
  window.addEventListener('scroll', onScroll);
@@ -61,9 +68,10 @@ var Menu = function Menu(props) {
61
68
  return function() {
62
69
  return window.removeEventListener('scroll', onScroll);
63
70
  };
64
- }, []);
65
- var _useState1 = (0, _sliced_to_array._)((0, _react.useState)([]), 2), showMenuItem = _useState1[0], setShowMenuItem = _useState1[1];
66
- var _useState2 = (0, _sliced_to_array._)((0, _react.useState)([]), 2), menuItemTitle = _useState2[0], setMenuItemTitle = _useState2[1];
71
+ }, [
72
+ scrollFixed,
73
+ onScroll
74
+ ]);
67
75
  var toggleMenuItem = function toggleMenuItem(index) {
68
76
  var from = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 'NORMAL';
69
77
  showMenuItem[index] = !showMenuItem[index];
@@ -108,7 +116,7 @@ var Menu = function Menu(props) {
108
116
  var menuTitle = function menuTitle() {
109
117
  return _react.default.Children.map(children, function(child, index) {
110
118
  if (/*#__PURE__*/ _react.default.isValidElement(child)) {
111
- var _child_props = child.props, title = _child_props.title, options = _child_props.options, value = _child_props.value, defaultValue = _child_props.defaultValue, disabled = _child_props.disabled, direction = _child_props.direction;
119
+ var _child_props = child.props, title = _child_props.title, titleIcon = _child_props.titleIcon, options = _child_props.options, value = _child_props.value, defaultValue = _child_props.defaultValue, disabled = _child_props.disabled, direction = _child_props.direction;
112
120
  var selected = options === null || options === void 0 ? void 0 : options.filter(function(option) {
113
121
  return option.value === (value !== undefined ? value : defaultValue);
114
122
  });
@@ -118,8 +126,21 @@ var Menu = function Menu(props) {
118
126
  if (selected && selected.length && selected[0].text) return selected[0].text;
119
127
  return '';
120
128
  };
121
- return /*#__PURE__*/ _react.default.createElement("div", {
122
- className: (0, _classnames.default)('nut-menu-title ', {
129
+ var finallyIcon = function finallyIcon() {
130
+ if (titleIcon) return titleIcon;
131
+ if (icon) return icon;
132
+ return direction === 'up' ? /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.ArrowUp, {
133
+ className: "nut-menu-title-icon",
134
+ width: "12px",
135
+ height: "12px"
136
+ }) : /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.ArrowDown, {
137
+ className: "nut-menu-title-icon",
138
+ width: "12px",
139
+ height: "12px"
140
+ });
141
+ };
142
+ return /*#__PURE__*/ _react.default.createElement(_components.View, {
143
+ className: (0, _classnames.default)('nut-menu-title ', "nut-menu-title-".concat(index), {
123
144
  active: showMenuItem[index],
124
145
  disabled: disabled
125
146
  }, className),
@@ -131,25 +152,17 @@ var Menu = function Menu(props) {
131
152
  if ((!options || !options.length) && !child.props.children) return;
132
153
  !disabled && toggleMenuItem(index);
133
154
  }
134
- }, /*#__PURE__*/ _react.default.createElement("div", {
155
+ }, /*#__PURE__*/ _react.default.createElement(_components.View, {
135
156
  className: "nut-menu-title-text"
136
- }, finallyTitle()), icon || (direction === 'up' ? /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.ArrowUp, {
137
- className: "nut-menu-title-icon",
138
- size: "12px"
139
- }) : /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.ArrowDown, {
140
- className: "nut-menu-title-icon",
141
- size: "12px"
142
- })));
157
+ }, finallyTitle()), finallyIcon());
143
158
  }
144
159
  return null;
145
160
  });
146
161
  };
147
- return /*#__PURE__*/ _react.default.createElement("div", (0, _object_spread_props._)((0, _object_spread._)({}, rest), {
148
- className: (0, _classnames.default)("nut-menu", className, {
149
- 'scroll-fixed': isScrollFixed
150
- }),
162
+ return /*#__PURE__*/ _react.default.createElement(_components.View, (0, _object_spread_props._)((0, _object_spread._)({}, rest), {
163
+ className: cls,
151
164
  ref: menuRef
152
- }), /*#__PURE__*/ _react.default.createElement("div", {
165
+ }), /*#__PURE__*/ _react.default.createElement(_components.View, {
153
166
  className: (0, _classnames.default)('nut-menu-bar', {
154
167
  opened: showMenuItem.includes(true)
155
168
  })
@@ -11,7 +11,7 @@
11
11
  right: 0;
12
12
  width: 100%;
13
13
  height: 100%;
14
- background-color: var(--nutui-overlay-bg-color, var(--nutui-black-10, rgba(0, 0, 0, 0.7)));
14
+ background-color: var(--nutui-overlay-bg-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7)));
15
15
  z-index: var(--nutui-overlay-zIndex, 1000);
16
16
  }
17
17
 
@@ -24,9 +24,6 @@
24
24
  .nut-overflow-hidden {
25
25
  overflow: hidden !important;
26
26
  }
27
- .nut-overflow-hidden .taro_page {
28
- overflow: hidden !important;
29
- }
30
27
 
31
28
  @keyframes nut-fade-in {
32
29
  0% {
@@ -67,7 +64,7 @@
67
64
  overflow-y: auto;
68
65
  display: flex;
69
66
  flex-wrap: wrap;
70
- background: var(--nutui-menu-content-background-color, var(--nutui-gray-1, #ffffff));
67
+ background: var(--nutui-menu-content-background-color, var(--nutui-color-background-overlay, #ffffff));
71
68
  }
72
69
  .nut-menu-container-content_fixed {
73
70
  width: 100%;
@@ -77,12 +74,12 @@
77
74
  .nut-menu-container-item {
78
75
  display: flex;
79
76
  align-items: center;
80
- color: var(--nutui-gray-7, #1a1a1a);
81
- font-size: var(--nutui-font-size-3, 14px);
77
+ color: var(--nutui-color-title, #1a1a1a);
78
+ font-size: var(--nutui-font-size-base, 14px);
82
79
  padding: var(--nutui-menu-item-padding, 12px 0);
83
80
  }
84
81
  .nut-menu-container-item.active {
85
- font-weight: var(--nutui-menu-item-active-font-weight, var(--nutui-font-weight-bold, 500));
82
+ font-weight: var(--nutui-menu-item-active-font-weight, var(--nutui-font-weight-bold, 600));
86
83
  color: var(--nutui-menu-item-active-color, var(--nutui-color-primary, #ff0f23));
87
84
  }
88
85
  .nut-menu-container-item .nut-icon {
@@ -184,7 +181,7 @@
184
181
  position: relative;
185
182
  display: flex;
186
183
  line-height: var(--nutui-menu-bar-line-height, 48px);
187
- background-color: var(--nutui-gray-1, #ffffff);
184
+ background-color: var(--nutui-color-background-overlay, #ffffff);
188
185
  box-shadow: var(--nutui-menu-bar-box-shadow, 0 2px 12px rgba(89, 89, 89, 0.12));
189
186
  }
190
187
  .nut-menu-bar.opened {
@@ -194,8 +191,8 @@
194
191
  .nut-menu-title {
195
192
  flex: 1;
196
193
  text-align: center;
197
- font-size: var(--nutui-menu-title-font-size, var(--nutui-font-size-3, 14px));
198
- color: var(--nutui-menu-title-color, var(--nutui-gray-7, #1a1a1a));
194
+ font-size: var(--nutui-menu-title-font-size, var(--nutui-font-size-base, 14px));
195
+ color: var(--nutui-menu-title-color, var(--nutui-color-title, #1a1a1a));
199
196
  min-width: 0;
200
197
  display: flex;
201
198
  align-items: center;
@@ -6,6 +6,7 @@ export interface OptionItem {
6
6
  }
7
7
  export interface MenuItemProps extends BasicComponent {
8
8
  title: React.ReactNode;
9
+ titleIcon: React.ReactNode;
9
10
  options: OptionItem[];
10
11
  disabled: boolean;
11
12
  columns: number;
@@ -27,6 +27,7 @@ var _getrectbytaro = require("../../utils/get-rect-by-taro");
27
27
  var _typings = require("../../utils/typings");
28
28
  var _usepropsvalue = require("../../utils/use-props-value");
29
29
  var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typings.ComponentDefaults), {
30
+ titleIcon: null,
30
31
  columns: 1,
31
32
  direction: 'down',
32
33
  icon: null,
@@ -51,15 +52,43 @@ var MenuItem = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
51
52
  onChange === null || onChange === void 0 ? void 0 : onChange(option);
52
53
  }
53
54
  }), 2), innerValue = _usePropsValue[0], setValue = _usePropsValue[1];
55
+ var cssRef = (0, _react.useRef)(null);
54
56
  (0, _react.useEffect)(function() {
55
57
  setShowPopup(show);
56
58
  }, [
57
59
  show
58
60
  ]);
61
+ var getParentOffset = (0, _react.useCallback)(function() {
62
+ setTimeout(/*#__PURE__*/ (0, _async_to_generator._)(function() {
63
+ var p, rect;
64
+ return (0, _ts_generator._)(this, function(_state) {
65
+ switch(_state.label){
66
+ case 0:
67
+ p = parent.menuRef.current;
68
+ return [
69
+ 4,
70
+ (0, _getrectbytaro.getRectByTaro)(p)
71
+ ];
72
+ case 1:
73
+ rect = _state.sent();
74
+ setPosition({
75
+ height: rect.height,
76
+ top: rect.top
77
+ });
78
+ return [
79
+ 2
80
+ ];
81
+ }
82
+ });
83
+ }), 100);
84
+ }, [
85
+ parent.menuRef
86
+ ]);
59
87
  (0, _react.useEffect)(function() {
60
88
  getParentOffset();
61
89
  }, [
62
- showPopup
90
+ showPopup,
91
+ getParentOffset
63
92
  ]);
64
93
  var windowHeight = (0, _react.useMemo)(function() {
65
94
  return (0, _taro.getSystemInfoSync)().windowHeight;
@@ -77,7 +106,9 @@ var MenuItem = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
77
106
  });
78
107
  }, [
79
108
  direction,
80
- windowHeight
109
+ windowHeight,
110
+ parent.lockScroll,
111
+ parent.menuRef
81
112
  ]);
82
113
  (0, _taro.usePageScroll)(updateItemOffset);
83
114
  (0, _react.useImperativeHandle)(ref, function() {
@@ -106,30 +137,6 @@ var MenuItem = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
106
137
  top: 0,
107
138
  height: 0
108
139
  }), 2), position = _useState1[0], setPosition = _useState1[1];
109
- var getParentOffset = function getParentOffset() {
110
- setTimeout(/*#__PURE__*/ (0, _async_to_generator._)(function() {
111
- var p, rect;
112
- return (0, _ts_generator._)(this, function(_state) {
113
- switch(_state.label){
114
- case 0:
115
- p = parent.menuRef.current;
116
- return [
117
- 4,
118
- (0, _getrectbytaro.getRectByTaro)(p)
119
- ];
120
- case 1:
121
- rect = _state.sent();
122
- setPosition({
123
- height: rect.height,
124
- top: rect.top
125
- });
126
- return [
127
- 2
128
- ];
129
- }
130
- });
131
- }), 100);
132
- };
133
140
  var isShow = function isShow() {
134
141
  if (showPopup) return {};
135
142
  return {
@@ -184,6 +191,7 @@ var MenuItem = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
184
191
  }, className),
185
192
  style: (0, _object_spread._)({}, style, isShow())
186
193
  }, /*#__PURE__*/ _react.default.createElement(_reacttransitiongroup.CSSTransition, {
194
+ nodeRef: cssRef,
187
195
  in: showPopup,
188
196
  timeout: 100,
189
197
  classNames: direction === 'down' ? 'nut-menu-container-down' : 'nut-menu-container-up'
@@ -201,12 +209,14 @@ var MenuItem = /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
201
209
  onClick: function onClick() {
202
210
  handleClick(item);
203
211
  }
204
- }, item.value === innerValue ? /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, icon || /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.Check, {
212
+ }, item.value === innerValue ? /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, icon ? /*#__PURE__*/ _react.default.cloneElement(icon, {
213
+ className: "nut-menu-container-item-icon ".concat(icon.props.className || '')
214
+ }) : /*#__PURE__*/ _react.default.createElement(_iconsreacttaro.Check, {
205
215
  color: activeColor,
206
216
  size: 16,
207
- className: getIconCName(item.value, value)
217
+ className: "nut-menu-container-item-icon ".concat(getIconCName(item.value, value))
208
218
  })) : null, /*#__PURE__*/ _react.default.createElement(_components.View, {
209
- className: getIconCName(item.value, value),
219
+ className: "nut-menu-container-item-title ".concat(getIconCName(item.value, value)),
210
220
  style: {
211
221
  color: "".concat(item.value === innerValue ? activeColor : '')
212
222
  }
@@ -11,7 +11,7 @@
11
11
  right: 0;
12
12
  width: 100%;
13
13
  height: 100%;
14
- background-color: var(--nutui-overlay-bg-color, var(--nutui-black-10, rgba(0, 0, 0, 0.7)));
14
+ background-color: var(--nutui-overlay-bg-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7)));
15
15
  z-index: var(--nutui-overlay-zIndex, 1000);
16
16
  }
17
17
 
@@ -24,9 +24,6 @@
24
24
  .nut-overflow-hidden {
25
25
  overflow: hidden !important;
26
26
  }
27
- .nut-overflow-hidden .taro_page {
28
- overflow: hidden !important;
29
- }
30
27
 
31
28
  @keyframes nut-fade-in {
32
29
  0% {
@@ -67,7 +64,7 @@
67
64
  overflow-y: auto;
68
65
  display: flex;
69
66
  flex-wrap: wrap;
70
- background: var(--nutui-menu-content-background-color, var(--nutui-gray-1, #ffffff));
67
+ background: var(--nutui-menu-content-background-color, var(--nutui-color-background-overlay, #ffffff));
71
68
  }
72
69
  .nut-menu-container-content_fixed {
73
70
  width: 100%;
@@ -77,12 +74,12 @@
77
74
  .nut-menu-container-item {
78
75
  display: flex;
79
76
  align-items: center;
80
- color: var(--nutui-gray-7, #1a1a1a);
81
- font-size: var(--nutui-font-size-3, 14px);
77
+ color: var(--nutui-color-title, #1a1a1a);
78
+ font-size: var(--nutui-font-size-base, 14px);
82
79
  padding: var(--nutui-menu-item-padding, 12px 0);
83
80
  }
84
81
  .nut-menu-container-item.active {
85
- font-weight: var(--nutui-menu-item-active-font-weight, var(--nutui-font-weight-bold, 500));
82
+ font-weight: var(--nutui-menu-item-active-font-weight, var(--nutui-font-weight-bold, 600));
86
83
  color: var(--nutui-menu-item-active-color, var(--nutui-color-primary, #ff0f23));
87
84
  }
88
85
  .nut-menu-container-item .nut-icon {