@nutui/nutui-react-taro 3.0.19 → 3.0.20-cpp

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 (452) hide show
  1. package/CHANGELOG.md +28 -59
  2. package/dist/cjs/hooks/taro/use-custom-event.js +5 -5
  3. package/dist/cjs/hooks/use-ref-state.js +3 -3
  4. package/dist/cjs/hooks/use-touch.js +1 -2
  5. package/dist/cjs/locales/base.d.ts +9 -0
  6. package/dist/cjs/locales/en-US.js +21 -2
  7. package/dist/cjs/locales/id-ID.js +21 -2
  8. package/dist/cjs/locales/ja-JP.js +19 -2
  9. package/dist/cjs/locales/tr-TR.js +21 -2
  10. package/dist/cjs/locales/zh-CN.js +19 -2
  11. package/dist/cjs/locales/zh-TW.js +19 -2
  12. package/dist/cjs/locales/zh-UG.js +21 -2
  13. package/dist/cjs/packages/actionsheet/style/style.harmony.css +38 -17
  14. package/dist/cjs/packages/address/address.d.ts +1 -1
  15. package/dist/cjs/packages/address/style/style.harmony.css +38 -17
  16. package/dist/cjs/packages/address/utils.js +3 -3
  17. package/dist/cjs/packages/animatingnumbers/countup.js +3 -1
  18. package/dist/cjs/packages/audio/style/style.harmony.css +0 -3
  19. package/dist/cjs/packages/avatar/avatar.js +32 -6
  20. package/dist/cjs/packages/avatarcropper/avatarcropper.js +18 -34
  21. package/dist/cjs/packages/badge/badge.js +20 -10
  22. package/dist/cjs/packages/barrage/barrage.js +14 -24
  23. package/dist/cjs/packages/button/button.d.ts +2 -24
  24. package/dist/cjs/packages/button/button.js +9 -12
  25. package/dist/cjs/packages/button/index.d.ts +0 -1
  26. package/dist/cjs/packages/button/style/button.scss +0 -3
  27. package/dist/cjs/packages/button/style/style.css +0 -3
  28. package/dist/cjs/packages/button/style/style.harmony.css +0 -3
  29. package/dist/cjs/packages/button/style-jmapp/button.scss +0 -3
  30. package/dist/cjs/packages/button/style-jmapp/style.css +0 -3
  31. package/dist/cjs/packages/button/style-jrkf/button.scss +0 -3
  32. package/dist/cjs/packages/button/style-jrkf/style.css +0 -3
  33. package/dist/cjs/packages/calendar/style/calendar.scss +32 -1
  34. package/dist/cjs/packages/calendar/style/style.css +21 -1
  35. package/dist/cjs/packages/calendar/style/style.harmony.css +59 -18
  36. package/dist/cjs/packages/calendar/style-jmapp/calendar.scss +32 -1
  37. package/dist/cjs/packages/calendar/style-jmapp/style.css +21 -1
  38. package/dist/cjs/packages/calendar/style-jrkf/calendar.scss +32 -1
  39. package/dist/cjs/packages/calendar/style-jrkf/style.css +21 -1
  40. package/dist/cjs/packages/calendar/utils.js +8 -8
  41. package/dist/cjs/packages/calendarcard/calendarcard.js +30 -8
  42. package/dist/cjs/packages/calendarcard/icon.js +17 -28
  43. package/dist/cjs/packages/calendarcard/style/calendarcard.scss +19 -0
  44. package/dist/cjs/packages/calendarcard/style/style.css +13 -0
  45. package/dist/cjs/packages/calendarcard/style/style.harmony.css +13 -0
  46. package/dist/cjs/packages/calendarcard/style-jmapp/calendarcard.scss +19 -0
  47. package/dist/cjs/packages/calendarcard/style-jmapp/style.css +13 -0
  48. package/dist/cjs/packages/calendarcard/style-jrkf/calendarcard.scss +19 -0
  49. package/dist/cjs/packages/calendarcard/style-jrkf/style.css +13 -0
  50. package/dist/cjs/packages/calendarcard/utils.js +6 -6
  51. package/dist/cjs/packages/card/style/style.harmony.css +1 -1
  52. package/dist/cjs/packages/cascader/cascader.js +12 -21
  53. package/dist/cjs/packages/cascader/style/style.harmony.css +38 -17
  54. package/dist/cjs/packages/cascader/utils.js +3 -3
  55. package/dist/cjs/packages/collapseitem/collapseitem.js +4 -7
  56. package/dist/cjs/packages/configprovider/configprovider.js +7 -7
  57. package/dist/cjs/packages/configprovider/index.js +6 -6
  58. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  59. package/dist/cjs/packages/countdown/countdown.js +1 -2
  60. package/dist/cjs/packages/datepicker/style/style.harmony.css +39 -18
  61. package/dist/cjs/packages/datepicker/utils.js +9 -9
  62. package/dist/cjs/packages/dialog/content.js +3 -3
  63. package/dist/cjs/packages/dialog/dialog.js +26 -23
  64. package/dist/cjs/packages/dialog/style/dialog.scss +1 -1
  65. package/dist/cjs/packages/dialog/style/style.css +1 -1
  66. package/dist/cjs/packages/dialog/style/style.harmony.css +1 -4
  67. package/dist/cjs/packages/dialog/style-jmapp/dialog.scss +1 -1
  68. package/dist/cjs/packages/dialog/style-jmapp/style.css +1 -1
  69. package/dist/cjs/packages/dialog/style-jrkf/dialog.scss +1 -1
  70. package/dist/cjs/packages/dialog/style-jrkf/style.css +1 -1
  71. package/dist/cjs/packages/divider/divider.js +2 -2
  72. package/dist/cjs/packages/drag/drag.js +4 -7
  73. package/dist/cjs/packages/elevator/elevator.js +7 -10
  74. package/dist/cjs/packages/ellipsis/ellipsis.js +17 -30
  75. package/dist/cjs/packages/empty/empty.d.ts +4 -4
  76. package/dist/cjs/packages/empty/style/style.harmony.css +0 -3
  77. package/dist/cjs/packages/form/index.js +0 -2
  78. package/dist/cjs/packages/form/style/style.harmony.css +0 -5
  79. package/dist/cjs/packages/form/useform.js +50 -57
  80. package/dist/cjs/packages/formitem/style/formitem.scss +4 -4
  81. package/dist/cjs/packages/formitem/style/style.css +0 -5
  82. package/dist/cjs/packages/formitem/style/style.harmony.css +0 -5
  83. package/dist/cjs/packages/formitem/style-jmapp/formitem.scss +4 -4
  84. package/dist/cjs/packages/formitem/style-jmapp/style.css +0 -5
  85. package/dist/cjs/packages/formitem/style-jrkf/formitem.scss +4 -4
  86. package/dist/cjs/packages/formitem/style-jrkf/style.css +0 -5
  87. package/dist/cjs/packages/image/image.js +11 -3
  88. package/dist/cjs/packages/imagepreview/style/style.harmony.css +38 -17
  89. package/dist/cjs/packages/infiniteloading/infiniteloading.js +8 -14
  90. package/dist/cjs/packages/input/input.js +10 -3
  91. package/dist/cjs/packages/inputnumber/inputnumber.js +17 -29
  92. package/dist/cjs/packages/lottie/lottiemp.js +10 -18
  93. package/dist/cjs/packages/lottie/types.js +0 -2
  94. package/dist/cjs/packages/menuitem/menuitem.js +24 -22
  95. package/dist/cjs/packages/noticebar/noticebar.js +74 -70
  96. package/dist/cjs/packages/notify/notify.js +4 -4
  97. package/dist/cjs/packages/numberkeyboard/style/style.css +1 -1
  98. package/dist/cjs/packages/numberkeyboard/style/style.harmony.css +39 -18
  99. package/dist/cjs/packages/nutui.react.build.d.ts +3 -1
  100. package/dist/cjs/packages/nutui.react.build.js +123 -119
  101. package/dist/cjs/packages/nutui.react.d.ts +4 -1
  102. package/dist/cjs/packages/nutui.react.js +124 -119
  103. package/dist/cjs/packages/nutui.react.scss.d.ts +1 -0
  104. package/dist/cjs/packages/nutui.react.scss.js +1 -0
  105. package/dist/cjs/packages/overlay/overlay.js +6 -6
  106. package/dist/cjs/packages/picker/style/style.css +1 -1
  107. package/dist/cjs/packages/picker/style/style.harmony.css +39 -18
  108. package/dist/cjs/packages/pickerview/pickerroller.js +4 -7
  109. package/dist/cjs/packages/pickerview/pickerview.js +1 -2
  110. package/dist/cjs/packages/pickerview/utils.js +3 -3
  111. package/dist/cjs/packages/popover/popover.js +75 -77
  112. package/dist/cjs/packages/popover/style/style.harmony.css +38 -17
  113. package/dist/cjs/packages/popup/popup.js +192 -113
  114. package/dist/cjs/packages/popup/style/popup.scss +22 -1
  115. package/dist/cjs/packages/popup/style/style.css +38 -17
  116. package/dist/cjs/packages/popup/style/style.harmony.css +38 -17
  117. package/dist/cjs/packages/popup/style-jmapp/popup.scss +22 -1
  118. package/dist/cjs/packages/popup/style-jmapp/style.css +22 -1
  119. package/dist/cjs/packages/popup/style-jrkf/popup.scss +22 -1
  120. package/dist/cjs/packages/popup/style-jrkf/style.css +22 -1
  121. package/dist/cjs/packages/price/price.js +52 -13
  122. package/dist/cjs/packages/progress/progress.js +2 -4
  123. package/dist/cjs/packages/pulltorefresh/pulltorefresh.js +52 -56
  124. package/dist/cjs/packages/quickenter/index.d.ts +3 -0
  125. package/dist/cjs/packages/quickenter/index.js +13 -0
  126. package/dist/cjs/packages/quickenter/quickenter.d.ts +4 -0
  127. package/dist/cjs/packages/quickenter/quickenter.js +153 -0
  128. package/dist/cjs/packages/quickenter/style/css.js +2 -0
  129. package/dist/cjs/packages/quickenter/style/index.js +2 -0
  130. package/dist/cjs/packages/quickenter/style/quickenter.scss +120 -0
  131. package/dist/cjs/packages/quickenter/style/style.css +106 -0
  132. package/dist/cjs/packages/quickenter/style/style.harmony.css +506 -0
  133. package/dist/cjs/packages/quickenter/style-jmapp/css.js +2 -0
  134. package/dist/cjs/packages/quickenter/style-jmapp/index.js +2 -0
  135. package/dist/cjs/packages/quickenter/style-jmapp/quickenter.scss +120 -0
  136. package/dist/cjs/packages/quickenter/style-jmapp/style.css +106 -0
  137. package/dist/cjs/packages/quickenter/style-jrkf/css.js +2 -0
  138. package/dist/cjs/packages/quickenter/style-jrkf/index.js +2 -0
  139. package/dist/cjs/packages/quickenter/style-jrkf/quickenter.scss +120 -0
  140. package/dist/cjs/packages/quickenter/style-jrkf/style.css +106 -0
  141. package/dist/cjs/packages/radio/index.js +0 -2
  142. package/dist/cjs/packages/range/range.js +44 -28
  143. package/dist/cjs/packages/rate/rate.js +5 -8
  144. package/dist/cjs/packages/resultpage/resultpage.js +2 -1
  145. package/dist/cjs/packages/resultpage/style/style.harmony.css +0 -3
  146. package/dist/cjs/packages/searchbar/searchbar.js +23 -9
  147. package/dist/cjs/packages/shortpassword/shortpassword.js +3 -3
  148. package/dist/cjs/packages/shortpassword/style/style.harmony.css +38 -17
  149. package/dist/cjs/packages/step/step.js +3 -8
  150. package/dist/cjs/packages/step/style/step.scss +0 -2
  151. package/dist/cjs/packages/step/style/style.css +0 -2
  152. package/dist/cjs/packages/step/style/style.harmony.css +0 -2
  153. package/dist/cjs/packages/step/style-jmapp/step.scss +0 -2
  154. package/dist/cjs/packages/step/style-jmapp/style.css +0 -2
  155. package/dist/cjs/packages/step/style-jrkf/step.scss +0 -2
  156. package/dist/cjs/packages/step/style-jrkf/style.css +0 -2
  157. package/dist/cjs/packages/steps/style/steps.scss +10 -3
  158. package/dist/cjs/packages/steps/style/style.css +13 -7
  159. package/dist/cjs/packages/steps/style/style.harmony.css +13 -9
  160. package/dist/cjs/packages/steps/style-jmapp/steps.scss +10 -3
  161. package/dist/cjs/packages/steps/style-jmapp/style.css +9 -3
  162. package/dist/cjs/packages/steps/style-jrkf/steps.scss +10 -3
  163. package/dist/cjs/packages/steps/style-jrkf/style.css +9 -3
  164. package/dist/cjs/packages/sticky/sticky.js +4 -7
  165. package/dist/cjs/packages/swipe/swipe.js +84 -122
  166. package/dist/cjs/packages/swiper/index.js +0 -1
  167. package/dist/cjs/packages/switch/switch.js +4 -7
  168. package/dist/cjs/packages/table/style/style.css +1 -1
  169. package/dist/cjs/packages/table/style/style.harmony.css +1 -1
  170. package/dist/cjs/packages/table/style/table.scss +1 -1
  171. package/dist/cjs/packages/table/style-jmapp/style.css +1 -1
  172. package/dist/cjs/packages/table/style-jmapp/table.scss +1 -1
  173. package/dist/cjs/packages/table/style-jrkf/style.css +1 -1
  174. package/dist/cjs/packages/table/style-jrkf/table.scss +1 -1
  175. package/dist/cjs/packages/tabs/tabs.js +12 -5
  176. package/dist/cjs/packages/tag/style/style.css +1 -1
  177. package/dist/cjs/packages/tag/style/style.harmony.css +1 -1
  178. package/dist/cjs/packages/tag/style/tag.scss +1 -1
  179. package/dist/cjs/packages/tag/style-jmapp/style.css +1 -1
  180. package/dist/cjs/packages/tag/style-jmapp/tag.scss +1 -1
  181. package/dist/cjs/packages/tag/style-jrkf/style.css +1 -1
  182. package/dist/cjs/packages/tag/style-jrkf/tag.scss +1 -1
  183. package/dist/cjs/packages/timeselect/style/style.harmony.css +38 -17
  184. package/dist/cjs/packages/toast/style/style.css +2 -4
  185. package/dist/cjs/packages/toast/style/style.harmony.css +2 -4
  186. package/dist/cjs/packages/toast/style/toast.scss +2 -4
  187. package/dist/cjs/packages/toast/style-jmapp/style.css +2 -4
  188. package/dist/cjs/packages/toast/style-jmapp/toast.scss +2 -4
  189. package/dist/cjs/packages/toast/style-jrkf/style.css +2 -4
  190. package/dist/cjs/packages/toast/style-jrkf/toast.scss +2 -4
  191. package/dist/cjs/packages/toast/toast.js +5 -5
  192. package/dist/cjs/packages/tour/style/style.harmony.css +38 -17
  193. package/dist/cjs/packages/uploader/uploader.js +38 -51
  194. package/dist/cjs/packages/virtuallist/utils.js +6 -6
  195. package/dist/cjs/packages/watermark/watermark.js +4 -8
  196. package/dist/cjs/types/index.d.ts +3 -0
  197. package/dist/cjs/types/index.js +3 -0
  198. package/dist/cjs/types/spec/address/base.js +0 -2
  199. package/dist/cjs/types/spec/button/base.d.ts +2 -1
  200. package/dist/cjs/types/spec/button/taro.d.ts +5 -1
  201. package/dist/cjs/types/spec/calendarcard/base.d.ts +2 -0
  202. package/dist/cjs/types/spec/dialog/base.d.ts +1 -0
  203. package/dist/cjs/types/spec/dialog/h5.d.ts +2 -0
  204. package/dist/cjs/types/spec/dialog/taro.d.ts +2 -0
  205. package/dist/cjs/types/spec/overlay/base.d.ts +1 -0
  206. package/dist/cjs/types/spec/popup/base.d.ts +2 -0
  207. package/dist/cjs/types/spec/price/base.d.ts +1 -0
  208. package/dist/cjs/types/spec/quickenter/base.d.ts +27 -0
  209. package/dist/cjs/types/spec/quickenter/base.js +4 -0
  210. package/dist/cjs/types/spec/quickenter/h5.d.ts +5 -0
  211. package/dist/cjs/types/spec/quickenter/h5.js +4 -0
  212. package/dist/cjs/types/spec/quickenter/taro.d.ts +5 -0
  213. package/dist/cjs/types/spec/quickenter/taro.js +4 -0
  214. package/dist/cjs/utils/date.js +5 -5
  215. package/dist/cjs/utils/event-mocker.js +10 -18
  216. package/dist/cjs/utils/get-rect.js +4 -4
  217. package/dist/cjs/utils/get-scroll-parent.js +3 -3
  218. package/dist/cjs/utils/merge-props.js +3 -3
  219. package/dist/cjs/utils/merge.js +6 -6
  220. package/dist/cjs/utils/raf.js +3 -3
  221. package/dist/cjs/utils/render.js +5 -9
  222. package/dist/cjs/utils/rubberband.js +3 -3
  223. package/dist/cjs/utils/should-render-price-raw.d.ts +2 -0
  224. package/dist/cjs/utils/should-render-price-raw.js +46 -0
  225. package/dist/cjs/utils/taro/ConfigurableCSSTransition.d.ts +15 -0
  226. package/dist/cjs/utils/taro/ConfigurableCSSTransition.js +90 -0
  227. package/dist/cjs/utils/taro/get-rect.js +18 -26
  228. package/dist/cjs/utils/taro/get-system-info.d.ts +0 -5
  229. package/dist/cjs/utils/taro/get-system-info.js +5 -10
  230. package/dist/cjs/utils/taro/platform.js +5 -5
  231. package/dist/es/hooks/taro/use-custom-event.js +1 -0
  232. package/dist/es/hooks/use-touch.js +1 -1
  233. package/dist/es/locales/base.d.ts +9 -0
  234. package/dist/es/locales/en-US.js +21 -2
  235. package/dist/es/locales/id-ID.js +21 -2
  236. package/dist/es/locales/ja-JP.js +19 -2
  237. package/dist/es/locales/tr-TR.js +21 -2
  238. package/dist/es/locales/zh-CN.js +19 -2
  239. package/dist/es/locales/zh-TW.js +19 -2
  240. package/dist/es/locales/zh-UG.js +21 -2
  241. package/dist/es/packages/actionsheet/style/style.harmony.css +38 -17
  242. package/dist/es/packages/address/address.d.ts +1 -1
  243. package/dist/es/packages/address/style/style.harmony.css +38 -17
  244. package/dist/es/packages/animatingnumbers/countup.js +3 -1
  245. package/dist/es/packages/audio/style/style.harmony.css +0 -3
  246. package/dist/es/packages/avatar/avatar.js +32 -6
  247. package/dist/es/packages/avatarcropper/avatarcropper.js +20 -36
  248. package/dist/es/packages/badge/badge.js +20 -10
  249. package/dist/es/packages/barrage/barrage.js +14 -24
  250. package/dist/es/packages/button/button.d.ts +2 -24
  251. package/dist/es/packages/button/button.js +10 -12
  252. package/dist/es/packages/button/index.d.ts +0 -1
  253. package/dist/es/packages/button/style/button.scss +0 -3
  254. package/dist/es/packages/button/style/style.css +0 -3
  255. package/dist/es/packages/button/style/style.harmony.css +0 -3
  256. package/dist/es/packages/button/style-jmapp/button.scss +0 -3
  257. package/dist/es/packages/button/style-jmapp/style.css +0 -3
  258. package/dist/es/packages/button/style-jrkf/button.scss +0 -3
  259. package/dist/es/packages/button/style-jrkf/style.css +0 -3
  260. package/dist/es/packages/calendar/style/calendar.scss +32 -1
  261. package/dist/es/packages/calendar/style/style.css +21 -1
  262. package/dist/es/packages/calendar/style/style.harmony.css +59 -18
  263. package/dist/es/packages/calendar/style-jmapp/calendar.scss +32 -1
  264. package/dist/es/packages/calendar/style-jmapp/style.css +21 -1
  265. package/dist/es/packages/calendar/style-jrkf/calendar.scss +32 -1
  266. package/dist/es/packages/calendar/style-jrkf/style.css +21 -1
  267. package/dist/es/packages/calendarcard/calendarcard.js +31 -9
  268. package/dist/es/packages/calendarcard/icon.js +13 -24
  269. package/dist/es/packages/calendarcard/style/calendarcard.scss +19 -0
  270. package/dist/es/packages/calendarcard/style/style.css +13 -0
  271. package/dist/es/packages/calendarcard/style/style.harmony.css +13 -0
  272. package/dist/es/packages/calendarcard/style-jmapp/calendarcard.scss +19 -0
  273. package/dist/es/packages/calendarcard/style-jmapp/style.css +13 -0
  274. package/dist/es/packages/calendarcard/style-jrkf/calendarcard.scss +19 -0
  275. package/dist/es/packages/calendarcard/style-jrkf/style.css +13 -0
  276. package/dist/es/packages/card/style/style.harmony.css +1 -1
  277. package/dist/es/packages/cascader/cascader.js +12 -21
  278. package/dist/es/packages/cascader/style/style.harmony.css +38 -17
  279. package/dist/es/packages/collapseitem/collapseitem.js +4 -7
  280. package/dist/es/packages/configprovider/types.d.ts +1 -1
  281. package/dist/es/packages/countdown/countdown.js +1 -2
  282. package/dist/es/packages/datepicker/style/style.harmony.css +39 -18
  283. package/dist/es/packages/dialog/dialog.js +33 -28
  284. package/dist/es/packages/dialog/style/dialog.scss +1 -1
  285. package/dist/es/packages/dialog/style/style.css +1 -1
  286. package/dist/es/packages/dialog/style/style.harmony.css +1 -4
  287. package/dist/es/packages/dialog/style-jmapp/dialog.scss +1 -1
  288. package/dist/es/packages/dialog/style-jmapp/style.css +1 -1
  289. package/dist/es/packages/dialog/style-jrkf/dialog.scss +1 -1
  290. package/dist/es/packages/dialog/style-jrkf/style.css +1 -1
  291. package/dist/es/packages/divider/divider.js +1 -1
  292. package/dist/es/packages/drag/drag.js +4 -7
  293. package/dist/es/packages/elevator/elevator.js +4 -7
  294. package/dist/es/packages/ellipsis/ellipsis.js +17 -30
  295. package/dist/es/packages/empty/empty.d.ts +4 -4
  296. package/dist/es/packages/empty/style/style.harmony.css +0 -3
  297. package/dist/es/packages/form/index.js +0 -1
  298. package/dist/es/packages/form/style/style.harmony.css +0 -5
  299. package/dist/es/packages/form/useform.js +46 -53
  300. package/dist/es/packages/formitem/style/formitem.scss +4 -4
  301. package/dist/es/packages/formitem/style/style.css +0 -5
  302. package/dist/es/packages/formitem/style/style.harmony.css +0 -5
  303. package/dist/es/packages/formitem/style-jmapp/formitem.scss +4 -4
  304. package/dist/es/packages/formitem/style-jmapp/style.css +0 -5
  305. package/dist/es/packages/formitem/style-jrkf/formitem.scss +4 -4
  306. package/dist/es/packages/formitem/style-jrkf/style.css +0 -5
  307. package/dist/es/packages/image/image.js +11 -3
  308. package/dist/es/packages/imagepreview/style/style.harmony.css +38 -17
  309. package/dist/es/packages/infiniteloading/infiniteloading.js +8 -14
  310. package/dist/es/packages/input/input.js +10 -3
  311. package/dist/es/packages/inputnumber/inputnumber.js +17 -29
  312. package/dist/es/packages/lottie/lottiemp.js +12 -20
  313. package/dist/es/packages/lottie/types.js +1 -1
  314. package/dist/es/packages/menuitem/menuitem.js +24 -22
  315. package/dist/es/packages/noticebar/noticebar.js +74 -70
  316. package/dist/es/packages/numberkeyboard/style/style.css +1 -1
  317. package/dist/es/packages/numberkeyboard/style/style.harmony.css +39 -18
  318. package/dist/es/packages/nutui.react.build.d.ts +3 -1
  319. package/dist/es/packages/nutui.react.build.js +3 -1
  320. package/dist/es/packages/overlay/overlay.js +3 -3
  321. package/dist/es/packages/picker/style/style.css +1 -1
  322. package/dist/es/packages/picker/style/style.harmony.css +39 -18
  323. package/dist/es/packages/pickerview/pickerroller.js +4 -7
  324. package/dist/es/packages/pickerview/pickerview.js +1 -2
  325. package/dist/es/packages/popover/popover.js +75 -77
  326. package/dist/es/packages/popover/style/style.harmony.css +38 -17
  327. package/dist/es/packages/popup/popup.js +193 -114
  328. package/dist/es/packages/popup/style/popup.scss +22 -1
  329. package/dist/es/packages/popup/style/style.css +38 -17
  330. package/dist/es/packages/popup/style/style.harmony.css +38 -17
  331. package/dist/es/packages/popup/style-jmapp/popup.scss +22 -1
  332. package/dist/es/packages/popup/style-jmapp/style.css +22 -1
  333. package/dist/es/packages/popup/style-jrkf/popup.scss +22 -1
  334. package/dist/es/packages/popup/style-jrkf/style.css +22 -1
  335. package/dist/es/packages/price/price.js +53 -14
  336. package/dist/es/packages/progress/progress.js +2 -4
  337. package/dist/es/packages/pulltorefresh/pulltorefresh.js +52 -56
  338. package/dist/es/packages/quickenter/index.d.ts +3 -0
  339. package/dist/es/packages/quickenter/index.js +2 -0
  340. package/dist/es/packages/quickenter/quickenter.d.ts +4 -0
  341. package/dist/es/packages/quickenter/quickenter.js +141 -0
  342. package/dist/es/packages/quickenter/style/css.js +2 -0
  343. package/dist/es/packages/quickenter/style/index.js +2 -0
  344. package/dist/es/packages/quickenter/style/quickenter.scss +120 -0
  345. package/dist/es/packages/quickenter/style/style.css +106 -0
  346. package/dist/es/packages/quickenter/style/style.harmony.css +506 -0
  347. package/dist/es/packages/quickenter/style-jmapp/css.js +2 -0
  348. package/dist/es/packages/quickenter/style-jmapp/index.js +2 -0
  349. package/dist/es/packages/quickenter/style-jmapp/quickenter.scss +120 -0
  350. package/dist/es/packages/quickenter/style-jmapp/style.css +106 -0
  351. package/dist/es/packages/quickenter/style-jrkf/css.js +2 -0
  352. package/dist/es/packages/quickenter/style-jrkf/index.js +2 -0
  353. package/dist/es/packages/quickenter/style-jrkf/quickenter.scss +120 -0
  354. package/dist/es/packages/quickenter/style-jrkf/style.css +106 -0
  355. package/dist/es/packages/radio/index.js +0 -1
  356. package/dist/es/packages/range/range.js +45 -29
  357. package/dist/es/packages/rate/rate.js +6 -9
  358. package/dist/es/packages/resultpage/resultpage.js +2 -1
  359. package/dist/es/packages/resultpage/style/style.harmony.css +0 -3
  360. package/dist/es/packages/searchbar/searchbar.js +23 -9
  361. package/dist/es/packages/shortpassword/style/style.harmony.css +38 -17
  362. package/dist/es/packages/step/step.js +3 -8
  363. package/dist/es/packages/step/style/step.scss +0 -2
  364. package/dist/es/packages/step/style/style.css +0 -2
  365. package/dist/es/packages/step/style/style.harmony.css +0 -2
  366. package/dist/es/packages/step/style-jmapp/step.scss +0 -2
  367. package/dist/es/packages/step/style-jmapp/style.css +0 -2
  368. package/dist/es/packages/step/style-jrkf/step.scss +0 -2
  369. package/dist/es/packages/step/style-jrkf/style.css +0 -2
  370. package/dist/es/packages/steps/style/steps.scss +10 -3
  371. package/dist/es/packages/steps/style/style.css +13 -7
  372. package/dist/es/packages/steps/style/style.harmony.css +13 -9
  373. package/dist/es/packages/steps/style-jmapp/steps.scss +10 -3
  374. package/dist/es/packages/steps/style-jmapp/style.css +9 -3
  375. package/dist/es/packages/steps/style-jrkf/steps.scss +10 -3
  376. package/dist/es/packages/steps/style-jrkf/style.css +9 -3
  377. package/dist/es/packages/sticky/sticky.js +4 -7
  378. package/dist/es/packages/swipe/swipe.js +85 -123
  379. package/dist/es/packages/swiper/index.js +0 -1
  380. package/dist/es/packages/switch/switch.js +4 -7
  381. package/dist/es/packages/table/style/style.css +1 -1
  382. package/dist/es/packages/table/style/style.harmony.css +1 -1
  383. package/dist/es/packages/table/style/table.scss +1 -1
  384. package/dist/es/packages/table/style-jmapp/style.css +1 -1
  385. package/dist/es/packages/table/style-jmapp/table.scss +1 -1
  386. package/dist/es/packages/table/style-jrkf/style.css +1 -1
  387. package/dist/es/packages/table/style-jrkf/table.scss +1 -1
  388. package/dist/es/packages/tabs/tabs.js +12 -5
  389. package/dist/es/packages/tag/style/style.css +1 -1
  390. package/dist/es/packages/tag/style/style.harmony.css +1 -1
  391. package/dist/es/packages/tag/style/tag.scss +1 -1
  392. package/dist/es/packages/tag/style-jmapp/style.css +1 -1
  393. package/dist/es/packages/tag/style-jmapp/tag.scss +1 -1
  394. package/dist/es/packages/tag/style-jrkf/style.css +1 -1
  395. package/dist/es/packages/tag/style-jrkf/tag.scss +1 -1
  396. package/dist/es/packages/timeselect/style/style.harmony.css +38 -17
  397. package/dist/es/packages/toast/style/style.css +2 -4
  398. package/dist/es/packages/toast/style/style.harmony.css +2 -4
  399. package/dist/es/packages/toast/style/toast.scss +2 -4
  400. package/dist/es/packages/toast/style-jmapp/style.css +2 -4
  401. package/dist/es/packages/toast/style-jmapp/toast.scss +2 -4
  402. package/dist/es/packages/toast/style-jrkf/style.css +2 -4
  403. package/dist/es/packages/toast/style-jrkf/toast.scss +2 -4
  404. package/dist/es/packages/toast/toast.js +1 -1
  405. package/dist/es/packages/tour/style/style.harmony.css +38 -17
  406. package/dist/es/packages/uploader/uploader.js +38 -51
  407. package/dist/es/packages/watermark/watermark.js +4 -8
  408. package/dist/es/types/index.d.ts +3 -0
  409. package/dist/es/types/index.js +3 -0
  410. package/dist/es/types/spec/address/base.js +1 -1
  411. package/dist/es/types/spec/button/base.d.ts +2 -1
  412. package/dist/es/types/spec/button/taro.d.ts +5 -1
  413. package/dist/es/types/spec/calendarcard/base.d.ts +2 -0
  414. package/dist/es/types/spec/dialog/base.d.ts +3 -8
  415. package/dist/es/types/spec/dialog/h5.d.ts +2 -0
  416. package/dist/es/types/spec/dialog/taro.d.ts +2 -0
  417. package/dist/es/types/spec/overlay/base.d.ts +1 -0
  418. package/dist/es/types/spec/popup/base.d.ts +4 -5
  419. package/dist/es/types/spec/price/base.d.ts +4 -0
  420. package/dist/es/types/spec/quickenter/base.d.ts +45 -0
  421. package/dist/es/types/spec/quickenter/base.js +1 -0
  422. package/dist/es/types/spec/quickenter/h5.d.ts +5 -0
  423. package/dist/es/types/spec/quickenter/h5.js +1 -0
  424. package/dist/es/types/spec/quickenter/taro.d.ts +5 -0
  425. package/dist/es/types/spec/quickenter/taro.js +1 -0
  426. package/dist/es/utils/event-mocker.js +4 -12
  427. package/dist/es/utils/render.js +2 -6
  428. package/dist/es/utils/should-render-price-raw.d.ts +2 -0
  429. package/dist/es/utils/should-render-price-raw.js +30 -0
  430. package/dist/es/utils/taro/ConfigurableCSSTransition.d.ts +15 -0
  431. package/dist/es/utils/taro/ConfigurableCSSTransition.js +79 -0
  432. package/dist/es/utils/taro/get-rect.js +14 -22
  433. package/dist/es/utils/taro/get-system-info.d.ts +0 -5
  434. package/dist/es/utils/taro/get-system-info.js +8 -7
  435. package/dist/nutui.react.umd.js +8698 -7523
  436. package/dist/style-jmapp.css +1 -1
  437. package/dist/style-jmapp.scss +47 -46
  438. package/dist/style-jrkf.css +1 -1
  439. package/dist/style-jrkf.scss +32 -31
  440. package/dist/style.css +1 -1
  441. package/dist/style.scss +32 -31
  442. package/dist/styles/jd-font.scss +2 -2
  443. package/dist/styles/theme-dark.scss +1 -2
  444. package/dist/styles/themes/daojia.css +1 -1
  445. package/dist/styles/themes/dark-daojia.css +1 -1
  446. package/dist/styles/themes/dark.css +1 -1
  447. package/dist/styles/themes/default.css +1 -1
  448. package/dist/styles/variables-daojia.scss +41 -0
  449. package/dist/styles/variables-jmapp.scss +41 -0
  450. package/dist/styles/variables-jrkf.scss +41 -0
  451. package/dist/styles/variables.scss +49 -4
  452. package/package.json +1 -1
