@arco-design/mobile-react 2.19.1 → 2.21.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 (424) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/README.en-US.md +6 -6
  3. package/README.md +6 -6
  4. package/cjs/_helpers/type.d.ts +1 -1
  5. package/cjs/avatar/group.js +1 -1
  6. package/cjs/avatar/index.d.ts +1 -1
  7. package/cjs/avatar/index.js +11 -14
  8. package/cjs/avatar/style/css/index.css +96 -126
  9. package/cjs/avatar/style/index.less +54 -72
  10. package/cjs/badge/index.d.ts +1 -1
  11. package/cjs/badge/index.js +7 -9
  12. package/cjs/badge/style/css/index.css +5 -5
  13. package/cjs/badge/style/index.less +5 -5
  14. package/cjs/button/hooks.d.ts +1 -2
  15. package/cjs/button/hooks.js +5 -3
  16. package/cjs/button/index.d.ts +6 -0
  17. package/cjs/button/index.js +38 -33
  18. package/cjs/button/style/css/index.css +75 -310
  19. package/cjs/button/style/index.less +32 -38
  20. package/cjs/carousel/index.d.ts +1 -1
  21. package/cjs/carousel/index.js +1 -1
  22. package/cjs/cell/index.d.ts +1 -1
  23. package/cjs/cell/index.js +1 -1
  24. package/cjs/checkbox/index.d.ts +1 -1
  25. package/cjs/checkbox/index.js +1 -1
  26. package/cjs/collapse/index.d.ts +1 -1
  27. package/cjs/collapse/index.js +1 -1
  28. package/cjs/count-down/demo/style/mobile.less +1 -1
  29. package/cjs/count-down/index.d.ts +1 -1
  30. package/cjs/count-down/index.js +1 -1
  31. package/cjs/date-picker/index.d.ts +1 -1
  32. package/cjs/date-picker/index.js +1 -1
  33. package/cjs/dropdown/dropdown.d.ts +3 -0
  34. package/cjs/dropdown/dropdown.js +322 -0
  35. package/cjs/dropdown/index.d.ts +3 -4
  36. package/cjs/dropdown/index.js +3 -303
  37. package/cjs/dropdown/options.js +2 -1
  38. package/cjs/dropdown/style/css/index.css +3 -0
  39. package/cjs/dropdown/style/index.less +2 -0
  40. package/cjs/dropdown/type.d.ts +20 -9
  41. package/cjs/dropdown-menu/dropdown-menu.d.ts +4 -0
  42. package/cjs/dropdown-menu/dropdown-menu.js +273 -0
  43. package/cjs/dropdown-menu/helper.d.ts +1 -1
  44. package/cjs/dropdown-menu/index.d.ts +2 -3
  45. package/cjs/dropdown-menu/index.js +2 -245
  46. package/cjs/dropdown-menu/type.d.ts +21 -20
  47. package/cjs/ellipsis/index.d.ts +1 -1
  48. package/cjs/ellipsis/index.js +1 -1
  49. package/cjs/grid/index.js +13 -12
  50. package/cjs/image/index.d.ts +1 -2
  51. package/cjs/image/index.js +14 -9
  52. package/cjs/image/style/css/index.css +2 -1
  53. package/cjs/image/style/index.less +2 -1
  54. package/cjs/image-picker/add-icon.d.ts +2 -0
  55. package/cjs/image-picker/add-icon.js +22 -0
  56. package/cjs/image-picker/demo/style/css/mobile.css +40 -0
  57. package/cjs/image-picker/demo/style/mobile.less +42 -0
  58. package/cjs/image-picker/index.d.ts +13 -0
  59. package/cjs/image-picker/index.js +331 -0
  60. package/cjs/image-picker/style/css/index.css +147 -0
  61. package/cjs/image-picker/style/css/index.d.ts +2 -0
  62. package/cjs/image-picker/style/css/index.js +5 -0
  63. package/cjs/image-picker/style/index.d.ts +2 -0
  64. package/cjs/image-picker/style/index.js +5 -0
  65. package/cjs/image-picker/style/index.less +116 -0
  66. package/cjs/image-picker/type.d.ts +174 -0
  67. package/cjs/image-picker/type.js +3 -0
  68. package/cjs/image-preview/index.d.ts +3 -3
  69. package/cjs/image-preview/index.js +1 -1
  70. package/cjs/index.d.ts +3 -0
  71. package/cjs/index.js +13 -1
  72. package/cjs/input/hooks.js +49 -8
  73. package/cjs/input/index.d.ts +1 -1
  74. package/cjs/input/index.js +1 -1
  75. package/cjs/input/props.d.ts +8 -2
  76. package/cjs/nav-bar/index.js +7 -2
  77. package/cjs/notice-bar/index.d.ts +1 -1
  78. package/cjs/notice-bar/index.js +1 -1
  79. package/cjs/picker/index.d.ts +1 -1
  80. package/cjs/picker/index.js +1 -1
  81. package/cjs/picker-view/index.d.ts +1 -1
  82. package/cjs/picker-view/index.js +1 -1
  83. package/cjs/popover/index.d.ts +1 -1
  84. package/cjs/popover/index.js +1 -1
  85. package/cjs/popup-swiper/index.js +3 -2
  86. package/cjs/radio/index.d.ts +1 -1
  87. package/cjs/radio/index.js +1 -1
  88. package/cjs/rate/index.d.ts +1 -1
  89. package/cjs/rate/index.js +1 -1
  90. package/cjs/search-bar/association.d.ts +3 -0
  91. package/cjs/search-bar/association.js +92 -0
  92. package/cjs/search-bar/cancel-button.d.ts +10 -0
  93. package/cjs/search-bar/cancel-button.js +41 -0
  94. package/cjs/search-bar/demo/style/css/mobile.css +5 -0
  95. package/cjs/search-bar/demo/style/mobile.less +9 -0
  96. package/cjs/search-bar/highlight.d.ts +12 -0
  97. package/cjs/search-bar/highlight.js +77 -0
  98. package/cjs/search-bar/index.d.ts +13 -0
  99. package/cjs/search-bar/index.js +239 -0
  100. package/cjs/search-bar/style/css/index.css +148 -0
  101. package/cjs/search-bar/style/css/index.d.ts +2 -0
  102. package/cjs/search-bar/style/css/index.js +5 -0
  103. package/cjs/search-bar/style/index.d.ts +2 -0
  104. package/cjs/search-bar/style/index.js +5 -0
  105. package/cjs/search-bar/style/index.less +111 -0
  106. package/cjs/search-bar/type.d.ts +163 -0
  107. package/cjs/search-bar/type.js +3 -0
  108. package/cjs/show-monitor/index.js +31 -3
  109. package/cjs/slider/index.d.ts +1 -1
  110. package/cjs/slider/index.js +1 -1
  111. package/cjs/steps/demo/style/css/mobile.css +1 -1
  112. package/cjs/steps/demo/style/mobile.less +1 -1
  113. package/cjs/steps/index.d.ts +1 -1
  114. package/cjs/steps/index.js +1 -1
  115. package/cjs/steps/style/css/index.css +5 -15
  116. package/cjs/steps/style/index.less +6 -10
  117. package/cjs/sticky/index.d.ts +1 -1
  118. package/cjs/style.d.ts +3 -0
  119. package/cjs/style.js +6 -0
  120. package/cjs/swipe-action/demo/style/css/mobile.css +5 -0
  121. package/cjs/swipe-action/demo/style/mobile.less +9 -0
  122. package/cjs/swipe-action/index.d.ts +12 -0
  123. package/cjs/swipe-action/index.js +339 -0
  124. package/cjs/swipe-action/item.d.ts +11 -0
  125. package/cjs/swipe-action/item.js +52 -0
  126. package/cjs/swipe-action/style/css/index.css +88 -0
  127. package/cjs/swipe-action/style/css/index.d.ts +2 -0
  128. package/cjs/swipe-action/style/css/index.js +5 -0
  129. package/cjs/swipe-action/style/index.d.ts +2 -0
  130. package/cjs/swipe-action/style/index.js +5 -0
  131. package/cjs/swipe-action/style/index.less +89 -0
  132. package/cjs/swipe-action/type.d.ts +123 -0
  133. package/cjs/swipe-action/type.js +3 -0
  134. package/cjs/switch/index.d.ts +1 -1
  135. package/cjs/switch/index.js +1 -1
  136. package/cjs/tabs/tab-pane.js +5 -1
  137. package/cjs/tag/index.d.ts +1 -1
  138. package/cjs/tag/index.js +1 -1
  139. package/cjs/textarea/index.d.ts +1 -1
  140. package/cjs/textarea/index.js +1 -1
  141. package/dist/index.js +8040 -6845
  142. package/dist/index.min.js +6 -7
  143. package/dist/style.css +497 -447
  144. package/dist/style.min.css +1 -1
  145. package/esm/_helpers/type.d.ts +1 -1
  146. package/esm/avatar/group.js +1 -1
  147. package/esm/avatar/index.d.ts +1 -1
  148. package/esm/avatar/index.js +11 -14
  149. package/esm/avatar/style/css/index.css +96 -126
  150. package/esm/avatar/style/index.less +54 -72
  151. package/esm/badge/index.d.ts +1 -1
  152. package/esm/badge/index.js +7 -9
  153. package/esm/badge/style/css/index.css +5 -5
  154. package/esm/badge/style/index.less +5 -5
  155. package/esm/button/hooks.d.ts +1 -2
  156. package/esm/button/hooks.js +5 -3
  157. package/esm/button/index.d.ts +6 -0
  158. package/esm/button/index.js +40 -35
  159. package/esm/button/style/css/index.css +75 -310
  160. package/esm/button/style/index.less +32 -38
  161. package/esm/carousel/index.d.ts +1 -1
  162. package/esm/carousel/index.js +1 -1
  163. package/esm/cell/index.d.ts +1 -1
  164. package/esm/cell/index.js +1 -1
  165. package/esm/checkbox/index.d.ts +1 -1
  166. package/esm/checkbox/index.js +1 -1
  167. package/esm/collapse/index.d.ts +1 -1
  168. package/esm/collapse/index.js +1 -1
  169. package/esm/count-down/demo/style/mobile.less +1 -1
  170. package/esm/count-down/index.d.ts +1 -1
  171. package/esm/count-down/index.js +1 -1
  172. package/esm/date-picker/index.d.ts +1 -1
  173. package/esm/date-picker/index.js +1 -1
  174. package/esm/dropdown/dropdown.d.ts +3 -0
  175. package/esm/dropdown/dropdown.js +304 -0
  176. package/esm/dropdown/index.d.ts +3 -4
  177. package/esm/dropdown/index.js +3 -293
  178. package/esm/dropdown/options.js +2 -1
  179. package/esm/dropdown/style/css/index.css +3 -0
  180. package/esm/dropdown/style/index.less +2 -0
  181. package/esm/dropdown/type.d.ts +20 -9
  182. package/esm/dropdown-menu/dropdown-menu.d.ts +4 -0
  183. package/esm/dropdown-menu/dropdown-menu.js +256 -0
  184. package/esm/dropdown-menu/helper.d.ts +1 -1
  185. package/esm/dropdown-menu/index.d.ts +2 -3
  186. package/esm/dropdown-menu/index.js +2 -237
  187. package/esm/dropdown-menu/type.d.ts +21 -20
  188. package/esm/ellipsis/index.d.ts +1 -1
  189. package/esm/ellipsis/index.js +1 -1
  190. package/esm/grid/index.js +13 -12
  191. package/esm/image/index.d.ts +1 -2
  192. package/esm/image/index.js +15 -10
  193. package/esm/image/style/css/index.css +2 -1
  194. package/esm/image/style/index.less +2 -1
  195. package/esm/image-picker/add-icon.d.ts +2 -0
  196. package/esm/image-picker/add-icon.js +14 -0
  197. package/esm/image-picker/demo/style/css/mobile.css +40 -0
  198. package/esm/image-picker/demo/style/mobile.less +42 -0
  199. package/esm/image-picker/index.d.ts +13 -0
  200. package/esm/image-picker/index.js +302 -0
  201. package/esm/image-picker/style/css/index.css +147 -0
  202. package/esm/image-picker/style/css/index.d.ts +2 -0
  203. package/esm/image-picker/style/css/index.js +2 -0
  204. package/esm/image-picker/style/index.d.ts +2 -0
  205. package/esm/image-picker/style/index.js +2 -0
  206. package/esm/image-picker/style/index.less +116 -0
  207. package/esm/image-picker/type.d.ts +174 -0
  208. package/esm/image-picker/type.js +1 -0
  209. package/esm/image-preview/index.d.ts +3 -3
  210. package/esm/image-preview/index.js +1 -1
  211. package/esm/index.d.ts +3 -0
  212. package/esm/index.js +3 -0
  213. package/esm/input/hooks.js +49 -8
  214. package/esm/input/index.d.ts +1 -1
  215. package/esm/input/index.js +1 -1
  216. package/esm/input/props.d.ts +8 -2
  217. package/esm/nav-bar/index.js +6 -2
  218. package/esm/notice-bar/index.d.ts +1 -1
  219. package/esm/notice-bar/index.js +1 -1
  220. package/esm/picker/index.d.ts +1 -1
  221. package/esm/picker/index.js +1 -1
  222. package/esm/picker-view/index.d.ts +1 -1
  223. package/esm/picker-view/index.js +1 -1
  224. package/esm/popover/index.d.ts +1 -1
  225. package/esm/popover/index.js +1 -1
  226. package/esm/popup-swiper/index.js +3 -2
  227. package/esm/radio/index.d.ts +1 -1
  228. package/esm/radio/index.js +1 -1
  229. package/esm/rate/index.d.ts +1 -1
  230. package/esm/rate/index.js +1 -1
  231. package/esm/search-bar/association.d.ts +3 -0
  232. package/esm/search-bar/association.js +82 -0
  233. package/esm/search-bar/cancel-button.d.ts +10 -0
  234. package/esm/search-bar/cancel-button.js +30 -0
  235. package/esm/search-bar/demo/style/css/mobile.css +5 -0
  236. package/esm/search-bar/demo/style/mobile.less +9 -0
  237. package/esm/search-bar/highlight.d.ts +12 -0
  238. package/esm/search-bar/highlight.js +66 -0
  239. package/esm/search-bar/index.d.ts +13 -0
  240. package/esm/search-bar/index.js +213 -0
  241. package/esm/search-bar/style/css/index.css +148 -0
  242. package/esm/search-bar/style/css/index.d.ts +2 -0
  243. package/esm/search-bar/style/css/index.js +2 -0
  244. package/esm/search-bar/style/index.d.ts +2 -0
  245. package/esm/search-bar/style/index.js +2 -0
  246. package/esm/search-bar/style/index.less +111 -0
  247. package/esm/search-bar/type.d.ts +163 -0
  248. package/esm/search-bar/type.js +1 -0
  249. package/esm/show-monitor/index.js +31 -3
  250. package/esm/slider/index.d.ts +1 -1
  251. package/esm/slider/index.js +1 -1
  252. package/esm/steps/demo/style/css/mobile.css +1 -1
  253. package/esm/steps/demo/style/mobile.less +1 -1
  254. package/esm/steps/index.d.ts +1 -1
  255. package/esm/steps/index.js +1 -1
  256. package/esm/steps/style/css/index.css +5 -15
  257. package/esm/steps/style/index.less +6 -10
  258. package/esm/sticky/index.d.ts +1 -1
  259. package/esm/style.d.ts +3 -0
  260. package/esm/style.js +3 -0
  261. package/esm/swipe-action/demo/style/css/mobile.css +5 -0
  262. package/esm/swipe-action/demo/style/mobile.less +9 -0
  263. package/esm/swipe-action/index.d.ts +12 -0
  264. package/esm/swipe-action/index.js +321 -0
  265. package/esm/swipe-action/item.d.ts +11 -0
  266. package/esm/swipe-action/item.js +42 -0
  267. package/esm/swipe-action/style/css/index.css +88 -0
  268. package/esm/swipe-action/style/css/index.d.ts +2 -0
  269. package/esm/swipe-action/style/css/index.js +2 -0
  270. package/esm/swipe-action/style/index.d.ts +2 -0
  271. package/esm/swipe-action/style/index.js +2 -0
  272. package/esm/swipe-action/style/index.less +89 -0
  273. package/esm/swipe-action/type.d.ts +123 -0
  274. package/esm/swipe-action/type.js +1 -0
  275. package/esm/switch/index.d.ts +1 -1
  276. package/esm/switch/index.js +1 -1
  277. package/esm/tabs/tab-pane.js +5 -1
  278. package/esm/tag/index.d.ts +1 -1
  279. package/esm/tag/index.js +1 -1
  280. package/esm/textarea/index.d.ts +1 -1
  281. package/esm/textarea/index.js +1 -1
  282. package/package.json +3 -3
  283. package/tokens/app/arcodesign/default/css-variables.less +53 -3
  284. package/tokens/app/arcodesign/default/index.d.ts +53 -3
  285. package/tokens/app/arcodesign/default/index.js +54 -4
  286. package/tokens/app/arcodesign/default/index.json +629 -39
  287. package/tokens/app/arcodesign/default/index.less +53 -3
  288. package/umd/_helpers/type.d.ts +1 -1
  289. package/umd/avatar/group.js +1 -1
  290. package/umd/avatar/index.d.ts +1 -1
  291. package/umd/avatar/index.js +11 -14
  292. package/umd/avatar/style/css/index.css +96 -126
  293. package/umd/avatar/style/index.less +54 -72
  294. package/umd/badge/index.d.ts +1 -1
  295. package/umd/badge/index.js +7 -9
  296. package/umd/badge/style/css/index.css +5 -5
  297. package/umd/badge/style/index.less +5 -5
  298. package/umd/button/hooks.d.ts +1 -2
  299. package/umd/button/hooks.js +5 -3
  300. package/umd/button/index.d.ts +6 -0
  301. package/umd/button/index.js +38 -33
  302. package/umd/button/style/css/index.css +75 -310
  303. package/umd/button/style/index.less +32 -38
  304. package/umd/carousel/index.d.ts +1 -1
  305. package/umd/carousel/index.js +1 -1
  306. package/umd/cell/index.d.ts +1 -1
  307. package/umd/cell/index.js +1 -1
  308. package/umd/checkbox/index.d.ts +1 -1
  309. package/umd/checkbox/index.js +1 -1
  310. package/umd/collapse/index.d.ts +1 -1
  311. package/umd/collapse/index.js +1 -1
  312. package/umd/count-down/demo/style/mobile.less +1 -1
  313. package/umd/count-down/index.d.ts +1 -1
  314. package/umd/count-down/index.js +1 -1
  315. package/umd/date-picker/index.d.ts +1 -1
  316. package/umd/date-picker/index.js +1 -1
  317. package/umd/dropdown/dropdown.d.ts +3 -0
  318. package/umd/dropdown/dropdown.js +325 -0
  319. package/umd/dropdown/index.d.ts +3 -4
  320. package/umd/dropdown/index.js +5 -298
  321. package/umd/dropdown/options.js +2 -1
  322. package/umd/dropdown/style/css/index.css +3 -0
  323. package/umd/dropdown/style/index.less +2 -0
  324. package/umd/dropdown/type.d.ts +20 -9
  325. package/umd/dropdown-menu/dropdown-menu.d.ts +4 -0
  326. package/umd/dropdown-menu/dropdown-menu.js +278 -0
  327. package/umd/dropdown-menu/helper.d.ts +1 -1
  328. package/umd/dropdown-menu/index.d.ts +2 -3
  329. package/umd/dropdown-menu/index.js +5 -241
  330. package/umd/dropdown-menu/type.d.ts +21 -20
  331. package/umd/ellipsis/index.d.ts +1 -1
  332. package/umd/ellipsis/index.js +1 -1
  333. package/umd/grid/index.js +13 -12
  334. package/umd/image/index.d.ts +1 -2
  335. package/umd/image/index.js +14 -9
  336. package/umd/image/style/css/index.css +2 -1
  337. package/umd/image/style/index.less +2 -1
  338. package/umd/image-picker/add-icon.d.ts +2 -0
  339. package/umd/image-picker/add-icon.js +35 -0
  340. package/umd/image-picker/demo/style/css/mobile.css +40 -0
  341. package/umd/image-picker/demo/style/mobile.less +42 -0
  342. package/umd/image-picker/index.d.ts +13 -0
  343. package/umd/image-picker/index.js +329 -0
  344. package/umd/image-picker/style/css/index.css +147 -0
  345. package/umd/image-picker/style/css/index.d.ts +2 -0
  346. package/umd/image-picker/style/css/index.js +15 -0
  347. package/umd/image-picker/style/index.d.ts +2 -0
  348. package/umd/image-picker/style/index.js +15 -0
  349. package/umd/image-picker/style/index.less +116 -0
  350. package/umd/image-picker/type.d.ts +174 -0
  351. package/umd/image-picker/type.js +17 -0
  352. package/umd/image-preview/index.d.ts +3 -3
  353. package/umd/image-preview/index.js +1 -1
  354. package/umd/index.d.ts +3 -0
  355. package/umd/index.js +11 -5
  356. package/umd/input/hooks.js +48 -7
  357. package/umd/input/index.d.ts +1 -1
  358. package/umd/input/index.js +1 -1
  359. package/umd/input/props.d.ts +8 -2
  360. package/umd/nav-bar/index.js +9 -6
  361. package/umd/notice-bar/index.d.ts +1 -1
  362. package/umd/notice-bar/index.js +1 -1
  363. package/umd/picker/index.d.ts +1 -1
  364. package/umd/picker/index.js +1 -1
  365. package/umd/picker-view/index.d.ts +1 -1
  366. package/umd/picker-view/index.js +1 -1
  367. package/umd/popover/index.d.ts +1 -1
  368. package/umd/popover/index.js +1 -1
  369. package/umd/popup-swiper/index.js +3 -2
  370. package/umd/radio/index.d.ts +1 -1
  371. package/umd/radio/index.js +1 -1
  372. package/umd/rate/index.d.ts +1 -1
  373. package/umd/rate/index.js +1 -1
  374. package/umd/search-bar/association.d.ts +3 -0
  375. package/umd/search-bar/association.js +101 -0
  376. package/umd/search-bar/cancel-button.d.ts +10 -0
  377. package/umd/search-bar/cancel-button.js +52 -0
  378. package/umd/search-bar/demo/style/css/mobile.css +5 -0
  379. package/umd/search-bar/demo/style/mobile.less +9 -0
  380. package/umd/search-bar/highlight.d.ts +12 -0
  381. package/umd/search-bar/highlight.js +87 -0
  382. package/umd/search-bar/index.d.ts +13 -0
  383. package/umd/search-bar/index.js +235 -0
  384. package/umd/search-bar/style/css/index.css +148 -0
  385. package/umd/search-bar/style/css/index.d.ts +2 -0
  386. package/umd/search-bar/style/css/index.js +15 -0
  387. package/umd/search-bar/style/index.d.ts +2 -0
  388. package/umd/search-bar/style/index.js +15 -0
  389. package/umd/search-bar/style/index.less +111 -0
  390. package/umd/search-bar/type.d.ts +163 -0
  391. package/umd/search-bar/type.js +17 -0
  392. package/umd/show-monitor/index.js +31 -3
  393. package/umd/slider/index.d.ts +1 -1
  394. package/umd/slider/index.js +1 -1
  395. package/umd/steps/demo/style/css/mobile.css +1 -1
  396. package/umd/steps/demo/style/mobile.less +1 -1
  397. package/umd/steps/index.d.ts +1 -1
  398. package/umd/steps/index.js +1 -1
  399. package/umd/steps/style/css/index.css +5 -15
  400. package/umd/steps/style/index.less +6 -10
  401. package/umd/sticky/index.d.ts +1 -1
  402. package/umd/style.d.ts +3 -0
  403. package/umd/style.js +4 -4
  404. package/umd/swipe-action/demo/style/css/mobile.css +5 -0
  405. package/umd/swipe-action/demo/style/mobile.less +9 -0
  406. package/umd/swipe-action/index.d.ts +12 -0
  407. package/umd/swipe-action/index.js +342 -0
  408. package/umd/swipe-action/item.d.ts +11 -0
  409. package/umd/swipe-action/item.js +62 -0
  410. package/umd/swipe-action/style/css/index.css +88 -0
  411. package/umd/swipe-action/style/css/index.d.ts +2 -0
  412. package/umd/swipe-action/style/css/index.js +15 -0
  413. package/umd/swipe-action/style/index.d.ts +2 -0
  414. package/umd/swipe-action/style/index.js +15 -0
  415. package/umd/swipe-action/style/index.less +89 -0
  416. package/umd/swipe-action/type.d.ts +123 -0
  417. package/umd/swipe-action/type.js +17 -0
  418. package/umd/switch/index.d.ts +1 -1
  419. package/umd/switch/index.js +1 -1
  420. package/umd/tabs/tab-pane.js +5 -1
  421. package/umd/tag/index.d.ts +1 -1
  422. package/umd/tag/index.js +1 -1
  423. package/umd/textarea/index.d.ts +1 -1
  424. package/umd/textarea/index.js +1 -1
