antd-mobile 5.0.0-rc.21 → 5.0.0-rc.25

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 (327) hide show
  1. package/2x/README.md +7 -6
  2. package/2x/cjs/components/avatar/avatar.d.ts +1 -1
  3. package/2x/cjs/components/badge/badge.css +18 -10
  4. package/2x/cjs/components/badge/badge.d.ts +1 -0
  5. package/2x/cjs/components/badge/badge.js +4 -5
  6. package/2x/cjs/components/button/button.css +1 -1
  7. package/2x/cjs/components/calendar/calendar.js +4 -0
  8. package/2x/cjs/components/capsule-tabs/capsule-tabs.css +1 -1
  9. package/2x/cjs/components/cascade-picker-view/cascade-picker-view.d.ts +1 -2
  10. package/2x/cjs/components/checkbox/check-icon.js +4 -13
  11. package/2x/cjs/components/checkbox/checkbox.css +11 -30
  12. package/2x/cjs/components/checkbox/checkbox.js +4 -6
  13. package/2x/cjs/components/checkbox/indeterminate-icon.d.ts +3 -0
  14. package/2x/cjs/components/checkbox/indeterminate-icon.js +24 -0
  15. package/2x/cjs/components/date-picker/date-picker.d.ts +1 -1
  16. package/2x/cjs/components/date-picker-view/date-picker-view.d.ts +3 -2
  17. package/2x/cjs/components/error-block/error-block.d.ts +1 -1
  18. package/2x/cjs/components/floating-bubble/floating-bubble.css +1 -0
  19. package/2x/cjs/components/floating-panel/floating-panel.d.ts +2 -0
  20. package/2x/cjs/components/floating-panel/floating-panel.js +5 -0
  21. package/2x/cjs/components/form/form-item.css +3 -2
  22. package/2x/cjs/components/form/form-item.d.ts +2 -2
  23. package/2x/cjs/components/form/form-item.js +9 -5
  24. package/2x/cjs/components/form/form.css +7 -3
  25. package/2x/cjs/components/form/form.d.ts +5 -4
  26. package/2x/cjs/components/form/index.css +10 -5
  27. package/2x/cjs/components/form/index.d.ts +5 -4
  28. package/2x/cjs/components/image-viewer/image-viewer.d.ts +8 -2
  29. package/2x/cjs/components/image-viewer/image-viewer.js +8 -5
  30. package/2x/cjs/components/image-viewer/index.d.ts +6 -2
  31. package/2x/cjs/components/image-viewer/slides.d.ts +7 -3
  32. package/2x/cjs/components/image-viewer/slides.js +18 -11
  33. package/2x/cjs/components/input/input.css +28 -25
  34. package/2x/cjs/components/input/input.d.ts +4 -4
  35. package/2x/cjs/components/input/input.js +10 -4
  36. package/2x/cjs/components/jumbo-tabs/jumbo-tabs.css +4 -1
  37. package/2x/cjs/components/list/list.css +2 -6
  38. package/2x/cjs/components/list/list.d.ts +1 -1
  39. package/2x/cjs/components/modal/modal.css +25 -20
  40. package/2x/cjs/components/modal/modal.js +8 -12
  41. package/2x/cjs/components/nav-bar/nav-bar.css +3 -3
  42. package/2x/cjs/components/notice-bar/notice-bar.d.ts +1 -1
  43. package/2x/cjs/components/passcode-input/passcode-input.d.ts +2 -2
  44. package/2x/cjs/components/picker/picker.css +10 -2
  45. package/2x/cjs/components/picker/picker.d.ts +1 -1
  46. package/2x/cjs/components/picker-view/picker-view.css +4 -2
  47. package/2x/cjs/components/picker-view/picker-view.d.ts +1 -1
  48. package/2x/cjs/components/picker-view/wheel.js +1 -1
  49. package/2x/cjs/components/popover/arrow.d.ts +3 -0
  50. package/2x/cjs/components/popover/arrow.js +26 -0
  51. package/2x/cjs/components/popover/index.d.ts +7 -15
  52. package/2x/cjs/components/popover/index.js +4 -2
  53. package/2x/cjs/components/popover/popover-menu.css +63 -0
  54. package/2x/cjs/components/popover/popover-menu.d.ts +20 -0
  55. package/{cjs/components/popover/pop-menu.js → 2x/cjs/components/popover/popover-menu.js} +23 -26
  56. package/2x/cjs/components/popover/popover.css +90 -318
  57. package/2x/cjs/components/popover/popover.d.ts +9 -8
  58. package/2x/cjs/components/popover/popover.js +11 -17
  59. package/2x/cjs/components/radio/radio.css +9 -12
  60. package/2x/cjs/components/radio/radio.js +1 -3
  61. package/2x/cjs/components/result/result.css +2 -5
  62. package/2x/cjs/components/search-bar/search-bar.css +14 -9
  63. package/2x/cjs/components/selector/selector.css +4 -0
  64. package/2x/cjs/components/spin-loading/spin-loading.css +1 -19
  65. package/2x/cjs/components/spin-loading/spin-loading.d.ts +1 -1
  66. package/2x/cjs/components/spin-loading/spin-loading.js +33 -5
  67. package/2x/cjs/components/stepper/stepper.css +4 -7
  68. package/2x/cjs/components/stepper/stepper.js +0 -1
  69. package/2x/cjs/components/swipe-action/swipe-action.d.ts +2 -2
  70. package/2x/cjs/components/swipe-action/swipe-action.js +1 -1
  71. package/2x/cjs/components/swiper/swiper.js +14 -19
  72. package/2x/cjs/components/switch/switch.css +8 -3
  73. package/2x/cjs/components/tabs/tabs.css +1 -1
  74. package/2x/cjs/components/tag/tag.css +3 -3
  75. package/2x/cjs/components/text-area/text-area.css +9 -9
  76. package/2x/cjs/components/text-area/text-area.d.ts +2 -2
  77. package/2x/cjs/components/text-area/text-area.js +41 -32
  78. package/2x/cjs/components/virtual-input/virtual-input.d.ts +1 -1
  79. package/2x/cjs/utils/get-scroll-parent.js +1 -1
  80. package/2x/es/components/avatar/avatar.d.ts +1 -1
  81. package/2x/es/components/badge/badge.css +18 -10
  82. package/2x/es/components/badge/badge.d.ts +1 -0
  83. package/2x/es/components/badge/badge.js +4 -5
  84. package/2x/es/components/button/button.css +1 -1
  85. package/2x/es/components/calendar/calendar.js +2 -0
  86. package/2x/es/components/capsule-tabs/capsule-tabs.css +1 -1
  87. package/2x/es/components/cascade-picker-view/cascade-picker-view.d.ts +1 -2
  88. package/2x/es/components/checkbox/check-icon.js +4 -13
  89. package/2x/es/components/checkbox/checkbox.css +11 -30
  90. package/2x/es/components/checkbox/checkbox.js +3 -6
  91. package/2x/es/components/checkbox/indeterminate-icon.d.ts +3 -0
  92. package/2x/es/components/checkbox/indeterminate-icon.js +10 -0
  93. package/2x/es/components/date-picker/date-picker.d.ts +1 -1
  94. package/2x/es/components/date-picker-view/date-picker-view.d.ts +3 -2
  95. package/2x/es/components/error-block/error-block.d.ts +1 -1
  96. package/2x/es/components/floating-bubble/floating-bubble.css +1 -0
  97. package/2x/es/components/floating-panel/floating-panel.d.ts +2 -0
  98. package/2x/es/components/floating-panel/floating-panel.js +5 -0
  99. package/2x/es/components/form/form-item.css +3 -2
  100. package/2x/es/components/form/form-item.d.ts +2 -2
  101. package/2x/es/components/form/form-item.js +9 -5
  102. package/2x/es/components/form/form.css +7 -3
  103. package/2x/es/components/form/form.d.ts +5 -4
  104. package/2x/es/components/form/index.css +10 -5
  105. package/2x/es/components/form/index.d.ts +5 -4
  106. package/2x/es/components/image-viewer/image-viewer.d.ts +8 -2
  107. package/2x/es/components/image-viewer/image-viewer.js +4 -3
  108. package/2x/es/components/image-viewer/index.d.ts +6 -2
  109. package/2x/es/components/image-viewer/slides.d.ts +7 -3
  110. package/2x/es/components/image-viewer/slides.js +19 -10
  111. package/2x/es/components/input/input.css +28 -25
  112. package/2x/es/components/input/input.d.ts +4 -4
  113. package/2x/es/components/input/input.js +7 -4
  114. package/2x/es/components/jumbo-tabs/jumbo-tabs.css +4 -1
  115. package/2x/es/components/list/list.css +2 -6
  116. package/2x/es/components/list/list.d.ts +1 -1
  117. package/2x/es/components/modal/modal.css +25 -20
  118. package/2x/es/components/modal/modal.js +8 -12
  119. package/2x/es/components/nav-bar/nav-bar.css +3 -3
  120. package/2x/es/components/notice-bar/notice-bar.d.ts +1 -1
  121. package/2x/es/components/passcode-input/passcode-input.d.ts +2 -2
  122. package/2x/es/components/picker/picker.css +10 -2
  123. package/2x/es/components/picker/picker.d.ts +1 -1
  124. package/2x/es/components/picker-view/picker-view.css +4 -2
  125. package/2x/es/components/picker-view/picker-view.d.ts +1 -1
  126. package/2x/es/components/picker-view/wheel.js +1 -1
  127. package/2x/es/components/popover/arrow.d.ts +3 -0
  128. package/2x/es/components/popover/arrow.js +12 -0
  129. package/2x/es/components/popover/index.d.ts +7 -15
  130. package/2x/es/components/popover/index.js +3 -2
  131. package/2x/es/components/popover/popover-menu.css +63 -0
  132. package/2x/es/components/popover/popover-menu.d.ts +20 -0
  133. package/2x/es/components/popover/popover-menu.js +52 -0
  134. package/2x/es/components/popover/popover.css +90 -318
  135. package/2x/es/components/popover/popover.d.ts +9 -8
  136. package/2x/es/components/popover/popover.js +10 -17
  137. package/2x/es/components/radio/radio.css +9 -12
  138. package/2x/es/components/radio/radio.js +1 -3
  139. package/2x/es/components/result/result.css +2 -5
  140. package/2x/es/components/search-bar/search-bar.css +14 -9
  141. package/2x/es/components/selector/selector.css +4 -0
  142. package/2x/es/components/spin-loading/spin-loading.css +1 -19
  143. package/2x/es/components/spin-loading/spin-loading.d.ts +1 -1
  144. package/2x/es/components/spin-loading/spin-loading.js +32 -5
  145. package/2x/es/components/stepper/stepper.css +4 -7
  146. package/2x/es/components/stepper/stepper.js +0 -1
  147. package/2x/es/components/swipe-action/swipe-action.d.ts +2 -2
  148. package/2x/es/components/swipe-action/swipe-action.js +1 -1
  149. package/2x/es/components/swiper/swiper.js +13 -19
  150. package/2x/es/components/switch/switch.css +8 -3
  151. package/2x/es/components/tabs/tabs.css +1 -1
  152. package/2x/es/components/tag/tag.css +3 -3
  153. package/2x/es/components/text-area/text-area.css +9 -9
  154. package/2x/es/components/text-area/text-area.d.ts +2 -2
  155. package/2x/es/components/text-area/text-area.js +41 -31
  156. package/2x/es/components/virtual-input/virtual-input.d.ts +1 -1
  157. package/2x/es/utils/get-scroll-parent.js +1 -1
  158. package/2x/package.json +2 -2
  159. package/README.md +7 -6
  160. package/cjs/components/avatar/avatar.d.ts +1 -1
  161. package/cjs/components/badge/badge.css +16 -10
  162. package/cjs/components/badge/badge.d.ts +1 -0
  163. package/cjs/components/badge/badge.js +4 -5
  164. package/cjs/components/button/button.css +1 -1
  165. package/cjs/components/calendar/calendar.js +4 -0
  166. package/cjs/components/capsule-tabs/capsule-tabs.css +1 -1
  167. package/cjs/components/cascade-picker-view/cascade-picker-view.d.ts +1 -2
  168. package/cjs/components/checkbox/check-icon.js +4 -13
  169. package/cjs/components/checkbox/checkbox.css +11 -27
  170. package/cjs/components/checkbox/checkbox.js +4 -6
  171. package/cjs/components/checkbox/indeterminate-icon.d.ts +3 -0
  172. package/cjs/components/checkbox/indeterminate-icon.js +24 -0
  173. package/cjs/components/date-picker/date-picker.d.ts +1 -1
  174. package/cjs/components/date-picker-view/date-picker-view.d.ts +3 -2
  175. package/cjs/components/error-block/error-block.d.ts +1 -1
  176. package/cjs/components/floating-bubble/floating-bubble.css +1 -0
  177. package/cjs/components/floating-panel/floating-panel.d.ts +2 -0
  178. package/cjs/components/floating-panel/floating-panel.js +5 -0
  179. package/cjs/components/form/form-item.css +3 -2
  180. package/cjs/components/form/form-item.d.ts +2 -2
  181. package/cjs/components/form/form-item.js +9 -5
  182. package/cjs/components/form/form.css +6 -3
  183. package/cjs/components/form/form.d.ts +5 -4
  184. package/cjs/components/form/index.css +9 -5
  185. package/cjs/components/form/index.d.ts +5 -4
  186. package/cjs/components/image-viewer/image-viewer.d.ts +8 -2
  187. package/cjs/components/image-viewer/image-viewer.js +8 -5
  188. package/cjs/components/image-viewer/index.d.ts +6 -2
  189. package/cjs/components/image-viewer/slides.d.ts +7 -3
  190. package/cjs/components/image-viewer/slides.js +18 -11
  191. package/cjs/components/input/input.css +26 -24
  192. package/cjs/components/input/input.d.ts +4 -4
  193. package/cjs/components/input/input.js +10 -4
  194. package/cjs/components/jumbo-tabs/jumbo-tabs.css +4 -1
  195. package/cjs/components/list/list.css +2 -5
  196. package/cjs/components/list/list.d.ts +1 -1
  197. package/cjs/components/modal/modal.css +23 -19
  198. package/cjs/components/modal/modal.js +8 -12
  199. package/cjs/components/nav-bar/nav-bar.css +3 -3
  200. package/cjs/components/notice-bar/notice-bar.d.ts +1 -1
  201. package/cjs/components/passcode-input/passcode-input.d.ts +2 -2
  202. package/cjs/components/picker/picker.css +9 -2
  203. package/cjs/components/picker/picker.d.ts +1 -1
  204. package/cjs/components/picker-view/picker-view.css +4 -2
  205. package/cjs/components/picker-view/picker-view.d.ts +1 -1
  206. package/cjs/components/picker-view/wheel.js +1 -1
  207. package/cjs/components/popover/arrow.d.ts +3 -0
  208. package/cjs/components/popover/arrow.js +26 -0
  209. package/cjs/components/popover/index.d.ts +7 -15
  210. package/cjs/components/popover/index.js +4 -2
  211. package/cjs/components/popover/popover-menu.css +52 -0
  212. package/cjs/components/popover/popover-menu.d.ts +20 -0
  213. package/{2x/cjs/components/popover/pop-menu.js → cjs/components/popover/popover-menu.js} +23 -26
  214. package/cjs/components/popover/popover.css +83 -276
  215. package/cjs/components/popover/popover.d.ts +9 -8
  216. package/cjs/components/popover/popover.js +11 -17
  217. package/cjs/components/radio/radio.css +9 -12
  218. package/cjs/components/radio/radio.js +1 -3
  219. package/cjs/components/result/result.css +2 -5
  220. package/cjs/components/search-bar/search-bar.css +13 -9
  221. package/cjs/components/selector/selector.css +3 -0
  222. package/cjs/components/spin-loading/spin-loading.css +1 -17
  223. package/cjs/components/spin-loading/spin-loading.d.ts +1 -1
  224. package/cjs/components/spin-loading/spin-loading.js +33 -5
  225. package/cjs/components/stepper/stepper.css +4 -6
  226. package/cjs/components/stepper/stepper.js +0 -1
  227. package/cjs/components/swipe-action/swipe-action.d.ts +2 -2
  228. package/cjs/components/swipe-action/swipe-action.js +1 -1
  229. package/cjs/components/swiper/swiper.js +14 -19
  230. package/cjs/components/switch/switch.css +8 -3
  231. package/cjs/components/tabs/tabs.css +1 -1
  232. package/cjs/components/tag/tag.css +3 -3
  233. package/cjs/components/text-area/text-area.css +9 -9
  234. package/cjs/components/text-area/text-area.d.ts +2 -2
  235. package/cjs/components/text-area/text-area.js +41 -32
  236. package/cjs/components/virtual-input/virtual-input.d.ts +1 -1
  237. package/cjs/utils/get-scroll-parent.js +1 -1
  238. package/es/components/avatar/avatar.d.ts +1 -1
  239. package/es/components/badge/badge.css +16 -10
  240. package/es/components/badge/badge.d.ts +1 -0
  241. package/es/components/badge/badge.js +4 -5
  242. package/es/components/button/button.css +1 -1
  243. package/es/components/calendar/calendar.js +2 -0
  244. package/es/components/capsule-tabs/capsule-tabs.css +1 -1
  245. package/es/components/cascade-picker-view/cascade-picker-view.d.ts +1 -2
  246. package/es/components/checkbox/check-icon.js +4 -13
  247. package/es/components/checkbox/checkbox.css +11 -27
  248. package/es/components/checkbox/checkbox.js +3 -6
  249. package/es/components/checkbox/indeterminate-icon.d.ts +3 -0
  250. package/es/components/checkbox/indeterminate-icon.js +10 -0
  251. package/es/components/date-picker/date-picker.d.ts +1 -1
  252. package/es/components/date-picker-view/date-picker-view.d.ts +3 -2
  253. package/es/components/error-block/error-block.d.ts +1 -1
  254. package/es/components/floating-bubble/floating-bubble.css +1 -0
  255. package/es/components/floating-panel/floating-panel.d.ts +2 -0
  256. package/es/components/floating-panel/floating-panel.js +5 -0
  257. package/es/components/form/form-item.css +3 -2
  258. package/es/components/form/form-item.d.ts +2 -2
  259. package/es/components/form/form-item.js +9 -5
  260. package/es/components/form/form.css +6 -3
  261. package/es/components/form/form.d.ts +5 -4
  262. package/es/components/form/index.css +9 -5
  263. package/es/components/form/index.d.ts +5 -4
  264. package/es/components/image-viewer/image-viewer.d.ts +8 -2
  265. package/es/components/image-viewer/image-viewer.js +4 -3
  266. package/es/components/image-viewer/index.d.ts +6 -2
  267. package/es/components/image-viewer/slides.d.ts +7 -3
  268. package/es/components/image-viewer/slides.js +19 -10
  269. package/es/components/input/input.css +26 -24
  270. package/es/components/input/input.d.ts +4 -4
  271. package/es/components/input/input.js +7 -4
  272. package/es/components/jumbo-tabs/jumbo-tabs.css +4 -1
  273. package/es/components/list/list.css +2 -5
  274. package/es/components/list/list.d.ts +1 -1
  275. package/es/components/modal/modal.css +23 -19
  276. package/es/components/modal/modal.js +8 -12
  277. package/es/components/nav-bar/nav-bar.css +3 -3
  278. package/es/components/notice-bar/notice-bar.d.ts +1 -1
  279. package/es/components/passcode-input/passcode-input.d.ts +2 -2
  280. package/es/components/picker/picker.css +9 -2
  281. package/es/components/picker/picker.d.ts +1 -1
  282. package/es/components/picker-view/picker-view.css +4 -2
  283. package/es/components/picker-view/picker-view.d.ts +1 -1
  284. package/es/components/picker-view/wheel.js +1 -1
  285. package/es/components/popover/arrow.d.ts +3 -0
  286. package/es/components/popover/arrow.js +12 -0
  287. package/es/components/popover/index.d.ts +7 -15
  288. package/es/components/popover/index.js +3 -2
  289. package/es/components/popover/popover-menu.css +52 -0
  290. package/es/components/popover/popover-menu.d.ts +20 -0
  291. package/es/components/popover/popover-menu.js +52 -0
  292. package/es/components/popover/popover.css +83 -276
  293. package/es/components/popover/popover.d.ts +9 -8
  294. package/es/components/popover/popover.js +10 -17
  295. package/es/components/radio/radio.css +9 -12
  296. package/es/components/radio/radio.js +1 -3
  297. package/es/components/result/result.css +2 -5
  298. package/es/components/search-bar/search-bar.css +13 -9
  299. package/es/components/selector/selector.css +3 -0
  300. package/es/components/spin-loading/spin-loading.css +1 -17
  301. package/es/components/spin-loading/spin-loading.d.ts +1 -1
  302. package/es/components/spin-loading/spin-loading.js +32 -5
  303. package/es/components/stepper/stepper.css +4 -6
  304. package/es/components/stepper/stepper.js +0 -1
  305. package/es/components/swipe-action/swipe-action.d.ts +2 -2
  306. package/es/components/swipe-action/swipe-action.js +1 -1
  307. package/es/components/swiper/swiper.js +13 -19
  308. package/es/components/switch/switch.css +8 -3
  309. package/es/components/tabs/tabs.css +1 -1
  310. package/es/components/tag/tag.css +3 -3
  311. package/es/components/text-area/text-area.css +9 -9
  312. package/es/components/text-area/text-area.d.ts +2 -2
  313. package/es/components/text-area/text-area.js +41 -31
  314. package/es/components/virtual-input/virtual-input.d.ts +1 -1
  315. package/es/utils/get-scroll-parent.js +1 -1
  316. package/package.json +2 -2
  317. package/umd/antd-mobile.js +1 -1
  318. package/2x/cjs/components/popover/animation.css +0 -111
  319. package/2x/cjs/components/popover/pop-menu.d.ts +0 -28
  320. package/2x/es/components/popover/animation.css +0 -111
  321. package/2x/es/components/popover/pop-menu.d.ts +0 -28
  322. package/2x/es/components/popover/pop-menu.js +0 -54
  323. package/cjs/components/popover/animation.css +0 -96
  324. package/cjs/components/popover/pop-menu.d.ts +0 -28
  325. package/es/components/popover/animation.css +0 -96
  326. package/es/components/popover/pop-menu.d.ts +0 -28
  327. package/es/components/popover/pop-menu.js +0 -54
