@ioca/react 1.3.4 → 1.3.5

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 (893) hide show
  1. package/lib/cjs/components/affix/affix.js +63 -0
  2. package/lib/cjs/components/affix/affix.js.map +1 -0
  3. package/lib/cjs/components/affix/index.js +10 -0
  4. package/lib/cjs/components/affix/index.js.map +1 -0
  5. package/lib/cjs/components/affix/totop.js +18 -0
  6. package/lib/cjs/components/affix/totop.js.map +1 -0
  7. package/lib/cjs/components/badge/badge.js +17 -0
  8. package/lib/cjs/components/badge/badge.js.map +1 -0
  9. package/lib/cjs/components/badge/index.js +10 -0
  10. package/lib/cjs/components/badge/index.js.map +1 -0
  11. package/lib/cjs/components/button/button.js +62 -0
  12. package/lib/cjs/components/button/button.js.map +1 -0
  13. package/lib/cjs/components/button/group.js +25 -0
  14. package/lib/cjs/components/button/group.js.map +1 -0
  15. package/lib/cjs/components/button/index.js +13 -0
  16. package/lib/cjs/components/button/index.js.map +1 -0
  17. package/lib/cjs/components/button/toggle.js +50 -0
  18. package/lib/cjs/components/button/toggle.js.map +1 -0
  19. package/lib/cjs/components/card/card.js +17 -0
  20. package/lib/cjs/components/card/card.js.map +1 -0
  21. package/lib/cjs/components/card/index.js +10 -0
  22. package/lib/cjs/components/card/index.js.map +1 -0
  23. package/lib/cjs/components/checkbox/checkbox.js +46 -0
  24. package/lib/cjs/components/checkbox/checkbox.js.map +1 -0
  25. package/lib/cjs/components/checkbox/index.js +10 -0
  26. package/lib/cjs/components/checkbox/index.js.map +1 -0
  27. package/lib/cjs/components/checkbox/item.js +40 -0
  28. package/lib/cjs/components/checkbox/item.js.map +1 -0
  29. package/lib/cjs/components/collapse/collapse.js +78 -0
  30. package/lib/cjs/components/collapse/collapse.js.map +1 -0
  31. package/lib/cjs/components/collapse/index.js +10 -0
  32. package/lib/cjs/components/collapse/index.js.map +1 -0
  33. package/lib/cjs/components/collapse/item.js +12 -0
  34. package/lib/cjs/components/collapse/item.js.map +1 -0
  35. package/lib/cjs/components/datagrid/cell.js +27 -0
  36. package/lib/cjs/components/datagrid/cell.js.map +1 -0
  37. package/lib/cjs/components/datagrid/datagrid.js +117 -0
  38. package/lib/cjs/components/datagrid/datagrid.js.map +1 -0
  39. package/lib/cjs/components/datagrid/index.js +10 -0
  40. package/lib/cjs/components/datagrid/index.js.map +1 -0
  41. package/lib/cjs/components/datagrid/resize.js +45 -0
  42. package/lib/cjs/components/datagrid/resize.js.map +1 -0
  43. package/lib/cjs/components/datagrid/row.js +37 -0
  44. package/lib/cjs/components/datagrid/row.js.map +1 -0
  45. package/lib/cjs/components/datagrid/sorter.js +17 -0
  46. package/lib/cjs/components/datagrid/sorter.js.map +1 -0
  47. package/lib/cjs/components/description/description.js +32 -0
  48. package/lib/cjs/components/description/description.js.map +1 -0
  49. package/lib/cjs/components/description/index.js +10 -0
  50. package/lib/cjs/components/description/index.js.map +1 -0
  51. package/lib/cjs/components/drawer/drawer.js +66 -0
  52. package/lib/cjs/components/drawer/drawer.js.map +1 -0
  53. package/lib/cjs/components/drawer/index.js +10 -0
  54. package/lib/cjs/components/drawer/index.js.map +1 -0
  55. package/lib/cjs/components/dropdown/dropdown.js +17 -0
  56. package/lib/cjs/components/dropdown/dropdown.js.map +1 -0
  57. package/lib/cjs/components/dropdown/index.js +10 -0
  58. package/lib/cjs/components/dropdown/index.js.map +1 -0
  59. package/lib/cjs/components/dropdown/item.js +22 -0
  60. package/lib/cjs/components/dropdown/item.js.map +1 -0
  61. package/lib/cjs/components/editor/controls.js +87 -0
  62. package/lib/cjs/components/editor/controls.js.map +1 -0
  63. package/lib/cjs/components/editor/editor.js +83 -0
  64. package/lib/cjs/components/editor/editor.js.map +1 -0
  65. package/lib/cjs/components/editor/index.js +10 -0
  66. package/lib/cjs/components/editor/index.js.map +1 -0
  67. package/lib/cjs/components/flex/flex.js +32 -0
  68. package/lib/cjs/components/flex/flex.js.map +1 -0
  69. package/lib/cjs/components/flex/index.js +10 -0
  70. package/lib/cjs/components/flex/index.js.map +1 -0
  71. package/lib/cjs/components/form/context.js +10 -0
  72. package/lib/cjs/components/form/context.js.map +1 -0
  73. package/lib/cjs/components/form/field.js +77 -0
  74. package/lib/cjs/components/form/field.js.map +1 -0
  75. package/lib/cjs/components/form/form.js +57 -0
  76. package/lib/cjs/components/form/form.js.map +1 -0
  77. package/lib/cjs/components/form/index.js +10 -0
  78. package/lib/cjs/components/form/index.js.map +1 -0
  79. package/lib/cjs/components/form/useForm.js +130 -0
  80. package/lib/cjs/components/form/useForm.js.map +1 -0
  81. package/lib/cjs/components/icon/icon.js +27 -0
  82. package/lib/cjs/components/icon/icon.js.map +1 -0
  83. package/lib/cjs/components/icon/index.js +10 -0
  84. package/lib/cjs/components/icon/index.js.map +1 -0
  85. package/lib/cjs/components/image/image.js +76 -0
  86. package/lib/cjs/components/image/image.js.map +1 -0
  87. package/lib/cjs/components/image/index.js +11 -0
  88. package/lib/cjs/components/image/index.js.map +1 -0
  89. package/lib/cjs/components/image/list.js +47 -0
  90. package/lib/cjs/components/image/list.js.map +1 -0
  91. package/lib/cjs/components/input/container.js +18 -0
  92. package/lib/cjs/components/input/container.js.map +1 -0
  93. package/lib/cjs/components/input/index.js +15 -0
  94. package/lib/cjs/components/input/index.js.map +1 -0
  95. package/lib/cjs/components/input/input.js +67 -0
  96. package/lib/cjs/components/input/input.js.map +1 -0
  97. package/lib/cjs/components/input/number.js +58 -0
  98. package/lib/cjs/components/input/number.js.map +1 -0
  99. package/lib/cjs/components/input/range.js +71 -0
  100. package/lib/cjs/components/input/range.js.map +1 -0
  101. package/lib/cjs/components/input/textarea.js +51 -0
  102. package/lib/cjs/components/input/textarea.js.map +1 -0
  103. package/lib/cjs/components/list/index.js +10 -0
  104. package/lib/cjs/components/list/index.js.map +1 -0
  105. package/lib/cjs/components/list/item.js +18 -0
  106. package/lib/cjs/components/list/item.js.map +1 -0
  107. package/lib/cjs/components/list/list.js +28 -0
  108. package/lib/cjs/components/list/list.js.map +1 -0
  109. package/lib/cjs/components/loading/index.js +10 -0
  110. package/lib/cjs/components/loading/index.js.map +1 -0
  111. package/lib/cjs/components/loading/loading.js +21 -0
  112. package/lib/cjs/components/loading/loading.js.map +1 -0
  113. package/lib/cjs/components/message/index.js +10 -0
  114. package/lib/cjs/components/message/index.js.map +1 -0
  115. package/lib/cjs/components/message/message.js +178 -0
  116. package/lib/cjs/components/message/message.js.map +1 -0
  117. package/lib/cjs/components/modal/hookModal.js +31 -0
  118. package/lib/cjs/components/modal/hookModal.js.map +1 -0
  119. package/lib/cjs/components/modal/index.js +11 -0
  120. package/lib/cjs/components/modal/index.js.map +1 -0
  121. package/lib/cjs/components/modal/modal.js +108 -0
  122. package/lib/cjs/components/modal/modal.js.map +1 -0
  123. package/lib/cjs/components/modal/useModal.js +38 -0
  124. package/lib/cjs/components/modal/useModal.js.map +1 -0
  125. package/lib/cjs/components/pagination/index.js +10 -0
  126. package/lib/cjs/components/pagination/index.js.map +1 -0
  127. package/lib/cjs/components/pagination/page.js +28 -0
  128. package/lib/cjs/components/pagination/page.js.map +1 -0
  129. package/lib/cjs/components/pagination/pagination.js +48 -0
  130. package/lib/cjs/components/pagination/pagination.js.map +1 -0
  131. package/lib/cjs/components/picker/colors/footer.js +44 -0
  132. package/lib/cjs/components/picker/colors/footer.js.map +1 -0
  133. package/lib/cjs/components/picker/colors/handle.js +14 -0
  134. package/lib/cjs/components/picker/colors/handle.js.map +1 -0
  135. package/lib/cjs/components/picker/colors/index.js +61 -0
  136. package/lib/cjs/components/picker/colors/index.js.map +1 -0
  137. package/lib/cjs/components/picker/dates/dates.js +50 -0
  138. package/lib/cjs/components/picker/dates/dates.js.map +1 -0
  139. package/lib/cjs/components/picker/dates/index.js +66 -0
  140. package/lib/cjs/components/picker/dates/index.js.map +1 -0
  141. package/lib/cjs/components/picker/dates/panel.js +81 -0
  142. package/lib/cjs/components/picker/dates/panel.js.map +1 -0
  143. package/lib/cjs/components/picker/time/index.js +50 -0
  144. package/lib/cjs/components/picker/time/index.js.map +1 -0
  145. package/lib/cjs/components/picker/time/item.js +19 -0
  146. package/lib/cjs/components/picker/time/item.js.map +1 -0
  147. package/lib/cjs/components/picker/time/panel.js +87 -0
  148. package/lib/cjs/components/picker/time/panel.js.map +1 -0
  149. package/lib/cjs/components/popconfirm/index.js +10 -0
  150. package/lib/cjs/components/popconfirm/index.js.map +1 -0
  151. package/lib/cjs/components/popconfirm/popconfirm.js +58 -0
  152. package/lib/cjs/components/popconfirm/popconfirm.js.map +1 -0
  153. package/lib/cjs/components/popup/content.js +44 -0
  154. package/lib/cjs/components/popup/content.js.map +1 -0
  155. package/lib/cjs/components/popup/index.js +10 -0
  156. package/lib/cjs/components/popup/index.js.map +1 -0
  157. package/lib/cjs/components/popup/popup.js +223 -0
  158. package/lib/cjs/components/popup/popup.js.map +1 -0
  159. package/lib/cjs/components/progress/circle.js +17 -0
  160. package/lib/cjs/components/progress/circle.js.map +1 -0
  161. package/lib/cjs/components/progress/index.js +10 -0
  162. package/lib/cjs/components/progress/index.js.map +1 -0
  163. package/lib/cjs/components/progress/line.js +18 -0
  164. package/lib/cjs/components/progress/line.js.map +1 -0
  165. package/lib/cjs/components/progress/progress.js +87 -0
  166. package/lib/cjs/components/progress/progress.js.map +1 -0
  167. package/lib/cjs/components/radio/index.js +10 -0
  168. package/lib/cjs/components/radio/index.js.map +1 -0
  169. package/lib/cjs/components/radio/item.js +21 -0
  170. package/lib/cjs/components/radio/item.js.map +1 -0
  171. package/lib/cjs/components/radio/radio.js +39 -0
  172. package/lib/cjs/components/radio/radio.js.map +1 -0
  173. package/lib/cjs/components/resizable/index.js +10 -0
  174. package/lib/cjs/components/resizable/index.js.map +1 -0
  175. package/lib/cjs/components/resizable/resizable.js +65 -0
  176. package/lib/cjs/components/resizable/resizable.js.map +1 -0
  177. package/lib/cjs/components/select/index.js +10 -0
  178. package/lib/cjs/components/select/index.js.map +1 -0
  179. package/lib/cjs/components/select/options.js +51 -0
  180. package/lib/cjs/components/select/options.js.map +1 -0
  181. package/lib/cjs/components/select/select.js +97 -0
  182. package/lib/cjs/components/select/select.js.map +1 -0
  183. package/lib/cjs/components/step/divider.js +12 -0
  184. package/lib/cjs/components/step/divider.js.map +1 -0
  185. package/lib/cjs/components/step/index.js +10 -0
  186. package/lib/cjs/components/step/index.js.map +1 -0
  187. package/lib/cjs/components/step/item.js +26 -0
  188. package/lib/cjs/components/step/item.js.map +1 -0
  189. package/lib/cjs/components/step/step.js +40 -0
  190. package/lib/cjs/components/step/step.js.map +1 -0
  191. package/lib/cjs/components/swiper/index.js +10 -0
  192. package/lib/cjs/components/swiper/index.js.map +1 -0
  193. package/lib/cjs/components/swiper/item.js +29 -0
  194. package/lib/cjs/components/swiper/item.js.map +1 -0
  195. package/lib/cjs/components/swiper/swiper.js +238 -0
  196. package/lib/cjs/components/swiper/swiper.js.map +1 -0
  197. package/lib/cjs/components/tabs/index.js +10 -0
  198. package/lib/cjs/components/tabs/index.js.map +1 -0
  199. package/lib/cjs/components/tabs/item.js +12 -0
  200. package/lib/cjs/components/tabs/item.js.map +1 -0
  201. package/lib/cjs/components/tabs/tabs.js +215 -0
  202. package/lib/cjs/components/tabs/tabs.js.map +1 -0
  203. package/lib/cjs/components/tag/index.js +10 -0
  204. package/lib/cjs/components/tag/index.js.map +1 -0
  205. package/lib/cjs/components/tag/tag.js +22 -0
  206. package/lib/cjs/components/tag/tag.js.map +1 -0
  207. package/lib/cjs/components/text/highlight.js +32 -0
  208. package/lib/cjs/components/text/highlight.js.map +1 -0
  209. package/lib/cjs/components/text/index.js +15 -0
  210. package/lib/cjs/components/text/index.js.map +1 -0
  211. package/lib/cjs/components/text/number.js +31 -0
  212. package/lib/cjs/components/text/number.js.map +1 -0
  213. package/lib/cjs/components/text/text.js +32 -0
  214. package/lib/cjs/components/text/text.js.map +1 -0
  215. package/lib/cjs/components/text/time.js +24 -0
  216. package/lib/cjs/components/text/time.js.map +1 -0
  217. package/lib/cjs/components/tree/index.js +10 -0
  218. package/lib/cjs/components/tree/index.js.map +1 -0
  219. package/lib/cjs/components/tree/item.js +76 -0
  220. package/lib/cjs/components/tree/item.js.map +1 -0
  221. package/lib/cjs/components/tree/tree.js +136 -0
  222. package/lib/cjs/components/tree/tree.js.map +1 -0
  223. package/lib/cjs/components/upload/index.js +10 -0
  224. package/lib/cjs/components/upload/index.js.map +1 -0
  225. package/lib/cjs/components/upload/renderFile.js +66 -0
  226. package/lib/cjs/components/upload/renderFile.js.map +1 -0
  227. package/lib/cjs/components/upload/upload.js +127 -0
  228. package/lib/cjs/components/upload/upload.js.map +1 -0
  229. package/lib/cjs/components/utils/empty/index.js +15 -0
  230. package/lib/cjs/components/utils/empty/index.js.map +1 -0
  231. package/lib/cjs/components/utils/helpericon/helpericon.js +28 -0
  232. package/lib/cjs/components/utils/helpericon/helpericon.js.map +1 -0
  233. package/lib/cjs/components/utils/helpericon/index.js +10 -0
  234. package/lib/cjs/components/utils/helpericon/index.js.map +1 -0
  235. package/lib/cjs/components/video/index.js +10 -0
  236. package/lib/cjs/components/video/index.js.map +1 -0
  237. package/lib/cjs/components/video/video.js +175 -0
  238. package/lib/cjs/components/video/video.js.map +1 -0
  239. package/lib/cjs/index.js +89 -0
  240. package/lib/cjs/index.js.map +1 -0
  241. package/lib/cjs/js/hooks.js +115 -0
  242. package/lib/cjs/js/hooks.js.map +1 -0
  243. package/lib/cjs/js/usePreview/content.js +148 -0
  244. package/lib/cjs/js/usePreview/content.js.map +1 -0
  245. package/lib/cjs/js/usePreview/index.js +27 -0
  246. package/lib/cjs/js/usePreview/index.js.map +1 -0
  247. package/lib/cjs/js/usePreview/renderFile.js +24 -0
  248. package/lib/cjs/js/usePreview/renderFile.js.map +1 -0
  249. package/lib/cjs/js/usePreview/type.js +13 -0
  250. package/lib/cjs/js/usePreview/type.js.map +1 -0
  251. package/lib/cjs/js/useRipple/index.js +47 -0
  252. package/lib/cjs/js/useRipple/index.js.map +1 -0
  253. package/lib/cjs/js/utils.js +281 -0
  254. package/lib/cjs/js/utils.js.map +1 -0
  255. package/lib/css/index.css +1 -1
  256. package/lib/css/index.css.map +1 -1
  257. package/lib/es/components/affix/affix.js +59 -0
  258. package/lib/es/components/affix/affix.js.map +1 -0
  259. package/lib/es/components/affix/index.js +6 -0
  260. package/lib/{components/badge → es/components/affix}/index.js.map +1 -1
  261. package/lib/es/components/affix/totop.js +14 -0
  262. package/lib/es/components/affix/totop.js.map +1 -0
  263. package/lib/es/components/badge/badge.js +13 -0
  264. package/lib/es/components/badge/badge.js.map +1 -0
  265. package/lib/es/components/badge/index.js +6 -0
  266. package/lib/{components/checkbox → es/components/badge}/index.js.map +1 -1
  267. package/lib/es/components/button/button.js +58 -0
  268. package/lib/es/components/button/button.js.map +1 -0
  269. package/lib/es/components/button/group.js +21 -0
  270. package/lib/es/components/button/group.js.map +1 -0
  271. package/lib/es/components/button/index.js +9 -0
  272. package/lib/es/components/button/index.js.map +1 -0
  273. package/lib/es/components/button/toggle.js +46 -0
  274. package/lib/es/components/button/toggle.js.map +1 -0
  275. package/lib/es/components/card/card.js +13 -0
  276. package/lib/es/components/card/card.js.map +1 -0
  277. package/lib/es/components/card/index.js +6 -0
  278. package/lib/{components → es/components}/card/index.js.map +1 -1
  279. package/lib/es/components/checkbox/checkbox.js +42 -0
  280. package/lib/es/components/checkbox/checkbox.js.map +1 -0
  281. package/lib/es/components/checkbox/index.js +6 -0
  282. package/lib/{components/affix → es/components/checkbox}/index.js.map +1 -1
  283. package/lib/es/components/checkbox/item.js +36 -0
  284. package/lib/es/components/checkbox/item.js.map +1 -0
  285. package/lib/es/components/collapse/collapse.js +74 -0
  286. package/lib/es/components/collapse/collapse.js.map +1 -0
  287. package/lib/es/components/collapse/index.js +6 -0
  288. package/lib/es/components/collapse/index.js.map +1 -0
  289. package/lib/es/components/collapse/item.js +8 -0
  290. package/lib/es/components/collapse/item.js.map +1 -0
  291. package/lib/es/components/datagrid/cell.js +24 -0
  292. package/lib/es/components/datagrid/cell.js.map +1 -0
  293. package/lib/es/components/datagrid/datagrid.js +113 -0
  294. package/lib/es/components/datagrid/datagrid.js.map +1 -0
  295. package/lib/es/components/datagrid/index.js +6 -0
  296. package/lib/es/components/datagrid/index.js.map +1 -0
  297. package/lib/es/components/datagrid/resize.js +41 -0
  298. package/lib/es/components/datagrid/resize.js.map +1 -0
  299. package/lib/es/components/datagrid/row.js +32 -0
  300. package/lib/es/components/datagrid/row.js.map +1 -0
  301. package/lib/es/components/datagrid/sorter.js +13 -0
  302. package/lib/es/components/datagrid/sorter.js.map +1 -0
  303. package/lib/es/components/description/description.js +28 -0
  304. package/lib/es/components/description/description.js.map +1 -0
  305. package/lib/es/components/description/index.js +6 -0
  306. package/lib/es/components/description/index.js.map +1 -0
  307. package/lib/es/components/drawer/drawer.js +62 -0
  308. package/lib/es/components/drawer/drawer.js.map +1 -0
  309. package/lib/es/components/drawer/index.js +6 -0
  310. package/lib/es/components/drawer/index.js.map +1 -0
  311. package/lib/es/components/dropdown/dropdown.js +13 -0
  312. package/lib/es/components/dropdown/dropdown.js.map +1 -0
  313. package/lib/es/components/dropdown/index.js +6 -0
  314. package/lib/es/components/dropdown/index.js.map +1 -0
  315. package/lib/es/components/dropdown/item.js +18 -0
  316. package/lib/es/components/dropdown/item.js.map +1 -0
  317. package/lib/es/components/editor/controls.js +81 -0
  318. package/lib/es/components/editor/controls.js.map +1 -0
  319. package/lib/es/components/editor/editor.js +79 -0
  320. package/lib/es/components/editor/editor.js.map +1 -0
  321. package/lib/es/components/editor/index.js +6 -0
  322. package/lib/es/components/editor/index.js.map +1 -0
  323. package/lib/es/components/flex/flex.js +28 -0
  324. package/lib/es/components/flex/flex.js.map +1 -0
  325. package/lib/es/components/flex/index.js +6 -0
  326. package/lib/es/components/flex/index.js.map +1 -0
  327. package/lib/es/components/form/context.js +6 -0
  328. package/lib/es/components/form/context.js.map +1 -0
  329. package/lib/es/components/form/field.js +73 -0
  330. package/lib/es/components/form/field.js.map +1 -0
  331. package/lib/es/components/form/form.js +53 -0
  332. package/lib/es/components/form/form.js.map +1 -0
  333. package/lib/es/components/form/index.js +6 -0
  334. package/lib/es/components/form/index.js.map +1 -0
  335. package/lib/es/components/form/useForm.js +125 -0
  336. package/lib/es/components/form/useForm.js.map +1 -0
  337. package/lib/es/components/icon/icon.js +23 -0
  338. package/lib/es/components/icon/icon.js.map +1 -0
  339. package/lib/es/components/icon/index.js +6 -0
  340. package/lib/es/components/icon/index.js.map +1 -0
  341. package/lib/es/components/image/image.js +72 -0
  342. package/lib/es/components/image/image.js.map +1 -0
  343. package/lib/es/components/image/index.js +7 -0
  344. package/lib/es/components/image/index.js.map +1 -0
  345. package/lib/es/components/image/list.js +43 -0
  346. package/lib/es/components/image/list.js.map +1 -0
  347. package/lib/es/components/input/container.js +14 -0
  348. package/lib/es/components/input/container.js.map +1 -0
  349. package/lib/es/components/input/index.js +11 -0
  350. package/lib/es/components/input/index.js.map +1 -0
  351. package/lib/es/components/input/input.js +63 -0
  352. package/lib/es/components/input/input.js.map +1 -0
  353. package/lib/es/components/input/number.js +54 -0
  354. package/lib/es/components/input/number.js.map +1 -0
  355. package/lib/es/components/input/range.js +67 -0
  356. package/lib/es/components/input/range.js.map +1 -0
  357. package/lib/es/components/input/textarea.js +47 -0
  358. package/lib/es/components/input/textarea.js.map +1 -0
  359. package/lib/es/components/list/index.js +6 -0
  360. package/lib/es/components/list/index.js.map +1 -0
  361. package/lib/es/components/list/item.js +14 -0
  362. package/lib/es/components/list/item.js.map +1 -0
  363. package/lib/es/components/list/list.js +24 -0
  364. package/lib/es/components/list/list.js.map +1 -0
  365. package/lib/es/components/loading/index.js +6 -0
  366. package/lib/es/components/loading/index.js.map +1 -0
  367. package/lib/es/components/loading/loading.js +17 -0
  368. package/lib/es/components/loading/loading.js.map +1 -0
  369. package/lib/es/components/message/index.js +6 -0
  370. package/lib/es/components/message/index.js.map +1 -0
  371. package/lib/es/components/message/message.js +174 -0
  372. package/lib/es/components/message/message.js.map +1 -0
  373. package/lib/es/components/modal/hookModal.js +27 -0
  374. package/lib/es/components/modal/hookModal.js.map +1 -0
  375. package/lib/es/components/modal/index.js +7 -0
  376. package/lib/es/components/modal/index.js.map +1 -0
  377. package/lib/es/components/modal/modal.js +104 -0
  378. package/lib/es/components/modal/modal.js.map +1 -0
  379. package/lib/es/components/modal/useModal.js +34 -0
  380. package/lib/es/components/modal/useModal.js.map +1 -0
  381. package/lib/es/components/pagination/index.js +6 -0
  382. package/lib/es/components/pagination/index.js.map +1 -0
  383. package/lib/es/components/pagination/page.js +24 -0
  384. package/lib/es/components/pagination/page.js.map +1 -0
  385. package/lib/es/components/pagination/pagination.js +44 -0
  386. package/lib/es/components/pagination/pagination.js.map +1 -0
  387. package/lib/es/components/picker/colors/footer.js +39 -0
  388. package/lib/es/components/picker/colors/footer.js.map +1 -0
  389. package/lib/es/components/picker/colors/handle.js +10 -0
  390. package/lib/es/components/picker/colors/handle.js.map +1 -0
  391. package/lib/es/components/picker/colors/index.js +57 -0
  392. package/lib/es/components/picker/colors/index.js.map +1 -0
  393. package/lib/es/components/picker/dates/dates.js +46 -0
  394. package/lib/es/components/picker/dates/dates.js.map +1 -0
  395. package/lib/es/components/picker/dates/index.js +62 -0
  396. package/lib/es/components/picker/dates/index.js.map +1 -0
  397. package/lib/es/components/picker/dates/panel.js +77 -0
  398. package/lib/es/components/picker/dates/panel.js.map +1 -0
  399. package/lib/es/components/picker/time/index.js +46 -0
  400. package/lib/es/components/picker/time/index.js.map +1 -0
  401. package/lib/es/components/picker/time/item.js +15 -0
  402. package/lib/es/components/picker/time/item.js.map +1 -0
  403. package/lib/es/components/picker/time/panel.js +83 -0
  404. package/lib/es/components/picker/time/panel.js.map +1 -0
  405. package/lib/es/components/popconfirm/index.js +6 -0
  406. package/lib/es/components/popconfirm/index.js.map +1 -0
  407. package/lib/es/components/popconfirm/popconfirm.js +54 -0
  408. package/lib/es/components/popconfirm/popconfirm.js.map +1 -0
  409. package/lib/es/components/popup/content.js +40 -0
  410. package/lib/es/components/popup/content.js.map +1 -0
  411. package/lib/es/components/popup/index.js +6 -0
  412. package/lib/es/components/popup/index.js.map +1 -0
  413. package/lib/es/components/popup/popup.js +219 -0
  414. package/lib/es/components/popup/popup.js.map +1 -0
  415. package/lib/es/components/progress/circle.js +13 -0
  416. package/lib/es/components/progress/circle.js.map +1 -0
  417. package/lib/es/components/progress/index.js +6 -0
  418. package/lib/es/components/progress/index.js.map +1 -0
  419. package/lib/es/components/progress/line.js +14 -0
  420. package/lib/es/components/progress/line.js.map +1 -0
  421. package/lib/es/components/progress/progress.js +83 -0
  422. package/lib/es/components/progress/progress.js.map +1 -0
  423. package/lib/es/components/radio/index.js +6 -0
  424. package/lib/es/components/radio/index.js.map +1 -0
  425. package/lib/es/components/radio/item.js +17 -0
  426. package/lib/es/components/radio/item.js.map +1 -0
  427. package/lib/es/components/radio/radio.js +35 -0
  428. package/lib/es/components/radio/radio.js.map +1 -0
  429. package/lib/es/components/resizable/index.js +6 -0
  430. package/lib/es/components/resizable/index.js.map +1 -0
  431. package/lib/es/components/resizable/resizable.js +61 -0
  432. package/lib/es/components/resizable/resizable.js.map +1 -0
  433. package/lib/es/components/select/index.js +6 -0
  434. package/lib/es/components/select/index.js.map +1 -0
  435. package/lib/es/components/select/options.js +47 -0
  436. package/lib/es/components/select/options.js.map +1 -0
  437. package/lib/es/components/select/select.js +93 -0
  438. package/lib/es/components/select/select.js.map +1 -0
  439. package/lib/es/components/step/divider.js +8 -0
  440. package/lib/es/components/step/divider.js.map +1 -0
  441. package/lib/es/components/step/index.js +6 -0
  442. package/lib/es/components/step/index.js.map +1 -0
  443. package/lib/es/components/step/item.js +22 -0
  444. package/lib/es/components/step/item.js.map +1 -0
  445. package/lib/es/components/step/step.js +36 -0
  446. package/lib/es/components/step/step.js.map +1 -0
  447. package/lib/es/components/swiper/index.js +6 -0
  448. package/lib/es/components/swiper/index.js.map +1 -0
  449. package/lib/es/components/swiper/item.js +25 -0
  450. package/lib/es/components/swiper/item.js.map +1 -0
  451. package/lib/es/components/swiper/swiper.js +234 -0
  452. package/lib/es/components/swiper/swiper.js.map +1 -0
  453. package/lib/es/components/tabs/index.js +6 -0
  454. package/lib/es/components/tabs/index.js.map +1 -0
  455. package/lib/es/components/tabs/item.js +8 -0
  456. package/lib/es/components/tabs/item.js.map +1 -0
  457. package/lib/es/components/tabs/tabs.js +211 -0
  458. package/lib/es/components/tabs/tabs.js.map +1 -0
  459. package/lib/es/components/tag/index.js +6 -0
  460. package/lib/es/components/tag/index.js.map +1 -0
  461. package/lib/es/components/tag/tag.js +18 -0
  462. package/lib/es/components/tag/tag.js.map +1 -0
  463. package/lib/es/components/text/highlight.js +28 -0
  464. package/lib/es/components/text/highlight.js.map +1 -0
  465. package/lib/es/components/text/index.js +11 -0
  466. package/lib/es/components/text/index.js.map +1 -0
  467. package/lib/es/components/text/number.js +27 -0
  468. package/lib/es/components/text/number.js.map +1 -0
  469. package/lib/es/components/text/text.js +28 -0
  470. package/lib/es/components/text/text.js.map +1 -0
  471. package/lib/es/components/text/time.js +20 -0
  472. package/lib/es/components/text/time.js.map +1 -0
  473. package/lib/es/components/tree/index.js +6 -0
  474. package/lib/es/components/tree/index.js.map +1 -0
  475. package/lib/es/components/tree/item.js +73 -0
  476. package/lib/es/components/tree/item.js.map +1 -0
  477. package/lib/es/components/tree/tree.js +132 -0
  478. package/lib/es/components/tree/tree.js.map +1 -0
  479. package/lib/es/components/upload/index.js +6 -0
  480. package/lib/es/components/upload/index.js.map +1 -0
  481. package/lib/es/components/upload/renderFile.js +61 -0
  482. package/lib/es/components/upload/renderFile.js.map +1 -0
  483. package/lib/es/components/upload/upload.js +123 -0
  484. package/lib/es/components/upload/upload.js.map +1 -0
  485. package/lib/es/components/utils/empty/index.js +11 -0
  486. package/lib/es/components/utils/empty/index.js.map +1 -0
  487. package/lib/es/components/utils/helpericon/helpericon.js +24 -0
  488. package/lib/es/components/utils/helpericon/helpericon.js.map +1 -0
  489. package/lib/es/components/utils/helpericon/index.js +6 -0
  490. package/lib/es/components/utils/helpericon/index.js.map +1 -0
  491. package/lib/es/components/video/index.js +6 -0
  492. package/lib/es/components/video/index.js.map +1 -0
  493. package/lib/es/components/video/video.js +171 -0
  494. package/lib/es/components/video/video.js.map +1 -0
  495. package/lib/es/index.js +45 -0
  496. package/lib/es/index.js.map +1 -0
  497. package/lib/es/js/hooks.js +109 -0
  498. package/lib/es/js/hooks.js.map +1 -0
  499. package/lib/es/js/usePreview/content.js +144 -0
  500. package/lib/es/js/usePreview/content.js.map +1 -0
  501. package/lib/es/js/usePreview/index.js +23 -0
  502. package/lib/es/js/usePreview/index.js.map +1 -0
  503. package/lib/es/js/usePreview/renderFile.js +20 -0
  504. package/lib/es/js/usePreview/renderFile.js.map +1 -0
  505. package/lib/es/js/usePreview/type.js +13 -0
  506. package/lib/es/js/usePreview/type.js.map +1 -0
  507. package/lib/es/js/useRipple/index.js +43 -0
  508. package/lib/es/js/useRipple/index.js.map +1 -0
  509. package/lib/es/js/utils.js +265 -0
  510. package/lib/es/js/utils.js.map +1 -0
  511. package/lib/index.js +4317 -2
  512. package/lib/types/components/affix/affix.d.ts +0 -2
  513. package/lib/types/components/affix/index.d.ts +0 -2
  514. package/lib/types/components/affix/totop.d.ts +0 -2
  515. package/lib/types/components/affix/type.d.ts +0 -2
  516. package/lib/types/components/badge/badge.d.ts +0 -2
  517. package/lib/types/components/badge/index.d.ts +0 -2
  518. package/lib/types/components/badge/type.d.ts +0 -2
  519. package/lib/types/components/button/button.d.ts +0 -2
  520. package/lib/types/components/button/group.d.ts +0 -2
  521. package/lib/types/components/button/index.d.ts +0 -2
  522. package/lib/types/components/button/toggle.d.ts +0 -2
  523. package/lib/types/components/button/type.d.ts +0 -2
  524. package/lib/types/components/card/card.d.ts +0 -2
  525. package/lib/types/components/card/index.d.ts +0 -2
  526. package/lib/types/components/card/type.d.ts +0 -2
  527. package/lib/types/components/checkbox/checkbox.d.ts +0 -2
  528. package/lib/types/components/checkbox/index.d.ts +0 -2
  529. package/lib/types/components/checkbox/item.d.ts +0 -2
  530. package/lib/types/components/checkbox/type.d.ts +0 -2
  531. package/lib/types/components/collapse/collapse.d.ts +0 -2
  532. package/lib/types/components/collapse/index.d.ts +0 -2
  533. package/lib/types/components/collapse/item.d.ts +0 -2
  534. package/lib/types/components/collapse/type.d.ts +0 -2
  535. package/lib/types/components/datagrid/datagrid.d.ts +0 -2
  536. package/lib/types/components/datagrid/index.d.ts +0 -2
  537. package/lib/types/components/datagrid/type.d.ts +0 -2
  538. package/lib/types/components/description/description.d.ts +0 -2
  539. package/lib/types/components/description/index.d.ts +0 -2
  540. package/lib/types/components/description/type.d.ts +0 -2
  541. package/lib/types/components/drawer/drawer.d.ts +0 -2
  542. package/lib/types/components/drawer/index.d.ts +0 -2
  543. package/lib/types/components/drawer/type.d.ts +0 -2
  544. package/lib/types/components/dropdown/dropdown.d.ts +0 -2
  545. package/lib/types/components/dropdown/index.d.ts +0 -2
  546. package/lib/types/components/dropdown/type.d.ts +0 -2
  547. package/lib/types/components/editor/editor.d.ts +0 -2
  548. package/lib/types/components/editor/index.d.ts +0 -2
  549. package/lib/types/components/editor/type.d.ts +0 -2
  550. package/lib/types/components/flex/flex.d.ts +0 -2
  551. package/lib/types/components/flex/index.d.ts +0 -2
  552. package/lib/types/components/flex/type.d.ts +0 -2
  553. package/lib/types/components/form/field.d.ts +0 -2
  554. package/lib/types/components/form/form.d.ts +0 -2
  555. package/lib/types/components/form/index.d.ts +0 -2
  556. package/lib/types/components/form/type.d.ts +0 -2
  557. package/lib/types/components/form/useForm.d.ts +0 -2
  558. package/lib/types/components/icon/icon.d.ts +0 -2
  559. package/lib/types/components/icon/index.d.ts +0 -2
  560. package/lib/types/components/icon/type.d.ts +0 -2
  561. package/lib/types/components/image/image.d.ts +0 -2
  562. package/lib/types/components/image/index.d.ts +0 -2
  563. package/lib/types/components/image/list.d.ts +0 -2
  564. package/lib/types/components/image/type.d.ts +0 -2
  565. package/lib/types/components/input/index.d.ts +0 -2
  566. package/lib/types/components/input/input.d.ts +0 -2
  567. package/lib/types/components/input/number.d.ts +0 -2
  568. package/lib/types/components/input/range.d.ts +0 -2
  569. package/lib/types/components/input/textarea.d.ts +0 -2
  570. package/lib/types/components/input/type.d.ts +0 -2
  571. package/lib/types/components/list/index.d.ts +0 -2
  572. package/lib/types/components/list/list.d.ts +0 -2
  573. package/lib/types/components/list/type.d.ts +0 -2
  574. package/lib/types/components/loading/index.d.ts +0 -2
  575. package/lib/types/components/loading/loading.d.ts +0 -2
  576. package/lib/types/components/loading/type.d.ts +0 -2
  577. package/lib/types/components/message/index.d.ts +0 -2
  578. package/lib/types/components/message/message.d.ts +0 -2
  579. package/lib/types/components/message/type.d.ts +0 -2
  580. package/lib/types/components/modal/index.d.ts +0 -2
  581. package/lib/types/components/modal/modal.d.ts +0 -2
  582. package/lib/types/components/modal/type.d.ts +0 -2
  583. package/lib/types/components/modal/useModal.d.ts +0 -2
  584. package/lib/types/components/pagination/index.d.ts +0 -2
  585. package/lib/types/components/pagination/pagination.d.ts +0 -2
  586. package/lib/types/components/pagination/type.d.ts +0 -2
  587. package/lib/types/components/picker/colors/index.d.ts +0 -2
  588. package/lib/types/components/picker/dates/index.d.ts +0 -2
  589. package/lib/types/components/picker/time/index.d.ts +0 -2
  590. package/lib/types/components/picker/type.d.ts +2 -4
  591. package/lib/types/components/popconfirm/index.d.ts +0 -2
  592. package/lib/types/components/popconfirm/popconfirm.d.ts +0 -2
  593. package/lib/types/components/popconfirm/type.d.ts +0 -2
  594. package/lib/types/components/popup/index.d.ts +0 -2
  595. package/lib/types/components/popup/popup.d.ts +0 -2
  596. package/lib/types/components/popup/type.d.ts +0 -2
  597. package/lib/types/components/progress/index.d.ts +0 -2
  598. package/lib/types/components/progress/progress.d.ts +0 -2
  599. package/lib/types/components/progress/type.d.ts +0 -2
  600. package/lib/types/components/radio/index.d.ts +0 -2
  601. package/lib/types/components/radio/item.d.ts +0 -2
  602. package/lib/types/components/radio/radio.d.ts +0 -2
  603. package/lib/types/components/radio/type.d.ts +0 -2
  604. package/lib/types/components/resizable/index.d.ts +0 -2
  605. package/lib/types/components/resizable/resizable.d.ts +0 -2
  606. package/lib/types/components/resizable/type.d.ts +0 -2
  607. package/lib/types/components/select/index.d.ts +0 -2
  608. package/lib/types/components/select/select.d.ts +0 -2
  609. package/lib/types/components/select/type.d.ts +0 -2
  610. package/lib/types/components/step/index.d.ts +0 -2
  611. package/lib/types/components/step/item.d.ts +0 -2
  612. package/lib/types/components/step/step.d.ts +0 -2
  613. package/lib/types/components/step/type.d.ts +0 -2
  614. package/lib/types/components/swiper/index.d.ts +0 -2
  615. package/lib/types/components/swiper/item.d.ts +0 -2
  616. package/lib/types/components/swiper/swiper.d.ts +0 -2
  617. package/lib/types/components/swiper/type.d.ts +0 -2
  618. package/lib/types/components/tabs/index.d.ts +0 -2
  619. package/lib/types/components/tabs/item.d.ts +0 -2
  620. package/lib/types/components/tabs/tabs.d.ts +0 -2
  621. package/lib/types/components/tabs/type.d.ts +0 -2
  622. package/lib/types/components/tag/index.d.ts +0 -2
  623. package/lib/types/components/tag/tag.d.ts +0 -2
  624. package/lib/types/components/tag/type.d.ts +0 -2
  625. package/lib/types/components/text/highlight.d.ts +0 -2
  626. package/lib/types/components/text/index.d.ts +0 -2
  627. package/lib/types/components/text/number.d.ts +0 -2
  628. package/lib/types/components/text/text.d.ts +0 -2
  629. package/lib/types/components/text/time.d.ts +0 -2
  630. package/lib/types/components/text/type.d.ts +0 -2
  631. package/lib/types/components/tree/index.d.ts +0 -2
  632. package/lib/types/components/tree/tree.d.ts +0 -2
  633. package/lib/types/components/tree/type.d.ts +0 -2
  634. package/lib/types/components/upload/index.d.ts +0 -2
  635. package/lib/types/components/upload/type.d.ts +0 -2
  636. package/lib/types/components/upload/upload.d.ts +0 -2
  637. package/lib/types/components/video/index.d.ts +0 -2
  638. package/lib/types/components/video/type.d.ts +0 -2
  639. package/lib/types/components/video/video.d.ts +0 -2
  640. package/lib/types/index.d.ts +0 -2
  641. package/lib/types/js/usePreview/index.d.ts +0 -2
  642. package/lib/types/js/usePreview/type.d.ts +0 -2
  643. package/lib/types/type/index.d.ts +0 -2
  644. package/package.json +20 -11
  645. package/lib/components/affix/affix.js +0 -2
  646. package/lib/components/affix/affix.js.map +0 -1
  647. package/lib/components/affix/index.js +0 -2
  648. package/lib/components/affix/totop.js +0 -2
  649. package/lib/components/affix/totop.js.map +0 -1
  650. package/lib/components/badge/badge.js +0 -2
  651. package/lib/components/badge/badge.js.map +0 -1
  652. package/lib/components/badge/index.js +0 -2
  653. package/lib/components/button/button.js +0 -2
  654. package/lib/components/button/button.js.map +0 -1
  655. package/lib/components/button/group.js +0 -2
  656. package/lib/components/button/group.js.map +0 -1
  657. package/lib/components/button/index.js +0 -2
  658. package/lib/components/button/index.js.map +0 -1
  659. package/lib/components/button/toggle.js +0 -2
  660. package/lib/components/button/toggle.js.map +0 -1
  661. package/lib/components/card/card.js +0 -2
  662. package/lib/components/card/card.js.map +0 -1
  663. package/lib/components/card/index.js +0 -2
  664. package/lib/components/checkbox/checkbox.js +0 -2
  665. package/lib/components/checkbox/checkbox.js.map +0 -1
  666. package/lib/components/checkbox/index.js +0 -2
  667. package/lib/components/checkbox/item.js +0 -2
  668. package/lib/components/checkbox/item.js.map +0 -1
  669. package/lib/components/collapse/collapse.js +0 -2
  670. package/lib/components/collapse/collapse.js.map +0 -1
  671. package/lib/components/collapse/index.js +0 -2
  672. package/lib/components/collapse/index.js.map +0 -1
  673. package/lib/components/collapse/item.js +0 -2
  674. package/lib/components/collapse/item.js.map +0 -1
  675. package/lib/components/datagrid/cell.js +0 -2
  676. package/lib/components/datagrid/cell.js.map +0 -1
  677. package/lib/components/datagrid/datagrid.js +0 -2
  678. package/lib/components/datagrid/datagrid.js.map +0 -1
  679. package/lib/components/datagrid/index.js +0 -2
  680. package/lib/components/datagrid/index.js.map +0 -1
  681. package/lib/components/datagrid/resize.js +0 -2
  682. package/lib/components/datagrid/resize.js.map +0 -1
  683. package/lib/components/datagrid/row.js +0 -2
  684. package/lib/components/datagrid/row.js.map +0 -1
  685. package/lib/components/datagrid/sorter.js +0 -2
  686. package/lib/components/datagrid/sorter.js.map +0 -1
  687. package/lib/components/description/description.js +0 -2
  688. package/lib/components/description/description.js.map +0 -1
  689. package/lib/components/description/index.js +0 -2
  690. package/lib/components/description/index.js.map +0 -1
  691. package/lib/components/drawer/drawer.js +0 -2
  692. package/lib/components/drawer/drawer.js.map +0 -1
  693. package/lib/components/drawer/index.js +0 -2
  694. package/lib/components/drawer/index.js.map +0 -1
  695. package/lib/components/dropdown/dropdown.js +0 -2
  696. package/lib/components/dropdown/dropdown.js.map +0 -1
  697. package/lib/components/dropdown/index.js +0 -2
  698. package/lib/components/dropdown/index.js.map +0 -1
  699. package/lib/components/dropdown/item.js +0 -2
  700. package/lib/components/dropdown/item.js.map +0 -1
  701. package/lib/components/editor/controls.js +0 -2
  702. package/lib/components/editor/controls.js.map +0 -1
  703. package/lib/components/editor/editor.js +0 -2
  704. package/lib/components/editor/editor.js.map +0 -1
  705. package/lib/components/editor/index.js +0 -2
  706. package/lib/components/editor/index.js.map +0 -1
  707. package/lib/components/flex/flex.js +0 -2
  708. package/lib/components/flex/flex.js.map +0 -1
  709. package/lib/components/flex/index.js +0 -2
  710. package/lib/components/flex/index.js.map +0 -1
  711. package/lib/components/form/context.js +0 -2
  712. package/lib/components/form/context.js.map +0 -1
  713. package/lib/components/form/field.js +0 -2
  714. package/lib/components/form/field.js.map +0 -1
  715. package/lib/components/form/form.js +0 -2
  716. package/lib/components/form/form.js.map +0 -1
  717. package/lib/components/form/index.js +0 -2
  718. package/lib/components/form/index.js.map +0 -1
  719. package/lib/components/form/useForm.js +0 -2
  720. package/lib/components/form/useForm.js.map +0 -1
  721. package/lib/components/icon/icon.js +0 -2
  722. package/lib/components/icon/icon.js.map +0 -1
  723. package/lib/components/icon/index.js +0 -2
  724. package/lib/components/icon/index.js.map +0 -1
  725. package/lib/components/image/image.js +0 -2
  726. package/lib/components/image/image.js.map +0 -1
  727. package/lib/components/image/index.js +0 -2
  728. package/lib/components/image/index.js.map +0 -1
  729. package/lib/components/image/list.js +0 -2
  730. package/lib/components/image/list.js.map +0 -1
  731. package/lib/components/input/container.js +0 -2
  732. package/lib/components/input/container.js.map +0 -1
  733. package/lib/components/input/index.js +0 -2
  734. package/lib/components/input/index.js.map +0 -1
  735. package/lib/components/input/input.js +0 -2
  736. package/lib/components/input/input.js.map +0 -1
  737. package/lib/components/input/number.js +0 -2
  738. package/lib/components/input/number.js.map +0 -1
  739. package/lib/components/input/range.js +0 -2
  740. package/lib/components/input/range.js.map +0 -1
  741. package/lib/components/input/textarea.js +0 -2
  742. package/lib/components/input/textarea.js.map +0 -1
  743. package/lib/components/list/index.js +0 -2
  744. package/lib/components/list/index.js.map +0 -1
  745. package/lib/components/list/item.js +0 -2
  746. package/lib/components/list/item.js.map +0 -1
  747. package/lib/components/list/list.js +0 -2
  748. package/lib/components/list/list.js.map +0 -1
  749. package/lib/components/loading/index.js +0 -2
  750. package/lib/components/loading/index.js.map +0 -1
  751. package/lib/components/loading/loading.js +0 -2
  752. package/lib/components/loading/loading.js.map +0 -1
  753. package/lib/components/message/index.js +0 -2
  754. package/lib/components/message/index.js.map +0 -1
  755. package/lib/components/message/message.js +0 -2
  756. package/lib/components/message/message.js.map +0 -1
  757. package/lib/components/modal/hookModal.js +0 -2
  758. package/lib/components/modal/hookModal.js.map +0 -1
  759. package/lib/components/modal/index.js +0 -2
  760. package/lib/components/modal/index.js.map +0 -1
  761. package/lib/components/modal/modal.js +0 -2
  762. package/lib/components/modal/modal.js.map +0 -1
  763. package/lib/components/modal/useModal.js +0 -2
  764. package/lib/components/modal/useModal.js.map +0 -1
  765. package/lib/components/pagination/index.js +0 -2
  766. package/lib/components/pagination/index.js.map +0 -1
  767. package/lib/components/pagination/page.js +0 -2
  768. package/lib/components/pagination/page.js.map +0 -1
  769. package/lib/components/pagination/pagination.js +0 -2
  770. package/lib/components/pagination/pagination.js.map +0 -1
  771. package/lib/components/picker/colors/footer.js +0 -2
  772. package/lib/components/picker/colors/footer.js.map +0 -1
  773. package/lib/components/picker/colors/handle.js +0 -2
  774. package/lib/components/picker/colors/handle.js.map +0 -1
  775. package/lib/components/picker/colors/index.js +0 -2
  776. package/lib/components/picker/colors/index.js.map +0 -1
  777. package/lib/components/picker/dates/dates.js +0 -2
  778. package/lib/components/picker/dates/dates.js.map +0 -1
  779. package/lib/components/picker/dates/index.js +0 -2
  780. package/lib/components/picker/dates/index.js.map +0 -1
  781. package/lib/components/picker/dates/panel.js +0 -2
  782. package/lib/components/picker/dates/panel.js.map +0 -1
  783. package/lib/components/picker/time/index.js +0 -2
  784. package/lib/components/picker/time/index.js.map +0 -1
  785. package/lib/components/picker/time/item.js +0 -2
  786. package/lib/components/picker/time/item.js.map +0 -1
  787. package/lib/components/picker/time/panel.js +0 -2
  788. package/lib/components/picker/time/panel.js.map +0 -1
  789. package/lib/components/popconfirm/index.js +0 -2
  790. package/lib/components/popconfirm/index.js.map +0 -1
  791. package/lib/components/popconfirm/popconfirm.js +0 -2
  792. package/lib/components/popconfirm/popconfirm.js.map +0 -1
  793. package/lib/components/popup/content.js +0 -2
  794. package/lib/components/popup/content.js.map +0 -1
  795. package/lib/components/popup/index.js +0 -2
  796. package/lib/components/popup/index.js.map +0 -1
  797. package/lib/components/popup/popup.js +0 -2
  798. package/lib/components/popup/popup.js.map +0 -1
  799. package/lib/components/progress/circle.js +0 -2
  800. package/lib/components/progress/circle.js.map +0 -1
  801. package/lib/components/progress/index.js +0 -2
  802. package/lib/components/progress/index.js.map +0 -1
  803. package/lib/components/progress/line.js +0 -2
  804. package/lib/components/progress/line.js.map +0 -1
  805. package/lib/components/progress/progress.js +0 -2
  806. package/lib/components/progress/progress.js.map +0 -1
  807. package/lib/components/radio/index.js +0 -2
  808. package/lib/components/radio/index.js.map +0 -1
  809. package/lib/components/radio/item.js +0 -2
  810. package/lib/components/radio/item.js.map +0 -1
  811. package/lib/components/radio/radio.js +0 -2
  812. package/lib/components/radio/radio.js.map +0 -1
  813. package/lib/components/resizable/index.js +0 -2
  814. package/lib/components/resizable/index.js.map +0 -1
  815. package/lib/components/resizable/resizable.js +0 -2
  816. package/lib/components/resizable/resizable.js.map +0 -1
  817. package/lib/components/select/index.js +0 -2
  818. package/lib/components/select/index.js.map +0 -1
  819. package/lib/components/select/options.js +0 -2
  820. package/lib/components/select/options.js.map +0 -1
  821. package/lib/components/select/select.js +0 -2
  822. package/lib/components/select/select.js.map +0 -1
  823. package/lib/components/step/divider.js +0 -2
  824. package/lib/components/step/divider.js.map +0 -1
  825. package/lib/components/step/index.js +0 -2
  826. package/lib/components/step/index.js.map +0 -1
  827. package/lib/components/step/item.js +0 -2
  828. package/lib/components/step/item.js.map +0 -1
  829. package/lib/components/step/step.js +0 -2
  830. package/lib/components/step/step.js.map +0 -1
  831. package/lib/components/swiper/index.js +0 -2
  832. package/lib/components/swiper/index.js.map +0 -1
  833. package/lib/components/swiper/item.js +0 -2
  834. package/lib/components/swiper/item.js.map +0 -1
  835. package/lib/components/swiper/swiper.js +0 -2
  836. package/lib/components/swiper/swiper.js.map +0 -1
  837. package/lib/components/tabs/index.js +0 -2
  838. package/lib/components/tabs/index.js.map +0 -1
  839. package/lib/components/tabs/item.js +0 -2
  840. package/lib/components/tabs/item.js.map +0 -1
  841. package/lib/components/tabs/tabs.js +0 -2
  842. package/lib/components/tabs/tabs.js.map +0 -1
  843. package/lib/components/tag/index.js +0 -2
  844. package/lib/components/tag/index.js.map +0 -1
  845. package/lib/components/tag/tag.js +0 -2
  846. package/lib/components/tag/tag.js.map +0 -1
  847. package/lib/components/text/highlight.js +0 -2
  848. package/lib/components/text/highlight.js.map +0 -1
  849. package/lib/components/text/index.js +0 -2
  850. package/lib/components/text/index.js.map +0 -1
  851. package/lib/components/text/number.js +0 -2
  852. package/lib/components/text/number.js.map +0 -1
  853. package/lib/components/text/text.js +0 -2
  854. package/lib/components/text/text.js.map +0 -1
  855. package/lib/components/text/time.js +0 -2
  856. package/lib/components/text/time.js.map +0 -1
  857. package/lib/components/tree/index.js +0 -2
  858. package/lib/components/tree/index.js.map +0 -1
  859. package/lib/components/tree/item.js +0 -2
  860. package/lib/components/tree/item.js.map +0 -1
  861. package/lib/components/tree/tree.js +0 -2
  862. package/lib/components/tree/tree.js.map +0 -1
  863. package/lib/components/upload/index.js +0 -2
  864. package/lib/components/upload/index.js.map +0 -1
  865. package/lib/components/upload/renderFile.js +0 -2
  866. package/lib/components/upload/renderFile.js.map +0 -1
  867. package/lib/components/upload/upload.js +0 -2
  868. package/lib/components/upload/upload.js.map +0 -1
  869. package/lib/components/utils/empty/index.js +0 -2
  870. package/lib/components/utils/empty/index.js.map +0 -1
  871. package/lib/components/utils/helpericon/helpericon.js +0 -2
  872. package/lib/components/utils/helpericon/helpericon.js.map +0 -1
  873. package/lib/components/utils/helpericon/index.js +0 -2
  874. package/lib/components/utils/helpericon/index.js.map +0 -1
  875. package/lib/components/video/index.js +0 -2
  876. package/lib/components/video/index.js.map +0 -1
  877. package/lib/components/video/video.js +0 -2
  878. package/lib/components/video/video.js.map +0 -1
  879. package/lib/index.js.map +0 -1
  880. package/lib/js/hooks.js +0 -2
  881. package/lib/js/hooks.js.map +0 -1
  882. package/lib/js/usePreview/content.js +0 -2
  883. package/lib/js/usePreview/content.js.map +0 -1
  884. package/lib/js/usePreview/index.js +0 -2
  885. package/lib/js/usePreview/index.js.map +0 -1
  886. package/lib/js/usePreview/renderFile.js +0 -2
  887. package/lib/js/usePreview/renderFile.js.map +0 -1
  888. package/lib/js/usePreview/type.js +0 -2
  889. package/lib/js/usePreview/type.js.map +0 -1
  890. package/lib/js/useRipple/index.js +0 -2
  891. package/lib/js/useRipple/index.js.map +0 -1
  892. package/lib/js/utils.js +0 -2
  893. package/lib/js/utils.js.map +0 -1