@@ -4,7 +4,7 @@ export * from './type';
4
4
  /**
5
5
  * 文本缩略组件,支持多行缩略、富文本、自定义缩略符、尾字符过滤等。
6
6
  * @en Text ellipsis component supports multi-line abbreviations, rich text, custom abbreviations, tail character filtering, etc.
7
- * @type 数据展示
7
+ * @type 信息展示
8
8
  * @type_en Data Display
9
9
  * @name 文本缩略
10
10
  * @name_en Ellipsis
@@ -35,7 +35,7 @@
35
35
  /**
36
36
  * 文本缩略组件,支持多行缩略、富文本、自定义缩略符、尾字符过滤等。
37
37
  * @en Text ellipsis component supports multi-line abbreviations, rich text, custom abbreviations, tail character filtering, etc.
38
- * @type 数据展示
38
+ * @type 信息展示
39
39
  * @type_en Data Display
40
40
  * @name 文本缩略
41
41
  * @name_en Ellipsis
package/umd/grid/index.js CHANGED
@@ -57,14 +57,21 @@
57
57
  });
58
58
 
59
59
  var getRows = function getRows(prefix, rowsData, rows, row) {
60
- var fakeGrids = new Array(!isSliding && columns && rowsData.length % columns ? columns - rowsData.length % columns : 0).fill('');
61
- var widthStyle = {
62
- minWidth: 1 / columns * 100 + "%"
63
- };
60
+ var placeholders = !isSliding && rowsData.length % columns;
61
+ var renderData = rowsData;
62
+
63
+ if (placeholders) {
64
+ var fakeGrids = new Array(columns - placeholders).fill({
65
+ img: null,
66
+ title: ''
67
+ });
68
+ renderData = rowsData.concat(fakeGrids);
69
+ }
70
+
64
71
  return /*#__PURE__*/_react.default.createElement("div", {
65
72
  className: prefix + "-rows",
66
73
  key: row
67
- }, rowsData.map(function (item, index) {
74
+ }, renderData.map(function (item, index) {
68
75
  var img = item.img,
69
76
  title = item.title,
70
77
  content = item.content,
@@ -78,7 +85,7 @@
78
85
  }
79
86
 
80
87
  var marginBottom = row + 1 === rows ? 0 : typeof gutter === 'number' ? gutter : (gutter == null ? void 0 : gutter.y) || 0;
81
- var rowLen = rowsData.length;
88
+ var rowLen = renderData.length;
82
89
  var marginRight = index + 1 === rowLen ? 0 : typeof gutter === 'number' ? gutter : (gutter == null ? void 0 : gutter.x) || 0;
83
90
  return /*#__PURE__*/_react.default.createElement("div", {
84
91
  key: index,
@@ -107,12 +114,6 @@
107
114
  }) : null, (row + 1) % rows !== 0 ? /*#__PURE__*/_react.default.createElement("i", {
108
115
  className: "horizontal-border"
109
116
  }) : null);
110
- }), fakeGrids.map(function (_, i) {
111
- return /*#__PURE__*/_react.default.createElement("div", {
112
- className: (0, _mobileUtils.cls)(prefix + "-rows-item fake-col"),
113
- key: i,
114
- style: widthStyle
115
- });
116
117
  }));