@@ -71,7 +71,7 @@
71
71
  align-items: center;
72
72
  justify-content: center;
73
73
  border-bottom: var(--nutui-popup-title-border-bottom, 0);
74
- padding: var(--nutui-popup-title-padding, 16px);
74
+ padding: var(--nutui-popup-title-padding, 11px);
75
75
  position: relative;
76
76
  }
77
77
  .nut-popup-title-wrapper {
@@ -84,7 +84,6 @@
84
84
  color: var(--nutui-color-title, #1a1a1a);
85
85
  font-weight: var(--nutui-font-weight-bold, 600);
86
86
  font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-xl, 18px));
87
- line-height: var(--nutui-popup-title-font-size, var(--nutui-font-size-xl, 18px));
88
87
  }
89
88
  .nut-popup-title-description {
90
89
  color: var(--nutui-color-text, #505259);
@@ -96,13 +95,13 @@
96
95
  }
97
96
  .nut-popup-title-left {
98
97
  position: absolute;
99
- top: var(--nutui-popup-title-padding, 16px);
100
- left: var(--nutui-popup-title-padding, 16px);
98
+ top: var(--nutui-popup-title-padding, 11px);
99
+ left: var(--nutui-popup-title-padding, 11px);
101
100
  }
102
101
  .nut-popup-title-right {
103
102
  position: absolute;
104
- top: var(--nutui-popup-title-padding, 16px);
105
- right: var(--nutui-popup-title-padding, 16px);
103
+ top: var(--nutui-popup-title-padding, 11px);
104
+ right: var(--nutui-popup-title-padding, 11px);
106
105
  z-index: 1;
107
106
  width: var(--nutui-popup-icon-size, 20px);
108
107
  height: var(--nutui-popup-icon-size, 20px);
@@ -113,20 +112,22 @@
113
112
  opacity: 0.7;
114
113
  }
115
114
  .nut-popup-title-right-top-left {
116
- top: var(--nutui-popup-title-padding, 16px);
117
- left: var(--nutui-popup-title-padding, 16px);
115
+ top: var(--nutui-popup-title-padding, 11px);
116
+ left: var(--nutui-popup-title-padding, 11px);
118
117
  }
119
118
  .nut-popup-title-right-bottom-left {
120
- bottom: var(--nutui-popup-title-padding, 16px);
121
- left: var(--nutui-popup-title-padding, 16px);
119
+ bottom: var(--nutui-popup-title-padding, 11px);
120
+ left: var(--nutui-popup-title-padding, 11px);
122
121
  }
123
122
  .nut-popup-title-right-bottom-right {
124
- right: var(--nutui-popup-title-padding, 16px);
125
- bottom: var(--nutui-popup-title-padding, 16px);
123
+ right: var(--nutui-popup-title-padding, 11px);
124
+ bottom: var(--nutui-popup-title-padding, 11px);
126
125
  }
127
126
  .nut-popup-center {
128
127
  top: 50%;
129
128
  left: 50%;
129
+ right: auto;
130
+ bottom: auto;
130
131
  min-height: 10%;
131
132
  max-width: 295px;
132
133
  transform: translate(-50%, -50%);
@@ -137,6 +138,8 @@
137
138
  .nut-popup-bottom {
138
139
  bottom: 0;
139
140
  left: 0;
141
+ right: auto;
142
+ top: auto;
140
143
  width: 100%;
141
144
  }
142
145
  .nut-popup-bottom.nut-popup-round {
@@ -148,6 +151,8 @@
148
151
  .nut-popup-right {
149
152
  top: 0;
150
153
  right: 0;
154
+ left: auto;
155
+ bottom: auto;
151
156
  width: 100px;
152
157
  height: 100%;
153
158
  }
@@ -157,6 +162,8 @@
157
162
  .nut-popup-left {
158
163
  top: 0;
159
164
  left: 0;
165
+ right: auto;
166
+ bottom: auto;
160
167
  width: 100px;
161
168
  height: 100%;
162
169
  }
@@ -166,6 +173,8 @@
166
173
  .nut-popup-top {
167
174
  top: 0;
168
175
  left: 0;
176
+ right: auto;
177
+ bottom: auto;
169
178
  width: 100%;
170
179
  }
171
180
  .nut-popup-top.nut-popup-round {
@@ -242,6 +251,9 @@
242
251
  }
243
252
  }
244
253
  @keyframes popup-slide-top-exit {
254
+ from {
255
+ transform: translate3d(0, 0%, 0);
256
+ }
245
257
  to {
246
258
  transform: translate3d(0, -100%, 0);
247
259
  }
@@ -266,6 +278,9 @@
266
278
  }
267
279
  }
268
280
  @keyframes popup-slide-right-exit {
281
+ from {
282
+ transform: translate3d(0%, 0, 0);
283
+ }
269
284
  to {
270
285
  transform: translate3d(100%, 0, 0);
271
286
  }
@@ -290,6 +305,9 @@
290
305
  }
291
306
  }
