taro-ui 3.3.2 → 3.4.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 (561) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +85 -0
  3. package/{lib → dist}/common/utils.d.ts +2 -1
  4. package/{lib → dist}/common/utils.js +3 -0
  5. package/{lib → dist}/common/utils.js.map +1 -1
  6. package/dist/components/accordion/index.d.ts +17 -0
  7. package/dist/components/accordion/index.js +101 -0
  8. package/dist/components/accordion/index.js.map +1 -0
  9. package/dist/components/action-sheet/body/index.d.ts +3 -0
  10. package/dist/components/action-sheet/body/index.js +15 -0
  11. package/dist/components/action-sheet/body/index.js.map +1 -0
  12. package/dist/components/action-sheet/body/item/index.d.ts +9 -0
  13. package/dist/components/action-sheet/body/item/index.js +25 -0
  14. package/dist/components/action-sheet/body/item/index.js.map +1 -0
  15. package/dist/components/action-sheet/footer/index.d.ts +9 -0
  16. package/dist/components/action-sheet/footer/index.js +25 -0
  17. package/dist/components/action-sheet/footer/index.js.map +1 -0
  18. package/dist/components/action-sheet/header/index.d.ts +3 -0
  19. package/dist/components/action-sheet/header/index.js +15 -0
  20. package/dist/components/action-sheet/header/index.js.map +1 -0
  21. package/dist/components/action-sheet/index.d.ts +13 -0
  22. package/dist/components/action-sheet/index.js +72 -0
  23. package/dist/components/action-sheet/index.js.map +1 -0
  24. package/dist/components/activity-indicator/index.d.ts +14 -0
  25. package/dist/components/activity-indicator/index.js +36 -0
  26. package/dist/components/activity-indicator/index.js.map +1 -0
  27. package/dist/components/avatar/index.d.ts +15 -0
  28. package/dist/components/avatar/index.js +61 -0
  29. package/dist/components/avatar/index.js.map +1 -0
  30. package/dist/components/badge/index.d.ts +13 -0
  31. package/dist/components/badge/index.js +35 -0
  32. package/dist/components/badge/index.js.map +1 -0
  33. package/dist/components/button/index.d.ts +30 -0
  34. package/dist/components/button/index.js +162 -0
  35. package/dist/components/button/index.js.map +1 -0
  36. package/dist/components/calendar/body/index.d.ts +3 -0
  37. package/dist/components/calendar/body/index.js +269 -0
  38. package/dist/components/calendar/body/index.js.map +1 -0
  39. package/dist/components/calendar/controller/index.d.ts +3 -0
  40. package/dist/components/calendar/controller/index.js +55 -0
  41. package/dist/components/calendar/controller/index.js.map +1 -0
  42. package/dist/components/calendar/index.d.ts +3 -0
  43. package/dist/components/calendar/index.js +262 -0
  44. package/dist/components/calendar/index.js.map +1 -0
  45. package/{lib → dist}/components/calendar/ui/date-list/index.d.ts +2 -6
  46. package/dist/components/calendar/ui/date-list/index.js +49 -0
  47. package/dist/components/calendar/ui/date-list/index.js.map +1 -0
  48. package/dist/components/calendar/ui/day-list/index.d.ts +2 -0
  49. package/dist/components/calendar/ui/day-list/index.js +12 -0
  50. package/dist/components/calendar/ui/day-list/index.js.map +1 -0
  51. package/dist/components/card/index.d.ts +17 -0
  52. package/dist/components/card/index.js +79 -0
  53. package/dist/components/card/index.js.map +1 -0
  54. package/dist/components/checkbox/index.d.ts +13 -0
  55. package/dist/components/checkbox/index.js +54 -0
  56. package/dist/components/checkbox/index.js.map +1 -0
  57. package/dist/components/config-provider/context.d.ts +6 -0
  58. package/dist/components/config-provider/context.js +13 -0
  59. package/dist/components/config-provider/context.js.map +1 -0
  60. package/dist/components/config-provider/index.d.ts +7 -0
  61. package/dist/components/config-provider/index.js +15 -0
  62. package/dist/components/config-provider/index.js.map +1 -0
  63. package/dist/components/countdown/index.d.ts +20 -0
  64. package/dist/components/countdown/index.js +217 -0
  65. package/dist/components/countdown/index.js.map +1 -0
  66. package/dist/components/countdown/item/index.d.ts +10 -0
  67. package/dist/components/countdown/item/index.js +21 -0
  68. package/dist/components/countdown/item/index.js.map +1 -0
  69. package/dist/components/curtain/index.d.ts +13 -0
  70. package/dist/components/curtain/index.js +53 -0
  71. package/dist/components/curtain/index.js.map +1 -0
  72. package/dist/components/divider/index.d.ts +15 -0
  73. package/dist/components/divider/index.js +48 -0
  74. package/dist/components/divider/index.js.map +1 -0
  75. package/dist/components/drawer/index.d.ts +14 -0
  76. package/dist/components/drawer/index.js +121 -0
  77. package/dist/components/drawer/index.js.map +1 -0
  78. package/dist/components/fab/index.d.ts +10 -0
  79. package/dist/components/fab/index.js +29 -0
  80. package/dist/components/fab/index.js.map +1 -0
  81. package/dist/components/flex/index.d.ts +13 -0
  82. package/{lib → dist}/components/flex/index.js +17 -18
  83. package/dist/components/flex/index.js.map +1 -0
  84. package/dist/components/flex/item/index.d.ts +13 -0
  85. package/dist/components/flex/item/index.js +33 -0
  86. package/dist/components/flex/item/index.js.map +1 -0
  87. package/dist/components/float-layout/index.d.ts +21 -0
  88. package/dist/components/float-layout/index.js +88 -0
  89. package/dist/components/float-layout/index.js.map +1 -0
  90. package/dist/components/form/index.d.ts +13 -0
  91. package/dist/components/form/index.js +43 -0
  92. package/dist/components/form/index.js.map +1 -0
  93. package/dist/components/grid/index.d.ts +24 -0
  94. package/dist/components/grid/index.js +96 -0
  95. package/dist/components/grid/index.js.map +1 -0
  96. package/dist/components/icon/index.d.ts +15 -0
  97. package/dist/components/icon/index.js +44 -0
  98. package/dist/components/icon/index.js.map +1 -0
  99. package/dist/components/image-picker/index.d.ts +21 -0
  100. package/dist/components/image-picker/index.js +145 -0
  101. package/dist/components/image-picker/index.js.map +1 -0
  102. package/dist/components/indexes/index.d.ts +17 -0
  103. package/dist/components/indexes/index.js +261 -0
  104. package/dist/components/indexes/index.js.map +1 -0
  105. package/dist/components/input/index.d.ts +39 -0
  106. package/dist/components/input/index.js +223 -0
  107. package/dist/components/input/index.js.map +1 -0
  108. package/dist/components/input-number/index.d.ts +22 -0
  109. package/dist/components/input-number/index.js +174 -0
  110. package/dist/components/input-number/index.js.map +1 -0
  111. package/dist/components/list/index.d.ts +9 -0
  112. package/dist/components/list/index.js +26 -0
  113. package/dist/components/list/index.js.map +1 -0
  114. package/dist/components/list/item/index.d.ts +29 -0
  115. package/dist/components/list/item/index.js +124 -0
  116. package/dist/components/list/item/index.js.map +1 -0
  117. package/dist/components/load-more/index.d.ts +17 -0
  118. package/dist/components/load-more/index.js +51 -0
  119. package/dist/components/load-more/index.js.map +1 -0
  120. package/dist/components/loading/index.d.ts +13 -0
  121. package/dist/components/loading/index.js +26 -0
  122. package/dist/components/loading/index.js.map +1 -0
  123. package/dist/components/message/index.d.ts +10 -0
  124. package/dist/components/message/index.js +64 -0
  125. package/dist/components/message/index.js.map +1 -0
  126. package/dist/components/modal/action/index.d.ts +9 -0
  127. package/dist/components/modal/action/index.js +26 -0
  128. package/dist/components/modal/action/index.js.map +1 -0
  129. package/dist/components/modal/content/index.d.ts +3 -0
  130. package/dist/components/modal/content/index.js +15 -0
  131. package/dist/components/modal/content/index.js.map +1 -0
  132. package/dist/components/modal/header/index.d.ts +3 -0
  133. package/dist/components/modal/header/index.js +15 -0
  134. package/dist/components/modal/header/index.js.map +1 -0
  135. package/dist/components/modal/index.d.ts +17 -0
  136. package/dist/components/modal/index.js +92 -0
  137. package/dist/components/modal/index.js.map +1 -0
  138. package/dist/components/nav-bar/index.d.ts +22 -0
  139. package/dist/components/nav-bar/index.js +201 -0
  140. package/dist/components/nav-bar/index.js.map +1 -0
  141. package/dist/components/noticebar/index.d.ts +18 -0
  142. package/dist/components/noticebar/index.js +173 -0
  143. package/dist/components/noticebar/index.js.map +1 -0
  144. package/dist/components/pagination/index.d.ts +14 -0
  145. package/dist/components/pagination/index.js +90 -0
  146. package/dist/components/pagination/index.js.map +1 -0
  147. package/dist/components/progress/index.d.ts +13 -0
  148. package/dist/components/progress/index.js +56 -0
  149. package/dist/components/progress/index.js.map +1 -0
  150. package/dist/components/radio/index.d.ts +13 -0
  151. package/dist/components/radio/index.js +50 -0
  152. package/dist/components/radio/index.js.map +1 -0
  153. package/dist/components/range/index.d.ts +20 -0
  154. package/dist/components/range/index.js +200 -0
  155. package/dist/components/range/index.js.map +1 -0
  156. package/dist/components/rate/index.d.ts +15 -0
  157. package/dist/components/rate/index.js +67 -0
  158. package/dist/components/rate/index.js.map +1 -0
  159. package/dist/components/search-bar/index.d.ts +24 -0
  160. package/dist/components/search-bar/index.js +150 -0
  161. package/dist/components/search-bar/index.js.map +1 -0
  162. package/dist/components/segmented-control/index.d.ts +16 -0
  163. package/dist/components/segmented-control/index.js +70 -0
  164. package/dist/components/segmented-control/index.js.map +1 -0
  165. package/dist/components/slider/index.d.ts +22 -0
  166. package/dist/components/slider/index.js +91 -0
  167. package/dist/components/slider/index.js.map +1 -0
  168. package/dist/components/steps/index.d.ts +13 -0
  169. package/dist/components/steps/index.js +62 -0
  170. package/dist/components/steps/index.js.map +1 -0
  171. package/dist/components/swipe-action/index.d.ts +14 -0
  172. package/dist/components/swipe-action/index.js +223 -0
  173. package/dist/components/swipe-action/index.js.map +1 -0
  174. package/dist/components/swipe-action/options/index.d.ts +3 -0
  175. package/dist/components/swipe-action/options/index.js +25 -0
  176. package/dist/components/swipe-action/options/index.js.map +1 -0
  177. package/dist/components/switch/index.d.ts +16 -0
  178. package/dist/components/switch/index.js +54 -0
  179. package/dist/components/switch/index.js.map +1 -0
  180. package/dist/components/tab-bar/index.d.ts +19 -0
  181. package/dist/components/tab-bar/index.js +143 -0
  182. package/dist/components/tab-bar/index.js.map +1 -0
  183. package/dist/components/tabs/index.d.ts +18 -0
  184. package/dist/components/tabs/index.js +230 -0
  185. package/dist/components/tabs/index.js.map +1 -0
  186. package/dist/components/tabs-pane/index.d.ts +13 -0
  187. package/dist/components/tabs-pane/index.js +41 -0
  188. package/dist/components/tabs-pane/index.js.map +1 -0
  189. package/dist/components/tag/index.d.ts +16 -0
  190. package/dist/components/tag/index.js +66 -0
  191. package/dist/components/tag/index.js.map +1 -0
  192. package/dist/components/textarea/index.d.ts +31 -0
  193. package/dist/components/textarea/index.js +121 -0
  194. package/dist/components/textarea/index.js.map +1 -0
  195. package/dist/components/timeline/index.d.ts +11 -0
  196. package/dist/components/timeline/index.js +70 -0
  197. package/dist/components/timeline/index.js.map +1 -0
  198. package/dist/components/toast/img.json +5 -0
  199. package/dist/components/toast/index.d.ts +17 -0
  200. package/dist/components/toast/index.js +115 -0
  201. package/dist/components/toast/index.js.map +1 -0
  202. package/dist/hooks/useComponentLocale.d.ts +2 -0
  203. package/dist/hooks/useComponentLocale.js +12 -0
  204. package/dist/hooks/useComponentLocale.js.map +1 -0
  205. package/{lib → dist}/index.d.ts +3 -0
  206. package/dist/index.esm.js +5856 -0
  207. package/dist/index.esm.js.map +1 -0
  208. package/dist/index.js +5937 -0
  209. package/dist/index.js.map +1 -0
  210. package/dist/locale/en_US.d.ts +3 -0
  211. package/dist/locale/en_US.js +34 -0
  212. package/dist/locale/en_US.js.map +1 -0
  213. package/dist/locale/index.d.ts +4 -0
  214. package/dist/locale/index.js +10 -0
  215. package/dist/locale/index.js.map +1 -0
  216. package/dist/locale/types.d.ts +34 -0
  217. package/dist/locale/types.js +1 -0
  218. package/dist/locale/types.js.map +1 -0
  219. package/dist/locale/zh_CN.d.ts +3 -0
  220. package/dist/locale/zh_CN.js +34 -0
  221. package/dist/locale/zh_CN.js.map +1 -0
  222. package/{lib → dist}/style/components/avatar.scss +1 -1
  223. package/{lib → dist}/style/components/badge.scss +7 -2
  224. package/{lib → dist}/style/components/calendar.scss +1 -1
  225. package/{lib → dist}/style/components/countdown.scss +2 -1
  226. package/{lib → dist}/style/components/flex.scss +1 -1
  227. package/{lib → dist}/style/components/grid.scss +2 -2
  228. package/{lib → dist}/style/components/icon.scss +302 -101
  229. package/{lib → dist}/style/components/input.scss +2 -2
  230. package/{lib → dist}/style/components/progress.scss +1 -1
  231. package/{lib → dist}/style/components/search-bar.scss +1 -1
  232. package/{lib → dist}/style/components/steps.scss +2 -2
  233. package/{lib → dist}/style/components/tabs.scss +1 -1
  234. package/{lib → dist}/style/components/tag.scss +1 -1
  235. package/{lib → dist}/style/components/timeline.scss +1 -1
  236. package/{lib → dist}/style/components/toast.scss +7 -3
  237. package/{lib → dist}/style/index.css +176 -176
  238. package/dist/style/index.css.map +1 -0
  239. package/{lib → dist}/style/mixins/libs/hairline.scss +4 -19
  240. package/{lib → dist}/style/mixins/libs/shade.scss +3 -6
  241. package/{lib → dist}/style/mixins/libs/tint.scss +4 -7
  242. package/{lib → dist}/style/themes/purple.scss +15 -15
  243. package/{lib → dist}/style/themes/red.scss +16 -13
  244. package/{lib → dist}/style/variables/default.scss +69 -73
  245. package/package.json +45 -12
  246. package/rn/components/accordion/index.tsx +2 -9
  247. package/rn/components/action-sheet/body/index.tsx +1 -3
  248. package/rn/components/action-sheet/body/item/index.tsx +1 -3
  249. package/rn/components/action-sheet/footer/index.tsx +1 -3
  250. package/rn/components/action-sheet/header/index.tsx +1 -3
  251. package/rn/components/activity-indicator/index.tsx +1 -3
  252. package/rn/components/avatar/index.tsx +5 -5
  253. package/rn/components/calendar/controller/index.tsx +2 -7
  254. package/rn/components/card/index.tsx +4 -4
  255. package/rn/components/countdown/index.scss +5 -4
  256. package/rn/components/countdown/item/index.tsx +1 -3
  257. package/rn/components/curtain/index.tsx +5 -5
  258. package/rn/components/flex/index.scss +2 -2
  259. package/rn/components/flex/item/index.scss +2 -2
  260. package/rn/components/grid/index.tsx +15 -15
  261. package/rn/components/icon/index.tsx +4 -4
  262. package/rn/components/image-picker/index.tsx +7 -7
  263. package/rn/components/pagination/index.tsx +7 -7
  264. package/rn/components/progress/index.tsx +5 -5
  265. package/rn/components/radio/index.tsx +7 -7
  266. package/rn/components/rate/index.tsx +4 -4
  267. package/rn/components/segmented-control/index.tsx +8 -8
  268. package/rn/components/slider/index.tsx +9 -9
  269. package/rn/components/steps/index.tsx +8 -8
  270. package/rn/components/swipe-action/options/index.tsx +1 -3
  271. package/rn/components/switch/index.tsx +2 -9
  272. package/rn/components/toast/img.json +3 -6
  273. package/rn/components/toast/index.tsx +8 -8
  274. package/rn/style/components/accordion.scss +1 -1
  275. package/rn/style/components/action-sheet.scss +1 -1
  276. package/rn/style/components/avatar.scss +1 -1
  277. package/rn/style/components/badge.scss +8 -3
  278. package/rn/style/components/button.scss +1 -1
  279. package/rn/style/components/calendar.scss +1 -1
  280. package/rn/style/components/checkbox.scss +1 -1
  281. package/rn/style/components/curtain.scss +1 -1
  282. package/rn/style/components/fab.scss +1 -4
  283. package/rn/style/components/flex.scss +1 -1
  284. package/rn/style/components/grid.scss +2 -6
  285. package/rn/style/components/icon.scss +302 -101
  286. package/rn/style/components/index.scss +41 -41
  287. package/rn/style/components/input.scss +1 -1
  288. package/rn/style/components/list.scss +2 -4
  289. package/rn/style/components/loading.scss +4 -4
  290. package/rn/style/components/message.scss +1 -1
  291. package/rn/style/components/modal.scss +0 -2
  292. package/rn/style/components/nav-bar.scss +3 -3
  293. package/rn/style/components/noticebar.scss +0 -4
  294. package/rn/style/components/progress.scss +1 -1
  295. package/rn/style/components/radio.scss +2 -2
  296. package/rn/style/components/range.scss +1 -1
  297. package/rn/style/components/search-bar.scss +1 -1
  298. package/rn/style/components/segmented-control.scss +4 -1
  299. package/rn/style/components/slider.scss +0 -1
  300. package/rn/style/components/steps.scss +3 -3
  301. package/rn/style/components/switch.scss +0 -1
  302. package/rn/style/components/tabs.scss +2 -2
  303. package/rn/style/components/tag.scss +1 -1
  304. package/rn/style/components/timeline.scss +0 -2
  305. package/rn/style/components/toast.scss +5 -2
  306. package/rn/style/index.scss +1 -1
  307. package/rn/style/mixins/libs/hairline.scss +4 -22
  308. package/rn/style/mixins/libs/shade.scss +1 -4
  309. package/rn/style/mixins/libs/tint.scss +2 -5
  310. package/rn/style/themes/purple.scss +15 -15
  311. package/rn/style/themes/red.scss +16 -13
  312. package/rn/style/variables/default.scss +69 -73
  313. package/lib/components/accordion/index.d.ts +0 -14
  314. package/lib/components/accordion/index.js +0 -121
  315. package/lib/components/accordion/index.js.map +0 -1
  316. package/lib/components/action-sheet/body/index.d.ts +0 -5
  317. package/lib/components/action-sheet/body/index.js +0 -13
  318. package/lib/components/action-sheet/body/index.js.map +0 -1
  319. package/lib/components/action-sheet/body/item/index.d.ts +0 -9
  320. package/lib/components/action-sheet/body/item/index.js +0 -25
  321. package/lib/components/action-sheet/body/item/index.js.map +0 -1
  322. package/lib/components/action-sheet/footer/index.d.ts +0 -9
  323. package/lib/components/action-sheet/footer/index.js +0 -28
  324. package/lib/components/action-sheet/footer/index.js.map +0 -1
  325. package/lib/components/action-sheet/header/index.d.ts +0 -5
  326. package/lib/components/action-sheet/header/index.js +0 -16
  327. package/lib/components/action-sheet/header/index.js.map +0 -1
  328. package/lib/components/action-sheet/index.d.ts +0 -14
  329. package/lib/components/action-sheet/index.js +0 -76
  330. package/lib/components/action-sheet/index.js.map +0 -1
  331. package/lib/components/activity-indicator/index.d.ts +0 -8
  332. package/lib/components/activity-indicator/index.js +0 -39
  333. package/lib/components/activity-indicator/index.js.map +0 -1
  334. package/lib/components/avatar/index.d.ts +0 -9
  335. package/lib/components/avatar/index.js +0 -67
  336. package/lib/components/avatar/index.js.map +0 -1
  337. package/lib/components/badge/index.d.ts +0 -10
  338. package/lib/components/badge/index.js +0 -51
  339. package/lib/components/badge/index.js.map +0 -1
  340. package/lib/components/button/index.d.ts +0 -15
  341. package/lib/components/button/index.js +0 -177
  342. package/lib/components/button/index.js.map +0 -1
  343. package/lib/components/calendar/body/index.d.ts +0 -26
  344. package/lib/components/calendar/body/index.js +0 -289
  345. package/lib/components/calendar/body/index.js.map +0 -1
  346. package/lib/components/calendar/controller/index.d.ts +0 -5
  347. package/lib/components/calendar/controller/index.js +0 -51
  348. package/lib/components/calendar/controller/index.js.map +0 -1
  349. package/lib/components/calendar/index.d.ts +0 -20
  350. package/lib/components/calendar/index.js +0 -244
  351. package/lib/components/calendar/index.js.map +0 -1
  352. package/lib/components/calendar/ui/date-list/index.js +0 -54
  353. package/lib/components/calendar/ui/date-list/index.js.map +0 -1
  354. package/lib/components/calendar/ui/day-list/index.d.ts +0 -4
  355. package/lib/components/calendar/ui/day-list/index.js +0 -11
  356. package/lib/components/calendar/ui/day-list/index.js.map +0 -1
  357. package/lib/components/card/index.d.ts +0 -9
  358. package/lib/components/card/index.js +0 -80
  359. package/lib/components/card/index.js.map +0 -1
  360. package/lib/components/checkbox/index.d.ts +0 -9
  361. package/lib/components/checkbox/index.js +0 -59
  362. package/lib/components/checkbox/index.js.map +0 -1
  363. package/lib/components/countdown/index.d.ts +0 -20
  364. package/lib/components/countdown/index.js +0 -152
  365. package/lib/components/countdown/index.js.map +0 -1
  366. package/lib/components/countdown/item/index.d.ts +0 -9
  367. package/lib/components/countdown/item/index.js +0 -24
  368. package/lib/components/countdown/item/index.js.map +0 -1
  369. package/lib/components/curtain/index.d.ts +0 -10
  370. package/lib/components/curtain/index.js +0 -62
  371. package/lib/components/curtain/index.js.map +0 -1
  372. package/lib/components/divider/index.d.ts +0 -8
  373. package/lib/components/divider/index.js +0 -57
  374. package/lib/components/divider/index.js.map +0 -1
  375. package/lib/components/drawer/index.d.ts +0 -16
  376. package/lib/components/drawer/index.js +0 -114
  377. package/lib/components/drawer/index.js.map +0 -1
  378. package/lib/components/fab/index.d.ts +0 -9
  379. package/lib/components/fab/index.js +0 -29
  380. package/lib/components/fab/index.js.map +0 -1
  381. package/lib/components/flex/index.d.ts +0 -7
  382. package/lib/components/flex/index.js.map +0 -1
  383. package/lib/components/flex/item/index.d.ts +0 -7
  384. package/lib/components/flex/item/index.js +0 -34
  385. package/lib/components/flex/item/index.js.map +0 -1
  386. package/lib/components/float-layout/index.d.ts +0 -13
  387. package/lib/components/float-layout/index.js +0 -104
  388. package/lib/components/float-layout/index.js.map +0 -1
  389. package/lib/components/form/index.d.ts +0 -10
  390. package/lib/components/form/index.js +0 -43
  391. package/lib/components/form/index.js.map +0 -1
  392. package/lib/components/grid/index.d.ts +0 -9
  393. package/lib/components/grid/index.js +0 -101
  394. package/lib/components/grid/index.js.map +0 -1
  395. package/lib/components/icon/index.d.ts +0 -9
  396. package/lib/components/icon/index.js +0 -54
  397. package/lib/components/icon/index.js.map +0 -1
  398. package/lib/components/image-picker/index.d.ts +0 -11
  399. package/lib/components/image-picker/index.js +0 -164
  400. package/lib/components/image-picker/index.js.map +0 -1
  401. package/lib/components/indexes/index.d.ts +0 -29
  402. package/lib/components/indexes/index.js +0 -272
  403. package/lib/components/indexes/index.js.map +0 -1
  404. package/lib/components/input/index.d.ts +0 -17
  405. package/lib/components/input/index.js +0 -232
  406. package/lib/components/input/index.js.map +0 -1
  407. package/lib/components/input-number/index.d.ts +0 -13
  408. package/lib/components/input-number/index.js +0 -193
  409. package/lib/components/input-number/index.js.map +0 -1
  410. package/lib/components/list/index.d.ts +0 -8
  411. package/lib/components/list/index.js +0 -26
  412. package/lib/components/list/index.js.map +0 -1
  413. package/lib/components/list/item/index.d.ts +0 -11
  414. package/lib/components/list/item/index.js +0 -152
  415. package/lib/components/list/item/index.js.map +0 -1
  416. package/lib/components/load-more/index.d.ts +0 -9
  417. package/lib/components/load-more/index.js +0 -72
  418. package/lib/components/load-more/index.js.map +0 -1
  419. package/lib/components/loading/index.d.ts +0 -12
  420. package/lib/components/loading/index.js +0 -32
  421. package/lib/components/loading/index.js.map +0 -1
  422. package/lib/components/message/index.d.ts +0 -15
  423. package/lib/components/message/index.js +0 -78
  424. package/lib/components/message/index.js.map +0 -1
  425. package/lib/components/modal/action/index.d.ts +0 -8
  426. package/lib/components/modal/action/index.js +0 -26
  427. package/lib/components/modal/action/index.js.map +0 -1
  428. package/lib/components/modal/content/index.d.ts +0 -5
  429. package/lib/components/modal/content/index.js +0 -13
  430. package/lib/components/modal/content/index.js.map +0 -1
  431. package/lib/components/modal/header/index.d.ts +0 -5
  432. package/lib/components/modal/header/index.js +0 -13
  433. package/lib/components/modal/header/index.js.map +0 -1
  434. package/lib/components/modal/index.d.ts +0 -15
  435. package/lib/components/modal/index.js +0 -106
  436. package/lib/components/modal/index.js.map +0 -1
  437. package/lib/components/nav-bar/index.d.ts +0 -12
  438. package/lib/components/nav-bar/index.js +0 -217
  439. package/lib/components/nav-bar/index.js.map +0 -1
  440. package/lib/components/noticebar/index.d.ts +0 -16
  441. package/lib/components/noticebar/index.js +0 -186
  442. package/lib/components/noticebar/index.js.map +0 -1
  443. package/lib/components/pagination/index.d.ts +0 -12
  444. package/lib/components/pagination/index.js +0 -146
  445. package/lib/components/pagination/index.js.map +0 -1
  446. package/lib/components/progress/index.d.ts +0 -7
  447. package/lib/components/progress/index.js +0 -53
  448. package/lib/components/progress/index.js.map +0 -1
  449. package/lib/components/radio/index.d.ts +0 -9
  450. package/lib/components/radio/index.js +0 -54
  451. package/lib/components/radio/index.js.map +0 -1
  452. package/lib/components/range/index.d.ts +0 -22
  453. package/lib/components/range/index.js +0 -207
  454. package/lib/components/range/index.js.map +0 -1
  455. package/lib/components/rate/index.d.ts +0 -9
  456. package/lib/components/rate/index.js +0 -82
  457. package/lib/components/rate/index.js.map +0 -1
  458. package/lib/components/search-bar/index.d.ts +0 -16
  459. package/lib/components/search-bar/index.js +0 -176
  460. package/lib/components/search-bar/index.js.map +0 -1
  461. package/lib/components/segmented-control/index.d.ts +0 -9
  462. package/lib/components/segmented-control/index.js +0 -84
  463. package/lib/components/segmented-control/index.js.map +0 -1
  464. package/lib/components/slider/index.d.ts +0 -13
  465. package/lib/components/slider/index.js +0 -115
  466. package/lib/components/slider/index.js.map +0 -1
  467. package/lib/components/steps/index.d.ts +0 -9
  468. package/lib/components/steps/index.js +0 -67
  469. package/lib/components/steps/index.js.map +0 -1
  470. package/lib/components/swipe-action/index.d.ts +0 -27
  471. package/lib/components/swipe-action/index.js +0 -220
  472. package/lib/components/swipe-action/index.js.map +0 -1
  473. package/lib/components/swipe-action/options/index.d.ts +0 -5
  474. package/lib/components/swipe-action/options/index.js +0 -24
  475. package/lib/components/swipe-action/options/index.js.map +0 -1
  476. package/lib/components/switch/index.d.ts +0 -9
  477. package/lib/components/switch/index.js +0 -59
  478. package/lib/components/switch/index.js.map +0 -1
  479. package/lib/components/tab-bar/index.d.ts +0 -9
  480. package/lib/components/tab-bar/index.js +0 -170
  481. package/lib/components/tab-bar/index.js.map +0 -1
  482. package/lib/components/tabs/index.d.ts +0 -24
  483. package/lib/components/tabs/index.js +0 -219
  484. package/lib/components/tabs/index.js.map +0 -1
  485. package/lib/components/tabs-pane/index.d.ts +0 -8
  486. package/lib/components/tabs-pane/index.js +0 -43
  487. package/lib/components/tabs-pane/index.js.map +0 -1
  488. package/lib/components/tag/index.d.ts +0 -9
  489. package/lib/components/tag/index.js +0 -75
  490. package/lib/components/tag/index.js.map +0 -1
  491. package/lib/components/textarea/index.d.ts +0 -13
  492. package/lib/components/textarea/index.js +0 -141
  493. package/lib/components/textarea/index.js.map +0 -1
  494. package/lib/components/timeline/index.d.ts +0 -8
  495. package/lib/components/timeline/index.js +0 -76
  496. package/lib/components/timeline/index.js.map +0 -1
  497. package/lib/components/toast/img.json +0 -8
  498. package/lib/components/toast/index.d.ts +0 -16
  499. package/lib/components/toast/index.js +0 -124
  500. package/lib/components/toast/index.js.map +0 -1
  501. package/lib/index.js +0 -109
  502. package/lib/index.js.map +0 -1
  503. package/lib/style/index.css.map +0 -1
  504. /package/{lib → dist}/common/component.d.ts +0 -0
  505. /package/{lib → dist}/common/component.js +0 -0
  506. /package/{lib → dist}/common/component.js.map +0 -0
  507. /package/{lib → dist}/components/calendar/common/constant.d.ts +0 -0
  508. /package/{lib → dist}/components/calendar/common/constant.js +0 -0
  509. /package/{lib → dist}/components/calendar/common/constant.js.map +0 -0
  510. /package/{lib → dist}/components/calendar/common/helper.d.ts +0 -0
  511. /package/{lib → dist}/components/calendar/common/helper.js +0 -0
  512. /package/{lib → dist}/components/calendar/common/helper.js.map +0 -0
  513. /package/{lib → dist}/components/calendar/common/plugins.d.ts +0 -0
  514. /package/{lib → dist}/components/calendar/common/plugins.js +0 -0
  515. /package/{lib → dist}/components/calendar/common/plugins.js.map +0 -0
  516. /package/{lib → dist}/style/components/accordion.scss +0 -0
  517. /package/{lib → dist}/style/components/action-sheet.scss +0 -0
  518. /package/{lib → dist}/style/components/activity-indicator.scss +0 -0
  519. /package/{lib → dist}/style/components/article.scss +0 -0
  520. /package/{lib → dist}/style/components/button.scss +0 -0
  521. /package/{lib → dist}/style/components/card.scss +0 -0
  522. /package/{lib → dist}/style/components/checkbox.scss +0 -0
  523. /package/{lib → dist}/style/components/curtain.scss +0 -0
  524. /package/{lib → dist}/style/components/divider.scss +0 -0
  525. /package/{lib → dist}/style/components/drawer.scss +0 -0
  526. /package/{lib → dist}/style/components/fab.scss +0 -0
  527. /package/{lib → dist}/style/components/float-layout.scss +0 -0
  528. /package/{lib → dist}/style/components/form.scss +0 -0
  529. /package/{lib → dist}/style/components/image-picker.scss +0 -0
  530. /package/{lib → dist}/style/components/index.scss +0 -0
  531. /package/{lib → dist}/style/components/indexes.scss +0 -0
  532. /package/{lib → dist}/style/components/input-number.scss +0 -0
  533. /package/{lib → dist}/style/components/list.scss +0 -0
  534. /package/{lib → dist}/style/components/load-more.scss +0 -0
  535. /package/{lib → dist}/style/components/loading.scss +0 -0
  536. /package/{lib → dist}/style/components/message.scss +0 -0
  537. /package/{lib → dist}/style/components/modal.scss +0 -0
  538. /package/{lib → dist}/style/components/nav-bar.scss +0 -0
  539. /package/{lib → dist}/style/components/noticebar.scss +0 -0
  540. /package/{lib → dist}/style/components/pagination.scss +0 -0
  541. /package/{lib → dist}/style/components/radio.scss +0 -0
  542. /package/{lib → dist}/style/components/range.scss +0 -0
  543. /package/{lib → dist}/style/components/rate.scss +0 -0
  544. /package/{lib → dist}/style/components/segmented-control.scss +0 -0
  545. /package/{lib → dist}/style/components/slider.scss +0 -0
  546. /package/{lib → dist}/style/components/swipe-action.scss +0 -0
  547. /package/{lib → dist}/style/components/switch.scss +0 -0
  548. /package/{lib → dist}/style/components/tab-bar.scss +0 -0
  549. /package/{lib → dist}/style/components/textarea.scss +0 -0
  550. /package/{lib → dist}/style/index.scss +0 -0
  551. /package/{lib → dist}/style/mixins/index.scss +0 -0
  552. /package/{lib → dist}/style/mixins/libs/absolute-center.scss +0 -0
  553. /package/{lib → dist}/style/mixins/libs/active.scss +0 -0
  554. /package/{lib → dist}/style/mixins/libs/alignhack.scss +0 -0
  555. /package/{lib → dist}/style/mixins/libs/border.scss +0 -0
  556. /package/{lib → dist}/style/mixins/libs/clearfix.scss +0 -0
  557. /package/{lib → dist}/style/mixins/libs/disabled.scss +0 -0
  558. /package/{lib → dist}/style/mixins/libs/flex.scss +0 -0
  559. /package/{lib → dist}/style/mixins/libs/line.scss +0 -0
  560. /package/{lib → dist}/style/mixins/libs/overlay.scss +0 -0
  561. /package/{lib → dist}/style/mixins/libs/placeholder.scss +0 -0
