@ioca/react 1.3.3 → 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 (763) 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/picker/type.d.ts +2 -2
  513. package/lib/types/js/usePreview/type.d.ts +2 -11
  514. package/package.json +20 -11
  515. package/lib/components/affix/affix.js +0 -2
  516. package/lib/components/affix/affix.js.map +0 -1
  517. package/lib/components/affix/index.js +0 -2
  518. package/lib/components/affix/totop.js +0 -2
  519. package/lib/components/affix/totop.js.map +0 -1
  520. package/lib/components/badge/badge.js +0 -2
  521. package/lib/components/badge/badge.js.map +0 -1
  522. package/lib/components/badge/index.js +0 -2
  523. package/lib/components/button/button.js +0 -2
  524. package/lib/components/button/button.js.map +0 -1
  525. package/lib/components/button/group.js +0 -2
  526. package/lib/components/button/group.js.map +0 -1
  527. package/lib/components/button/index.js +0 -2
  528. package/lib/components/button/index.js.map +0 -1
  529. package/lib/components/button/toggle.js +0 -2
  530. package/lib/components/button/toggle.js.map +0 -1
  531. package/lib/components/card/card.js +0 -2
  532. package/lib/components/card/card.js.map +0 -1
  533. package/lib/components/card/index.js +0 -2
  534. package/lib/components/checkbox/checkbox.js +0 -2
  535. package/lib/components/checkbox/checkbox.js.map +0 -1
  536. package/lib/components/checkbox/index.js +0 -2
  537. package/lib/components/checkbox/item.js +0 -2
  538. package/lib/components/checkbox/item.js.map +0 -1
  539. package/lib/components/collapse/collapse.js +0 -2
  540. package/lib/components/collapse/collapse.js.map +0 -1
  541. package/lib/components/collapse/index.js +0 -2
  542. package/lib/components/collapse/index.js.map +0 -1
  543. package/lib/components/collapse/item.js +0 -2
  544. package/lib/components/collapse/item.js.map +0 -1
  545. package/lib/components/datagrid/cell.js +0 -2
  546. package/lib/components/datagrid/cell.js.map +0 -1
  547. package/lib/components/datagrid/datagrid.js +0 -2
  548. package/lib/components/datagrid/datagrid.js.map +0 -1
  549. package/lib/components/datagrid/index.js +0 -2
  550. package/lib/components/datagrid/index.js.map +0 -1
  551. package/lib/components/datagrid/resize.js +0 -2
  552. package/lib/components/datagrid/resize.js.map +0 -1
  553. package/lib/components/datagrid/row.js +0 -2
  554. package/lib/components/datagrid/row.js.map +0 -1
  555. package/lib/components/datagrid/sorter.js +0 -2
  556. package/lib/components/datagrid/sorter.js.map +0 -1
  557. package/lib/components/description/description.js +0 -2
  558. package/lib/components/description/description.js.map +0 -1
  559. package/lib/components/description/index.js +0 -2
  560. package/lib/components/description/index.js.map +0 -1
  561. package/lib/components/drawer/drawer.js +0 -2
  562. package/lib/components/drawer/drawer.js.map +0 -1
  563. package/lib/components/drawer/index.js +0 -2
  564. package/lib/components/drawer/index.js.map +0 -1
  565. package/lib/components/dropdown/dropdown.js +0 -2
  566. package/lib/components/dropdown/dropdown.js.map +0 -1
  567. package/lib/components/dropdown/index.js +0 -2
  568. package/lib/components/dropdown/index.js.map +0 -1
  569. package/lib/components/dropdown/item.js +0 -2
  570. package/lib/components/dropdown/item.js.map +0 -1
  571. package/lib/components/editor/controls.js +0 -2
  572. package/lib/components/editor/controls.js.map +0 -1
  573. package/lib/components/editor/editor.js +0 -2
  574. package/lib/components/editor/editor.js.map +0 -1
  575. package/lib/components/editor/index.js +0 -2
  576. package/lib/components/editor/index.js.map +0 -1
  577. package/lib/components/flex/flex.js +0 -2
  578. package/lib/components/flex/flex.js.map +0 -1
  579. package/lib/components/flex/index.js +0 -2
  580. package/lib/components/flex/index.js.map +0 -1
  581. package/lib/components/form/context.js +0 -2
  582. package/lib/components/form/context.js.map +0 -1
  583. package/lib/components/form/field.js +0 -2
  584. package/lib/components/form/field.js.map +0 -1
  585. package/lib/components/form/form.js +0 -2
  586. package/lib/components/form/form.js.map +0 -1
  587. package/lib/components/form/index.js +0 -2
  588. package/lib/components/form/index.js.map +0 -1
  589. package/lib/components/form/useForm.js +0 -2
  590. package/lib/components/form/useForm.js.map +0 -1
  591. package/lib/components/icon/icon.js +0 -2
  592. package/lib/components/icon/icon.js.map +0 -1
  593. package/lib/components/icon/index.js +0 -2
  594. package/lib/components/icon/index.js.map +0 -1
  595. package/lib/components/image/image.js +0 -2
  596. package/lib/components/image/image.js.map +0 -1
  597. package/lib/components/image/index.js +0 -2
  598. package/lib/components/image/index.js.map +0 -1
  599. package/lib/components/image/list.js +0 -2
  600. package/lib/components/image/list.js.map +0 -1
  601. package/lib/components/input/container.js +0 -2
  602. package/lib/components/input/container.js.map +0 -1
  603. package/lib/components/input/index.js +0 -2
  604. package/lib/components/input/index.js.map +0 -1
  605. package/lib/components/input/input.js +0 -2
  606. package/lib/components/input/input.js.map +0 -1
  607. package/lib/components/input/number.js +0 -2
  608. package/lib/components/input/number.js.map +0 -1
  609. package/lib/components/input/range.js +0 -2
  610. package/lib/components/input/range.js.map +0 -1
  611. package/lib/components/input/textarea.js +0 -2
  612. package/lib/components/input/textarea.js.map +0 -1
  613. package/lib/components/list/index.js +0 -2
  614. package/lib/components/list/index.js.map +0 -1
  615. package/lib/components/list/item.js +0 -2
  616. package/lib/components/list/item.js.map +0 -1
  617. package/lib/components/list/list.js +0 -2
  618. package/lib/components/list/list.js.map +0 -1
  619. package/lib/components/loading/index.js +0 -2
  620. package/lib/components/loading/index.js.map +0 -1
  621. package/lib/components/loading/loading.js +0 -2
  622. package/lib/components/loading/loading.js.map +0 -1
  623. package/lib/components/message/index.js +0 -2
  624. package/lib/components/message/index.js.map +0 -1
  625. package/lib/components/message/message.js +0 -2
  626. package/lib/components/message/message.js.map +0 -1
  627. package/lib/components/modal/hookModal.js +0 -2
  628. package/lib/components/modal/hookModal.js.map +0 -1
  629. package/lib/components/modal/index.js +0 -2
  630. package/lib/components/modal/index.js.map +0 -1
  631. package/lib/components/modal/modal.js +0 -2
  632. package/lib/components/modal/modal.js.map +0 -1
  633. package/lib/components/modal/useModal.js +0 -2
  634. package/lib/components/modal/useModal.js.map +0 -1
  635. package/lib/components/pagination/index.js +0 -2
  636. package/lib/components/pagination/index.js.map +0 -1
  637. package/lib/components/pagination/page.js +0 -2
  638. package/lib/components/pagination/page.js.map +0 -1
  639. package/lib/components/pagination/pagination.js +0 -2
  640. package/lib/components/pagination/pagination.js.map +0 -1
  641. package/lib/components/picker/colors/footer.js +0 -2
  642. package/lib/components/picker/colors/footer.js.map +0 -1
  643. package/lib/components/picker/colors/handle.js +0 -2
  644. package/lib/components/picker/colors/handle.js.map +0 -1
  645. package/lib/components/picker/colors/index.js +0 -2
  646. package/lib/components/picker/colors/index.js.map +0 -1
  647. package/lib/components/picker/dates/dates.js +0 -2
  648. package/lib/components/picker/dates/dates.js.map +0 -1
  649. package/lib/components/picker/dates/index.js +0 -2
  650. package/lib/components/picker/dates/index.js.map +0 -1
  651. package/lib/components/picker/dates/panel.js +0 -2
  652. package/lib/components/picker/dates/panel.js.map +0 -1
  653. package/lib/components/picker/time/index.js +0 -2
  654. package/lib/components/picker/time/index.js.map +0 -1
  655. package/lib/components/picker/time/item.js +0 -2
  656. package/lib/components/picker/time/item.js.map +0 -1
  657. package/lib/components/picker/time/panel.js +0 -2
  658. package/lib/components/picker/time/panel.js.map +0 -1
  659. package/lib/components/popconfirm/index.js +0 -2
  660. package/lib/components/popconfirm/index.js.map +0 -1
  661. package/lib/components/popconfirm/popconfirm.js +0 -2
  662. package/lib/components/popconfirm/popconfirm.js.map +0 -1
  663. package/lib/components/popup/content.js +0 -2
  664. package/lib/components/popup/content.js.map +0 -1
  665. package/lib/components/popup/index.js +0 -2
  666. package/lib/components/popup/index.js.map +0 -1
  667. package/lib/components/popup/popup.js +0 -2
  668. package/lib/components/popup/popup.js.map +0 -1
  669. package/lib/components/progress/circle.js +0 -2
  670. package/lib/components/progress/circle.js.map +0 -1
  671. package/lib/components/progress/index.js +0 -2
  672. package/lib/components/progress/index.js.map +0 -1
  673. package/lib/components/progress/line.js +0 -2
  674. package/lib/components/progress/line.js.map +0 -1
  675. package/lib/components/progress/progress.js +0 -2
  676. package/lib/components/progress/progress.js.map +0 -1
  677. package/lib/components/radio/index.js +0 -2
  678. package/lib/components/radio/index.js.map +0 -1
  679. package/lib/components/radio/item.js +0 -2
  680. package/lib/components/radio/item.js.map +0 -1
  681. package/lib/components/radio/radio.js +0 -2
  682. package/lib/components/radio/radio.js.map +0 -1
  683. package/lib/components/resizable/index.js +0 -2
  684. package/lib/components/resizable/index.js.map +0 -1
  685. package/lib/components/resizable/resizable.js +0 -2
  686. package/lib/components/resizable/resizable.js.map +0 -1
  687. package/lib/components/select/index.js +0 -2
  688. package/lib/components/select/index.js.map +0 -1
  689. package/lib/components/select/options.js +0 -2
  690. package/lib/components/select/options.js.map +0 -1
  691. package/lib/components/select/select.js +0 -2
  692. package/lib/components/select/select.js.map +0 -1
  693. package/lib/components/step/divider.js +0 -2
  694. package/lib/components/step/divider.js.map +0 -1
  695. package/lib/components/step/index.js +0 -2
  696. package/lib/components/step/index.js.map +0 -1
  697. package/lib/components/step/item.js +0 -2
  698. package/lib/components/step/item.js.map +0 -1
  699. package/lib/components/step/step.js +0 -2
  700. package/lib/components/step/step.js.map +0 -1
  701. package/lib/components/swiper/index.js +0 -2
  702. package/lib/components/swiper/index.js.map +0 -1
  703. package/lib/components/swiper/item.js +0 -2
  704. package/lib/components/swiper/item.js.map +0 -1
  705. package/lib/components/swiper/swiper.js +0 -2
  706. package/lib/components/swiper/swiper.js.map +0 -1
  707. package/lib/components/tabs/index.js +0 -2
  708. package/lib/components/tabs/index.js.map +0 -1
  709. package/lib/components/tabs/item.js +0 -2
  710. package/lib/components/tabs/item.js.map +0 -1
  711. package/lib/components/tabs/tabs.js +0 -2
  712. package/lib/components/tabs/tabs.js.map +0 -1
  713. package/lib/components/tag/index.js +0 -2
  714. package/lib/components/tag/index.js.map +0 -1
  715. package/lib/components/tag/tag.js +0 -2
  716. package/lib/components/tag/tag.js.map +0 -1
  717. package/lib/components/text/highlight.js +0 -2
  718. package/lib/components/text/highlight.js.map +0 -1
  719. package/lib/components/text/index.js +0 -2
  720. package/lib/components/text/index.js.map +0 -1
  721. package/lib/components/text/number.js +0 -2
  722. package/lib/components/text/number.js.map +0 -1
  723. package/lib/components/text/text.js +0 -2
  724. package/lib/components/text/text.js.map +0 -1
  725. package/lib/components/text/time.js +0 -2
  726. package/lib/components/text/time.js.map +0 -1
  727. package/lib/components/tree/index.js +0 -2
  728. package/lib/components/tree/index.js.map +0 -1
  729. package/lib/components/tree/item.js +0 -2
  730. package/lib/components/tree/item.js.map +0 -1
  731. package/lib/components/tree/tree.js +0 -2
  732. package/lib/components/tree/tree.js.map +0 -1
  733. package/lib/components/upload/index.js +0 -2
  734. package/lib/components/upload/index.js.map +0 -1
  735. package/lib/components/upload/renderFile.js +0 -2
  736. package/lib/components/upload/renderFile.js.map +0 -1
  737. package/lib/components/upload/upload.js +0 -2
  738. package/lib/components/upload/upload.js.map +0 -1
  739. package/lib/components/utils/empty/index.js +0 -2
  740. package/lib/components/utils/empty/index.js.map +0 -1
  741. package/lib/components/utils/helpericon/helpericon.js +0 -2
  742. package/lib/components/utils/helpericon/helpericon.js.map +0 -1
  743. package/lib/components/utils/helpericon/index.js +0 -2
  744. package/lib/components/utils/helpericon/index.js.map +0 -1
  745. package/lib/components/video/index.js +0 -2
  746. package/lib/components/video/index.js.map +0 -1
  747. package/lib/components/video/video.js +0 -2
  748. package/lib/components/video/video.js.map +0 -1
  749. package/lib/index.js.map +0 -1
  750. package/lib/js/hooks.js +0 -2
  751. package/lib/js/hooks.js.map +0 -1
  752. package/lib/js/usePreview/content.js +0 -2
  753. package/lib/js/usePreview/content.js.map +0 -1
  754. package/lib/js/usePreview/index.js +0 -2
  755. package/lib/js/usePreview/index.js.map +0 -1
  756. package/lib/js/usePreview/renderFile.js +0 -2
  757. package/lib/js/usePreview/renderFile.js.map +0 -1
  758. package/lib/js/usePreview/type.js +0 -2
  759. package/lib/js/usePreview/type.js.map +0 -1
  760. package/lib/js/useRipple/index.js +0 -2
  761. package/lib/js/useRipple/index.js.map +0 -1
  762. package/lib/js/utils.js +0 -2
  763. package/lib/js/utils.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"highlight.js","sources":["../../../../packages/components/text/highlight.tsx"],"sourcesContent":["import { findAll } from \"highlight-words-core\";\nimport { Fragment, useMemo } from \"react\";\nimport Text from \"./text\";\nimport { ITextHighLight } from \"./type\";\n\nexport default function HighLight(props: ITextHighLight) {\n\tconst {\n\t\tkeyword,\n\t\ttext,\n\t\tescape,\n\t\tcaseSensitive,\n\t\trenderWord = (word) => <mark>{word}</mark>,\n\t\t...restProps\n\t} = props;\n\n\tconst content = useMemo(() => {\n\t\tconst source = text;\n\t\tconst searchWords = typeof keyword === \"string\" ? [keyword] : keyword;\n\n\t\tconst chunks = findAll({\n\t\t\tsearchWords,\n\t\t\ttextToHighlight: text,\n\t\t\tcaseSensitive,\n\t\t\tautoEscape: escape,\n\t\t});\n\n\t\tconst result = chunks.map((chunk, i) => {\n\t\t\tconst { end, highlight, start } = chunk;\n\t\t\tconst word = source.slice(start, end);\n\n\t\t\treturn highlight ? (\n\t\t\t\t<Fragment key={i}>{renderWord(word)}</Fragment>\n\t\t\t) : (\n\t\t\t\tword\n\t\t\t);\n\t\t});\n\n\t\treturn result;\n\t}, [keyword, text, escape, caseSensitive]);\n\n\treturn <Text {...restProps}>{content}</Text>;\n}\n"],"names":["text","_jsx","useMemo","findAll","Fragment","Text"],"mappings":";;;;;;;;;AAKwB,SAAA,SAAS,CAAC,KAAqB,EAAA;IACtD,MAAM,EACL,OAAO,QACPA,MAAI,EACJ,MAAM,EACN,aAAa,EACb,UAAU,GAAG,CAAC,IAAI,KAAKC,cAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAO,IAAI,EAAA,CAAQ,EAC1C,GAAG,SAAS,EACZ,GAAG,KAAK;AAET,IAAA,MAAM,OAAO,GAAGC,aAAO,CAAC,MAAK;QAC5B,MAAM,MAAM,GAAGF,MAAI;AACnB,QAAA,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,QAAQ,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO;QAErE,MAAM,MAAM,GAAGG,0BAAO,CAAC;YACtB,WAAW;AACX,YAAA,eAAe,EAAEH,MAAI;YACrB,aAAa;AACb,YAAA,UAAU,EAAE,MAAM;AAClB,SAAA,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,KAAI;YACtC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;YAErC,OAAO,SAAS,IACfC,cAAC,CAAAG,cAAQ,EAAU,EAAA,QAAA,EAAA,UAAU,CAAC,IAAI,CAAC,EAApB,EAAA,CAAC,CAA+B,KAE/C,IAAI,CACJ;AACF,SAAC,CAAC;AAEF,QAAA,OAAO,MAAM;KACb,EAAE,CAAC,OAAO,EAAEJ,MAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;AAE1C,IAAA,OAAOC,eAACI,YAAI,EAAA,EAAA,GAAK,SAAS,EAAG,QAAA,EAAA,OAAO,GAAQ;AAC7C;;;;"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var highlight = require('./highlight.js');