@@ -0,0 +1,77 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { KeyboardArrowLeftRound, KeyboardArrowRightRound } from '@ricons/material';
3
+ import { useReactive } from 'ahooks';
4
+ import classNames from 'classnames';
5
+ import dayjs from 'dayjs';
6
+ import { throttle } from 'radash';
7
+ import { useRef, useEffect } from 'react';
8
+ import Icon from '../../icon/icon.js';
9
+ import Helpericon from '../../utils/helpericon/helpericon.js';
10
+ import Dates from './dates.js';
11
+
12
+ const MONTHS = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
13
+ const YearMonth = (props) => {
14
+ const { value, unitMonth = "月", unitYear = "年", renderYear, renderMonth, onClick, } = props;
15
+ return (jsxs("a", { className: 'i-datepicker-action', "data-ripple": true, onClick: onClick, children: [jsx("span", { children: renderYear?.(value.year()) }), unitYear, jsx("span", { children: renderMonth?.(value.month() + 1) }), unitMonth] }));
16
+ };
17
+ const Panel = (props) => {
18
+ const { value, unitYear, unitMonth, renderDate, renderMonth = (m) => m, renderYear = (y) => y, disabledDate, onDateClick, } = props;
19
+ const state = useReactive({
20
+ today: value,
21
+ month: value || dayjs(),
22
+ selectedYear: dayjs(),
23
+ years: [],
24
+ selectable: false,
25
+ });
26
+ const $years = useRef(null);
27
+ const handleOperateMonth = (next) => {
28
+ state.month = state.month[next ? "add" : "subtract"](1, "month");
29
+ };
30
+ const handleChangeDate = (date) => {
31
+ if (date.isSame(state.today, "day"))
32
+ return;
33
+ if (!date.isSame(state.month, "month")) {
34
+ state.month = date;
35
+ }
36
+ state.today = date;
37
+ onDateClick?.(date);
38
+ };
39
+ const handleChangeMonth = (month) => {
40
+ state.month = state.month
41
+ .year(state.selectedYear.year())
42
+ .month(month - 1);
43
+ state.selectable = false;
44
+ };
45
+ const getMoreYears = throttle({ interval: 100 }, (e) => {
46
+ const isUp = e.deltaY < 0;
47
+ state.years = state.years.map((y) => (y += isUp ? -1 : 1));
48
+ });
49
+ useEffect(() => {
50
+ if (!state.selectable)
51
+ return;
52
+ state.selectedYear = state.month;
53
+ const y = state.selectedYear.year();
54
+ const years = Array.from({ length: 7 }).map((_, i) => y - 3 + i);
55
+ state.years = [...years];
56
+ }, [state.selectable]);
57
+ useEffect(() => {
58
+ state.today = value;
59
+ state.month = value || dayjs();
60
+ }, [value]);
61
+ return (jsxs("div", { className: 'i-datepicker', children: [jsxs("div", { className: 'i-datepicker-units', children: [jsx(YearMonth, { value: state.month, unitYear: unitYear, unitMonth: unitMonth, renderMonth: renderMonth, renderYear: renderYear, onClick: () => (state.selectable = true) }), jsx("a", { className: 'ml-auto i-datepicker-action', "data-ripple": true, onClick: () => handleOperateMonth(false), children: jsx(Icon, { icon: jsx(KeyboardArrowLeftRound, {}) }) }), jsx("a", { className: 'i-datepicker-action', "data-ripple": true, onClick: () => handleOperateMonth(true), children: jsx(Icon, { icon: jsx(KeyboardArrowRightRound, {}) }) })] }), jsxs("div", { className: classNames("i-datepicker-ym", {
62
+ "i-datepicker-active": state.selectable,
63
+ }), children: [jsx(Helpericon, { active: true, className: 'i-datepicker-close', onClick: (e) => {
64
+ e.stopPropagation();
65
+ state.selectable = false;
66
+ } }), jsx("div", { ref: $years, className: 'i-datepicker-years', onWheel: getMoreYears, children: state.years.map((y) => (jsx("a", { className: classNames("i-datepicker-year", {
67
+ "i-datepicker-active": y === state.selectedYear.year(),
68
+ }), onClick: () => (state.selectedYear =
69
+ state.selectedYear.year(y)), children: renderYear(y) }, y))) }), jsx("div", { className: 'i-datepicker-months', children: MONTHS.map((m) => {
70
+ return (jsx("a", { className: classNames("i-datepicker-month", {
71
+ "i-datepicker-active": m === state.month.month() + 1,
72
+ }), onClick: () => handleChangeMonth(m), children: renderMonth(m) }, m));
73
+ }) })] }), jsx(Dates, { value: state.today, month: state.month, disabledDate: disabledDate, onDateClick: handleChangeDate, renderDate: renderDate })] }));
74
+ };
75
+
76
+ export { Panel as default };
77
+ //# sourceMappingURL=panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel.js","sources":["../../../../../packages/components/picker/dates/panel.tsx"],"sourcesContent":["import {\n\tKeyboardArrowLeftRound,\n\tKeyboardArrowRightRound,\n} from \"@ricons/material\";\nimport { useReactive } from \"ahooks\";\nimport classNames from \"classnames\";\nimport dayjs, { Dayjs } from \"dayjs\";\nimport { throttle } from \"radash\";\nimport { ReactNode, useEffect, useRef } from \"react\";\nimport Icon from \"../../icon\";\nimport Helpericon from \"../../utils/helpericon\";\nimport { IBaseDates } from \"../type\";\nimport Dates from \"./dates\";\n\nconst MONTHS = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];\n\nconst YearMonth = (\n\tprops: IBaseDates & {\n\t\tonClick?: () => void;\n\t}\n) => {\n\tconst {\n\t\tvalue,\n\t\tunitMonth = \"月\",\n\t\tunitYear = \"年\",\n\t\trenderYear,\n\t\trenderMonth,\n\t\tonClick,\n\t} = props;\n\n\treturn (\n\t\t<a className='i-datepicker-action' data-ripple onClick={onClick}>\n\t\t\t<span>{renderYear?.(value.year())}</span>\n\t\t\t{unitYear}\n\t\t\t<span>{renderMonth?.(value.month() + 1)}</span>\n\t\t\t{unitMonth}\n\t\t</a>\n\t);\n};\n\nconst Panel = (props: IBaseDates) => {\n\tconst {\n\t\tvalue,\n\t\tunitYear,\n\t\tunitMonth,\n\t\trenderDate,\n\t\trenderMonth = (m: ReactNode) => m,\n\t\trenderYear = (y: ReactNode) => y,\n\t\tdisabledDate,\n\t\tonDateClick,\n\t} = props;\n\n\tconst state = useReactive({\n\t\ttoday: value,\n\t\tmonth: value || dayjs(),\n\t\tselectedYear: dayjs(),\n\t\tyears: [] as number[],\n\t\tselectable: false,\n\t});\n\n\tconst $years = useRef<HTMLDivElement>(null);\n\n\tconst handleOperateMonth = (next: boolean) => {\n\t\tstate.month = state.month[next ? \"add\" : \"subtract\"](1, \"month\");\n\t};\n\n\tconst handleChangeDate = (date: Dayjs) => {\n\t\tif (date.isSame(state.today, \"day\")) return;\n\n\t\tif (!date.isSame(state.month, \"month\")) {\n\t\t\tstate.month = date;\n\t\t}\n\n\t\tstate.today = date;\n\t\tonDateClick?.(date);\n\t};\n\n\tconst handleChangeMonth = (month: number) => {\n\t\tstate.month = state.month\n\t\t\t.year(state.selectedYear.year())\n\t\t\t.month(month - 1);\n\t\tstate.selectable = false;\n\t};\n\n\tconst getMoreYears = throttle({ interval: 100 }, (e) => {\n\t\tconst isUp = e.deltaY < 0;\n\n\t\tstate.years = state.years.map((y) => (y += isUp ? -1 : 1));\n\t});\n\n\tuseEffect(() => {\n\t\tif (!state.selectable) return;\n\n\t\tstate.selectedYear = state.month;\n\t\tconst y = state.selectedYear.year();\n\t\tconst years = Array.from({ length: 7 }).map((_, i) => y - 3 + i);\n\n\t\tstate.years = [...years];\n\t}, [state.selectable]);\n\n\tuseEffect(() => {\n\t\tstate.today = value;\n\t\tstate.month = value || dayjs();\n\t}, [value]);\n\n\treturn (\n\t\t<div className='i-datepicker'>\n\t\t\t<div className='i-datepicker-units'>\n\t\t\t\t<YearMonth\n\t\t\t\t\tvalue={state.month}\n\t\t\t\t\tunitYear={unitYear}\n\t\t\t\t\tunitMonth={unitMonth}\n\t\t\t\t\trenderMonth={renderMonth}\n\t\t\t\t\trenderYear={renderYear}\n\t\t\t\t\tonClick={() => (state.selectable = true)}\n\t\t\t\t/>\n\t\t\t\t<a\n\t\t\t\t\tclassName='ml-auto i-datepicker-action'\n\t\t\t\t\tdata-ripple\n\t\t\t\t\tonClick={() => handleOperateMonth(false)}\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={<KeyboardArrowLeftRound />} />\n\t\t\t\t</a>\n\t\t\t\t<a\n\t\t\t\t\tclassName='i-datepicker-action'\n\t\t\t\t\tdata-ripple\n\t\t\t\t\tonClick={() => handleOperateMonth(true)}\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={<KeyboardArrowRightRound />} />\n\t\t\t\t</a>\n\t\t\t</div>\n\n\t\t\t<div\n\t\t\t\tclassName={classNames(\"i-datepicker-ym\", {\n\t\t\t\t\t\"i-datepicker-active\": state.selectable,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<Helpericon\n\t\t\t\t\tactive\n\t\t\t\t\tclassName='i-datepicker-close'\n\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\tstate.selectable = false;\n\t\t\t\t\t}}\n\t\t\t\t/>\n\n\t\t\t\t<div\n\t\t\t\t\tref={$years}\n\t\t\t\t\tclassName='i-datepicker-years'\n\t\t\t\t\tonWheel={getMoreYears}\n\t\t\t\t>\n\t\t\t\t\t{state.years.map((y) => (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\tkey={y}\n\t\t\t\t\t\t\tclassName={classNames(\"i-datepicker-year\", {\n\t\t\t\t\t\t\t\t\"i-datepicker-active\":\n\t\t\t\t\t\t\t\t\ty === state.selectedYear.year(),\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t(state.selectedYear =\n\t\t\t\t\t\t\t\t\tstate.selectedYear.year(y))\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{renderYear(y)}\n\t\t\t\t\t\t</a>\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\n\t\t\t\t<div className='i-datepicker-months'>\n\t\t\t\t\t{MONTHS.map((m) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={m}\n\t\t\t\t\t\t\t\tclassName={classNames(\"i-datepicker-month\", {\n\t\t\t\t\t\t\t\t\t\"i-datepicker-active\":\n\t\t\t\t\t\t\t\t\t\tm === state.month.month() + 1,\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\tonClick={() => handleChangeMonth(m)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{renderMonth(m)}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<Dates\n\t\t\t\tvalue={state.today}\n\t\t\t\tmonth={state.month}\n\t\t\t\tdisabledDate={disabledDate}\n\t\t\t\tonDateClick={handleChangeDate}\n\t\t\t\trenderDate={renderDate}\n\t\t\t/>\n\t\t</div>\n\t);\n};\n\nexport default Panel;\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { AccessTimeRound } from '@ricons/material';
3
+ import { useReactive } from 'ahooks';
4
+ import { useState, useEffect } from 'react';
5
+ import Icon from '../../icon/icon.js';
6
+ import '../../input/index.js';
7
+ import Popup from '../../popup/popup.js';
8
+ import Panel from './panel.js';
9
+ import Input from '../../input/input.js';
10
+
11
+ const FORMAT = "hh:mm:ss";
12
+ function TimePicker(props) {
13
+ const { name, value, format = FORMAT, periods, placeholder = props.format ?? FORMAT, renderItem, onChange, onBlur, popupProps, ...restProps } = props;
14
+ const state = useReactive({
15
+ value,
16
+ safeValue: undefined,
17
+ });
18
+ const [active, setActive] = useState(false);
19
+ const handleChange = (v) => {
20
+ state.value = v;
21
+ };
22
+ const handleFallback = (v) => {
23
+ state.safeValue = v;
24
+ };
25
+ const handleValidTime = () => {
26
+ if (!state.value)
27
+ return;
28
+ state.value = state.safeValue;
29
+ handleChange(state.safeValue);
30
+ };
31
+ const handleBlur = (e) => {
32
+ onBlur?.(e);
33
+ handleValidTime();
34
+ };
35
+ const handleVisibleChange = (v) => {
36
+ popupProps?.onVisibleChange?.(v);
37
+ setActive(v);
38
+ };
39
+ useEffect(() => {
40
+ state.value = value;
41
+ }, [value]);
42
+ return (jsx(Popup, { visible: active, trigger: 'click', position: 'bottom', arrow: false, align: 'start', watchResize: true, ...popupProps, onVisibleChange: handleVisibleChange, content: jsx(Panel, { value: state.value, format: format, periods: periods, renderItem: renderItem, onChange: handleChange, onFallback: handleFallback }), children: jsx(Input, { value: state.value, placeholder: placeholder, append: jsx(Icon, { icon: jsx(AccessTimeRound, {}), className: 'i-timepicker-icon', size: '1em' }), onChange: handleChange, onBlur: handleBlur, ...restProps }) }));
43
+ }
44
+
45
+ export { TimePicker as default };
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../packages/components/picker/time/index.tsx"],"sourcesContent":["import { AccessTimeRound } from \"@ricons/material\";\nimport { useReactive } from \"ahooks\";\nimport { useEffect, useState } from \"react\";\nimport Icon from \"../../icon\";\nimport Input from \"../../input\";\nimport Popup from \"../../popup\";\nimport { ITimePicker } from \"../type\";\nimport Panel from \"./panel\";\n\nconst FORMAT = \"hh:mm:ss\";\n\nexport default function TimePicker(props: ITimePicker) {\n\tconst {\n\t\tname,\n\t\tvalue,\n\t\tformat = FORMAT,\n\t\tperiods,\n\t\tplaceholder = props.format ?? FORMAT,\n\t\trenderItem,\n\t\tonChange,\n\t\tonBlur,\n\t\tpopupProps,\n\t\t...restProps\n\t} = props;\n\tconst state = useReactive({\n\t\tvalue,\n\t\tsafeValue: undefined,\n\t});\n\tconst [active, setActive] = useState<boolean>(false);\n\n\tconst handleChange = (v) => {\n\t\tstate.value = v;\n\t};\n\n\tconst handleFallback = (v) => {\n\t\tstate.safeValue = v;\n\t};\n\n\tconst handleValidTime = () => {\n\t\tif (!state.value) return;\n\n\t\tstate.value = state.safeValue;\n\t\thandleChange(state.safeValue);\n\t};\n\n\tconst handleBlur = (e) => {\n\t\tonBlur?.(e);\n\t\thandleValidTime();\n\t};\n\n\tconst handleVisibleChange = (v) => {\n\t\tpopupProps?.onVisibleChange?.(v);\n\t\tsetActive(v);\n\t};\n\n\tuseEffect(() => {\n\t\tstate.value = value;\n\t}, [value]);\n\n\treturn (\n\t\t<Popup\n\t\t\tvisible={active}\n\t\t\ttrigger='click'\n\t\t\tposition='bottom'\n\t\t\tarrow={false}\n\t\t\talign='start'\n\t\t\twatchResize\n\t\t\t{...popupProps}\n\t\t\tonVisibleChange={handleVisibleChange}\n\t\t\tcontent={\n\t\t\t\t<Panel\n\t\t\t\t\tvalue={state.value}\n\t\t\t\t\tformat={format}\n\t\t\t\t\tperiods={periods}\n\t\t\t\t\trenderItem={renderItem}\n\t\t\t\t\tonChange={handleChange}\n\t\t\t\t\tonFallback={handleFallback}\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t<Input\n\t\t\t\tvalue={state.value}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tappend={\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={<AccessTimeRound />}\n\t\t\t\t\t\tclassName='i-timepicker-icon'\n\t\t\t\t\t\tsize='1em'\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tonChange={handleChange}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\t{...restProps}\n\t\t\t/>\n\t\t</Popup>\n\t);\n}\n"],"names":["_jsx"],"mappings":";;;;;;;;;;AASA,MAAM,MAAM,GAAG,UAAU;AAED,SAAA,UAAU,CAAC,KAAkB,EAAA;AACpD,IAAA,MAAM,EACL,IAAI,EACJ,KAAK,EACL,MAAM,GAAG,MAAM,EACf,OAAO,EACP,WAAW,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,EACpC,UAAU,EACV,QAAQ,EACR,MAAM,EACN,UAAU,EACV,GAAG,SAAS,EACZ,GAAG,KAAK;IACT,MAAM,KAAK,GAAG,WAAW,CAAC;QACzB,KAAK;AACL,QAAA,SAAS,EAAE,SAAS;AACpB,KAAA,CAAC;IACF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC;AAEpD,IAAA,MAAM,YAAY,GAAG,CAAC,CAAC,KAAI;AAC1B,QAAA,KAAK,CAAC,KAAK,GAAG,CAAC;AAChB,KAAC;AAED,IAAA,MAAM,cAAc,GAAG,CAAC,CAAC,KAAI;AAC5B,QAAA,KAAK,CAAC,SAAS,GAAG,CAAC;AACpB,KAAC;IAED,MAAM,eAAe,GAAG,MAAK;QAC5B,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE;AAElB,QAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS;AAC7B,QAAA,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;AAC9B,KAAC;AAED,IAAA,MAAM,UAAU,GAAG,CAAC,CAAC,KAAI;AACxB,QAAA,MAAM,GAAG,CAAC,CAAC;AACX,QAAA,eAAe,EAAE;AAClB,KAAC;AAED,IAAA,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAI;AACjC,QAAA,UAAU,EAAE,eAAe,GAAG,CAAC,CAAC;QAChC,SAAS,CAAC,CAAC,CAAC;AACb,KAAC;IAED,SAAS,CAAC,MAAK;AACd,QAAA,KAAK,CAAC,KAAK,GAAG,KAAK;AACpB,KAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAEX,QACCA,GAAC,CAAA,KAAK,EACL,EAAA,OAAO,EAAE,MAAM,EACf,OAAO,EAAC,OAAO,EACf,QAAQ,EAAC,QAAQ,EACjB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,OAAO,EACb,WAAW,EAAA,IAAA,EAAA,GACP,UAAU,EACd,eAAe,EAAE,mBAAmB,EACpC,OAAO,EACNA,GAAC,CAAA,KAAK,EACL,EAAA,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,cAAc,EACzB,CAAA,EAAA,QAAA,EAGHA,GAAC,CAAA,KAAK,EACL,EAAA,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,WAAW,EACxB,MAAM,EACLA,GAAA,CAAC,IAAI,EAAA,EACJ,IAAI,EAAEA,GAAA,CAAC,eAAe,EAAA,EAAA,CAAG,EACzB,SAAS,EAAC,mBAAmB,EAC7B,IAAI,EAAC,KAAK,EAAA,CACT,EAEH,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,UAAU,EAAA,GACd,SAAS,EAAA,CACZ,EACK,CAAA;AAEV;;;;"}
@@ -0,0 +1,15 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import classNames from 'classnames';
3
+
4
+ function Items(props) {
5
+ const { items = [], active, renderItem, unit, onClick } = props;
6
+ return items.map((n) => {
7
+ const isActive = n === active;
8
+ return (jsx("a", { className: classNames("i-timepicker-item", {
9
+ "i-timepicker-item-active": isActive,
10
+ }), onClick: () => onClick(n), children: renderItem?.(n, isActive, unit) ?? (n < 10 ? `0${n}` : n) }, n));
11
+ });
12
+ }
13
+
14
+ export { Items as default };
15
+ //# sourceMappingURL=item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.js","sources":["../../../../../packages/components/picker/time/item.tsx"],"sourcesContent":["import classNames from \"classnames\";\n\nexport default function Items(props) {\n\tconst { items = [], active, renderItem, unit, onClick } = props;\n\n\treturn items.map((n) => {\n\t\tconst isActive = n === active;\n\n\t\treturn (\n\t\t\t<a\n\t\t\t\tkey={n}\n\t\t\t\tclassName={classNames(\"i-timepicker-item\", {\n\t\t\t\t\t\"i-timepicker-item-active\": isActive,\n\t\t\t\t})}\n\t\t\t\tonClick={() => onClick(n)}\n\t\t\t>\n\t\t\t\t{renderItem?.(n, isActive, unit) ?? (n < 10 ? `0${n}` : n)}\n\t\t\t</a>\n\t\t);\n\t});\n}\n"],"names":["_jsx"],"mappings":";;;AAEwB,SAAA,KAAK,CAAC,KAAK,EAAA;AAClC,IAAA,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK;AAE/D,IAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;AACtB,QAAA,MAAM,QAAQ,GAAG,CAAC,KAAK,MAAM;AAE7B,QAAA,QACCA,GAEC,CAAA,GAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,mBAAmB,EAAE;AAC1C,gBAAA,0BAA0B,EAAE,QAAQ;AACpC,aAAA,CAAC,EACF,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAA,QAAA,EAExB,UAAU,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA,CAAE,GAAG,CAAC,CAAC,IANrD,CAAC,CAOH;AAEN,KAAC,CAAC;AACH;;;;"}
@@ -0,0 +1,83 @@
1
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
+ import { useReactive } from 'ahooks';
3
+ import { useMemo, useEffect } from 'react';
4
+ import Items from './item.js';
5
+
6
+ const UnitMaps = {
7
+ h: "hour",
8
+ hh: "hour",
9
+ m: "minute",
10
+ mm: "minute",
11
+ s: "second",
12
+ ss: "second",
13
+ };
14
+ function Panel(props) {
15
+ const { value, stepH = 1, stepM = 1, stepS = 1, format, periods, renderItem, onChange, onFallback, } = props;
16
+ const state = useReactive({
17
+ period: undefined,
18
+ hour: undefined,
19
+ minute: undefined,
20
+ second: undefined,
21
+ });
22
+ const [hours, minutes, seconds] = useMemo(() => {
23
+ const hasH = format.includes("h");
24
+ const hasM = format.includes("m");
25
+ const hasS = format.includes("s");
26
+ const hours = hasH
27
+ ? Array.from({ length: (periods ? 12 : 24) / stepH }, (_, i) => i * stepH)
28
+ : [];
29
+ const minutes = hasM
30
+ ? Array.from({ length: 60 / stepM }, (_, i) => i * stepM)
31
+ : [];
32
+ const seconds = hasS
33
+ ? Array.from({ length: 60 / stepS }, (_, i) => i * stepS)
34
+ : [];
35
+ return [hours, minutes, seconds];
36
+ }, [stepH, stepM, stepS, format, periods]);
37
+ const updateValue = () => {
38
+ const reg = /(hh|h){1}|(mm|m){1}|(ss|s){1}/gi;
39
+ let result = format.replace(reg, (pattern) => {
40
+ const p = pattern.toLowerCase();
41
+ const u = UnitMaps[p];
42
+ const n = state[u] ?? 0;
43
+ return p.length > 1 && n < 10 ? `0${n ?? 0}` : n ?? 0;
44
+ });
45
+ if (periods && hours.length > 0) {
46
+ result = `${state.period ?? periods[0]} ${result}`;
47
+ }
48
+ onChange(result);
49
+ };
50
+ const handleSetTime = (v, unit) => {
51
+ state[unit] = v;
52
+ updateValue();
53
+ };
54
+ useEffect(() => {
55
+ let time = value ?? "";
56
+ if (periods && hours.length > 0 && value) {
57
+ const [p, t] = value.split(" ");
58
+ time = t ?? "";
59
+ state.period = periods.includes(p) ? p : undefined;
60
+ }
61
+ const nums = time.match(/\d+/g) ?? [];
62
+ if (!nums.length) {
63
+ onFallback("");
64
+ return;
65
+ }
66
+ let i = 0;
67
+ const r = format.replace(/(hh|h)+|(mm|m)+|(ss|s)+/gi, (p) => {
68
+ const n = nums[i++] ?? 0;
69
+ let o = p;
70
+ if (UnitMaps[p] === "hour") {
71
+ o = Math.min(periods ? 11 : 23, n);
72
+ }
73
+ o = Math.min(59, n);
74
+ state[UnitMaps[p]] = o;
75
+ return p.length > 1 && o < 10 ? `0${o}` : o;
76
+ });
77
+ onFallback(r);
78
+ }, [value]);
79
+ return (jsxs("div", { className: 'i-timepicker', children: [hours.length > 0 && (jsxs(Fragment, { children: [periods && (jsx("div", { className: 'i-timepicker-list', children: jsx(Items, { items: periods, active: state.period, onClick: (p) => handleSetTime(p, "period") }) })), jsx("div", { className: 'i-timepicker-list', children: jsx(Items, { items: hours, active: state.hour, unit: 'hour', renderItem: renderItem, onClick: (h) => handleSetTime(h, "hour") }) })] })), minutes.length > 0 && (jsx("div", { className: 'i-timepicker-list', children: jsx(Items, { items: minutes, active: state.minute, unit: 'minute', renderItem: renderItem, onClick: (m) => handleSetTime(m, "minute") }) })), seconds.length > 0 && (jsx("div", { className: 'i-timepicker-list', children: jsx(Items, { items: seconds, active: state.second, unit: 'second', renderItem: renderItem, onClick: (s) => handleSetTime(s, "second") }) }))] }));
80
+ }
81
+
82
+ export { Panel as default };
83
+ //# sourceMappingURL=panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel.js","sources":["../../../../../packages/components/picker/time/panel.tsx"],"sourcesContent":["import { useReactive } from \"ahooks\";\nimport { useEffect, useMemo } from \"react\";\nimport \"./index.css\";\nimport Items from \"./item\";\n\nconst UnitMaps = {\n\th: \"hour\",\n\thh: \"hour\",\n\tm: \"minute\",\n\tmm: \"minute\",\n\ts: \"second\",\n\tss: \"second\",\n};\n\nexport default function Panel(props) {\n\tconst {\n\t\tvalue,\n\t\tstepH = 1,\n\t\tstepM = 1,\n\t\tstepS = 1,\n\t\tformat,\n\t\tperiods,\n\t\trenderItem,\n\t\tonChange,\n\t\tonFallback,\n\t} = props;\n\tconst state = useReactive<any>({\n\t\tperiod: undefined,\n\t\thour: undefined,\n\t\tminute: undefined,\n\t\tsecond: undefined,\n\t});\n\n\tconst [hours, minutes, seconds] = useMemo(() => {\n\t\tconst hasH = format.includes(\"h\");\n\t\tconst hasM = format.includes(\"m\");\n\t\tconst hasS = format.includes(\"s\");\n\t\tconst hours = hasH\n\t\t\t? Array.from(\n\t\t\t\t\t{ length: (periods ? 12 : 24) / stepH },\n\t\t\t\t\t(_, i) => i * stepH\n\t\t\t )\n\t\t\t: [];\n\t\tconst minutes = hasM\n\t\t\t? Array.from({ length: 60 / stepM }, (_, i) => i * stepM)\n\t\t\t: [];\n\t\tconst seconds = hasS\n\t\t\t? Array.from({ length: 60 / stepS }, (_, i) => i * stepS)\n\t\t\t: [];\n\n\t\treturn [hours, minutes, seconds];\n\t}, [stepH, stepM, stepS, format, periods]);\n\n\tconst updateValue = () => {\n\t\tconst reg = /(hh|h){1}|(mm|m){1}|(ss|s){1}/gi;\n\t\tlet result = format.replace(reg, (pattern) => {\n\t\t\tconst p = pattern.toLowerCase();\n\t\t\tconst u = UnitMaps[p];\n\t\t\tconst n = state[u] ?? 0;\n\n\t\t\treturn p.length > 1 && n < 10 ? `0${n ?? 0}` : n ?? 0;\n\t\t});\n\n\t\tif (periods && hours.length > 0) {\n\t\t\tresult = `${state.period ?? periods[0]} ${result}`;\n\t\t}\n\n\t\tonChange(result);\n\t};\n\n\tconst handleSetTime = (v, unit) => {\n\t\tstate[unit] = v;\n\t\tupdateValue();\n\t};\n\n\tuseEffect(() => {\n\t\tlet time = value ?? \"\";\n\n\t\tif (periods && hours.length > 0 && value) {\n\t\t\tconst [p, t] = value.split(\" \");\n\t\t\ttime = t ?? \"\";\n\t\t\tstate.period = periods.includes(p) ? p : undefined;\n\t\t}\n\n\t\tconst nums = time.match(/\\d+/g) ?? [];\n\n\t\tif (!nums.length) {\n\t\t\tonFallback(\"\");\n\t\t\treturn;\n\t\t}\n\n\t\tlet i = 0;\n\t\tconst r = format.replace(/(hh|h)+|(mm|m)+|(ss|s)+/gi, (p) => {\n\t\t\tconst n = nums[i++] ?? 0;\n\t\t\tlet o = p;\n\n\t\t\tif (UnitMaps[p] === \"hour\") {\n\t\t\t\to = Math.min(periods ? 11 : 23, n);\n\t\t\t}\n\n\t\t\to = Math.min(59, n);\n\n\t\t\tstate[UnitMaps[p]] = o;\n\t\t\treturn p.length > 1 && o < 10 ? `0${o}` : o;\n\t\t});\n\n\t\tonFallback(r);\n\t}, [value]);\n\n\treturn (\n\t\t<div className='i-timepicker'>\n\t\t\t{hours.length > 0 && (\n\t\t\t\t<>\n\t\t\t\t\t{periods && (\n\t\t\t\t\t\t<div className='i-timepicker-list'>\n\t\t\t\t\t\t\t<Items\n\t\t\t\t\t\t\t\titems={periods}\n\t\t\t\t\t\t\t\tactive={state.period}\n\t\t\t\t\t\t\t\tonClick={(p) => handleSetTime(p, \"period\")}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t<div className='i-timepicker-list'>\n\t\t\t\t\t\t<Items\n\t\t\t\t\t\t\titems={hours}\n\t\t\t\t\t\t\tactive={state.hour}\n\t\t\t\t\t\t\tunit='hour'\n\t\t\t\t\t\t\trenderItem={renderItem}\n\t\t\t\t\t\t\tonClick={(h) => handleSetTime(h, \"hour\")}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</>\n\t\t\t)}\n\t\t\t{minutes.length > 0 && (\n\t\t\t\t<div className='i-timepicker-list'>\n\t\t\t\t\t<Items\n\t\t\t\t\t\titems={minutes}\n\t\t\t\t\t\tactive={state.minute}\n\t\t\t\t\t\tunit='minute'\n\t\t\t\t\t\trenderItem={renderItem}\n\t\t\t\t\t\tonClick={(m) => handleSetTime(m, \"minute\")}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t{seconds.length > 0 && (\n\t\t\t\t<div className='i-timepicker-list'>\n\t\t\t\t\t<Items\n\t\t\t\t\t\titems={seconds}\n\t\t\t\t\t\tactive={state.second}\n\t\t\t\t\t\tunit='second'\n\t\t\t\t\t\trenderItem={renderItem}\n\t\t\t\t\t\tonClick={(s) => handleSetTime(s, \"second\")}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import Popconfirm from './popconfirm.js';
2
+
3
+
4
+
5
+ export { Popconfirm as default };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,54 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { InfoOutlined } from '@ricons/material';
3
+ import { useReactive } from 'ahooks';
4
+ import '../button/index.js';
5
+ import Flex from '../flex/flex.js';
6
+ import Icon from '../icon/icon.js';
7
+ import Popup from '../popup/popup.js';
8
+ import Button from '../button/button.js';
9
+
10
+ const defaultOk = {
11
+ children: "确定",
12
+ };
13
+ const defaultCancel = {
14
+ children: "取消",
15
+ secondary: true,
16
+ };
17
+ const Popconfirm = (props) => {
18
+ const { trigger = "click", visible, icon = jsx(Icon, { icon: jsx(InfoOutlined, {}), className: 'error' }), content, okButtonProps, cancelButtonProps, children, align = "end", position = "top", offset = 12, extra, onOk, onClose, ...restProps } = props;
19
+ const state = useReactive({
20
+ loading: false,
21
+ visible,
22
+ });
23
+ const ok = okButtonProps
24
+ ? Object.assign({}, defaultOk, okButtonProps)
25
+ : defaultOk;
26
+ const cancel = cancelButtonProps
27
+ ? Object.assign({}, defaultCancel, cancelButtonProps)
28
+ : defaultCancel;
29
+ const handleVisibleChange = (v) => {
30
+ state.visible = v;
31
+ restProps.onVisibleChange?.(v);
32
+ };
33
+ const handleOk = async (e) => {
34
+ state.loading = true;
35
+ ok.onClick?.(e);
36
+ onOk?.()
37
+ ?.then(() => {
38
+ state.visible = false;
39
+ })
40
+ .finally(() => {
41
+ state.loading = false;
42
+ });
43
+ };
44
+ const handleCancel = async (e) => {
45
+ cancel.onClick?.(e);
46
+ await onClose?.();
47
+ state.visible = false;
48
+ };
49
+ const popconfirmContent = (jsxs("div", { className: 'i-popconfirm', children: [jsxs(Flex, { gap: 12, children: [icon, jsx("div", { className: 'i-popconfirm-content', children: content })] }), jsxs(Flex, { gap: 12, justify: 'flex-end', className: 'mt-8 i-popconfirm-footer', children: [cancelButtonProps !== null && (jsx(Button, { ...cancel, onClick: handleCancel })), extra, okButtonProps !== null && (jsx(Button, { loading: state.loading, ...ok, onClick: handleOk }))] })] }));
50
+ return (jsx(Popup, { content: popconfirmContent, ...restProps, trigger: trigger, visible: state.visible, align: align, offset: offset, position: position, onVisibleChange: handleVisibleChange, children: children }));
51
+ };
52
+
53
+ export { Popconfirm as default };
54
+ //# sourceMappingURL=popconfirm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popconfirm.js","sources":["../../../../packages/components/popconfirm/popconfirm.tsx"],"sourcesContent":["import { InfoOutlined } from \"@ricons/material\";\nimport { useReactive } from \"ahooks\";\nimport { MouseEvent } from \"react\";\nimport Button from \"../button\";\nimport { IButton } from \"../button/type\";\nimport Flex from \"../flex\";\nimport Icon from \"../icon\";\nimport Popup from \"../popup\";\nimport \"./index.css\";\nimport { IPopconfirm } from \"./type\";\n\nconst defaultOk = {\n\tchildren: \"确定\",\n};\n\nconst defaultCancel = {\n\tchildren: \"取消\",\n\tsecondary: true,\n};\n\nconst Popconfirm = (props: IPopconfirm) => {\n\tconst {\n\t\ttrigger = \"click\",\n\t\tvisible,\n\t\ticon = <Icon icon={<InfoOutlined />} className='error' />,\n\t\tcontent,\n\t\tokButtonProps,\n\t\tcancelButtonProps,\n\t\tchildren,\n\t\talign = \"end\",\n\t\tposition = \"top\",\n\t\toffset = 12,\n\t\textra,\n\t\tonOk,\n\t\tonClose,\n\t\t...restProps\n\t} = props;\n\n\tconst state = useReactive({\n\t\tloading: false,\n\t\tvisible,\n\t});\n\n\tconst ok: IButton = okButtonProps\n\t\t? Object.assign({}, defaultOk, okButtonProps)\n\t\t: defaultOk;\n\tconst cancel: IButton = cancelButtonProps\n\t\t? Object.assign({}, defaultCancel, cancelButtonProps)\n\t\t: defaultCancel;\n\n\tconst handleVisibleChange = (v: boolean) => {\n\t\tstate.visible = v;\n\t\trestProps.onVisibleChange?.(v);\n\t};\n\n\tconst handleOk = async (e: MouseEvent<HTMLElement>) => {\n\t\tstate.loading = true;\n\t\tok.onClick?.(e);\n\n\t\tonOk?.()\n\t\t\t?.then(() => {\n\t\t\t\tstate.visible = false;\n\t\t\t})\n\t\t\t.finally(() => {\n\t\t\t\tstate.loading = false;\n\t\t\t});\n\t};\n\n\tconst handleCancel = async (e: MouseEvent<HTMLElement>) => {\n\t\tcancel.onClick?.(e);\n\t\tawait onClose?.();\n\t\tstate.visible = false;\n\t};\n\n\tconst popconfirmContent = (\n\t\t<div className='i-popconfirm'>\n\t\t\t<Flex gap={12}>\n\t\t\t\t{icon}\n\t\t\t\t<div className='i-popconfirm-content'>{content}</div>\n\t\t\t</Flex>\n\n\t\t\t<Flex\n\t\t\t\tgap={12}\n\t\t\t\tjustify='flex-end'\n\t\t\t\tclassName='mt-8 i-popconfirm-footer'\n\t\t\t>\n\t\t\t\t{cancelButtonProps !== null && (\n\t\t\t\t\t<Button {...cancel} onClick={handleCancel} />\n\t\t\t\t)}\n\t\t\t\t{extra}\n\t\t\t\t{okButtonProps !== null && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tloading={state.loading}\n\t\t\t\t\t\t{...ok}\n\t\t\t\t\t\tonClick={handleOk}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</Flex>\n\t\t</div>\n\t);\n\n\treturn (\n\t\t<Popup\n\t\t\tcontent={popconfirmContent}\n\t\t\t{...restProps}\n\t\t\ttrigger={trigger}\n\t\t\tvisible={state.visible}\n\t\t\talign={align}\n\t\t\toffset={offset}\n\t\t\tposition={position}\n\t\t\tonVisibleChange={handleVisibleChange}\n\t\t>\n\t\t\t{children}\n\t\t</Popup>\n\t);\n};\n\nexport default Popconfirm;\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import classNames from 'classnames';
3
+ import { useMemo } from 'react';
4
+ import { createPortal } from 'react-dom';
5
+
6
+ const Content = (props) => {
7
+ const { ref, getContainer = (trigger) => trigger?.offsetParent ?? document.body, trigger, arrow, arrowProps = {}, className, children, ...restProps } = props;
8
+ const arrowCSS = useMemo(() => {
9
+ let { left, top, pos } = arrowProps;
10
+ let transform = "";
11
+ switch (pos) {
12
+ case "left":
13
+ left += 2;
14
+ transform = `translate(-100%, -50%) rotate(180deg)`;
15
+ break;
16
+ case "right":
17
+ left -= 2;
18
+ transform = `translate(0, -50%)`;
19
+ break;
20
+ case "top":
21
+ top -= 2;
22
+ transform = `translate(-50%, -50%) rotate(-90deg)`;
23
+ break;
24
+ case "bottom":
25
+ top += 2;
26
+ transform = `translate(-50%, -50%) rotate(90deg)`;
27
+ break;
28
+ }
29
+ return {
30
+ left,
31
+ top,
32
+ transform,
33
+ };
34
+ }, [arrowProps]);
35
+ const content = (jsxs("div", { ref: ref, className: classNames("i-popup", className), ...restProps, children: [arrow && (jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', className: 'i-popup-arrow', style: arrowCSS, children: jsx("path", { d: 'M0.5 0L1.5 0C1.5 4, 3 5.5, 5 7.5S8,10 8,12S7 14.5, 5 16.5S1.5,20 1.5,24L0.5 24L0.5 0z' }) })), children] }));
36
+ return createPortal(content, getContainer(trigger));
37
+ };
38
+
39
+ export { Content as default };
40
+ //# sourceMappingURL=content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content.js","sources":["../../../../packages/components/popup/content.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { useMemo } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { IPopupContent } from \"./type\";\n\nconst Content = (props: IPopupContent) => {\n\tconst {\n\t\tref,\n\t\tgetContainer = (trigger) => trigger?.offsetParent ?? document.body,\n\t\ttrigger,\n\t\tarrow,\n\t\tarrowProps = {},\n\t\tclassName,\n\t\tchildren,\n\t\t...restProps\n\t} = props;\n\n\tconst arrowCSS = useMemo(() => {\n\t\tlet { left, top, pos } = arrowProps;\n\t\tlet transform = \"\";\n\n\t\tswitch (pos) {\n\t\t\tcase \"left\":\n\t\t\t\tleft += 2;\n\t\t\t\ttransform = `translate(-100%, -50%) rotate(180deg)`;\n\t\t\t\tbreak;\n\t\t\tcase \"right\":\n\t\t\t\tleft -= 2;\n\t\t\t\ttransform = `translate(0, -50%)`;\n\t\t\t\tbreak;\n\t\t\tcase \"top\":\n\t\t\t\ttop -= 2;\n\t\t\t\ttransform = `translate(-50%, -50%) rotate(-90deg)`;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\ttop += 2;\n\t\t\t\ttransform = `translate(-50%, -50%) rotate(90deg)`;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn {\n\t\t\tleft,\n\t\t\ttop,\n\t\t\ttransform,\n\t\t};\n\t}, [arrowProps]);\n\n\tconst content = (\n\t\t<div\n\t\t\tref={ref}\n\t\t\tclassName={classNames(\"i-popup\", className)}\n\t\t\t{...restProps}\n\t\t>\n\t\t\t{arrow && (\n\t\t\t\t<svg\n\t\t\t\t\txmlns='http://www.w3.org/2000/svg'\n\t\t\t\t\tclassName='i-popup-arrow'\n\t\t\t\t\tstyle={arrowCSS}\n\t\t\t\t>\n\t\t\t\t\t<path d='M0.5 0L1.5 0C1.5 4, 3 5.5, 5 7.5S8,10 8,12S7 14.5, 5 16.5S1.5,20 1.5,24L0.5 24L0.5 0z' />\n\t\t\t\t</svg>\n\t\t\t)}\n\n\t\t\t{children}\n\t\t</div>\n\t);\n\n\treturn createPortal(content, getContainer(trigger));\n};\n\nexport default Content;\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;AAKA,MAAM,OAAO,GAAG,CAAC,KAAoB,KAAI;AACxC,IAAA,MAAM,EACL,GAAG,EACH,YAAY,GAAG,CAAC,OAAO,KAAK,OAAO,EAAE,YAAY,IAAI,QAAQ,CAAC,IAAI,EAClE,OAAO,EACP,KAAK,EACL,UAAU,GAAG,EAAE,EACf,SAAS,EACT,QAAQ,EACR,GAAG,SAAS,EACZ,GAAG,KAAK;AAET,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAK;QAC7B,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,UAAU;QACnC,IAAI,SAAS,GAAG,EAAE;QAElB,QAAQ,GAAG;AACV,YAAA,KAAK,MAAM;gBACV,IAAI,IAAI,CAAC;gBACT,SAAS,GAAG,uCAAuC;gBACnD;AACD,YAAA,KAAK,OAAO;gBACX,IAAI,IAAI,CAAC;gBACT,SAAS,GAAG,oBAAoB;gBAChC;AACD,YAAA,KAAK,KAAK;gBACT,GAAG,IAAI,CAAC;gBACR,SAAS,GAAG,sCAAsC;gBAClD;AACD,YAAA,KAAK,QAAQ;gBACZ,GAAG,IAAI,CAAC;gBACR,SAAS,GAAG,qCAAqC;gBACjD;;QAKF,OAAO;YACN,IAAI;YACJ,GAAG;YACH,SAAS;SACT;AACF,KAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAEhB,MAAM,OAAO,IACZA,IAAA,CAAA,KAAA,EAAA,EACC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,KACvC,SAAS,EAAA,QAAA,EAAA,CAEZ,KAAK,KACLC,GAAA,CAAA,KAAA,EAAA,EACC,KAAK,EAAC,4BAA4B,EAClC,SAAS,EAAC,eAAe,EACzB,KAAK,EAAE,QAAQ,EAAA,QAAA,EAEfA,cAAM,CAAC,EAAC,uFAAuF,EAAG,CAAA,EAAA,CAC7F,CACN,EAEA,QAAQ,CACJ,EAAA,CAAA,CACN;IAED,OAAO,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;AACpD;;;;"}
@@ -0,0 +1,6 @@
1
+ import Popup from './popup.js';
2
+
3
+
4
+
5
+ export { Popup as default };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,219 @@
1
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
+ import { useReactive, useCreation } from 'ahooks';
3
+ import { useRef, useMemo, useEffect, useLayoutEffect, Children, isValidElement, cloneElement } from 'react';
4
+ import { useMouseUp, useResizeObserver } from '../../js/hooks.js';
5
+ import { getPointPosition, getPosition } from '../../js/utils.js';
6
+ import Content from './content.js';
7
+
8
+ function Popup(props) {
9
+ const { visible = false, content, trigger = "hover", gap = 12, offset = 8, fixed, position = "top", showDelay = 16, hideDelay = 12, touchable, arrow = true, align, fitSize, watchResize, clickOutside = true, disabled, referToWindow, style, className, getContainer, children, onVisibleChange, } = props;
10
+ const triggerRef = useRef(null);
11
+ const contentRef = useRef(null);
12
+ const timerRef = useRef(null);
13
+ const statusRef = useRef("");
14
+ const state = useReactive({
15
+ show: false,
16
+ style: { position: fixed ? "fixed" : "absolute" },
17
+ arrowProps: {},
18
+ });
19
+ useMouseUp((e) => {
20
+ if (!triggerRef.current || !contentRef.current || !clickOutside)
21
+ return;
22
+ const tar = e.target;
23
+ const isContain = triggerRef.current.contains(tar) ||
24
+ contentRef.current.contains(tar);
25
+ if (!state.show || isContain)
26
+ return;
27
+ handleToggle(false);
28
+ });
29
+ const clearTimer = () => {
30
+ if (!timerRef.current)
31
+ return;
32
+ clearTimeout(timerRef.current);
33
+ timerRef.current = null;
34
+ };
35
+ const handleShow = () => {
36
+ if (disabled)
37
+ return;
38
+ if (state.show &&
39
+ (trigger !== "hover" || (trigger === "hover" && !touchable))) {
40
+ return;
41
+ }
42
+ state.show = true;
43
+ statusRef.current = "showing";
44
+ timerRef.current = setTimeout(() => {
45
+ if (statusRef.current !== "showing") {
46
+ return;
47
+ }
48
+ const [left, top, { arrowX, arrowY, arrowPos }] = getPosition(triggerRef.current, contentRef.current, {
49
+ position,
50
+ gap,
51
+ offset,
52
+ align,
53
+ refWindow: referToWindow,
54
+ });
55
+ state.style = {
56
+ ...state.style,
57
+ opacity: 1,
58
+ transform: "none",
59
+ left,
60
+ top,
61
+ };
62
+ state.arrowProps = {
63
+ left: arrowX,
64
+ top: arrowY,
65
+ pos: arrowPos,
66
+ };
67
+ onVisibleChange?.(true);
68
+ clearTimer();
69
+ statusRef.current = "";
70
+ }, showDelay);
71
+ };
72
+ const handleHide = () => {
73
+ if (!state.show)
74
+ return;
75
+ statusRef.current = "hiding";
76
+ timerRef.current = setTimeout(() => {
77
+ if (statusRef.current !== "hiding") {
78
+ clearTimer();
79
+ return;
80
+ }
81
+ state.style = {
82
+ ...state.style,
83
+ opacity: 0,
84
+ transform: "translate(0, 2px)",
85
+ };
86
+ setTimeout(() => {
87
+ state.show = false;
88
+ clearTimer();
89
+ onVisibleChange?.(false);
90
+ statusRef.current = "";
91
+ }, 160);
92
+ }, hideDelay);
93
+ };
94
+ const handleToggle = (action) => {
95
+ if (action !== undefined) {
96
+ action ? handleShow() : handleHide();
97
+ return;
98
+ }
99
+ state.show ? handleHide() : handleShow();
100
+ };
101
+ const eventMaps = useCreation(() => ({
102
+ click: {
103
+ onClick: () => handleToggle(true),
104
+ },
105
+ hover: {
106
+ onMouseEnter: () => handleToggle(true),
107
+ onMouseLeave: () => handleToggle(false),
108
+ },
109
+ focus: {
110
+ onFocus: () => handleToggle(true),
111
+ onBlur: () => handleToggle(false),
112
+ },
113
+ contextmenu: {
114
+ onContextMenu: (e) => {
115
+ e.preventDefault();
116
+ e.stopPropagation();
117
+ if (state.show) {
118
+ const [left, top] = getPointPosition(e, contentRef.current);
119
+ state.style = {
120
+ ...state.style,
121
+ left,
122
+ top,
123
+ };
124
+ return;
125
+ }
126
+ state.show = true;
127
+ timerRef.current = setTimeout(() => {
128
+ const [left, top] = getPointPosition(e, contentRef.current);
129
+ state.style = {
130
+ ...state.style,
131
+ opacity: 1,
132
+ transform: "none",
133
+ left,
134
+ top,
135
+ };
136
+ clearTimer();
137
+ onVisibleChange?.(true);
138
+ }, showDelay);
139
+ },
140
+ },
141
+ none: {},
142
+ }), []);
143
+ const contentTouch = useMemo(() => {
144
+ if (!touchable)
145
+ return {};
146
+ const events = {};
147
+ if (trigger === "hover") {
148
+ events["onMouseEnter"] = () => {
149
+ clearTimer();
150
+ };
151
+ events["onMouseLeave"] = () => handleToggle(false);
152
+ }
153
+ return events;
154
+ }, [touchable, trigger]);
155
+ const computePosition = () => {
156
+ if (!state.show)
157
+ return;
158
+ const [left, top, { arrowX, arrowY, arrowPos }] = getPosition(triggerRef.current, contentRef.current, {
159
+ position,
160
+ gap,
161
+ offset,
162
+ align,
163
+ refWindow: referToWindow,
164
+ });
165
+ Object.assign(state, {
166
+ style: { ...state.style, left, top },
167
+ arrowProps: { left: arrowX, top: arrowY, pos: arrowPos },
168
+ });
169
+ };
170
+ useEffect(() => {
171
+ if (trigger === "contextmenu")
172
+ return;
173
+ const { observe, unobserve, disconnect } = useResizeObserver();
174
+ triggerRef.current && observe(triggerRef.current, computePosition);
175
+ if (!watchResize || !contentRef.current)
176
+ return;
177
+ observe(contentRef.current, computePosition);
178
+ return () => {
179
+ if (!watchResize || !contentRef.current)
180
+ return;
181
+ unobserve(contentRef.current);
182
+ triggerRef.current && unobserve(triggerRef.current);
183
+ disconnect();
184
+ };
185
+ }, [watchResize, contentRef.current, triggerRef.current]);
186
+ useLayoutEffect(() => {
187
+ if (!fitSize || !state.show)
188
+ return;
189
+ const vertical = ["top", "bottom"].includes(position);
190
+ const size = triggerRef.current?.[vertical ? "offsetWidth" : "offsetHeight"];
191
+ state.style = { ...state.style, [vertical ? "width" : "height"]: size };
192
+ }, [state.show, fitSize]);
193
+ useLayoutEffect(() => {
194
+ handleToggle(visible);
195
+ }, [visible]);
196
+ return (jsxs(Fragment, { children: [Children.map(children, (child) => {
197
+ if (!isValidElement(child))
198
+ return;
199
+ const { className, ...restProps } = child.props;
200
+ Object.keys(eventMaps[trigger]).map((evt) => {
201
+ if (!restProps[evt])
202
+ return;
203
+ const fn = eventMaps[trigger][evt];
204
+ eventMaps[trigger][evt] = (e) => {
205
+ fn();
206
+ restProps[evt](e);
207
+ };
208
+ });
209
+ return cloneElement(child, {
210
+ ref: triggerRef,
211
+ className,
212
+ ...restProps,
213
+ ...eventMaps[trigger],
214
+ });
215
+ }), state.show && (jsx(Content, { ref: contentRef, arrow: arrow && trigger !== "contextmenu", style: { ...style, ...state.style }, arrowProps: state.arrowProps, className: className, ...contentTouch, trigger: triggerRef.current, getContainer: getContainer, children: content }))] }));
216
+ }
217
+
218
+ export { Popup as default };
219
+ //# sourceMappingURL=popup.js.map