@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
@@ -7,8 +7,9 @@ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
7
7
  import React, { useState, useEffect, useMemo, useCallback } from "react";
8
8
  import Taro, { useReady, createSelectorQuery } from "@tarojs/taro";
9
9
  import classNames from "classnames";
10
- import { Canvas } from "@tarojs/components";
10
+ import { Canvas, View } from "@tarojs/components";
11
11
  import { Button } from "../button/button";
12
+ import { useConfig } from "../configprovider/configprovider";
12
13
  import { ComponentDefaults } from "../../utils/typings";
13
14
  import { useTouch } from "../../utils/use-touch";
14
15
  import { clamp, preventDefault } from "../../utils";
@@ -19,20 +20,20 @@ var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
19
20
  /*#__PURE__*/ React.createElement(Button, {
20
21
  type: "danger",
21
22
  key: "cancel"
22
- }, "取消"),
23
+ }, "Cancel"),
23
24
  /*#__PURE__*/ React.createElement(Button, {
24
25
  key: "reset"
25
- }, "重置"),
26
+ }, "Reset"),
26
27
  /*#__PURE__*/ React.createElement(Button, {
27
28
  key: "rotate"
28
- }, "旋转"),
29
+ }, "Rotate"),
29
30
  /*#__PURE__*/ React.createElement(Button, {
30
31
  type: "success",
31
32
  key: "confirm"
32
- }, "确认")
33
+ }, "Confirm")
33
34
  ],
34
35
  toolbarPosition: 'bottom',
35
- editText: '编辑',
36
+ editText: 'Edit',
36
37
  sizeType: [
37
38
  'original',
38
39
  'compressed'
@@ -45,6 +46,24 @@ var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
45
46
  });
46
47
  var classPrefix = "nut-avatar-cropper";