292
307
  @keyframes slide-bottom-exit {
308
+ from {
309
+ transform: translate3d(0, 0%, 0);
310
+ }
293
311
  to {
294
312
  transform: translate3d(0, 100%, 0);
295
313
  }
@@ -314,6 +332,9 @@
314
332
  }
315
333
  }
316
334
  @keyframes popup-slide-left-exit {
335
+ from {
336
+ transform: translate3d(0%, 0, 0);
337
+ }
317
338
  to {
318
339
  transform: translate3d(-100%, 0, 0);
319
340
  }
@@ -339,27 +360,27 @@
339
360
  [dir=rtl] .nut-popup-title-left,
340
361
  .nut-rtl .nut-popup-title-left {
341
362
  left: auto;
342
- right: var(--nutui-popup-title-padding, 16px);
363
+ right: var(--nutui-popup-title-padding, 11px);
343
364
  }
344
365
  [dir=rtl] .nut-popup-title-right,
345
366
  .nut-rtl .nut-popup-title-right {
346
367
  right: auto;
347
- left: var(--nutui-popup-title-padding, 16px);
368
+ left: var(--nutui-popup-title-padding, 11px);
348
369
  }
349
370
  [dir=rtl] .nut-popup-title-right-top-left,
350
371
  .nut-rtl .nut-popup-title-right-top-left {
351
372
  left: auto;
352
- right: var(--nutui-popup-title-padding, 16px);
373
+ right: var(--nutui-popup-title-padding, 11px);
353
374
  }
354
375
  [dir=rtl] .nut-popup-title-right-bottom-left,
355
376
  .nut-rtl .nut-popup-title-right-bottom-left {
356
377
  left: auto;
357
- right: var(--nutui-popup-title-padding, 16px);
378
+ right: var(--nutui-popup-title-padding, 11px);
358
379
  }
359
380
  [dir=rtl] .nut-popup-title-right-bottom-right,
360
381
  .nut-rtl .nut-popup-title-right-bottom-right {
361
382
  right: auto;
362
- left: var(--nutui-popup-title-padding, 16px);
383
+ left: var(--nutui-popup-title-padding, 11px);
363
384
  }
364
385
  [dir=rtl] .nut-popup-title .nut-icon-ArrowLeft,
365
386
  .nut-rtl .nut-popup-title .nut-icon-ArrowLeft {
@@ -4,13 +4,13 @@ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
4
4
  import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
5
5
  import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
6
6
  import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
7
- import React, { useState, useEffect, useRef } from "react";
7
+ import React, { useState, useEffect, useRef, useMemo, useCallback } from "react";
8
8
  import { nextTick } from "@tarojs/taro";
9
9
  import { createPortal } from "react-dom";
10
- import { CSSTransition } from "react-transition-group";
11
10
  import classNames from "classnames";
12
11
  import { Close } from "@nutui/icons-react-taro";
13
12
  import { View } from "@tarojs/components";
13
+ import ConfigurableCSSTransition from "../../utils/taro/ConfigurableCSSTransition";
14
14
  import { getRectInMultiPlatformWithoutCache } from "../../utils/taro/get-rect";
15
15
  import { defaultOverlayProps } from "../overlay/overlay";
16
16
  import Overlay from "../overlay/index";
@@ -42,61 +42,72 @@ var defaultProps = _object_spread_props(_object_spread({}, defaultOverlayProps),
42
42
  },
43
43
  onTouchStart: function() {},
44
44
  onTouchMove: function() {},
45
- onTouchEnd: function() {}
45
+ onTouchEnd: function() {},
46
+ overlayProps: {},
47
+ animated: true
46
48
  });
