@arco-design/mobile-react 2.29.5 → 2.30.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 (736) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.en-US.md +2 -2
  3. package/README.md +2 -2
  4. package/cjs/_helpers/hooks.d.ts +242 -2
  5. package/cjs/_helpers/hooks.js +267 -10
  6. package/cjs/_helpers/index.d.ts +78 -1
  7. package/cjs/_helpers/index.js +87 -8
  8. package/cjs/action-sheet/demo/style/css/mobile.css +514 -1
  9. package/cjs/action-sheet/demo/style/mobile.less +32 -0
  10. package/cjs/action-sheet/style/css/index.css +597 -2
  11. package/cjs/action-sheet/style/index.less +62 -0
  12. package/cjs/avatar/demo/style/css/mobile.css +518 -1
  13. package/cjs/avatar/demo/style/mobile.less +41 -1
  14. package/cjs/avatar/style/css/index.css +529 -3
  15. package/cjs/avatar/style/index.less +54 -1
  16. package/cjs/badge/demo/style/css/mobile.css +520 -1
  17. package/cjs/badge/demo/style/mobile.less +40 -0
  18. package/cjs/badge/style/css/index.css +518 -1
  19. package/cjs/badge/style/index.less +36 -0
  20. package/cjs/button/demo/style/css/mobile.css +510 -0
  21. package/cjs/button/demo/style/mobile.less +25 -0
  22. package/cjs/button/style/css/index.css +616 -39
  23. package/cjs/button/style/index.less +135 -25
  24. package/cjs/carousel/demo/style/css/mobile.css +514 -0
  25. package/cjs/carousel/demo/style/mobile.less +33 -0
  26. package/cjs/carousel/style/css/index.css +525 -3
  27. package/cjs/carousel/style/index.less +55 -0
  28. package/cjs/cell/demo/style/css/mobile.css +521 -0
  29. package/cjs/cell/demo/style/mobile.less +46 -0
  30. package/cjs/cell/style/css/index.css +707 -2
  31. package/cjs/cell/style/index.less +96 -0
  32. package/cjs/checkbox/demo/style/css/mobile.css +510 -0
  33. package/cjs/checkbox/demo/style/mobile.less +25 -0
  34. package/cjs/checkbox/style/css/index.css +535 -4
  35. package/cjs/checkbox/style/index.less +61 -0
  36. package/cjs/circle-progress/demo/style/css/mobile.css +510 -0
  37. package/cjs/circle-progress/demo/style/mobile.less +25 -0
  38. package/cjs/circle-progress/style/css/index.css +527 -3
  39. package/cjs/circle-progress/style/index.less +49 -0
  40. package/cjs/collapse/demo/style/css/mobile.css +510 -0
  41. package/cjs/collapse/demo/style/mobile.less +25 -0
  42. package/cjs/collapse/style/css/index.css +557 -1
  43. package/cjs/collapse/style/index.less +53 -0
  44. package/cjs/context-provider/demo/style/css/mobile.css +510 -0
  45. package/cjs/context-provider/demo/style/mobile.less +25 -0
  46. package/cjs/context-provider/index.d.ts +10 -3
  47. package/cjs/context-provider/index.js +40 -7
  48. package/cjs/count-down/demo/style/css/mobile.css +518 -2
  49. package/cjs/count-down/demo/style/mobile.less +39 -0
  50. package/cjs/count-down/style/css/index.css +513 -0
  51. package/cjs/count-down/style/index.less +30 -0
  52. package/cjs/date-picker/demo/style/css/mobile.css +510 -0
  53. package/cjs/date-picker/demo/style/mobile.less +25 -0
  54. package/cjs/date-picker/style/css/index.css +510 -0
  55. package/cjs/date-picker/style/index.less +25 -0
  56. package/cjs/dialog/demo/style/css/mobile.css +520 -1
  57. package/cjs/dialog/demo/style/mobile.less +44 -0
  58. package/cjs/dialog/style/css/index.css +645 -4
  59. package/cjs/dialog/style/index.less +102 -0
  60. package/cjs/divider/demo/style/css/mobile.css +510 -1
  61. package/cjs/divider/demo/style/mobile.less +26 -2
  62. package/cjs/divider/style/css/index.css +516 -0
  63. package/cjs/divider/style/index.less +44 -9
  64. package/cjs/dropdown/demo/style/css/mobile.css +510 -0
  65. package/cjs/dropdown/demo/style/mobile.less +25 -0
  66. package/cjs/dropdown/style/css/index.css +542 -6
  67. package/cjs/dropdown/style/index.less +69 -0
  68. package/cjs/dropdown-menu/demo/style/css/mobile.css +510 -0
  69. package/cjs/dropdown-menu/demo/style/mobile.less +25 -0
  70. package/cjs/dropdown-menu/style/css/index.css +566 -3
  71. package/cjs/dropdown-menu/style/index.less +62 -0
  72. package/cjs/ellipsis/demo/style/css/mobile.css +519 -1
  73. package/cjs/ellipsis/demo/style/mobile.less +39 -0
  74. package/cjs/ellipsis/style/css/index.css +514 -0
  75. package/cjs/ellipsis/style/index.less +32 -0
  76. package/cjs/form/style/css/index.css +538 -5
  77. package/cjs/form/style/index.less +66 -3
  78. package/cjs/grid/demo/style/css/mobile.css +525 -3
  79. package/cjs/grid/demo/style/mobile.less +47 -0
  80. package/cjs/grid/style/css/index.css +519 -0
  81. package/cjs/grid/style/index.less +48 -0
  82. package/cjs/image/demo/style/css/mobile.css +510 -0
  83. package/cjs/image/demo/style/mobile.less +25 -0
  84. package/cjs/image/index.d.ts +7 -7
  85. package/cjs/image/index.js +81 -61
  86. package/cjs/image/style/css/index.css +551 -7
  87. package/cjs/image/style/index.less +54 -0
  88. package/cjs/image-picker/demo/style/css/mobile.css +510 -0
  89. package/cjs/image-picker/demo/style/mobile.less +25 -0
  90. package/cjs/image-picker/style/css/index.css +529 -4
  91. package/cjs/image-picker/style/index.less +54 -0
  92. package/cjs/image-preview/demo/style/css/mobile.css +510 -0
  93. package/cjs/image-preview/demo/style/mobile.less +25 -0
  94. package/cjs/image-preview/index.js +6 -2
  95. package/cjs/image-preview/methods.d.ts +1 -0
  96. package/cjs/image-preview/methods.js +7 -2
  97. package/cjs/image-preview/style/css/index.css +530 -5
  98. package/cjs/image-preview/style/index.less +37 -0
  99. package/cjs/index-bar/demo/style/css/mobile.css +510 -0
  100. package/cjs/index-bar/demo/style/mobile.less +25 -0
  101. package/cjs/index-bar/style/css/index.css +572 -8
  102. package/cjs/index-bar/style/index.less +67 -0
  103. package/cjs/input/demo/style/css/mobile.css +514 -1
  104. package/cjs/input/demo/style/mobile.less +32 -0
  105. package/cjs/input/style/css/index.css +589 -2
  106. package/cjs/input/style/index.less +87 -0
  107. package/cjs/keyboard/demo/style/css/mobile.css +516 -0
  108. package/cjs/keyboard/demo/style/mobile.less +35 -1
  109. package/cjs/keyboard/style/css/index.css +526 -2
  110. package/cjs/keyboard/style/index.less +51 -0
  111. package/cjs/load-more/demo/style/css/mobile.css +513 -0
  112. package/cjs/load-more/demo/style/mobile.less +30 -0
  113. package/cjs/load-more/style/css/index.css +513 -0
  114. package/cjs/load-more/style/index.less +30 -0
  115. package/cjs/loading/demo/style/css/mobile.css +510 -0
  116. package/cjs/loading/demo/style/mobile.less +25 -0
  117. package/cjs/loading/style/css/index.css +534 -5
  118. package/cjs/loading/style/index.less +45 -0
  119. package/cjs/masking/demo/style/css/mobile.css +514 -1
  120. package/cjs/masking/demo/style/mobile.less +30 -0
  121. package/cjs/masking/methods.js +7 -2
  122. package/cjs/masking/style/css/index.css +510 -0
  123. package/cjs/masking/style/index.less +25 -0
  124. package/cjs/nav-bar/demo/style/css/mobile.css +514 -1
  125. package/cjs/nav-bar/demo/style/mobile.less +33 -1
  126. package/cjs/nav-bar/style/css/index.css +550 -1
  127. package/cjs/nav-bar/style/index.less +38 -0
  128. package/cjs/notice-bar/style/css/index.css +520 -2
  129. package/cjs/notice-bar/style/index.less +36 -0
  130. package/cjs/notify/demo/style/css/mobile.css +510 -0
  131. package/cjs/notify/demo/style/mobile.less +25 -0
  132. package/cjs/notify/style/css/index.css +529 -4
  133. package/cjs/notify/style/index.less +50 -0
  134. package/cjs/pagination/demo/style/css/index.css +510 -0
  135. package/cjs/pagination/demo/style/index.less +25 -0
  136. package/cjs/pagination/style/css/index.css +543 -4
  137. package/cjs/pagination/style/index.less +72 -0
  138. package/cjs/picker/demo/style/css/mobile.css +510 -0
  139. package/cjs/picker/demo/style/mobile.less +25 -0
  140. package/cjs/picker/style/css/index.css +525 -3
  141. package/cjs/picker/style/index.less +49 -0
  142. package/cjs/picker-view/demo/style/css/mobile.css +510 -0
  143. package/cjs/picker-view/demo/style/mobile.less +25 -0
  144. package/cjs/picker-view/style/css/index.css +587 -0
  145. package/cjs/picker-view/style/index.less +50 -0
  146. package/cjs/popover/demo/style/css/mobile.css +510 -0
  147. package/cjs/popover/demo/style/mobile.less +25 -0
  148. package/cjs/popover/style/css/index.css +614 -4
  149. package/cjs/popover/style/css/menu.css +539 -1
  150. package/cjs/popover/style/index.less +126 -9
  151. package/cjs/popover/style/menu.less +69 -0
  152. package/cjs/popup/demo/style/css/mobile.css +517 -0
  153. package/cjs/popup/demo/style/mobile.less +38 -0
  154. package/cjs/popup/style/css/index.css +514 -1
  155. package/cjs/popup/style/index.less +32 -0
  156. package/cjs/popup-swiper/demo/style/css/mobile.css +517 -0
  157. package/cjs/popup-swiper/demo/style/mobile.less +38 -0
  158. package/cjs/popup-swiper/index.d.ts +2 -8
  159. package/cjs/popup-swiper/style/css/index.css +510 -0
  160. package/cjs/popup-swiper/style/index.less +25 -0
  161. package/cjs/portal/demo/style/css/mobile.css +515 -1
  162. package/cjs/portal/demo/style/mobile.less +31 -0
  163. package/cjs/progress/demo/style/css/mobile.css +510 -0
  164. package/cjs/progress/demo/style/mobile.less +25 -0
  165. package/cjs/progress/style/css/index.css +556 -8
  166. package/cjs/progress/style/index.less +91 -0
  167. package/cjs/pull-refresh/demo/style/css/mobile.css +514 -2
  168. package/cjs/pull-refresh/demo/style/mobile.less +35 -2
  169. package/cjs/pull-refresh/style/css/index.css +536 -3
  170. package/cjs/pull-refresh/style/index.less +45 -0
  171. package/cjs/radio/demo/style/css/mobile.css +513 -0
  172. package/cjs/radio/demo/style/mobile.less +32 -0
  173. package/cjs/radio/style/css/index.css +535 -4
  174. package/cjs/radio/style/index.less +61 -0
  175. package/cjs/rate/demo/style/css/mobile.css +510 -0
  176. package/cjs/rate/demo/style/mobile.less +25 -0
  177. package/cjs/rate/style/css/index.css +522 -2
  178. package/cjs/rate/style/index.less +43 -0
  179. package/cjs/search-bar/demo/style/css/mobile.css +516 -1
  180. package/cjs/search-bar/demo/style/mobile.less +39 -5
  181. package/cjs/search-bar/style/css/index.css +586 -6
  182. package/cjs/search-bar/style/index.less +84 -0
  183. package/cjs/show-monitor/demo/style/css/mobile.css +521 -2
  184. package/cjs/show-monitor/demo/style/mobile.less +43 -1
  185. package/cjs/skeleton/demo/style/css/mobile.css +510 -0
  186. package/cjs/skeleton/demo/style/mobile.less +25 -0
  187. package/cjs/skeleton/style/css/index.css +517 -1
  188. package/cjs/skeleton/style/index.less +35 -0
  189. package/cjs/slider/demo/style/css/mobile.css +514 -1
  190. package/cjs/slider/demo/style/mobile.less +34 -0
  191. package/cjs/slider/style/css/index.css +542 -5
  192. package/cjs/slider/style/index.less +74 -0
  193. package/cjs/stepper/demo/style/css/mobile.css +510 -0
  194. package/cjs/stepper/demo/style/mobile.less +25 -1
  195. package/cjs/stepper/style/css/index.css +551 -7
  196. package/cjs/stepper/style/index.less +84 -3
  197. package/cjs/steps/demo/style/css/mobile.css +544 -4
  198. package/cjs/steps/demo/style/mobile.less +41 -3
  199. package/cjs/steps/style/css/index.css +580 -9
  200. package/cjs/steps/style/index.less +138 -0
  201. package/cjs/steps/type.d.ts +1 -1
  202. package/cjs/sticky/demo/style/css/mobile.css +515 -2
  203. package/cjs/sticky/demo/style/mobile.less +34 -2
  204. package/cjs/sticky/style/css/index.css +510 -0
  205. package/cjs/sticky/style/index.less +25 -0
  206. package/cjs/swipe-action/demo/style/css/mobile.css +510 -0
  207. package/cjs/swipe-action/demo/style/mobile.less +25 -0
  208. package/cjs/swipe-action/style/css/index.css +518 -2
  209. package/cjs/swipe-action/style/index.less +43 -0
  210. package/cjs/swipe-load/demo/style/css/mobile.css +539 -5
  211. package/cjs/swipe-load/demo/style/mobile.less +64 -0
  212. package/cjs/swipe-load/style/css/index.css +517 -1
  213. package/cjs/swipe-load/style/index.less +37 -0
  214. package/cjs/switch/demo/style/css/mobile.css +515 -1
  215. package/cjs/switch/demo/style/mobile.less +35 -0
  216. package/cjs/switch/style/css/index.css +532 -4
  217. package/cjs/switch/style/index.less +59 -0
  218. package/cjs/tab-bar/demo/style/css/mobile.css +510 -0
  219. package/cjs/tab-bar/demo/style/mobile.less +25 -0
  220. package/cjs/tab-bar/style/css/index.css +517 -1
  221. package/cjs/tab-bar/style/index.less +37 -0
  222. package/cjs/tabs/demo/style/css/mobile.css +542 -5
  223. package/cjs/tabs/demo/style/mobile.less +75 -0
  224. package/cjs/tabs/index.js +4 -1
  225. package/cjs/tabs/style/css/index.css +618 -13
  226. package/cjs/tabs/style/index.less +123 -0
  227. package/cjs/tabs/tab-cell.js +1 -1
  228. package/cjs/tag/demo/style/css/mobile.css +510 -0
  229. package/cjs/tag/demo/style/mobile.less +25 -0
  230. package/cjs/tag/style/css/index.css +538 -10
  231. package/cjs/tag/style/index.less +55 -0
  232. package/cjs/textarea/demo/style/css/mobile.css +514 -1
  233. package/cjs/textarea/demo/style/mobile.less +32 -1
  234. package/cjs/textarea/style/css/index.css +527 -2
  235. package/cjs/textarea/style/index.less +47 -0
  236. package/cjs/toast/demo/style/css/mobile.css +510 -0
  237. package/cjs/toast/demo/style/mobile.less +25 -0
  238. package/cjs/toast/style/css/index.css +530 -5
  239. package/cjs/toast/style/index.less +37 -0
  240. package/cjs/transition/demo/style/css/mobile.css +510 -0
  241. package/cjs/transition/demo/style/mobile.less +25 -0
  242. package/cjs/transition/style/css/index.css +510 -0
  243. package/cjs/transition/style/index.less +25 -0
  244. package/dist/index.js +1196 -117
  245. package/dist/index.min.js +4 -4
  246. package/dist/style.css +28002 -211
  247. package/dist/style.min.css +1 -1
  248. package/esm/_helpers/hooks.d.ts +242 -2
  249. package/esm/_helpers/hooks.js +269 -10
  250. package/esm/_helpers/index.d.ts +78 -1
  251. package/esm/_helpers/index.js +80 -1
  252. package/esm/action-sheet/demo/style/css/mobile.css +514 -1
  253. package/esm/action-sheet/demo/style/mobile.less +32 -0
  254. package/esm/action-sheet/style/css/index.css +597 -2
  255. package/esm/action-sheet/style/index.less +62 -0
  256. package/esm/avatar/demo/style/css/mobile.css +518 -1
  257. package/esm/avatar/demo/style/mobile.less +41 -1
  258. package/esm/avatar/style/css/index.css +529 -3
  259. package/esm/avatar/style/index.less +54 -1
  260. package/esm/badge/demo/style/css/mobile.css +520 -1
  261. package/esm/badge/demo/style/mobile.less +40 -0
  262. package/esm/badge/style/css/index.css +518 -1
  263. package/esm/badge/style/index.less +36 -0
  264. package/esm/button/demo/style/css/mobile.css +510 -0
  265. package/esm/button/demo/style/mobile.less +25 -0
  266. package/esm/button/style/css/index.css +616 -39
  267. package/esm/button/style/index.less +135 -25
  268. package/esm/carousel/demo/style/css/mobile.css +514 -0
  269. package/esm/carousel/demo/style/mobile.less +33 -0
  270. package/esm/carousel/style/css/index.css +525 -3
  271. package/esm/carousel/style/index.less +55 -0
  272. package/esm/cell/demo/style/css/mobile.css +521 -0
  273. package/esm/cell/demo/style/mobile.less +46 -0
  274. package/esm/cell/style/css/index.css +707 -2
  275. package/esm/cell/style/index.less +96 -0
  276. package/esm/checkbox/demo/style/css/mobile.css +510 -0
  277. package/esm/checkbox/demo/style/mobile.less +25 -0
  278. package/esm/checkbox/style/css/index.css +535 -4
  279. package/esm/checkbox/style/index.less +61 -0
  280. package/esm/circle-progress/demo/style/css/mobile.css +510 -0
  281. package/esm/circle-progress/demo/style/mobile.less +25 -0
  282. package/esm/circle-progress/style/css/index.css +527 -3
  283. package/esm/circle-progress/style/index.less +49 -0
  284. package/esm/collapse/demo/style/css/mobile.css +510 -0
  285. package/esm/collapse/demo/style/mobile.less +25 -0
  286. package/esm/collapse/style/css/index.css +557 -1
  287. package/esm/collapse/style/index.less +53 -0
  288. package/esm/context-provider/demo/style/css/mobile.css +510 -0
  289. package/esm/context-provider/demo/style/mobile.less +25 -0
  290. package/esm/context-provider/index.d.ts +10 -3
  291. package/esm/context-provider/index.js +41 -8
  292. package/esm/count-down/demo/style/css/mobile.css +518 -2
  293. package/esm/count-down/demo/style/mobile.less +39 -0
  294. package/esm/count-down/style/css/index.css +513 -0
  295. package/esm/count-down/style/index.less +30 -0
  296. package/esm/date-picker/demo/style/css/mobile.css +510 -0
  297. package/esm/date-picker/demo/style/mobile.less +25 -0
  298. package/esm/date-picker/style/css/index.css +510 -0
  299. package/esm/date-picker/style/index.less +25 -0
  300. package/esm/dialog/demo/style/css/mobile.css +520 -1
  301. package/esm/dialog/demo/style/mobile.less +44 -0
  302. package/esm/dialog/style/css/index.css +645 -4
  303. package/esm/dialog/style/index.less +102 -0
  304. package/esm/divider/demo/style/css/mobile.css +510 -1
  305. package/esm/divider/demo/style/mobile.less +26 -2
  306. package/esm/divider/style/css/index.css +516 -0
  307. package/esm/divider/style/index.less +44 -9
  308. package/esm/dropdown/demo/style/css/mobile.css +510 -0
  309. package/esm/dropdown/demo/style/mobile.less +25 -0
  310. package/esm/dropdown/style/css/index.css +542 -6
  311. package/esm/dropdown/style/index.less +69 -0
  312. package/esm/dropdown-menu/demo/style/css/mobile.css +510 -0
  313. package/esm/dropdown-menu/demo/style/mobile.less +25 -0
  314. package/esm/dropdown-menu/style/css/index.css +566 -3
  315. package/esm/dropdown-menu/style/index.less +62 -0
  316. package/esm/ellipsis/demo/style/css/mobile.css +519 -1
  317. package/esm/ellipsis/demo/style/mobile.less +39 -0
  318. package/esm/ellipsis/style/css/index.css +514 -0
  319. package/esm/ellipsis/style/index.less +32 -0
  320. package/esm/form/style/css/index.css +538 -5
  321. package/esm/form/style/index.less +66 -3
  322. package/esm/grid/demo/style/css/mobile.css +525 -3
  323. package/esm/grid/demo/style/mobile.less +47 -0
  324. package/esm/grid/style/css/index.css +519 -0
  325. package/esm/grid/style/index.less +48 -0
  326. package/esm/image/demo/style/css/mobile.css +510 -0
  327. package/esm/image/demo/style/mobile.less +25 -0
  328. package/esm/image/index.d.ts +7 -7
  329. package/esm/image/index.js +81 -61
  330. package/esm/image/style/css/index.css +551 -7
  331. package/esm/image/style/index.less +54 -0
  332. package/esm/image-picker/demo/style/css/mobile.css +510 -0
  333. package/esm/image-picker/demo/style/mobile.less +25 -0
  334. package/esm/image-picker/style/css/index.css +529 -4
  335. package/esm/image-picker/style/index.less +54 -0
  336. package/esm/image-preview/demo/style/css/mobile.css +510 -0
  337. package/esm/image-preview/demo/style/mobile.less +25 -0
  338. package/esm/image-preview/index.js +6 -2
  339. package/esm/image-preview/methods.d.ts +1 -0
  340. package/esm/image-preview/methods.js +7 -3
  341. package/esm/image-preview/style/css/index.css +530 -5
  342. package/esm/image-preview/style/index.less +37 -0
  343. package/esm/index-bar/demo/style/css/mobile.css +510 -0
  344. package/esm/index-bar/demo/style/mobile.less +25 -0
  345. package/esm/index-bar/style/css/index.css +572 -8
  346. package/esm/index-bar/style/index.less +67 -0
  347. package/esm/input/demo/style/css/mobile.css +514 -1
  348. package/esm/input/demo/style/mobile.less +32 -0
  349. package/esm/input/style/css/index.css +589 -2
  350. package/esm/input/style/index.less +87 -0
  351. package/esm/keyboard/demo/style/css/mobile.css +516 -0
  352. package/esm/keyboard/demo/style/mobile.less +35 -1
  353. package/esm/keyboard/style/css/index.css +526 -2
  354. package/esm/keyboard/style/index.less +51 -0
  355. package/esm/load-more/demo/style/css/mobile.css +513 -0
  356. package/esm/load-more/demo/style/mobile.less +30 -0
  357. package/esm/load-more/style/css/index.css +513 -0
  358. package/esm/load-more/style/index.less +30 -0
  359. package/esm/loading/demo/style/css/mobile.css +510 -0
  360. package/esm/loading/demo/style/mobile.less +25 -0
  361. package/esm/loading/style/css/index.css +534 -5
  362. package/esm/loading/style/index.less +45 -0
  363. package/esm/masking/demo/style/css/mobile.css +514 -1
  364. package/esm/masking/demo/style/mobile.less +30 -0
  365. package/esm/masking/methods.js +7 -3
  366. package/esm/masking/style/css/index.css +510 -0
  367. package/esm/masking/style/index.less +25 -0
  368. package/esm/nav-bar/demo/style/css/mobile.css +514 -1
  369. package/esm/nav-bar/demo/style/mobile.less +33 -1
  370. package/esm/nav-bar/style/css/index.css +550 -1
  371. package/esm/nav-bar/style/index.less +38 -0
  372. package/esm/notice-bar/style/css/index.css +520 -2
  373. package/esm/notice-bar/style/index.less +36 -0
  374. package/esm/notify/demo/style/css/mobile.css +510 -0
  375. package/esm/notify/demo/style/mobile.less +25 -0
  376. package/esm/notify/style/css/index.css +529 -4
  377. package/esm/notify/style/index.less +50 -0
  378. package/esm/pagination/demo/style/css/index.css +510 -0
  379. package/esm/pagination/demo/style/index.less +25 -0
  380. package/esm/pagination/style/css/index.css +543 -4
  381. package/esm/pagination/style/index.less +72 -0
  382. package/esm/picker/demo/style/css/mobile.css +510 -0
  383. package/esm/picker/demo/style/mobile.less +25 -0
  384. package/esm/picker/style/css/index.css +525 -3
  385. package/esm/picker/style/index.less +49 -0
  386. package/esm/picker-view/demo/style/css/mobile.css +510 -0
  387. package/esm/picker-view/demo/style/mobile.less +25 -0
  388. package/esm/picker-view/style/css/index.css +587 -0
  389. package/esm/picker-view/style/index.less +50 -0
  390. package/esm/popover/demo/style/css/mobile.css +510 -0
  391. package/esm/popover/demo/style/mobile.less +25 -0
  392. package/esm/popover/style/css/index.css +614 -4
  393. package/esm/popover/style/css/menu.css +539 -1
  394. package/esm/popover/style/index.less +126 -9
  395. package/esm/popover/style/menu.less +69 -0
  396. package/esm/popup/demo/style/css/mobile.css +517 -0
  397. package/esm/popup/demo/style/mobile.less +38 -0
  398. package/esm/popup/style/css/index.css +514 -1
  399. package/esm/popup/style/index.less +32 -0
  400. package/esm/popup-swiper/demo/style/css/mobile.css +517 -0
  401. package/esm/popup-swiper/demo/style/mobile.less +38 -0
  402. package/esm/popup-swiper/index.d.ts +2 -8
  403. package/esm/popup-swiper/style/css/index.css +510 -0
  404. package/esm/popup-swiper/style/index.less +25 -0
  405. package/esm/portal/demo/style/css/mobile.css +515 -1
  406. package/esm/portal/demo/style/mobile.less +31 -0
  407. package/esm/progress/demo/style/css/mobile.css +510 -0
  408. package/esm/progress/demo/style/mobile.less +25 -0
  409. package/esm/progress/style/css/index.css +556 -8
  410. package/esm/progress/style/index.less +91 -0
  411. package/esm/pull-refresh/demo/style/css/mobile.css +514 -2
  412. package/esm/pull-refresh/demo/style/mobile.less +35 -2
  413. package/esm/pull-refresh/style/css/index.css +536 -3
  414. package/esm/pull-refresh/style/index.less +45 -0
  415. package/esm/radio/demo/style/css/mobile.css +513 -0
  416. package/esm/radio/demo/style/mobile.less +32 -0
  417. package/esm/radio/style/css/index.css +535 -4
  418. package/esm/radio/style/index.less +61 -0
  419. package/esm/rate/demo/style/css/mobile.css +510 -0
  420. package/esm/rate/demo/style/mobile.less +25 -0
  421. package/esm/rate/style/css/index.css +522 -2
  422. package/esm/rate/style/index.less +43 -0
  423. package/esm/search-bar/demo/style/css/mobile.css +516 -1
  424. package/esm/search-bar/demo/style/mobile.less +39 -5
  425. package/esm/search-bar/style/css/index.css +586 -6
  426. package/esm/search-bar/style/index.less +84 -0
  427. package/esm/show-monitor/demo/style/css/mobile.css +521 -2
  428. package/esm/show-monitor/demo/style/mobile.less +43 -1
  429. package/esm/skeleton/demo/style/css/mobile.css +510 -0
  430. package/esm/skeleton/demo/style/mobile.less +25 -0
  431. package/esm/skeleton/style/css/index.css +517 -1
  432. package/esm/skeleton/style/index.less +35 -0
  433. package/esm/slider/demo/style/css/mobile.css +514 -1
  434. package/esm/slider/demo/style/mobile.less +34 -0
  435. package/esm/slider/style/css/index.css +542 -5
  436. package/esm/slider/style/index.less +74 -0
  437. package/esm/stepper/demo/style/css/mobile.css +510 -0
  438. package/esm/stepper/demo/style/mobile.less +25 -1
  439. package/esm/stepper/style/css/index.css +551 -7
  440. package/esm/stepper/style/index.less +84 -3
  441. package/esm/steps/demo/style/css/mobile.css +544 -4
  442. package/esm/steps/demo/style/mobile.less +41 -3
  443. package/esm/steps/style/css/index.css +580 -9
  444. package/esm/steps/style/index.less +138 -0
  445. package/esm/steps/type.d.ts +1 -1
  446. package/esm/sticky/demo/style/css/mobile.css +515 -2
  447. package/esm/sticky/demo/style/mobile.less +34 -2
  448. package/esm/sticky/style/css/index.css +510 -0
  449. package/esm/sticky/style/index.less +25 -0
  450. package/esm/swipe-action/demo/style/css/mobile.css +510 -0
  451. package/esm/swipe-action/demo/style/mobile.less +25 -0
  452. package/esm/swipe-action/style/css/index.css +518 -2
  453. package/esm/swipe-action/style/index.less +43 -0
  454. package/esm/swipe-load/demo/style/css/mobile.css +539 -5
  455. package/esm/swipe-load/demo/style/mobile.less +64 -0
  456. package/esm/swipe-load/style/css/index.css +517 -1
  457. package/esm/swipe-load/style/index.less +37 -0
  458. package/esm/switch/demo/style/css/mobile.css +515 -1
  459. package/esm/switch/demo/style/mobile.less +35 -0
  460. package/esm/switch/style/css/index.css +532 -4
  461. package/esm/switch/style/index.less +59 -0
  462. package/esm/tab-bar/demo/style/css/mobile.css +510 -0
  463. package/esm/tab-bar/demo/style/mobile.less +25 -0
  464. package/esm/tab-bar/style/css/index.css +517 -1
  465. package/esm/tab-bar/style/index.less +37 -0
  466. package/esm/tabs/demo/style/css/mobile.css +542 -5
  467. package/esm/tabs/demo/style/mobile.less +75 -0
  468. package/esm/tabs/index.js +4 -1
  469. package/esm/tabs/style/css/index.css +618 -13
  470. package/esm/tabs/style/index.less +123 -0
  471. package/esm/tabs/tab-cell.js +1 -1
  472. package/esm/tag/demo/style/css/mobile.css +510 -0
  473. package/esm/tag/demo/style/mobile.less +25 -0
  474. package/esm/tag/style/css/index.css +538 -10
  475. package/esm/tag/style/index.less +55 -0
  476. package/esm/textarea/demo/style/css/mobile.css +514 -1
  477. package/esm/textarea/demo/style/mobile.less +32 -1
  478. package/esm/textarea/style/css/index.css +527 -2
  479. package/esm/textarea/style/index.less +47 -0
  480. package/esm/toast/demo/style/css/mobile.css +510 -0
  481. package/esm/toast/demo/style/mobile.less +25 -0
  482. package/esm/toast/style/css/index.css +530 -5
  483. package/esm/toast/style/index.less +37 -0
  484. package/esm/transition/demo/style/css/mobile.css +510 -0
  485. package/esm/transition/demo/style/mobile.less +25 -0
  486. package/esm/transition/style/css/index.css +510 -0
  487. package/esm/transition/style/index.less +25 -0
  488. package/less-loader.config.js +6 -0
  489. package/package.json +3 -3
  490. package/style/css/public.css +510 -0
  491. package/tokens/app/arcodesign/default/css-variables.less +357 -103
  492. package/tokens/app/arcodesign/default/index.d.ts +257 -3
  493. package/tokens/app/arcodesign/default/index.js +357 -103
  494. package/tokens/app/arcodesign/default/index.json +2574 -526
  495. package/tokens/app/arcodesign/default/index.less +357 -103
  496. package/tokens/mixin/index.less +255 -1
  497. package/umd/_helpers/hooks.d.ts +242 -2
  498. package/umd/_helpers/hooks.js +267 -10
  499. package/umd/_helpers/index.d.ts +78 -1
  500. package/umd/_helpers/index.js +89 -10
  501. package/umd/action-sheet/demo/style/css/mobile.css +514 -1
  502. package/umd/action-sheet/demo/style/mobile.less +32 -0
  503. package/umd/action-sheet/style/css/index.css +597 -2
  504. package/umd/action-sheet/style/index.less +62 -0
  505. package/umd/avatar/demo/style/css/mobile.css +518 -1
  506. package/umd/avatar/demo/style/mobile.less +41 -1
  507. package/umd/avatar/style/css/index.css +529 -3
  508. package/umd/avatar/style/index.less +54 -1
  509. package/umd/badge/demo/style/css/mobile.css +520 -1
  510. package/umd/badge/demo/style/mobile.less +40 -0
  511. package/umd/badge/style/css/index.css +518 -1
  512. package/umd/badge/style/index.less +36 -0
  513. package/umd/button/demo/style/css/mobile.css +510 -0
  514. package/umd/button/demo/style/mobile.less +25 -0
  515. package/umd/button/style/css/index.css +616 -39
  516. package/umd/button/style/index.less +135 -25
  517. package/umd/carousel/demo/style/css/mobile.css +514 -0
  518. package/umd/carousel/demo/style/mobile.less +33 -0
  519. package/umd/carousel/style/css/index.css +525 -3
  520. package/umd/carousel/style/index.less +55 -0
  521. package/umd/cell/demo/style/css/mobile.css +521 -0
  522. package/umd/cell/demo/style/mobile.less +46 -0
  523. package/umd/cell/style/css/index.css +707 -2
  524. package/umd/cell/style/index.less +96 -0
  525. package/umd/checkbox/demo/style/css/mobile.css +510 -0
  526. package/umd/checkbox/demo/style/mobile.less +25 -0
  527. package/umd/checkbox/style/css/index.css +535 -4
  528. package/umd/checkbox/style/index.less +61 -0
  529. package/umd/circle-progress/demo/style/css/mobile.css +510 -0
  530. package/umd/circle-progress/demo/style/mobile.less +25 -0
  531. package/umd/circle-progress/style/css/index.css +527 -3
  532. package/umd/circle-progress/style/index.less +49 -0
  533. package/umd/collapse/demo/style/css/mobile.css +510 -0
  534. package/umd/collapse/demo/style/mobile.less +25 -0
  535. package/umd/collapse/style/css/index.css +557 -1
  536. package/umd/collapse/style/index.less +53 -0
  537. package/umd/context-provider/demo/style/css/mobile.css +510 -0
  538. package/umd/context-provider/demo/style/mobile.less +25 -0
  539. package/umd/context-provider/index.d.ts +10 -3
  540. package/umd/context-provider/index.js +40 -7
  541. package/umd/count-down/demo/style/css/mobile.css +518 -2
  542. package/umd/count-down/demo/style/mobile.less +39 -0
  543. package/umd/count-down/style/css/index.css +513 -0
  544. package/umd/count-down/style/index.less +30 -0
  545. package/umd/date-picker/demo/style/css/mobile.css +510 -0
  546. package/umd/date-picker/demo/style/mobile.less +25 -0
  547. package/umd/date-picker/style/css/index.css +510 -0
  548. package/umd/date-picker/style/index.less +25 -0
  549. package/umd/dialog/demo/style/css/mobile.css +520 -1
  550. package/umd/dialog/demo/style/mobile.less +44 -0
  551. package/umd/dialog/style/css/index.css +645 -4
  552. package/umd/dialog/style/index.less +102 -0
  553. package/umd/divider/demo/style/css/mobile.css +510 -1
  554. package/umd/divider/demo/style/mobile.less +26 -2
  555. package/umd/divider/style/css/index.css +516 -0
  556. package/umd/divider/style/index.less +44 -9
  557. package/umd/dropdown/demo/style/css/mobile.css +510 -0
  558. package/umd/dropdown/demo/style/mobile.less +25 -0
  559. package/umd/dropdown/style/css/index.css +542 -6
  560. package/umd/dropdown/style/index.less +69 -0
  561. package/umd/dropdown-menu/demo/style/css/mobile.css +510 -0
  562. package/umd/dropdown-menu/demo/style/mobile.less +25 -0
  563. package/umd/dropdown-menu/style/css/index.css +566 -3
  564. package/umd/dropdown-menu/style/index.less +62 -0
  565. package/umd/ellipsis/demo/style/css/mobile.css +519 -1
  566. package/umd/ellipsis/demo/style/mobile.less +39 -0
  567. package/umd/ellipsis/style/css/index.css +514 -0
  568. package/umd/ellipsis/style/index.less +32 -0
  569. package/umd/form/style/css/index.css +538 -5
  570. package/umd/form/style/index.less +66 -3
  571. package/umd/grid/demo/style/css/mobile.css +525 -3
  572. package/umd/grid/demo/style/mobile.less +47 -0
  573. package/umd/grid/style/css/index.css +519 -0
  574. package/umd/grid/style/index.less +48 -0
  575. package/umd/image/demo/style/css/mobile.css +510 -0
  576. package/umd/image/demo/style/mobile.less +25 -0
  577. package/umd/image/index.d.ts +7 -7
  578. package/umd/image/index.js +81 -61
  579. package/umd/image/style/css/index.css +551 -7
  580. package/umd/image/style/index.less +54 -0
  581. package/umd/image-picker/demo/style/css/mobile.css +510 -0
  582. package/umd/image-picker/demo/style/mobile.less +25 -0
  583. package/umd/image-picker/style/css/index.css +529 -4
  584. package/umd/image-picker/style/index.less +54 -0
  585. package/umd/image-preview/demo/style/css/mobile.css +510 -0
  586. package/umd/image-preview/demo/style/mobile.less +25 -0
  587. package/umd/image-preview/index.js +6 -2
  588. package/umd/image-preview/methods.d.ts +1 -0
  589. package/umd/image-preview/methods.js +7 -2
  590. package/umd/image-preview/style/css/index.css +530 -5
  591. package/umd/image-preview/style/index.less +37 -0
  592. package/umd/index-bar/demo/style/css/mobile.css +510 -0
  593. package/umd/index-bar/demo/style/mobile.less +25 -0
  594. package/umd/index-bar/style/css/index.css +572 -8
  595. package/umd/index-bar/style/index.less +67 -0
  596. package/umd/input/demo/style/css/mobile.css +514 -1
  597. package/umd/input/demo/style/mobile.less +32 -0
  598. package/umd/input/style/css/index.css +589 -2
  599. package/umd/input/style/index.less +87 -0
  600. package/umd/keyboard/demo/style/css/mobile.css +516 -0
  601. package/umd/keyboard/demo/style/mobile.less +35 -1
  602. package/umd/keyboard/style/css/index.css +526 -2
  603. package/umd/keyboard/style/index.less +51 -0
  604. package/umd/load-more/demo/style/css/mobile.css +513 -0
  605. package/umd/load-more/demo/style/mobile.less +30 -0
  606. package/umd/load-more/style/css/index.css +513 -0
  607. package/umd/load-more/style/index.less +30 -0
  608. package/umd/loading/demo/style/css/mobile.css +510 -0
  609. package/umd/loading/demo/style/mobile.less +25 -0
  610. package/umd/loading/style/css/index.css +534 -5
  611. package/umd/loading/style/index.less +45 -0
  612. package/umd/masking/demo/style/css/mobile.css +514 -1
  613. package/umd/masking/demo/style/mobile.less +30 -0
  614. package/umd/masking/methods.js +7 -2
  615. package/umd/masking/style/css/index.css +510 -0
  616. package/umd/masking/style/index.less +25 -0
  617. package/umd/nav-bar/demo/style/css/mobile.css +514 -1
  618. package/umd/nav-bar/demo/style/mobile.less +33 -1
  619. package/umd/nav-bar/style/css/index.css +550 -1
  620. package/umd/nav-bar/style/index.less +38 -0
  621. package/umd/notice-bar/style/css/index.css +520 -2
  622. package/umd/notice-bar/style/index.less +36 -0
  623. package/umd/notify/demo/style/css/mobile.css +510 -0
  624. package/umd/notify/demo/style/mobile.less +25 -0
  625. package/umd/notify/style/css/index.css +529 -4
  626. package/umd/notify/style/index.less +50 -0
  627. package/umd/pagination/demo/style/css/index.css +510 -0
  628. package/umd/pagination/demo/style/index.less +25 -0
  629. package/umd/pagination/style/css/index.css +543 -4
  630. package/umd/pagination/style/index.less +72 -0
  631. package/umd/picker/demo/style/css/mobile.css +510 -0
  632. package/umd/picker/demo/style/mobile.less +25 -0
  633. package/umd/picker/style/css/index.css +525 -3
  634. package/umd/picker/style/index.less +49 -0
  635. package/umd/picker-view/demo/style/css/mobile.css +510 -0
  636. package/umd/picker-view/demo/style/mobile.less +25 -0
  637. package/umd/picker-view/style/css/index.css +587 -0
  638. package/umd/picker-view/style/index.less +50 -0
  639. package/umd/popover/demo/style/css/mobile.css +510 -0
  640. package/umd/popover/demo/style/mobile.less +25 -0
  641. package/umd/popover/style/css/index.css +614 -4
  642. package/umd/popover/style/css/menu.css +539 -1
  643. package/umd/popover/style/index.less +126 -9
  644. package/umd/popover/style/menu.less +69 -0
  645. package/umd/popup/demo/style/css/mobile.css +517 -0
  646. package/umd/popup/demo/style/mobile.less +38 -0
  647. package/umd/popup/style/css/index.css +514 -1
  648. package/umd/popup/style/index.less +32 -0
  649. package/umd/popup-swiper/demo/style/css/mobile.css +517 -0
  650. package/umd/popup-swiper/demo/style/mobile.less +38 -0
  651. package/umd/popup-swiper/index.d.ts +2 -8
  652. package/umd/popup-swiper/style/css/index.css +510 -0
  653. package/umd/popup-swiper/style/index.less +25 -0
  654. package/umd/portal/demo/style/css/mobile.css +515 -1
  655. package/umd/portal/demo/style/mobile.less +31 -0
  656. package/umd/progress/demo/style/css/mobile.css +510 -0
  657. package/umd/progress/demo/style/mobile.less +25 -0
  658. package/umd/progress/style/css/index.css +556 -8
  659. package/umd/progress/style/index.less +91 -0
  660. package/umd/pull-refresh/demo/style/css/mobile.css +514 -2
  661. package/umd/pull-refresh/demo/style/mobile.less +35 -2
  662. package/umd/pull-refresh/style/css/index.css +536 -3
  663. package/umd/pull-refresh/style/index.less +45 -0
  664. package/umd/radio/demo/style/css/mobile.css +513 -0
  665. package/umd/radio/demo/style/mobile.less +32 -0
  666. package/umd/radio/style/css/index.css +535 -4
  667. package/umd/radio/style/index.less +61 -0
  668. package/umd/rate/demo/style/css/mobile.css +510 -0
  669. package/umd/rate/demo/style/mobile.less +25 -0
  670. package/umd/rate/style/css/index.css +522 -2
  671. package/umd/rate/style/index.less +43 -0
  672. package/umd/search-bar/demo/style/css/mobile.css +516 -1
  673. package/umd/search-bar/demo/style/mobile.less +39 -5
  674. package/umd/search-bar/style/css/index.css +586 -6
  675. package/umd/search-bar/style/index.less +84 -0
  676. package/umd/show-monitor/demo/style/css/mobile.css +521 -2
  677. package/umd/show-monitor/demo/style/mobile.less +43 -1
  678. package/umd/skeleton/demo/style/css/mobile.css +510 -0
  679. package/umd/skeleton/demo/style/mobile.less +25 -0
  680. package/umd/skeleton/style/css/index.css +517 -1
  681. package/umd/skeleton/style/index.less +35 -0
  682. package/umd/slider/demo/style/css/mobile.css +514 -1
  683. package/umd/slider/demo/style/mobile.less +34 -0
  684. package/umd/slider/style/css/index.css +542 -5
  685. package/umd/slider/style/index.less +74 -0
  686. package/umd/stepper/demo/style/css/mobile.css +510 -0
  687. package/umd/stepper/demo/style/mobile.less +25 -1
  688. package/umd/stepper/style/css/index.css +551 -7
  689. package/umd/stepper/style/index.less +84 -3
  690. package/umd/steps/demo/style/css/mobile.css +544 -4
  691. package/umd/steps/demo/style/mobile.less +41 -3
  692. package/umd/steps/style/css/index.css +580 -9
  693. package/umd/steps/style/index.less +138 -0
  694. package/umd/steps/type.d.ts +1 -1
  695. package/umd/sticky/demo/style/css/mobile.css +515 -2
  696. package/umd/sticky/demo/style/mobile.less +34 -2
  697. package/umd/sticky/style/css/index.css +510 -0
  698. package/umd/sticky/style/index.less +25 -0
  699. package/umd/swipe-action/demo/style/css/mobile.css +510 -0
  700. package/umd/swipe-action/demo/style/mobile.less +25 -0
  701. package/umd/swipe-action/style/css/index.css +518 -2
  702. package/umd/swipe-action/style/index.less +43 -0
  703. package/umd/swipe-load/demo/style/css/mobile.css +539 -5
  704. package/umd/swipe-load/demo/style/mobile.less +64 -0
  705. package/umd/swipe-load/style/css/index.css +517 -1
  706. package/umd/swipe-load/style/index.less +37 -0
  707. package/umd/switch/demo/style/css/mobile.css +515 -1
  708. package/umd/switch/demo/style/mobile.less +35 -0
  709. package/umd/switch/style/css/index.css +532 -4
  710. package/umd/switch/style/index.less +59 -0
  711. package/umd/tab-bar/demo/style/css/mobile.css +510 -0
  712. package/umd/tab-bar/demo/style/mobile.less +25 -0
  713. package/umd/tab-bar/style/css/index.css +517 -1
  714. package/umd/tab-bar/style/index.less +37 -0
  715. package/umd/tabs/demo/style/css/mobile.css +542 -5
  716. package/umd/tabs/demo/style/mobile.less +75 -0
  717. package/umd/tabs/index.js +4 -1
  718. package/umd/tabs/style/css/index.css +618 -13
  719. package/umd/tabs/style/index.less +123 -0
  720. package/umd/tabs/tab-cell.js +1 -1
  721. package/umd/tag/demo/style/css/mobile.css +510 -0
  722. package/umd/tag/demo/style/mobile.less +25 -0
  723. package/umd/tag/style/css/index.css +538 -10
  724. package/umd/tag/style/index.less +55 -0
  725. package/umd/textarea/demo/style/css/mobile.css +514 -1
  726. package/umd/textarea/demo/style/mobile.less +32 -1
  727. package/umd/textarea/style/css/index.css +527 -2
  728. package/umd/textarea/style/index.less +47 -0
  729. package/umd/toast/demo/style/css/mobile.css +510 -0
  730. package/umd/toast/demo/style/mobile.less +25 -0
  731. package/umd/toast/style/css/index.css +530 -5
  732. package/umd/toast/style/index.less +37 -0
  733. package/umd/transition/demo/style/css/mobile.css +510 -0
  734. package/umd/transition/demo/style/mobile.less +25 -0
  735. package/umd/transition/style/css/index.css +510 -0
  736. package/umd/transition/style/index.less +25 -0