@@ -0,0 +1,50 @@
1
+ import classNames from "classnames";
2
+ import PropTypes from "prop-types";
3
+ import React from "react";
4
+ import { Text, View } from "@tarojs/components";
5
+ import { noop } from "../../common/utils";
6
+ function AtRadio({
7
+ customStyle = "",
8
+ className = "",
9
+ value = "",
10
+ options = [],
11
+ onClick = noop
12
+ }) {
13
+ const handleClick = (option, event) => {
14
+ if (option.disabled) return;
15
+ onClick(option.value, event);
16
+ };
17
+ return /* @__PURE__ */ React.createElement(View, { className: classNames("at-radio", className), style: customStyle }, options.map((option) => /* @__PURE__ */ React.createElement(
18
+ View,
19
+ {
20
+ key: option.value,
21
+ onClick: (event) => handleClick(option, event),
22
+ className: classNames({
23
+ "at-radio__option": true,
24
+ "at-radio__option--disabled": option.disabled
25
+ })
26
+ },
27
+ /* @__PURE__ */ React.createElement(View, { className: "at-radio__option-wrap" }, /* @__PURE__ */ React.createElement(View, { className: "at-radio__option-container" }, /* @__PURE__ */ React.createElement(View, { className: "at-radio__title" }, option.label), /* @__PURE__ */ React.createElement(
28
+ View,
29
+ {
30
+ className: classNames({
31
+ "at-radio__icon": true,
32
+ "at-radio__icon--checked": value === option.value
33
+ })
34
+ },
35
+ /* @__PURE__ */ React.createElement(Text, { className: "at-icon at-icon-check" })
36
+ )), option.desc && /* @__PURE__ */ React.createElement(View, { className: "at-radio__desc" }, option.desc))
37
+ )));
38
+ }
39
+ AtRadio.propTypes = {
40
+ customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
41
+ className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),
42
+ value: PropTypes.string,
43
+ options: PropTypes.array,
44
+ onClick: PropTypes.func
45
+ };
46
+ var radio_default = AtRadio;
47
+ export {
48
+ radio_default as default
49
+ };
50
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/radio/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React from 'react'\nimport { Text, View } from '@tarojs/components'\nimport { CommonEvent } from '@tarojs/components/types/common'\nimport { AtRadioProps, RadioOption } from '../../../types/radio'\nimport { noop } from '../../common/utils'\n\nfunction AtRadio({\n customStyle = '',\n className = '',\n value = '',\n options = [],\n onClick = noop\n}: AtRadioProps<any>): JSX.Element {\n const handleClick = (option: RadioOption<any>, event: CommonEvent): void => {\n if (option.disabled) return\n onClick(option.value, event)\n }\n\n return (\n <View className={classNames('at-radio', className)} style={customStyle}>\n {options.map(option => (\n <View\n key={option.value}\n onClick={event => handleClick(option, event)}\n className={classNames({\n 'at-radio__option': true,\n 'at-radio__option--disabled': option.disabled\n })}\n >\n <View className='at-radio__option-wrap'>\n <View className='at-radio__option-container'>\n <View className='at-radio__title'>{option.label}</View>\n <View\n className={classNames({\n 'at-radio__icon': true,\n 'at-radio__icon--checked': value === option.value\n })}\n >\n <Text className='at-icon at-icon-check'></Text>\n </View>\n </View>\n {option.desc && (\n <View className='at-radio__desc'>{option.desc}</View>\n )}\n </View>\n </View>\n ))}\n </View>\n )\n}\n\nAtRadio.propTypes = {\n customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),\n value: PropTypes.string,\n options: PropTypes.array,\n onClick: PropTypes.func\n}\n\nexport default AtRadio\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,WAAW;AAClB,SAAS,MAAM,YAAY;AAG3B,SAAS,YAAY;AAErB,SAAS,QAAQ;AAAA,EACf,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,UAAU,CAAC;AAAA,EACX,UAAU;AACZ,GAAmC;AACjC,QAAM,cAAc,CAAC,QAA0B,UAA6B;AAC1E,QAAI,OAAO,SAAU;AACrB,YAAQ,OAAO,OAAO,KAAK;AAAA,EAC7B;AAEA,SACE,oCAAC,QAAK,WAAW,WAAW,YAAY,SAAS,GAAG,OAAO,eACxD,QAAQ,IAAI,YACX;AAAA,IAAC;AAAA;AAAA,MACC,KAAK,OAAO;AAAA,MACZ,SAAS,WAAS,YAAY,QAAQ,KAAK;AAAA,MAC3C,WAAW,WAAW;AAAA,QACpB,oBAAoB;AAAA,QACpB,8BAA8B,OAAO;AAAA,MACvC,CAAC;AAAA;AAAA,IAED,oCAAC,QAAK,WAAU,2BACd,oCAAC,QAAK,WAAU,gCACd,oCAAC,QAAK,WAAU,qBAAmB,OAAO,KAAM,GAChD;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,WAAW;AAAA,UACpB,kBAAkB;AAAA,UAClB,2BAA2B,UAAU,OAAO;AAAA,QAC9C,CAAC;AAAA;AAAA,MAED,oCAAC,QAAK,WAAU,yBAAwB;AAAA,IAC1C,CACF,GACC,OAAO,QACN,oCAAC,QAAK,WAAU,oBAAkB,OAAO,IAAK,CAElD;AAAA,EACF,CACD,CACH;AAEJ;AAEA,QAAQ,YAAY;AAAA,EAClB,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EACrE,WAAW,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC;AAAA,EAClE,OAAO,UAAU;AAAA,EACjB,SAAS,UAAU;AAAA,EACnB,SAAS,UAAU;AACrB;AAEA,IAAO,gBAAQ;","names":[]}
@@ -0,0 +1,20 @@
1
+ import PropTypes from 'prop-types';
2
+ import { AtRangeProps } from '../../../types/range';
3
+ declare function AtRange({ customStyle, className, sliderStyle, railStyle, trackStyle, value, min, max, disabled, blockSize, onChange, onAfterChange }: AtRangeProps): JSX.Element;
4
+ declare namespace AtRange {
5
+ var propTypes: {
6
+ customStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
7
+ className: PropTypes.Requireable<NonNullable<string | any[] | null | undefined>>;
8
+ sliderStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
9
+ railStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
10
+ trackStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
11
+ value: PropTypes.Requireable<any[]>;
12
+ min: PropTypes.Requireable<number>;
13
+ max: PropTypes.Requireable<number>;
14
+ disabled: PropTypes.Requireable<boolean>;
15
+ blockSize: PropTypes.Requireable<number>;
16
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
17
+ onAfterChange: PropTypes.Requireable<(...args: any[]) => any>;
18
+ };
19
+ }
20
+ export default AtRange;
@@ -0,0 +1,200 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import classNames from "classnames";
21
+ import PropTypes from "prop-types";
22
+ import React, { useEffect, useRef, useState } from "react";
23
+ import { View } from "@tarojs/components";
24
+ import {
25
+ delayQuerySelector,
26
+ getEventDetail,
27
+ mergeStyle
28
+ } from "../../common/utils";
29
+ function AtRange({
30
+ customStyle = "",
31
+ className = "",
32
+ sliderStyle = {},
33
+ railStyle = {},
34
+ trackStyle = {},
35
+ value = [0, 0],
36
+ min = 0,
37
+ max = 100,
38
+ disabled = false,
39
+ blockSize = 0,
40
+ onChange,
41
+ onAfterChange
42
+ }) {
43
+ const widthRef = useRef(0);
44
+ const leftRef = useRef(0);
45
+ const deltaValueRef = useRef(max - min);
46
+ const currentSliderRef = useRef("");
47
+ const [{ aX, bX }, setAxis] = useState({ aX: 0, bX: 0 });
48
+ const stateRef = useRef({ aX: 0, bX: 0 });
49
+ stateRef.current = { aX, bX };
50
+ deltaValueRef.current = max - min;
51
+ const triggerEvent = (funcName) => {
52
+ const { aX: stateAX, bX: stateBX } = stateRef.current;
53
+ const a = Math.round(stateAX / 100 * deltaValueRef.current) + min;
54
+ const b = Math.round(stateBX / 100 * deltaValueRef.current) + min;
55
+ const result = [a, b].sort((x, y) => x - y);
56
+ if (funcName === "onChange") {
57
+ onChange && onChange(result);
58
+ } else if (funcName === "onAfterChange") {
59
+ onAfterChange && onAfterChange(result);
60
+ }
61
+ };
62
+ const setValue = (nextValue) => {
63
+ const aXVal = Math.round(
64
+ (nextValue[0] - min) / deltaValueRef.current * 100
65
+ );
66
+ const bXVal = Math.round(
67
+ (nextValue[1] - min) / deltaValueRef.current * 100
68
+ );
69
+ setAxis({ aX: aXVal, bX: bXVal });
70
+ };
71
+ const setSliderValue = (sliderName, targetValue, funcName) => {
72
+ const distance = Math.min(Math.max(targetValue, 0), widthRef.current);
73
+ const sliderValue = Math.floor(distance / widthRef.current * 100);
74
+ if (funcName) {
75
+ setAxis((prev) => {
76
+ const next = __spreadProps(__spreadValues({}, prev), { [sliderName]: sliderValue });
77
+ stateRef.current = next;
78
+ const a = Math.round(next.aX / 100 * deltaValueRef.current) + min;
79
+ const b = Math.round(next.bX / 100 * deltaValueRef.current) + min;
80
+ const result = [a, b].sort((x, y) => x - y);
81
+ if (funcName === "onChange") {
82
+ onChange && onChange(result);
83
+ } else if (funcName === "onAfterChange") {
84
+ onAfterChange && onAfterChange(result);
85
+ }
86
+ return next;
87
+ });
88
+ } else {
89
+ setAxis((prev) => __spreadProps(__spreadValues({}, prev), { [sliderName]: sliderValue }));
90
+ }
91
+ };
92
+ const updatePos = () => {
93
+ delayQuerySelector(".at-range__container", 0).then((rect) => {
94
+ var _a, _b;
95
+ widthRef.current = Math.round((_a = rect[0]) == null ? void 0 : _a.width);
96
+ leftRef.current = Math.round((_b = rect[0]) == null ? void 0 : _b.left);
97
+ });
98
+ };
99
+ const handleClick = (event) => {
100
+ if (currentSliderRef.current && !disabled) {
101
+ let sliderValue = 0;
102
+ const detail = getEventDetail(event);
103
+ sliderValue = detail.x - leftRef.current;
104
+ setSliderValue(currentSliderRef.current, sliderValue, "onChange");
105
+ }
106
+ };
107
+ const handleTouchMove = (sliderName, event) => {
108
+ if (disabled) return;
109
+ event.stopPropagation();
110
+ const clientX = event.touches[0].clientX;
111
+ setSliderValue(sliderName, clientX - leftRef.current, "onChange");
112
+ };
113
+ const handleTouchEnd = (sliderName) => {
114
+ if (disabled) return;
115
+ currentSliderRef.current = sliderName;
116
+ triggerEvent("onAfterChange");
117
+ };
118
+ useEffect(() => {
119
+ updatePos();
120
+ setValue(value);
121
+ }, []);
122
+ const prevValueRef = useRef(value);
123
+ useEffect(() => {
124
+ var _a, _b;
125
+ updatePos();
126
+ if (((_a = prevValueRef.current) == null ? void 0 : _a[0]) !== (value == null ? void 0 : value[0]) || ((_b = prevValueRef.current) == null ? void 0 : _b[1]) !== (value == null ? void 0 : value[1])) {
127
+ setValue(value);
128
+ }
129
+ prevValueRef.current = value;
130
+ }, [value, min, max]);
131
+ const rootCls = classNames(
132
+ "at-range",
133
+ {
134
+ "at-range--disabled": disabled
135
+ },
136
+ className
137
+ );
138
+ const sliderCommonStyle = {
139
+ width: blockSize ? `${blockSize}PX` : "",
140
+ height: blockSize ? `${blockSize}PX` : "",
141
+ marginLeft: blockSize ? `${-blockSize / 2}PX` : ""
142
+ };
143
+ const sliderAStyle = __spreadProps(__spreadValues({}, sliderCommonStyle), {
144
+ left: `${aX}%`
145
+ });
146
+ const sliderBStyle = __spreadProps(__spreadValues({}, sliderCommonStyle), {
147
+ left: `${bX}%`
148
+ });
149
+ const containerStyle = {
150
+ height: blockSize ? `${blockSize}PX` : ""
151
+ };
152
+ const smallerX = Math.min(aX, bX);
153
+ const deltaX = Math.abs(aX - bX);
154
+ const atTrackStyle = {
155
+ left: `${smallerX}%`,
156
+ width: `${deltaX}%`
157
+ };
158
+ return /* @__PURE__ */ React.createElement(View, { className: rootCls, style: customStyle, onClick: handleClick }, /* @__PURE__ */ React.createElement(View, { className: "at-range__container", style: containerStyle }, /* @__PURE__ */ React.createElement(View, { className: "at-range__rail", style: railStyle }), /* @__PURE__ */ React.createElement(
159
+ View,
160
+ {
161
+ className: "at-range__track",
162
+ style: mergeStyle(atTrackStyle, trackStyle)
163
+ }
164
+ ), /* @__PURE__ */ React.createElement(
165
+ View,
166
+ {
167
+ className: "at-range__slider",
168
+ style: mergeStyle(sliderAStyle, sliderStyle),
169
+ onTouchMove: (event) => handleTouchMove("aX", event),
170
+ onTouchEnd: () => handleTouchEnd("aX")
171
+ }
172
+ ), /* @__PURE__ */ React.createElement(
173
+ View,
174
+ {
175
+ className: "at-range__slider",
176
+ style: mergeStyle(sliderBStyle, sliderStyle),
177
+ onTouchMove: (event) => handleTouchMove("bX", event),
178
+ onTouchEnd: () => handleTouchEnd("bX")
179
+ }
180
+ )));
181
+ }
182
+ AtRange.propTypes = {
183
+ customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
184
+ className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),
185
+ sliderStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
186
+ railStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
187
+ trackStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
188
+ value: PropTypes.array,
189
+ min: PropTypes.number,
190
+ max: PropTypes.number,
191
+ disabled: PropTypes.bool,
192
+ blockSize: PropTypes.number,
193
+ onChange: PropTypes.func,
194
+ onAfterChange: PropTypes.func
195
+ };
196
+ var range_default = AtRange;
197
+ export {
198
+ range_default as default
199
+ };
200
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/range/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React, { useEffect, useRef, useState } from 'react'\nimport { View } from '@tarojs/components'\nimport { CommonEvent, ITouchEvent } from '@tarojs/components/types/common'\nimport { AtRangeProps } from '../../../types/range'\nimport {\n delayQuerySelector,\n getEventDetail,\n mergeStyle\n} from '../../common/utils'\n\nfunction AtRange({\n customStyle = '',\n className = '',\n sliderStyle = {},\n railStyle = {},\n trackStyle = {},\n value = [0, 0],\n min = 0,\n max = 100,\n disabled = false,\n blockSize = 0,\n onChange,\n onAfterChange\n}: AtRangeProps): JSX.Element {\n const widthRef = useRef(0)\n const leftRef = useRef(0)\n const deltaValueRef = useRef(max - min)\n const currentSliderRef = useRef('')\n const [{ aX, bX }, setAxis] = useState({ aX: 0, bX: 0 })\n const stateRef = useRef({ aX: 0, bX: 0 })\n stateRef.current = { aX, bX }\n\n deltaValueRef.current = max - min\n\n const triggerEvent = (funcName: string): void => {\n const { aX: stateAX, bX: stateBX } = stateRef.current\n const a = Math.round((stateAX / 100) * deltaValueRef.current) + min\n const b = Math.round((stateBX / 100) * deltaValueRef.current) + min\n const result = [a, b].sort((x, y) => x - y) as [number, number]\n\n if (funcName === 'onChange') {\n onChange && onChange(result)\n } else if (funcName === 'onAfterChange') {\n onAfterChange && onAfterChange(result)\n }\n }\n\n const setValue = (nextValue: number[]): void => {\n const aXVal = Math.round(\n ((nextValue[0] - min) / deltaValueRef.current) * 100\n )\n const bXVal = Math.round(\n ((nextValue[1] - min) / deltaValueRef.current) * 100\n )\n setAxis({ aX: aXVal, bX: bXVal })\n }\n\n const setSliderValue = (\n sliderName: string,\n targetValue: number,\n funcName: string\n ): void => {\n const distance = Math.min(Math.max(targetValue, 0), widthRef.current)\n const sliderValue = Math.floor((distance / widthRef.current) * 100)\n if (funcName) {\n setAxis(prev => {\n const next = { ...prev, [sliderName]: sliderValue }\n stateRef.current = next\n const a = Math.round((next.aX / 100) * deltaValueRef.current) + min\n const b = Math.round((next.bX / 100) * deltaValueRef.current) + min\n const result = [a, b].sort((x, y) => x - y) as [number, number]\n if (funcName === 'onChange') {\n onChange && onChange(result)\n } else if (funcName === 'onAfterChange') {\n onAfterChange && onAfterChange(result)\n }\n return next\n })\n } else {\n setAxis(prev => ({ ...prev, [sliderName]: sliderValue }))\n }\n }\n\n const updatePos = (): void => {\n delayQuerySelector('.at-range__container', 0).then(rect => {\n widthRef.current = Math.round(rect[0]?.width)\n leftRef.current = Math.round(rect[0]?.left)\n })\n }\n\n const handleClick = (event: CommonEvent): void => {\n if (currentSliderRef.current && !disabled) {\n let sliderValue = 0\n const detail = getEventDetail(event)\n sliderValue = detail.x - leftRef.current\n setSliderValue(currentSliderRef.current, sliderValue, 'onChange')\n }\n }\n\n const handleTouchMove = (sliderName: string, event: ITouchEvent): void => {\n if (disabled) return\n event.stopPropagation()\n\n const clientX = event.touches[0].clientX\n setSliderValue(sliderName, clientX - leftRef.current, 'onChange')\n }\n\n const handleTouchEnd = (sliderName: string): void => {\n if (disabled) return\n\n currentSliderRef.current = sliderName\n triggerEvent('onAfterChange')\n }\n\n useEffect(() => {\n updatePos()\n setValue(value)\n // componentDidMount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const prevValueRef = useRef(value)\n useEffect(() => {\n updatePos()\n if (\n prevValueRef.current?.[0] !== value?.[0] ||\n prevValueRef.current?.[1] !== value?.[1]\n ) {\n setValue(value)\n }\n prevValueRef.current = value\n }, [value, min, max])\n\n const rootCls = classNames(\n 'at-range',\n {\n 'at-range--disabled': disabled\n },\n className\n )\n\n const sliderCommonStyle = {\n width: blockSize ? `${blockSize}PX` : '',\n height: blockSize ? `${blockSize}PX` : '',\n marginLeft: blockSize ? `${-blockSize / 2}PX` : ''\n }\n const sliderAStyle = {\n ...sliderCommonStyle,\n left: `${aX}%`\n }\n const sliderBStyle = {\n ...sliderCommonStyle,\n left: `${bX}%`\n }\n const containerStyle = {\n height: blockSize ? `${blockSize}PX` : ''\n }\n const smallerX = Math.min(aX, bX)\n const deltaX = Math.abs(aX - bX)\n const atTrackStyle = {\n left: `${smallerX}%`,\n width: `${deltaX}%`\n }\n\n return (\n <View className={rootCls} style={customStyle} onClick={handleClick}>\n <View className='at-range__container' style={containerStyle}>\n <View className='at-range__rail' style={railStyle}></View>\n <View\n className='at-range__track'\n style={mergeStyle(atTrackStyle, trackStyle)}\n ></View>\n <View\n className='at-range__slider'\n style={mergeStyle(sliderAStyle, sliderStyle)}\n onTouchMove={(event: ITouchEvent) => handleTouchMove('aX', event)}\n onTouchEnd={() => handleTouchEnd('aX')}\n ></View>\n <View\n className='at-range__slider'\n style={mergeStyle(sliderBStyle, sliderStyle)}\n onTouchMove={(event: ITouchEvent) => handleTouchMove('bX', event)}\n onTouchEnd={() => handleTouchEnd('bX')}\n ></View>\n </View>\n </View>\n )\n}\n\nAtRange.propTypes = {\n customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),\n sliderStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n railStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n trackStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n value: PropTypes.array,\n min: PropTypes.number,\n max: PropTypes.number,\n disabled: PropTypes.bool,\n blockSize: PropTypes.number,\n onChange: PropTypes.func,\n onAfterChange: PropTypes.func\n}\n\nexport default AtRange\n"],"mappings":"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","names":[]}
@@ -0,0 +1,15 @@
1
+ import PropTypes from 'prop-types';
2
+ import { AtRateProps } from '../../../types/rate';
3
+ declare function AtRate({ customStyle, className, value, max, size, margin, onChange }: AtRateProps): JSX.Element;
4
+ declare namespace AtRate {
5
+ var propTypes: {
6
+ customStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
7
+ className: PropTypes.Requireable<NonNullable<string | any[] | null | undefined>>;
8
+ size: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
9
+ value: PropTypes.Requireable<number>;
10
+ max: PropTypes.Requireable<number>;
11
+ margin: PropTypes.Requireable<number>;
12
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
13
+ };
14
+ }
15
+ export default AtRate;
@@ -0,0 +1,67 @@
1
+ import classNames from "classnames";
2
+ import PropTypes from "prop-types";
3
+ import React from "react";
4
+ import { Text, View } from "@tarojs/components";
5
+ import { pxTransform } from "../../common/utils";
6
+ function AtRate({
7
+ customStyle = "",
8
+ className = "",
9
+ value = 0,
10
+ max = 5,
11
+ size = 0,
12
+ margin = 5,
13
+ onChange
14
+ }) {
15
+ const handleClick = (event) => {
16
+ onChange && onChange(event);
17
+ };
18
+ const iconStyle = {
19
+ marginRight: pxTransform(margin)
20
+ };
21
+ const starIconStyle = {
22
+ fontSize: size ? `${size}px` : ""
23
+ };
24
+ const classNameArr = [];
25
+ const floorValue = Math.floor(value);
26
+ const ceilValue = Math.ceil(value);
27
+ for (let i = 0; i < max; i++) {
28
+ if (floorValue > i) {
29
+ classNameArr.push("at-rate__icon at-rate__icon--on");
30
+ } else if (ceilValue - 1 === i) {
31
+ classNameArr.push("at-rate__icon at-rate__icon--half");
32
+ } else {
33
+ classNameArr.push("at-rate__icon at-rate__icon--off");
34
+ }
35
+ }
36
+ return /* @__PURE__ */ React.createElement(View, { className: classNames("at-rate", className), style: customStyle }, classNameArr.map((cls, i) => /* @__PURE__ */ React.createElement(
37
+ View,
38
+ {
39
+ className: cls,
40
+ key: `at-rate-star-${i}`,
41
+ style: iconStyle,
42
+ onClick: handleClick.bind(null, i + 1)
43
+ },
44
+ /* @__PURE__ */ React.createElement(Text, { className: "at-icon at-icon-star-2", style: starIconStyle }),
45
+ /* @__PURE__ */ React.createElement(View, { className: "at-rate__left" }, /* @__PURE__ */ React.createElement(
46
+ Text,
47
+ {
48
+ className: "at-icon at-icon-star-2",
49
+ style: starIconStyle
50
+ }
51
+ ))
52
+ )));
53
+ }
54
+ AtRate.propTypes = {
55
+ customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
56
+ className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),
57
+ size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
58
+ value: PropTypes.number,
59
+ max: PropTypes.number,
60
+ margin: PropTypes.number,
61
+ onChange: PropTypes.func
62
+ };
63
+ var rate_default = AtRate;
64
+ export {
65
+ rate_default as default
66
+ };
67
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/rate/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React from 'react'\nimport { Text, View } from '@tarojs/components'\nimport { CommonEvent } from '@tarojs/components/types/common'\nimport { AtRateProps } from '../../../types/rate'\nimport { pxTransform } from '../../common/utils'\n\nfunction AtRate({\n customStyle = '',\n className = '',\n value = 0,\n max = 5,\n size = 0,\n margin = 5,\n onChange\n}: AtRateProps): JSX.Element {\n const handleClick = (event: CommonEvent): void => {\n onChange && onChange(event)\n }\n\n const iconStyle = {\n marginRight: pxTransform(margin)\n }\n const starIconStyle = {\n fontSize: size ? `${size}px` : ''\n }\n\n // 生成星星颜色 className 数组,方便在jsx中直接map\n const classNameArr: string[] = []\n const floorValue = Math.floor(value)\n const ceilValue = Math.ceil(value)\n for (let i = 0; i < max; i++) {\n if (floorValue > i) {\n classNameArr.push('at-rate__icon at-rate__icon--on')\n } else if (ceilValue - 1 === i) {\n classNameArr.push('at-rate__icon at-rate__icon--half')\n } else {\n classNameArr.push('at-rate__icon at-rate__icon--off')\n }\n }\n\n return (\n <View className={classNames('at-rate', className)} style={customStyle}>\n {classNameArr.map((cls, i) => (\n <View\n className={cls}\n key={`at-rate-star-${i}`}\n style={iconStyle}\n onClick={handleClick.bind(null, i + 1)}\n >\n <Text className='at-icon at-icon-star-2' style={starIconStyle}></Text>\n <View className='at-rate__left'>\n <Text\n className='at-icon at-icon-star-2'\n style={starIconStyle}\n ></Text>\n </View>\n </View>\n ))}\n </View>\n )\n}\n\nAtRate.propTypes = {\n customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.oneOfType([PropTypes.array, PropTypes.string]),\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.number,\n max: PropTypes.number,\n margin: PropTypes.number,\n onChange: PropTypes.func\n}\n\nexport default AtRate\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,WAAW;AAClB,SAAS,MAAM,YAAY;AAG3B,SAAS,mBAAmB;AAE5B,SAAS,OAAO;AAAA,EACd,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AACF,GAA6B;AAC3B,QAAM,cAAc,CAAC,UAA6B;AAChD,gBAAY,SAAS,KAAK;AAAA,EAC5B;AAEA,QAAM,YAAY;AAAA,IAChB,aAAa,YAAY,MAAM;AAAA,EACjC;AACA,QAAM,gBAAgB;AAAA,IACpB,UAAU,OAAO,GAAG,IAAI,OAAO;AAAA,EACjC;AAGA,QAAM,eAAyB,CAAC;AAChC,QAAM,aAAa,KAAK,MAAM,KAAK;AACnC,QAAM,YAAY,KAAK,KAAK,KAAK;AACjC,WAAS,IAAI,GAAG,IAAI,KAAK,KAAK;AAC5B,QAAI,aAAa,GAAG;AAClB,mBAAa,KAAK,iCAAiC;AAAA,IACrD,WAAW,YAAY,MAAM,GAAG;AAC9B,mBAAa,KAAK,mCAAmC;AAAA,IACvD,OAAO;AACL,mBAAa,KAAK,kCAAkC;AAAA,IACtD;AAAA,EACF;AAEA,SACE,oCAAC,QAAK,WAAW,WAAW,WAAW,SAAS,GAAG,OAAO,eACvD,aAAa,IAAI,CAAC,KAAK,MACtB;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MACX,KAAK,gBAAgB,CAAC;AAAA,MACtB,OAAO;AAAA,MACP,SAAS,YAAY,KAAK,MAAM,IAAI,CAAC;AAAA;AAAA,IAErC,oCAAC,QAAK,WAAU,0BAAyB,OAAO,eAAe;AAAA,IAC/D,oCAAC,QAAK,WAAU,mBACd;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO;AAAA;AAAA,IACR,CACH;AAAA,EACF,CACD,CACH;AAEJ;AAEA,OAAO,YAAY;AAAA,EACjB,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EACrE,WAAW,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC;AAAA,EAClE,MAAM,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EAC9D,OAAO,UAAU;AAAA,EACjB,KAAK,UAAU;AAAA,EACf,QAAQ,UAAU;AAAA,EAClB,UAAU,UAAU;AACtB;AAEA,IAAO,eAAQ;","names":[]}
@@ -0,0 +1,24 @@
1
+ import PropTypes from 'prop-types';
2
+ import { AtSearchBarProps } from '../../../types/search-bar';
3
+ declare function AtSearchBar({ value, placeholder, maxLength, fixed, focus, disabled, showActionButton, actionName, inputType, className, customStyle, enableNative, onChange, onFocus, onBlur, onConfirm, onActionClick, onClear }: AtSearchBarProps): JSX.Element;
4
+ declare namespace AtSearchBar {
5
+ var propTypes: {
6
+ value: PropTypes.Requireable<string>;
7
+ placeholder: PropTypes.Requireable<string>;
8
+ maxLength: PropTypes.Requireable<number>;
9
+ fixed: PropTypes.Requireable<boolean>;
10
+ focus: PropTypes.Requireable<boolean>;
11
+ disabled: PropTypes.Requireable<boolean>;
12
+ showActionButton: PropTypes.Requireable<boolean>;
13
+ actionName: PropTypes.Requireable<string>;
14
+ inputType: PropTypes.Requireable<string>;
15
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
16
+ onFocus: PropTypes.Requireable<(...args: any[]) => any>;
17
+ onBlur: PropTypes.Requireable<(...args: any[]) => any>;
18
+ onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
19
+ onActionClick: PropTypes.Requireable<(...args: any[]) => any>;
20
+ onClear: PropTypes.Requireable<(...args: any[]) => any>;
21
+ enableNative: PropTypes.Requireable<boolean>;
22
+ };
23
+ }
24
+ export default AtSearchBar;
@@ -0,0 +1,150 @@
1
+ import classNames from "classnames";
2
+ import PropTypes from "prop-types";
3
+ import React, { useEffect, useState } from "react";
4
+ import { Input, Text, View } from "@tarojs/components";
5
+ import { useComponentLocale } from "../../hooks/useComponentLocale";
6
+ function AtSearchBar({
7
+ value = "",
8
+ placeholder,
9
+ maxLength = 140,
10
+ fixed = false,
11
+ focus = false,
12
+ disabled = false,
13
+ showActionButton = false,
14
+ actionName,
15
+ inputType = "text",
16
+ className,
17
+ customStyle,
18
+ enableNative = true,
19
+ onChange,
20
+ onFocus,
21
+ onBlur,
22
+ onConfirm,
23
+ onActionClick,
24
+ onClear
25
+ }) {
26
+ const locale = useComponentLocale("SearchBar");
27
+ const resolvedPlaceholder = placeholder != null ? placeholder : locale.placeholder;
28
+ const resolvedActionName = actionName != null ? actionName : locale.actionName;
29
+ const [isFocus, setIsFocus] = useState(!!focus);
30
+ useEffect(() => {
31
+ setIsFocus(!!focus);
32
+ }, [focus]);
33
+ const handleFocus = (event) => {
34
+ setIsFocus(true);
35
+ onFocus && onFocus(event);
36
+ };
37
+ const handleBlur = (event) => {
38
+ setIsFocus(false);
39
+ onBlur && onBlur(event);
40
+ };
41
+ const handleChange = (e) => {
42
+ onChange && onChange(e.detail.value, e);
43
+ };
44
+ const handleClear = (event) => {
45
+ if (onClear) {
46
+ onClear(event);
47
+ } else {
48
+ onChange && onChange("", event);
49
+ }
50
+ };
51
+ const handleConfirm = (event) => {
52
+ onConfirm && onConfirm(event);
53
+ };
54
+ const handleActionClick = (event) => {
55
+ onActionClick && onActionClick(event);
56
+ };
57
+ const fontSize = 14;
58
+ const rootCls = classNames(
59
+ "at-search-bar",
60
+ {
61
+ "at-search-bar--fixed": fixed
62
+ },
63
+ className
64
+ );
65
+ const placeholderWrapStyle = {};
66
+ const actionStyle = {};
67
+ if (isFocus || !isFocus && value) {
68
+ actionStyle.opacity = 1;
69
+ actionStyle.marginRight = `0`;
70
+ placeholderWrapStyle.flexGrow = 0;
71
+ } else if (!isFocus && !value) {
72
+ placeholderWrapStyle.flexGrow = 1;
73
+ actionStyle.opacity = 0;
74
+ actionStyle.marginRight = `-${(resolvedActionName.length + 1) * fontSize + fontSize / 2 + 10}px`;
75
+ }
76
+ if (showActionButton) {
77
+ actionStyle.opacity = 1;
78
+ actionStyle.marginRight = `0`;
79
+ }
80
+ const clearIconStyle = { display: "flex" };
81
+ const placeholderStyle = { visibility: "hidden" };
82
+ if (!value.length) {
83
+ clearIconStyle.display = "none";
84
+ placeholderStyle.visibility = "visible";
85
+ }
86
+ return /* @__PURE__ */ React.createElement(View, { className: rootCls, style: customStyle }, /* @__PURE__ */ React.createElement(View, { className: "at-search-bar__input-cnt" }, /* @__PURE__ */ React.createElement(
87
+ View,
88
+ {
89
+ className: "at-search-bar__placeholder-wrap",
90
+ style: placeholderWrapStyle
91
+ },
92
+ /* @__PURE__ */ React.createElement(Text, { className: "at-icon at-icon-search" }),
93
+ /* @__PURE__ */ React.createElement(Text, { className: "at-search-bar__placeholder", style: placeholderStyle }, isFocus ? "" : resolvedPlaceholder)
94
+ ), /* @__PURE__ */ React.createElement(
95
+ Input,
96
+ {
97
+ className: "at-search-bar__input",
98
+ type: inputType,
99
+ confirmType: "search",
100
+ value,
101
+ focus: isFocus,
102
+ disabled,
103
+ maxlength: maxLength,
104
+ enableNative,
105
+ onInput: handleChange,
106
+ onFocus: handleFocus,
107
+ onBlur: handleBlur,
108
+ onConfirm: handleConfirm
109
+ }
110
+ ), /* @__PURE__ */ React.createElement(
111
+ View,
112
+ {
113
+ className: "at-search-bar__clear",
114
+ style: clearIconStyle,
115
+ onTouchStart: handleClear
116
+ },
117
+ /* @__PURE__ */ React.createElement(Text, { className: "at-icon at-icon-close-circle" })
118
+ )), /* @__PURE__ */ React.createElement(
119
+ View,
120
+ {
121
+ className: "at-search-bar__action",
122
+ style: actionStyle,
123
+ onClick: handleActionClick
124
+ },
125
+ resolvedActionName
126
+ ));
127
+ }
128
+ AtSearchBar.propTypes = {
129
+ value: PropTypes.string,
130
+ placeholder: PropTypes.string,
131
+ maxLength: PropTypes.number,
132
+ fixed: PropTypes.bool,
133
+ focus: PropTypes.bool,
134
+ disabled: PropTypes.bool,
135
+ showActionButton: PropTypes.bool,
136
+ actionName: PropTypes.string,
137
+ inputType: PropTypes.oneOf(["text", "number", "idcard", "digit"]),
138
+ onChange: PropTypes.func,
139
+ onFocus: PropTypes.func,
140
+ onBlur: PropTypes.func,
141
+ onConfirm: PropTypes.func,
142
+ onActionClick: PropTypes.func,
143
+ onClear: PropTypes.func,
144
+ enableNative: PropTypes.bool
145
+ };
146
+ var search_bar_default = AtSearchBar;
147
+ export {
148
+ search_bar_default as default
149
+ };
150
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/search-bar/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React, { useEffect, useState } from 'react'\nimport { Input, Text, View } from '@tarojs/components'\nimport { CommonEvent } from '@tarojs/components/types/common'\nimport { useComponentLocale } from '../../hooks/useComponentLocale'\nimport { AtSearchBarProps } from '../../../types/search-bar'\n\ntype ExtendEvent = {\n target: {\n value: string\n }\n}\n\nfunction AtSearchBar({\n value = '',\n placeholder,\n maxLength = 140,\n fixed = false,\n focus = false,\n disabled = false,\n showActionButton = false,\n actionName,\n inputType = 'text',\n className,\n customStyle,\n enableNative = true,\n onChange,\n onFocus,\n onBlur,\n onConfirm,\n onActionClick,\n onClear\n}: AtSearchBarProps): JSX.Element {\n const locale = useComponentLocale('SearchBar')\n const resolvedPlaceholder = placeholder ?? locale.placeholder\n const resolvedActionName = actionName ?? locale.actionName\n const [isFocus, setIsFocus] = useState(!!focus)\n\n useEffect(() => {\n setIsFocus(!!focus)\n }, [focus])\n\n const handleFocus = (event: CommonEvent): void => {\n setIsFocus(true)\n onFocus && onFocus(event)\n }\n\n const handleBlur = (event: CommonEvent): void => {\n setIsFocus(false)\n onBlur && onBlur(event)\n }\n\n const handleChange = (e: CommonEvent & ExtendEvent): void => {\n onChange && onChange(e.detail.value, e)\n }\n\n const handleClear = (event: CommonEvent): void => {\n if (onClear) {\n onClear(event)\n } else {\n onChange && onChange('', event)\n }\n }\n\n const handleConfirm = (event: CommonEvent): void => {\n onConfirm && onConfirm(event)\n }\n\n const handleActionClick = (event: CommonEvent): void => {\n onActionClick && onActionClick(event)\n }\n\n const fontSize = 14\n const rootCls = classNames(\n 'at-search-bar',\n {\n 'at-search-bar--fixed': fixed\n },\n className\n )\n const placeholderWrapStyle: React.CSSProperties = {}\n const actionStyle: React.CSSProperties = {}\n if (isFocus || (!isFocus && value)) {\n actionStyle.opacity = 1\n actionStyle.marginRight = `0`\n placeholderWrapStyle.flexGrow = 0\n } else if (!isFocus && !value) {\n placeholderWrapStyle.flexGrow = 1\n actionStyle.opacity = 0\n actionStyle.marginRight = `-${\n (resolvedActionName.length + 1) * fontSize + fontSize / 2 + 10\n }px`\n }\n if (showActionButton) {\n actionStyle.opacity = 1\n actionStyle.marginRight = `0`\n }\n\n const clearIconStyle: React.CSSProperties = { display: 'flex' }\n const placeholderStyle: React.CSSProperties = { visibility: 'hidden' }\n if (!value.length) {\n clearIconStyle.display = 'none'\n placeholderStyle.visibility = 'visible'\n }\n\n return (\n <View className={rootCls} style={customStyle}>\n <View className='at-search-bar__input-cnt'>\n <View\n className='at-search-bar__placeholder-wrap'\n style={placeholderWrapStyle}\n >\n <Text className='at-icon at-icon-search'></Text>\n <Text className='at-search-bar__placeholder' style={placeholderStyle}>\n {isFocus ? '' : resolvedPlaceholder}\n </Text>\n </View>\n <Input\n className='at-search-bar__input'\n type={inputType}\n confirmType='search'\n value={value}\n focus={isFocus}\n disabled={disabled}\n maxlength={maxLength}\n // @ts-ignore ci 上面这个检查不通过, 暂时跳过ts检查\n enableNative={enableNative}\n onInput={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onConfirm={handleConfirm}\n />\n <View\n className='at-search-bar__clear'\n style={clearIconStyle}\n onTouchStart={handleClear}\n >\n <Text className='at-icon at-icon-close-circle'></Text>\n </View>\n </View>\n <View\n className='at-search-bar__action'\n style={actionStyle}\n onClick={handleActionClick}\n >\n {resolvedActionName}\n </View>\n </View>\n )\n}\n\nAtSearchBar.propTypes = {\n value: PropTypes.string,\n placeholder: PropTypes.string,\n maxLength: PropTypes.number,\n fixed: PropTypes.bool,\n focus: PropTypes.bool,\n disabled: PropTypes.bool,\n showActionButton: PropTypes.bool,\n actionName: PropTypes.string,\n inputType: PropTypes.oneOf(['text', 'number', 'idcard', 'digit']),\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onConfirm: PropTypes.func,\n onActionClick: PropTypes.func,\n onClear: PropTypes.func,\n enableNative: PropTypes.bool\n}\n\nexport default AtSearchBar\n"],"mappings":"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","names":[]}
@@ -0,0 +1,16 @@
1
+ import PropTypes from 'prop-types';
2
+ import { AtSegmentedControlProps } from '../../../types/segmented-control';
3
+ declare function AtSegmentedControl({ customStyle, className, disabled, values, selectedColor, current, color, fontSize, onClick }: AtSegmentedControlProps): JSX.Element;
4
+ declare namespace AtSegmentedControl {
5
+ var propTypes: {
6
+ customStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
7
+ className: PropTypes.Requireable<NonNullable<string | any[] | null | undefined>>;
8
+ current: PropTypes.Requireable<number>;
9
+ color: PropTypes.Requireable<string>;
10
+ fontSize: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
11
+ disabled: PropTypes.Requireable<boolean>;
12
+ values: PropTypes.Requireable<any[]>;
13
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
14
+ };
15
+ }
16
+ export default AtSegmentedControl;