6
+ var number = require('./number.js');
7
+ var text = require('./text.js');
8
+ var time = require('./time.js');
9
+
10
+ text.default.Number = number.default;
11
+ text.default.Time = time.default;
12
+ text.default.HighLight = highlight.default;
13
+
14
+ exports.default = text.default;
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../packages/components/text/index.tsx"],"sourcesContent":["import HighLight from \"./highlight\";\nimport Number from \"./number\";\nimport Text from \"./text\";\nimport Time from \"./time\";\n\nText.Number = Number;\nText.Time = Time;\nText.HighLight = HighLight;\n\nexport default Text;\n"],"names":["Text","Number","Time","HighLight"],"mappings":";;;;;;;;;AAKAA,YAAI,CAAC,MAAM,GAAGC,cAAM;AACpBD,YAAI,CAAC,IAAI,GAAGE,YAAI;AAChBF,YAAI,CAAC,SAAS,GAAGG,iBAAS;;;;"}
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var react = require('react');
7
+ var utils = require('../../js/utils.js');
8
+ var text = require('./text.js');
9
+
10
+ function Number(props) {
11
+ const { count, to, decimal, thousand = ",", duration = 2400, easing, ...restProps } = props;
12
+ const [n, setN] = react.useState(count);
13
+ const number = react.useMemo(() => {
14
+ if (n === undefined)
15
+ return;
16
+ const z = n.toFixed(decimal);
17
+ if (!thousand)
18
+ return z;
19
+ return utils.formatNumber(n, { precision: decimal, thousand });
20
+ }, [n, thousand]);
21
+ react.useEffect(() => {
22
+ if (count === undefined || to === undefined)
23
+ return;
24
+ utils.animate(count, to, duration, (v) => setN(count + v), easing);
25
+ }, [to]);
26
+ react.useEffect(() => setN(count), [count]);
27
+ return jsxRuntime.jsx(text.default, { ...restProps, children: number });
28
+ }
29
+
30
+ exports.default = Number;
31
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.js","sources":["../../../../packages/components/text/number.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { animate, formatNumber } from \"../../js/utils\";\nimport Text from \"./text\";\nimport { ITextNumber } from \"./type\";\n\nexport default function Number(props: ITextNumber) {\n\tconst {\n\t\tcount,\n\t\tto,\n\t\tdecimal,\n\t\tthousand = \",\",\n\t\tduration = 2400,\n\t\teasing,\n\t\t...restProps\n\t} = props;\n\tconst [n, setN] = useState(count);\n\n\tconst number = useMemo(() => {\n\t\tif (n === undefined) return;\n\n\t\tconst z = n.toFixed(decimal);\n\n\t\tif (!thousand) return z;\n\n\t\treturn formatNumber(n, { precision: decimal, thousand });\n\t}, [n, thousand]);\n\n\tuseEffect(() => {\n\t\tif (count === undefined || to === undefined) return;\n\n\t\tanimate(count, to, duration, (v) => setN(count + v), easing);\n\t}, [to]);\n\n\tuseEffect(() => setN(count), [count]);\n\n\treturn <Text {...restProps}>{number}</Text>;\n}\n"],"names":["useState","useMemo","formatNumber","useEffect","animate","_jsx","Text"],"mappings":";;;;;;;;;AAKwB,SAAA,MAAM,CAAC,KAAkB,EAAA;IAChD,MAAM,EACL,KAAK,EACL,EAAE,EACF,OAAO,EACP,QAAQ,GAAG,GAAG,EACd,QAAQ,GAAG,IAAI,EACf,MAAM,EACN,GAAG,SAAS,EACZ,GAAG,KAAK;IACT,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC;AAEjC,IAAA,MAAM,MAAM,GAAGC,aAAO,CAAC,MAAK;QAC3B,IAAI,CAAC,KAAK,SAAS;YAAE;QAErB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;AAE5B,QAAA,IAAI,CAAC,QAAQ;AAAE,YAAA,OAAO,CAAC;AAEvB,QAAA,OAAOC,kBAAY,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AACzD,KAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEjBC,eAAS,CAAC,MAAK;AACd,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS;YAAE;QAE7CC,aAAO,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC;AAC7D,KAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAER,IAAAD,eAAS,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAErC,IAAA,OAAOE,eAACC,YAAI,EAAA,EAAA,GAAK,SAAS,EAAG,QAAA,EAAA,MAAM,GAAQ;AAC5C;;;;"}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var classNames = require('classnames');
7
+ var react = require('react');
8
+
9
+ const Text = (props) => {
10
+ const { as: Tag = "span", size, weight, decoration, gradient, wave, style, className, children, } = props;
11
+ const gradients = react.useMemo(() => {
12
+ if (!gradient || !Array.isArray(gradient))
13
+ return {};
14
+ return {
15
+ backgroundImage: `-webkit-linear-gradient(${gradient.join(",")})`,
16
+ backgroundClip: "text",
17
+ };
18
+ }, [gradient]);
19
+ return (jsxRuntime.jsx(Tag, { style: {
20
+ fontSize: size,
21
+ fontWeight: weight,
22
+ textDecoration: decoration,
23
+ ...gradients,
24
+ ...style,
25
+ }, className: classNames(className, {
26
+ "i-text-gradient": gradient,
27
+ "i-text-gradient-wave": wave,
28
+ }), children: children }));
29
+ };
30
+
31
+ exports.default = Text;
32
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sources":["../../../../packages/components/text/text.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { useMemo } from \"react\";\nimport \"./index.css\";\nimport { CompositionText, IText } from \"./type\";\n\nconst Text = (props: IText) => {\n\tconst {\n\t\tas: Tag = \"span\",\n\t\tsize,\n\t\tweight,\n\t\tdecoration,\n\t\tgradient,\n\t\twave,\n\t\tstyle,\n\t\tclassName,\n\t\tchildren,\n\t} = props;\n\n\tconst gradients = useMemo(() => {\n\t\tif (!gradient || !Array.isArray(gradient)) return {};\n\n\t\treturn {\n\t\t\tbackgroundImage: `-webkit-linear-gradient(${gradient.join(\",\")})`,\n\t\t\tbackgroundClip: \"text\",\n\t\t};\n\t}, [gradient]);\n\n\treturn (\n\t\t<Tag\n\t\t\tstyle={{\n\t\t\t\tfontSize: size,\n\t\t\t\tfontWeight: weight,\n\t\t\t\ttextDecoration: decoration,\n\t\t\t\t...gradients,\n\t\t\t\t...style,\n\t\t\t}}\n\t\t\tclassName={classNames(className, {\n\t\t\t\t\"i-text-gradient\": gradient,\n\t\t\t\t\"i-text-gradient-wave\": wave,\n\t\t\t})}\n\t\t>\n\t\t\t{children}\n\t\t</Tag>\n\t);\n};\n\nexport default Text as CompositionText;\n"],"names":["useMemo","_jsx"],"mappings":";;;;;;;;AAKA,MAAM,IAAI,GAAG,CAAC,KAAY,KAAI;IAC7B,MAAM,EACL,EAAE,EAAE,GAAG,GAAG,MAAM,EAChB,IAAI,EACJ,MAAM,EACN,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,SAAS,EACT,QAAQ,GACR,GAAG,KAAK;AAET,IAAA,MAAM,SAAS,GAAGA,aAAO,CAAC,MAAK;QAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;AAAE,YAAA,OAAO,EAAE;QAEpD,OAAO;YACN,eAAe,EAAE,2BAA2B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,CAAA,CAAA;AACjE,YAAA,cAAc,EAAE,MAAM;SACtB;AACF,KAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAEd,IAAA,QACCC,cAAA,CAAC,GAAG,EAAA,EACH,KAAK,EAAE;AACN,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,UAAU,EAAE,MAAM;AAClB,YAAA,cAAc,EAAE,UAAU;AAC1B,YAAA,GAAG,SAAS;AACZ,YAAA,GAAG,KAAK;AACR,SAAA,EACD,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE;AAChC,YAAA,iBAAiB,EAAE,QAAQ;AAC3B,YAAA,sBAAsB,EAAE,IAAI;AAC5B,SAAA,CAAC,EAED,QAAA,EAAA,QAAQ,EACJ,CAAA;AAER;;;;"}
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var react = require('react');
7
+ var utils = require('../../js/utils.js');
8
+ var text = require('./text.js');
9
+
10
+ function Number(props) {
11
+ const { seconds, zero, units, ...restProps } = props;
12
+ const text$1 = react.useMemo(() => {
13
+ if (seconds === undefined)
14
+ return "";
15
+ return utils.formatTime(seconds, {
16
+ zero,
17
+ units,
18
+ });
19
+ }, [seconds]);
20
+ return jsxRuntime.jsx(text.default, { ...restProps, children: text$1 });
21
+ }
22
+
23
+ exports.default = Number;
24
+ //# sourceMappingURL=time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.js","sources":["../../../../packages/components/text/time.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { formatTime } from \"../../js/utils\";\nimport Text from \"./text\";\nimport { ITextTime } from \"./type\";\n\nexport default function Number(props: ITextTime) {\n\tconst { seconds, zero, units, ...restProps } = props;\n\n\tconst text = useMemo(() => {\n\t\tif (seconds === undefined) return \"\";\n\n\t\treturn formatTime(seconds, {\n\t\t\tzero,\n\t\t\tunits,\n\t\t});\n\t}, [seconds]);\n\n\treturn <Text {...restProps}>{text}</Text>;\n}\n"],"names":["text","useMemo","formatTime","_jsx","Text"],"mappings":";;;;;;;;;AAKwB,SAAA,MAAM,CAAC,KAAgB,EAAA;AAC9C,IAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK;AAEpD,IAAA,MAAMA,MAAI,GAAGC,aAAO,CAAC,MAAK;QACzB,IAAI,OAAO,KAAK,SAAS;AAAE,YAAA,OAAO,EAAE;QAEpC,OAAOC,gBAAU,CAAC,OAAO,EAAE;YAC1B,IAAI;YACJ,KAAK;AACL,SAAA,CAAC;AACH,KAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAEb,IAAA,OAAOC,eAACC,YAAI,EAAA,EAAA,GAAK,SAAS,EAAG,QAAA,EAAAJ,MAAI,GAAQ;AAC1C;;;;"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tree = require('./tree.js');
6
+
7
+
8
+
9
+ exports.default = tree.default;
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var material = require('@ricons/material');
5
+ var classNames = require('classnames');
6
+ var react = require('react');
7
+ var checkbox = require('../checkbox/checkbox.js');
8
+ var icon = require('../icon/icon.js');
9
+
10
+ function TreeList(props) {
11
+ const { data = [], depth = 0, round, style, className, parent, nodeProps, ...restProps } = props;
12
+ const contents = data.map((item, i) => {
13
+ const { type } = item;
14
+ const title = item[nodeProps.title];
15
+ const itemKey = item[nodeProps.key] ||
16
+ (parent?.key !== undefined ? `${parent.key}-${i}` : `${i}`);
17
+ item.key = itemKey;
18
+ item.parent = parent;
19
+ if (type === "title") {
20
+ return (jsxRuntime.jsx("div", { className: 'i-tree-group-title', children: title }, i));
21
+ }
22
+ if (type && type !== "item") {
23
+ return (jsxRuntime.jsx("div", { className: `i-tree-type-${type}`, children: title }, i));
24
+ }
25
+ return (jsxRuntime.jsx(TreeItem, { index: i, item: item, depth: depth, nodeProps: nodeProps, ...restProps }, itemKey));
26
+ });
27
+ if (depth > 0)
28
+ return jsxRuntime.jsx(jsxRuntime.Fragment, { children: contents });
29
+ return (jsxRuntime.jsx("div", { className: classNames("i-tree", className, {
30
+ "i-tree-round": round,
31
+ }), style: style, children: contents }));
32
+ }
33
+ const Header = (props) => {
34
+ const { as: Tag = "a", href, selected, children, ...restProps } = props;
35
+ const className = classNames("i-tree-item-header", {
36
+ "i-tree-item-selected": selected,
37
+ });
38
+ if (typeof Tag === "string") {
39
+ return (jsxRuntime.jsx(Tag, { href: href, className: className, ...restProps, children: children }));
40
+ }
41
+ return (jsxRuntime.jsx(Tag, { to: href || "", className: className, ...restProps, children: children }));
42
+ };
43
+ const TreeItem = (props) => {
44
+ const { item, depth = 0, index, selected, checked = [], partofs = {}, checkable, nodeProps, renderExtra, onItemClick, onItemSelect, onItemCheck, ...restProps } = props;
45
+ const { as, key = "", href, icon: icon$1, title, expanded, disabled } = item;
46
+ const children = item[nodeProps.children];
47
+ const [expand, setExpand] = react.useState(expanded);
48
+ const handleExpand = (e, fromToggle) => {
49
+ if (fromToggle) {
50
+ e.preventDefault();
51
+ e.stopPropagation();
52
+ }
53
+ if (disabled || !children?.length)
54
+ return;
55
+ setExpand((v) => !v);
56
+ };
57
+ const handleItemClick = (e) => {
58
+ if (disabled) {
59
+ e.preventDefault();
60
+ e.stopPropagation();
61
+ return;
62
+ }
63
+ handleExpand(e);
64
+ onItemClick?.(item, e);
65
+ onItemSelect?.(key, item);
66
+ };
67
+ const handleItemCheck = (checked) => onItemCheck?.(item, checked, []);
68
+ const itemChecked = checked.includes(key);
69
+ return (jsxRuntime.jsxs("div", { className: classNames("i-tree-item", {
70
+ "i-tree-expand": expand,
71
+ }), children: [jsxRuntime.jsxs(Header, { as: as, href: href, style: { paddingLeft: `${depth * 1.5 + 0.5}em` }, selected: selected === key, onClick: handleItemClick, children: [checkable && (jsxRuntime.jsx(checkbox.default.Item, { value: itemChecked, partof: !itemChecked && partofs[key], className: 'i-tree-checkbox', onChange: handleItemCheck, onClick: (e) => e.stopPropagation() })), icon$1 && jsxRuntime.jsx("span", { className: 'i-tree-item-icon', children: icon$1 }), jsxRuntime.jsx("span", { className: 'i-tree-item-title', children: title }), renderExtra?.(item), children && (jsxRuntime.jsx(icon.default, { icon: jsxRuntime.jsx(material.KeyboardArrowDownRound, {}), className: 'i-tree-toggle', onClick: (e) => handleExpand(e, true) }))] }), children?.length && (jsxRuntime.jsx("div", { className: 'i-tree-item-content', children: jsxRuntime.jsx(TreeList, { data: children, depth: depth + 1, selected: selected, checkable: checkable, parent: item, partofs: partofs, checked: checked, nodeProps: nodeProps, renderExtra: renderExtra, onItemClick: onItemClick, onItemSelect: onItemSelect, onItemCheck: onItemCheck, ...restProps }) }))] }));
72
+ };
73
+
74
+ exports.TreeItem = TreeItem;
75
+ exports.TreeList = TreeList;
76
+ //# sourceMappingURL=item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.js","sources":["../../../../packages/components/tree/item.tsx"],"sourcesContent":["import { KeyboardArrowDownRound } from \"@ricons/material\";\nimport classNames from \"classnames\";\nimport { MouseEvent, useState } from \"react\";\nimport Checkbox from \"../checkbox\";\nimport Icon from \"../icon\";\nimport { ITree, ITreeHeader, PropsTreeItem } from \"./type\";\n\ninterface ITreeList extends Omit<ITree, \"nodeProps\"> {\n\tnodeProps: {\n\t\tkey: string;\n\t\ttitle: string;\n\t\tchildren: string;\n\t};\n}\n\nexport function TreeList(props: ITreeList) {\n\tconst {\n\t\tdata = [],\n\t\tdepth = 0,\n\t\tround,\n\t\tstyle,\n\t\tclassName,\n\t\tparent,\n\t\tnodeProps,\n\t\t...restProps\n\t} = props;\n\n\tconst contents = data.map((item, i) => {\n\t\tconst { type } = item;\n\t\tconst title = item[nodeProps.title];\n\t\tconst itemKey =\n\t\t\titem[nodeProps.key] ||\n\t\t\t(parent?.key !== undefined ? `${parent.key}-${i}` : `${i}`);\n\n\t\titem.key = itemKey;\n\t\titem.parent = parent;\n\n\t\tif (type === \"title\") {\n\t\t\treturn (\n\t\t\t\t<div key={i} className='i-tree-group-title'>\n\t\t\t\t\t{title}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tif (type && type !== \"item\") {\n\t\t\treturn (\n\t\t\t\t<div key={i} className={`i-tree-type-${type}`}>\n\t\t\t\t\t{title}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<TreeItem\n\t\t\t\tkey={itemKey}\n\t\t\t\tindex={i}\n\t\t\t\titem={item}\n\t\t\t\tdepth={depth}\n\t\t\t\tnodeProps={nodeProps}\n\t\t\t\t{...restProps}\n\t\t\t/>\n\t\t);\n\t});\n\n\tif (depth > 0) return <>{contents}</>;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={classNames(\"i-tree\", className, {\n\t\t\t\t\"i-tree-round\": round,\n\t\t\t})}\n\t\t\tstyle={style}\n\t\t>\n\t\t\t{contents}\n\t\t</div>\n\t);\n}\n\nconst Header = (props: ITreeHeader) => {\n\tconst { as: Tag = \"a\", href, selected, children, ...restProps } = props;\n\n\tconst className = classNames(\"i-tree-item-header\", {\n\t\t\"i-tree-item-selected\": selected,\n\t});\n\n\tif (typeof Tag === \"string\") {\n\t\treturn (\n\t\t\t<Tag href={href} className={className} {...restProps}>\n\t\t\t\t{children}\n\t\t\t</Tag>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Tag to={href || \"\"} className={className} {...restProps}>\n\t\t\t{children}\n\t\t</Tag>\n\t);\n};\n\nexport const TreeItem = (props: PropsTreeItem) => {\n\tconst {\n\t\titem,\n\t\tdepth = 0,\n\t\tindex,\n\t\tselected,\n\t\tchecked = [],\n\t\tpartofs = {},\n\t\tcheckable,\n\t\tnodeProps,\n\t\trenderExtra,\n\t\tonItemClick,\n\t\tonItemSelect,\n\t\tonItemCheck,\n\t\t...restProps\n\t} = props;\n\n\tconst { as, key = \"\", href, icon, title, expanded, disabled } = item;\n\tconst children = item[nodeProps.children];\n\n\tconst [expand, setExpand] = useState(expanded);\n\n\tconst handleExpand = (e: MouseEvent<HTMLElement>, fromToggle?: boolean) => {\n\t\tif (fromToggle) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\n\t\tif (disabled || !children?.length) return;\n\n\t\tsetExpand((v) => !v);\n\t};\n\n\tconst handleItemClick = (e: MouseEvent<HTMLElement>) => {\n\t\tif (disabled) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\treturn;\n\t\t}\n\n\t\thandleExpand(e);\n\t\tonItemClick?.(item, e);\n\t\tonItemSelect?.(key, item);\n\t};\n\n\tconst handleItemCheck = (checked) => onItemCheck?.(item, checked, []);\n\tconst itemChecked = checked.includes(key);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={classNames(\"i-tree-item\", {\n\t\t\t\t\"i-tree-expand\": expand,\n\t\t\t})}\n\t\t>\n\t\t\t<Header\n\t\t\t\tas={as}\n\t\t\t\thref={href}\n\t\t\t\tstyle={{ paddingLeft: `${depth * 1.5 + 0.5}em` }}\n\t\t\t\tselected={selected === key}\n\t\t\t\tonClick={handleItemClick}\n\t\t\t>\n\t\t\t\t{checkable && (\n\t\t\t\t\t<Checkbox.Item\n\t\t\t\t\t\tvalue={itemChecked}\n\t\t\t\t\t\tpartof={!itemChecked && partofs[key]}\n\t\t\t\t\t\tclassName='i-tree-checkbox'\n\t\t\t\t\t\tonChange={handleItemCheck}\n\t\t\t\t\t\tonClick={(e) => e.stopPropagation()}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{icon && <span className='i-tree-item-icon'>{icon}</span>}\n\n\t\t\t\t<span className='i-tree-item-title'>{title}</span>\n\n\t\t\t\t{renderExtra?.(item)}\n\n\t\t\t\t{children && (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={<KeyboardArrowDownRound />}\n\t\t\t\t\t\tclassName='i-tree-toggle'\n\t\t\t\t\t\tonClick={(e) => handleExpand(e, true)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</Header>\n\n\t\t\t{children?.length && (\n\t\t\t\t<div className='i-tree-item-content'>\n\t\t\t\t\t<TreeList\n\t\t\t\t\t\tdata={children}\n\t\t\t\t\t\tdepth={depth + 1}\n\t\t\t\t\t\tselected={selected}\n\t\t\t\t\t\tcheckable={checkable}\n\t\t\t\t\t\tparent={item}\n\t\t\t\t\t\tpartofs={partofs}\n\t\t\t\t\t\tchecked={checked}\n\t\t\t\t\t\tnodeProps={nodeProps}\n\t\t\t\t\t\trenderExtra={renderExtra}\n\t\t\t\t\t\tonItemClick={onItemClick}\n\t\t\t\t\t\tonItemSelect={onItemSelect}\n\t\t\t\t\t\tonItemCheck={onItemCheck}\n\t\t\t\t\t\t{...restProps}\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":["_jsx","_Fragment","icon","useState","_jsxs","Checkbox","Icon","KeyboardArrowDownRound"],"mappings":";;;;;;;;;AAeM,SAAU,QAAQ,CAAC,KAAgB,EAAA;IACxC,MAAM,EACL,IAAI,GAAG,EAAE,EACT,KAAK,GAAG,CAAC,EACT,KAAK,EACL,KAAK,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,GAAG,SAAS,EACZ,GAAG,KAAK;IAET,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAI;AACrC,QAAA,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AACnC,QAAA,MAAM,OAAO,GACZ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;aAClB,MAAM,EAAE,GAAG,KAAK,SAAS,GAAG,CAAA,EAAG,MAAM,CAAC,GAAG,CAAI,CAAA,EAAA,CAAC,EAAE,GAAG,CAAG,EAAA,CAAC,CAAE,CAAA,CAAC;AAE5D,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO;AAClB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AAEpB,QAAA,IAAI,IAAI,KAAK,OAAO,EAAE;YACrB,QACCA,cAAa,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,oBAAoB,EACzC,QAAA,EAAA,KAAK,EADG,EAAA,CAAC,CAEL;;AAIR,QAAA,IAAI,IAAI,IAAI,IAAI,KAAK,MAAM,EAAE;AAC5B,YAAA,QACCA,cAAA,CAAA,KAAA,EAAA,EAAa,SAAS,EAAE,CAAe,YAAA,EAAA,IAAI,CAAE,CAAA,EAAA,QAAA,EAC3C,KAAK,EAAA,EADG,CAAC,CAEL;;QAIR,QACCA,cAAC,CAAA,QAAQ,EAER,EAAA,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EAChB,GAAA,SAAS,EALR,EAAA,OAAO,CAMX;AAEJ,KAAC,CAAC;IAEF,IAAI,KAAK,GAAG,CAAC;QAAE,OAAOA,cAAA,CAAAC,mBAAA,EAAA,EAAA,QAAA,EAAG,QAAQ,EAAA,CAAI;IAErC,QACCD,wBACC,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE;AAC1C,YAAA,cAAc,EAAE,KAAK;SACrB,CAAC,EACF,KAAK,EAAE,KAAK,YAEX,QAAQ,EAAA,CACJ;AAER;AAEA,MAAM,MAAM,GAAG,CAAC,KAAkB,KAAI;AACrC,IAAA,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK;AAEvE,IAAA,MAAM,SAAS,GAAG,UAAU,CAAC,oBAAoB,EAAE;AAClD,QAAA,sBAAsB,EAAE,QAAQ;AAChC,KAAA,CAAC;AAEF,IAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC5B,QAAA,QACCA,cAAC,CAAA,GAAG,EAAC,EAAA,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAM,GAAA,SAAS,YAClD,QAAQ,EAAA,CACJ;;AAIR,IAAA,QACCA,cAAC,CAAA,GAAG,IAAC,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,EAAM,GAAA,SAAS,YACtD,QAAQ,EAAA,CACJ;AAER,CAAC;AAEY,MAAA,QAAQ,GAAG,CAAC,KAAoB,KAAI;AAChD,IAAA,MAAM,EACL,IAAI,EACJ,KAAK,GAAG,CAAC,EACT,KAAK,EACL,QAAQ,EACR,OAAO,GAAG,EAAE,EACZ,OAAO,GAAG,EAAE,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,GAAG,SAAS,EACZ,GAAG,KAAK;AAET,IAAA,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,IAAI,QAAEE,MAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI;IACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;IAEzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAC,QAAQ,CAAC;AAE9C,IAAA,MAAM,YAAY,GAAG,CAAC,CAA0B,EAAE,UAAoB,KAAI;QACzE,IAAI,UAAU,EAAE;YACf,CAAC,CAAC,cAAc,EAAE;YAClB,CAAC,CAAC,eAAe,EAAE;;AAGpB,QAAA,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,MAAM;YAAE;QAEnC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACrB,KAAC;AAED,IAAA,MAAM,eAAe,GAAG,CAAC,CAA0B,KAAI;QACtD,IAAI,QAAQ,EAAE;YACb,CAAC,CAAC,cAAc,EAAE;YAClB,CAAC,CAAC,eAAe,EAAE;YACnB;;QAGD,YAAY,CAAC,CAAC,CAAC;AACf,QAAA,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;AACtB,QAAA,YAAY,GAAG,GAAG,EAAE,IAAI,CAAC;AAC1B,KAAC;AAED,IAAA,MAAM,eAAe,GAAG,CAAC,OAAO,KAAK,WAAW,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;IACrE,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;AAEzC,IAAA,QACCC,eACC,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,aAAa,EAAE;AACpC,YAAA,eAAe,EAAE,MAAM;SACvB,CAAC,EAAA,QAAA,EAAA,CAEFA,gBAAC,MAAM,EAAA,EACN,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAA,EAAA,CAAI,EAAE,EAChD,QAAQ,EAAE,QAAQ,KAAK,GAAG,EAC1B,OAAO,EAAE,eAAe,EAEvB,QAAA,EAAA,CAAA,SAAS,KACTJ,cAAA,CAACK,gBAAQ,CAAC,IAAI,IACb,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,EACpC,SAAS,EAAC,iBAAiB,EAC3B,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,EAClC,CAAA,CACF,EAEAH,MAAI,IAAIF,yBAAM,SAAS,EAAC,kBAAkB,EAAA,QAAA,EAAEE,MAAI,EAAA,CAAQ,EAEzDF,cAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAC,mBAAmB,EAAE,QAAA,EAAA,KAAK,GAAQ,EAEjD,WAAW,GAAG,IAAI,CAAC,EAEnB,QAAQ,KACRA,cAAC,CAAAM,YAAI,IACJ,IAAI,EAAEN,cAAC,CAAAO,+BAAsB,EAAG,EAAA,CAAA,EAChC,SAAS,EAAC,eAAe,EACzB,OAAO,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,EACpC,CAAA,CACF,IACO,EAER,QAAQ,EAAE,MAAM,KAChBP,wBAAK,SAAS,EAAC,qBAAqB,EACnC,QAAA,EAAAA,cAAA,CAAC,QAAQ,EACR,EAAA,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,KAAK,GAAG,CAAC,EAChB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACpB,GAAA,SAAS,GACZ,EACG,CAAA,CACN,CACI,EAAA,CAAA;AAER;;;;;"}
@@ -0,0 +1,136 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var ahooks = require('ahooks');
7
+ var react = require('react');
8
+ var item = require('./item.js');
9
+
10
+ const defaultNodeProps = {
11
+ key: "key",
12
+ title: "title",
13
+ children: "children",
14
+ };
15
+ const Tree = (props) => {
16
+ const { data = [], ref, selected, checked = [], disabledRelated, nodeProps, onItemSelect, onItemCheck, ...restProps } = props;
17
+ const state = ahooks.useReactive({
18
+ selected,
19
+ checked,
20
+ partofs: {},
21
+ nodeMaps: new Map(),
22
+ });
23
+ const oNodeProps = Object.assign({}, defaultNodeProps, nodeProps);
24
+ const isChecked = (key) => state.checked.includes(key || "");
25
+ const checkItem = (item, checked, direction) => {
26
+ const { key = "", parent, children } = item;
27
+ const shouldChanged = { [key]: checked };
28
+ const partofs = { [key]: false };
29
+ if (disabledRelated)
30
+ return [shouldChanged];
31
+ if (checked) {
32
+ if (parent && direction !== "leaf") {
33
+ const hasUnchecked = parent.children?.some((o) => o.key !== key && !isChecked(o.key));
34
+ const [changes, parts] = checkItem(parent, true, "root");
35
+ if (!hasUnchecked) {
36
+ Object.assign(shouldChanged, changes);
37
+ }
38
+ Object.assign(partofs, hasUnchecked ? parts : {}, {
39
+ [parent.key]: true,
40
+ });
41
+ }
42
+ if (children?.length && direction !== "root") {
43
+ children.map((o) => {
44
+ if (isChecked(o.key))
45
+ return;
46
+ const [changes] = checkItem(o, true, "leaf");
47
+ Object.assign(shouldChanged, changes);
48
+ partofs[o.key] = false;
49
+ });
50
+ }
51
+ return [shouldChanged, partofs];
52
+ }
53
+ if (parent && direction !== "leaf") {
54
+ const [changes, parts] = checkItem(parent, false, "root");
55
+ Object.assign(shouldChanged, changes);
56
+ const hasChecked = parent.children?.some((o) => isChecked(o.key) && o.key !== key);
57
+ Object.assign(partofs, hasChecked ? {} : parts, {
58
+ [parent.key]: hasChecked,
59
+ [key]: false,
60
+ });
61
+ }
62
+ if (children?.length && direction !== "root") {
63
+ children.map((o) => {
64
+ const [changes] = checkItem(o, false, "leaf");
65
+ if (!isChecked(o.key))
66
+ return;
67
+ Object.assign(shouldChanged, changes);
68
+ partofs[o.key] = false;
69
+ });
70
+ }
71
+ return [shouldChanged, partofs];
72
+ };
73
+ const handleCheck = (item, checked) => {
74
+ const [shouldChanged, partofs] = checkItem(item, checked);
75
+ const changedKeys = Object.keys(shouldChanged);
76
+ state.checked = checked
77
+ ? Array.from(new Set([...state.checked, ...changedKeys]))
78
+ : state.checked.filter((k) => !changedKeys.includes(k));
79
+ Object.assign(state.partofs, partofs);
80
+ onItemCheck?.(item, checked, state.checked);
81
+ };
82
+ const handleSelect = (key, item) => {
83
+ if (!props.selectable)
84
+ return;
85
+ state.selected = key;
86
+ onItemSelect?.(key, item);
87
+ };
88
+ react.useEffect(() => {
89
+ if (selected === undefined)
90
+ return;
91
+ state.selected = selected;
92
+ }, [selected]);
93
+ react.useEffect(() => {
94
+ state.nodeMaps.clear();
95
+ const { key, children } = oNodeProps;
96
+ const recursive = (nodes) => {
97
+ nodes.map((o) => {
98
+ state.nodeMaps.set(o[key], o);
99
+ o[children]?.length > 0 && recursive(o[children]);
100
+ });
101
+ };
102
+ recursive(data);
103
+ }, [data]);
104
+ react.useImperativeHandle(ref, () => {
105
+ return {
106
+ getChecked: () => {
107
+ const items = [];
108
+ state.checked.map((k) => {
109
+ const item = state.nodeMaps.get(k);
110
+ items.push(item);
111
+ });
112
+ return [state.checked, items];
113
+ },
114
+ getSelected: () => {
115
+ const item = state.nodeMaps.get(state.selected);
116
+ return [state.selected, item];
117
+ },
118
+ getPartofs: () => {
119
+ const items = [];
120
+ const keys = Object.keys(state.partofs).filter((k) => {
121
+ const indeterminate = state.partofs[k];
122
+ if (indeterminate) {
123
+ const item = state.nodeMaps.get(k);
124
+ items.push(item);
125
+ }
126
+ return indeterminate;
127
+ });
128
+ return [keys, items];
129
+ },
130
+ };
131
+ });
132
+ return (jsxRuntime.jsx(item.TreeList, { data: data, selected: state.selected, checked: state.checked, partofs: state.partofs, nodeProps: oNodeProps, onItemCheck: handleCheck, onItemSelect: handleSelect, ...restProps }));
133
+ };
134
+
135
+ exports.default = Tree;
136
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","sources":["../../../../packages/components/tree/tree.tsx"],"sourcesContent":["import { useReactive } from \"ahooks\";\nimport { useEffect, useImperativeHandle } from \"react\";\nimport \"./index.css\";\nimport { TreeList } from \"./item\";\nimport { ITree, ITreeItem } from \"./type\";\n\nconst defaultNodeProps = {\n\tkey: \"key\",\n\ttitle: \"title\",\n\tchildren: \"children\",\n};\n\nconst Tree = (props: ITree) => {\n\tconst {\n\t\tdata = [],\n\t\tref,\n\t\tselected,\n\t\tchecked = [],\n\t\tdisabledRelated,\n\t\tnodeProps,\n\t\tonItemSelect,\n\t\tonItemCheck,\n\t\t...restProps\n\t} = props;\n\tconst state = useReactive({\n\t\tselected,\n\t\tchecked,\n\t\tpartofs: {} as Record<string, boolean>,\n\t\tnodeMaps: new Map(),\n\t});\n\tconst oNodeProps = Object.assign({}, defaultNodeProps, nodeProps);\n\n\tconst isChecked = (key?: string) => state.checked.includes(key || \"\");\n\n\tconst checkItem = (\n\t\titem: ITreeItem,\n\t\tchecked: boolean,\n\t\tdirection?: \"root\" | \"leaf\"\n\t) => {\n\t\tconst { key = \"\", parent, children } = item;\n\t\tconst shouldChanged = { [key]: checked };\n\t\tconst partofs = { [key]: false };\n\n\t\tif (disabledRelated) return [shouldChanged];\n\n\t\tif (checked) {\n\t\t\tif (parent && direction !== \"leaf\") {\n\t\t\t\tconst hasUnchecked = parent.children?.some(\n\t\t\t\t\t(o) => o.key !== key && !isChecked(o.key)\n\t\t\t\t);\n\n\t\t\t\tconst [changes, parts] = checkItem(parent, true, \"root\");\n\n\t\t\t\tif (!hasUnchecked) {\n\t\t\t\t\tObject.assign(shouldChanged, changes);\n\t\t\t\t}\n\n\t\t\t\tObject.assign(partofs, hasUnchecked ? parts : {}, {\n\t\t\t\t\t[parent.key as string]: true,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (children?.length && direction !== \"root\") {\n\t\t\t\tchildren.map((o) => {\n\t\t\t\t\tif (isChecked(o.key)) return;\n\n\t\t\t\t\tconst [changes] = checkItem(o, true, \"leaf\");\n\n\t\t\t\t\tObject.assign(shouldChanged, changes);\n\t\t\t\t\tpartofs[o.key as string] = false;\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn [shouldChanged, partofs];\n\t\t}\n\n\t\tif (parent && direction !== \"leaf\") {\n\t\t\tconst [changes, parts] = checkItem(parent, false, \"root\");\n\n\t\t\tObject.assign(shouldChanged, changes);\n\n\t\t\tconst hasChecked = parent.children?.some(\n\t\t\t\t(o) => isChecked(o.key) && o.key !== key\n\t\t\t);\n\n\t\t\tObject.assign(partofs, hasChecked ? {} : parts, {\n\t\t\t\t[parent.key as string]: hasChecked,\n\t\t\t\t[key]: false,\n\t\t\t});\n\t\t}\n\t\tif (children?.length && direction !== \"root\") {\n\t\t\tchildren.map((o) => {\n\t\t\t\tconst [changes] = checkItem(o, false, \"leaf\");\n\n\t\t\t\tif (!isChecked(o.key)) return;\n\n\t\t\t\tObject.assign(shouldChanged, changes);\n\t\t\t\tpartofs[o.key as string] = false;\n\t\t\t});\n\t\t}\n\n\t\treturn [shouldChanged, partofs];\n\t};\n\n\tconst handleCheck = (item: ITreeItem, checked: boolean) => {\n\t\tconst [shouldChanged, partofs] = checkItem(item, checked);\n\t\tconst changedKeys = Object.keys(shouldChanged);\n\n\t\tstate.checked = checked\n\t\t\t? Array.from(new Set([...state.checked, ...changedKeys]))\n\t\t\t: state.checked.filter((k) => !changedKeys.includes(k));\n\n\t\tObject.assign(state.partofs, partofs);\n\n\t\tonItemCheck?.(item, checked, state.checked);\n\t};\n\n\tconst handleSelect = (key: string, item: ITreeItem) => {\n\t\tif (!props.selectable) return;\n\n\t\tstate.selected = key;\n\t\tonItemSelect?.(key, item);\n\t};\n\n\tuseEffect(() => {\n\t\tif (selected === undefined) return;\n\n\t\tstate.selected = selected;\n\t}, [selected]);\n\n\tuseEffect(() => {\n\t\tstate.nodeMaps.clear();\n\n\t\tconst { key, children } = oNodeProps;\n\t\tconst recursive = (nodes) => {\n\t\t\tnodes.map((o) => {\n\t\t\t\tstate.nodeMaps.set(o[key], o);\n\n\t\t\t\to[children]?.length > 0 && recursive(o[children]);\n\t\t\t});\n\t\t};\n\n\t\trecursive(data);\n\t}, [data]);\n\n\tuseImperativeHandle(ref, () => {\n\t\treturn {\n\t\t\tgetChecked: () => {\n\t\t\t\tconst items: ITreeItem[] = [];\n\t\t\t\tstate.checked.map((k) => {\n\t\t\t\t\tconst item = state.nodeMaps.get(k);\n\t\t\t\t\titems.push(item);\n\t\t\t\t});\n\t\t\t\treturn [state.checked, items];\n\t\t\t},\n\t\t\tgetSelected: () => {\n\t\t\t\tconst item = state.nodeMaps.get(state.selected);\n\t\t\t\treturn [state.selected, item];\n\t\t\t},\n\t\t\tgetPartofs: () => {\n\t\t\t\tconst items: ITreeItem[] = [];\n\t\t\t\tconst keys = Object.keys(state.partofs).filter((k) => {\n\t\t\t\t\tconst indeterminate = state.partofs[k];\n\n\t\t\t\t\tif (indeterminate) {\n\t\t\t\t\t\tconst item = state.nodeMaps.get(k);\n\t\t\t\t\t\titems.push(item);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn indeterminate;\n\t\t\t\t});\n\n\t\t\t\treturn [keys, items];\n\t\t\t},\n\t\t};\n\t});\n\n\treturn (\n\t\t<TreeList\n\t\t\tdata={data}\n\t\t\tselected={state.selected}\n\t\t\tchecked={state.checked}\n\t\t\tpartofs={state.partofs}\n\t\t\tnodeProps={oNodeProps}\n\t\t\tonItemCheck={handleCheck}\n\t\t\tonItemSelect={handleSelect}\n\t\t\t{...restProps}\n\t\t/>\n\t);\n};\n\nexport default Tree;\n"],"names":["useReactive","useEffect","useImperativeHandle","_jsx","TreeList"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var upload = require('./upload.js');
6
+
7
+
8
+
9
+ exports.default = upload.default;
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,66 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var material = require('@ricons/material');
7
+ var radash = require('radash');
8
+ var SortableContainer = require('react-easy-sort');
9
+ var type = require('../../js/usePreview/type.js');
10
+ var utils = require('../../js/utils.js');
11
+ var icon = require('../icon/icon.js');
12
+ require('../image/index.js');
13
+ var helpericon = require('../utils/helpericon/helpericon.js');
14
+ var image = require('../image/image.js');
15
+
16
+ const ListContainer = (props) => {
17
+ const { sortable, onSortEnd, itemProps, ...restProps } = props;
18
+ const customProps = {
19
+ className: "i-upload-list",
20
+ onClick: (e) => {
21
+ e.stopPropagation();
22
+ e.preventDefault();
23
+ },
24
+ };
25
+ if (!sortable) {
26
+ return jsxRuntime.jsx("div", { ...customProps, ...restProps });
27
+ }
28
+ return (jsxRuntime.jsx(SortableContainer, { draggedItemClassName: 'i-upload-item-dragged', onSortEnd: onSortEnd, ...customProps, ...restProps }));
29
+ };
30
+ const FileListItem = (props) => {
31
+ const { ref, mode, index, file, renderItem, onRemove, onPreview } = props;
32
+ if (!file)
33
+ return "";
34
+ const { id, name, size, url, src } = file;
35
+ const type$1 = utils.getFileType(name, file.type);
36
+ if (renderItem) {
37
+ return renderItem(file, index);
38
+ }
39
+ const CloseBtn = (jsxRuntime.jsx(helpericon.default, { active: true, className: 'i-upload-delete', onClick: (e) => {
40
+ e.stopPropagation();
41
+ e.preventDefault();
42
+ onRemove(index);
43
+ } }));
44
+ switch (mode) {
45
+ case "card":
46
+ let node = jsxRuntime.jsx(jsxRuntime.Fragment, {});
47
+ switch (type$1) {
48
+ case type.TFileType.IMAGE:
49
+ node = (jsxRuntime.jsx(image.default, { lazyload: true, src: url || src, fit: 'cover', onMouseDown: (e) => e.preventDefault() }));
50
+ break;
51
+ case type.TFileType.VIDEO:
52
+ node = jsxRuntime.jsx("video", { src: url || src, preload: 'none' });
53
+ break;
54
+ default:
55
+ node = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(icon.default, { icon: jsxRuntime.jsx(material.ListAltRound, {}) }), jsxRuntime.jsx("span", { className: 'i-upload-file-name', children: radash.title(name) })] }));
56
+ break;
57
+ }
58
+ return (jsxRuntime.jsxs("div", { ref: ref, title: name, className: 'i-upload-item-card', onClick: () => onPreview?.(index), children: [node, CloseBtn] }));
59
+ default:
60
+ return (jsxRuntime.jsxs("div", { ref: ref, className: 'i-upload-item', onClick: () => onPreview?.(index), children: [jsxRuntime.jsx("span", { children: name }), jsxRuntime.jsx("i", { className: 'i-upload-size', children: utils.formatBytes(size ?? 0) }), CloseBtn] }, id));
61
+ }
62
+ };
63
+
64
+ exports.ListContainer = ListContainer;
65
+ exports.default = FileListItem;
66
+ //# sourceMappingURL=renderFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderFile.js","sources":["../../../../packages/components/upload/renderFile.tsx"],"sourcesContent":["import { ListAltRound } from \"@ricons/material\";\nimport { title } from \"radash\";\nimport { RefObject } from \"react\";\nimport SortableContainer from \"react-easy-sort\";\nimport { TFileType } from \"../../js/usePreview/type\";\nimport { formatBytes, getFileType } from \"../../js/utils\";\nimport Icon from \"../icon\";\nimport Image from \"../image\";\nimport Helpericon from \"../utils/helpericon\";\nimport { IUploadItem } from \"./type\";\n\nexport const ListContainer = (props) => {\n\tconst { sortable, onSortEnd, itemProps, ...restProps } = props;\n\tconst customProps = {\n\t\tclassName: \"i-upload-list\",\n\t\tonClick: (e) => {\n\t\t\te.stopPropagation();\n\t\t\te.preventDefault();\n\t\t},\n\t};\n\n\tif (!sortable) {\n\t\treturn <div {...customProps} {...restProps} />;\n\t}\n\treturn (\n\t\t<SortableContainer\n\t\t\tdraggedItemClassName='i-upload-item-dragged'\n\t\t\tonSortEnd={onSortEnd}\n\t\t\t{...customProps}\n\t\t\t{...restProps}\n\t\t/>\n\t);\n};\n\nconst FileListItem = (\n\tprops: IUploadItem & { ref?: RefObject<HTMLDivElement | null> }\n) => {\n\tconst { ref, mode, index, file, renderItem, onRemove, onPreview } = props;\n\n\tif (!file) return \"\";\n\n\tconst { id, name, size, url, src } = file;\n\tconst type = getFileType(name, file.type);\n\n\tif (renderItem) {\n\t\treturn renderItem(file, index);\n\t}\n\n\tconst CloseBtn = (\n\t\t<Helpericon\n\t\t\tactive\n\t\t\tclassName='i-upload-delete'\n\t\t\tonClick={(e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\te.preventDefault();\n\t\t\t\tonRemove(index);\n\t\t\t}}\n\t\t/>\n\t);\n\n\tswitch (mode) {\n\t\tcase \"card\":\n\t\t\tlet node = <></>;\n\n\t\t\tswitch (type) {\n\t\t\t\tcase TFileType.IMAGE:\n\t\t\t\t\tnode = (\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\tlazyload\n\t\t\t\t\t\t\tsrc={url || src}\n\t\t\t\t\t\t\tfit='cover'\n\t\t\t\t\t\t\tonMouseDown={(e) => e.preventDefault()}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TFileType.VIDEO:\n\t\t\t\t\tnode = <video src={url || src} preload='none' />;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tnode = (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<Icon icon={<ListAltRound />} />\n\t\t\t\t\t\t\t<span className='i-upload-file-name'>\n\t\t\t\t\t\t\t\t{title(name)}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</>\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tref={ref}\n\t\t\t\t\ttitle={name}\n\t\t\t\t\tclassName='i-upload-item-card'\n\t\t\t\t\tonClick={() => onPreview?.(index)}\n\t\t\t\t>\n\t\t\t\t\t{node}\n\t\t\t\t\t{CloseBtn}\n\t\t\t\t</div>\n\t\t\t);\n\t\tdefault:\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tref={ref}\n\t\t\t\t\tkey={id}\n\t\t\t\t\tclassName='i-upload-item'\n\t\t\t\t\tonClick={() => onPreview?.(index)}\n\t\t\t\t>\n\t\t\t\t\t<span>{name}</span>\n\n\t\t\t\t\t<i className='i-upload-size'>{formatBytes(size ?? 0)}</i>\n\n\t\t\t\t\t{CloseBtn}\n\t\t\t\t</div>\n\t\t\t);\n\t}\n};\n\nexport default FileListItem;\n"],"names":["_jsx","type","getFileType","Helpericon","_Fragment","TFileType","Image","_jsxs","Icon","ListAltRound","title","formatBytes"],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var material = require('@ricons/material');
7
+ var ahooks = require('ahooks');
8
+ var classNames = require('classnames');
9
+ var radash = require('radash');
10
+ var react = require('react');
11
+ var SortableContainer = require('react-easy-sort');
12
+ var index = require('../../js/usePreview/index.js');
13
+ var utils = require('../../js/utils.js');
14
+ require('../button/index.js');
15
+ var icon = require('../icon/icon.js');
16
+ var container = require('../input/container.js');
17
+ var renderFile = require('./renderFile.js');
18
+ var button = require('../button/button.js');
19
+
20
+ const Upload = (props) => {
21
+ const { ref, label, labelInline, value, files = [], initialFiles, placeholder, status = "normal", message, className, style, children, defaultText = "Upload", mode = "default", cardSize = "4em", disabled, sortable, limit = props.multiple ? Infinity : 1, multiple, renderItem, shouldUpload = () => true, uploader, onChange, onFilesChange, onUpload, ...restProps } = props;
22
+ const state = ahooks.useReactive({
23
+ files,
24
+ value,
25
+ status,
26
+ message,
27
+ });
28
+ const inputRef = react.useRef(null);
29
+ const preview = index.default();
30
+ const trigger = react.useMemo(() => {
31
+ if (children)
32
+ return children;
33
+ switch (mode) {
34
+ case "card":
35
+ return (jsxRuntime.jsx(button.default, { className: 'i-upload-card-btn color-5', square: true, flat: true, outline: true, disabled: disabled, children: jsxRuntime.jsx(icon.default, { icon: jsxRuntime.jsx(material.PlusSharp, {}) }) }));
36
+ default:
37
+ return (jsxRuntime.jsx(button.default, { className: 'i-upload-btn', disabled: disabled, children: defaultText }));
38
+ }
39
+ }, [mode, children]);
40
+ const handleChange = (e) => {
41
+ const files = Array.from(e.target.files || []);
42
+ const { files: before } = state;
43
+ const changed = [];
44
+ files.map((f) => {
45
+ const { id, name, size, type } = f;
46
+ const same = before.find((pf) => {
47
+ const { name: n, size: s, type: t } = pf;
48
+ return n === name && s === size && t === type;
49
+ });
50
+ const src = URL.createObjectURL(f);
51
+ Object.assign(f, {
52
+ id: id ?? radash.uid(7),
53
+ src: src ?? f.name,
54
+ url: src ?? f.name,
55
+ });
56
+ !same && changed.push(f);
57
+ });
58
+ const after = [...before, ...changed];
59
+ Object.assign(state, {
60
+ files: multiple ? after.slice(0, limit) : [after.at(-1)],
61
+ status,
62
+ message,
63
+ });
64
+ onFilesChange?.(state.files, changed, e);
65
+ onChange?.(state.files, e);
66
+ handleUpload(changed);
67
+ inputRef.current && (inputRef.current.value = "");
68
+ };
69
+ const handleRemove = (i) => {
70
+ const [...files] = state.files;
71
+ const changed = files.splice(i, 1);
72
+ URL.revokeObjectURL(changed[0]?.src || "");
73
+ state.files = files;
74
+ onFilesChange?.(files, changed);
75
+ onChange?.(files);
76
+ inputRef.current && (inputRef.current.value = "");
77
+ };
78
+ const handleUpload = async (files) => {
79
+ if (!uploader)
80
+ return;
81
+ const shouldUploadFiles = files.filter(shouldUpload);
82
+ const result = Promise.all(shouldUploadFiles.map(uploader));
83
+ return onUpload?.(result);
84
+ };
85
+ const handlePreview = (i) => {
86
+ preview({ items: state.files, initial: i });
87
+ };
88
+ const setFileList = (files) => {
89
+ if (!files)
90
+ return;
91
+ state.files = files.map((f) => {
92
+ return { ...f, id: f.id ?? radash.uid(7) };
93
+ });
94
+ };
95
+ const handleSortEnd = (before, after) => {
96
+ const [...files] = state.files;
97
+ state.files = utils.arrayMove(files, before, after);
98
+ onChange?.(state.files);
99
+ };
100
+ react.useEffect(() => {
101
+ Object.assign(state, {
102
+ status,
103
+ message,
104
+ });
105
+ }, [status, message]);
106
+ react.useEffect(() => {
107
+ state.files = value?.filter?.((file) => !!file.id) ?? [];
108
+ }, [value]);
109
+ react.useEffect(() => {
110
+ setFileList(initialFiles);
111
+ }, []);
112
+ react.useImperativeHandle(ref, () => ({
113
+ getFileList: () => state.files,
114
+ setFileList,
115
+ }), []);
116
+ return (jsxRuntime.jsx(container.default, { as: 'div', label: label, labelInline: labelInline, className: classNames("i-input-label-file", className), style: style, children: jsxRuntime.jsxs("div", { className: classNames("i-upload-inner", {
117
+ [`i-upload-${mode}`]: mode !== "default",
118
+ }), style: { ["--upload-card-size"]: cardSize }, children: [jsxRuntime.jsx(renderFile.ListContainer, { sortable: sortable, onSortEnd: handleSortEnd, children: state.files.map((file, i) => {
119
+ const node = (jsxRuntime.jsx(renderFile.default, { index: i, file: file, mode: mode, renderItem: renderItem, onRemove: handleRemove, onPreview: handlePreview }, i));
120
+ if (!sortable)
121
+ return node;
122
+ return jsxRuntime.jsx(SortableContainer.SortableItem, { children: node }, i);
123
+ }) }), state.message && (jsxRuntime.jsx("span", { className: 'i-upload-message', children: state.message })), state.files.length < limit && (jsxRuntime.jsxs("label", { children: [jsxRuntime.jsx("input", { ...restProps, disabled: disabled, ref: inputRef, type: 'file', className: 'i-input-file-hidden', multiple: multiple, onChange: handleChange }), trigger] }))] }) }));
124
+ };
125
+
126
+ exports.default = Upload;
127
+ //# sourceMappingURL=upload.js.map