@@ -1,11 +1,28 @@
1
1
  /**
2
2
  * @type hooks
3
- * @name 公共hooks
3
+ * @name GeneralHooks
4
4
  * @name_en General Hooks
5
5
  */
6
6
  import { useState, useRef, useEffect, useCallback, useContext } from 'react';
7
7
  import { getSystem, scrollWithAnimation, safeGetComputedStyle } from '@arco-design/mobile-utils';
8
8
  import { GlobalContext } from '../context-provider';
9
+
10
+ /**
11
+ * 监听页面resize事件的统一封装
12
+ * @desc {en} Unified encapsulation for monitoring page resize events
13
+ * @param resizeHandler resize事件回调
14
+ * @param resizeHandler {en} Resize event callback
15
+ * @param deps 触发事件绑定更新的依赖
16
+ * @param deps {en} Dependencies that trigger event binding updates
17
+ * @param needListen 是否开启事件监听,默认开启
18
+ * @param needListen {en} Whether to enable event monitoring
19
+ * @example
20
+ * ```
21
+ * import { useListenResize } from '@arco-design/mobile-react/esm/_helpers/hooks';
22
+ *
23
+ * useListenResize(setSize, [], listenResize);
24
+ * ```
25
+ */
9
26
  export function useListenResize(resizeHandler, deps, needListen) {
10
27
  if (deps === void 0) {
11
28
  deps = [];
@@ -16,15 +33,16 @@ export function useListenResize(resizeHandler, deps, needListen) {
16
33
  }
17
34
 
18
35
  useEffect(function () {
19
- if (!needListen) {
20
- return function () {};
36
+ if (needListen) {
37
+ window.addEventListener('resize', resizeHandler);
38
+ window.addEventListener('orientationchange', resizeHandler);
21
39
  }
22
40
 
23
- window.addEventListener('resize', resizeHandler);
24
- window.addEventListener('orientationchange', resizeHandler);
25
41
  return function () {
26
- window.removeEventListener('resize', resizeHandler);
27
- window.removeEventListener('orientationchange', resizeHandler);
42
+ if (needListen) {
43
+ window.removeEventListener('resize', resizeHandler);
44
+ window.removeEventListener('orientationchange', resizeHandler);
45
+ }
28
46
  };
29
47
  }, [].concat(deps, [needListen]));
30
48
  }
@@ -35,6 +53,7 @@ export function useListenResize(resizeHandler, deps, needListen) {
35
53
  * @desc {en} Tips: Use in scenarios where asynchronous processing is not completed after unmount. It is not recommended to replace useState without brains
36
54
  * @param initialState 初始状态
37
55
  * @param initialState {en} Initial State
56
+ * @returns [state, setState],同useState返回值
38
57
  * @example
39
58
  * ```
40
59
  * import { useMountedState } from '@arco-design/mobile-react/esm/_helpers/hooks';
@@ -64,6 +83,20 @@ export function useMountedState(initialState) {
64
83
  var result = [state, setValidState];
65
84
  return result;
66
85
  }
86
+ /**
87
+ * 用useState管理状态,且在状态更新之前同步至ref,并返回ref
88
+ * @desc {en} Use useState to manage the state, and synchronize to ref before the state is updated, and return ref
89
+ * @param initialValue 初始状态
90
+ * @param initialValue {en} Initial State
91
+ * @returns [state, stateRef, setState]
92
+ * @example
93
+ * ```
94
+ * import { useSameRefState } from '@arco-design/mobile-react/esm/_helpers/hooks';
95
+ *
96
+ * const [opened, openedRef, setOpened] = useSameRefState(false);
97
+ * ```
98
+ */
99
+
67
100
  export function useSameRefState(initialValue) {
68
101
  var _useState2 = useState(initialValue),
69
102
  state = _useState2[0],
@@ -78,6 +111,20 @@ export function useSameRefState(initialValue) {
78
111
 
79
112
  return [state, stateRef, setStateProxy];
80
113
  }
114
+ /**
115
+ * 用useState管理状态,且在状态更新后同步至ref,并返回ref
116
+ * @desc {en} Use useState to manage the state, and synchronize to ref after the state is updated, and return ref
117
+ * @param initialValue 初始状态
118
+ * @param initialValue {en} Initial State
119
+ * @returns [state, stateRef, setState]
120
+ * @example
121
+ * ```
122
+ * import { useRefState } from '@arco-design/mobile-react/esm/_helpers/hooks';
123
+ *
124
+ * const [index, indexRef, setIndex] = useRefState(currentIndex);
125
+ * ```
126
+ */
127
+
81
128
  export function useRefState(initialValue) {
82
129
  var _useState3 = useState(initialValue),
83
130
  state = _useState3[0],
@@ -89,6 +136,20 @@ export function useRefState(initialValue) {
89
136
  }, [state]);
90
137
  return [state, stateRef, setState];
91
138
  }
139
+ /**
140
+ * 用useState管理状态,且在状态更新后同步至ref,并返回ref,统一处理在组件卸载后还使用setState的行为
141
+ * @desc {en} Use useState to manage the state, and synchronize to ref after the state is updated, and return ref, and uniformly handle the behavior of using setState after the component is uninstalled
142
+ * @param initialValue 初始状态
143
+ * @param initialValue {en} Initial State
144
+ * @returns [state, stateRef, setState]
145
+ * @example
146
+ * ```
147
+ * import { useRefMountedState } from '@arco-design/mobile-react/esm/_helpers/hooks';
148
+ *
149
+ * const [active, activeRef, setActive] = useRefMountedState(false);
150
+ * ```
151
+ */
152
+
92
153
  export function useRefMountedState(initialValue) {
93
154
  var _useMountedState = useMountedState(initialValue),
94
155
  state = _useMountedState[0],
@@ -100,6 +161,23 @@ export function useRefMountedState(initialValue) {
100
161
  }, [state]);
101
162
  return [state, stateRef, setState];
102
163
  }
164
+ /**
165
+ * useEffect特殊封装,仅在非首次依赖更新时触发回调
166
+ * @desc {en} Special encapsulation of useEffect, which only triggers the callback when the dependency is not updated for the first time
167
+ * @param effect useEffect回调
168
+ * @param effect {en} useEffect callback
169
+ * @param dependencies useEffect依赖
170
+ * @param dependencies {en} useEffect dependencies
171
+ * @example
172
+ * ```
173
+ * import { useUpdateEffect } from '@arco-design/mobile-react/esm/_helpers/hooks';
174
+ *
175
+ * useUpdateEffect(() => {
176
+ * handleIndexChange(index);
177
+ * }, [index]);
178
+ * ```
179
+ */
180
+
103
181
  export function useUpdateEffect(effect, dependencies) {
104
182
  if (dependencies === void 0) {
105
183
  dependencies = [];
@@ -114,6 +192,21 @@ export function useUpdateEffect(effect, dependencies) {
114
192
  }
115
193
  }, dependencies);
116
194
  }
195
+ /**
196
+ * 手动触发一次组件的rerender
197
+ * @desc {en} Manually trigger the rerender of the component once
198
+ * @example
199
+ * ```
200
+ * import { useForceUpdate } from '@arco-design/mobile-react/esm/_helpers/hooks';
201
+ *
202
+ * const update = useForceUpdate();
203
+ *
204
+ * function forceUpdate() {
205
+ * update();
206
+ * }
207
+ * ```
208
+ */
209
+
117
210
  export function useForceUpdate() {
118
211
  var _useState4 = useState(0),
119
212
  setTick = _useState4[1];
@@ -125,6 +218,21 @@ export function useForceUpdate() {
125
218
  }, []);
126
219
  return update;
127
220
  }
221
+ /**
222
+ * 获取任意变量的最新ref值(用于监听属性、方法等非state变量)
223
+ * @desc {en} Get the latest ref value of any variable (used to monitor non-state variables such as properties and methods)
224
+ * @param variable 待获取最新值的变量
225
+ * @param variable {en} Variable to get latest value
226
+ * @returns variableRef,变量的最新ref值
227
+ * @example
228
+ * ```
229
+ * import { useLatestRef } from '@arco-design/mobile-react/esm/_helpers/hooks';
230
+ *
231
+ * const { wrapSize } = props;
232
+ * const wrapSizeRef = useLatestRef(wrapSize);
233
+ * ```
234
+ */
235
+
128
236
  export function useLatestRef(variable) {
129
237
  var variableRef = useRef(variable);
130
238
  useEffect(function () {
@@ -132,6 +240,18 @@ export function useLatestRef(variable) {
132
240
  }, [variable]);
133
241
  return variableRef;
134
242
  }
243
+ /**
244
+ * 从navigator.userAgent中获取当前操作系统,如果无法获取ua,则从ContextProvider传入的system中获取值
245
+ * @desc {en} Get the current operating system from navigator.userAgent, if ua cannot be obtained, get the value from the system passed in by ContextProvider
246
+ * @returns system 操作系统,"" | "pc" | "android" | "ios"
247
+ * @example
248
+ * ```
249
+ * import { useSystem } from '@arco-design/mobile-react/esm/_helpers/hooks';
250
+ *
251
+ * const system = useSystem();
252
+ * ```
253
+ */
254
+
135
255
  export function useSystem() {
136
256
  var _useContext = useContext(GlobalContext),
137
257
  currentSystem = _useContext.system;
@@ -147,12 +267,26 @@ export function useSystem() {
147
267
  }, [currentSystem]);
148
268
  return system;
149
269
  }
270
+ /**
271
+ * 获取页面视口宽高大小,并在页面有resize时更新大小
272
+ * @desc {en} Get the width and height of the page viewport, and update the size when the page is resized
273
+ * @param needListen 是否开启resize事件监听
274
+ * @param needListen {en} Whether to enable resize event monitoring
275
+ * @returns 页面宽高,{ windowWidth, windowHeight }
276
+ * @example
277
+ * ```
278
+ * import { useWindowSize } from '@arco-design/mobile-react/esm/_helpers/hooks';
279
+ *
280
+ * const { windowHeight, windowWidth } = useWindowSize();
281
+ * ```
282
+ */
283
+
150
284
  export function useWindowSize(listenResize) {
151
- var _useState6 = useState(0),
285
+ var _useState6 = useState(typeof window !== 'undefined' ? window.innerWidth : 0),
152
286
  windowWidth = _useState6[0],
153
287
  setWindowWidth = _useState6[1];
154
288
 
155
- var _useState7 = useState(0),
289
+ var _useState7 = useState(typeof window !== 'undefined' ? window.innerHeight : 0),
156
290
  windowHeight = _useState7[0],
157
291
  setWindowHeight = _useState7[1];
158
292
 
@@ -171,7 +305,30 @@ export function useWindowSize(listenResize) {
171
305
  };
172
306
  }
173
307
 
174
- /* eslint-disable max-lines-per-function */
308
+ /**
309
+ * 弹窗中滚动统一处理,防止滚动穿透
310
+ * @desc {en} Unified processing of scrolling in pop-up windows to prevent scrolling penetration
311
+ * @param visible 弹窗是否被打开
312
+ * @param visible {en} Whether the popup is opened
313
+ * @param popupDom 弹窗的dom元素
314
+ * @param popupDom {en} DOM element of the popup
315
+ * @param getScrollContainer 弹窗中的滚动容器,可传入多个
316
+ * @param getScrollContainer {en} The scrolling container in the popup, which can pass in multiple
317
+ * @param orientationDirection 弹窗内容朝向,默认为top(从上到下),用于实现模拟横屏
318
+ * @param orientationDirection {en} The content orientation of the popup, the default is top (from top to bottom), which is used to simulate a horizontal screen
319
+ * @param preventCallback 在滚动穿透被阻止(preventDefault被触发)时的回调
320
+ * @param preventCallback {en} Callback when scrolling is blocked (preventDefault is triggered)
321
+ * @param onTouchMove touchmove 自定义事件
322
+ * @param onTouchMove {en} Touchmove custom event
323
+ * @param gestureOutOfControl 是否禁用滚动穿透处理
324
+ * @param gestureOutOfControl {en} Whether to disable scroll through processing
325
+ * @example
326
+ * ```
327
+ * import { usePopupScroll } from '@arco-design/mobile-react/esm/_helpers/hooks';
328
+ *
329
+ * usePopupScroll(visible, domRef.current, getScrollContainer, orientationDirection, onPreventTouchMove, onTouchMove, gestureOutOfControl);
330
+ * ```
331
+ */
175
332
  export function usePopupScroll(visible, popupDom, getScrollContainer, orientationDirection, preventCallback, onTouchMove, gestureOutOfControl) {
176
333
  if (orientationDirection === void 0) {
177
334
  orientationDirection = 'top';
@@ -353,6 +510,19 @@ export function usePopupScroll(visible, popupDom, getScrollContainer, orientatio
353
510
  };
354
511
  }, [visible, popupDom, handleTouchStart, handleTouchMove]);
355
512
  }
513
+ /**
514
+ * 在滑动类组件中,如果有内部可滚动区域,则在内部滚动区域滚动时禁用滑动事件
515
+ * @desc {en} In the sliding class component, if there is an inner scrollable area, the sliding event is disabled when the inner scrolling area is scrolled
516
+ * @param getInnerScrollContainer 内部可滚动区域,可传入多个
517
+ * @param getInnerScrollContainer {en} Inner scrollable area, can pass in multiple
518
+ * @example
519
+ * ```
520
+ * import { useSwiperInnerScroll } from '@arco-design/mobile-react/esm/_helpers/hooks';
521
+ *
522
+ * useSwiperInnerScroll(getInnerScrollContainer);
523
+ * ```
524
+ */
525
+
356
526
  export function useSwiperInnerScroll(getInnerScrollContainer) {
357
527
  var stopFunc = useCallback(function (e) {
358
528
  return e.stopPropagation();
@@ -380,6 +550,26 @@ export function useSwiperInnerScroll(getInnerScrollContainer) {
380
550
  };
381
551
  }, [getInnerScrollContainer]);
382
552
  }
553
+ /**
554
+ * 事件绑定统一封装
555
+ * @desc {en} Unified encapsulation of event binding
556
+ * @param dom 待绑定事件的dom元素
557
+ * @param dom {en} The dom element to be bound to the event
558
+ * @param event 待绑定事件名称
559
+ * @param event {en} The name of the event to be bound
560
+ * @param handler 待绑定事件回调
561
+ * @param handler {en} The callback of the event to be bound
562
+ * @param options 待绑定事件配置,默认为 { capture: true }
563
+ * @param options {en} Event configuration to be bound, the default is { capture: true }
564
+ * @example
565
+ * ```
566
+ * import { useAddListener } from '@arco-design/mobile-react/esm/_helpers/hooks';
567
+ *
568
+ * useAddListener(domRef.current, 'touchstart', onTouchStart);
569
+ * useAddListener(domRef.current, 'touchend', onTouchEnd);
570
+ * ```
571
+ */
572
+
383
573
  export function useAddListener(dom, event, handler, options) {
384
574
  if (options === void 0) {
385
575
  options = {
@@ -408,7 +598,28 @@ export function useAddListener(dom, event, handler, options) {
408
598
 
409
599
  var arcoFullScreenCount = 0;
410
600
  var arcoFullScreenOriginOverflow = '';
601
+ /**
602
+ * 在全屏组件出现时,将body的overflow设置为hidden,防止滚动穿透
603
+ * @desc {en} When the full screen component appears, set the overflow of the body to hidden to prevent scrolling penetration
604
+ * @param visible 全屏组件是否被打开
605
+ * @param visible {en} Whether the full screen component is opened
606
+ * @param preventBodyScroll 是否启用防滚动穿透,默认启用
607
+ * @param preventBodyScroll {en} Whether to enable anti-scroll penetration, enabled by default
608
+ * @param initialBodyOverflow body在初始状态下的overflow值,在全屏组件全部关闭后会还原
609
+ * @param initialBodyOverflow {en} The overflow value of the body in the initial state, which will be restored after all full-screen components are closed
610
+ * @example
611
+ * ```
612
+ * import { usePreventBodyScroll } from '@arco-design/mobile-react/esm/_helpers/hooks';
613
+ *
614
+ * usePreventBodyScroll(visible, preventBodyScroll, initialBodyOverflow);
615
+ * ```
616
+ */
617
+
411
618
  export function usePreventBodyScroll(visible, preventBodyScroll, initialBodyOverflow) {
619
+ if (preventBodyScroll === void 0) {
620
+ preventBodyScroll = true;
621
+ }
622
+
412
623
  // 新出现一个全屏组件则计数+1,并设置body hidden样式
413
624
  // @en When a new full-screen component appears, count + 1 and set the body hidden style
414
625
  var addFullScreen = useCallback(function () {
@@ -455,6 +666,18 @@ export function usePreventBodyScroll(visible, preventBodyScroll, initialBodyOver
455
666
  };
456
667
  }, [visible]);
457
668
  }
669
+ /**
670
+ * 进度条计算公共逻辑,根据传入的参数计算出当前百分比和过渡效果开关,进度类组件内部使用
671
+ * @desc {en} Progress bar calculation common logic, used internally by the progress class component
672
+ * @returns [当前计算的百分比, 当前是否应有过渡效果]
673
+ * @example
674
+ * ```
675
+ * import { usePreventBodyScroll } from '@arco-design/mobile-react/esm/_helpers/hooks';
676
+ *
677
+ * const [currentPercentage, transitionControl] = useProgress(mountedTransition, percentage, duration, mountedBezier, step);
678
+ * ```
679
+ */
680
+
458
681
  export function useProgress(mountedTransition, percentage, duration, mountedBezier, step) {
459
682
  var _useState8 = useState(0),
460
683
  currentPercentage = _useState8[0],
@@ -490,6 +713,24 @@ export function useProgress(mountedTransition, percentage, duration, mountedBezi
490
713
  }, [count, percentage, step]);
491
714
  return [currentPercentage, transitionControl];
492
715
  }
716
+ /**
717
+ * 单击和双击事件统一处理
718
+ * @desc {en} Unified processing of single and double click events
719
+ * @param onClick 单击事件回调
720
+ * @param onClick {en} Callback of single click event
721
+ * @param onDoubleClick 双击事件回调
722
+ * @param onDoubleClick {en} Callback of double click event
723
+ * @param delay 两次点击被判定为双击事件的最大间隔时间
724
+ * @param delay {en} The maximum interval between two clicks is judged as a double-click event
725
+ * @returns clickHandler,统一后的事件处理方法
726
+ * @example
727
+ * ```
728
+ * import { useSingleAndDoubleClick } from '@arco-design/mobile-react/esm/_helpers/hooks';
729
+ *
730
+ * const handleClick = useSingleAndDoubleClick(handleImageClick, handleImageDoubleClick);
731
+ * ```
732
+ */
733
+
493
734
  export function useSingleAndDoubleClick(onClick, onDoubleClick, delay) {
494
735
  if (delay === void 0) {
495
736
  delay = 200;
@@ -518,6 +759,24 @@ export function useSingleAndDoubleClick(onClick, onDoubleClick, delay) {
518
759
  };
519
760
  }
520
761
  var arcoSvgKeyCount = 0;
762
+ /**
763
+ * 自动生成svg <def>标签的唯一标识,用于区分不同svg的<def>内容
764
+ * @desc {en} Automatically generate the unique identifier of the svg <def> tag, which is used to distinguish the <def> content of different svg
765
+ * @param userSetSvgKey 自定义唯一标识,传入则覆盖自动生成的值
766
+ * @param userSetSvgKey {en} Customize the unique identifier, if passed in, it will override the automatically generated value
767
+ * @returns 包含svgKey的对象 生成后的唯一标识
768
+ * @globalVariable
769
+ * ```
770
+ * let arcoSvgKeyCount = 0;
771
+ * ```
772
+ * @example
773
+ * ```
774
+ * import { useGenSvgKey } from '@arco-design/mobile-react/esm/_helpers/hooks';
775
+ *
776
+ * const { svgKey } = useGenSvgKey(userSetSvgKey);
777
+ * ```
778
+ */
779
+
521
780
  export function useGenSvgKey(userSetSvgKey) {
522
781
  var _useState12 = useState(''),
523
782
  innerSvgKey = _useState12[0],
@@ -4,12 +4,89 @@
4
4
  */
5
5
  import { CSSProperties } from 'react';
6
6
  export * from './hooks';
7
- export * from './type';
8
7
  export * from './react-dom';
8
+ export * from './type';
9
+ /**
10
+ * 获取带浏览器前缀的样式
11
+ * @desc {en} Get style with browser vendor prefix
12
+ * @param {CSSProperties} style 原始样式
13
+ * @param {CSSProperties} style {en} Original style
14
+ * @returns {CSSProperties} newStyle 添加了浏览器前缀的新样式
15
+ * @returns {CSSProperties} newStyle {en} New style with browser vendor prefix
16
+ * @example
17
+ * ```
18
+ * import { getStyleWithVendor } from '@arco-design/mobile-react/esm/_helpers';
19
+ *
20
+ * // Example usage:
21
+ * const originalStyle = {
22
+ * transform: 'translateX(50px)',
23
+ * transition: 'all 0.3s ease',
24
+ * opacity: 0.8,
25
+ * };
26
+ *
27
+ * const styleWithPrefix = getStyleWithVendor(originalStyle);
28
+ *
29
+ * // Result:
30
+ * // styleWithPrefix will be:
31
+ * // {
32
+ * // transform: 'translateX(50px)',
33
+ * // WebkitTransform: 'translateX(50px)', // Browser-specific prefix added
34
+ * // transition: 'all 0.3s ease',
35
+ * // WebkitTransition: 'all 0.3s ease', // Browser-specific prefix added
36
+ * // opacity: 0.8,
37
+ * // }
38
+ * ```
39
+ */
9
40
  export declare function getStyleWithVendor(style: CSSProperties): CSSProperties;
41
+ /**
42
+ * 给元素设置带浏览器前缀的样式
43
+ * @desc {en} Set element style with browser vendor prefix
44
+ * @param {HTMLElement} dom 需要设置样式的元素
45
+ * @param {HTMLElement} dom {en} Element to set style
46
+ * @param {CSSProperties} style Original style
47
+ * @param {CSSProperties} style {en} Original style
48
+ * @returns {void}
49
+ * @example
50
+ * ```
51
+ * import { setStyleWithVendor } from '@arco-design/mobile-utils';
52
+ *
53
+ * // Example: Setting and displaying styles with the Webkit browser vendor prefix
54
+ * const element = document.getElementById('myElement');
55
+ * const originalStyle = {
56
+ * transform: 'translateX(100px)',
57
+ * transition: 'transform 0.5s ease',
58
+ * borderRadius: '5px',
59
+ * };
60
+ *
61
+ * // Set the styles with the Webkit browser vendor prefix
62
+ * setStyleWithVendor(element, originalStyle);
63
+ *
64
+ * // Display the styles with the Webkit browser vendor prefixes applied
65
+ * const computedStyle = getComputedStyle(element);
66
+ * console.log(computedStyle.getPropertyValue('-webkit-transform')); // Output: The transformed style with the Webkit browser vendor prefix
67
+ * console.log(computedStyle.getPropertyValue('-webkit-transition')); // Output: The transition style with the Webkit browser vendor prefix
68
+ * console.log(computedStyle.getPropertyValue('border-radius')); // Output: The borderRadius style without a vendor prefix
69
+ * ```
70
+ */
10
71
  export declare function setStyleWithVendor(dom: HTMLElement, style: CSSProperties): void;
11
72
  /**
12
73
  * 计算默认值,仅未定义时使用默认值
13
74
  * @desc {en} Calculate the default value, use default value only if undefined
75
+ * @param {T | undefined} value 输入的值
76
+ * @param {T | undefined} value {en} The input value
77
+ * @param {T} defaultValue 默认值
78
+ * @param {T} defaultValue {en} The default value
79
+ * @returns {T} 如果输入的值是未定义的,那么返回默认值,否则返回输入的值
80
+ * @returns {T} {en} Returns the default value if the input is undefined, otherwise returns the input value
81
+ * @example
82
+ * ```
83
+ * import { getDefaultValue } from '@arco-design/mobile-react/esm/_helpers';
84
+ *
85
+ * const result = getDefaultValue(42, 0);
86
+ * console.log(result); // Output: 42
87
+ *
88
+ * const result2 = getDefaultValue(undefined, 100);
89
+ * console.log(result2); // Output: 100
90
+ * ```
14
91
  */
15
92
  export declare const getDefaultValue: <T>(value: T | undefined, defaultValue: T) => T;
@@ -5,8 +5,40 @@ import _extends from "@babel/runtime/helpers/extends";
5
5
  * @name componentUtils
6
6
  */
7
7
  export * from './hooks';
8
- export * from './type';
9
8
  export * from './react-dom';
9
+ export * from './type';
10
+ /**
11
+ * 获取带浏览器前缀的样式
12
+ * @desc {en} Get style with browser vendor prefix
13
+ * @param {CSSProperties} style 原始样式
14
+ * @param {CSSProperties} style {en} Original style
15
+ * @returns {CSSProperties} newStyle 添加了浏览器前缀的新样式
16
+ * @returns {CSSProperties} newStyle {en} New style with browser vendor prefix
17
+ * @example
18
+ * ```
19
+ * import { getStyleWithVendor } from '@arco-design/mobile-react/esm/_helpers';
20
+ *
21
+ * // Example usage:
22
+ * const originalStyle = {
23
+ * transform: 'translateX(50px)',
24
+ * transition: 'all 0.3s ease',
25
+ * opacity: 0.8,
26
+ * };
27
+ *
28
+ * const styleWithPrefix = getStyleWithVendor(originalStyle);
29
+ *
30
+ * // Result:
31
+ * // styleWithPrefix will be:
32
+ * // {
33
+ * // transform: 'translateX(50px)',
34
+ * // WebkitTransform: 'translateX(50px)', // Browser-specific prefix added
35
+ * // transition: 'all 0.3s ease',
36
+ * // WebkitTransition: 'all 0.3s ease', // Browser-specific prefix added
37
+ * // opacity: 0.8,
38
+ * // }
39
+ * ```
40
+ */
41
+
10
42
  export function getStyleWithVendor(style) {
11
43
  var allowReg = /(transform|transition|animation)/i;
12
44
  var newStyle = Object.keys(style).reduce(function (acc, key) {
@@ -19,6 +51,37 @@ export function getStyleWithVendor(style) {
19
51
  }, {});
20
52
  return newStyle;
21
53
  }
54
+ /**
55
+ * 给元素设置带浏览器前缀的样式
56
+ * @desc {en} Set element style with browser vendor prefix
57
+ * @param {HTMLElement} dom 需要设置样式的元素
58
+ * @param {HTMLElement} dom {en} Element to set style
59
+ * @param {CSSProperties} style Original style
60
+ * @param {CSSProperties} style {en} Original style
61
+ * @returns {void}
62
+ * @example
63
+ * ```
64
+ * import { setStyleWithVendor } from '@arco-design/mobile-utils';
65
+ *
66
+ * // Example: Setting and displaying styles with the Webkit browser vendor prefix
67
+ * const element = document.getElementById('myElement');
68
+ * const originalStyle = {
69
+ * transform: 'translateX(100px)',
70
+ * transition: 'transform 0.5s ease',
71
+ * borderRadius: '5px',
72
+ * };
73
+ *
74
+ * // Set the styles with the Webkit browser vendor prefix
75
+ * setStyleWithVendor(element, originalStyle);
76
+ *
77
+ * // Display the styles with the Webkit browser vendor prefixes applied
78
+ * const computedStyle = getComputedStyle(element);
79
+ * console.log(computedStyle.getPropertyValue('-webkit-transform')); // Output: The transformed style with the Webkit browser vendor prefix
80
+ * console.log(computedStyle.getPropertyValue('-webkit-transition')); // Output: The transition style with the Webkit browser vendor prefix
81
+ * console.log(computedStyle.getPropertyValue('border-radius')); // Output: The borderRadius style without a vendor prefix
82
+ * ```
83
+ */
84
+
22
85
  export function setStyleWithVendor(dom, style) {
23
86
  var vendorStyle = getStyleWithVendor(style);
24
87
 
@@ -29,6 +92,22 @@ export function setStyleWithVendor(dom, style) {
29
92
  /**
30
93
  * 计算默认值,仅未定义时使用默认值
31
94
  * @desc {en} Calculate the default value, use default value only if undefined
95
+ * @param {T | undefined} value 输入的值
96
+ * @param {T | undefined} value {en} The input value
97
+ * @param {T} defaultValue 默认值
98
+ * @param {T} defaultValue {en} The default value
99
+ * @returns {T} 如果输入的值是未定义的,那么返回默认值,否则返回输入的值
100
+ * @returns {T} {en} Returns the default value if the input is undefined, otherwise returns the input value
101
+ * @example
102
+ * ```
103
+ * import { getDefaultValue } from '@arco-design/mobile-react/esm/_helpers';
104
+ *
105
+ * const result = getDefaultValue(42, 0);
106
+ * console.log(result); // Output: 42
107
+ *
108
+ * const result2 = getDefaultValue(undefined, 100);
109
+ * console.log(result2); // Output: 100
110
+ * ```
32
111
  */
33
112
 
34
113
  export var getDefaultValue = function getDefaultValue(value, defaultValue) {