@@ -33,7 +33,7 @@
33
33
  margin: 0 auto;
34
34
  border-radius: 40px;
35
35
  cursor: pointer;
36
- font-size: var(--adm-font-size-main);
36
+ font-size: 30px;
37
37
  text-align: center;
38
38
  white-space: nowrap;
39
39
  background-color: #f5f5f5;
@@ -1,8 +1,7 @@
1
1
  import { FC } from 'react';
2
- import { NativeProps } from '../../utils/native-props';
3
2
  import type { PickerViewProps } from '../picker-view';
4
3
  import type { CascadePickerOption } from '../cascade-picker';
5
4
  export declare type CascadePickerViewProps = Omit<PickerViewProps, 'columns'> & {
6
5
  options: CascadePickerOption[];
7
- } & NativeProps<'--height'>;
6
+ };
8
7
  export declare const CascadePickerView: FC<CascadePickerViewProps>;
@@ -2,18 +2,9 @@ import React, { memo } from 'react';
2
2
  import { withNativeProps } from '../../utils/native-props';
3
3
  export const CheckIcon = memo(props => {
4
4
  return withNativeProps(props, React.createElement("svg", {
5
- viewBox: '0 0 24 16'
6
- }, React.createElement("g", {
7
- stroke: 'none',
8
- strokeWidth: '1',
9
- fill: 'none',
10
- fillRule: 'evenodd'
11
- }, React.createElement("g", {
12
- transform: 'translate(-35.000000, -40.000000)',
13
- fill: 'currentColor'
14
- }, React.createElement("g", {
15
- transform: 'translate(24.000000, 26.000000)'
5
+ viewBox: '0 0 40 40'
16
6
  }, React.createElement("path", {
17
- d: 'M18.8574375,25.9363304 L14.4138058,21.4926987 C13.8001225,20.8790154 12.8051453,20.8790154 12.1914621,21.4926987 C11.5777807,22.10638 11.5777807,23.1013541 12.1914621,23.7150354 C12.1914632,23.7150366 12.1914644,23.7150377 12.1914656,23.7150389 L17.4442507,28.9677909 C18.225314,29.7488091 19.4916285,29.7488141 20.2726979,28.9678021 L21.0808125,28.1597054 L21.0808125,28.1597054 L32.5627182,16.6759191 C33.176366,16.0621709 33.1763252,15.0671824 32.5626272,14.4534844 C31.948944,13.8398011 30.9539668,13.8398011 30.3402835,14.4534844 L18.8574375,25.9363304 L18.8574375,25.9363304 Z'
18
- }))))));
7
+ d: 'M31.5541766,15 L28.0892433,15 L28.0892434,15 C27.971052,15 27.8576674,15.044522 27.7740471,15.1239792 L18.2724722,24.1625319 L13.2248725,19.3630279 L13.2248725,19.3630279 C13.1417074,19.2834412 13.0287551,19.2384807 12.9107898,19.2380079 L9.44474455,19.2380079 L9.44474454,19.2380079 C9.19869815,19.2384085 8.99957935,19.4284738 9,19.66253 C9,19.7747587 9.04719253,19.8823283 9.13066188,19.9616418 L17.0907466,27.5338228 C17.4170809,27.8442545 17.8447695,28 18.2713393,28 L18.2980697,28 C18.7168464,27.993643 19.133396,27.8378975 19.4530492,27.5338228 L31.8693384,15.7236361 L31.8693384,15.7236361 C32.0434167,15.5582251 32.0435739,15.2898919 31.8696892,15.1242941 C31.7860402,15.0446329 31.6725052,15 31.5541421,15 L31.5541766,15 Z',
8
+ fill: 'currentColor'
9
+ })));
19
10
  });