47
48
  export var AvatarCropper = function(props) {
49
+ var locale = useConfig().locale;
50
+ defaultProps.toolbar = [
51
+ /*#__PURE__*/ React.createElement(Button, {
52
+ type: "danger",
53
+ key: "cancel"
54
+ }, locale.cancel),
55
+ /*#__PURE__*/ React.createElement(Button, {
56
+ key: "reset"
57
+ }, locale.reset),
58
+ /*#__PURE__*/ React.createElement(Button, {
59
+ key: "rotate"
60
+ }, locale.avatarCropper.rotate),
61
+ /*#__PURE__*/ React.createElement(Button, {
62
+ type: "success",
63
+ key: "confirm"
64
+ }, locale.confirm)
65
+ ];
66
+ defaultProps.editText = locale.edit;
48
67
  var _ref = _object_spread({}, defaultProps, props), children = _ref.children, toolbar = _ref.toolbar, maxZoom = _ref.maxZoom, space = _ref.space, toolbarPosition = _ref.toolbarPosition, editText = _ref.editText, sizeType = _ref.sizeType, sourceType = _ref.sourceType, shape = _ref.shape, className = _ref.className, style = _ref.style, onConfirm = _ref.onConfirm, onCancel = _ref.onCancel, rest = _object_without_properties(_ref, [
49
68
  "children",
50
69
  "toolbar",
@@ -65,7 +84,6 @@ export var AvatarCropper = function(props) {
65
84
  var _useState = _sliced_to_array(useState(false), 2), visible = _useState[0], setVisible = _useState[1];
66
85
  var _useState1 = _sliced_to_array(useState(false), 2), moving = _useState1[0], setMoving = _useState1[1];
67
86
  var _useState2 = _sliced_to_array(useState(false), 2), zooming = _useState2[0], setZooming = _useState2[1];
68
- // 获取系统信息
69
87
  var systemInfo = Taro.getSystemInfoSync();
70
88
  // 支付宝基础库2.7.0以上支持,需要开启支付宝小程序canvas2d
71
89
  var showAlipayCanvas2D = useMemo(function() {
@@ -116,9 +134,7 @@ export var AvatarCropper = function(props) {
116
134
  cropperCanvasContext: Taro.createCanvasContext(canvasAll.canvasId)
117
135
  }));
118
136
  }, []);
119
- // 触摸
120
137
  var touch = useTouch();
121
- // 高亮框样式
122
138
  var highlightStyle = useMemo(function() {
123
139
  var width = "".concat(state.cropperWidth / pixelRatio, "px");
124
140
  var height = width;
@@ -200,13 +216,9 @@ export var AvatarCropper = function(props) {
200
216
  ctx.fillRect(0, 0, displayWidth, displayHeight);
201
217
  ctx.fillStyle = '#000';
202
218
  ctx.fillRect(space * pixelRatio, (displayHeight - cropperWidth) / 2, cropperWidth, cropperWidth);
203
- // 绘制偏移量
204
219
  ctx.translate(displayWidth / 2 + moveX, displayHeight / 2 + moveY);
205
- // 绘制旋转角度
206
220
  ctx.rotate(Math.PI / 180 * angle);
207
- // 绘制缩放
208
221
  ctx.scale(scale, scale);
209
- // 绘制图片
210
222
  ctx.drawImage(src, x, y, width, height);
211
223
  }, [
212
224
  drawImage,
@@ -264,11 +276,8 @@ export var AvatarCropper = function(props) {
264
276
  ctx.fill();
265
277
  // 绘制偏移量
266
278
  ctx.translate(displayWidth / 2 + moveX, displayHeight / 2 + moveY);
267
- // 绘制旋转角度
268
279
  ctx.rotate(Math.PI / 180 * angle);
269
- // 绘制缩放
270
280
  ctx.scale(scale, scale);
271
- // 绘制图片
272
281
  ctx.drawImage(src, x, y, width, height);
273
282
  ctx.draw();
274
283
  }, [
@@ -297,7 +306,7 @@ export var AvatarCropper = function(props) {
297
306
  draw
298
307
  ]);
299
308
  // 设置绘制图片
300
- var setDrawImgInfo = function() {
309
+ var setDrawImgInfo = /*#__PURE__*/ function() {
301
310
  var _ref = _async_to_generator(function(image) {
302
311
  var displayWidth, cropperWidth, copyDrawImg, imgWidth, imgHeight, isPortrait, rate, scale;
303
312
  return _ts_generator(this, function(_state) {
@@ -353,7 +362,6 @@ export var AvatarCropper = function(props) {
353
362
  return _ref.apply(this, arguments);
354
363
  };
355
364
  }();
356
- // 选择图片
357
365
  var chooseImage = function() {
358
366
  Taro.chooseImage({
359
367
  count: 1,
@@ -367,8 +375,7 @@ export var AvatarCropper = function(props) {
367
375
  }
368
376
  });
369
377
  };
370
- // 选择图片后回调
371
- var imageChange = function() {
378
+ var imageChange = /*#__PURE__*/ function() {
372
379
  var _ref = _async_to_generator(function(file) {
373
380
  return _ts_generator(this, function(_state) {
374
381
  Taro.getImageInfo({
@@ -386,7 +393,6 @@ export var AvatarCropper = function(props) {
386
393
  return _ref.apply(this, arguments);
387
394
  };
388
395
  }();
389
- // 重设缩放
390
396
  var resetScale = function(scale) {
391
397
  setState(_object_spread_props(_object_spread({}, state), {
392
398
  moveX: 0,
@@ -396,7 +402,6 @@ export var AvatarCropper = function(props) {
396
402
  defScale: scale || state.defScale
397
403
  }));
398
404
  };
399
- // 设置缩放
400
405
  var setScale = function(scale) {
401
406
  scale = clamp(scale, +0.3, +maxZoom + 1);
402
407
  if (scale !== state.scale) {
@@ -416,7 +421,6 @@ export var AvatarCropper = function(props) {
416
421
  startDistance: 0
417
422
  }), 2), startMove = _useState6[0], setStartMove = _useState6[1];
418
423
  var startMoveX = startMove.startMoveX, startMoveY = startMove.startMoveY, startScale = startMove.startScale, startDistance = startMove.startDistance;
419
- // 触摸开始
420
424
  var onTouchStart = function(event) {
421
425
  var touches = event.touches;
422
426
  var offsetX = touch.offsetX;
@@ -435,7 +439,6 @@ export var AvatarCropper = function(props) {
435
439
  }));
436
440
  }
437
441
  };
438
- // 触摸移动
439
442
  var onTouchMove = function(event) {
440
443
  var touches = event.touches;
441
444
  touch.move(event);
@@ -457,7 +460,6 @@ export var AvatarCropper = function(props) {
457
460
  setScale(scale);
458
461
  }
459
462
  };
460
- // 触摸结束
461
463
  var onTouchEnd = function(event) {
462
464
  var stopPropagation = false;
463
465
  if (moving || zooming) {
@@ -489,13 +491,11 @@ export var AvatarCropper = function(props) {
489
491
  preventDefault(event, stopPropagation);
490
492
  touch.reset();
491
493
  };
492
- // 重置角度
493
494
  var reset = function() {
494
495
  setState(_object_spread_props(_object_spread({}, state), {
495
496
  angle: 0
496
497
  }));
497
498
  };
498
- // 设置角度
499
499
  var rotate = function() {
500
500
  if (state.angle === 270) {
501
501
  setState(_object_spread_props(_object_spread({}, state), {
@@ -507,7 +507,6 @@ export var AvatarCropper = function(props) {
507
507
  angle: state.angle + 90
508
508
  }));
509
509
  };
510
- // 关闭
511
510
  var cancel = function() {
512
511
  var isEmit = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
513
512
  setVisible(false);
@@ -549,7 +548,7 @@ export var AvatarCropper = function(props) {
549
548
  height: cropperWidth,
550
549
  destWidth: cropperWidth,
551
550
  destHeight: cropperWidth,
552
- success: function() {
551
+ success: /*#__PURE__*/ function() {
553
552
  var _ref = _async_to_generator(function(res) {
554
553
  var filePath;
555
554
  return _ts_generator(this, function(_state) {
@@ -588,7 +587,7 @@ export var AvatarCropper = function(props) {
588
587
  height: cropperWidth,
589
588
  destWidth: cropperWidth * systemInfo.pixelRatio,
590
589
  destHeight: cropperWidth * systemInfo.pixelRatio,
591
- success: function() {
590
+ success: /*#__PURE__*/ function() {
592
591
  var _ref = _async_to_generator(function(res) {
593
592
  var filePath;
594
593
  return _ts_generator(this, function(_state) {
@@ -613,21 +612,21 @@ export var AvatarCropper = function(props) {
613
612
  rotate,
614
613
  confirm
615
614
  ];
616
- return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
615
+ return /*#__PURE__*/ React.createElement(View, {
617
616
  className: "".concat(classPrefix, "-popup-toolbar-flex")
618
617
  }, actions.map(function(action, index) {
619
- return /*#__PURE__*/ React.createElement("div", {
618
+ return /*#__PURE__*/ React.createElement(View, {
620
619
  key: index,
621
620
  className: "".concat(classPrefix, "-popup-toolbar-item"),
622
621
  onClick: function(_e) {
623
622
  return action();
624
623
  }
625
624
  }, toolbar[index]);
626
- })));
625
+ }));
627
626
  };
628
627
  var CropperPopup = function() {
629
628
  var canvasId = canvasAll.canvasId;
630
- return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
629
+ return /*#__PURE__*/ React.createElement(View, {
631
630
  className: "".concat(classPrefix, "-popup"),
632
631
  style: {
633
632
  display: visible ? 'block' : 'none'
@@ -638,23 +637,23 @@ export var AvatarCropper = function(props) {
638
637
  type: showAlipayCanvas2D ? '2d' : undefined,
639
638
  style: canvasStyle,
640
639
  className: "".concat(classPrefix, "-popup-canvas")
641
- }), /*#__PURE__*/ React.createElement("div", {
640
+ }), /*#__PURE__*/ React.createElement(View, {
642
641
  className: "".concat(classPrefix, "-popup-highlight"),
643
642
  onTouchStart: onTouchStart,
644
643
  onTouchMove: onTouchMove,
645
644
  onTouchEnd: onTouchEnd
646
- }, /*#__PURE__*/ React.createElement("div", {
645
+ }, /*#__PURE__*/ React.createElement(View, {
647
646
  className: "highlight",
648
647
  style: highlightStyle
649
- })), /*#__PURE__*/ React.createElement("div", {
648
+ })), /*#__PURE__*/ React.createElement(View, {
650
649
  className: toolbarPositionCls
651
- }, /*#__PURE__*/ React.createElement(ToolBar, null))));
650
+ }, /*#__PURE__*/ React.createElement(ToolBar, null)));
652
651
  };
653
- return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", _object_spread_props(_object_spread({
652
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement(View, _object_spread_props(_object_spread({
654
653
  className: cls
655
654
  }, rest), {
656
655
  style: style
657
- }), children, /*#__PURE__*/ React.createElement("div", {
656
+ }), children, /*#__PURE__*/ React.createElement(View, {
658
657
  className: "nut-avatar-cropper-edit-text",
659
658
  onClick: chooseImage
660
659
  }, editText)), CropperPopup());
@@ -1,27 +1,16 @@
1
1
  import React, { FunctionComponent } from 'react';
2
2
  import type { MouseEvent } from 'react';
3
+ import { PageScrollObject } from '@tarojs/taro';
3
4
  import { ITouchEvent } from '@tarojs/components';
4
5
  import { BasicComponent } from "../../utils/typings";
5
6
  export interface BackTopProps extends BasicComponent {
7
+ threshold: number;
8
+ zIndex: number;
9
+ duration: number;
6
10
  /**
7
- * 页面垂直滚动多高后出现
8
- * @default 200
9
- */
10
- threshold: number
11
- /**
12
- * 设置组件页面层级
13
- * @default 900
14
- */
15
- zIndex: number
16
- /**
17
- * 设置动画持续时间,为 0 时表示无动画
18
- * @default 1000
19
- */
20
- duration: number
21
- /**
22
- * 按钮点击时触发事件
23
- * @default -
24
- */
25
- onClick?: (event: React.MouseEvent<Element, MouseEvent> | ITouchEvent) => void
11
+ * 容器滚动时的回调参数,主要用于 rn、鸿蒙端
12
+ */
13
+ scrollRes?: PageScrollObject;
14
+ onClick?: (event: React.MouseEvent<Element, MouseEvent> | ITouchEvent) => void;
26
15
  }
27
16
  export declare const BackTop: FunctionComponent<Partial<BackTopProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onClick'>>;
@@ -2,48 +2,86 @@ import { _ as _define_property } from "@swc/helpers/_/_define_property";
2
2
  import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
3
3
  import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
4
4
  import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
5
- import React, { useState } from "react";
6
- import { usePageScroll, pageScrollTo } from "@tarojs/taro";
5
+ import React, { useCallback, useState, useMemo, useEffect, useRef } from "react";
6
+ import { usePageScroll, pageScrollTo, getSystemInfo } from "@tarojs/taro";
7
7
  import { View } from "@tarojs/components";
8
8
  import { Top } from "@nutui/icons-react-taro";
9
9
  import classNames from "classnames";
10
10
  import { ComponentDefaults } from "../../utils/typings";
11
11
  import { useRtl } from "../configprovider/index";
12
+ import { harmonyAndRn, rn } from "../../utils/platform-taro";
13
+ import pxTransform from "../../utils/px-transform";
12
14
  var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
13
15
  threshold: 200,
14
16
  zIndex: 900,
15
17
  duration: 1000
16
18
  });
19
+ var isNative = harmonyAndRn();
17
20
  export var BackTop = function(props) {
18
21
  var rtl = useRtl();
19
- var _$_object_spread = _object_spread({}, defaultProps, props), children = _$_object_spread.children, threshold = _$_object_spread.threshold, zIndex = _$_object_spread.zIndex, className = _$_object_spread.className, duration = _$_object_spread.duration, style = _$_object_spread.style, onClick = _$_object_spread.onClick;
22
+ var _$_object_spread = _object_spread({}, defaultProps, props), children = _$_object_spread.children, threshold = _$_object_spread.threshold, zIndex = _$_object_spread.zIndex, className = _$_object_spread.className, duration = _$_object_spread.duration, style = _$_object_spread.style, scrollRes = _$_object_spread.scrollRes, onClick = _$_object_spread.onClick;
20
23
  var classPrefix = 'nut-backtop';
21
- var _useState = _sliced_to_array(useState(false), 2), backTop = _useState[0], SetBackTop = _useState[1];
22
- // 监听用户滑动页面事件
23
- usePageScroll(function(res) {
24
+ var _useState = _sliced_to_array(useState(false), 2), backTop = _useState[0], setBackTop = _useState[1];
25
+ var _useState1 = _sliced_to_array(useState(false), 2), isTouchStart = _useState1[0], setTouchStart = _useState1[1];
26
+ var _obj;
27
+ var cls = classNames(classPrefix, (_obj = {}, _define_property(_obj, "".concat(classPrefix, "-show"), backTop), _define_property(_obj, "".concat(classPrefix, "-show-active"), isNative && isTouchStart), _define_property(_obj, "".concat(classPrefix, "-rn"), rn()), _obj), className);
28
+ var systemInfo = useRef({});
29
+ useEffect(function() {
30
+ getSystemInfo().then(function(res) {
31
+ systemInfo.current = res;
32
+ });
33
+ }, []);
34
+ var handleActiveStart = useCallback(function() {
35
+ isNative && setTouchStart(true);
36
+ }, []);
37
+ var handleActiveEnd = useCallback(function() {
38
+ isNative && setTouchStart(false);
39
+ }, []);
40
+ var onScroll = useCallback(function(res) {
24
41
  var scrollTop = res.scrollTop;
25
- scrollTop >= threshold ? SetBackTop(true) : SetBackTop(false);
26
- });
42
+ setBackTop(scrollTop >= threshold);
43
+ }, [
44
+ threshold
45
+ ]);
46
+ // 监听用户滑动页面事件
47
+ usePageScroll(onScroll);
48
+ useEffect(function() {
49
+ if (!scrollRes) return;
50
+ onScroll(scrollRes);
51
+ }, [
52
+ onScroll,
53
+ scrollRes
54
+ ]);
27
55
  // 返回顶部点击事件
28
- var goTop = function(e) {
29
- onClick && onClick(e);
56
+ var goTop = useCallback(function(e) {
57
+ onClick === null || onClick === void 0 ? void 0 : onClick(e);
30
58
  pageScrollTo({
31
59
  scrollTop: 0,
32
60
  duration: duration > 0 ? duration : 0
33
61
  });
34
- };
35
- var _obj;
36
- var styles = Object.keys(style || {}).length !== 0 ? _object_spread({
37
- zIndex: zIndex
38
- }, style) : (_obj = {}, _define_property(_obj, rtl ? 'left' : 'right', '10px'), _define_property(_obj, "bottom", '20px'), _define_property(_obj, "zIndex", zIndex), _obj);
62
+ }, [
63
+ duration,
64
+ onClick
65
+ ]);
66
+ var styles = useMemo(function() {
67
+ var _obj;
68
+ return Object.keys(style || {}).length !== 0 ? _object_spread({
69
+ zIndex: zIndex
70
+ }, style) : (_obj = {}, _define_property(_obj, rtl ? 'left' : 'right', pxTransform(10)), _define_property(_obj, "bottom", pxTransform(20)), _define_property(_obj, "zIndex", zIndex), _obj);
71
+ }, [
72
+ rtl,
73
+ style,
74
+ zIndex
75
+ ]);
39
76
  return /*#__PURE__*/ React.createElement(View, {
40
- className: classNames(classPrefix, {
41
- show: backTop
42
- }, className),
77
+ className: cls,
43
78
  style: styles,
44
79
  onClick: function(e) {
45
80
  goTop(e);
46
- }
81
+ },
82
+ onTouchStart: handleActiveStart,
83
+ onTouchEnd: handleActiveEnd,
84
+ onTouchCancel: handleActiveEnd
47
85
  }, children || /*#__PURE__*/ React.createElement(Top, {
48
86
  size: 19,
49
87
  className: "nut-backtop-main"
@@ -2,7 +2,11 @@
2
2
  display: none;
3
3
  position: fixed;
4
4
 
5
- &.show {
5
+ &-rn {
6
+ position: absolute;
7
+ }
8
+
9
+ &-show {
6
10
  width: 40px;
7
11
  height: 40px;
8
12
  display: flex;
@@ -11,9 +15,11 @@
11
15
  background: $color-background-overlay;
12
16
  color: $color-title;
13
17
  border: 1px solid $backtop-border-color;
14
- border-radius: 50%;
18
+ border-radius: 21px;
19
+ z-index: 100;
15
20
 
16
- &:active {
21
+ &:active,
22
+ &-active {
17
23
  background: $color-background;
18
24
  }
19
25
  }
@@ -2,21 +2,25 @@
2
2
  display: none;
3
3
  position: fixed;
4
4
  }
5
- .nut-backtop.show {
5
+ .nut-backtop-rn {
6
+ position: absolute;
7
+ }
8
+ .nut-backtop-show {
6
9
  width: 40px;
7
10
  height: 40px;
8
11
  display: flex;
9
12
  align-items: center;
10
13
  justify-content: center;
11
- background: var(--nutui-gray-1, #ffffff);
12
- color: var(--nutui-gray-7, #1a1a1a);
13
- border: 1px solid var(--nutui-backtop-border-color, var(--nutui-black-3, rgba(0, 0, 0, 0.06)));
14
- border-radius: 50%;
14
+ background: var(--nutui-color-background-overlay, #ffffff);
15
+ color: var(--nutui-color-title, #1a1a1a);
16
+ border: 1px solid var(--nutui-backtop-border-color, var(--nutui-color-border, rgba(0, 0, 0, 0.06)));
17
+ border-radius: 21px;
18
+ z-index: 100;
15
19
  }
16
- .nut-backtop.show:active {
17
- background: var(--nutui-gray-3, #f5f6fa);
20
+ .nut-backtop-show:active, .nut-backtop-show-active {
21
+ background: var(--nutui-color-background, #f5f6fa);
18
22
  }
19
23
  .nut-backtop-main {
20
24
  transition: all 0.2s ease-in-out;
21
- color: var(--nutui-gray-7, #1a1a1a);
25
+ color: var(--nutui-color-title, #1a1a1a);
22
26
  }
@@ -2,21 +2,28 @@
2
2
  display: none;
3
3
  position: fixed;
4
4
  }
5
- .nut-backtop.show {
5
+ .nut-backtop-rn {
6
+ position: absolute;
7
+ }
8
+ .nut-backtop-show {
6
9
  width: 40px;
7
10
  height: 40px;
8
11
  display: flex;
9
12
  align-items: center;
10
13
  justify-content: center;
11
14
  background: #ffffff;
12
- color: #1A1A1A;
15
+ color: #1a1a1a;
13
16
  border: 1px solid rgba(0, 0, 0, 0.06);
14
- border-radius: 50%;
17
+ border-radius: 21px;
18
+ z-index: 100;
19
+ }
20
+ .nut-backtop-show:active {
21
+ background: #f5f6fa;
15
22
  }
16
- .nut-backtop.show:active {
17
- background: #F7F8FC;
23
+ .nut-backtop-show-active {
24
+ background: #f5f6fa;
18
25
  }
19
26
  .nut-backtop-main {
20
27
  transition: all 0.2s ease-in-out;
21
- color: #1A1A1A;
28
+ color: #1a1a1a;
22
29
  }
@@ -30,7 +30,7 @@
30
30
  background: var(--nutui-badge-background-color, linear-gradient(135deg, var(--nutui-color-primary-stop-1, #ff475d) 0%, var(--nutui-color-primary-stop-2, #ff0f23) 100%));
31
31
  color: var(--nutui-badge-color, #fff);
32
32
  padding: var(--nutui-badge-padding, 0 4px);
33
- font-size: var(--nutui-badge-font-size, var(--nutui-font-size-1, 10px));
33
+ font-size: var(--nutui-badge-font-size, var(--nutui-font-size-xxs, 10px));
34
34
  font-weight: normal;
35
35
  text-align: center;
36
36
  border: var(--nutui-badge-border, 0px solid var(--nutui-color-primary-text, #ffffff));