117
118
  };
118
119
 
@@ -14,7 +14,6 @@ export interface ImageProps {
14
14
  /**
15
15
  * 指定图片状态,staticLabel=false时有效
16
16
  * @en The specified image state, valid when staticLabel=false
17
- * @default "init"
18
17
  */
19
18
  status?: ImageStatus;
20
19
  /**
@@ -178,7 +177,7 @@ export interface ImageRef {
178
177
  /**
179
178
  * 增强版的 img 标签,提供多种图片填充模式,支持图片加载中提示、加载失败提示。
180
179
  * @en Enhanced img tag, provides a variety of image filling modes, and supports image loading prompts and loading failure prompts.
181
- * @type 数据展示
180
+ * @type 信息展示
182
181
  * @type_en Data Display
183
182
  * @name 图片
184
183
  * @name_en Image
@@ -28,7 +28,7 @@
28
28
  /**
29
29
  * 增强版的 img 标签,提供多种图片填充模式,支持图片加载中提示、加载失败提示。
30
30
  * @en Enhanced img tag, provides a variety of image filling modes, and supports image loading prompts and loading failure prompts.
31
- * @type 数据展示
31
+ * @type 信息展示
32
32
  * @type_en Data Display
33
33
  * @name 图片
34
34
  * @name_en Image
@@ -57,10 +57,10 @@
57
57
  var wrapRef = (0, _react.useRef)(null);
58
58
  var retryCountRef = (0, _react.useRef)(0);
59
59
  var loadingImageRef = (0, _react.useRef)(null);
60
+ var hasLoadedRef = (0, _react.useRef)(false);
60
61
  var style = props.style,
61
62
  className = props.className,
62
- _props$status = props.status,
63
- status = _props$status === void 0 ? 'init' : _props$status,
63
+ status = props.status,
64
64
  src = props.src,
65
65
  width = props.width,
66
66
  height = props.height,
@@ -100,6 +100,7 @@
100
100
  var isPreview = Boolean(fit.indexOf('preview') >= 0);
101
101
  var actualBoxWidth = boxWidth || windowWidth;
102
102
  var actualBoxHeight = boxHeight || windowHeight;
103
+ var validStatus = status === undefined ? imageStatus : status;
103
104
  var attrs = (0, _react.useMemo)(function () {
104
105
  var imageStyle = {};
105
106
 
@@ -180,6 +181,7 @@
180
181
  image.onload = function (evt) {
181
182
  loadingImageRef.current = null;
182
183
  imageDomRef.current = image;
184
+ hasLoadedRef.current = true;
183
185
  changeStatus('loaded');
184
186
  var _image$width = image.width,
185
187
  imageWidth = _image$width === void 0 ? 0 : _image$width,
@@ -275,7 +277,9 @@
275
277
  }
276
278
 
277
279
  return /*#__PURE__*/_react.default.createElement(_contextProvider.ContextLayout, null, function (_ref) {
278
- var prefixCls = _ref.prefixCls;
280
+ var prefixCls = _ref.prefixCls,
281
+ _ref$locale = _ref.locale,
282
+ locale = _ref$locale === void 0 ? _mobileUtils.defaultLocale : _ref$locale;
279
283
  return /*#__PURE__*/_react.default.createElement("div", {
280
284
  className: (0, _mobileUtils.cls)(prefixCls + "-image all-border-box", {
281
285
  preview: isPreview
@@ -290,9 +294,10 @@
290
294
  }, bottomOverlap || /*#__PURE__*/_react.default.createElement("div", {
291
295
  className: "image-placeholder"
292
296
  })) : null, /*#__PURE__*/_react.default.createElement("div", {
293
- className: (0, _mobileUtils.cls)('image-container', imageStatus, {
297
+ className: (0, _mobileUtils.cls)('image-container', validStatus, {
294
298
  animate: Boolean(animateDuration),
295
- 'static-label': staticLabel
299
+ 'static-label': staticLabel,
300
+ 'has-loaded': hasLoadedRef.current
296
301
  }),
297
302
  style: (0, _helpers.getStyleWithVendor)({
298
303
  transitionDuration: animateDuration + "ms"
@@ -305,7 +310,7 @@
305
310
  return _onLoad && _onLoad(e.nativeEvent, imageDomRef.current);
306
311
  },
307
312
  onError: handleStaticImageError
308
- })) : null), showLoading && (status === 'loading' || imageStatus === 'loading') ? /*#__PURE__*/_react.default.createElement("div", {
313
+ })) : null), showLoading && validStatus === 'loading' ? /*#__PURE__*/_react.default.createElement("div", {
309
314
  className: "image-content image-loading-container",
310
315
  style: {
311
316
  borderRadius: radius
@@ -317,7 +322,7 @@
317
322
  className: "loading-icon",
318
323
  radius: 8.5,
319
324
  stroke: 3
320
- }))) : null, showError && (status === 'error' || imageStatus === 'error') ? /*#__PURE__*/_react.default.createElement("div", {
325
+ }))) : null, showError && validStatus === 'error' ? /*#__PURE__*/_react.default.createElement("div", {
321
326
  className: "image-content image-error-container",
322
327
  onClick: function onClick(e) {
323
328
  e.stopPropagation();
@@ -328,7 +333,7 @@
328
333
  }
329
334
  }, errorArea || /*#__PURE__*/_react.default.createElement("div", {
330
335
  className: "image-retry-load"
331
- }, "\u91CD\u8BD5")) : null, topOverlap ? /*#__PURE__*/_react.default.createElement("div", {
336
+ }, locale.Image.loadError)) : null, topOverlap ? /*#__PURE__*/_react.default.createElement("div", {
332
337
  className: "image-content image-top-overlap",
333
338
  style: {
334
339
  borderRadius: radius
@@ -66,7 +66,8 @@
66
66
  }
67
67
  .arco-image .image-container.static-label,
68
68
  .arco-image .image-container.loaded,
69
- .arco-image .image-container.error {
69
+ .arco-image .image-container.error,
70
+ .arco-image .image-container.has-loaded {
70
71
  opacity: 1;
71
72
  }
72
73
  .arco-image .image-container.animate {
@@ -66,7 +66,8 @@
66
66
 
67
67
  &.static-label,
68
68
  &.loaded,
69
- &.error {
69
+ &.error,
70
+ &.has-loaded {
70
71
  opacity: 1;
71
72
  }
72
73
 
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export default function AddIcon(): JSX.Element;
@@ -0,0 +1,35 @@
1
+ (function (global, factory) {
2
+ if (typeof define === "function" && define.amd) {
3
+ define(["exports", "react"], factory);
4
+ } else if (typeof exports !== "undefined") {
5
+ factory(exports, require("react"));
6
+ } else {
7
+ var mod = {
8
+ exports: {}
9
+ };
10
+ factory(mod.exports, global.react);
11
+ global.addIcon = mod.exports;
12
+ }
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _react) {
14
+ "use strict";
15
+
16
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
+
18
+ _exports.__esModule = true;
19
+ _exports.default = AddIcon;
20
+ _react = _interopRequireDefault(_react);
21
+
22
+ function AddIcon() {
23
+ return /*#__PURE__*/_react.default.createElement("svg", {
24
+ width: "30",
25
+ height: "30",
26
+ viewBox: "0 0 30 30",
27
+ fill: "none"
28
+ }, /*#__PURE__*/_react.default.createElement("path", {
29
+ fillRule: "evenodd",
30
+ clipRule: "evenodd",
31
+ d: "M14.5 0C14.2239 0 14 0.223857 14 0.5V14H0.5C0.223858 14 0 14.2239 0 14.5V15.5C0 15.7761 0.223857 16 0.5 16H14V29.5C14 29.7761 14.2239 30 14.5 30H15.5C15.7761 30 16 29.7761 16 29.5V16H29.5C29.7761 16 30 15.7761 30 15.5V14.5C30 14.2239 29.7761 14 29.5 14H16V0.5C16 0.223858 15.7761 0 15.5 0H14.5Z",
32
+ fill: "#C9CDD4"
33
+ }));
34
+ }
35
+ });
@@ -0,0 +1,40 @@
1
+ #demo-image-picker .demo-space {
2
+ font-size: 14px;
3
+ line-height: 1;
4
+ margin: 8px 0;
5
+ }
6
+ #demo-image-picker #demo-order-5 .custom-delete {
7
+ top: 4px;
8
+ right: 4px;
9
+ font-size: 18px;
10
+ position: absolute;
11
+ border-radius: 50%;
12
+ width: 18px;
13
+ height: 18px;
14
+ line-height: 16px;
15
+ text-align: center;
16
+ }
17
+ #demo-image-picker #demo-order-5 .custom-delete-bg {
18
+ background-color: #0000004d;
19
+ }
20
+ #demo-image-picker #demo-order-6 .loading,
21
+ #demo-image-picker #demo-order-6 .loading1,
22
+ #demo-image-picker #demo-order-6 .load-error,
23
+ #demo-image-picker #demo-order-6 .load-error1 {
24
+ background: rgba(0, 0, 0, 0.5);
25
+ text-align: center;
26
+ line-height: 1.5;
27
+ font-size: 14px;
28
+ color: #fff;
29
+ width: 100%;
30
+ height: 100%;
31
+ display: -webkit-box;
32
+ display: -webkit-flex;
33
+ display: flex;
34
+ -webkit-box-align: center;
35
+ -webkit-align-items: center;
36
+ align-items: center;
37
+ -webkit-box-pack: center;
38
+ -webkit-justify-content: center;
39
+ justify-content: center;
40
+ }
@@ -0,0 +1,42 @@
1
+ @import '../../../../style/mixin.less';
2
+
3
+ #demo-image-picker {
4
+ .demo-space{
5
+ font-size: 14px;
6
+ line-height: 1;
7
+ margin: 8px 0;
8
+ }
9
+ #demo-order-5 {
10
+ .custom-delete {
11
+ top: 4px;
12
+ right: 4px;
13
+ font-size: 18px;
14
+ position: absolute;
15
+ border-radius: 50%;
16
+ width: 18px;
17
+ height: 18px;
18
+ line-height: 16px;
19
+ text-align: center;
20
+ }
21
+ .custom-delete-bg {
22
+ background-color: #0000004d;
23
+ }
24
+ }
25
+ #demo-order-6 {
26
+ .loading,
27
+ .loading1,
28
+ .load-error,
29
+ .load-error1 {
30
+ background: rgba(0, 0, 0, 0.5);
31
+ text-align: center;
32
+ line-height: 1.5;
33
+ font-size: 14px;
34
+ color: #fff;
35
+ width: 100%;
36
+ height: 100%;
37
+ display: flex;
38
+ align-items: center;
39
+ justify-content: center;
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { ImagePickerProps, ImagePickerRef } from './type';
3
+ export * from './type';
4
+ /**
5
+ * 图片选择器组件
6
+ * @en ImagePicker Component
7
+ * @type 数据录入
8
+ * @type_en Data Entry
9
+ * @name 图片选择器
10
+ * @name_en ImagePicker
11
+ */
12
+ declare const ImagePicker: React.ForwardRefExoticComponent<ImagePickerProps & React.RefAttributes<ImagePickerRef>>;
13
+ export default ImagePicker;
@@ -0,0 +1,329 @@
1
+ (function (global, factory) {
2
+ if (typeof define === "function" && define.amd) {
3
+ define(["exports", "@babel/runtime/helpers/extends", "react", "es6-promise", "@arco-design/mobile-utils", "../context-provider", "../icon", "../image", "../grid", "./add-icon", "./type"], factory);
4
+ } else if (typeof exports !== "undefined") {
5
+ factory(exports, require("@babel/runtime/helpers/extends"), require("react"), require("es6-promise"), require("@arco-design/mobile-utils"), require("../context-provider"), require("../icon"), require("../image"), require("../grid"), require("./add-icon"), require("./type"));
6
+ } else {
7
+ var mod = {
8
+ exports: {}
9
+ };
10
+ factory(mod.exports, global._extends, global.react, global.es6Promise, global.mobileUtils, global.contextProvider, global.icon, global.image, global.grid, global.addIcon, global.type);
11
+ global.index = mod.exports;
12
+ }
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _extends2, _react, _es6Promise, _mobileUtils, _contextProvider, _icon, _image, _grid, _addIcon, _type) {
14
+ "use strict";
15
+
16
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
+
18
+ _exports.__esModule = true;
19
+ var _exportNames = {};
20
+ _exports.default = void 0;
21
+ _extends2 = _interopRequireDefault(_extends2);
22
+ _react = _interopRequireWildcard(_react);
23
+ _image = _interopRequireDefault(_image);
24
+ _grid = _interopRequireDefault(_grid);
25
+ _addIcon = _interopRequireDefault(_addIcon);
26
+ Object.keys(_type).forEach(function (key) {
27
+ if (key === "default" || key === "__esModule") return;
28
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
29
+ if (key in _exports && _exports[key] === _type[key]) return;
30
+ _exports[key] = _type[key];
31
+ });
32
+
33
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
34
+
35
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
+
37
+ /**
38
+ * 图片选择器组件
39
+ * @en ImagePicker Component
40
+ * @type 数据录入
41
+ * @type_en Data Entry
42
+ * @name 图片选择器
43
+ * @name_en ImagePicker
44
+ */
45
+ var ImagePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
46
+ var _props$className = props.className,
47
+ className = _props$className === void 0 ? '' : _props$className,
48
+ style = props.style,
49
+ _props$accept = props.accept,
50
+ accept = _props$accept === void 0 ? 'image/*' : _props$accept,
51
+ _props$multiple = props.multiple,
52
+ multiple = _props$multiple === void 0 ? false : _props$multiple,
53
+ capture = props.capture,
54
+ _props$columns = props.columns,
55
+ columns = _props$columns === void 0 ? 3 : _props$columns,
56
+ _props$gutter = props.gutter,
57
+ gutter = _props$gutter === void 0 ? 8 : _props$gutter,
58
+ _props$limit = props.limit,
59
+ limit = _props$limit === void 0 ? 0 : _props$limit,
60
+ _props$images = props.images,
61
+ images = _props$images === void 0 ? [] : _props$images,
62
+ maxSize = props.maxSize,
63
+ disabled = props.disabled,
64
+ deleteIcon = props.deleteIcon,
65
+ selectIcon = props.selectIcon,
66
+ _props$hideDelete = props.hideDelete,
67
+ hideDelete = _props$hideDelete === void 0 ? false : _props$hideDelete,
68
+ _props$hideSelect = props.hideSelect,
69
+ hideSelect = _props$hideSelect === void 0 ? false : _props$hideSelect,
70
+ _props$alwaysShowSele = props.alwaysShowSelect,
71
+ alwaysShowSelect = _props$alwaysShowSele === void 0 ? false : _props$alwaysShowSele,
72
+ imageProps = props.imageProps,
73
+ renderLoading = props.renderLoading,
74
+ renderError = props.renderError,
75
+ onLongPress = props.onLongPress,
76
+ onClick = props.onClick,
77
+ _props$onChange = props.onChange,
78
+ onChange = _props$onChange === void 0 ? function () {
79
+ return null;
80
+ } : _props$onChange,
81
+ onMaxSizeExceed = props.onMaxSizeExceed,
82
+ onLimitExceed = props.onLimitExceed,
83
+ upload = props.upload,
84
+ selectAdapter = props.selectAdapter;
85
+ var domRef = (0, _react.useRef)(null);
86
+ var fileRef = (0, _react.useRef)(null);
87
+ var cacheRef = (0, _react.useRef)([]);
88
+ (0, _react.useImperativeHandle)(ref, function () {
89
+ return {
90
+ dom: domRef.current
91
+ };
92
+ });
93
+
94
+ var parseFile = function parseFile(file) {
95
+ return new _es6Promise.Promise(function (resolve, reject) {
96
+ if (file.url) {
97
+ resolve(file.url);
98
+ } else {
99
+ var reader = new FileReader();
100
+
101
+ reader.onload = function (e) {
102
+ var _e$target;
103
+
104
+ var dataURL = (_e$target = e.target) == null ? void 0 : _e$target.result;
105
+
106
+ if (!dataURL) {
107
+ reject(new Error('file parse error'));
108
+ }
109
+
110
+ resolve(dataURL);
111
+ };
112
+
113
+ reader.onerror = function () {
114
+ reject(new Error('file parse error'));
115
+ };
116
+
117
+ reader.readAsDataURL(file);
118
+ }
119
+ });
120
+ };
121
+
122
+ var handleChange = function handleChange(event, fromAdapter) {
123
+ var files = Array.prototype.filter.call(event.target.files || [], function (file) {
124
+ // 过滤maxSize
125
+ if (maxSize && file.size > maxSize * 1024) {
126
+ onMaxSizeExceed && onMaxSizeExceed(file);
127
+ return false;
128
+ }
129
+
130
+ return true;
131
+ }) || [];
132
+
133
+ if (!fromAdapter) {
134
+ event.target.value = '';
135
+ } // 截断limit
136
+
137
+
138
+ if (limit !== 0 && files.length + images.length > limit) {
139
+ onLimitExceed && onLimitExceed(files);
140
+ files.length = limit - images.length;
141
+ } // 解析文件生成预览
142
+
143
+
144
+ _es6Promise.Promise.all(files.map(function (file) {
145
+ return parseFile(file);
146
+ })).then(function (parseFiles) {
147
+ var res = parseFiles.map(function (url, index) {
148
+ return {
149
+ url: url,
150
+ status: typeof upload === 'function' ? 'loading' : 'loaded',
151
+ file: files[index]
152
+ };
153
+ });
154
+ cacheRef.current = [].concat(images, res);
155
+ onChange([].concat(cacheRef.current)); // 执行upload
156
+
157
+ if (typeof upload === 'function') {
158
+ files.forEach(function (_file) {
159
+ upload(cacheRef.current.find(function (_ref) {
160
+ var file = _ref.file;
161
+ return file === _file;
162
+ })).then(function (data) {
163
+ var index = cacheRef.current.findIndex(function (_ref2) {
164
+ var file = _ref2.file;
165
+ return file === _file;
166
+ });
167
+ cacheRef.current[index] = (0, _extends2.default)({}, cacheRef.current[index], data, {
168
+ status: undefined
169
+ });
170
+ }).catch(function () {
171
+ var index = cacheRef.current.findIndex(function (_ref3) {
172
+ var file = _ref3.file;
173
+ return file === _file;
174
+ });
175
+ cacheRef.current[index].status = 'error';
176
+ }).finally(function () {
177
+ onChange([].concat(cacheRef.current));
178
+ });
179
+ });
180
+ }
181
+ });
182
+ };
183
+
184
+ var handleDelete = function handleDelete(index) {
185
+ onChange(images.filter(function (_i, j) {
186
+ return j !== index;
187
+ }));
188
+ }; // click && longPress
189
+
190
+
191
+ var timeOutEvent;
192
+
193
+ var handleTouchStart = function handleTouchStart(e, image, index) {
194
+ e.preventDefault();
195
+ timeOutEvent = setTimeout(function () {
196
+ timeOutEvent = 0;
197
+ onLongPress == null ? void 0 : onLongPress(e, image, index);
198
+ }, 750);
199
+ };
200
+
201
+ var handleClick = function handleClick(e, image, index) {
202
+ clearTimeout(timeOutEvent);
203
+
204
+ if (timeOutEvent !== 0) {
205
+ onClick == null ? void 0 : onClick(e, image, index);
206
+ }
207
+ };
208
+
209
+ var handleSelect = function handleSelect() {
210
+ var _fileRef$current;
211
+
212
+ selectAdapter ? selectAdapter().then(function (_ref4) {
213
+ var files = _ref4.files;
214
+ return handleChange({
215
+ target: {
216
+ files: files
217
+ }
218
+ }, true);
219
+ }) : (_fileRef$current = fileRef.current) == null ? void 0 : _fileRef$current.click();
220
+ };
221
+
222
+ var getGridData = function getGridData(prefixCls, locale) {
223
+ var errorNode = function errorNode(index) {
224
+ if (renderError) {
225
+ return typeof renderError === 'function' ? renderError(index) : renderError;
226
+ }
227
+
228
+ return /*#__PURE__*/_react.default.createElement("div", {
229
+ className: prefixCls + "-image-picker-error"
230
+ }, /*#__PURE__*/_react.default.createElement("p", null, locale.ImagePicker.loadError));
231
+ };
232
+
233
+ var loadingNode = function loadingNode(index) {
234
+ if (renderLoading) {
235
+ return typeof renderLoading === 'function' ? renderLoading(index) : renderLoading;
236
+ }
237
+
238
+ return null;
239
+ };
240
+
241
+ var data = (limit && limit < images.length ? images.slice(0, limit) : images).map(function (image, index) {
242
+ var url = image.url,
243
+ status = image.status;
244
+ return {
245
+ img: /*#__PURE__*/_react.default.createElement("div", {
246
+ key: index + "-" + url,
247
+ className: prefixCls + "-image-picker-image"
248
+ }, /*#__PURE__*/_react.default.createElement("div", {
249
+ onTouchStart: function onTouchStart(e) {
250
+ return handleTouchStart(e, image, index);
251
+ },
252
+ onClick: function onClick(e) {
253
+ return handleClick(e, image, index);
254
+ },
255
+ className: prefixCls + "-image-picker-image-container"
256
+ }, /*#__PURE__*/_react.default.createElement(_image.default, (0, _extends2.default)({
257
+ showLoading: true,
258
+ showError: true
259
+ }, imageProps || {}, {
260
+ src: url,
261
+ errorArea: errorNode(index),
262
+ loadingArea: loadingNode(index),
263
+ status: status || (imageProps == null ? void 0 : imageProps.status)
264
+ })), /*#__PURE__*/_react.default.createElement("div", {
265
+ className: prefixCls + "-image-picker-image-mask"
266
+ })), !hideDelete && /*#__PURE__*/_react.default.createElement("div", {
267
+ className: prefixCls + "-image-picker-close",
268
+ onClick: function onClick() {
269
+ return handleDelete(index);
270
+ }
271
+ }, deleteIcon || /*#__PURE__*/_react.default.createElement("div", {
272
+ className: prefixCls + "-image-picker-close-icon"
273
+ }, /*#__PURE__*/_react.default.createElement(_icon.IconClose, null)))),
274
+ title: ''
275
+ };
276
+ });
277
+ var showSelect = !hideSelect && images.length < (limit || Infinity);
278
+ var disableSelect = disabled || alwaysShowSelect && !showSelect;
279
+
280
+ if (showSelect || alwaysShowSelect) {
281
+ var _cls;
282
+
283
+ data.push({
284
+ img: /*#__PURE__*/_react.default.createElement("div", {
285
+ className: (0, _mobileUtils.cls)(prefixCls + "-image-picker-add", (_cls = {}, _cls[prefixCls + "-image-picker-add-disabled"] = disableSelect, _cls)),
286
+ onClick: handleSelect
287
+ }, /*#__PURE__*/_react.default.createElement("div", {
288
+ className: prefixCls + "-image-picker-add-container"
289
+ }, selectIcon || /*#__PURE__*/_react.default.createElement("div", {
290
+ className: prefixCls + "-image-picker-add-icon"
291
+ }, /*#__PURE__*/_react.default.createElement(_addIcon.default, null)), !selectAdapter ? /*#__PURE__*/_react.default.createElement("input", {
292
+ capture: capture,
293
+ accept: accept,
294
+ multiple: multiple,
295
+ type: "file",
296
+ onChange: function onChange(e) {
297
+ return handleChange(e);
298
+ },
299
+ ref: fileRef
300
+ }) : null)),
301
+ title: ''
302
+ });
303
+ }
304
+
305
+ return data;
306
+ };
307
+
308
+ return /*#__PURE__*/_react.default.createElement(_contextProvider.ContextLayout, null, function (_ref5) {
309
+ var _cls2;
310
+
311
+ var prefixCls = _ref5.prefixCls,
312
+ _ref5$locale = _ref5.locale,
313
+ locale = _ref5$locale === void 0 ? _mobileUtils.defaultLocale : _ref5$locale;
314
+ return /*#__PURE__*/_react.default.createElement("div", {
315
+ className: (0, _mobileUtils.cls)(prefixCls + "-image-picker", className, (_cls2 = {}, _cls2[prefixCls + "-image-picker-disabled"] = disabled, _cls2)),
316
+ style: style,
317
+ ref: domRef
318
+ }, /*#__PURE__*/_react.default.createElement("div", {
319
+ className: prefixCls + "-image-picker-container"
320
+ }, /*#__PURE__*/_react.default.createElement(_grid.default, {
321
+ data: getGridData(prefixCls, locale),
322
+ gutter: gutter,
323
+ columns: columns
324
+ })));
325
+ });
326
+ });
327
+ var _default = ImagePicker;
328
+ _exports.default = _default;
329
+ });