@@ -15,20 +15,18 @@
15
15
 
16
16
  .adm-checkbox .adm-checkbox-icon {
17
17
  flex: none;
18
- border: 2px solid #ccc;
18
+ border: 2px solid var(--adm-color-light);
19
19
  border-radius: var(--icon-size);
20
20
  box-sizing: border-box;
21
- display: flex;
22
- justify-content: center;
23
- align-items: center;
24
21
  width: var(--icon-size);
25
22
  height: var(--icon-size);
26
- color: #ffffff;
23
+ color: var(--adm-color-white);
27
24
  }
28
25
 
29
- .adm-checkbox .adm-checkbox-icon-checked {
30
- width: 65%;
31
- height: 65%;
26
+ .adm-checkbox .adm-checkbox-icon > svg {
27
+ display: block;
28
+ width: 100%;
29
+ height: 100%;
32
30
  }
33
31
 
34
32
  .adm-checkbox.adm-checkbox-block {
@@ -45,22 +43,13 @@
45
43
  }
46
44
 
47
45
  .adm-checkbox.adm-checkbox-disabled .adm-checkbox-content {
48
- color: var(--adm-color-weak);
46
+ opacity: 0.4;
49
47
  }
50
48
 
51
- .adm-checkbox.adm-checkbox-disabled.adm-checkbox-indeterminate .adm-checkbox-icon {
52
- color: #ccc;
53
- border-color: #ccc;
54
- background-color: #ebedf0;
55
- }
56
-
57
- .adm-checkbox.adm-checkbox-disabled.adm-checkbox-checked .adm-checkbox-icon {
58
- color: #ccc;
59
- }
60
-
61
- .adm-checkbox.adm-checkbox-disabled .adm-checkbox-icon {
62
- border-color: #ccc;
63
- background-color: #ebedf0;
49
+ .adm-checkbox.adm-checkbox-disabled .adm-checkbox-icon.adm-checkbox-icon {
50
+ color: #b7b7b7;
51
+ border-color: var(--adm-color-light);
52
+ background-color: #f5f5f5;
64
53
  }
65
54
 
66
55
  .adm-checkbox .adm-checkbox-custom-icon {
@@ -68,18 +57,10 @@
68
57
  }
69
58
 
70
59
  .adm-checkbox.adm-checkbox-indeterminate .adm-checkbox-icon {
71
- border-color: var(--adm-color-primary);
72
60
  background-color: #ffffff;
73
61
  color: var(--adm-color-primary);
74
62
  }
75
63
 
76
- .adm-checkbox.adm-checkbox-indeterminate .adm-checkbox-indeterminate-checked {
77
- width: 60%;
78
- height: 60%;
79
- border-radius: 100%;
80
- background-color: currentColor;
81
- }
82
-
83
64
  .adm-checkbox-content {
84
65
  flex: 0 1 auto;
85
66
  font-size: var(--font-size);
@@ -6,6 +6,7 @@ import { usePropsValue } from '../../utils/use-props-value';
6
6
  import { mergeProps } from '../../utils/with-default-props';
7
7
  import { devWarning } from '../../utils/dev-log';
8
8
  import { CheckIcon } from './check-icon';
9
+ import { IndeterminateIcon } from './indeterminate-icon';
9
10
  const classPrefix = `adm-checkbox`;
10
11
  const defaultProps = {
11
12
  defaultChecked: false,
@@ -63,16 +64,12 @@ export const Checkbox = p => {
63
64
 
64
65
  return React.createElement("div", {
65
66
  className: `${classPrefix}-icon`
66
- }, props.indeterminate ? React.createElement("div", {
67
- className: `${classPrefix}-indeterminate-checked`
68
- }) : checked && React.createElement(CheckIcon, {
69
- className: `${classPrefix}-icon-checked`
70
- }));
67
+ }, props.indeterminate ? React.createElement(IndeterminateIcon, null) : checked && React.createElement(CheckIcon, null));
71
68
  };
72
69
 
73
70
  return withNativeProps(props, React.createElement("label", {
74
71
  className: classNames(classPrefix, {
75
- [`${classPrefix}-checked`]: checked,
72
+ [`${classPrefix}-checked`]: checked && !props.indeterminate,
76
73
  [`${classPrefix}-indeterminate`]: props.indeterminate,
77
74
  [`${classPrefix}-disabled`]: disabled,
78
75
  [`${classPrefix}-block`]: props.block
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { NativeProps } from '../../utils/native-props';
3
+ export declare const IndeterminateIcon: React.NamedExoticComponent<NativeProps<never>>;
@@ -0,0 +1,10 @@
1
+ import React, { memo } from 'react';
2
+ import { withNativeProps } from '../../utils/native-props';
3
+ export const IndeterminateIcon = memo(props => {
4
+ return withNativeProps(props, React.createElement("svg", {
5
+ viewBox: '0 0 40 40'
6
+ }, React.createElement("path", {
7
+ d: 'M20,9 C26.0752953,9 31,13.9247047 31,20 C31,26.0752953 26.0752953,31 20,31 C13.9247047,31 9,26.0752953 9,20 C9,13.9247047 13.9247047,9 20,9 Z',
8
+ fill: 'currentColor'
9
+ })));
10
+ });
@@ -2,7 +2,7 @@ import { FC, ReactNode } from 'react';
2
2
  import type { PickerProps } from '../picker';
3
3
  import { NativeProps } from '../../utils/native-props';
4
4
  import type { Precision, DatePickerFilter } from './date-picker-utils';
5
- export declare type DatePickerProps = Pick<PickerProps, 'onCancel' | 'onClose' | 'visible' | 'confirmText' | 'cancelText' | 'getContainer' | 'afterShow' | 'afterClose' | 'onClick' | 'title' | 'stopPropagation'> & {
5
+ export declare type DatePickerProps = Pick<PickerProps, 'onCancel' | 'onClose' | 'visible' | 'confirmText' | 'cancelText' | 'getContainer' | 'afterShow' | 'afterClose' | 'onClick' | 'title' | 'stopPropagation' | 'style'> & {
6
6
  value?: Date | null;
7
7
  defaultValue?: Date | null;
8
8
  onSelect?: (value: Date) => void;
@@ -1,7 +1,8 @@
1
1
  import { FC, ReactNode } from 'react';
2
+ import type { PickerViewProps } from '../picker-view';
2
3
  import { NativeProps } from '../../utils/native-props';
3
4
  import type { Precision, DatePickerFilter } from '../date-picker/date-picker-utils';
4
- export declare type DatePickerViewProps = {
5
+ export declare type DatePickerViewProps = Pick<PickerViewProps, 'style'> & {
5
6
  value?: Date;
6
7
  defaultValue?: Date;
7
8
  onChange?: (value: Date) => void;
@@ -10,5 +11,5 @@ export declare type DatePickerViewProps = {
10
11
  precision?: Precision;
11
12
  renderLabel?: (type: Precision, data: number) => ReactNode;
12
13
  filter?: DatePickerFilter;
13
- } & NativeProps<'--height'>;
14
+ } & NativeProps;
14
15
  export declare const DatePickerView: FC<DatePickerViewProps>;
@@ -6,5 +6,5 @@ export declare type ErrorBlockProps = {
6
6
  image?: string | ReactElement;
7
7
  description?: ReactNode;
8
8
  fullPage?: boolean;
9
- } & NativeProps<'--image-height' | '--image-height-full-page'>;
9
+ } & NativeProps<'--image-height' | '--image-height-full-page' | '--image-width' | '--image-width-full-page'>;
10
10
  export declare const ErrorBlock: FC<ErrorBlockProps>;
@@ -16,6 +16,7 @@
16
16
  width: 100vw;
17
17
  height: 100vh;
18
18
  padding: var(--edge-distance);
19
+ box-sizing: border-box;
19
20
  pointer-events: none;
20
21
  }
21
22
 
@@ -3,6 +3,7 @@ import { NativeProps } from '../../utils/native-props';
3
3
  export declare type FloatingPanelProps = {
4
4
  anchors: number[];
5
5
  children: ReactNode;
6
+ onHeightChange?: (height: number, animating: boolean) => void;
6
7
  } & NativeProps<'--border-radius' | '--z-index'>;
7
8
  export declare type FloatingPanelRef = {
8
9
  setHeight: (height: number, options?: {
@@ -12,4 +13,5 @@ export declare type FloatingPanelRef = {
12
13
  export declare const FloatingPanel: React.ForwardRefExoticComponent<{
13
14
  anchors: number[];
14
15
  children: ReactNode;
16
+ onHeightChange?: ((height: number, animating: boolean) => void) | undefined;
15
17
  } & NativeProps<"--z-index" | "--border-radius"> & React.RefAttributes<FloatingPanelRef>>;
@@ -27,6 +27,11 @@ export const FloatingPanel = forwardRef((props, ref) => {
27
27
  y: bounds.bottom,
28
28
  config: {
29
29
  tension: 300
30
+ },
31
+ onChange: result => {
32
+ var _a;
33
+
34
+ (_a = props.onHeightChange) === null || _a === void 0 ? void 0 : _a.call(props, result.value.y, y.isAnimating);
30
35
  }
31
36
  }));
32
37
  useDrag(state => {
@@ -13,7 +13,8 @@
13
13
  .adm-form-item-label-required {
14
14
  position: absolute;
15
15
  left: -0.6em;
16
- top: 0.2em;
16
+ top: 0;
17
+ font-family: SimSun, sans-serif;
17
18
  color: var(--adm-color-danger);
18
19
  user-select: none;
19
20
  }
@@ -27,8 +28,8 @@
27
28
  }
28
29
 
29
30
  .adm-form-vertical .adm-form-item-label {
30
- margin-bottom: 8px;
31
31
  font-size: 30px;
32
+ margin-bottom: 8px;
32
33
  }
33
34
 
34
35
  .adm-form-vertical .adm-form-item-footer {
@@ -7,7 +7,7 @@ import type { FormLayout } from './index';
7
7
  declare type RenderChildren<Values = any> = (form: FormInstance<Values>) => React.ReactNode;
8
8
  declare type ChildrenType<Values = any> = RenderChildren<Values> | React.ReactNode;
9
9
  declare type RcFieldProps = Omit<FieldProps, 'children'>;
10
- export declare type FormItemProps = RcFieldProps & NativeProps & Pick<ListItemProps, 'style' | 'onClick' | 'extra'> & {
10
+ export declare type FormItemProps = Pick<RcFieldProps, 'dependencies' | 'valuePropName' | 'name' | 'rules' | 'messageVariables' | 'trigger' | 'validateTrigger' | 'shouldUpdate'> & Pick<ListItemProps, 'style' | 'onClick' | 'extra' | 'arrow'> & {
11
11
  label?: React.ReactNode;
12
12
  help?: React.ReactNode;
13
13
  hasFeedback?: boolean;
@@ -17,6 +17,6 @@ export declare type FormItemProps = RcFieldProps & NativeProps & Pick<ListItemPr
17
17
  hidden?: boolean;
18
18
  layout?: FormLayout;
19
19
  children: ChildrenType;
20
- };
20
+ } & NativeProps;
21
21
  export declare const FormItem: FC<FormItemProps>;
22
22
  export {};
@@ -25,7 +25,8 @@ const FormItemLayout = props => {
25
25
  children,
26
26
  htmlFor,
27
27
  hidden,
28
- errors
28
+ errors,
29
+ arrow
29
30
  } = props;
30
31
  const context = useContext(FormContext);
31
32
  const hasFeedback = props.hasFeedback !== undefined ? props.hasFeedback : context.hasFeedback;
@@ -52,7 +53,8 @@ const FormItemLayout = props => {
52
53
  [`${classPrefix}-hidden`]: hidden
53
54
  }),
54
55
  disabled: disabled,
55
- onClick: props.onClick
56
+ onClick: props.onClick,
57
+ arrow: arrow
56
58
  }, children);
57
59
  };
58
60
 
@@ -80,9 +82,10 @@ export const FormItem = props => {
80
82
  validateTrigger,
81
83
  onClick,
82
84
  shouldUpdate,
83
- dependencies
85
+ dependencies,
86
+ arrow
84
87
  } = props,
85
- fieldProps = __rest(props, ["className", "style", "label", "help", "extra", "hasFeedback", "name", "required", "noStyle", "hidden", "layout", "disabled", "rules", "children", "messageVariables", "trigger", "validateTrigger", "onClick", "shouldUpdate", "dependencies"]);
88
+ fieldProps = __rest(props, ["className", "style", "label", "help", "extra", "hasFeedback", "name", "required", "noStyle", "hidden", "layout", "disabled", "rules", "children", "messageVariables", "trigger", "validateTrigger", "onClick", "shouldUpdate", "dependencies", "arrow"]);
86
89
 
87
90
  const {
88
91
  validateTrigger: contextValidateTrigger
@@ -138,7 +141,8 @@ export const FormItem = props => {
138
141
  errors: errors,
139
142
  onClick: onClick,
140
143
  hidden: hidden,
141
- layout: layout
144
+ layout: layout,
145
+ arrow: arrow
142
146
  }, React.createElement(NoStyleItemContext.Provider, {
143
147
  value: onSubMetaChange
144
148
  }, baseChildren));
@@ -1,6 +1,6 @@
1
1
  .adm-form .adm-list.adm-list {
2
- --padding-left: 40px;
3
- --padding-right: 40px;
2
+ --padding-left: 32px;
3
+ --padding-right: 24px;
4
4
  }
5
5
 
6
6
  .adm-form-horizontal .adm-list.adm-list {
@@ -8,6 +8,10 @@
8
8
  --align-items: stretch;
9
9
  }
10
10
 
11
+ .adm-form-horizontal .adm-list.adm-list .adm-list-item-content-extra {
12
+ align-self: center;
13
+ }
14
+
11
15
  .adm-form .adm-form-footer {
12
- padding: 24px;
16
+ padding: 40px 24px;
13
17
  }
@@ -1,16 +1,17 @@
1
1
  import React, { ReactNode } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
3
  import { ListProps } from '../list';
4
- import type { FormProps as RcFormProps, FormInstance } from 'rc-field-form';
4
+ import type { FormProps as RcFormProps, FormInstance as RCFormInstance } from 'rc-field-form';
5
5
  import { FormContextType } from './context';
6
6
  import type { FormLayout } from '.';
7
- export declare type FormProps = RcFormProps & NativeProps & Partial<FormContextType> & {
7
+ export declare type FormInstance = Pick<RCFormInstance, 'getFieldValue' | 'getFieldsValue' | 'getFieldError' | 'getFieldsError' | 'isFieldTouched' | 'isFieldsTouched' | 'resetFields' | 'setFields' | 'setFieldsValue' | 'submit' | 'validateFields'>;
8
+ export declare type FormProps = Pick<RcFormProps, 'form' | 'initialValues' | 'name' | 'preserve' | 'validateMessages' | 'validateTrigger' | 'onFieldsChange' | 'onFinish' | 'onFinishFailed' | 'onValuesChange' | 'children'> & NativeProps & Partial<FormContextType> & {
8
9
  footer?: ReactNode;
9
10
  layout?: FormLayout;
10
11
  mode?: ListProps['mode'];
11
12
  };
12
- export declare const Form: React.ForwardRefExoticComponent<RcFormProps<any> & NativeProps<never> & Partial<FormContextType> & {
13
+ export declare const Form: React.ForwardRefExoticComponent<Pick<RcFormProps<any>, "children" | "form" | "name" | "initialValues" | "preserve" | "validateMessages" | "validateTrigger" | "onFieldsChange" | "onFinish" | "onFinishFailed" | "onValuesChange"> & NativeProps<never> & Partial<FormContextType> & {
13
14
  footer?: ReactNode;
14
15
  layout?: "horizontal" | "vertical" | undefined;
15
16
  mode?: ListProps['mode'];
16
- } & React.RefAttributes<FormInstance<any>>>;
17
+ } & React.RefAttributes<Pick<RCFormInstance<any>, "submit" | "getFieldValue" | "getFieldsValue" | "getFieldError" | "getFieldsError" | "isFieldTouched" | "isFieldsTouched" | "resetFields" | "setFields" | "setFieldsValue" | "validateFields">>>;
@@ -1,6 +1,6 @@
1
1
  .adm-form .adm-list.adm-list {
2
- --padding-left: 40px;
3
- --padding-right: 40px;
2
+ --padding-left: 32px;
3
+ --padding-right: 24px;
4
4
  }
5
5
 
6
6
  .adm-form-horizontal .adm-list.adm-list {
@@ -8,8 +8,12 @@
8
8
  --align-items: stretch;
9
9
  }
10
10
 
11
+ .adm-form-horizontal .adm-list.adm-list .adm-list-item-content-extra {
12
+ align-self: center;
13
+ }
14
+
11
15
  .adm-form .adm-form-footer {
12
- padding: 24px;
16
+ padding: 40px 24px;
13
17
  }
14
18
 
15
19
  .adm-form-item + .adm-form-item {
@@ -27,7 +31,8 @@
27
31
  .adm-form-item-label-required {
28
32
  position: absolute;
29
33
  left: -0.6em;
30
- top: 0.2em;
34
+ top: 0;
35
+ font-family: SimSun, sans-serif;
31
36
  color: var(--adm-color-danger);
32
37
  user-select: none;
33
38
  }
@@ -41,8 +46,8 @@
41
46
  }
42
47
 
43
48
  .adm-form-vertical .adm-form-item-label {
44
- margin-bottom: 8px;
45
49
  font-size: 30px;
50
+ margin-bottom: 8px;
46
51
  }
47
52
 
48
53
  .adm-form-vertical .adm-form-item-footer {
@@ -2,13 +2,14 @@
2
2
  import './index.less';
3
3
  import { useForm } from 'rc-field-form';
4
4
  export declare type FormLayout = 'vertical' | 'horizontal';
5
- export type { FormProps } from './form';
6
- export type { FormInstance } from 'rc-field-form';
7
- declare const _default: import("react").ForwardRefExoticComponent<import("rc-field-form").FormProps<any> & import("../../utils/native-props").NativeProps<never> & Partial<import("./context").FormContextType> & {
5
+ export type { FormProps, FormInstance } from './form';
6
+ export type { FormItemProps } from './form-item';
7
+ export type { ValidateMessages, FieldData, NamePath, } from 'rc-field-form/es/interface';
8
+ declare const _default: import("react").ForwardRefExoticComponent<Pick<import("rc-field-form").FormProps<any>, "children" | "form" | "name" | "initialValues" | "preserve" | "validateMessages" | "validateTrigger" | "onFieldsChange" | "onFinish" | "onFinishFailed" | "onValuesChange"> & import("../../utils/native-props").NativeProps<never> & Partial<import("./context").FormContextType> & {
8
9
  footer?: import("react").ReactNode;
9
10
  layout?: "horizontal" | "vertical" | undefined;
10
11
  mode?: "default" | "card" | undefined;
11
- } & import("react").RefAttributes<import("rc-field-form").FormInstance<any>>> & {
12
+ } & import("react").RefAttributes<Pick<import("rc-field-form").FormInstance<any>, "submit" | "getFieldValue" | "getFieldsValue" | "getFieldError" | "getFieldsError" | "isFieldTouched" | "isFieldsTouched" | "resetFields" | "setFields" | "setFieldsValue" | "validateFields">>> & {
12
13
  Item: import("react").FC<import("./form-item").FormItemProps>;
13
14
  Header: import("react").FC<{}>;
14
15
  useForm: typeof useForm;
@@ -1,5 +1,6 @@
1
- import { FC } from 'react';
1
+ import React, { FC } from 'react';
2
2
  import { GetContainer } from '../../utils/render-to-container';
3
+ import { SlidesRef } from './slides';
3
4
  export declare type ImageViewerProps = {
4
5
  image?: string;
5
6
  maxZoom?: number;
@@ -9,9 +10,14 @@ export declare type ImageViewerProps = {
9
10
  afterClose?: () => void;
10
11
  };
11
12
  export declare const ImageViewer: FC<ImageViewerProps>;
13
+ export declare type MultiImageViewerRef = SlidesRef;
12
14
  export declare type MultiImageViewerProps = Omit<ImageViewerProps, 'image'> & {
13
15
  images?: string[];
14
16
  defaultIndex?: number;
15
17
  onIndexChange?: (index: number) => void;
16
18
  };
17
- export declare const MultiImageViewer: FC<MultiImageViewerProps>;
19
+ export declare const MultiImageViewer: React.ForwardRefExoticComponent<Pick<ImageViewerProps, "visible" | "onClose" | "afterClose" | "getContainer" | "maxZoom"> & {
20
+ images?: string[] | undefined;
21
+ defaultIndex?: number | undefined;
22
+ onIndexChange?: ((index: number) => void) | undefined;
23
+ } & React.RefAttributes<SlidesRef>>;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { forwardRef } from 'react';
2
2
  import { mergeProps } from '../../utils/with-default-props';
3
3
  import { renderToContainer } from '../../utils/render-to-container';
4
4
  import Mask from '../mask';
@@ -33,7 +33,7 @@ export const ImageViewer = p => {
33
33
  const multiDefaultProps = Object.assign(Object.assign({}, defaultProps), {
34
34
  defaultIndex: 0
35
35
  });
36
- export const MultiImageViewer = p => {
36
+ export const MultiImageViewer = forwardRef((p, ref) => {
37
37
  const props = mergeProps(multiDefaultProps, p);
38
38
  const node = React.createElement(Mask, {
39
39
  visible: props.visible,
@@ -43,6 +43,7 @@ export const MultiImageViewer = p => {
43
43
  }, React.createElement("div", {
44
44
  className: `${classPrefix}-content`
45
45
  }, props.images && React.createElement(Slides, {
46
+ ref: ref,
46
47
  defaultIndex: props.defaultIndex,
47
48
  onIndexChange: props.onIndexChange,
48
49
  images: props.images,
@@ -54,4 +55,4 @@ export const MultiImageViewer = p => {
54
55
  maxZoom: props.maxZoom
55
56
  })));
56
57
  return renderToContainer(props.getContainer, node);
57
- };
58
+ });
@@ -1,10 +1,14 @@
1
1
  /// <reference types="react" />
2
2
  import './image-viewer.less';
3
3
  import { showMultiImageViewer, showImageViewer, clearImageViewer } from './methods';
4
- export type { ImageViewerProps, MultiImageViewerProps } from './image-viewer';
4
+ export type { ImageViewerProps, MultiImageViewerProps, MultiImageViewerRef, } from './image-viewer';
5
5
  export type { ImageViewerHandler } from './methods';
6
6
  declare const _default: import("react").FC<import("./image-viewer").ImageViewerProps> & {
7
- Multi: import("react").FC<import("./image-viewer").MultiImageViewerProps> & {
7
+ Multi: import("react").ForwardRefExoticComponent<Pick<import("./image-viewer").ImageViewerProps, "visible" | "onClose" | "afterClose" | "getContainer" | "maxZoom"> & {
8
+ images?: string[] | undefined;
9
+ defaultIndex?: number | undefined;
10
+ onIndexChange?: ((index: number) => void) | undefined;
11
+ } & import("react").RefAttributes<import("./slides").SlidesRef>> & {
8
12
  show: typeof showMultiImageViewer;
9
13
  };
10
14
  show: typeof showImageViewer;
@@ -1,8 +1,12 @@
1
- import { FC } from 'react';
2
- export declare const Slides: FC<{
1
+ import React from 'react';
2
+ export declare type SlidesType = {
3
3
  images: string[];
4
4
  onTap: () => void;
5
5
  maxZoom: number;
6
6
  defaultIndex: number;
7
7
  onIndexChange?: (index: number) => void;
8
- }>;
8
+ };
9
+ export declare type SlidesRef = {
10
+ swipeTo: (index: number, immediate: boolean) => void;
11
+ };
12
+ export declare const Slides: React.ForwardRefExoticComponent<SlidesType & React.RefAttributes<SlidesRef>>;
@@ -1,11 +1,11 @@
1
- import React, { useRef } from 'react';
1
+ import React, { forwardRef, useImperativeHandle, useRef } from 'react';
2
2
  import { useDrag } from '@use-gesture/react';
3
3
  import { useSpring, animated } from '@react-spring/web';
4
4
  import { Slide } from './slide';
5
5
  import { convertPx } from '../../utils/convert-px';
6
6
  import { bound } from '../../utils/bound';
7
7
  const classPrefix = `adm-image-viewer`;
8
- export const Slides = props => {
8
+ export const Slides = forwardRef((props, ref) => {
9
9
  const slideWidth = window.innerWidth + convertPx(16);
10
10
  const [{
11
11
  x
@@ -17,10 +17,23 @@ export const Slides = props => {
17
17
  }
18
18
  }));
19
19
  const count = props.images.length;
20
- const dragLockRef = useRef(false);
21
- const bind = useDrag(state => {
20
+
21
+ function swipeTo(index, immediate = false) {
22
22
  var _a;
23
23
 
24
+ const i = bound(index, 0, count - 1);
25
+ (_a = props.onIndexChange) === null || _a === void 0 ? void 0 : _a.call(props, i);
26
+ api.start({
27
+ x: i * slideWidth,
28
+ immediate
29
+ });
30
+ }
31
+
32
+ useImperativeHandle(ref, () => ({
33
+ swipeTo
34
+ }));
35
+ const dragLockRef = useRef(false);
36
+ const bind = useDrag(state => {
24
37
  if (dragLockRef.current) return;
25
38
  const [offsetX] = state.offset;
26
39
 
@@ -28,11 +41,7 @@ export const Slides = props => {
28
41
  const minIndex = Math.floor(offsetX / slideWidth);
29
42
  const maxIndex = minIndex + 1;
30
43
  const velocityOffset = Math.min(state.velocity[0] * 2000, slideWidth) * state.direction[0];
31
- const index = bound(bound(Math.round((offsetX + velocityOffset) / slideWidth), minIndex, maxIndex), 0, count - 1);
32
- (_a = props.onIndexChange) === null || _a === void 0 ? void 0 : _a.call(props, index);
33
- api.start({
34
- x: index * slideWidth
35
- });
44
+ swipeTo(bound(Math.round((offsetX + velocityOffset) / slideWidth), minIndex, maxIndex));
36
45
  } else {
37
46
  api.start({
38
47
  x: offsetX,
@@ -81,4 +90,4 @@ export const Slides = props => {
81
90
  },
82
91
  dragLockRef: dragLockRef
83
92
  }))));
84
- };
93
+ });