@nutui/nutui-react 3.0.0-beta.9 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (618) hide show
  1. package/CHANGELOG.md +99 -1340
  2. package/README.md +1 -1
  3. package/dist/cjs/{utils → hooks}/use-click-away.js +2 -2
  4. package/dist/cjs/{utils → hooks}/use-custom-event.js +2 -2
  5. package/dist/cjs/{utils → hooks}/use-isomprphic-layout-effect.js +1 -1
  6. package/dist/cjs/{utils → hooks}/use-lock-scroll.js +2 -2
  7. package/dist/cjs/packages/actionsheet/style/style.css +13 -18
  8. package/dist/cjs/packages/address/address.js +1 -1
  9. package/dist/cjs/packages/address/style/style.css +50 -57
  10. package/dist/cjs/packages/animate/animate.js +5 -6
  11. package/dist/cjs/packages/animate/style/animate.scss +63 -105
  12. package/dist/cjs/packages/animate/style/style.css +45 -44
  13. package/dist/cjs/packages/animatingnumbers/style/style.css +3 -3
  14. package/dist/cjs/packages/audio/style/style.css +60 -64
  15. package/dist/cjs/packages/avatar/style/style.css +2 -2
  16. package/dist/cjs/packages/avatarcropper/avatarcropper.js +2 -2
  17. package/dist/cjs/packages/backtop/style/backtop.scss +0 -4
  18. package/dist/cjs/packages/backtop/style/index.js +2 -0
  19. package/dist/cjs/packages/backtop/style/style.css +126 -3
  20. package/dist/cjs/packages/badge/badge.js +13 -15
  21. package/dist/cjs/packages/badge/style/style.css +4 -4
  22. package/dist/cjs/packages/barrage/style/style.css +2 -2
  23. package/dist/cjs/packages/button/button.js +14 -11
  24. package/dist/cjs/packages/button/style/button.scss +5 -8
  25. package/dist/cjs/packages/button/style/style.css +48 -52
  26. package/dist/cjs/packages/calendar/style/calendar.scss +25 -31
  27. package/dist/cjs/packages/calendar/style/style.css +28 -39
  28. package/dist/cjs/packages/calendarcard/calendarcard.js +1 -1
  29. package/dist/cjs/packages/calendarcard/style/style.css +8 -8
  30. package/dist/cjs/packages/calendaritem/calendaritem.js +1 -1
  31. package/dist/cjs/packages/card/style/style.css +8 -8
  32. package/dist/cjs/packages/cascader/cascader.d.ts +2 -2
  33. package/dist/cjs/packages/cascader/cascader.js +3 -3
  34. package/dist/cjs/packages/cascader/style/style.css +40 -47
  35. package/dist/cjs/packages/cell/style/style.css +8 -8
  36. package/dist/cjs/packages/cellgroup/style/style.css +3 -3
  37. package/dist/cjs/packages/checkbox/checkbox.js +10 -9
  38. package/dist/cjs/packages/checkbox/style/checkbox.scss +32 -26
  39. package/dist/cjs/packages/checkbox/style/style.css +53 -45
  40. package/dist/cjs/packages/checkboxgroup/checkboxgroup.js +1 -1
  41. package/dist/cjs/packages/checkboxgroup/style/checkboxgroup.scss +9 -8
  42. package/dist/cjs/packages/checkboxgroup/style/style.css +14 -12
  43. package/dist/cjs/packages/circleprogress/style/style.css +3 -3
  44. package/dist/cjs/packages/col/style/col.scss +0 -1
  45. package/dist/cjs/packages/collapse/collapse.js +1 -1
  46. package/dist/cjs/packages/collapse/style/style.css +11 -11
  47. package/dist/cjs/packages/collapseitem/style/style.css +11 -11
  48. package/dist/cjs/packages/configprovider/configprovider.js +3 -3
  49. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  50. package/dist/cjs/packages/countdown/style/style.css +8 -8
  51. package/dist/cjs/packages/countup/style/style.css +3 -3
  52. package/dist/cjs/packages/datepicker/datepicker.d.ts +4 -23
  53. package/dist/cjs/packages/datepicker/datepicker.js +81 -232
  54. package/dist/cjs/packages/datepicker/index.d.ts +2 -2
  55. package/dist/cjs/packages/datepicker/index.js +3 -2
  56. package/dist/cjs/packages/datepicker/style/style.css +12 -123
  57. package/dist/cjs/packages/datepicker/types.d.ts +28 -0
  58. package/dist/cjs/packages/datepicker/types.js +4 -0
  59. package/dist/cjs/packages/datepicker/utils.d.ts +70 -0
  60. package/dist/cjs/packages/datepicker/utils.js +240 -0
  61. package/dist/cjs/packages/dialog/confirm.d.ts +4 -3
  62. package/dist/cjs/packages/dialog/confirm.js +7 -21
  63. package/dist/cjs/packages/dialog/content.d.ts +4 -11
  64. package/dist/cjs/packages/dialog/content.js +30 -14
  65. package/dist/cjs/packages/dialog/dialog.d.ts +1 -2
  66. package/dist/cjs/packages/dialog/dialog.js +23 -10
  67. package/dist/cjs/packages/dialog/dialogwrap.d.ts +3 -14
  68. package/dist/cjs/packages/dialog/dialogwrap.js +33 -15
  69. package/dist/cjs/packages/dialog/index.d.ts +1 -2
  70. package/dist/cjs/packages/dialog/style/dialog.scss +28 -22
  71. package/dist/cjs/packages/dialog/style/style.css +82 -84
  72. package/dist/cjs/packages/dialog/types.d.ts +57 -0
  73. package/dist/cjs/packages/divider/style/style.css +4 -4
  74. package/dist/cjs/packages/elevator/style/style.css +8 -8
  75. package/dist/cjs/packages/ellipsis/ellipsis.js +1 -1
  76. package/dist/cjs/packages/empty/style/style.css +3 -3
  77. package/dist/cjs/packages/fixednav/fixednav.d.ts +2 -15
  78. package/dist/cjs/packages/fixednav/fixednav.js +20 -23
  79. package/dist/cjs/packages/fixednav/index.d.ts +1 -2
  80. package/dist/cjs/packages/fixednav/style/style.css +3 -8
  81. package/dist/cjs/packages/fixednav/types.d.ts +12 -0
  82. package/dist/cjs/packages/form/style/style.css +15 -15
  83. package/dist/cjs/packages/formitem/style/style.css +4 -4
  84. package/dist/cjs/packages/grid/style/style.css +6 -6
  85. package/dist/cjs/packages/griditem/style/style.css +5 -5
  86. package/dist/cjs/packages/hoverbutton/style/hoverbutton.scss +0 -4
  87. package/dist/cjs/packages/hoverbutton/style/style.css +4 -7
  88. package/dist/cjs/packages/hoverbuttonitem/style/style.css +4 -4
  89. package/dist/cjs/packages/image/image.d.ts +3 -2
  90. package/dist/cjs/packages/image/style/style.css +2 -2
  91. package/dist/cjs/packages/imagepreview/imagepreview.js +1 -1
  92. package/dist/cjs/packages/imagepreview/style/style.css +28 -47
  93. package/dist/cjs/packages/indicator/style/indicator.scss +17 -19
  94. package/dist/cjs/packages/indicator/style/style.css +15 -23
  95. package/dist/cjs/packages/infiniteloading/style/style.css +4 -4
  96. package/dist/cjs/packages/input/input.d.ts +2 -2
  97. package/dist/cjs/packages/input/input.js +46 -59
  98. package/dist/cjs/packages/input/style/input.scss +1 -7
  99. package/dist/cjs/packages/input/style/style.css +9 -15
  100. package/dist/cjs/packages/inputnumber/inputnumber.js +1 -1
  101. package/dist/cjs/packages/inputnumber/style/style.css +7 -7
  102. package/dist/cjs/packages/loading/style/loading.scss +8 -2
  103. package/dist/cjs/packages/loading/style/style.css +6 -4
  104. package/dist/cjs/packages/lottie/animation/dark/global.gif +0 -0
  105. package/dist/cjs/packages/lottie/animation/dark/global.json +1 -0
  106. package/dist/cjs/packages/lottie/animation/dark/loading.gif +0 -0
  107. package/dist/cjs/packages/lottie/animation/dark/loading.json +1 -0
  108. package/dist/cjs/packages/lottie/animation/dark/pulltorefresh-white.gif +0 -0
  109. package/dist/cjs/packages/lottie/animation/dark/pulltorefresh-white.json +1 -0
  110. package/dist/cjs/packages/lottie/animation/dark/pulltorefresh.gif +0 -0
  111. package/dist/cjs/packages/lottie/animation/dark/pulltorefresh.json +1 -0
  112. package/dist/cjs/packages/lottie/animation/light/global.gif +0 -0
  113. package/dist/cjs/packages/lottie/animation/light/global.json +1 -0
  114. package/dist/cjs/packages/lottie/animation/light/loading.gif +0 -0
  115. package/dist/cjs/packages/lottie/animation/light/loading.json +1 -0
  116. package/dist/cjs/packages/lottie/animation/light/pulltorefresh.gif +0 -0
  117. package/dist/cjs/packages/lottie/animation/light/pulltorefresh.json +1 -0
  118. package/dist/cjs/packages/menu/style/style.css +8 -13
  119. package/dist/cjs/packages/menuitem/menuitem.js +2 -2
  120. package/dist/cjs/packages/menuitem/style/style.css +4 -9
  121. package/dist/cjs/packages/navbar/style/navbar.scss +1 -1
  122. package/dist/cjs/packages/navbar/style/style.css +3 -3
  123. package/dist/cjs/packages/noticebar/noticebar.js +1 -1
  124. package/dist/cjs/packages/notify/style/style.css +4 -4
  125. package/dist/cjs/packages/numberkeyboard/numberkeyboard.d.ts +1 -1
  126. package/dist/cjs/packages/numberkeyboard/numberkeyboard.js +2 -2
  127. package/dist/cjs/packages/numberkeyboard/style/style.css +13 -18
  128. package/dist/cjs/packages/nutui.react.build.d.ts +7 -3
  129. package/dist/cjs/packages/nutui.react.build.js +9 -1
  130. package/dist/cjs/packages/nutui.react.d.ts +10 -4
  131. package/dist/cjs/packages/nutui.react.js +12 -2
  132. package/dist/cjs/packages/nutui.react.scss.d.ts +3 -1
  133. package/dist/cjs/packages/nutui.react.scss.js +3 -1
  134. package/dist/cjs/packages/overlay/index.d.ts +1 -1
  135. package/dist/cjs/packages/overlay/overlay.d.ts +2 -12
  136. package/dist/cjs/packages/overlay/overlay.js +11 -17
  137. package/dist/cjs/packages/overlay/style/overlay.scss +0 -5
  138. package/dist/cjs/packages/overlay/style/style.css +1 -6
  139. package/dist/cjs/packages/overlay/types.d.ts +11 -0
  140. package/dist/cjs/packages/overlay/types.js +4 -0
  141. package/dist/cjs/packages/pagination/pagination.js +1 -1
  142. package/dist/cjs/packages/pagination/style/style.css +7 -7
  143. package/dist/cjs/packages/picker/index.d.ts +1 -2
  144. package/dist/cjs/packages/picker/picker.d.ts +3 -26
  145. package/dist/cjs/packages/picker/picker.js +72 -188
  146. package/dist/cjs/packages/picker/style/picker.scss +3 -132
  147. package/dist/cjs/packages/picker/style/style.css +12 -123
  148. package/dist/cjs/packages/picker/types.d.ts +25 -6
  149. package/dist/cjs/packages/pickerview/index.d.ts +3 -0
  150. package/dist/cjs/packages/pickerview/index.js +13 -0
  151. package/dist/cjs/packages/pickerview/pickerroller.d.ts +7 -0
  152. package/dist/cjs/packages/pickerview/pickerroller.js +183 -0
  153. package/dist/cjs/packages/pickerview/pickerview.d.ts +4 -0
  154. package/dist/cjs/packages/pickerview/pickerview.js +200 -0
  155. package/dist/cjs/packages/pickerview/style/css.js +1 -0
  156. package/dist/cjs/packages/pickerview/style/index.js +1 -0
  157. package/dist/cjs/packages/pickerview/style/pickerview.scss +79 -0
  158. package/dist/cjs/packages/pickerview/style/style.css +73 -0
  159. package/dist/cjs/packages/pickerview/types.d.ts +32 -0
  160. package/dist/cjs/packages/pickerview/types.js +4 -0
  161. package/dist/cjs/packages/pickerview/utils.d.ts +14 -0
  162. package/dist/cjs/packages/pickerview/utils.js +46 -0
  163. package/dist/cjs/packages/popover/popover.d.ts +3 -3
  164. package/dist/cjs/packages/popover/popover.js +5 -5
  165. package/dist/cjs/packages/popover/style/style.css +12 -17
  166. package/dist/cjs/packages/popover/types.d.ts +3 -2
  167. package/dist/cjs/packages/popup/index.d.ts +1 -1
  168. package/dist/cjs/packages/popup/popup.d.ts +2 -24
  169. package/dist/cjs/packages/popup/popup.js +25 -42
  170. package/dist/cjs/packages/popup/style/style.css +5 -10
  171. package/dist/cjs/packages/popup/types.d.ts +25 -0
  172. package/dist/cjs/packages/popup/types.js +6 -0
  173. package/dist/cjs/packages/price/style/style.css +1 -1
  174. package/dist/cjs/packages/progress/style/style.css +1 -1
  175. package/dist/cjs/packages/pulltorefresh/pulltorefresh.js +1 -1
  176. package/dist/cjs/packages/pulltorefresh/style/pulltorefresh.scss +1 -1
  177. package/dist/cjs/packages/pulltorefresh/style/style.css +4 -4
  178. package/dist/cjs/packages/radio/radio.js +1 -1
  179. package/dist/cjs/packages/radio/style/radio.scss +1 -5
  180. package/dist/cjs/packages/radio/style/style.css +28 -25
  181. package/dist/cjs/packages/radiogroup/radiogroup.js +1 -1
  182. package/dist/cjs/packages/radiogroup/style/radiogroup.scss +10 -2
  183. package/dist/cjs/packages/radiogroup/style/style.css +14 -8
  184. package/dist/cjs/packages/range/range.js +3 -3
  185. package/dist/cjs/packages/range/style/style.css +9 -9
  186. package/dist/cjs/packages/rate/rate.js +3 -3
  187. package/dist/cjs/packages/rate/style/style.css +4 -4
  188. package/dist/cjs/packages/resultpage/style/resultpage.scss +3 -0
  189. package/dist/cjs/packages/resultpage/style/style.css +5 -2
  190. package/dist/cjs/packages/searchbar/searchbar.js +0 -1
  191. package/dist/cjs/packages/searchbar/style/style.css +5 -5
  192. package/dist/cjs/packages/segmented/segmented.js +1 -1
  193. package/dist/cjs/packages/segmented/style/style.css +2 -2
  194. package/dist/cjs/packages/shortpassword/shortpassword.js +3 -3
  195. package/dist/cjs/packages/shortpassword/style/style.css +15 -20
  196. package/dist/cjs/packages/sidebar/index.d.ts +3 -0
  197. package/dist/cjs/packages/sidebar/index.js +12 -0
  198. package/dist/cjs/packages/sidebar/sidebar.d.ts +6 -0
  199. package/dist/cjs/packages/sidebar/sidebar.js +173 -0
  200. package/dist/cjs/packages/sidebar/style/css.js +1 -0
  201. package/dist/cjs/packages/sidebar/style/index.js +3 -0
  202. package/dist/cjs/packages/sidebar/style/sidebar.scss +61 -0
  203. package/dist/cjs/packages/sidebar/style/style.css +79 -0
  204. package/dist/cjs/packages/sidebar/types.d.ts +16 -0
  205. package/dist/cjs/packages/sidebar/types.js +4 -0
  206. package/dist/cjs/packages/sidebar/utils.d.ts +3 -0
  207. package/dist/cjs/packages/sidebar/utils.js +23 -0
  208. package/dist/cjs/packages/sidebaritem/index.d.ts +3 -0
  209. package/dist/cjs/packages/sidebaritem/index.js +12 -0
  210. package/dist/cjs/packages/sidebaritem/sidebaritem.d.ts +9 -0
  211. package/dist/cjs/packages/sidebaritem/sidebaritem.js +29 -0
  212. package/dist/cjs/packages/sidebaritem/style/css.js +1 -0
  213. package/dist/cjs/packages/sidebaritem/style/index.js +1 -0
  214. package/dist/cjs/packages/sidebaritem/style/sidebaritem.scss +16 -0
  215. package/dist/cjs/packages/sidebaritem/style/style.css +19 -0
  216. package/dist/cjs/packages/sidenavbar/style/style.css +9 -14
  217. package/dist/cjs/packages/sidenavbaritem/style/style.css +2 -2
  218. package/dist/cjs/packages/signature/style/style.css +2 -2
  219. package/dist/cjs/packages/skeleton/style/skeleton.scss +0 -18
  220. package/dist/cjs/packages/skeleton/style/style.css +5 -11
  221. package/dist/cjs/packages/step/style/style.css +19 -19
  222. package/dist/cjs/packages/steps/style/style.css +19 -19
  223. package/dist/cjs/packages/sticky/sticky.js +2 -2
  224. package/dist/cjs/packages/subsidenavbar/style/style.css +2 -2
  225. package/dist/cjs/packages/swipe/swipe.js +2 -2
  226. package/dist/cjs/packages/swiper/effects/focus.js +1 -1
  227. package/dist/cjs/packages/swiper/style/style.css +21 -35
  228. package/dist/cjs/packages/swiper/style/swiper.scss +10 -12
  229. package/dist/cjs/packages/swiper/swiper.js +6 -9
  230. package/dist/cjs/packages/switch/style/style.css +6 -6
  231. package/dist/cjs/packages/switch/switch.js +1 -1
  232. package/dist/cjs/packages/tabbar/style/style.css +15 -20
  233. package/dist/cjs/packages/tabbar/tabbar.js +1 -1
  234. package/dist/cjs/packages/tabbaritem/style/style.css +14 -19
  235. package/dist/cjs/packages/tabbaritem/style/tabbaritem.scss +7 -13
  236. package/dist/cjs/packages/tabbaritem/tabbaritem.js +7 -6
  237. package/dist/cjs/packages/table/style/style.css +11 -11
  238. package/dist/cjs/packages/table/table.js +1 -1
  239. package/dist/cjs/packages/tabpane/style/style.css +1 -1
  240. package/dist/cjs/packages/tabpane/tabpane.js +2 -2
  241. package/dist/cjs/packages/tabs/style/style.css +30 -32
  242. package/dist/cjs/packages/tabs/style/tabs.scss +9 -9
  243. package/dist/cjs/packages/tabs/tabs.js +37 -54
  244. package/dist/cjs/packages/tag/style/style.css +5 -5
  245. package/dist/cjs/packages/tag/style/tag.scss +0 -2
  246. package/dist/cjs/packages/textarea/style/style.css +13 -13
  247. package/dist/cjs/packages/textarea/textarea.d.ts +1 -1
  248. package/dist/cjs/packages/textarea/textarea.js +20 -25
  249. package/dist/cjs/packages/timedetail/style/style.css +4 -4
  250. package/dist/cjs/packages/timeselect/style/style.css +14 -19
  251. package/dist/cjs/packages/toast/Notification.d.ts +6 -20
  252. package/dist/cjs/packages/toast/Notification.js +8 -7
  253. package/dist/cjs/packages/toast/index.d.ts +1 -1
  254. package/dist/cjs/packages/toast/style/style.css +2 -20
  255. package/dist/cjs/packages/toast/style/toast.scss +0 -13
  256. package/dist/cjs/packages/toast/toast.d.ts +4 -22
  257. package/dist/cjs/packages/toast/toast.js +10 -9
  258. package/dist/cjs/packages/toast/types.d.ts +17 -0
  259. package/dist/cjs/packages/toast/types.js +4 -0
  260. package/dist/cjs/packages/tour/style/style.css +16 -21
  261. package/dist/cjs/packages/tour/tour.d.ts +1 -1
  262. package/dist/cjs/packages/tour/tour.js +1 -1
  263. package/dist/cjs/packages/trendarrow/style/style.css +1 -1
  264. package/dist/cjs/packages/uploader/style/style.css +12 -12
  265. package/dist/cjs/packages/uploader/types.d.ts +2 -1
  266. package/dist/cjs/packages/uploader/uploader.js +1 -1
  267. package/dist/cjs/packages/virtuallist/style/style.css +4 -4
  268. package/dist/cjs/types/fix-string-literal-union.d.ts +1 -0
  269. package/dist/cjs/utils/get-rect-by-taro.js +1 -15
  270. package/dist/cjs/utils/get-system-info.d.ts +19 -0
  271. package/dist/cjs/utils/get-system-info.js +32 -0
  272. package/dist/cjs/utils/platform-taro.d.ts +0 -2
  273. package/dist/cjs/utils/platform-taro.js +0 -21
  274. package/dist/cjs/utils/px-transform.js +0 -1
  275. package/dist/es/{utils → hooks}/use-click-away.js +3 -2
  276. package/dist/es/{utils → hooks}/use-custom-event.js +1 -1
  277. package/dist/es/{utils → hooks}/use-isomprphic-layout-effect.js +1 -1
  278. package/dist/es/{utils → hooks}/use-lock-scroll.js +2 -2
  279. package/dist/es/packages/actionsheet/style/style.css +13 -18
  280. package/dist/es/packages/address/address.js +1 -1
  281. package/dist/es/packages/address/style/style.css +50 -57
  282. package/dist/es/packages/animate/animate.js +5 -6
  283. package/dist/es/packages/animate/style/animate.scss +63 -105
  284. package/dist/es/packages/animate/style/style.css +45 -44
  285. package/dist/es/packages/animatingnumbers/style/style.css +3 -3
  286. package/dist/es/packages/audio/style/style.css +60 -64
  287. package/dist/es/packages/avatar/style/style.css +2 -2
  288. package/dist/es/packages/avatarcropper/avatarcropper.js +2 -2
  289. package/dist/es/packages/backtop/style/backtop.scss +0 -4
  290. package/dist/es/packages/backtop/style/index.js +2 -0
  291. package/dist/es/packages/backtop/style/style.css +126 -3
  292. package/dist/es/packages/badge/badge.js +13 -15
  293. package/dist/es/packages/badge/style/style.css +4 -4
  294. package/dist/es/packages/barrage/style/style.css +2 -2
  295. package/dist/es/packages/button/button.js +15 -12
  296. package/dist/es/packages/button/style/button.scss +5 -8
  297. package/dist/es/packages/button/style/style.css +48 -52
  298. package/dist/es/packages/calendar/calendar.d.ts +27 -135
  299. package/dist/es/packages/calendar/style/calendar.scss +25 -31
  300. package/dist/es/packages/calendar/style/style.css +28 -39
  301. package/dist/es/packages/calendarcard/calendarcard.js +1 -1
  302. package/dist/es/packages/calendarcard/style/style.css +8 -8
  303. package/dist/es/packages/calendaritem/calendaritem.js +1 -1
  304. package/dist/es/packages/card/style/style.css +8 -8
  305. package/dist/es/packages/cascader/cascader.d.ts +2 -2
  306. package/dist/es/packages/cascader/cascader.js +2 -2
  307. package/dist/es/packages/cascader/style/style.css +40 -47
  308. package/dist/es/packages/cell/style/style.css +8 -8
  309. package/dist/es/packages/cellgroup/style/style.css +3 -3
  310. package/dist/es/packages/checkbox/checkbox.js +10 -9
  311. package/dist/es/packages/checkbox/style/checkbox.scss +32 -26
  312. package/dist/es/packages/checkbox/style/style.css +53 -45
  313. package/dist/es/packages/checkboxgroup/checkboxgroup.js +1 -1
  314. package/dist/es/packages/checkboxgroup/style/checkboxgroup.scss +9 -8
  315. package/dist/es/packages/checkboxgroup/style/style.css +14 -12
  316. package/dist/es/packages/circleprogress/style/style.css +3 -3
  317. package/dist/es/packages/col/style/col.scss +0 -1
  318. package/dist/es/packages/collapse/collapse.js +1 -1
  319. package/dist/es/packages/collapse/style/style.css +11 -11
  320. package/dist/es/packages/collapseitem/style/style.css +11 -11
  321. package/dist/es/packages/configprovider/configprovider.js +3 -3
  322. package/dist/es/packages/configprovider/types.d.ts +1 -1
  323. package/dist/es/packages/countdown/style/style.css +8 -8
  324. package/dist/es/packages/countup/style/style.css +3 -3
  325. package/dist/es/packages/datepicker/datepicker.d.ts +4 -91
  326. package/dist/es/packages/datepicker/datepicker.js +80 -231
  327. package/dist/es/packages/datepicker/index.d.ts +2 -2
  328. package/dist/es/packages/datepicker/index.js +1 -1
  329. package/dist/es/packages/datepicker/style/style.css +12 -123
  330. package/dist/es/packages/datepicker/types.d.ts +28 -0
  331. package/dist/es/packages/datepicker/types.js +1 -0
  332. package/dist/es/packages/datepicker/utils.d.ts +70 -0
  333. package/dist/es/packages/datepicker/utils.js +248 -0
  334. package/dist/es/packages/dialog/confirm.d.ts +4 -3
  335. package/dist/es/packages/dialog/confirm.js +3 -17
  336. package/dist/es/packages/dialog/content.d.ts +4 -11
  337. package/dist/es/packages/dialog/content.js +19 -11
  338. package/dist/es/packages/dialog/dialog.d.ts +1 -2
  339. package/dist/es/packages/dialog/dialog.js +25 -12
  340. package/dist/es/packages/dialog/dialogwrap.d.ts +3 -14
  341. package/dist/es/packages/dialog/dialogwrap.js +23 -13
  342. package/dist/es/packages/dialog/index.d.ts +1 -2
  343. package/dist/es/packages/dialog/style/dialog.scss +28 -22
  344. package/dist/es/packages/dialog/style/style.css +82 -84
  345. package/dist/es/packages/dialog/types.d.ts +57 -0
  346. package/dist/es/packages/divider/style/style.css +4 -4
  347. package/dist/es/packages/drag/drag.d.ts +6 -30
  348. package/dist/es/packages/elevator/style/style.css +8 -8
  349. package/dist/es/packages/ellipsis/ellipsis.js +1 -1
  350. package/dist/es/packages/empty/style/style.css +3 -3
  351. package/dist/es/packages/fixednav/fixednav.d.ts +2 -55
  352. package/dist/es/packages/fixednav/fixednav.js +19 -22
  353. package/dist/es/packages/fixednav/index.d.ts +1 -2
  354. package/dist/es/packages/fixednav/style/style.css +3 -8
  355. package/dist/es/packages/fixednav/types.d.ts +12 -0
  356. package/dist/es/packages/form/style/style.css +15 -15
  357. package/dist/es/packages/formitem/style/style.css +4 -4
  358. package/dist/es/packages/grid/style/style.css +6 -6
  359. package/dist/es/packages/griditem/style/style.css +5 -5
  360. package/dist/es/packages/hoverbutton/style/hoverbutton.scss +0 -4
  361. package/dist/es/packages/hoverbutton/style/style.css +4 -7
  362. package/dist/es/packages/hoverbuttonitem/style/style.css +4 -4
  363. package/dist/es/packages/image/image.d.ts +3 -2
  364. package/dist/es/packages/image/style/style.css +2 -2
  365. package/dist/es/packages/imagepreview/imagepreview.js +1 -1
  366. package/dist/es/packages/imagepreview/style/style.css +28 -47
  367. package/dist/es/packages/indicator/style/indicator.scss +17 -19
  368. package/dist/es/packages/indicator/style/style.css +15 -23
  369. package/dist/es/packages/infiniteloading/style/style.css +4 -4
  370. package/dist/es/packages/input/input.d.ts +2 -2
  371. package/dist/es/packages/input/input.js +47 -60
  372. package/dist/es/packages/input/style/input.scss +1 -7
  373. package/dist/es/packages/input/style/style.css +9 -15
  374. package/dist/es/packages/inputnumber/inputnumber.js +1 -1
  375. package/dist/es/packages/inputnumber/style/style.css +7 -7
  376. package/dist/es/packages/loading/style/loading.scss +8 -2
  377. package/dist/es/packages/loading/style/style.css +6 -4
  378. package/dist/es/packages/lottie/animation/dark/global.gif +0 -0
  379. package/dist/es/packages/lottie/animation/dark/global.json +1 -0
  380. package/dist/es/packages/lottie/animation/dark/loading.gif +0 -0
  381. package/dist/es/packages/lottie/animation/dark/loading.json +1 -0
  382. package/dist/es/packages/lottie/animation/dark/pulltorefresh-white.gif +0 -0
  383. package/dist/es/packages/lottie/animation/dark/pulltorefresh-white.json +1 -0
  384. package/dist/es/packages/lottie/animation/dark/pulltorefresh.gif +0 -0
  385. package/dist/es/packages/lottie/animation/dark/pulltorefresh.json +1 -0
  386. package/dist/es/packages/lottie/animation/light/global.gif +0 -0
  387. package/dist/es/packages/lottie/animation/light/global.json +1 -0
  388. package/dist/es/packages/lottie/animation/light/loading.gif +0 -0
  389. package/dist/es/packages/lottie/animation/light/loading.json +1 -0
  390. package/dist/es/packages/lottie/animation/light/pulltorefresh.gif +0 -0
  391. package/dist/es/packages/lottie/animation/light/pulltorefresh.json +1 -0
  392. package/dist/es/packages/menu/style/style.css +8 -13
  393. package/dist/es/packages/menuitem/menuitem.js +2 -2
  394. package/dist/es/packages/menuitem/style/style.css +4 -9
  395. package/dist/es/packages/navbar/style/navbar.scss +1 -1
  396. package/dist/es/packages/navbar/style/style.css +3 -3
  397. package/dist/es/packages/noticebar/noticebar.js +1 -1
  398. package/dist/es/packages/notify/style/style.css +4 -4
  399. package/dist/es/packages/numberkeyboard/numberkeyboard.d.ts +1 -1
  400. package/dist/es/packages/numberkeyboard/numberkeyboard.js +1 -1
  401. package/dist/es/packages/numberkeyboard/style/style.css +13 -18
  402. package/dist/es/packages/nutui.react.build.d.ts +7 -3
  403. package/dist/es/packages/nutui.react.build.js +7 -3
  404. package/dist/es/packages/overlay/index.d.ts +1 -1
  405. package/dist/es/packages/overlay/overlay.d.ts +2 -12
  406. package/dist/es/packages/overlay/overlay.js +11 -17
  407. package/dist/es/packages/overlay/style/overlay.scss +0 -5
  408. package/dist/es/packages/overlay/style/style.css +1 -6
  409. package/dist/es/packages/overlay/types.d.ts +11 -0
  410. package/dist/es/packages/overlay/types.js +1 -0
  411. package/dist/es/packages/pagination/pagination.js +1 -1
  412. package/dist/es/packages/pagination/style/style.css +7 -7
  413. package/dist/es/packages/picker/index.d.ts +1 -2
  414. package/dist/es/packages/picker/picker.d.ts +3 -82
  415. package/dist/es/packages/picker/picker.js +71 -187
  416. package/dist/es/packages/picker/style/picker.scss +3 -132
  417. package/dist/es/packages/picker/style/style.css +12 -123
  418. package/dist/es/packages/picker/types.d.ts +25 -6
  419. package/dist/es/packages/pickerview/index.d.ts +3 -0
  420. package/dist/es/packages/pickerview/index.js +2 -0
  421. package/dist/es/packages/pickerview/pickerroller.d.ts +7 -0
  422. package/dist/es/packages/pickerview/pickerroller.js +172 -0
  423. package/dist/es/packages/pickerview/pickerview.d.ts +4 -0
  424. package/dist/es/packages/pickerview/pickerview.js +188 -0
  425. package/dist/es/packages/pickerview/style/css.js +1 -0
  426. package/dist/es/packages/pickerview/style/index.js +1 -0
  427. package/dist/es/packages/pickerview/style/pickerview.scss +79 -0
  428. package/dist/es/packages/pickerview/style/style.css +73 -0
  429. package/dist/es/packages/pickerview/types.d.ts +32 -0
  430. package/dist/es/packages/pickerview/types.js +1 -0
  431. package/dist/es/packages/pickerview/utils.d.ts +14 -0
  432. package/dist/es/packages/pickerview/utils.js +28 -0
  433. package/dist/es/packages/popover/popover.d.ts +3 -3
  434. package/dist/es/packages/popover/popover.js +4 -4
  435. package/dist/es/packages/popover/style/style.css +12 -17
  436. package/dist/es/packages/popover/types.d.ts +3 -2
  437. package/dist/es/packages/popup/index.d.ts +1 -1
  438. package/dist/es/packages/popup/popup.d.ts +2 -24
  439. package/dist/es/packages/popup/popup.js +25 -42
  440. package/dist/es/packages/popup/style/style.css +5 -10
  441. package/dist/es/packages/popup/types.d.ts +25 -0
  442. package/dist/es/packages/popup/types.js +1 -0
  443. package/dist/es/packages/price/style/style.css +1 -1
  444. package/dist/es/packages/progress/style/style.css +1 -1
  445. package/dist/es/packages/pulltorefresh/pulltorefresh.js +1 -1
  446. package/dist/es/packages/pulltorefresh/style/pulltorefresh.scss +1 -1
  447. package/dist/es/packages/pulltorefresh/style/style.css +4 -4
  448. package/dist/es/packages/radio/radio.js +1 -1
  449. package/dist/es/packages/radio/style/radio.scss +1 -5
  450. package/dist/es/packages/radio/style/style.css +28 -25
  451. package/dist/es/packages/radiogroup/radiogroup.js +1 -1
  452. package/dist/es/packages/radiogroup/style/radiogroup.scss +10 -2
  453. package/dist/es/packages/radiogroup/style/style.css +14 -8
  454. package/dist/es/packages/range/range.js +3 -3
  455. package/dist/es/packages/range/style/style.css +9 -9
  456. package/dist/es/packages/rate/rate.js +3 -3
  457. package/dist/es/packages/rate/style/style.css +4 -4
  458. package/dist/es/packages/resultpage/style/resultpage.scss +3 -0
  459. package/dist/es/packages/resultpage/style/style.css +5 -2
  460. package/dist/es/packages/searchbar/searchbar.js +0 -1
  461. package/dist/es/packages/searchbar/style/style.css +5 -5
  462. package/dist/es/packages/segmented/segmented.js +1 -1
  463. package/dist/es/packages/segmented/style/style.css +2 -2
  464. package/dist/es/packages/shortpassword/shortpassword.js +2 -2
  465. package/dist/es/packages/shortpassword/style/style.css +15 -20
  466. package/dist/es/packages/sidebar/index.d.ts +3 -0
  467. package/dist/es/packages/sidebar/index.js +2 -0
  468. package/dist/es/packages/sidebar/sidebar.d.ts +6 -0
  469. package/dist/es/packages/sidebar/sidebar.js +161 -0
  470. package/dist/es/packages/sidebar/style/css.js +1 -0
  471. package/dist/es/packages/sidebar/style/index.js +3 -0
  472. package/dist/es/packages/sidebar/style/sidebar.scss +61 -0
  473. package/dist/es/packages/sidebar/style/style.css +79 -0
  474. package/dist/es/packages/sidebar/types.d.ts +16 -0
  475. package/dist/es/packages/sidebar/types.js +1 -0
  476. package/dist/es/packages/sidebar/utils.d.ts +3 -0
  477. package/dist/es/packages/sidebar/utils.js +14 -0
  478. package/dist/es/packages/sidebaritem/index.d.ts +3 -0
  479. package/dist/es/packages/sidebaritem/index.js +2 -0
  480. package/dist/es/packages/sidebaritem/sidebaritem.d.ts +9 -0
  481. package/dist/es/packages/sidebaritem/sidebaritem.js +18 -0
  482. package/dist/es/packages/sidebaritem/style/css.js +1 -0
  483. package/dist/es/packages/sidebaritem/style/index.js +1 -0
  484. package/dist/es/packages/sidebaritem/style/sidebaritem.scss +16 -0
  485. package/dist/es/packages/sidebaritem/style/style.css +19 -0
  486. package/dist/es/packages/sidenavbar/style/style.css +9 -14
  487. package/dist/es/packages/sidenavbaritem/style/style.css +2 -2
  488. package/dist/es/packages/signature/style/style.css +2 -2
  489. package/dist/es/packages/skeleton/style/skeleton.scss +0 -18
  490. package/dist/es/packages/skeleton/style/style.css +5 -11
  491. package/dist/es/packages/step/style/style.css +19 -19
  492. package/dist/es/packages/steps/style/style.css +19 -19
  493. package/dist/es/packages/sticky/sticky.js +2 -2
  494. package/dist/es/packages/subsidenavbar/style/style.css +2 -2
  495. package/dist/es/packages/swipe/swipe.js +2 -2
  496. package/dist/es/packages/swiper/effects/focus.js +1 -1
  497. package/dist/es/packages/swiper/style/style.css +21 -35
  498. package/dist/es/packages/swiper/style/swiper.scss +10 -12
  499. package/dist/es/packages/swiper/swiper.js +6 -9
  500. package/dist/es/packages/switch/style/style.css +6 -6
  501. package/dist/es/packages/switch/switch.js +1 -1
  502. package/dist/es/packages/tabbar/style/style.css +15 -20
  503. package/dist/es/packages/tabbar/tabbar.js +1 -1
  504. package/dist/es/packages/tabbaritem/style/style.css +14 -19
  505. package/dist/es/packages/tabbaritem/style/tabbaritem.scss +7 -13
  506. package/dist/es/packages/tabbaritem/tabbaritem.js +7 -6
  507. package/dist/es/packages/table/style/style.css +11 -11
  508. package/dist/es/packages/table/table.js +1 -1
  509. package/dist/es/packages/tabpane/style/style.css +1 -1
  510. package/dist/es/packages/tabpane/tabpane.js +2 -2
  511. package/dist/es/packages/tabs/style/style.css +30 -32
  512. package/dist/es/packages/tabs/style/tabs.scss +9 -9
  513. package/dist/es/packages/tabs/tabs.js +37 -54
  514. package/dist/es/packages/tag/style/style.css +5 -5
  515. package/dist/es/packages/tag/style/tag.scss +0 -2
  516. package/dist/es/packages/textarea/style/style.css +13 -13
  517. package/dist/es/packages/textarea/textarea.d.ts +1 -1
  518. package/dist/es/packages/textarea/textarea.js +20 -25
  519. package/dist/es/packages/timedetail/style/style.css +4 -4
  520. package/dist/es/packages/timeselect/style/style.css +14 -19
  521. package/dist/es/packages/toast/Notification.d.ts +6 -20
  522. package/dist/es/packages/toast/Notification.js +8 -7
  523. package/dist/es/packages/toast/index.d.ts +1 -1
  524. package/dist/es/packages/toast/style/style.css +2 -20
  525. package/dist/es/packages/toast/style/toast.scss +0 -13
  526. package/dist/es/packages/toast/toast.d.ts +4 -22
  527. package/dist/es/packages/toast/toast.js +10 -8
  528. package/dist/es/packages/toast/types.d.ts +17 -0
  529. package/dist/es/packages/toast/types.js +1 -0
  530. package/dist/es/packages/tour/style/style.css +16 -21
  531. package/dist/es/packages/tour/tour.d.ts +3 -3
  532. package/dist/es/packages/tour/tour.js +1 -1
  533. package/dist/es/packages/trendarrow/style/style.css +1 -1
  534. package/dist/es/packages/uploader/style/style.css +12 -12
  535. package/dist/es/packages/uploader/types.d.ts +2 -1
  536. package/dist/es/packages/uploader/uploader.js +1 -1
  537. package/dist/es/packages/virtuallist/style/style.css +4 -4
  538. package/dist/es/types/fix-string-literal-union.d.ts +1 -0
  539. package/dist/es/utils/get-rect-by-taro.js +1 -15
  540. package/dist/es/utils/get-system-info.d.ts +19 -0
  541. package/dist/es/utils/get-system-info.js +19 -0
  542. package/dist/es/utils/platform-taro.d.ts +0 -2
  543. package/dist/es/utils/platform-taro.js +0 -15
  544. package/dist/es/utils/px-transform.js +1 -2
  545. package/dist/nutui.react.umd.js +1488 -1838
  546. package/dist/style.css +1 -1
  547. package/dist/style.scss +42 -40
  548. package/dist/styles/theme-dark.scss +1 -0
  549. package/dist/styles/theme-default.scss +1 -0
  550. package/dist/styles/themes/dark.css +1 -0
  551. package/dist/styles/themes/default.css +1 -1
  552. package/dist/styles/themes/jmapp.css +1 -0
  553. package/dist/styles/themes/jrkf.css +1 -0
  554. package/dist/styles/variables-jmapp.scss +1 -0
  555. package/dist/styles/variables-jrkf.scss +1 -0
  556. package/dist/styles/variables.scss +125 -63
  557. package/package.json +1 -80
  558. package/dist/cjs/packages/dialog/config.d.ts +0 -50
  559. package/dist/cjs/packages/picker/pickerpanel.d.ts +0 -15
  560. package/dist/cjs/packages/picker/pickerpanel.js +0 -238
  561. package/dist/es/packages/dialog/config.d.ts +0 -50
  562. package/dist/es/packages/picker/pickerpanel.d.ts +0 -15
  563. package/dist/es/packages/picker/pickerpanel.js +0 -227
  564. package/dist/styles/themes/default.scss +0 -3
  565. /package/dist/cjs/{utils → hooks}/use-click-away.d.ts +0 -0
  566. /package/dist/cjs/{utils → hooks}/use-client-rect.d.ts +0 -0
  567. /package/dist/cjs/{utils → hooks}/use-client-rect.js +0 -0
  568. /package/dist/cjs/{utils → hooks}/use-custom-event.d.ts +0 -0
  569. /package/dist/cjs/{utils → hooks}/use-force-update.d.ts +0 -0
  570. /package/dist/cjs/{utils → hooks}/use-force-update.js +0 -0
  571. /package/dist/cjs/{utils → hooks}/use-isomprphic-layout-effect.d.ts +0 -0
  572. /package/dist/cjs/{utils → hooks}/use-lock-scoll-taro.d.ts +0 -0
  573. /package/dist/cjs/{utils → hooks}/use-lock-scoll-taro.js +0 -0
  574. /package/dist/cjs/{utils → hooks}/use-lock-scroll.d.ts +0 -0
  575. /package/dist/cjs/{utils → hooks}/use-memo.d.ts +0 -0
  576. /package/dist/cjs/{utils → hooks}/use-memo.js +0 -0
  577. /package/dist/cjs/{utils → hooks}/use-props-value.d.ts +0 -0
  578. /package/dist/cjs/{utils → hooks}/use-props-value.js +0 -0
  579. /package/dist/cjs/{utils → hooks}/use-ref-state.d.ts +0 -0
  580. /package/dist/cjs/{utils → hooks}/use-ref-state.js +0 -0
  581. /package/dist/cjs/{utils → hooks}/use-refs.d.ts +0 -0
  582. /package/dist/cjs/{utils → hooks}/use-refs.js +0 -0
  583. /package/dist/cjs/{utils → hooks}/use-taro-rect.d.ts +0 -0
  584. /package/dist/cjs/{utils → hooks}/use-taro-rect.js +0 -0
  585. /package/dist/cjs/{utils → hooks}/use-touch.d.ts +0 -0
  586. /package/dist/cjs/{utils → hooks}/use-touch.js +0 -0
  587. /package/dist/cjs/{utils → hooks}/use-uuid.d.ts +0 -0
  588. /package/dist/cjs/{utils → hooks}/use-uuid.js +0 -0
  589. /package/dist/cjs/{utils → hooks}/use-watch.d.ts +0 -0
  590. /package/dist/cjs/{utils → hooks}/use-watch.js +0 -0
  591. /package/dist/cjs/packages/dialog/{config.js → types.js} +0 -0
  592. /package/dist/es/{utils → hooks}/use-click-away.d.ts +0 -0
  593. /package/dist/es/{utils → hooks}/use-client-rect.d.ts +0 -0
  594. /package/dist/es/{utils → hooks}/use-client-rect.js +0 -0
  595. /package/dist/es/{utils → hooks}/use-custom-event.d.ts +0 -0
  596. /package/dist/es/{utils → hooks}/use-force-update.d.ts +0 -0
  597. /package/dist/es/{utils → hooks}/use-force-update.js +0 -0
  598. /package/dist/es/{utils → hooks}/use-isomprphic-layout-effect.d.ts +0 -0
  599. /package/dist/es/{utils → hooks}/use-lock-scoll-taro.d.ts +0 -0
  600. /package/dist/es/{utils → hooks}/use-lock-scoll-taro.js +0 -0
  601. /package/dist/es/{utils → hooks}/use-lock-scroll.d.ts +0 -0
  602. /package/dist/es/{utils → hooks}/use-memo.d.ts +0 -0
  603. /package/dist/es/{utils → hooks}/use-memo.js +0 -0
  604. /package/dist/es/{utils → hooks}/use-props-value.d.ts +0 -0
  605. /package/dist/es/{utils → hooks}/use-props-value.js +0 -0
  606. /package/dist/es/{utils → hooks}/use-ref-state.d.ts +0 -0
  607. /package/dist/es/{utils → hooks}/use-ref-state.js +0 -0
  608. /package/dist/es/{utils → hooks}/use-refs.d.ts +0 -0
  609. /package/dist/es/{utils → hooks}/use-refs.js +0 -0
  610. /package/dist/es/{utils → hooks}/use-taro-rect.d.ts +0 -0
  611. /package/dist/es/{utils → hooks}/use-taro-rect.js +0 -0
  612. /package/dist/es/{utils → hooks}/use-touch.d.ts +0 -0
  613. /package/dist/es/{utils → hooks}/use-touch.js +0 -0
  614. /package/dist/es/{utils → hooks}/use-uuid.d.ts +0 -0
  615. /package/dist/es/{utils → hooks}/use-uuid.js +0 -0
  616. /package/dist/es/{utils → hooks}/use-watch.d.ts +0 -0
  617. /package/dist/es/{utils → hooks}/use-watch.js +0 -0
  618. /package/dist/es/packages/dialog/{config.js → types.js} +0 -0