47
49
  // 默认1000,参看variables
48
50
  var _zIndex = 1100;
49
51
  export var Popup = function(props) {
50
- var _$_object_spread = _object_spread({}, defaultProps, props), children = _$_object_spread.children, visible = _$_object_spread.visible, overlay = _$_object_spread.overlay, closeOnOverlayClick = _$_object_spread.closeOnOverlayClick, overlayStyle = _$_object_spread.overlayStyle, overlayClassName = _$_object_spread.overlayClassName, zIndex = _$_object_spread.zIndex, lockScroll = _$_object_spread.lockScroll, duration = _$_object_spread.duration, closeable = _$_object_spread.closeable, closeIconPosition = _$_object_spread.closeIconPosition, closeIcon = _$_object_spread.closeIcon, left = _$_object_spread.left, title = _$_object_spread.title, top = _$_object_spread.top, description = _$_object_spread.description, style = _$_object_spread.style, transition = _$_object_spread.transition, round = _$_object_spread.round, position = _$_object_spread.position, className = _$_object_spread.className, destroyOnClose = _$_object_spread.destroyOnClose, portal = _$_object_spread.portal, resizable = _$_object_spread.resizable, minHeight = _$_object_spread.minHeight, onOpen = _$_object_spread.onOpen, onClose = _$_object_spread.onClose, onOverlayClick = _$_object_spread.onOverlayClick, onCloseIconClick = _$_object_spread.onCloseIconClick, afterShow = _$_object_spread.afterShow, afterClose = _$_object_spread.afterClose, onClick = _$_object_spread.onClick, onTouchStart = _$_object_spread.onTouchStart, onTouchMove = _$_object_spread.onTouchMove, onTouchEnd = _$_object_spread.onTouchEnd, closeAriaLabel = _$_object_spread.closeAriaLabel;
51
- var innerIndex = zIndex || _zIndex;
52
- var _useState = _sliced_to_array(useState(innerIndex), 2), index = _useState[0], setIndex = _useState[1];
52
+ var _$_object_spread = _object_spread({}, defaultProps, props), children = _$_object_spread.children, visible = _$_object_spread.visible, overlay = _$_object_spread.overlay, closeOnOverlayClick = _$_object_spread.closeOnOverlayClick, overlayStyle = _$_object_spread.overlayStyle, overlayClassName = _$_object_spread.overlayClassName, zIndex = _$_object_spread.zIndex, lockScroll = _$_object_spread.lockScroll, duration = _$_object_spread.duration, closeable = _$_object_spread.closeable, closeIconPosition = _$_object_spread.closeIconPosition, closeIcon = _$_object_spread.closeIcon, left = _$_object_spread.left, title = _$_object_spread.title, top = _$_object_spread.top, description = _$_object_spread.description, style = _$_object_spread.style, transition = _$_object_spread.transition, round = _$_object_spread.round, position = _$_object_spread.position, className = _$_object_spread.className, destroyOnClose = _$_object_spread.destroyOnClose, portal = _$_object_spread.portal, resizable = _$_object_spread.resizable, minHeight = _$_object_spread.minHeight, onOpen = _$_object_spread.onOpen, onClose = _$_object_spread.onClose, onOverlayClick = _$_object_spread.onOverlayClick, onCloseIconClick = _$_object_spread.onCloseIconClick, afterShow = _$_object_spread.afterShow, afterClose = _$_object_spread.afterClose, onClick = _$_object_spread.onClick, onTouchStart = _$_object_spread.onTouchStart, onTouchMove = _$_object_spread.onTouchMove, onTouchEnd = _$_object_spread.onTouchEnd, closeAriaLabel = _$_object_spread.closeAriaLabel, overlayProps = _$_object_spread.overlayProps, animated = _$_object_spread.animated;
53
+ var locale = useConfig().locale;
54
+ var transitionDuration = useMemo(function() {
55
+ return animated ? Number(duration) : 0;
56
+ }, [
57
+ animated,
58
+ duration
59
+ ]);
60
+ var _useState = _sliced_to_array(useState(zIndex || _zIndex), 2), index = _useState[0], setIndex = _useState[1];
53
61
  var _useState1 = _sliced_to_array(useState(visible), 2), innerVisible = _useState1[0], setInnerVisible = _useState1[1];
54
62
  var _useState2 = _sliced_to_array(useState(true), 2), showChildren = _useState2[0], setShowChildren = _useState2[1];
55
- var _useState3 = _sliced_to_array(useState(''), 2), transitionName = _useState3[0], setTransitionName = _useState3[1];
56
63
  var nodeRef = useLockScrollTaro(innerVisible && lockScroll);
57
- var topNodeRef = React.useRef(null);
64
+ var topNodeRef = useRef(null);
58
65
  var rootRect = useRef(null);
59
66
  var touchStartRef = useRef(0);
60
67
  var touchMoveDistanceRef = useRef(0);
61
68
  var heightRef = useRef(0);
62
69
  var defaultHeightRef = useRef(0);
63
70
  var isTouching = useRef(false);
64
- var locale = useConfig().locale;
65
71
  var classPrefix = 'nut-popup';
66
- var overlayStyles = _object_spread({}, overlayStyle);
67
- var contentZIndex = harmony() ? index + 1 : index // 解决harmony层级问题
68
- ;
69
- var popStyles = _object_spread({
70
- zIndex: contentZIndex,
71
- minHeight: minHeight
72
- }, style);
73
- var _obj;
74
- var popClassName = classNames(classPrefix, (_obj = {}, _define_property(_obj, "".concat(classPrefix, "-round"), round || position === 'bottom'), _define_property(_obj, "".concat(classPrefix, "-").concat(position), true), _obj), className);
75
- var _useState4 = _sliced_to_array(useState(''), 2), popupHeight = _useState4[0], setPopupHeight = _useState4[1];
76
- var _useState5 = _sliced_to_array(useState(''), 2), topBottom = _useState5[0], setTopBottom = _useState5[1];
77
- var resizeStyles = function() {
78
- if (popupHeight !== '') {
79
- return {
80
- height: popupHeight
81
- };
82
- }
83
- };
84
- var open = function() {
85
- if (!innerVisible) {
86
- // 当高度改变后,再次打开时,将高度置为初始高度
87
- if (position === 'bottom' && resizable && nodeRef.current && heightRef.current) {
88
- setPopupHeight(pxTransform(defaultHeightRef.current));
89
- }
90
- setInnerVisible(true);
91
- setIndex(++innerIndex);
92
- }
93
- if (destroyOnClose) {
94
- setShowChildren(true);
95
- }
96
- onOpen && onOpen();
97
- };
98
- var getPopupHeight = /*#__PURE__*/ function() {
99
- var _ref = _async_to_generator(function() {
72
+ var transitionName = useMemo(function() {
73
+ return transition || "".concat(classPrefix, "-slide-").concat(position);
74
+ }, [
75
+ transition,
76
+ position
77
+ ]);
78
+ var overlayStyles = useMemo(function() {
79
+ return _object_spread({}, overlayStyle);
80
+ }, [
81
+ overlayStyle
82
+ ]);
83
+ var contentZIndex = useMemo(function() {
84
+ return harmony() ? index + 1 : index // 解决harmony层级问题
85
+ ;
86
+ }, [
87
+ index
88
+ ]);
89
+ var popStyles = useMemo(function() {
90
+ return _object_spread({
91
+ zIndex: contentZIndex,
92
+ minHeight: minHeight
93
+ }, style);
94
+ }, [
95
+ contentZIndex,
96
+ minHeight,
97
+ style
98
+ ]);
99
+ var popClassName = useMemo(function() {
100
+ var _obj;
101
+ return classNames(classPrefix, (_obj = {}, _define_property(_obj, "".concat(classPrefix, "-round"), round || position === 'bottom'), _define_property(_obj, "".concat(classPrefix, "-").concat(position), true), _obj), className);
102
+ }, [
103
+ round,
104
+ position,
105
+ className
106
+ ]);
107
+ var _useState3 = _sliced_to_array(useState(''), 2), popupHeight = _useState3[0], setPopupHeight = _useState3[1];
108
+ var _useState4 = _sliced_to_array(useState(''), 2), topBottom = _useState4[0], setTopBottom = _useState4[1];
109
+ var getPopupHeight = useCallback(function() {
110
+ return _async_to_generator(function() {
100
111
  var _nodeRef_current, rect, height;
101
112
  return _ts_generator(this, function(_state) {
102
113
  switch(_state.label){
@@ -114,52 +125,110 @@ export var Popup = function(props) {
114
125
  ];
115
126
  }
116
127
  });
117
- });
118
- return function getPopupHeight() {
119
- return _ref.apply(this, arguments);
120
- };
121
- }();
122
- useEffect(function() {
123
- if (innerVisible && topNodeRef.current && nodeRef.current) {
124
- nextTick(function() {
125
- nextTick(function() {
126
- getPopupHeight();
127
- });
128
+ })();
129
+ }, [
130
+ nodeRef
131
+ ]);
132
+ var open = useCallback(function() {
133
+ if (!innerVisible) {
134
+ // 当高度改变后,再次打开时,将高度置为初始高度
135
+ if (position === 'bottom' && resizable && nodeRef.current && heightRef.current) {
136
+ setPopupHeight(pxTransform(defaultHeightRef.current));
137
+ }
138
+ setInnerVisible(true);
139
+ setIndex(function(prev) {
140
+ return prev + 1;
128
141
  });
129
142
  }
143
+ if (destroyOnClose) {
144
+ setShowChildren(true);
145
+ }
146
+ onOpen === null || onOpen === void 0 ? void 0 : onOpen();
130
147
  }, [
131
- innerVisible
148
+ innerVisible,
149
+ position,
150
+ resizable,
151
+ destroyOnClose,
152
+ onOpen,
153
+ nodeRef,
154
+ setInnerVisible,
155
+ setIndex,
156
+ setShowChildren
132
157
  ]);
133
- var close = function() {
158
+ var close = useCallback(function() {
134
159
  if (innerVisible) {
135
160
  setInnerVisible(false);
136
161
  if (destroyOnClose) {
137
162
  setTimeout(function() {
138
163
  setShowChildren(false);
139
- }, Number(duration));
164
+ }, transitionDuration);
140
165
  }
141
- onClose && onClose();
166
+ onClose === null || onClose === void 0 ? void 0 : onClose();
142
167
  }
143
- };
144
- var handleOverlayClick = function(e) {
168
+ }, [
169
+ innerVisible,
170
+ destroyOnClose,
171
+ transitionDuration,
172
+ onClose,
173
+ setInnerVisible,
174
+ setShowChildren
175
+ ]);
176
+ useEffect(function() {
177
+ visible ? open() : close();
178
+ }, [
179
+ visible,
180
+ open,
181
+ close
182
+ ]);
183
+ useEffect(function() {
184
+ if (innerVisible && topNodeRef.current && nodeRef.current) {
185
+ nextTick(function() {
186
+ nextTick(function() {
187
+ getPopupHeight();
188
+ });
189
+ });
190
+ }
191
+ }, [
192
+ innerVisible,
193
+ getPopupHeight,
194
+ nodeRef
195
+ ]);
196
+ var handleOverlayClick = useCallback(function(e) {
145
197
  e.stopPropagation();
146
198
  if (closeOnOverlayClick && onOverlayClick(e)) {
147
199
  close();
148
200
  }
149
- };
150
- var handleCloseIconClick = function(e) {
201
+ }, [
202
+ closeOnOverlayClick,
203
+ onOverlayClick,
204
+ close
205
+ ]);
206
+ var handleCloseIconClick = useCallback(function(e) {
151
207
  onCloseIconClick(e) && close();
152
- };
153
- var renderCloseIcon = function() {
208
+ }, [
209
+ onCloseIconClick,
210
+ close
211
+ ]);
212
+ var renderCloseIcon = useCallback(function() {
213
+ if (!closeable) return null;
154
214
  var closeClasses = classNames("".concat(classPrefix, "-title-right"), "".concat(classPrefix, "-title-right-").concat(closeIconPosition));
155
- return /*#__PURE__*/ React.createElement(React.Fragment, null, closeable && /*#__PURE__*/ React.createElement(View, {
215
+ return /*#__PURE__*/ React.createElement(View, {
156
216
  className: closeClasses,
157
217
  onClick: handleCloseIconClick,
158
218
  ariaRole: "button",
159
219
  ariaLabel: closeAriaLabel || locale.close
160
- }, /*#__PURE__*/ React.isValidElement(closeIcon) ? closeIcon : /*#__PURE__*/ React.createElement(Close, null)));
161
- };
162
- var renderTop = function() {
220
+ }, /*#__PURE__*/ React.isValidElement(closeIcon) ? closeIcon : /*#__PURE__*/ React.createElement(Close, {
221
+ ariaHidden: true
222
+ }));
223
+ }, [
224
+ closeable,
225
+ closeIconPosition,
226
+ handleCloseIconClick,
227
+ closeAriaLabel,
228
+ locale.close,
229
+ closeIcon
230
+ ]);
231
+ var renderTop = useCallback(function() {
163
232
  if (!top) return null;
164
233
  return /*#__PURE__*/ React.createElement(View, {
165
234
  className: "".concat(classPrefix, "-bottom-top"),
@@ -168,8 +237,11 @@ export var Popup = function(props) {
168
237
  bottom: topBottom
169
238
  }
170
239
  }, top);
171
- };
172
- var renderTitle = function() {
240
+ }, [
241
+ top,
242
+ topBottom
243
+ ]);
244
+ var renderTitle = useCallback(function() {
173
245
  if (left || title || description) {
174
246
  return /*#__PURE__*/ React.createElement(View, {
175
247
  className: "".concat(classPrefix, "-title")
@@ -186,9 +258,16 @@ export var Popup = function(props) {
186
258
  if (closeable) {
187
259
  return renderCloseIcon();
188
260
  }
189
- };
190
- var handleTouchStart = /*#__PURE__*/ function() {
191
- var _ref = _async_to_generator(function(event) {
261
+ }, [
262
+ left,
263
+ title,
264
+ description,
265
+ position,
266
+ closeable,
267
+ renderCloseIcon
268
+ ]);
269
+ var handleTouchStart = useCallback(function(event) {
270
+ return _async_to_generator(function() {
192
271
  var _nodeRef_current, _rootRect_current, e, rect;
193
272
  return _ts_generator(this, function(_state) {
194
273
  switch(_state.label){
@@ -216,12 +295,14 @@ export var Popup = function(props) {
216
295
  ];
217
296
  }
218
297
  });
219
- });
220
- return function handleTouchStart(event) {
221
- return _ref.apply(this, arguments);
222
- };
223
- }();
224
- var handleTouchMove = function(event) {
298
+ })();
299
+ }, [
300
+ position,
301
+ resizable,
302
+ onTouchStart,
303
+ nodeRef
304
+ ]);
305
+ var handleTouchMove = useCallback(function(event) {
225
306
  if (position !== 'bottom' || !resizable || !nodeRef.current || !rootRect.current) return;
226
307
  var e = event;
227
308
  e.stopPropagation();
@@ -240,65 +321,63 @@ export var Popup = function(props) {
240
321
  }
241
322
  };
242
323
  requestAnimationFrame(handleMove);
243
- };
244
- var handleTouchEnd = function(event) {
324
+ }, [
325
+ position,
326
+ resizable,
327
+ minHeight,
328
+ onTouchMove,
329
+ nodeRef
330
+ ]);
331
+ var handleTouchEnd = useCallback(function(event) {
245
332
  if (position !== 'bottom' || !resizable || !nodeRef.current || !rootRect.current) return;
246
333
  var e = event;
247
334
  isTouching.current = false;
248
335
  var min = typeof minHeight === 'number' ? minHeight : parseInt(String(minHeight || 0), 10) || 0;
249
336
  var currentHeight = Math.max(min, heightRef.current - touchMoveDistanceRef.current);
250
337
  onTouchEnd === null || onTouchEnd === void 0 ? void 0 : onTouchEnd(currentHeight, e);
251
- };
252
- var renderContent = function() {
253
- return /*#__PURE__*/ React.createElement(View, {
254
- ref: nodeRef,
255
- style: _object_spread(_object_spread_props(_object_spread({}, popStyles), {
256
- display: innerVisible ? (popStyles === null || popStyles === void 0 ? void 0 : popStyles.display) || 'block' : 'none'
257
- }), resizeStyles()),
258
- className: popClassName,
259
- onClick: onClick,
260
- catchMove: lockScroll,
261
- onTouchStart: handleTouchStart,
262
- onTouchMove: handleTouchMove,
263
- onTouchEnd: handleTouchEnd,
264
- onTouchCancel: handleTouchEnd
265
- }, renderTop(), renderTitle(), showChildren ? children : null);
266
- };
338
+ }, [
339
+ position,
340
+ resizable,
341
+ minHeight,
342
+ onTouchEnd,
343
+ nodeRef
344
+ ]);
267
345
  var renderPop = function() {
268
- return /*#__PURE__*/ React.createElement(CSSTransition, {
346
+ return /*#__PURE__*/ React.createElement(ConfigurableCSSTransition, {
269
347
  nodeRef: nodeRef,
270
348
  classNames: transitionName,
271
349
  mountOnEnter: true,
272
350
  unmountOnExit: destroyOnClose,
273
- timeout: duration,
351
+ timeout: Number(transitionDuration),
274
352
  in: innerVisible,
275
353
  onEntered: afterShow,
276
354
  onExited: afterClose
277
- }, renderContent());
355
+ }, /*#__PURE__*/ React.createElement(View, {
356
+ ref: nodeRef,
357
+ style: _object_spread({}, popStyles, popupHeight ? {
358
+ height: popupHeight
359
+ } : {}),
360
+ className: popClassName,
361
+ onClick: onClick,
362
+ catchMove: lockScroll,
363
+ onTouchStart: handleTouchStart,
364
+ onTouchMove: handleTouchMove,
365
+ onTouchEnd: handleTouchEnd,
366
+ onTouchCancel: handleTouchEnd
367
+ }, renderTop(), renderTitle(), showChildren ? children : null));
278
368
  };
279
369
  var renderNode = function() {
280
- return /*#__PURE__*/ React.createElement(React.Fragment, null, overlay ? /*#__PURE__*/ React.createElement(Overlay, {
370
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, overlay ? /*#__PURE__*/ React.createElement(Overlay, _object_spread({
281
371
  zIndex: index,
282
372
  style: overlayStyles,
283
373
  className: overlayClassName,
284
374
  visible: innerVisible,
285
375
  closeOnOverlayClick: closeOnOverlayClick,
286
376
  lockScroll: lockScroll,
287
- duration: duration,
377
+ duration: transitionDuration,
288
378
  onClick: handleOverlayClick
289
- }) : null, renderPop());
379
+ }, overlayProps)) : null, renderPop());
290
380
  };
291
- useEffect(function() {
292
- visible ? open() : close();
293
- }, [
294
- visible
295
- ]);
296
- useEffect(function() {
297
- setTransitionName(transition || "".concat(classPrefix, "-slide-").concat(position));
298
- }, [
299
- position,
300
- transition
301
- ]);
302
381
  var resolveContainer = function(getContainer) {
303
382
  return (typeof getContainer === 'function' ? getContainer() : getContainer) || document.body;
304
383
  };
@@ -26,7 +26,6 @@
26
26
  color: $color-title;
27
27
  font-weight: $font-weight-bold;
28
28
  font-size: $popup-title-font-size;
29
- line-height: $popup-title-font-size;
30
29
  }
31
30
 
32
31
  &-description {
@@ -79,6 +78,8 @@
79
78
  &-center {
80
79
  top: 50%;
81
80
  left: 50%;
81
+ right: auto;
82
+ bottom: auto;
82
83
  min-height: 10%;
83
84
  max-width: 295px;
84
85
  transform: translate(-50%, -50%);
@@ -91,6 +92,8 @@
91
92
  &-bottom {
92
93
  bottom: 0;
93
94
  left: 0;
95
+ right: auto;
96
+ top: auto;
94
97
  width: 100%;
95
98
 
96
99
  &.nut-popup-round {
@@ -105,6 +108,8 @@
105
108
  &-right {
106
109
  top: 0;
107
110
  right: 0;
111
+ left: auto;
112
+ bottom: auto;
108
113
  width: 100px;
109
114
  height: 100%;
110
115
 
@@ -116,6 +121,8 @@
116
121
  &-left {
117
122
  top: 0;
118
123
  left: 0;
124
+ right: auto;
125
+ bottom: auto;
119
126
  width: 100px;
120
127
  height: 100%;
121
128
 
@@ -127,6 +134,8 @@
127
134
  &-top {
128
135
  top: 0;
129
136
  left: 0;
137
+ right: auto;
138
+ bottom: auto;
130
139
  width: 100%;
131
140
 
132
141
  &.nut-popup-round {
@@ -210,6 +219,9 @@
210
219
  }
211
220
 
212
221
  @keyframes popup-slide-top-exit {
222
+ from {
223
+ transform: translate3d(0, 0%, 0);
224
+ }
213
225
  to {
214
226
  transform: translate3d(0, -100%, 0);
215
227
  }
@@ -240,6 +252,9 @@
240
252
  }
241
253
 
242
254
  @keyframes popup-slide-right-exit {
255
+ from {
256
+ transform: translate3d(0%, 0, 0);
257
+ }
243
258
  to {
244
259
  transform: translate3d(100%, 0, 0);
245
260
  }
@@ -270,6 +285,9 @@
270
285
  }
271
286
 
272
287
  @keyframes slide-bottom-exit {
288
+ from {
289
+ transform: translate3d(0, 0%, 0);
290
+ }
273
291
  to {
274
292
  transform: translate3d(0, 100%, 0);
275
293
  }
@@ -300,6 +318,9 @@
300
318
  }
301
319
 
302
320
  @keyframes popup-slide-left-exit {
321
+ from {
322
+ transform: translate3d(0%, 0, 0);
323
+ }
303
324
  to {
304
325
  transform: translate3d(-100%, 0, 0);
305
326
  }