@@ -4,19 +4,14 @@
4
4
  /* #ifndef harmony */
5
5
  /* #endif */
6
6
  .nut-overlay {
7
- /* #ifdef rn */
8
- position: absolute;
9
- /* #endif */
10
- /* #ifndef rn */
11
7
  position: fixed;
12
- /* #endif */
13
8
  top: 0;
14
9
  left: 0;
15
10
  bottom: 0;
16
11
  right: 0;
17
12
  width: 100%;
18
13
  height: 100%;
19
- background-color: var(--nutui-overlay-bg-color, var(--nutui-black-10));
14
+ background-color: var(--nutui-overlay-bg-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7)));
20
15
  z-index: var(--nutui-overlay-zIndex, 1000);
21
16
  }
22
17
 
@@ -67,7 +62,7 @@
67
62
  position: fixed;
68
63
  min-height: 46%;
69
64
  max-height: 100%;
70
- background-color: var(--nutui-overlay-content-bg-color, var(--nutui-gray-1));
65
+ background-color: var(--nutui-overlay-content-bg-color, var(--nutui-color-background-overlay, #ffffff));
71
66
  -webkit-overflow-scrolling: touch;
72
67
  font-size: var(--nutui-font-size-base, 14px);
73
68
  }
@@ -87,13 +82,13 @@
87
82
  align-items: center;
88
83
  }
89
84
  .nut-popup-title-title {
90
- color: var(--nutui-gray-7);
85
+ color: var(--nutui-color-title, #1a1a1a);
91
86
  font-weight: var(--nutui-font-weight-bold, 600);
92
87
  font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-l, 16px));
93
88
  line-height: var(--nutui-popup-title-font-size, var(--nutui-font-size-l, 16px));
94
89
  }
95
90
  .nut-popup-title-description {
96
- color: var(--nutui-gray-6);
91
+ color: var(--nutui-color-text, #505259);
97
92
  font-size: var(--nutui-popup-description-font-size, var(--nutui-font-size-base, 14px));
98
93
  font-weight: var(--nutui-font-weight, 400);
99
94
  }
@@ -112,7 +107,7 @@
112
107
  z-index: 1;
113
108
  width: var(--nutui-popup-icon-size, 20px);
114
109
  height: var(--nutui-popup-icon-size, 20px);
115
- color: var(--nutui-gray-7);
110
+ color: var(--nutui-color-title, #1a1a1a);
116
111
  cursor: pointer;
117
112
  }
118
113
  .nut-popup-title-right:active {
@@ -377,23 +372,24 @@
377
372
  }
378
373
 
379
374
  .nut-picker {
380
- background-color: var(--nutui-gray-1);
375
+ background-color: var(--nutui-color-background-overlay, #ffffff);
381
376
  width: 100%;
382
377
  }
383
378
  .nut-picker-control {
384
379
  display: flex;
385
- height: var(--nutui-popup-title-height, 50px);
386
- font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-l, 16px));
387
380
  align-items: center;
388
381
  justify-content: space-between;
382
+ height: var(--nutui-popup-title-height, 50px);
389
383
  padding: var(--nutui-popup-title-padding, 16px);
384
+ box-sizing: border-box;
385
+ font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-l, 16px));
390
386
  }
391
387
  .nut-picker-cancel-btn {
392
- color: var(--nutui-picker-title-cancel-color, var(--nutui-gray-6));
388
+ color: var(--nutui-picker-title-cancel-color, var(--nutui-color-text, #505259));
393
389
  font-size: var(--nutui-picker-title-cancel-font-size, var(--nutui-font-size-base, 14px));
394
390
  }
395
391
  .nut-picker-confirm-btn {
396
- color: var(--nutui-picker-title-ok-color, var(--nutui-brand-6));
392
+ color: var(--nutui-picker-title-ok-color, var(--nutui-color-primary, #ff0f23));
397
393
  font-size: var(--nutui-picker-title-ok-font-size, var(--nutui-font-size-base, 14px));
398
394
  }
399
395
  .nut-picker-title {
@@ -402,117 +398,10 @@
402
398
  text-overflow: ellipsis;
403
399
  white-space: nowrap;
404
400
  text-align: center;
405
- color: var(--nutui-gray-7);
401
+ color: var(--nutui-color-title, #1a1a1a);
406
402
  font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-l, 16px));
407
403
  font-weight: var(--nutui-popup-title-font-weight, var(--nutui-font-weight-bold, 600));
408
404
  }
409
405
  .nut-picker-panel {
410
406
  display: flex;
411
- position: relative;
412
- }
413
- .nut-picker-indicator {
414
- position: absolute;
415
- top: 108px;
416
- height: var(--nutui-picker-item-height, 36px);
417
- width: 100%;
418
- border: var(--nutui-picker-item-active-line-border, 1px solid var(--nutui-black-3));
419
- border-left: 0;
420
- border-right: 0;
421
- color: var(--nutui-picker-item-text-color, var(--nutui-gray-7));
422
- font-size: var(--nutui-picker-item-text-font-size, var(--nutui-font-size-base, 14px));
423
- z-index: 3;
424
- }
425
- .nut-picker-indicator-taro {
426
- height: var(--nutui-picker-item-height, 36px);
427
- border: 0;
428
- }
429
- .nut-picker-indicator-taro::before, .nut-picker-indicator-taro::after {
430
- border: var(--nutui-picker-item-active-line-border, 1px solid var(--nutui-black-3));
431
- border-left: 0;
432
- border-right: 0;
433
- }
434
- .nut-picker-list {
435
- flex: 1;
436
- position: relative;
437
- height: var(--nutui-picker-list-height, 252px);
438
- overflow: hidden;
439
- text-align: center;
440
- }
441
- .nut-picker-list-panel {
442
- transform-style: preserve-3d;
443
- }
444
- .nut-picker-mask {
445
- position: absolute;
446
- top: 0;
447
- left: 0;
448
- right: 0;
449
- bottom: 0;
450
- background-image: var(--picker-mask-background, linear-gradient(180deg, var(--nutui-white-12), var(--nutui-white-7)), linear-gradient(0deg, var(--nutui-white-12), var(--nutui-white-7)));
451
- background-position: top, bottom;
452
- background-size: 100% 108px;
453
- background-repeat: no-repeat;
454
- transform: translateZ(0);
455
- z-index: 3;
456
- }
457
- .nut-picker-view-panel {
458
- height: var(--nutui-picker-list-height, 252px);
459
- flex-grow: 1;
460
- }
461
- .nut-picker-content, .nut-picker-roller {
462
- position: absolute;
463
- top: 108px;
464
- width: 100%;
465
- height: var(--nutui-picker-item-height, 36px);
466
- }
467
- .nut-picker-content {
468
- background: #fff;
469
- z-index: 2;
470
- overflow: hidden;
471
- }
472
- .nut-picker-item, .nut-picker-roller-item {
473
- white-space: nowrap;
474
- overflow: hidden;
475
- text-overflow: ellipsis;
476
- height: var(--nutui-picker-item-height, 36px);
477
- line-height: var(--nutui-picker-item-height, 36px);
478
- color: var(--nutui-picker-item-text-color, var(--nutui-gray-7));
479
- font-size: var(--nutui-picker-item-text-font-size, var(--nutui-font-size-base, 14px));
480
- text-align: center;
481
- }
482
- .nut-picker-item {
483
- font-size: 16px;
484
- background: #fff;
485
- }
486
- .nut-picker-roller {
487
- z-index: 1;
488
- transform-style: preserve-3d;
489
- }
490
- .nut-picker-roller-item {
491
- backface-visibility: hidden;
492
- -moz-backface-visibility: hidden;
493
- -webkit-backface-visibility: hidden;
494
- position: absolute;
495
- top: 0;
496
- width: 100%;
497
- }
498
- .nut-picker-roller-item-title {
499
- display: block;
500
- width: 100%;
501
- height: var(--nutui-picker-item-height, 36px);
502
- line-height: var(--nutui-picker-item-height, 36px);
503
- text-align: center;
504
- color: var(--nutui-gray-7);
505
- font-size: var(--nutui-font-size-base, 14px);
506
- }
507
- .nut-picker-roller-item-hidden {
508
- visibility: hidden;
509
- opacity: 0;
510
- }
511
- .nut-picker-placeholder {
512
- height: 1px;
513
- }
514
-
515
- [dir=rtl] .nut-picker-mask,
516
- .nut-rtl .nut-picker-mask {
517
- background-image: var(--picker-mask-background, linear-gradient(-180deg, var(--nutui-white-12), var(--nutui-white-7)), linear-gradient(0deg, var(--nutui-white-12), var(--nutui-white-7)));
518
407
  }
@@ -1,7 +1,26 @@
1
- export interface PickerOption {
2
- text: string | number;
3
- value: string | number;
4
- disabled?: boolean;
5
- children?: PickerOption[];
6
- className?: string | number;
1
+ import { PopupProps } from "../popup/types";
2
+ import { BasicComponent } from "../../utils/typings";
3
+ import { PickerOnChangeCallbackParameter, PickerOption, PickerOptions, PickerValue } from "../pickerview/types";
4
+ export type PickerRef = PickerActions;
5
+ export type PickerActions = {
6
+ open: () => void;
7
+ close: () => void;
8
+ };
9
+ export type ColumnsType = 'single' | 'multiple' | 'cascade';
10
+ export interface PickerProps extends Omit<BasicComponent, 'children'> {
11
+ visible?: boolean | undefined;
12
+ title?: string;
13
+ options: PickerOptions[];
14
+ value?: PickerValue[];
15
+ defaultValue?: PickerValue[];
16
+ threeDimensional?: boolean;
17
+ duration: number | string;
18
+ closeOnOverlayClick: boolean;
19
+ renderLabel?: (item: PickerOption) => React.ReactNode;
20
+ popupProps: Partial<Omit<PopupProps, 'title' | 'onClose' | 'closeOnOverlayClick'>>;
21
+ onConfirm?: (selectedOptions: PickerOptions, selectedValue: PickerValue[]) => void;
22
+ onCancel?: () => void;
23
+ onClose?: (selectedOptions: PickerOptions, selectedValue: PickerValue[]) => void;
24
+ onChange?: (args0: PickerOnChangeCallbackParameter) => void;
25
+ children?: any;
7
26
  }
@@ -0,0 +1,3 @@
1
+ import PickerView from './pickerview';
2
+ export type { PickerViewProps, PickerOption, PickerRollerProps, PickerValue, PickerOptions, PickerOnChangeCallbackParameter, } from './types';
3
+ export default PickerView;
@@ -0,0 +1,2 @@
1
+ import PickerView from "./pickerview";
2
+ export default PickerView;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { PickerRollerProps } from './types';
3
+ declare const PickerRoller: React.ForwardRefExoticComponent<Partial<PickerRollerProps> & React.RefAttributes<{
4
+ stopMomentum: () => void;
5
+ moving: boolean;
6
+ }>>;
7
+ export default PickerRoller;
@@ -0,0 +1,172 @@
1
+ import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
2
+ import React, { useState, useEffect, useRef, useImperativeHandle } from "react";
3
+ import { useTouch } from "../../hooks/use-touch";
4
+ import { passiveSupported } from "../../utils/supports-passive";
5
+ import { preventDefault } from "../../utils";
6
+ import { momentum, useStyles } from "./utils";
7
+ var InternalPickerRoller = function(props, ref) {
8
+ var _props_keyIndex = props.keyIndex, keyIndex = _props_keyIndex === void 0 ? 0 : _props_keyIndex, _props_options = props.options, options = _props_options === void 0 ? [] : _props_options, _props_threeDimensional = props.threeDimensional, threeDimensional = _props_threeDimensional === void 0 ? true : _props_threeDimensional, _props_duration = props.duration, duration = _props_duration === void 0 ? 1000 : _props_duration, onSelect = props.onSelect, _props_renderLabel = props.renderLabel, renderLabel = _props_renderLabel === void 0 ? function(item) {
9
+ return item.label;
10
+ } : _props_renderLabel;
11
+ var DEFAULT_DURATION = 200;
12
+ var INERTIA_TIME = 300;
13
+ var INERTIA_DISTANCE = 15;
14
+ var ROTATION = 20;
15
+ var touch = useTouch();
16
+ var _useState = _sliced_to_array(useState(1), 2), currentIndex = _useState[0], setCurrentIndex = _useState[1];
17
+ var lineSpacing = useRef(36);
18
+ var _useState1 = _sliced_to_array(useState(0), 2), touchTime = _useState1[0], setTouchTime = _useState1[1];
19
+ var _useState2 = _sliced_to_array(useState('0deg'), 2), touchDeg = _useState2[0], setTouchDeg = _useState2[1];
20
+ var isMoving = useRef(false);
21
+ var rollerRef = useRef(null);
22
+ var pickerRollerRef = useRef(null);
23
+ var _useState3 = _sliced_to_array(useState(0), 2), startTime = _useState3[0], setStartTime = _useState3[1];
24
+ var _useState4 = _sliced_to_array(useState(0), 2), startY = _useState4[0], setStartY = _useState4[1];
25
+ var transformY = useRef(0);
26
+ var _useState5 = _sliced_to_array(useState(0), 2), scrollDistance = _useState5[0], setScrollDistance = _useState5[1];
27
+ var _useStyles = useStyles(touchTime, touchDeg, scrollDistance, lineSpacing, ROTATION), touchRollerStyle = _useStyles.touchRollerStyle, touchTiledStyle = _useStyles.touchTiledStyle, rollerStyle = _useStyles.rollerStyle;
28
+ var isItemHidden = function(index) {
29
+ return index >= currentIndex + 8 || index <= currentIndex - 8;
30
+ };
31
+ var applyTransform = function(type, deg) {
32
+ var time = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : DEFAULT_DURATION, translateY = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 0;
33
+ setTouchTime(type !== 'end' ? 0 : time);
34
+ setTouchDeg(deg);
35
+ setScrollDistance(translateY);
36
+ };
37
+ var handleMove = function(move, type, time) {
38
+ var updatedMove = move + transformY.current;
39
+ if (type === 'end') {
40
+ updatedMove = Math.max(Math.min(updatedMove, 0), -(options.length - 1) * lineSpacing.current);
41
+ // 滚动距离为lineSpacing.current的倍数值
42
+ var endMove = Math.round(updatedMove / lineSpacing.current) * lineSpacing.current;
43
+ var deg = "".concat((Math.abs(Math.round(endMove / lineSpacing.current)) + 1) * ROTATION, "deg");
44
+ applyTransform(type, deg, time, endMove);
45
+ setCurrentIndex(Math.abs(Math.round(endMove / lineSpacing.current)) + 1);
46
+ } else {
47
+ var currentDeg = (-updatedMove / lineSpacing.current + 1) * ROTATION;
48
+ var deg1 = Math.min(Math.max(currentDeg, 0), (options.length + 1) * ROTATION);
49
+ if (deg1 >= 0 && deg1 < (options.length + 1) * ROTATION) {
50
+ applyTransform('', "".concat(deg1, "deg"), undefined, updatedMove);
51
+ setCurrentIndex(Math.abs(Math.round(updatedMove / lineSpacing.current)) + 1);
52
+ }
53
+ }
54
+ };
55
+ var selectValue = function(move) {
56
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(options === null || options === void 0 ? void 0 : options[Math.round(-move / lineSpacing.current)], keyIndex);
57
+ };
58
+ var handleTouchStart = function(event) {
59
+ touch.start(event);
60
+ setStartY(touch.deltaY.current);
61
+ setStartTime(Date.now());
62
+ transformY.current = scrollDistance;
63
+ };
64
+ var handleTouchMove = function(event) {
65
+ touch.move(event);
66
+ if (touch.isVertical) {
67
+ isMoving.current = true;
68
+ preventDefault(event, true);
69
+ }
70
+ var move = touch.deltaY.current - startY;
71
+ handleMove(move);
72
+ };
73
+ var handleTouchEnd = function() {
74
+ if (!isMoving.current) return;
75
+ var move = touch.deltaY.current - startY;
76
+ var moveTime = Date.now() - startTime;
77
+ if (moveTime <= INERTIA_TIME && Math.abs(move) > INERTIA_DISTANCE) {
78
+ var distance = momentum(move, moveTime);
79
+ handleMove(distance, 'end', +duration);
80
+ } else {
81
+ handleMove(move, 'end');
82
+ }
83
+ setTimeout(function() {
84
+ touch.reset();
85
+ }, 0);
86
+ };
87
+ var updateStatus = function(shouldSelect, value) {
88
+ var selectedValue = value || props.value;
89
+ var index = options.findIndex(function(item) {
90
+ return item.value === selectedValue;
91
+ });
92
+ setCurrentIndex(index === -1 ? 1 : index + 1);
93
+ var move = index * lineSpacing.current;
94
+ shouldSelect && selectValue(-move);
95
+ handleMove(-move);
96
+ };
97
+ var stopMomentumScroll = function() {
98
+ isMoving.current = false;
99
+ setTouchTime(0);
100
+ selectValue(scrollDistance);
101
+ };
102
+ // lineSpacing.current CSS variable
103
+ useEffect(function() {
104
+ var element = pickerRollerRef.current;
105
+ if (element) {
106
+ var computedStyle = getComputedStyle(element);
107
+ var currentLineSpacing = computedStyle.getPropertyValue('--nutui-picker-item-height');
108
+ !!currentLineSpacing && (lineSpacing.current = parseFloat(currentLineSpacing));
109
+ }
110
+ }, [
111
+ pickerRollerRef.current
112
+ ]);
113
+ useEffect(function() {
114
+ isMoving.current = false;
115
+ setScrollDistance(0);
116
+ transformY.current = 0;
117
+ updateStatus(false);
118
+ }, [
119
+ options,
120
+ props.value
121
+ ]);
122
+ useImperativeHandle(ref, function() {
123
+ return {
124
+ stopMomentum: stopMomentumScroll,
125
+ moving: isMoving.current
126
+ };
127
+ });
128
+ useEffect(function() {
129
+ var _pickerRollerRef_current, _pickerRollerRef_current1, _pickerRollerRef_current2;
130
+ var options = passiveSupported ? {
131
+ passive: false
132
+ } : false;
133
+ (_pickerRollerRef_current = pickerRollerRef.current) === null || _pickerRollerRef_current === void 0 ? void 0 : _pickerRollerRef_current.addEventListener('touchstart', handleTouchStart, options);
134
+ (_pickerRollerRef_current1 = pickerRollerRef.current) === null || _pickerRollerRef_current1 === void 0 ? void 0 : _pickerRollerRef_current1.addEventListener('touchmove', handleTouchMove, options);
135
+ (_pickerRollerRef_current2 = pickerRollerRef.current) === null || _pickerRollerRef_current2 === void 0 ? void 0 : _pickerRollerRef_current2.addEventListener('touchend', handleTouchEnd, options);
136
+ return function() {
137
+ var _pickerRollerRef_current, _pickerRollerRef_current1, _pickerRollerRef_current2;
138
+ (_pickerRollerRef_current = pickerRollerRef.current) === null || _pickerRollerRef_current === void 0 ? void 0 : _pickerRollerRef_current.removeEventListener('touchstart', handleTouchStart);
139
+ (_pickerRollerRef_current1 = pickerRollerRef.current) === null || _pickerRollerRef_current1 === void 0 ? void 0 : _pickerRollerRef_current1.removeEventListener('touchmove', handleTouchMove);
140
+ (_pickerRollerRef_current2 = pickerRollerRef.current) === null || _pickerRollerRef_current2 === void 0 ? void 0 : _pickerRollerRef_current2.removeEventListener('touchend', handleTouchEnd);
141
+ };
142
+ }, [
143
+ pickerRollerRef.current,
144
+ handleTouchStart,
145
+ handleTouchMove,
146
+ handleTouchEnd
147
+ ]);
148
+ return /*#__PURE__*/ React.createElement("div", {
149
+ className: "nut-pickerview-list",
150
+ ref: pickerRollerRef
151
+ }, /*#__PURE__*/ React.createElement("div", {
152
+ className: "nut-pickerview-roller",
153
+ ref: rollerRef,
154
+ style: threeDimensional ? touchRollerStyle() : touchTiledStyle(),
155
+ onTransitionEnd: stopMomentumScroll
156
+ }, threeDimensional && options.map(function(item, index) {
157
+ var _item_value;
158
+ return /*#__PURE__*/ React.createElement("div", {
159
+ className: "nut-pickerview-roller-item ".concat(isItemHidden(index + 1) && 'nut-pickerview-roller-item-hidden'),
160
+ style: rollerStyle(index),
161
+ key: (_item_value = item.value) !== null && _item_value !== void 0 ? _item_value : index
162
+ }, renderLabel(item));
163
+ }), !threeDimensional && options.map(function(item, index) {
164
+ var _item_value;
165
+ return /*#__PURE__*/ React.createElement("div", {
166
+ className: "nut-pickerview-roller-item-tiled",
167
+ key: (_item_value = item.value) !== null && _item_value !== void 0 ? _item_value : index
168
+ }, renderLabel(item));
169
+ })));
170
+ };
171
+ var PickerRoller = /*#__PURE__*/ React.forwardRef(InternalPickerRoller);
172
+ export default PickerRoller;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { PickerViewProps } from './types';
3
+ declare const PickerView: React.ForwardRefExoticComponent<Partial<PickerViewProps> & React.RefAttributes<unknown>>;
4
+ export default PickerView;
@@ -0,0 +1,188 @@
1
+ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
2
+ import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
3
+ import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
4
+ import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
5
+ import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
6
+ import classNames from "classnames";
7
+ import isEqual from "react-fast-compare";
8
+ import { ComponentDefaults } from "../../utils/typings";
9
+ import { usePropsValue } from "../../hooks/use-props-value";
10
+ import PickerRoller from "./pickerroller";
11
+ var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
12
+ options: [],
13
+ defaultValue: [],
14
+ value: undefined,
15
+ renderLabel: function(item) {
16
+ return item.label;
17
+ }
18
+ });
19
+ var InternalPickerView = function(props, ref) {
20
+ var _$_object_spread = _object_spread({}, defaultProps, props), options = _$_object_spread.options, _object_spread_defaultValue = _$_object_spread.defaultValue, defaultValue = _object_spread_defaultValue === void 0 ? [] : _object_spread_defaultValue, value = _$_object_spread.value, duration = _$_object_spread.duration, threeDimensional = _$_object_spread.threeDimensional, renderLabel = _$_object_spread.renderLabel, className = _$_object_spread.className, style = _$_object_spread.style, onChange = _$_object_spread.onChange;
21
+ var classPrefix = 'nut-pickerview';
22
+ var cls = classNames(classPrefix, className);
23
+ var _usePropsValue = _sliced_to_array(usePropsValue({
24
+ value: value,
25
+ defaultValue: _to_consumable_array(defaultValue),
26
+ finalValue: _to_consumable_array(defaultValue)
27
+ }), 1), selectedValue = _usePropsValue[0];
28
+ var _useState = _sliced_to_array(useState(selectedValue), 2), innerValue = _useState[0], setInnerValue = _useState[1];
29
+ var _useState1 = _sliced_to_array(useState([]), 2), innerOptions = _useState1[0], setInnerOptions = _useState1[1];
30
+ var changeIndex = useRef(0);
31
+ /**
32
+ * 数据类型:级联、多列
33
+ */ var columnsType = useMemo(function() {
34
+ var firstColumn = props.options[0] || [];
35
+ if (Array.isArray(firstColumn) && firstColumn.length > 0 && 'children' in firstColumn[0]) {
36
+ return 'cascade';
37
+ }
38
+ return 'multiple';
39
+ }, [
40
+ props.options
41
+ ]);
42
+ var formatCascadeOptions = function(options, value) {
43
+ var _loop = function() {
44
+ var currentOptions = columnOptions.children;
45
+ formatted.push(currentOptions);
46
+ var currentValue = value === null || value === void 0 ? void 0 : value[columnIndex];
47
+ if (currentValue === 0) {
48
+ // 如果 currentValue 为 0,返回第一个 children
49
+ columnOptions = currentOptions[0];
50
+ } else if (currentValue) {
51
+ // 如果 currentValue 存在,查找匹配的项
52
+ var index = currentOptions.findIndex(function(columnItem) {
53
+ return columnItem.value === currentValue;
54
+ });
55
+ columnOptions = currentOptions[index === -1 ? 0 : index] // 如果未找到,默认取第一个
56
+ ;
57
+ } else {
58
+ return "break" // 如果 currentValue 不存在,终止循环
59
+ ;
60
+ }
61
+ columnIndex++;
62
+ };
63
+ if (!options.length) return [] // 如果 options 为空,直接返回空数组
64
+ ;
65
+ var formatted = [];
66
+ var columnOptions = {
67
+ label: '',
68
+ value: '',
69
+ children: options
70
+ };
71
+ var columnIndex = 0;
72
+ while(columnOptions && columnOptions.children){
73
+ var _ret = _loop();
74
+ if (_ret === "break") break;
75
+ }
76
+ return formatted;
77
+ };
78
+ var formatOptions = useMemo(function() {
79
+ if (columnsType === 'cascade') {
80
+ var _props_options;
81
+ return formatCascadeOptions(props === null || props === void 0 ? void 0 : (_props_options = props.options) === null || _props_options === void 0 ? void 0 : _props_options[0], innerValue);
82
+ }
83
+ return props.options;
84
+ }, [
85
+ innerValue,
86
+ options,
87
+ columnsType
88
+ ]);
89
+ useEffect(function() {
90
+ var options = props.options;
91
+ if (Array.isArray(options) && options.length && options !== innerOptions) {
92
+ setInnerOptions(formatOptions);
93
+ }
94
+ }, [
95
+ props.options,
96
+ innerValue
97
+ ]);
98
+ useEffect(function() {
99
+ if (selectedValue !== innerValue) {
100
+ setInnerValue(selectedValue);
101
+ }
102
+ }, [
103
+ selectedValue
104
+ ]);
105
+ var handleSelect = useCallback(function(option, index) {
106
+ var newValue = option === null || option === void 0 ? void 0 : option.value;
107
+ if (!newValue || innerValue[index] === newValue) return;
108
+ changeIndex.current = index;
109
+ if (columnsType === 'multiple') {
110
+ setInnerValue(function(prev) {
111
+ var next = _to_consumable_array(prev);
112
+ next[index] = newValue;
113
+ return next;
114
+ });
115
+ } else {
116
+ var _option_children, _option_children1, _props_options;
117
+ var startIndex = index;
118
+ var values = [];
119
+ values[index] = option.value;
120
+ while(option === null || option === void 0 ? void 0 : (_option_children = option.children) === null || _option_children === void 0 ? void 0 : _option_children[0]){
121
+ values[index + 1] = option.children[0].value;
122
+ index++;
123
+ option = option.children[0];
124
+ }
125
+ // 当前改变列的下一列 children 值为空
126
+ if (option === null || option === void 0 ? void 0 : (_option_children1 = option.children) === null || _option_children1 === void 0 ? void 0 : _option_children1.length) {
127
+ values[index + 1] = '';
128
+ }
129
+ var combineResult = _to_consumable_array(innerValue.slice(0, startIndex)).concat(_to_consumable_array(values.splice(startIndex)));
130
+ setInnerValue(_to_consumable_array(combineResult));
131
+ var optionFirst = props === null || props === void 0 ? void 0 : (_props_options = props.options) === null || _props_options === void 0 ? void 0 : _props_options[0];
132
+ if (!isEqual(formatCascadeOptions(optionFirst, combineResult), innerOptions)) {
133
+ setInnerOptions(formatCascadeOptions(optionFirst, combineResult));
134
+ }
135
+ }
136
+ }, [
137
+ innerValue,
138
+ props.options,
139
+ columnsType,
140
+ innerOptions
141
+ ]);
142
+ var selectedOptions = useMemo(function() {
143
+ return innerOptions.map(function(columnOptions, index) {
144
+ var selectedOption = columnOptions.find(function(item) {
145
+ return item.value === innerValue[index];
146
+ });
147
+ return selectedOption;
148
+ // return selectedOption || columnOptions[0]
149
+ }).filter(Boolean);
150
+ }, [
151
+ innerOptions,
152
+ innerValue
153
+ ]);
154
+ useEffect(function() {
155
+ onChange === null || onChange === void 0 ? void 0 : onChange({
156
+ value: innerValue,
157
+ index: changeIndex.current,
158
+ selectedOptions: selectedOptions
159
+ });
160
+ }, [
161
+ innerValue,
162
+ selectedOptions,
163
+ onChange
164
+ ]);
165
+ return /*#__PURE__*/ React.createElement("div", {
166
+ className: cls,
167
+ style: style
168
+ }, innerOptions.map(function(item, index) {
169
+ var _props_setRefs;
170
+ return /*#__PURE__*/ React.createElement(PickerRoller, {
171
+ ref: props === null || props === void 0 ? void 0 : (_props_setRefs = props.setRefs) === null || _props_setRefs === void 0 ? void 0 : _props_setRefs.call(props, index),
172
+ key: index,
173
+ keyIndex: index,
174
+ value: innerValue[index],
175
+ options: item,
176
+ renderLabel: renderLabel,
177
+ onSelect: handleSelect,
178
+ duration: duration,
179
+ threeDimensional: threeDimensional
180
+ });
181
+ }), (innerOptions === null || innerOptions === void 0 ? void 0 : innerOptions.length) ? /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
182
+ className: "nut-pickerview-mask"
183
+ }), /*#__PURE__*/ React.createElement("div", {
184
+ className: "nut-pickerview-indicator"
185
+ })) : null);
186
+ };
187
+ var PickerView = /*#__PURE__*/ React.forwardRef(InternalPickerView);
188
+ export default PickerView;
@@ -0,0 +1 @@
1
+ import './style.css'
@@ -0,0 +1 @@
1
+ import './pickerview.scss';