react-public-components 1.2.2 → 1.2.4

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 (368) hide show
  1. package/dist/ActivityLog/index.cjs +2 -2
  2. package/dist/ActivityLog/index.js +1 -1
  3. package/dist/AudioPlayer/index.cjs +3 -3
  4. package/dist/AudioPlayer/index.js +2 -2
  5. package/dist/CascadeDrawer/index.cjs +2 -2
  6. package/dist/CascadeDrawer/index.d.ts +1 -1
  7. package/dist/CascadeDrawer/index.js +1 -1
  8. package/dist/CodeSnippet/index.cjs +3 -2
  9. package/dist/CodeSnippet/index.css +236 -11
  10. package/dist/CodeSnippet/index.css.map +1 -1
  11. package/dist/CodeSnippet/index.d.ts +49 -4
  12. package/dist/CodeSnippet/index.js +2 -1
  13. package/dist/CodeSnippet/sandbox.d.ts +26 -0
  14. package/dist/CollapseBox/index.cjs +3 -3
  15. package/dist/CollapseBox/index.js +2 -2
  16. package/dist/ColorPicker/index.cjs +5 -5
  17. package/dist/ColorPicker/index.js +2 -2
  18. package/dist/ContextMenu/index.cjs +3 -3
  19. package/dist/ContextMenu/index.js +2 -2
  20. package/dist/CopyButton/index.cjs +3 -3
  21. package/dist/CopyButton/index.js +2 -2
  22. package/dist/CountUp/index.cjs +2 -2
  23. package/dist/CountUp/index.js +1 -1
  24. package/dist/CronPicker/index.cjs +4 -4
  25. package/dist/CronPicker/index.js +3 -3
  26. package/dist/DebounceSelect/index.cjs +3 -3
  27. package/dist/DebounceSelect/index.d.ts +1 -1
  28. package/dist/DebounceSelect/index.js +2 -2
  29. package/dist/DiffViewer/index.cjs +2 -2
  30. package/dist/DiffViewer/index.js +1 -1
  31. package/dist/DisabledBox/index.cjs +3 -3
  32. package/dist/DisabledBox/index.d.ts +11 -3
  33. package/dist/DisabledBox/index.js +2 -2
  34. package/dist/DragSortList/index.cjs +3 -2
  35. package/dist/DragSortList/index.css +82 -13
  36. package/dist/DragSortList/index.css.map +1 -1
  37. package/dist/DragSortList/index.d.ts +8 -2
  38. package/dist/DragSortList/index.js +2 -1
  39. package/dist/EnvBadge/index.cjs +2 -2
  40. package/dist/EnvBadge/index.js +1 -1
  41. package/dist/FilePreviewer/index.cjs +4 -4
  42. package/dist/FilePreviewer/index.js +2 -2
  43. package/dist/Fullscreen/index.cjs +3 -3
  44. package/dist/Fullscreen/index.js +2 -2
  45. package/dist/GuidedTour/index.cjs +3 -3
  46. package/dist/GuidedTour/index.js +2 -2
  47. package/dist/ImageCropper/index.cjs +3 -3
  48. package/dist/ImageCropper/index.js +2 -2
  49. package/dist/InfiniteScrollList/index.cjs +3 -3
  50. package/dist/InfiniteScrollList/index.js +2 -2
  51. package/dist/JsonDiffViewer/index.cjs +2 -2
  52. package/dist/JsonDiffViewer/index.js +1 -1
  53. package/dist/JsonEditor/index.cjs +4 -4
  54. package/dist/JsonEditor/index.d.ts +1 -1
  55. package/dist/JsonEditor/index.js +3 -3
  56. package/dist/JsonTree/index.cjs +2 -2
  57. package/dist/JsonTree/index.d.ts +1 -1
  58. package/dist/JsonTree/index.js +1 -1
  59. package/dist/KanbanBoard/index.cjs +2 -2
  60. package/dist/KanbanBoard/index.js +1 -1
  61. package/dist/KeyValEditor/index.cjs +3 -3
  62. package/dist/KeyValEditor/index.js +2 -2
  63. package/dist/Marquee/index.cjs +2 -2
  64. package/dist/Marquee/index.js +1 -1
  65. package/dist/MetricCard/index.cjs +3 -3
  66. package/dist/MetricCard/index.js +2 -2
  67. package/dist/NumericRangeInput/index.cjs +2 -2
  68. package/dist/NumericRangeInput/index.js +1 -1
  69. package/dist/PasswordStrength/index.cjs +4 -4
  70. package/dist/PasswordStrength/index.js +2 -2
  71. package/dist/PdfViewer/index.cjs +3 -3
  72. package/dist/PdfViewer/index.js +2 -2
  73. package/dist/QrCodeCard/index.cjs +3 -3
  74. package/dist/QrCodeCard/index.css +122 -32
  75. package/dist/QrCodeCard/index.css.map +1 -1
  76. package/dist/QrCodeCard/index.d.ts +10 -2
  77. package/dist/QrCodeCard/index.js +2 -2
  78. package/dist/QuickDateRange/index.cjs +2 -2
  79. package/dist/QuickDateRange/index.js +1 -1
  80. package/dist/ScrollTracker/index.cjs +4 -4
  81. package/dist/ScrollTracker/index.js +1 -1
  82. package/dist/SegmentedProgress/index.cjs +2 -2
  83. package/dist/SegmentedProgress/index.js +1 -1
  84. package/dist/SensitiveMask/index.cjs +5 -5
  85. package/dist/SensitiveMask/index.js +3 -3
  86. package/dist/Splitter/index.cjs +3 -3
  87. package/dist/Splitter/index.js +2 -2
  88. package/dist/StatusTimeline/index.cjs +2 -2
  89. package/dist/StatusTimeline/index.js +1 -1
  90. package/dist/TagInput/index.cjs +3 -3
  91. package/dist/TagInput/index.js +2 -2
  92. package/dist/TextEllipsis/index.cjs +4 -4
  93. package/dist/TextEllipsis/index.js +3 -3
  94. package/dist/TreeFilterPanel/index.cjs +2 -2
  95. package/dist/TreeFilterPanel/index.js +1 -1
  96. package/dist/TreeTransfer/index.cjs +3 -3
  97. package/dist/TreeTransfer/index.js +2 -2
  98. package/dist/TrendIndicator/index.cjs +2 -2
  99. package/dist/TrendIndicator/index.js +1 -1
  100. package/dist/VideoPlayer/index.cjs +3 -3
  101. package/dist/VideoPlayer/index.js +2 -2
  102. package/dist/VirtualList/index.cjs +2 -2
  103. package/dist/VirtualList/index.js +1 -1
  104. package/dist/Watermark/index.cjs +2 -2
  105. package/dist/Watermark/index.js +1 -1
  106. package/dist/{chunk-L7ULSFW6.cjs → chunk-2EIAWXFA.cjs} +18 -8
  107. package/dist/chunk-2EIAWXFA.cjs.map +1 -0
  108. package/dist/{chunk-TGSKTHTV.js → chunk-2IDVNTKR.js} +119 -19
  109. package/dist/chunk-2IDVNTKR.js.map +1 -0
  110. package/dist/{chunk-DNRZCHZG.js → chunk-2INP6NM4.js} +4 -11
  111. package/dist/chunk-2INP6NM4.js.map +1 -0
  112. package/dist/{chunk-I3HBI52O.js → chunk-2O2A5XYF.js} +3 -11
  113. package/dist/chunk-2O2A5XYF.js.map +1 -0
  114. package/dist/{chunk-VTANPKPT.js → chunk-3R3NOO4K.js} +2 -2
  115. package/dist/chunk-3R3NOO4K.js.map +1 -0
  116. package/dist/chunk-4KMVABTM.js +419 -0
  117. package/dist/chunk-4KMVABTM.js.map +1 -0
  118. package/dist/{chunk-K5FWY6HB.cjs → chunk-4TMBGQQE.cjs} +5 -5
  119. package/dist/{chunk-K5FWY6HB.cjs.map → chunk-4TMBGQQE.cjs.map} +1 -1
  120. package/dist/{chunk-GZCNFM6C.js → chunk-56VELHCH.js} +8 -17
  121. package/dist/chunk-56VELHCH.js.map +1 -0
  122. package/dist/{chunk-PBPGBVQQ.cjs → chunk-5E36FGRP.cjs} +2 -2
  123. package/dist/chunk-5E36FGRP.cjs.map +1 -0
  124. package/dist/{chunk-PVKBGP6Q.js → chunk-5GLC2HU6.js} +2 -2
  125. package/dist/{chunk-PVKBGP6Q.js.map → chunk-5GLC2HU6.js.map} +1 -1
  126. package/dist/{chunk-QKSCFVN2.js → chunk-5HIRDMZH.js} +2 -2
  127. package/dist/chunk-5HIRDMZH.js.map +1 -0
  128. package/dist/{chunk-7AKHSOSZ.js → chunk-5R2YXBXM.js} +3 -11
  129. package/dist/chunk-5R2YXBXM.js.map +1 -0
  130. package/dist/{chunk-F42Z33L7.cjs → chunk-5V4UAS6I.cjs} +2 -2
  131. package/dist/chunk-5V4UAS6I.cjs.map +1 -0
  132. package/dist/{chunk-WWL4VEPH.js → chunk-6UTLBY6Y.js} +2 -2
  133. package/dist/chunk-6UTLBY6Y.js.map +1 -0
  134. package/dist/{chunk-QI7XQDFZ.cjs → chunk-77ANKL4K.cjs} +77 -85
  135. package/dist/chunk-77ANKL4K.cjs.map +1 -0
  136. package/dist/{chunk-4MRZVLM6.cjs → chunk-7SIUSULP.cjs} +2 -2
  137. package/dist/{chunk-4MRZVLM6.cjs.map → chunk-7SIUSULP.cjs.map} +1 -1
  138. package/dist/{chunk-DFHFXKR5.cjs → chunk-7ZBA4NHH.cjs} +5 -12
  139. package/dist/chunk-7ZBA4NHH.cjs.map +1 -0
  140. package/dist/{chunk-RTAQSOVE.cjs → chunk-AHTRLNYK.cjs} +5 -5
  141. package/dist/{chunk-RTAQSOVE.cjs.map → chunk-AHTRLNYK.cjs.map} +1 -1
  142. package/dist/{chunk-G564WB32.cjs → chunk-AMCCRVHG.cjs} +2 -2
  143. package/dist/chunk-AMCCRVHG.cjs.map +1 -0
  144. package/dist/{chunk-NFC2C2TD.js → chunk-ANTFNDH4.js} +65 -72
  145. package/dist/chunk-ANTFNDH4.js.map +1 -0
  146. package/dist/{chunk-LBEGRYTP.js → chunk-AXPVN2OO.js} +77 -85
  147. package/dist/chunk-AXPVN2OO.js.map +1 -0
  148. package/dist/{chunk-OYRX4AY6.js → chunk-BFQV5MYD.js} +2 -2
  149. package/dist/chunk-BFQV5MYD.js.map +1 -0
  150. package/dist/{chunk-AXHJC7FV.js → chunk-BRHXKRG6.js} +3 -11
  151. package/dist/chunk-BRHXKRG6.js.map +1 -0
  152. package/dist/{chunk-BXFP7EAW.cjs → chunk-CPQLXDBR.cjs} +2 -2
  153. package/dist/{chunk-BXFP7EAW.cjs.map → chunk-CPQLXDBR.cjs.map} +1 -1
  154. package/dist/{chunk-AIIXJB34.js → chunk-CURWX7OY.js} +3 -3
  155. package/dist/{chunk-AIIXJB34.js.map → chunk-CURWX7OY.js.map} +1 -1
  156. package/dist/{chunk-XMBTKO5I.cjs → chunk-DJQEBDEP.cjs} +3 -11
  157. package/dist/chunk-DJQEBDEP.cjs.map +1 -0
  158. package/dist/{chunk-ZQBEQK2I.cjs → chunk-ED3ZG2VX.cjs} +5 -5
  159. package/dist/{chunk-ZQBEQK2I.cjs.map → chunk-ED3ZG2VX.cjs.map} +1 -1
  160. package/dist/{chunk-IECISUOZ.js → chunk-EDNBPLUS.js} +61 -59
  161. package/dist/chunk-EDNBPLUS.js.map +1 -0
  162. package/dist/{chunk-5MQCVYVD.js → chunk-EJYTTSW6.js} +16 -6
  163. package/dist/chunk-EJYTTSW6.js.map +1 -0
  164. package/dist/{chunk-AVSFSS7S.cjs → chunk-EKDJPOA3.cjs} +63 -61
  165. package/dist/chunk-EKDJPOA3.cjs.map +1 -0
  166. package/dist/{chunk-5NI6HK5V.js → chunk-EMT4NUI5.js} +3 -3
  167. package/dist/{chunk-5NI6HK5V.js.map → chunk-EMT4NUI5.js.map} +1 -1
  168. package/dist/{chunk-5GCEQDBM.cjs → chunk-EPYD35KB.cjs} +2 -2
  169. package/dist/chunk-EPYD35KB.cjs.map +1 -0
  170. package/dist/{chunk-YPVRTMX6.js → chunk-ETFLLRTO.js} +4 -6
  171. package/dist/chunk-ETFLLRTO.js.map +1 -0
  172. package/dist/{chunk-ZSK74QFN.cjs → chunk-EUOBMHFF.cjs} +3 -7
  173. package/dist/chunk-EUOBMHFF.cjs.map +1 -0
  174. package/dist/chunk-FZH5FL7X.cjs +167 -0
  175. package/dist/chunk-FZH5FL7X.cjs.map +1 -0
  176. package/dist/{chunk-4IBF4R3H.cjs → chunk-GMZSBGSL.cjs} +2 -2
  177. package/dist/{chunk-4IBF4R3H.cjs.map → chunk-GMZSBGSL.cjs.map} +1 -1
  178. package/dist/{chunk-HTA5EG6X.cjs → chunk-HKALWFWZ.cjs} +5 -5
  179. package/dist/{chunk-HTA5EG6X.cjs.map → chunk-HKALWFWZ.cjs.map} +1 -1
  180. package/dist/{chunk-PMNTOEXC.js → chunk-HZERTFL6.js} +2 -2
  181. package/dist/chunk-HZERTFL6.js.map +1 -0
  182. package/dist/{chunk-DKTB6PKI.js → chunk-IBI6AT5Z.js} +3 -10
  183. package/dist/chunk-IBI6AT5Z.js.map +1 -0
  184. package/dist/{chunk-4VGH44DT.js → chunk-IBYFOFSS.js} +14 -4
  185. package/dist/chunk-IBYFOFSS.js.map +1 -0
  186. package/dist/{chunk-2ORGQ2IY.js → chunk-IF4XAUV3.js} +4 -10
  187. package/dist/chunk-IF4XAUV3.js.map +1 -0
  188. package/dist/{chunk-4GQ3X7MG.cjs → chunk-IPS7PC3M.cjs} +18 -27
  189. package/dist/chunk-IPS7PC3M.cjs.map +1 -0
  190. package/dist/{chunk-ELI3LL3K.cjs → chunk-JHVPDKBM.cjs} +14 -6
  191. package/dist/chunk-JHVPDKBM.cjs.map +1 -0
  192. package/dist/{chunk-5G3XVLJF.js → chunk-JNA5AQ2K.js} +3 -3
  193. package/dist/{chunk-5G3XVLJF.js.map → chunk-JNA5AQ2K.js.map} +1 -1
  194. package/dist/{chunk-W6BUNUQM.cjs → chunk-KGZNVN7P.cjs} +3 -10
  195. package/dist/chunk-KGZNVN7P.cjs.map +1 -0
  196. package/dist/{chunk-R7CRWOHG.js → chunk-L7X3RVEY.js} +2 -2
  197. package/dist/{chunk-R7CRWOHG.js.map → chunk-L7X3RVEY.js.map} +1 -1
  198. package/dist/{chunk-EIFN6XMU.cjs → chunk-LFGBZXQH.cjs} +11 -5
  199. package/dist/chunk-LFGBZXQH.cjs.map +1 -0
  200. package/dist/{chunk-XO6PBAAM.cjs → chunk-LFXMUCEO.cjs} +2 -2
  201. package/dist/chunk-LFXMUCEO.cjs.map +1 -0
  202. package/dist/{chunk-C5B5Y4S2.cjs → chunk-M3GQ7RCV.cjs} +4 -4
  203. package/dist/{chunk-C5B5Y4S2.cjs.map → chunk-M3GQ7RCV.cjs.map} +1 -1
  204. package/dist/{chunk-KBBLTGIU.js → chunk-M4FZJALR.js} +13 -5
  205. package/dist/chunk-M4FZJALR.js.map +1 -0
  206. package/dist/{chunk-N7IQ6LYD.cjs → chunk-MGYDOC76.cjs} +15 -5
  207. package/dist/chunk-MGYDOC76.cjs.map +1 -0
  208. package/dist/{chunk-WBN5SAY5.js → chunk-MLYM5LAX.js} +2 -2
  209. package/dist/{chunk-WBN5SAY5.js.map → chunk-MLYM5LAX.js.map} +1 -1
  210. package/dist/{chunk-62NPVN7T.js → chunk-MQJBUHDB.js} +3 -3
  211. package/dist/{chunk-62NPVN7T.js.map → chunk-MQJBUHDB.js.map} +1 -1
  212. package/dist/{chunk-X7EE5DXL.js → chunk-O2YTJPG4.js} +2 -2
  213. package/dist/{chunk-X7EE5DXL.js.map → chunk-O2YTJPG4.js.map} +1 -1
  214. package/dist/{chunk-OJEZ3TKT.js → chunk-OBK6XTUY.js} +2 -2
  215. package/dist/chunk-OBK6XTUY.js.map +1 -0
  216. package/dist/{chunk-6OKTK3AQ.cjs → chunk-ODNGFJVN.cjs} +3 -11
  217. package/dist/chunk-ODNGFJVN.cjs.map +1 -0
  218. package/dist/{chunk-Z5LFRNNJ.js → chunk-OLLVIQPL.js} +3 -3
  219. package/dist/{chunk-Z5LFRNNJ.js.map → chunk-OLLVIQPL.js.map} +1 -1
  220. package/dist/{chunk-FRGH3Q75.cjs → chunk-OONBZRPV.cjs} +4 -4
  221. package/dist/{chunk-FRGH3Q75.cjs.map → chunk-OONBZRPV.cjs.map} +1 -1
  222. package/dist/{chunk-UT5UXO44.js → chunk-P5CS7V4W.js} +3 -3
  223. package/dist/chunk-P5CS7V4W.js.map +1 -0
  224. package/dist/{chunk-HQ65GEM7.js → chunk-PTFKE67K.js} +3 -3
  225. package/dist/{chunk-HQ65GEM7.js.map → chunk-PTFKE67K.js.map} +1 -1
  226. package/dist/{chunk-U2TTRBES.js → chunk-PUMVD7CP.js} +3 -3
  227. package/dist/{chunk-U2TTRBES.js.map → chunk-PUMVD7CP.js.map} +1 -1
  228. package/dist/{chunk-4YPT2HUD.cjs → chunk-PYCSRJSF.cjs} +16 -7
  229. package/dist/chunk-PYCSRJSF.cjs.map +1 -0
  230. package/dist/{chunk-ZAHKA2V2.js → chunk-Q7OVUH5K.js} +3 -3
  231. package/dist/chunk-Q7OVUH5K.js.map +1 -0
  232. package/dist/{chunk-NMYXVZQP.cjs → chunk-QNSEJGF6.cjs} +2 -2
  233. package/dist/chunk-QNSEJGF6.cjs.map +1 -0
  234. package/dist/{chunk-KUW2ZR2A.cjs → chunk-QP3RKA4J.cjs} +65 -72
  235. package/dist/chunk-QP3RKA4J.cjs.map +1 -0
  236. package/dist/{chunk-IUR7SPDA.js → chunk-QRZ2GVVJ.js} +85 -92
  237. package/dist/chunk-QRZ2GVVJ.js.map +1 -0
  238. package/dist/{chunk-Q4QF6UYX.cjs → chunk-R4V3EJVP.cjs} +124 -18
  239. package/dist/chunk-R4V3EJVP.cjs.map +1 -0
  240. package/dist/{chunk-2ARM7X7A.js → chunk-RAF7I4A5.js} +2 -2
  241. package/dist/chunk-RAF7I4A5.js.map +1 -0
  242. package/dist/{chunk-7JLQOQJZ.cjs → chunk-RN5WU7KA.cjs} +7 -7
  243. package/dist/{chunk-7JLQOQJZ.cjs.map → chunk-RN5WU7KA.cjs.map} +1 -1
  244. package/dist/{chunk-FBOTWA6O.cjs → chunk-TNZ2OLGW.cjs} +5 -7
  245. package/dist/chunk-TNZ2OLGW.cjs.map +1 -0
  246. package/dist/chunk-TUDLE3RT.cjs +429 -0
  247. package/dist/chunk-TUDLE3RT.cjs.map +1 -0
  248. package/dist/{chunk-PIIJVF5D.cjs → chunk-TUEVILTA.cjs} +5 -5
  249. package/dist/chunk-TUEVILTA.cjs.map +1 -0
  250. package/dist/{chunk-RWZSTG6Q.cjs → chunk-U2EBNBGK.cjs} +4 -4
  251. package/dist/{chunk-RWZSTG6Q.cjs.map → chunk-U2EBNBGK.cjs.map} +1 -1
  252. package/dist/{chunk-5WHBZH44.cjs → chunk-UAUP5TJK.cjs} +5 -5
  253. package/dist/chunk-UAUP5TJK.cjs.map +1 -0
  254. package/dist/{chunk-SMVAHIBN.cjs → chunk-UCG7ZVK5.cjs} +2 -2
  255. package/dist/chunk-UCG7ZVK5.cjs.map +1 -0
  256. package/dist/{chunk-DATPWEQK.cjs → chunk-UZB7GOEI.cjs} +4 -4
  257. package/dist/{chunk-DATPWEQK.cjs.map → chunk-UZB7GOEI.cjs.map} +1 -1
  258. package/dist/{chunk-AJIIY2QT.cjs → chunk-VF5P7XMC.cjs} +2 -2
  259. package/dist/chunk-VF5P7XMC.cjs.map +1 -0
  260. package/dist/{chunk-R77VVMV5.cjs → chunk-VJOO2DG3.cjs} +87 -94
  261. package/dist/chunk-VJOO2DG3.cjs.map +1 -0
  262. package/dist/{chunk-XB3BT6BU.js → chunk-W5JA3YTT.js} +3 -3
  263. package/dist/{chunk-XB3BT6BU.js.map → chunk-W5JA3YTT.js.map} +1 -1
  264. package/dist/{chunk-ZGWBLJ6U.cjs → chunk-WDHU3BSM.cjs} +2 -2
  265. package/dist/{chunk-ZGWBLJ6U.cjs.map → chunk-WDHU3BSM.cjs.map} +1 -1
  266. package/dist/{chunk-NCNDJTOK.js → chunk-WEGDIRDB.js} +2 -2
  267. package/dist/chunk-WEGDIRDB.js.map +1 -0
  268. package/dist/{chunk-H5VPBP7U.js → chunk-WKF4C6TJ.js} +10 -4
  269. package/dist/chunk-WKF4C6TJ.js.map +1 -0
  270. package/dist/{chunk-EJNMH7ND.js → chunk-WN557PFJ.js} +2 -2
  271. package/dist/chunk-WN557PFJ.js.map +1 -0
  272. package/dist/{chunk-VPHHGQWP.js → chunk-XLOGMDAQ.js} +3 -3
  273. package/dist/{chunk-VPHHGQWP.js.map → chunk-XLOGMDAQ.js.map} +1 -1
  274. package/dist/chunk-XUAHWX6B.js +153 -0
  275. package/dist/chunk-XUAHWX6B.js.map +1 -0
  276. package/dist/chunk-Y54KVULF.js +161 -0
  277. package/dist/chunk-Y54KVULF.js.map +1 -0
  278. package/dist/{chunk-JD4TEUIV.js → chunk-YFHKH6HL.js} +3 -7
  279. package/dist/chunk-YFHKH6HL.js.map +1 -0
  280. package/dist/{chunk-XYJMP23P.cjs → chunk-YP4XTMK3.cjs} +4 -10
  281. package/dist/chunk-YP4XTMK3.cjs.map +1 -0
  282. package/dist/{chunk-7JRGQL63.js → chunk-ZCBT56AG.js} +13 -4
  283. package/dist/chunk-ZCBT56AG.js.map +1 -0
  284. package/dist/{chunk-GCMI5JGQ.cjs → chunk-ZKM664KC.cjs} +2 -2
  285. package/dist/chunk-ZKM664KC.cjs.map +1 -0
  286. package/dist/{chunk-24ND5WB7.cjs → chunk-ZVSN7ADO.cjs} +3 -11
  287. package/dist/chunk-ZVSN7ADO.cjs.map +1 -0
  288. package/dist/chunk-ZWKUHYTV.cjs +155 -0
  289. package/dist/chunk-ZWKUHYTV.cjs.map +1 -0
  290. package/dist/index.cjs +113 -97
  291. package/dist/index.css +440 -56
  292. package/dist/index.css.map +1 -1
  293. package/dist/index.js +46 -46
  294. package/dist/src/icons.d.ts +29 -11
  295. package/dist/src/index.d.ts +3 -1
  296. package/package.json +1 -1
  297. package/dist/chunk-24ND5WB7.cjs.map +0 -1
  298. package/dist/chunk-2ARM7X7A.js.map +0 -1
  299. package/dist/chunk-2ORGQ2IY.js.map +0 -1
  300. package/dist/chunk-4DUMEO5E.cjs +0 -107
  301. package/dist/chunk-4DUMEO5E.cjs.map +0 -1
  302. package/dist/chunk-4GQ3X7MG.cjs.map +0 -1
  303. package/dist/chunk-4VGH44DT.js.map +0 -1
  304. package/dist/chunk-4YPT2HUD.cjs.map +0 -1
  305. package/dist/chunk-5GCEQDBM.cjs.map +0 -1
  306. package/dist/chunk-5MQCVYVD.js.map +0 -1
  307. package/dist/chunk-5WHBZH44.cjs.map +0 -1
  308. package/dist/chunk-6OKTK3AQ.cjs.map +0 -1
  309. package/dist/chunk-7AKHSOSZ.js.map +0 -1
  310. package/dist/chunk-7JRGQL63.js.map +0 -1
  311. package/dist/chunk-AJIIY2QT.cjs.map +0 -1
  312. package/dist/chunk-AVSFSS7S.cjs.map +0 -1
  313. package/dist/chunk-AXHJC7FV.js.map +0 -1
  314. package/dist/chunk-DFHFXKR5.cjs.map +0 -1
  315. package/dist/chunk-DKTB6PKI.js.map +0 -1
  316. package/dist/chunk-DNRZCHZG.js.map +0 -1
  317. package/dist/chunk-EIFN6XMU.cjs.map +0 -1
  318. package/dist/chunk-EJNMH7ND.js.map +0 -1
  319. package/dist/chunk-ELI3LL3K.cjs.map +0 -1
  320. package/dist/chunk-EQ7S5SYM.js +0 -67
  321. package/dist/chunk-EQ7S5SYM.js.map +0 -1
  322. package/dist/chunk-F42Z33L7.cjs.map +0 -1
  323. package/dist/chunk-FBOTWA6O.cjs.map +0 -1
  324. package/dist/chunk-FWRVCH7T.js +0 -37
  325. package/dist/chunk-FWRVCH7T.js.map +0 -1
  326. package/dist/chunk-FYFL4PFD.cjs +0 -69
  327. package/dist/chunk-FYFL4PFD.cjs.map +0 -1
  328. package/dist/chunk-G564WB32.cjs.map +0 -1
  329. package/dist/chunk-GCMI5JGQ.cjs.map +0 -1
  330. package/dist/chunk-GZCNFM6C.js.map +0 -1
  331. package/dist/chunk-H5VPBP7U.js.map +0 -1
  332. package/dist/chunk-I3HBI52O.js.map +0 -1
  333. package/dist/chunk-IECISUOZ.js.map +0 -1
  334. package/dist/chunk-IUR7SPDA.js.map +0 -1
  335. package/dist/chunk-JD4TEUIV.js.map +0 -1
  336. package/dist/chunk-KBBLTGIU.js.map +0 -1
  337. package/dist/chunk-KUW2ZR2A.cjs.map +0 -1
  338. package/dist/chunk-L7ULSFW6.cjs.map +0 -1
  339. package/dist/chunk-LBEGRYTP.js.map +0 -1
  340. package/dist/chunk-N7IQ6LYD.cjs.map +0 -1
  341. package/dist/chunk-NCNDJTOK.js.map +0 -1
  342. package/dist/chunk-NFC2C2TD.js.map +0 -1
  343. package/dist/chunk-NMYXVZQP.cjs.map +0 -1
  344. package/dist/chunk-OJEZ3TKT.js.map +0 -1
  345. package/dist/chunk-OYRX4AY6.js.map +0 -1
  346. package/dist/chunk-PBPGBVQQ.cjs.map +0 -1
  347. package/dist/chunk-PIIJVF5D.cjs.map +0 -1
  348. package/dist/chunk-PMNTOEXC.js.map +0 -1
  349. package/dist/chunk-Q4QF6UYX.cjs.map +0 -1
  350. package/dist/chunk-QI7XQDFZ.cjs.map +0 -1
  351. package/dist/chunk-QKSCFVN2.js.map +0 -1
  352. package/dist/chunk-R77VVMV5.cjs.map +0 -1
  353. package/dist/chunk-SMVAHIBN.cjs.map +0 -1
  354. package/dist/chunk-TGSKTHTV.js.map +0 -1
  355. package/dist/chunk-UT5UXO44.js.map +0 -1
  356. package/dist/chunk-VTANPKPT.js.map +0 -1
  357. package/dist/chunk-W6BUNUQM.cjs.map +0 -1
  358. package/dist/chunk-WWL4VEPH.js.map +0 -1
  359. package/dist/chunk-X4MEHYWV.js +0 -105
  360. package/dist/chunk-X4MEHYWV.js.map +0 -1
  361. package/dist/chunk-XMBTKO5I.cjs.map +0 -1
  362. package/dist/chunk-XO6PBAAM.cjs.map +0 -1
  363. package/dist/chunk-XYJMP23P.cjs.map +0 -1
  364. package/dist/chunk-YJESCN4Y.cjs +0 -39
  365. package/dist/chunk-YJESCN4Y.cjs.map +0 -1
  366. package/dist/chunk-YPVRTMX6.js.map +0 -1
  367. package/dist/chunk-ZAHKA2V2.js.map +0 -1
  368. package/dist/chunk-ZSK74QFN.cjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../QuickDateRange/index.tsx"],"names":[],"mappings":"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","file":"chunk-NCNDJTOK.js","sourcesContent":["import React, { useState, CSSProperties } from 'react';\nimport './index.less';\n\nexport type DateShortcutKey = 'today' | 'yesterday' | '7days' | '30days' | 'thisMonth' | 'lastMonth';\n\nexport interface ShortcutItem {\n\tkey: string;\n\tlabel: string;\n\tcalc: () => [string, string];\n}\n\nexport interface QuickDateRangeProps {\n\t/** 当前选中项的 key(受控) */\n\tactiveKey?: string;\n\t/** 默认选中的 key,默认为 '7days' */\n\tdefaultKey?: string;\n\t/** 切换回调 */\n\tonChange?: (dateRange: [string, string], key: string) => void;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nfunction formatDate(d: Date): string {\n\tconst y = d.getFullYear();\n\tconst m = String(d.getMonth() + 1).padStart(2, '0');\n\tconst day = String(d.getDate()).padStart(2, '0');\n\treturn `${y}-${m}-${day}`;\n}\n\nconst defaultShortcuts: ShortcutItem[] = [\n\t{\n\t\tkey: 'today',\n\t\tlabel: '今日',\n\t\tcalc: () => {\n\t\t\tconst now = formatDate(new Date());\n\t\t\treturn [now, now];\n\t\t},\n\t},\n\t{\n\t\tkey: 'yesterday',\n\t\tlabel: '昨日',\n\t\tcalc: () => {\n\t\t\tconst d = new Date();\n\t\t\td.setDate(d.getDate() - 1);\n\t\t\tconst yStr = formatDate(d);\n\t\t\treturn [yStr, yStr];\n\t\t},\n\t},\n\t{\n\t\tkey: '7days',\n\t\tlabel: '近7天',\n\t\tcalc: () => {\n\t\t\tconst end = new Date();\n\t\t\tconst start = new Date();\n\t\t\tstart.setDate(start.getDate() - 6);\n\t\t\treturn [formatDate(start), formatDate(end)];\n\t\t},\n\t},\n\t{\n\t\tkey: '30days',\n\t\tlabel: '近30天',\n\t\tcalc: () => {\n\t\t\tconst end = new Date();\n\t\t\tconst start = new Date();\n\t\t\tstart.setDate(start.getDate() - 29);\n\t\t\treturn [formatDate(start), formatDate(end)];\n\t\t},\n\t},\n\t{\n\t\tkey: 'thisMonth',\n\t\tlabel: '本月',\n\t\tcalc: () => {\n\t\t\tconst now = new Date();\n\t\t\tconst start = new Date(now.getFullYear(), now.getMonth(), 1);\n\t\t\treturn [formatDate(start), formatDate(now)];\n\t\t},\n\t},\n\t{\n\t\tkey: 'lastMonth',\n\t\tlabel: '上月',\n\t\tcalc: () => {\n\t\t\tconst now = new Date();\n\t\t\tconst start = new Date(now.getFullYear(), now.getMonth() - 1, 1);\n\t\t\tconst end = new Date(now.getFullYear(), now.getMonth(), 0);\n\t\t\treturn [formatDate(start), formatDate(end)];\n\t\t},\n\t},\n];\n\nconst QuickDateRange: React.FC<QuickDateRangeProps> = ({\n\tactiveKey: controlledKey,\n\tdefaultKey = '7days',\n\tonChange,\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst [internalKey, setInternalKey] = useState<string>(defaultKey);\n\tconst currentKey = controlledKey !== undefined ? controlledKey : internalKey;\n\n\tconst handleClick = (item: ShortcutItem) => {\n\t\tif (controlledKey === undefined) setInternalKey(item.key);\n\t\tconst range = item.calc();\n\t\tonChange?.(range, item.key);\n\t};\n\n\treturn (\n\t\t<div className={`rpc_quick_date_range ${className}`} style={style}>\n\t\t\t{defaultShortcuts.map((item) => {\n\t\t\t\tconst isActive = currentKey === item.key;\n\n\t\t\t\treturn (\n\t\t\t\t\t<span\n\t\t\t\t\t\tkey={item.key}\n\t\t\t\t\t\tclassName={`rpc_quick_date_range_pill ${\n\t\t\t\t\t\t\tisActive ? 'rpc_quick_date_range_pill_active' : ''\n\t\t\t\t\t\t}`}\n\t\t\t\t\t\tonClick={() => handleClick(item)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{item.label}\n\t\t\t\t\t</span>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n};\n\nexport default QuickDateRange;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../JsonEditor/index.tsx"],"names":[],"mappings":"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","file":"chunk-NFC2C2TD.js","sourcesContent":["import React, { useState, useRef, useEffect, useMemo, CSSProperties } from 'react';\nimport CopyButton from '../CopyButton';\nimport './index.less';\n\nexport interface JsonEditorProps {\n\t/** JSON 数据内容(可传 JSON 字符串或 Object 对象) */\n\tvalue?: string | object;\n\t/** 默认 JSON 数据内容 */\n\tdefaultValue?: string | object;\n\t/** 内容变化回调 */\n\tonChange?: (rawJson: string, parsedObject?: any) => void;\n\t/** 是否只读模式,默认为 false */\n\treadOnly?: boolean;\n\t/** 缩进空格数,默认为 2 */\n\tindent?: number;\n\t/** 编辑器高度,默认为 280 */\n\theight?: number | string;\n\t/** 是否展示行号,默认为 true */\n\tshowLineNumbers?: boolean;\n\t/** 是否展示顶部工具栏,默认为 true */\n\tshowToolbar?: boolean;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\n// 格式化初始传入值\nfunction normalizeJson(val?: string | object, indent: number = 2): string {\n\tif (val === undefined || val === null) return '{\\n \\n}';\n\tif (typeof val === 'object') {\n\t\ttry {\n\t\t\treturn JSON.stringify(val, null, indent);\n\t\t} catch {\n\t\t\treturn '{}';\n\t\t}\n\t}\n\treturn String(val);\n}\n\nconst JsonEditor: React.FC<JsonEditorProps> = ({\n\tvalue: controlledValue,\n\tdefaultValue,\n\tonChange,\n\treadOnly = false,\n\tindent = 2,\n\theight = 280,\n\tshowLineNumbers = true,\n\tshowToolbar = true,\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst initialText = useMemo(() => {\n\t\treturn normalizeJson(controlledValue !== undefined ? controlledValue : defaultValue, indent);\n\t}, [controlledValue, defaultValue, indent]);\n\n\tconst [text, setText] = useState<string>(initialText);\n\tconst [error, setError] = useState<string | null>(null);\n\n\tconst textareaRef = useRef<HTMLTextAreaElement>(null);\n\n\tuseEffect(() => {\n\t\tif (controlledValue !== undefined) {\n\t\t\tconst next = normalizeJson(controlledValue, indent);\n\t\t\tsetText(next);\n\t\t\tvalidate(next);\n\t\t}\n\t}, [controlledValue, indent]);\n\n\t// 校验 JSON\n\tconst validate = (content: string) => {\n\t\tif (!content.trim()) {\n\t\t\tsetError(null);\n\t\t\treturn true;\n\t\t}\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(content);\n\t\t\tsetError(null);\n\t\t\treturn parsed;\n\t\t} catch (err: any) {\n\t\t\tsetError(err.message || 'JSON 语法错误');\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tconst handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n\t\tconst nextText = e.target.value;\n\t\tsetText(nextText);\n\t\tconst parsed = validate(nextText);\n\t\tonChange?.(nextText, parsed !== false ? parsed : undefined);\n\t};\n\n\t// 一键美化格式化\n\tconst handleFormat = () => {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(text);\n\t\t\tconst formatted = JSON.stringify(parsed, null, indent);\n\t\t\tsetText(formatted);\n\t\t\tsetError(null);\n\t\t\tonChange?.(formatted, parsed);\n\t\t} catch (err: any) {\n\t\t\tsetError(err.message || '格式化失败: 语法不合法');\n\t\t}\n\t};\n\n\t// 一键压缩 (Minify)\n\tconst handleMinify = () => {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(text);\n\t\t\tconst minified = JSON.stringify(parsed);\n\t\t\tsetText(minified);\n\t\t\tsetError(null);\n\t\t\tonChange?.(minified, parsed);\n\t\t} catch (err: any) {\n\t\t\tsetError(err.message || '压缩失败: 语法不合法');\n\t\t}\n\t};\n\n\t// 处理 Tab 键缩进\n\tconst handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n\t\tif (e.key === 'Tab') {\n\t\t\te.preventDefault();\n\t\t\tconst textarea = textareaRef.current;\n\t\t\tif (!textarea) return;\n\n\t\t\tconst start = textarea.selectionStart;\n\t\t\tconst end = textarea.selectionEnd;\n\t\t\tconst spaces = ' '.repeat(indent);\n\n\t\t\tconst newText = text.substring(0, start) + spaces + text.substring(end);\n\t\t\tsetText(newText);\n\t\t\tvalidate(newText);\n\n\t\t\tsetTimeout(() => {\n\t\t\t\ttextarea.selectionStart = textarea.selectionEnd = start + indent;\n\t\t\t}, 0);\n\t\t}\n\t};\n\n\t// 计算总行数\n\tconst lineCount = useMemo(() => {\n\t\treturn text.split('\\n').length;\n\t}, [text]);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={`rpc_json_editor ${className}`}\n\t\t\tstyle={{ height, ...style }}\n\t\t>\n\t\t\t{/* 顶部工具栏 */}\n\t\t\t{showToolbar && (\n\t\t\t\t<div className=\"rpc_json_editor_toolbar\">\n\t\t\t\t\t<div className=\"rpc_json_editor_title\">\n\t\t\t\t\t\t<span>{'{ }'}</span>\n\t\t\t\t\t\t<span>JSON {readOnly ? 'Viewer' : 'Editor'}</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div className=\"rpc_json_editor_actions\">\n\t\t\t\t\t\t{!readOnly && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tclassName=\"rpc_json_editor_btn\"\n\t\t\t\t\t\t\t\t\tonClick={handleFormat}\n\t\t\t\t\t\t\t\t\ttitle=\"美化格式化\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t美化\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tclassName=\"rpc_json_editor_btn\"\n\t\t\t\t\t\t\t\t\tonClick={handleMinify}\n\t\t\t\t\t\t\t\t\ttitle=\"单行压缩\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t压缩\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<CopyButton mode=\"icon\" text={text} tooltip=\"复制 JSON\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{/* 主体编辑区域 */}\n\t\t\t<div className=\"rpc_json_editor_body\">\n\t\t\t\t{showLineNumbers && (\n\t\t\t\t\t<div className=\"rpc_json_editor_line_numbers\">\n\t\t\t\t\t\t{Array.from({ length: Math.max(1, lineCount) }).map((_, i) => (\n\t\t\t\t\t\t\t<div key={i}>{i + 1}</div>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t<textarea\n\t\t\t\t\tref={textareaRef}\n\t\t\t\t\tvalue={text}\n\t\t\t\t\tonChange={handleChange}\n\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tspellCheck={false}\n\t\t\t\t\tclassName=\"rpc_json_editor_textarea\"\n\t\t\t\t\tplaceholder=\"在此输入或粘贴 JSON 字符串...\"\n\t\t\t\t/>\n\t\t\t</div>\n\n\t\t\t{/* 底部状态栏 */}\n\t\t\t<div\n\t\t\t\tclassName={`rpc_json_editor_status_bar ${\n\t\t\t\t\terror ? 'rpc_json_editor_status_bar_error' : ''\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t<span>{error ? `⚠️ ${error}` : '✓ JSON 格式有效'}</span>\n\t\t\t\t<span>{lineCount} 行 · {text.length} 字符</span>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default JsonEditor;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../CountUp/index.tsx"],"names":["forwardRef","useState","useRef","useCallback","useImperativeHandle","useEffect","jsx"],"mappings":";;;;;;AAmDA,SAAS,WAAA,CAAY,CAAA,EAAW,CAAA,EAAW,CAAA,EAAW,CAAA,EAAmB;AACxE,EAAA,OAAO,CAAA,KAAM,CAAA,GAAI,CAAA,GAAI,CAAA,GAAI,KAAK,CAAC,IAAA,CAAK,GAAA,CAAI,CAAA,EAAI,MAAM,CAAA,GAAK,CAAC,CAAA,GAAI,CAAA,CAAA,GAAK,OAAO,IAAA,GAAO,CAAA;AAChF;AAGA,SAAS,YAAA,CACR,GAAA,EACA,QAAA,EACA,OAAA,EACA,SAAA,EACS;AACT,EAAA,MAAM,QAAQ,IAAA,CAAK,GAAA,CAAI,GAAG,CAAA,CAAE,QAAQ,QAAQ,CAAA;AAC5C,EAAA,MAAM,CAAC,OAAA,EAAS,OAAO,CAAA,GAAI,KAAA,CAAM,MAAM,GAAG,CAAA;AAE1C,EAAA,MAAM,eAAe,SAAA,GAClB,OAAA,CAAQ,OAAA,CAAQ,uBAAA,EAAyB,SAAS,CAAA,GAClD,OAAA;AAEH,EAAA,MAAM,IAAA,GAAO,GAAA,GAAM,CAAA,GAAI,GAAA,GAAM,EAAA;AAC7B,EAAA,OAAO,OAAA,KAAY,MAAA,GAAY,CAAA,EAAG,IAAI,GAAG,YAAY,CAAA,EAAG,OAAO,CAAA,EAAG,OAAO,CAAA,CAAA,GAAK,CAAA,EAAG,IAAI,GAAG,YAAY,CAAA,CAAA;AACrG;AAEA,IAAM,OAAA,GAAUA,gBAAA;AAAA,EACf,CACC;AAAA,IACC,KAAA,GAAQ,CAAA;AAAA,IACR,GAAA;AAAA,IACA,QAAA,GAAW,CAAA;AAAA,IACX,QAAA,GAAW,CAAA;AAAA,IACX,OAAA,GAAU,GAAA;AAAA,IACV,SAAA,GAAY,GAAA;AAAA,IACZ,MAAA;AAAA,IACA,MAAA;AAAA,IACA,SAAA,GAAY,IAAA;AAAA,IACZ,SAAA,GAAY,IAAA;AAAA,IACZ,KAAA;AAAA,IACA,SAAA,GAAY,EAAA;AAAA,IACZ;AAAA,KAED,GAAA,KACI;AACJ,IAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAIC,eAAiB,KAAK,CAAA;AAC9D,IAAA,MAAM,WAAA,GAAcC,aAAe,KAAK,CAAA;AACxC,IAAA,MAAM,SAAA,GAAYA,aAAe,GAAG,CAAA;AACpC,IAAA,MAAM,YAAA,GAAeA,aAAsB,IAAI,CAAA;AAC/C,IAAA,MAAM,QAAA,GAAWA,aAAsB,IAAI,CAAA;AAE3C,IAAA,MAAM,gBAAgB,MAAM;AAC3B,MAAA,IAAI,SAAS,OAAA,EAAS;AACrB,QAAA,oBAAA,CAAqB,SAAS,OAAO,CAAA;AACrC,QAAA,QAAA,CAAS,OAAA,GAAU,IAAA;AAAA,MACpB;AAAA,IACD,CAAA;AAEA,IAAA,MAAM,OAAA,GAAUC,iBAAA;AAAA,MACf,CAAC,SAAA,KAAsB;AACtB,QAAA,IAAI,CAAC,YAAA,CAAa,OAAA,EAAS,YAAA,CAAa,OAAA,GAAU,SAAA;AAClD,QAAA,MAAM,QAAA,GAAW,YAAY,YAAA,CAAa,OAAA;AAC1C,QAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,GAAA,CAAI,QAAA,GAAW,KAAM,CAAC,CAAA;AAEjD,QAAA,IAAI,UAAA;AACJ,QAAA,IAAI,YAAY,aAAA,EAAe;AAC9B,UAAA,UAAA,GAAa,SAAA,CAAU,OAAA;AACvB,UAAA,eAAA,CAAgB,UAAU,CAAA;AAC1B,UAAA,aAAA,EAAc;AACd,UAAA,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,EAAA;AACA,UAAA;AAAA,QACD;AAEA,QAAA,IAAI,SAAA,EAAW;AACd,UAAA,UAAA,GAAa,WAAA;AAAA,YACZ,QAAA;AAAA,YACA,WAAA,CAAY,OAAA;AAAA,YACZ,SAAA,CAAU,UAAU,WAAA,CAAY,OAAA;AAAA,YAChC;AAAA,WACD;AAAA,QACD,CAAA,MAAO;AACN,UAAA,UAAA,GACC,YAAY,OAAA,GAAA,CACX,SAAA,CAAU,OAAA,GAAU,WAAA,CAAY,YAAY,QAAA,GAAW,aAAA,CAAA;AAAA,QAC1D;AAEA,QAAA,eAAA,CAAgB,UAAU,CAAA;AAC1B,QAAA,QAAA,CAAS,OAAA,GAAU,sBAAsB,OAAO,CAAA;AAAA,MACjD,CAAA;AAAA,MACA,CAAC,QAAA,EAAU,SAAA,EAAW,KAAK;AAAA,KAC5B;AAEA,IAAA,MAAM,YAAA,GAAeA,kBAAY,MAAM;AACtC,MAAA,aAAA,EAAc;AACd,MAAA,YAAA,CAAa,OAAA,GAAU,IAAA;AACvB,MAAA,QAAA,CAAS,OAAA,GAAU,sBAAsB,OAAO,CAAA;AAAA,IACjD,CAAA,EAAG,CAAC,OAAO,CAAC,CAAA;AAEZ,IAAA,MAAM,KAAA,GAAQA,kBAAY,MAAM;AAC/B,MAAA,aAAA,EAAc;AACd,MAAA,eAAA,CAAgB,KAAK,CAAA;AAAA,IACtB,CAAA,EAAG,CAAC,KAAK,CAAC,CAAA;AAEV,IAAA,MAAM,MAAA,GAASA,iBAAA;AAAA,MACd,CAAC,MAAA,KAAmB;AACnB,QAAA,aAAA,EAAc;AACd,QAAA,WAAA,CAAY,OAAA,GAAU,YAAA;AACtB,QAAA,SAAA,CAAU,OAAA,GAAU,MAAA;AACpB,QAAA,YAAA,CAAa,OAAA,GAAU,IAAA;AACvB,QAAA,QAAA,CAAS,OAAA,GAAU,sBAAsB,OAAO,CAAA;AAAA,MACjD,CAAA;AAAA,MACA,CAAC,cAAc,OAAO;AAAA,KACvB;AAEA,IAAAC,yBAAA;AAAA,MACC,GAAA;AAAA,MACA,OAAO;AAAA,QACN,KAAA,EAAO,YAAA;AAAA,QACP,KAAA;AAAA,QACA;AAAA,OACD,CAAA;AAAA,MACA,CAAC,YAAA,EAAc,KAAA,EAAO,MAAM;AAAA,KAC7B;AAEA,IAAAC,eAAA,CAAU,MAAM;AACf,MAAA,WAAA,CAAY,OAAA,GAAU,KAAA;AACtB,MAAA,SAAA,CAAU,OAAA,GAAU,GAAA;AACpB,MAAA,IAAI,SAAA,EAAW;AACd,QAAA,YAAA,EAAa;AAAA,MACd;AACA,MAAA,OAAO,MAAM,aAAA,EAAc;AAAA,IAC5B,GAAG,CAAC,KAAA,EAAO,GAAA,EAAK,SAAA,EAAW,YAAY,CAAC,CAAA;AAExC,IAAA,MAAM,YAAA,GAAe,YAAA,CAAa,YAAA,EAAc,QAAA,EAAU,SAAS,SAAS,CAAA;AAE5E,IAAA,uCACE,MAAA,EAAA,EAAK,SAAA,EAAW,CAAA,aAAA,EAAgB,SAAS,IAAI,KAAA,EAC5C,QAAA,EAAA;AAAA,MAAA,MAAA,oBAAUC,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,qBAAA,EAAuB,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,sBACzDA,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,oBAAA,EAAsB,QAAA,EAAA,YAAA,EAAa,CAAA;AAAA,MAClD,MAAA,oBAAUA,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,uBAAuB,QAAA,EAAA,MAAA,EAAO;AAAA,KAAA,EAC1D,CAAA;AAAA,EAEF;AACD,CAAA;AAEA,OAAA,CAAQ,WAAA,GAAc,SAAA;AAEtB,IAAO,eAAA,GAAQ","file":"chunk-NMYXVZQP.cjs","sourcesContent":["import React, {\n\tuseState,\n\tuseRef,\n\tuseEffect,\n\tuseCallback,\n\tuseImperativeHandle,\n\tforwardRef,\n\tReactNode,\n\tCSSProperties,\n} from 'react';\nimport './index.less';\n\nexport interface CountUpProps {\n\t/** 起始数值,默认为 0 */\n\tstart?: number;\n\t/** 目标数值 */\n\tend: number;\n\t/** 动画持续时间(秒),默认为 2 */\n\tduration?: number;\n\t/** 保留小数位数,默认为 0 */\n\tdecimals?: number;\n\t/** 小数点符号,默认为 '.' */\n\tdecimal?: string;\n\t/** 千分位分隔符,默认为 ',',若不显示可传空字符串 */\n\tseparator?: string;\n\t/** 前缀字符或节点(如 '¥'、'$') */\n\tprefix?: ReactNode;\n\t/** 后缀字符或节点(如 '%'、'件') */\n\tsuffix?: ReactNode;\n\t/** 是否启用缓动过渡,默认为 true */\n\tuseEasing?: boolean;\n\t/** 是否自动开始动画,默认为 true */\n\tautoStart?: boolean;\n\t/** 动画完成回调 */\n\tonEnd?: () => void;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nexport interface CountUpRef {\n\t/** 开始/重新播放动画 */\n\tstart: () => void;\n\t/** 重置回起始值 */\n\treset: () => void;\n\t/** 更新目标值并平滑过渡 */\n\tupdate: (newEnd: number) => void;\n}\n\n// 默认 EaseOutExpo 缓动函数\nfunction easeOutExpo(t: number, b: number, c: number, d: number): number {\n\treturn t === d ? b + c : c * (-Math.pow(2, (-10 * t) / d) + 1) * 1024 / 1023 + b;\n}\n\n// 格式化数字字符串\nfunction formatNumber(\n\tnum: number,\n\tdecimals: number,\n\tdecimal: string,\n\tseparator: string,\n): string {\n\tconst fixed = Math.abs(num).toFixed(decimals);\n\tconst [intPart, decPart] = fixed.split('.');\n\n\tconst formattedInt = separator\n\t\t? intPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n\t\t: intPart;\n\n\tconst sign = num < 0 ? '-' : '';\n\treturn decPart !== undefined ? `${sign}${formattedInt}${decimal}${decPart}` : `${sign}${formattedInt}`;\n}\n\nconst CountUp = forwardRef<CountUpRef, CountUpProps>(\n\t(\n\t\t{\n\t\t\tstart = 0,\n\t\t\tend,\n\t\t\tduration = 2,\n\t\t\tdecimals = 0,\n\t\t\tdecimal = '.',\n\t\t\tseparator = ',',\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\tuseEasing = true,\n\t\t\tautoStart = true,\n\t\t\tonEnd,\n\t\t\tclassName = '',\n\t\t\tstyle,\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst [displayValue, setDisplayValue] = useState<number>(start);\n\t\tconst startValRef = useRef<number>(start);\n\t\tconst endValRef = useRef<number>(end);\n\t\tconst startTimeRef = useRef<number | null>(null);\n\t\tconst rafIdRef = useRef<number | null>(null);\n\n\t\tconst stopAnimation = () => {\n\t\t\tif (rafIdRef.current) {\n\t\t\t\tcancelAnimationFrame(rafIdRef.current);\n\t\t\t\trafIdRef.current = null;\n\t\t\t}\n\t\t};\n\n\t\tconst animate = useCallback(\n\t\t\t(timestamp: number) => {\n\t\t\t\tif (!startTimeRef.current) startTimeRef.current = timestamp;\n\t\t\t\tconst progress = timestamp - startTimeRef.current;\n\t\t\t\tconst totalDuration = Math.max(duration * 1000, 1);\n\n\t\t\t\tlet currentVal: number;\n\t\t\t\tif (progress >= totalDuration) {\n\t\t\t\t\tcurrentVal = endValRef.current;\n\t\t\t\t\tsetDisplayValue(currentVal);\n\t\t\t\t\tstopAnimation();\n\t\t\t\t\tonEnd?.();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (useEasing) {\n\t\t\t\t\tcurrentVal = easeOutExpo(\n\t\t\t\t\t\tprogress,\n\t\t\t\t\t\tstartValRef.current,\n\t\t\t\t\t\tendValRef.current - startValRef.current,\n\t\t\t\t\t\ttotalDuration,\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tcurrentVal =\n\t\t\t\t\t\tstartValRef.current +\n\t\t\t\t\t\t(endValRef.current - startValRef.current) * (progress / totalDuration);\n\t\t\t\t}\n\n\t\t\t\tsetDisplayValue(currentVal);\n\t\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t\t},\n\t\t\t[duration, useEasing, onEnd],\n\t\t);\n\n\t\tconst triggerStart = useCallback(() => {\n\t\t\tstopAnimation();\n\t\t\tstartTimeRef.current = null;\n\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t}, [animate]);\n\n\t\tconst reset = useCallback(() => {\n\t\t\tstopAnimation();\n\t\t\tsetDisplayValue(start);\n\t\t}, [start]);\n\n\t\tconst update = useCallback(\n\t\t\t(newEnd: number) => {\n\t\t\t\tstopAnimation();\n\t\t\t\tstartValRef.current = displayValue;\n\t\t\t\tendValRef.current = newEnd;\n\t\t\t\tstartTimeRef.current = null;\n\t\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t\t},\n\t\t\t[displayValue, animate],\n\t\t);\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => ({\n\t\t\t\tstart: triggerStart,\n\t\t\t\treset,\n\t\t\t\tupdate,\n\t\t\t}),\n\t\t\t[triggerStart, reset, update],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tstartValRef.current = start;\n\t\t\tendValRef.current = end;\n\t\t\tif (autoStart) {\n\t\t\t\ttriggerStart();\n\t\t\t}\n\t\t\treturn () => stopAnimation();\n\t\t}, [start, end, autoStart, triggerStart]);\n\n\t\tconst formattedStr = formatNumber(displayValue, decimals, decimal, separator);\n\n\t\treturn (\n\t\t\t<span className={`rpc_count_up ${className}`} style={style}>\n\t\t\t\t{prefix && <span className=\"rpc_count_up_prefix\">{prefix}</span>}\n\t\t\t\t<span className=\"rpc_count_up_value\">{formattedStr}</span>\n\t\t\t\t{suffix && <span className=\"rpc_count_up_suffix\">{suffix}</span>}\n\t\t\t</span>\n\t\t);\n\t},\n);\n\nCountUp.displayName = 'CountUp';\n\nexport default CountUp;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../CountUp/index.tsx"],"names":[],"mappings":"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","file":"chunk-OJEZ3TKT.js","sourcesContent":["import React, {\n\tuseState,\n\tuseRef,\n\tuseEffect,\n\tuseCallback,\n\tuseImperativeHandle,\n\tforwardRef,\n\tReactNode,\n\tCSSProperties,\n} from 'react';\nimport './index.less';\n\nexport interface CountUpProps {\n\t/** 起始数值,默认为 0 */\n\tstart?: number;\n\t/** 目标数值 */\n\tend: number;\n\t/** 动画持续时间(秒),默认为 2 */\n\tduration?: number;\n\t/** 保留小数位数,默认为 0 */\n\tdecimals?: number;\n\t/** 小数点符号,默认为 '.' */\n\tdecimal?: string;\n\t/** 千分位分隔符,默认为 ',',若不显示可传空字符串 */\n\tseparator?: string;\n\t/** 前缀字符或节点(如 '¥'、'$') */\n\tprefix?: ReactNode;\n\t/** 后缀字符或节点(如 '%'、'件') */\n\tsuffix?: ReactNode;\n\t/** 是否启用缓动过渡,默认为 true */\n\tuseEasing?: boolean;\n\t/** 是否自动开始动画,默认为 true */\n\tautoStart?: boolean;\n\t/** 动画完成回调 */\n\tonEnd?: () => void;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nexport interface CountUpRef {\n\t/** 开始/重新播放动画 */\n\tstart: () => void;\n\t/** 重置回起始值 */\n\treset: () => void;\n\t/** 更新目标值并平滑过渡 */\n\tupdate: (newEnd: number) => void;\n}\n\n// 默认 EaseOutExpo 缓动函数\nfunction easeOutExpo(t: number, b: number, c: number, d: number): number {\n\treturn t === d ? b + c : c * (-Math.pow(2, (-10 * t) / d) + 1) * 1024 / 1023 + b;\n}\n\n// 格式化数字字符串\nfunction formatNumber(\n\tnum: number,\n\tdecimals: number,\n\tdecimal: string,\n\tseparator: string,\n): string {\n\tconst fixed = Math.abs(num).toFixed(decimals);\n\tconst [intPart, decPart] = fixed.split('.');\n\n\tconst formattedInt = separator\n\t\t? intPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n\t\t: intPart;\n\n\tconst sign = num < 0 ? '-' : '';\n\treturn decPart !== undefined ? `${sign}${formattedInt}${decimal}${decPart}` : `${sign}${formattedInt}`;\n}\n\nconst CountUp = forwardRef<CountUpRef, CountUpProps>(\n\t(\n\t\t{\n\t\t\tstart = 0,\n\t\t\tend,\n\t\t\tduration = 2,\n\t\t\tdecimals = 0,\n\t\t\tdecimal = '.',\n\t\t\tseparator = ',',\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\tuseEasing = true,\n\t\t\tautoStart = true,\n\t\t\tonEnd,\n\t\t\tclassName = '',\n\t\t\tstyle,\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst [displayValue, setDisplayValue] = useState<number>(start);\n\t\tconst startValRef = useRef<number>(start);\n\t\tconst endValRef = useRef<number>(end);\n\t\tconst startTimeRef = useRef<number | null>(null);\n\t\tconst rafIdRef = useRef<number | null>(null);\n\n\t\tconst stopAnimation = () => {\n\t\t\tif (rafIdRef.current) {\n\t\t\t\tcancelAnimationFrame(rafIdRef.current);\n\t\t\t\trafIdRef.current = null;\n\t\t\t}\n\t\t};\n\n\t\tconst animate = useCallback(\n\t\t\t(timestamp: number) => {\n\t\t\t\tif (!startTimeRef.current) startTimeRef.current = timestamp;\n\t\t\t\tconst progress = timestamp - startTimeRef.current;\n\t\t\t\tconst totalDuration = Math.max(duration * 1000, 1);\n\n\t\t\t\tlet currentVal: number;\n\t\t\t\tif (progress >= totalDuration) {\n\t\t\t\t\tcurrentVal = endValRef.current;\n\t\t\t\t\tsetDisplayValue(currentVal);\n\t\t\t\t\tstopAnimation();\n\t\t\t\t\tonEnd?.();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (useEasing) {\n\t\t\t\t\tcurrentVal = easeOutExpo(\n\t\t\t\t\t\tprogress,\n\t\t\t\t\t\tstartValRef.current,\n\t\t\t\t\t\tendValRef.current - startValRef.current,\n\t\t\t\t\t\ttotalDuration,\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tcurrentVal =\n\t\t\t\t\t\tstartValRef.current +\n\t\t\t\t\t\t(endValRef.current - startValRef.current) * (progress / totalDuration);\n\t\t\t\t}\n\n\t\t\t\tsetDisplayValue(currentVal);\n\t\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t\t},\n\t\t\t[duration, useEasing, onEnd],\n\t\t);\n\n\t\tconst triggerStart = useCallback(() => {\n\t\t\tstopAnimation();\n\t\t\tstartTimeRef.current = null;\n\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t}, [animate]);\n\n\t\tconst reset = useCallback(() => {\n\t\t\tstopAnimation();\n\t\t\tsetDisplayValue(start);\n\t\t}, [start]);\n\n\t\tconst update = useCallback(\n\t\t\t(newEnd: number) => {\n\t\t\t\tstopAnimation();\n\t\t\t\tstartValRef.current = displayValue;\n\t\t\t\tendValRef.current = newEnd;\n\t\t\t\tstartTimeRef.current = null;\n\t\t\t\trafIdRef.current = requestAnimationFrame(animate);\n\t\t\t},\n\t\t\t[displayValue, animate],\n\t\t);\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => ({\n\t\t\t\tstart: triggerStart,\n\t\t\t\treset,\n\t\t\t\tupdate,\n\t\t\t}),\n\t\t\t[triggerStart, reset, update],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tstartValRef.current = start;\n\t\t\tendValRef.current = end;\n\t\t\tif (autoStart) {\n\t\t\t\ttriggerStart();\n\t\t\t}\n\t\t\treturn () => stopAnimation();\n\t\t}, [start, end, autoStart, triggerStart]);\n\n\t\tconst formattedStr = formatNumber(displayValue, decimals, decimal, separator);\n\n\t\treturn (\n\t\t\t<span className={`rpc_count_up ${className}`} style={style}>\n\t\t\t\t{prefix && <span className=\"rpc_count_up_prefix\">{prefix}</span>}\n\t\t\t\t<span className=\"rpc_count_up_value\">{formattedStr}</span>\n\t\t\t\t{suffix && <span className=\"rpc_count_up_suffix\">{suffix}</span>}\n\t\t\t</span>\n\t\t);\n\t},\n);\n\nCountUp.displayName = 'CountUp';\n\nexport default CountUp;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../DiffViewer/index.tsx"],"names":["i","j"],"mappings":"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","file":"chunk-OYRX4AY6.js","sourcesContent":["import React, { useState, useMemo, ReactNode, CSSProperties } from 'react';\nimport './index.less';\n\nexport type DiffViewMode = 'split' | 'unified';\n\nexport interface DiffViewerProps {\n\t/** 修改前的旧文本 */\n\toldValue: string;\n\t/** 修改后的新文本 */\n\tnewValue: string;\n\t/** 视图模式:'split' 左右分栏,'unified' 单列行内,默认为 'split' */\n\tviewMode?: DiffViewMode;\n\t/** 是否允许用户自由切换视图模式,默认为 true */\n\tallowModeChange?: boolean;\n\t/** 文件标题或说明 */\n\ttitle?: ReactNode;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\ninterface DiffLine {\n\ttype: 'unchanged' | 'added' | 'removed';\n\ttext: string;\n\toldLineNumber?: number;\n\tnewLineNumber?: number;\n}\n\n// 简单高效的 LCS 行级差异比较算法\nfunction computeLineDiff(oldStr: string, newStr: string): DiffLine[] {\n\tconst oldLines = oldStr.split('\\n');\n\tconst newLines = newStr.split('\\n');\n\n\tconst n = oldLines.length;\n\tconst m = newLines.length;\n\n\t// 动态规划构建 LCS 矩阵\n\tconst dp: number[][] = Array.from({ length: n + 1 }, () => Array(m + 1).fill(0));\n\n\tfor (let i = 0; i < n; i++) {\n\t\tfor (let j = 0; j < m; j++) {\n\t\t\tif (oldLines[i] === newLines[j]) {\n\t\t\t\tdp[i + 1][j + 1] = dp[i][j] + 1;\n\t\t\t} else {\n\t\t\t\tdp[i + 1][j + 1] = Math.max(dp[i + 1][j], dp[i][j + 1]);\n\t\t\t}\n\t\t}\n\t}\n\n\t// 回溯生成差异序列\n\tconst result: DiffLine[] = [];\n\tlet i = n;\n\tlet j = m;\n\n\twhile (i > 0 || j > 0) {\n\t\tif (i > 0 && j > 0 && oldLines[i - 1] === newLines[j - 1]) {\n\t\t\tresult.unshift({\n\t\t\t\ttype: 'unchanged',\n\t\t\t\ttext: oldLines[i - 1],\n\t\t\t\toldLineNumber: i,\n\t\t\t\tnewLineNumber: j,\n\t\t\t});\n\t\t\ti--;\n\t\t\tj--;\n\t\t} else if (j > 0 && (i === 0 || dp[i][j - 1] >= dp[i - 1][j])) {\n\t\t\tresult.unshift({\n\t\t\t\ttype: 'added',\n\t\t\t\ttext: newLines[j - 1],\n\t\t\t\tnewLineNumber: j,\n\t\t\t});\n\t\t\tj--;\n\t\t} else if (i > 0 && (j === 0 || dp[i][j - 1] < dp[i - 1][j])) {\n\t\t\tresult.unshift({\n\t\t\t\ttype: 'removed',\n\t\t\t\ttext: oldLines[i - 1],\n\t\t\t\toldLineNumber: i,\n\t\t\t});\n\t\t\ti--;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nconst DiffViewer: React.FC<DiffViewerProps> = ({\n\toldValue = '',\n\tnewValue = '',\n\tviewMode: initialMode = 'split',\n\tallowModeChange = true,\n\ttitle,\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst [mode, setMode] = useState<DiffViewMode>(initialMode);\n\n\tconst diffLines = useMemo(() => {\n\t\treturn computeLineDiff(oldValue, newValue);\n\t}, [oldValue, newValue]);\n\n\t// 统计变动行数\n\tconst stats = useMemo(() => {\n\t\tlet added = 0;\n\t\tlet removed = 0;\n\t\tdiffLines.forEach((l) => {\n\t\t\tif (l.type === 'added') added++;\n\t\t\tif (l.type === 'removed') removed++;\n\t\t});\n\t\treturn { added, removed };\n\t}, [diffLines]);\n\n\treturn (\n\t\t<div className={`rpc_diff_viewer ${className}`} style={style}>\n\t\t\t{/* 头部标题与模式切换 */}\n\t\t\t<div className=\"rpc_diff_viewer_header\">\n\t\t\t\t<div style={{ display: 'flex', alignItems: 'center', gap: 12 }}>\n\t\t\t\t\t<span className=\"rpc_diff_viewer_title\">{title || 'Diff Comparison'}</span>\n\t\t\t\t\t<span style={{ fontSize: 12, color: '#52c41a' }}>+{stats.added}</span>\n\t\t\t\t\t<span style={{ fontSize: 12, color: '#ff4d4f' }}>-{stats.removed}</span>\n\t\t\t\t</div>\n\n\t\t\t\t{allowModeChange && (\n\t\t\t\t\t<div className=\"rpc_diff_viewer_mode_toggle\">\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_mode_btn ${\n\t\t\t\t\t\t\t\tmode === 'split' ? 'rpc_diff_viewer_mode_btn_active' : ''\n\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\tonClick={() => setMode('split')}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t分栏 (Split)\n\t\t\t\t\t\t</button>\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_mode_btn ${\n\t\t\t\t\t\t\t\tmode === 'unified' ? 'rpc_diff_viewer_mode_btn_active' : ''\n\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\tonClick={() => setMode('unified')}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t行内 (Unified)\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{/* 差异展示主体 */}\n\t\t\t<div style={{ overflowX: 'auto', maxHeight: 420, overflowY: 'auto' }}>\n\t\t\t\t{mode === 'unified' ? (\n\t\t\t\t\t<table className=\"rpc_diff_viewer_table\">\n\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t\t{diffLines.map((line, idx) => {\n\t\t\t\t\t\t\t\tconst rowClass =\n\t\t\t\t\t\t\t\t\tline.type === 'added'\n\t\t\t\t\t\t\t\t\t\t? 'rpc_diff_viewer_row_added'\n\t\t\t\t\t\t\t\t\t\t: line.type === 'removed'\n\t\t\t\t\t\t\t\t\t\t\t? 'rpc_diff_viewer_row_removed'\n\t\t\t\t\t\t\t\t\t\t\t: '';\n\n\t\t\t\t\t\t\t\tconst marker = line.type === 'added' ? '+' : line.type === 'removed' ? '-' : ' ';\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<tr key={idx} className={`rpc_diff_viewer_row ${rowClass}`}>\n\t\t\t\t\t\t\t\t\t\t<td className=\"rpc_diff_viewer_gutter\">{line.oldLineNumber || ''}</td>\n\t\t\t\t\t\t\t\t\t\t<td className=\"rpc_diff_viewer_gutter\">{line.newLineNumber || ''}</td>\n\t\t\t\t\t\t\t\t\t\t<td className=\"rpc_diff_viewer_marker\">{marker}</td>\n\t\t\t\t\t\t\t\t\t\t<td className=\"rpc_diff_viewer_code\">{line.text || ' '}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t) : (\n\t\t\t\t\t/* 分栏 Split 模式 */\n\t\t\t\t\t<table className=\"rpc_diff_viewer_table\">\n\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t\t{diffLines.map((line, idx) => {\n\t\t\t\t\t\t\t\tconst isAdd = line.type === 'added';\n\t\t\t\t\t\t\t\tconst isDel = line.type === 'removed';\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<tr key={idx} className=\"rpc_diff_viewer_row\">\n\t\t\t\t\t\t\t\t\t\t{/* 左侧旧版 */}\n\t\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_gutter ${\n\t\t\t\t\t\t\t\t\t\t\t\tisDel ? 'rpc_diff_viewer_row_removed' : isAdd ? 'rpc_diff_viewer_row_empty' : ''\n\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{line.oldLineNumber || ''}\n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_code ${\n\t\t\t\t\t\t\t\t\t\t\t\tisDel ? 'rpc_diff_viewer_row_removed' : isAdd ? 'rpc_diff_viewer_row_empty' : ''\n\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{isDel || line.type === 'unchanged' ? line.text || ' ' : ''}\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t\t\t\t\t{/* 右侧新版 */}\n\t\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_gutter ${\n\t\t\t\t\t\t\t\t\t\t\t\tisAdd ? 'rpc_diff_viewer_row_added' : isDel ? 'rpc_diff_viewer_row_empty' : ''\n\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{line.newLineNumber || ''}\n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\t\tclassName={`rpc_diff_viewer_code ${\n\t\t\t\t\t\t\t\t\t\t\t\tisAdd ? 'rpc_diff_viewer_row_added' : isDel ? 'rpc_diff_viewer_row_empty' : ''\n\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{isAdd || line.type === 'unchanged' ? line.text || ' ' : ''}\n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default DiffViewer;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../JsonTree/index.tsx"],"names":["useState","jsxs","Fragment","jsx"],"mappings":"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","file":"chunk-PBPGBVQQ.cjs","sourcesContent":["import React, { useState, CSSProperties } from 'react';\nimport './index.less';\n\nexport interface JsonTreeProps {\n\t/** JSON 数据源 */\n\tdata: any;\n\t/** 默认展开层级深度,默认为 2 */\n\tdefaultExpandedLevel?: number;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\ninterface TreeNodeProps {\n\tkeyName?: string;\n\tvalue: any;\n\tdepth: number;\n\tmaxDepth: number;\n}\n\nconst TreeNode: React.FC<TreeNodeProps> = ({ keyName, value, depth, maxDepth }) => {\n\tconst [collapsed, setCollapsed] = useState<boolean>(depth >= maxDepth);\n\n\tconst isObject = value !== null && typeof value === 'object';\n\tconst isArray = Array.isArray(value);\n\n\tif (!isObject) {\n\t\tlet valClass = 'rpc_json_tree_string';\n\t\tlet valStr = `\"${value}\"`;\n\n\t\tif (typeof value === 'number') {\n\t\t\tvalClass = 'rpc_json_tree_number';\n\t\t\tvalStr = String(value);\n\t\t} else if (typeof value === 'boolean') {\n\t\t\tvalClass = 'rpc_json_tree_boolean';\n\t\t\tvalStr = String(value);\n\t\t} else if (value === null) {\n\t\t\tvalClass = 'rpc_json_tree_null';\n\t\t\tvalStr = 'null';\n\t\t}\n\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{keyName !== undefined && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<span className=\"rpc_json_tree_key\">\"{keyName}\"</span>\n\t\t\t\t\t\t<span className=\"rpc_json_tree_colon\">:</span>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<span className={valClass}>{valStr}</span>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst keys = Object.keys(value);\n\tconst openBracket = isArray ? '[' : '{';\n\tconst closeBracket = isArray ? ']' : '}';\n\n\treturn (\n\t\t<div>\n\t\t\t<span\n\t\t\t\tclassName={`rpc_json_tree_toggle ${collapsed ? 'rpc_json_tree_toggle_collapsed' : ''}`}\n\t\t\t\tonClick={() => setCollapsed(!collapsed)}\n\t\t\t>\n\t\t\t\t▼\n\t\t\t</span>\n\n\t\t\t{keyName !== undefined && (\n\t\t\t\t<>\n\t\t\t\t\t<span className=\"rpc_json_tree_key\">\"{keyName}\"</span>\n\t\t\t\t\t<span className=\"rpc_json_tree_colon\">:</span>\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t<span className=\"rpc_json_tree_bracket\">{openBracket}</span>\n\n\t\t\t{collapsed ? (\n\t\t\t\t<>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName=\"rpc_json_tree_count\"\n\t\t\t\t\t\tstyle={{ cursor: 'pointer' }}\n\t\t\t\t\t\tonClick={() => setCollapsed(false)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{keys.length} items...\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"rpc_json_tree_bracket\">{closeBracket}</span>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"rpc_json_tree_node\">\n\t\t\t\t\t\t{keys.map((k) => (\n\t\t\t\t\t\t\t<TreeNode\n\t\t\t\t\t\t\t\tkey={k}\n\t\t\t\t\t\t\t\tkeyName={isArray ? undefined : k}\n\t\t\t\t\t\t\t\tvalue={value[k]}\n\t\t\t\t\t\t\t\tdepth={depth + 1}\n\t\t\t\t\t\t\t\tmaxDepth={maxDepth}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t\t<span className=\"rpc_json_tree_bracket\">{closeBracket}</span>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nconst JsonTree: React.FC<JsonTreeProps> = ({\n\tdata,\n\tdefaultExpandedLevel = 2,\n\tclassName = '',\n\tstyle,\n}) => {\n\treturn (\n\t\t<div className={`rpc_json_tree ${className}`} style={style}>\n\t\t\t<TreeNode value={data} depth={0} maxDepth={defaultExpandedLevel} />\n\t\t</div>\n\t);\n};\n\nexport default JsonTree;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../KeyValEditor/index.tsx"],"names":["useState","jsxs","jsx","EyeOutlined","EyeInvisibleOutlined","CloseOutlined"],"mappings":"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","file":"chunk-PIIJVF5D.cjs","sourcesContent":["import React, { useState, CSSProperties } from 'react';\nimport { CloseOutlined, EyeOutlined, EyeInvisibleOutlined } from '../src/icons';\nimport './index.less';\n\nexport interface KeyValItem {\n\tkey: string;\n\tvalue: string;\n\tenabled?: boolean;\n\tisSecret?: boolean;\n}\n\nexport interface KeyValEditorProps {\n\t/** 键值对数组(受控) */\n\tvalue?: KeyValItem[];\n\t/** 默认键值对数组 */\n\tdefaultValue?: KeyValItem[];\n\t/** 变化回调 */\n\tonChange?: (items: KeyValItem[]) => void;\n\t/** Key 输入框占位文案,默认为 'Key 键名' */\n\tkeyPlaceholder?: string;\n\t/** Value 输入框占位文案,默认为 'Value 键值' */\n\tvalPlaceholder?: string;\n\t/** 是否允许配置 Secret 密码掩码,默认为 true */\n\tallowSecret?: boolean;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nconst KeyValEditor: React.FC<KeyValEditorProps> = ({\n\tvalue: controlledValue,\n\tdefaultValue = [{ key: '', value: '', enabled: true }],\n\tonChange,\n\tkeyPlaceholder = 'Key 键名',\n\tvalPlaceholder = 'Value 键值',\n\tallowSecret = true,\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst [internalVal, setInternalVal] = useState<KeyValItem[]>(defaultValue);\n\tconst items = controlledValue !== undefined ? controlledValue : internalVal;\n\n\tconst [visibleSecrets, setVisibleSecrets] = useState<Record<number, boolean>>({});\n\n\tconst triggerChange = (newItems: KeyValItem[]) => {\n\t\tif (controlledValue === undefined) setInternalVal(newItems);\n\t\tonChange?.(newItems);\n\t};\n\n\tconst handleItemChange = (index: number, field: keyof KeyValItem, val: any) => {\n\t\tconst next = items.map((item, i) => (i === index ? { ...item, [field]: val } : item));\n\t\ttriggerChange(next);\n\t};\n\n\tconst handleAdd = () => {\n\t\ttriggerChange([...items, { key: '', value: '', enabled: true }]);\n\t};\n\n\tconst handleDelete = (index: number) => {\n\t\ttriggerChange(items.filter((_, i) => i !== index));\n\t};\n\n\tconst toggleSecretVisibility = (index: number) => {\n\t\tsetVisibleSecrets((prev) => ({ ...prev, [index]: !prev[index] }));\n\t};\n\n\treturn (\n\t\t<div className={`rpc_key_val_editor ${className}`} style={style}>\n\t\t\t{items.map((item, index) => {\n\t\t\t\tconst isSecret = item.isSecret && !visibleSecrets[index];\n\n\t\t\t\treturn (\n\t\t\t\t\t<div key={index} className=\"rpc_key_val_editor_row\">\n\t\t\t\t\t\t{/* 启用/禁用勾选 */}\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tchecked={item.enabled !== false}\n\t\t\t\t\t\t\tonChange={(e) => handleItemChange(index, 'enabled', e.target.checked)}\n\t\t\t\t\t\t\tclassName=\"rpc_key_val_editor_checkbox\"\n\t\t\t\t\t\t\ttitle=\"启用/禁用此条目\"\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t{/* Key 输入 */}\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tplaceholder={keyPlaceholder}\n\t\t\t\t\t\t\tvalue={item.key}\n\t\t\t\t\t\t\tdisabled={item.enabled === false}\n\t\t\t\t\t\t\tonChange={(e) => handleItemChange(index, 'key', e.target.value)}\n\t\t\t\t\t\t\tclassName=\"rpc_key_val_editor_input\"\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t{/* Value 输入 */}\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype={isSecret ? 'password' : 'text'}\n\t\t\t\t\t\t\tplaceholder={valPlaceholder}\n\t\t\t\t\t\t\tvalue={item.value}\n\t\t\t\t\t\t\tdisabled={item.enabled === false}\n\t\t\t\t\t\t\tonChange={(e) => handleItemChange(index, 'value', e.target.value)}\n\t\t\t\t\t\t\tclassName=\"rpc_key_val_editor_input\"\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t{/* 密码明文切换 */}\n\t\t\t\t\t\t{allowSecret && (\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tclassName=\"rpc_key_val_editor_btn_icon\"\n\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\tif (!item.isSecret) {\n\t\t\t\t\t\t\t\t\t\thandleItemChange(index, 'isSecret', true);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\ttoggleSecretVisibility(index);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\ttitle={item.isSecret ? '切换显示/隐藏' : '设为敏感密码'}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{item.isSecret ? (\n\t\t\t\t\t\t\t\t\tvisibleSecrets[index] ? <EyeOutlined /> : <EyeInvisibleOutlined />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<span style={{ fontSize: 11, color: '#8c8c8c' }}>🔒</span>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{/* 删除行 */}\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName=\"rpc_key_val_editor_btn_icon\"\n\t\t\t\t\t\t\tonClick={() => handleDelete(index)}\n\t\t\t\t\t\t\ttitle=\"删除此行\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<CloseOutlined />\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\n\t\t\t<div className=\"rpc_key_val_editor_footer\">\n\t\t\t\t<button type=\"button\" className=\"rpc_key_val_editor_add_btn\" onClick={handleAdd}>\n\t\t\t\t\t+ 添加键值对\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default KeyValEditor;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../KanbanBoard/index.tsx"],"names":[],"mappings":"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","file":"chunk-PMNTOEXC.js","sourcesContent":["import React, { useState, ReactNode, CSSProperties } from 'react';\nimport './index.less';\n\nexport interface KanbanColumn<T> {\n\tid: string;\n\ttitle: string;\n\tcolor?: string;\n\titems: T[];\n}\n\nexport interface KanbanBoardProps<T> {\n\t/** 泳道列数据 */\n\tcolumns: KanbanColumn<T>[];\n\t/** 提取卡片唯一 Key */\n\tkeyExtractor: (item: T) => string;\n\t/** 自定义渲染单个卡片 */\n\trenderCard: (item: T, columnId: string) => ReactNode;\n\t/** 卡片拖拽移动完成回调 */\n\tonCardMove?: (\n\t\tcardId: string,\n\t\tsourceColId: string,\n\t\ttargetColId: string,\n\t\tnewIndex: number,\n\t) => void;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nfunction KanbanBoard<T>({\n\tcolumns,\n\tkeyExtractor,\n\trenderCard,\n\tonCardMove,\n\tclassName = '',\n\tstyle,\n}: KanbanBoardProps<T>) {\n\tconst [draggingCardId, setDraggingCardId] = useState<string | null>(null);\n\tconst [sourceColumnId, setSourceColumnId] = useState<string | null>(null);\n\tconst [dragOverColumnId, setDragOverColumnId] = useState<string | null>(null);\n\n\tconst handleDragStart = (\n\t\te: React.DragEvent<HTMLDivElement>,\n\t\tcardId: string,\n\t\tcolId: string,\n\t) => {\n\t\tsetDraggingCardId(cardId);\n\t\tsetSourceColumnId(colId);\n\t\te.dataTransfer.setData('text/plain', JSON.stringify({ cardId, colId }));\n\t\te.dataTransfer.effectAllowed = 'move';\n\t};\n\n\tconst handleDragEnd = () => {\n\t\tsetDraggingCardId(null);\n\t\tsetSourceColumnId(null);\n\t\tsetDragOverColumnId(null);\n\t};\n\n\tconst handleDragOverCol = (e: React.DragEvent<HTMLDivElement>, colId: string) => {\n\t\te.preventDefault();\n\t\te.dataTransfer.dropEffect = 'move';\n\t\tif (dragOverColumnId !== colId) {\n\t\t\tsetDragOverColumnId(colId);\n\t\t}\n\t};\n\n\tconst handleDropOnCol = (\n\t\te: React.DragEvent<HTMLDivElement>,\n\t\ttargetColId: string,\n\t\ttargetIndex?: number,\n\t) => {\n\t\te.preventDefault();\n\t\tif (!draggingCardId || !sourceColumnId) return;\n\n\t\tconst targetColumn = columns.find((c) => c.id === targetColId);\n\t\tconst newIdx = targetIndex !== undefined ? targetIndex : targetColumn ? targetColumn.items.length : 0;\n\n\t\tonCardMove?.(draggingCardId, sourceColumnId, targetColId, newIdx);\n\t\thandleDragEnd();\n\t};\n\n\treturn (\n\t\t<div className={`rpc_kanban_board ${className}`} style={style}>\n\t\t\t{columns.map((col) => {\n\t\t\t\tconst isOver = dragOverColumnId === col.id;\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={col.id}\n\t\t\t\t\t\tclassName={`rpc_kanban_board_column ${\n\t\t\t\t\t\t\tisOver ? 'rpc_kanban_board_column_dragover' : ''\n\t\t\t\t\t\t}`}\n\t\t\t\t\t\tonDragOver={(e) => handleDragOverCol(e, col.id)}\n\t\t\t\t\t\tonDrop={(e) => handleDropOnCol(e, col.id)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{/* 列头部 */}\n\t\t\t\t\t\t<div className=\"rpc_kanban_board_column_header\">\n\t\t\t\t\t\t\t<div className=\"rpc_kanban_board_column_title_wrap\">\n\t\t\t\t\t\t\t\t{col.color && (\n\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\tclassName=\"rpc_kanban_board_column_dot\"\n\t\t\t\t\t\t\t\t\t\tstyle={{ backgroundColor: col.color }}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<span>{col.title}</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<span className=\"rpc_kanban_board_column_count\">\n\t\t\t\t\t\t\t\t{col.items.length}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t{/* 卡片列表 */}\n\t\t\t\t\t\t<div className=\"rpc_kanban_board_column_body\">\n\t\t\t\t\t\t\t{col.items.map((item, idx) => {\n\t\t\t\t\t\t\t\tconst cardId = keyExtractor(item);\n\t\t\t\t\t\t\t\tconst isDragging = draggingCardId === cardId;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tkey={cardId}\n\t\t\t\t\t\t\t\t\t\tdraggable\n\t\t\t\t\t\t\t\t\t\tonDragStart={(e) => handleDragStart(e, cardId, col.id)}\n\t\t\t\t\t\t\t\t\t\tonDragEnd={handleDragEnd}\n\t\t\t\t\t\t\t\t\t\tonDragOver={(e) => {\n\t\t\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonDrop={(e) => {\n\t\t\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\thandleDropOnCol(e, col.id, idx);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName={`rpc_kanban_board_card ${\n\t\t\t\t\t\t\t\t\t\t\tisDragging ? 'rpc_kanban_board_card_dragging' : ''\n\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{renderCard(item, col.id)}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n}\n\nexport default KanbanBoard;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/icons.tsx"],"names":["jsx","jsxs"],"mappings":"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","file":"chunk-Q4QF6UYX.cjs","sourcesContent":["import type { CSSProperties } from 'react';\n\ninterface IconProps {\n\tstyle?: CSSProperties;\n\tclassName?: string;\n}\n\nconst baseStyle: CSSProperties = {\n\tdisplay: 'inline-block',\n\twidth: '1em',\n\theight: '1em',\n\tverticalAlign: '-0.125em',\n};\n\nexport const LeftOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"left\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z\" />\n\t</svg>\n);\n\nexport const RightOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"right\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z\" />\n\t</svg>\n);\n\nexport const UpOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"up\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M890.5 755.3L537.4 268a31.96 31.96 0 00-50.8 0L133.5 755.3a7.95 7.95 0 006.3 12.7h75.5c4.9 0 9.6-2.3 12.6-6.1l281-360 281 360c3 3.8 7.7 6.1 12.6 6.1h75.5c6.7 0 10.4-7.6 6.1-12.7z\" />\n\t</svg>\n);\n\nexport const DownOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"down\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 37 17.6 49.8 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\" />\n\t</svg>\n);\n\nexport const LockOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"lock\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M928 224H704v-64c0-88.4-71.6-160-160-160s-160 71.6-160 160v64H160c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h768c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32zM456 160c0-44.2 35.8-80 80-80s80 35.8 80 80v64H456v-64zm408 696H224V296h640v560zM496 448c-30.9 0-56 25.1-56 56 0 24.7 16.1 45.6 38.4 52.7V680c0 9.7 7.8 17.5 17.6 17.5h32c9.7 0 17.6-7.8 17.6-17.5V556.7c22.3-7.1 38.4-28 38.4-52.7 0-30.9-25.1-56-56-56z\" />\n\t</svg>\n);\n\nexport const CloseCircleFilled = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"close-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-66L512 516.8l-99.4 99.4-66-66L446 450.8 346.6 351.4l66-66L512 384.8l99.4-99.4 66 66L578 450.8l99.4 99.4z\" />\n\t</svg>\n);\n\nexport const CopyOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"copy\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v496c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V128c0-35.3-28.7-64-64-64zM704 192H192c-35.3 0-64 28.7-64 64v640c0 35.3 28.7 64 64 64h512c35.3 0 64-28.7 64-64V256c0-35.3-28.7-64-64-64zm-8 648H200c-4.4 0-8-3.6-8-8V264c0-4.4 3.6-8 8-8h496c4.4 0 8 3.6 8 8v568c0 4.4-3.6 8-8 8z\" />\n\t</svg>\n);\n\nexport const CheckOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"check\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\" />\n\t</svg>\n);\n\nexport const LoadingOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"loading\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{\n\t\t\t...baseStyle,\n\t\t\tanimation: 'rpc-spin 0.85s infinite linear',\n\t\t\t...style,\n\t\t}}\n\t\tclassName={`rpc_loading_icon ${className || ''}`}\n\t>\n\t\t<style>\n\t\t\t{`@keyframes rpc-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }`}\n\t\t</style>\n\t\t<circle\n\t\t\tcx=\"512\"\n\t\t\tcy=\"512\"\n\t\t\tr=\"380\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeWidth=\"96\"\n\t\t\tstrokeOpacity=\"0.2\"\n\t\t/>\n\t\t<path\n\t\t\td=\"M512 132c209.9 0 380 170.1 380 380\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeWidth=\"96\"\n\t\t\tstrokeLinecap=\"round\"\n\t\t/>\n\t</svg>\n);\n\nexport const SearchOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"search\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M909.6 854.5L649.9 594.8C690.2 537.8 712 469 712 396c0-174.5-141.5-316-316-316S80 221.5 80 396s141.5 316 316 316c73 0 141.8-21.8 198.8-62.1l259.7 259.7c4.7 4.7 12.3 4.7 17 0l38.1-38.1c4.7-4.7 4.7-12.3 0-17zM396 644c-137 0-248-111-248-248S259 148 396 148s248 111 248 248-111 248-248 248z\" />\n\t</svg>\n);\n\nexport const CloseOutlined = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"close\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"84\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M260 260l504 504M764 260L260 764\" />\n\t</svg>\n);\n\nexport const EditOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"edit\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-148.6L687.8 240.7l48.1 48.1-362.7 362.7-65.6 11.5 17.5-69.6zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\" />\n\t</svg>\n);\n\nexport const DeleteOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"delete\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M864 256H704V144c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v112H160c-17.7 0-32 14.3-32 32v24c0 4.4 3.6 8 8 8h60.5l52.6 578.6C251.2 922.3 273 944 298.8 944h426.4c25.8 0 47.6-21.7 49.7-47.4L827.5 320H888c4.4 0 8-3.6 8-8v-24c0-17.7-14.3-32-32-32zM384 168h256v88H384v-88zm377.9 713.8a8.04 8.04 0 01-8 7.2H298.8c-4.2 0-7.7-3.2-8-7.2L240.2 320h543.5l-51.8 561.8z\" />\n\t</svg>\n);\n\nexport const ShareAltOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"share-alt\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M752 664c-28.5 0-54.8 10-75.6 26.8L414.5 522.6c1.5-7.3 2.5-14.9 2.5-22.6s-1-15.3-2.5-22.6L676.4 309.2C697.2 326 723.5 336 752 336c66.3 0 120-53.7 120-120s-53.7-120-120-120-120 53.7-120 120c0 7.7 1 15.3 2.5 22.6L372.6 406.8C351.8 390 325.5 380 296 380c-66.3 0-120 53.7-120 120s53.7 120 120 120c29.5 0 55.8-10 76.6-26.8l261.9 168.2c-1.5 7.3-2.5 14.9-2.5 22.6 0 66.3 53.7 120 120 120s120-53.7 120-120-53.7-120-120-120z\" />\n\t</svg>\n);\n\nexport const FullscreenOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"fullscreen\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"88\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 左上角 ↖ */}\n\t\t<path d=\"M380 180H180v200\" />\n\t\t<path d=\"M180 180l240 240\" />\n\t\t{/* 右上角 ↗ */}\n\t\t<path d=\"M644 180h200v200\" />\n\t\t<path d=\"M844 180L604 420\" />\n\t\t{/* 左下角 ↙ */}\n\t\t<path d=\"M180 644v200h200\" />\n\t\t<path d=\"M180 844l240-240\" />\n\t\t{/* 右下角 ↘ */}\n\t\t<path d=\"M844 644v200H644\" />\n\t\t<path d=\"M844 844L604 604\" />\n\t</svg>\n);\n\nexport const FullscreenExitOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"fullscreen-exit\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"88\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 左上角内聚 ↘ */}\n\t\t<path d=\"M180 420h240V180\" />\n\t\t<path d=\"M420 420L180 180\" />\n\t\t{/* 右上角内聚 ↙ */}\n\t\t<path d=\"M844 420H604V180\" />\n\t\t<path d=\"M604 420l240-240\" />\n\t\t{/* 左下角内聚 ↗ */}\n\t\t<path d=\"M180 604h240v240\" />\n\t\t<path d=\"M420 604L180 844\" />\n\t\t{/* 右下角内聚 ↖ */}\n\t\t<path d=\"M844 604H604v240\" />\n\t\t<path d=\"M604 604l240 240\" />\n\t</svg>\n);\n\nexport const RotateRightOutlined = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"rotate-right\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"80\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t{/* 顺时针旋转主体圆弧 */}\n\t\t<path d=\"M896 512a384 384 0 1 1-112.5-271.5L896 341\" />\n\t\t{/* 顺时针旋转折线箭头 */}\n\t\t<path d=\"M896 128v213h-213\" />\n\t</svg>\n);\n\nexport const ZoomInOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"zoom-in\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 放大镜圆镜框 */}\n\t\t<circle cx=\"440\" cy=\"440\" r=\"280\" />\n\t\t{/* 放大镜手柄 */}\n\t\t<path d=\"M640 640l220 220\" strokeWidth=\"88\" />\n\t\t{/* 放大镜内部清晰加号 */}\n\t\t<path d=\"M440 320v240M320 440h240\" strokeWidth=\"80\" />\n\t</svg>\n);\n\nexport const ZoomOutOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"zoom-out\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 放大镜圆镜框 */}\n\t\t<circle cx=\"440\" cy=\"440\" r=\"280\" />\n\t\t{/* 放大镜手柄 */}\n\t\t<path d=\"M640 640l220 220\" strokeWidth=\"88\" />\n\t\t{/* 放大镜内部清晰减号 */}\n\t\t<path d=\"M320 440h240\" strokeWidth=\"80\" />\n\t</svg>\n);\n\nexport const DownloadOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"download\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 下载向下箭头 */}\n\t\t<path d=\"M512 160v460M330 450l182 182 182-182\" />\n\t\t{/* 底部托盘 */}\n\t\t<path d=\"M200 680v160h624V680\" />\n\t</svg>\n);\n\nexport const FileOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224z\" />\n\t</svg>\n);\n\nexport const FilePdfOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-pdf\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M532 531.3c-7.9-25.1-17.9-57.9-29.2-94.8 17.4-44.5 28.5-84.5 32.8-118.6 6.8-54.6-1.5-87.1-23.7-92.3-15.6-3.7-33 11-40.4 46.1-5.1 24.3-3.6 56.4 4.3 93.3-8.8 33-21.9 76.5-38.3 125.7-18.7 56.2-41.2 108.6-66.2 153.8-37.1 20.3-69 41.5-92.9 63.8-38.2 35.6-46.7 67.2-24.1 89.8 12.8 12.8 31.6 15.3 54.1 7.2 28.8-10.4 62.9-38.9 98.7-83.3 43.1-13.8 91.5-26.3 143.1-37.2 32.8 23.3 64.9 39.8 94.6 48.7 32 9.6 57 8.3 69.8-3.9 15.6-14.8 11.6-42.3-11.4-78.7-17.7-27.9-43.9-51.5-76.3-69.6-1.4-.8-2.8-1.5-4.2-2.3zm-180.2 277c-7.8-7.8-7.8-21.1 0-38.2 11.3-24.8 29.5-48.4 52.8-68.5-25.3 47.9-43.2 86.8-52.8 106.7zm134.7-474c1.6-18.1 4.5-28.7 8.3-30.8 2.2-1.2 5-.8 8.1 1.2 5.1 3.3 7 14.5 5.5 32.5-1.9 22.8-8.2 49.3-18.4 78.4-3.2-30.1-4.7-57.2-3.5-81.3zm-27.1 257.6c17.5-47.5 31.8-90.8 42.1-127.3 9.4 29.6 17.5 56.4 24 79.2-21.6 4.9-43.9 10.3-66.1 16.1v32zm251.4 69.7c15.1 18.8 18.4 32.1 9.4 39.5-3.3 2.7-8.9 3.2-16.4.7-12.7-4.2-27.7-13.5-43.9-27.1 22.8 3.8 41.5-1.1 50.9-13.1zM854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224z\" />\n\t</svg>\n);\n\nexport const FileImageOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-image\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224zm136-280a48 48 0 1096 0 48 48 0 10-96 0zm336 96L552 544l-96 112-48-56-112 112h400z\" />\n\t</svg>\n);\n\nexport const FileTextOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-text\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224zm120-480h160c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8zm0 120h336c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8zm0 120h336c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8z\" />\n\t</svg>\n);\n\nexport const EyeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"eye\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.2a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.4 684.2 673.3 766 512 766zm-1-438c-101.6 0-184 82.4-184 184s82.4 184 184 184 184-82.4 184-184-82.4-184-184-184zm0 296c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z\" />\n\t</svg>\n);\n\nexport const EyeInvisibleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"eye-invisible\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M942.2 486.2Q889.47 375.11 804.85 296.83l57.75-57.75a8.03 8.03 0 000-11.32l-39.6-39.6a8.03 8.03 0 00-11.31 0L117.82 882.03a8.03 8.03 0 000 11.32l39.6 39.6a8.03 8.03 0 0011.31 0l79.47-79.47C333.62 882.35 421.36 900 512 900c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 828c-161.3 0-279.4-81.8-362.7-254 38.67-80.44 94.67-142.75 163.66-184.22l81.65 81.65a184.07 184.07 0 00231.42 231.42l77.72 77.72C637.38 812.59 576.84 828 512 828zm-399.7-331.4C108.6 489.1 106 480 106 470c0-10 2.6-19.1 6.3-26.6 94.8-199.7 238-300.2 430.2-300.2 73.1 0 141.7 14.5 204.6 41.5l-63.5 63.5A384.85 384.85 0 00512 210c-161.3 0-279.4 81.8-362.7 254 18.23 37.93 40.54 70.83 66.27 98.42l-51.3 51.3a549.9 549.9 0 01-51.97-117.12z\" />\n\t</svg>\n);\n\nexport const PlayCircleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"play-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372zm-88-532.7v325.4c0 10.7 11.9 17.1 20.9 11.3l244-162.7a13.6 13.6 0 000-22.6l-244-162.7c-9-5.8-20.9.6-20.9 11.3z\" />\n\t</svg>\n);\n\nexport const PauseCircleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"pause-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372zm-128-524c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V360zm160 0c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V360z\" />\n\t</svg>\n);\n\nexport const UndoOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"undo\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M758 416H428.8l93.7-93.7c3.1-3.1 3.1-8.2 0-11.3l-22.6-22.6a8.03 8.03 0 00-11.3 0L303.3 473.7a8.03 8.03 0 000 11.3l185.3 185.3c3.1 3.1 8.2 3.1 11.3 0l22.6-22.6c3.1-3.1 3.1-8.2 0-11.3L428.8 544H758c56.3 0 102 45.7 102 102s-45.7 102-102 102H260c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h498c120.4 0 218-97.6 218-218s-97.6-218-218-218z\" />\n\t</svg>\n);\n\nexport const RedoOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"redo\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M758.2 338.3L572.9 153c-3.1-3.1-8.2-3.1-11.3 0l-22.6 22.6a8.03 8.03 0 000 11.3l93.7 93.7H266c-120.4 0-218 97.6-218 218s97.6 218 218 218h498c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H266c-56.3 0-102-45.7-102-102s45.7-102 102-102h366.7l-93.7 93.7c-3.1 3.1-3.1 8.2 0 11.3l22.6 22.6c3.1 3.1 8.2 3.1 11.3 0l185.3-185.3a8.03 8.03 0 000-11.3z\" />\n\t</svg>\n);\n\nexport const ReloadOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"reload\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 96 512 96 282.2 96 96 282.2 96 512s186.2 416 416 416c196.4 0 361.3-136.2 404.7-319.4 1.2-5.1-1.9-10.2-7.1-11.4l-62.4-14.7c-5.1-1.2-10.2 1.9-11.4 7.1C800.7 724.8 667.6 832 512 832c-176.7 0-320-143.3-320-320s143.3-320 320-320c112.5 0 211.3 58 268.4 146.4l-75.1 58.7c-5.3 4.1-3.4 12.6 3.1 14.1l197.8 45.4c4.6 1.1 9.1-2.4 9.1-7.1l-1.9-202.9c0-6.6-8.2-9.7-12.7-4.9z\" />\n\t</svg>\n);\n\nexport const SoundOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"sound\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M625.9 115c-5.9 0-11.9 1.6-17.2 4.9L354.8 280H192c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h162.8l253.9 160.1c5.3 3.3 11.3 4.9 17.2 4.9 18.2 0 33.1-14.9 33.1-33.1V148.1c0-18.2-14.9-33.1-33.1-33.1zm-32.9 663.2L367.6 634.6a8 8 0 00-4.3-1.2H232V390.6h131.3a8 8 0 004.3-1.2L593 245.8v532.4zM704 398.7a32 32 0 00-32 32v162.6a32 32 0 0064 0V430.7a32 32 0 00-32-32zm96-99.3a32 32 0 00-32 32v361.3a32 32 0 0064 0V331.4a32 32 0 00-32-32z\" />\n\t</svg>\n);\n\nexport const SendOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"send\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M931.4 498.9L94.9 79.5c-3.4-1.7-7.3-2.1-11-1.2a15.8 15.8 0 00-11.8 17.9L173 496H512v32H173L72.1 927.8c-1.8 7.3 1.9 14.9 8.8 17.7 2.3.9 4.7 1.2 7.1.7 3.7-.7 7.1-2.9 9.1-6L931.4 525.1c6.1-4.7 7.4-13.5 2.7-19.6-.8-1-1.7-1.8-2.7-2.6z\" />\n\t</svg>\n);\n\nexport const LikeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"like\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M885.9 533.7c16.8-22.2 26.1-49.4 26.1-77.7 0-44.9-25.1-85-65.6-104.2l-21.8-10.3 8.5-22.6c8.6-22.8 13-46.9 13-71.9 0-94.8-77-172-171.8-172-35.4 0-69.2 10.9-97.7 31.5L462.6 193c-2.4 1.7-4.6 3.6-6.6 5.6L348 306.6c-4.4 4.4-6.9 10.4-6.9 16.6V768c0 13.3 10.7 24 24 24h356c32.1 0 61.5-16.7 77.8-44.1l21.2-35.7 38.6-6.4c35.4-5.9 64.3-30.8 74.9-64.6l6.8-21.6 22 4.4c2.8.6 5.6.8 8.4.8 28.3 0 54.8-12.8 72.1-35.3 16.8-22.2 21.6-50.6 13.1-77.9l-6.8-21.6 22 4.4c2.8.6 5.6.8 8.4.8 28.3 0 54.8-12.8 72.1-35.3 16.8-22.2 21.6-50.6 13.1-77.9l-8.9-28.7zM792 720H406V336l96-96c21.2-21.2 46.3-37.4 73.9-47.5 12.8-4.7 26.3-7.1 40.1-7.1 55.1 0 100 44.9 100 100 0 18.2-4.1 36.1-11.9 52.3l-19.1 39.5H846c24.6 0 45.4 17.5 49.3 41.8 1.9 12-1 24.1-8.1 33.4L870.3 475l16.9 5.6c11.9 3.9 21.3 12.8 25.8 24.4s3 24.4-4.2 33.9L892 560l16.9 5.6c11.9 3.9 21.3 12.8 25.8 24.4s3 24.4-4.2 33.9L913.6 645l-12.1 38.6c-5.8 18.5-21.7 32.1-41.1 35.3L792 720zm-536 72h-80c-4.4 0-8-3.6-8-8V328c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v456c0 4.4-3.6 8-8 8z\" />\n\t</svg>\n);\n\nexport const DislikeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"dislike\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M885.9 490.3l8.9-28.7c8.5-27.3 3.7-55.7-13.1-77.9-17.3-22.5-43.8-35.3-72.1-35.3-2.8 0-5.6.3-8.4.8l-22 4.4 6.8-21.6c8.5-27.3 3.7-55.7-13.1-77.9-17.3-22.5-43.8-35.3-72.1-35.3-2.8 0-5.6.3-8.4.8l-22 4.4-6.8-21.6c-10.6-33.8-39.5-58.7-74.9-64.6l-38.6-6.4-21.2-35.7C620.5 106.7 591.1 90 559 90H203c-13.3 0-24 10.7-24 24v444.8c0 6.2 2.5 12.2 6.9 16.6l108 108c2 2 4.2 3.9 6.6 5.6l113.8 81.3c28.5 20.6 62.3 31.5 97.7 31.5 94.8 0 171.8-77.2 171.8-172 0-25-4.4-49.1-13-71.9l-8.5-22.6 21.8-10.3c40.5-19.2 65.6-59.3 65.6-104.2.1-28.3-9.2-55.5-26-77.7zM792 304l68.4-1.1c19.4 3.2 35.3 16.8 41.1 35.3l12.1 38.6 16.9 21.2c7.2 9.5 8.7 22.3 4.2 33.9s-13.9 20.5-25.8 24.4L892 462l16.9 21.2c7.2 9.5 8.7 22.3 4.2 33.9s-13.9 20.5-25.8 24.4l-16.9 5.6 14.8 17.9c7.1 9.3 10 21.4 8.1 33.4-3.9 24.3-24.7 41.8-49.3 41.8H741l19.1 39.5c7.8 16.2 11.9 34.1 11.9 52.3 0 55.1-44.9 100-100 100-13.8 0-27.3-2.4-40.1-7.1-27.6-10.1-52.7-26.3-73.9-47.5l-96-96V232h386zM256 232h-80c-4.4 0-8 3.6-8 8v456c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V240c0-4.4-3.6-8-8-8z\" />\n\t</svg>\n);\n\nexport const StarFilled = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"star\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M908.1 353.1l-253.9-36.9L540.7 86.6c-9.7-19.7-37.7-19.7-47.4 0L379.8 316.2l-253.9 36.9c-21.9 3.2-30.6 30-14.7 45.5l183.7 179-43.4 252.9c-3.7 21.8 19.1 38.4 38.8 28.1L512 740l221.7 116.6c19.7 10.4 42.5-6.3 38.8-28.1l-43.4-252.9 183.7-179c15.9-15.5 7.2-42.3-14.7-45.5z\" />\n\t</svg>\n);\n\n\n\n\n\n\n\n\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../DebounceSelect/index.tsx"],"names":["useState","useRef","useMemo","useEffect","jsxs","jsx","LoadingOutlined","CloseCircleFilled","DownOutlined","CheckOutlined"],"mappings":"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","file":"chunk-QI7XQDFZ.cjs","sourcesContent":["import React, { useState, useRef, useEffect, useMemo, ReactNode, CSSProperties } from 'react';\nimport { LoadingOutlined, SearchOutlined, CloseCircleFilled, DownOutlined, CheckOutlined } from '../src/icons';\nimport './index.less';\n\nexport interface SelectOption {\n\tlabel: ReactNode;\n\tvalue: string | number;\n\tdisabled?: boolean;\n\t[key: string]: unknown;\n}\n\nexport type SelectValue =\n\t| string\n\t| number\n\t| SelectOption\n\t| (string | number | SelectOption)[]\n\t| undefined;\n\nexport interface DebounceSelectProps {\n\t/** 异步拉取选项列表的函数 */\n\tfetchOptions: (search: string) => Promise<SelectOption[]>;\n\t/** 防抖等待时间(毫秒),默认为 300ms */\n\tdebounceTimeout?: number;\n\t/** 选择模式:'single' 单选,'multiple' 多选(Tag标签形式) */\n\tmode?: 'single' | 'multiple';\n\t/** 当前选中值 */\n\tvalue?: SelectValue;\n\t/** 默认选中值 */\n\tdefaultValue?: SelectValue;\n\t/** 选中值变化回调 */\n\tonChange?: (value: any, option?: SelectOption | SelectOption[]) => void;\n\t/** 输入框占位符 */\n\tplaceholder?: string;\n\t/** 是否支持清空 */\n\tallowClear?: boolean;\n\t/** 是否禁用 */\n\tdisabled?: boolean;\n\t/** 空数据时的展示内容 */\n\tnotFoundContent?: ReactNode;\n\t/** 默认选项列表(搜索前展示) */\n\tdefaultOptions?: SelectOption[];\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nconst DebounceSelect: React.FC<DebounceSelectProps> = ({\n\tfetchOptions,\n\tdebounceTimeout = 300,\n\tmode = 'single',\n\tvalue: controlledValue,\n\tdefaultValue,\n\tonChange,\n\tplaceholder = '请输入搜索内容...',\n\tallowClear = true,\n\tdisabled = false,\n\tnotFoundContent = '暂无匹配数据',\n\tdefaultOptions = [],\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst [internalValue, setInternalValue] = useState<SelectValue>(\n\t\tdefaultValue ?? (mode === 'multiple' ? [] : undefined),\n\t);\n\n\tconst currentValue = controlledValue !== undefined ? controlledValue : internalValue;\n\n\tconst [options, setOptions] = useState<SelectOption[]>(defaultOptions);\n\tconst [fetching, setFetching] = useState<boolean>(false);\n\tconst [searchValue, setSearchValue] = useState<string>('');\n\tconst [isOpen, setIsOpen] = useState<boolean>(false);\n\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\tconst fetchRef = useRef<number>(0);\n\tconst debounceTimerRef = useRef<number | null>(null);\n\n\t// 解析格式化已选值,统一定位到数组格式\n\tconst selectedList: SelectOption[] = useMemo(() => {\n\t\tif (currentValue === undefined || currentValue === null) return [];\n\t\tconst rawArr = Array.isArray(currentValue) ? currentValue : [currentValue];\n\t\treturn rawArr.map((item) => {\n\t\t\tif (typeof item === 'object' && item !== null && 'value' in item) {\n\t\t\t\treturn item as SelectOption;\n\t\t\t}\n\t\t\tconst matched = options.find((opt) => opt.value === item);\n\t\t\treturn matched || { label: String(item), value: item as string | number };\n\t\t});\n\t}, [currentValue, options]);\n\n\t// 异步搜索逻辑(带时序竞态控制)\n\tconst performSearch = (kw: string) => {\n\t\tfetchRef.current += 1;\n\t\tconst fetchId = fetchRef.current;\n\n\t\tif (debounceTimerRef.current) {\n\t\t\twindow.clearTimeout(debounceTimerRef.current);\n\t\t}\n\n\t\tdebounceTimerRef.current = window.setTimeout(() => {\n\t\t\tsetFetching(true);\n\t\t\tfetchOptions(kw)\n\t\t\t\t.then((newOptions) => {\n\t\t\t\t\t// 仅当当前请求是最新一次发起的请求时才更新 options\n\t\t\t\t\tif (fetchId === fetchRef.current) {\n\t\t\t\t\t\tsetOptions(newOptions);\n\t\t\t\t\t\tsetFetching(false);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tif (fetchId === fetchRef.current) {\n\t\t\t\t\t\tsetOptions([]);\n\t\t\t\t\t\tsetFetching(false);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}, debounceTimeout);\n\t};\n\n\t// 监听输入变化\n\tconst handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n\t\tconst val = e.target.value;\n\t\tsetSearchValue(val);\n\t\tif (!isOpen) setIsOpen(true);\n\t\tperformSearch(val);\n\t};\n\n\t// 点击外部关闭弹窗\n\tuseEffect(() => {\n\t\tconst handleClickOutside = (e: MouseEvent) => {\n\t\t\tif (containerRef.current && !containerRef.current.contains(e.target as Node)) {\n\t\t\t\tsetIsOpen(false);\n\t\t\t}\n\t\t};\n\t\tdocument.addEventListener('mousedown', handleClickOutside);\n\t\treturn () => {\n\t\t\tdocument.removeEventListener('mousedown', handleClickOutside);\n\t\t\tif (debounceTimerRef.current) {\n\t\t\t\twindow.clearTimeout(debounceTimerRef.current);\n\t\t\t}\n\t\t};\n\t}, []);\n\n\t// 选中项处理\n\tconst handleSelectOption = (option: SelectOption) => {\n\t\tif (option.disabled) return;\n\n\t\tif (mode === 'single') {\n\t\t\tif (controlledValue === undefined) {\n\t\t\t\tsetInternalValue(option.value);\n\t\t\t}\n\t\t\tonChange?.(option.value, option);\n\t\t\tsetIsOpen(false);\n\t\t\tsetSearchValue('');\n\t\t} else {\n\t\t\tconst exists = selectedList.some((item) => item.value === option.value);\n\t\t\tlet nextSelected: SelectOption[];\n\t\t\tif (exists) {\n\t\t\t\tnextSelected = selectedList.filter((item) => item.value !== option.value);\n\t\t\t} else {\n\t\t\t\tnextSelected = [...selectedList, option];\n\t\t\t}\n\t\t\tconst nextValues = nextSelected.map((item) => item.value);\n\t\t\tif (controlledValue === undefined) {\n\t\t\t\tsetInternalValue(nextValues);\n\t\t\t}\n\t\t\tonChange?.(nextValues, nextSelected);\n\t\t\tsetSearchValue('');\n\t\t\tinputRef.current?.focus();\n\t\t}\n\t};\n\n\t// 移除选中 Tag\n\tconst handleRemoveTag = (e: React.MouseEvent, val: string | number) => {\n\t\te.stopPropagation();\n\t\tconst nextSelected = selectedList.filter((item) => item.value !== val);\n\t\tconst nextValues = nextSelected.map((item) => item.value);\n\t\tif (controlledValue === undefined) {\n\t\t\tsetInternalValue(nextValues);\n\t\t}\n\t\tonChange?.(nextValues, nextSelected);\n\t};\n\n\t// 清空全部\n\tconst handleClear = (e: React.MouseEvent) => {\n\t\te.stopPropagation();\n\t\tconst emptyVal = mode === 'multiple' ? [] : undefined;\n\t\tif (controlledValue === undefined) {\n\t\t\tsetInternalValue(emptyVal);\n\t\t}\n\t\tonChange?.(emptyVal, mode === 'multiple' ? [] : undefined);\n\t\tsetSearchValue('');\n\t};\n\n\tconst showClear = allowClear && !disabled && (selectedList.length > 0 || searchValue.length > 0);\n\n\treturn (\n\t\t<div\n\t\t\tref={containerRef}\n\t\t\tclassName={`rpc_debounce_select ${className}`}\n\t\t\tstyle={style}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={`rpc_debounce_select_selector ${\n\t\t\t\t\tisOpen ? 'rpc_debounce_select_selector_focused' : ''\n\t\t\t\t} ${disabled ? 'rpc_debounce_select_selector_disabled' : ''}`}\n\t\t\t\tonClick={() => {\n\t\t\t\t\tif (!disabled) {\n\t\t\t\t\t\tsetIsOpen(true);\n\t\t\t\t\t\tinputRef.current?.focus();\n\t\t\t\t\t\tif (options.length === 0 && !searchValue) {\n\t\t\t\t\t\t\tperformSearch('');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{/* 多选 Tags */}\n\t\t\t\t{mode === 'multiple' &&\n\t\t\t\t\tselectedList.map((item) => (\n\t\t\t\t\t\t<span key={item.value} className=\"rpc_debounce_select_tag\">\n\t\t\t\t\t\t\t<span>{item.label}</span>\n\t\t\t\t\t\t\t{!disabled && (\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclassName=\"rpc_debounce_select_tag_close\"\n\t\t\t\t\t\t\t\t\tonClick={(e) => handleRemoveTag(e, item.value)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t×\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t))}\n\n\t\t\t\t{/* 单选回显值或输入框 */}\n\t\t\t\t{mode === 'single' && selectedList.length > 0 && !searchValue && !isOpen && (\n\t\t\t\t\t<span style={{ color: '#262626', marginRight: 4 }}>{selectedList[0].label}</span>\n\t\t\t\t)}\n\n\t\t\t\t<input\n\t\t\t\t\tref={inputRef}\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tclassName=\"rpc_debounce_select_input\"\n\t\t\t\t\tvalue={searchValue}\n\t\t\t\t\tonChange={handleInputChange}\n\t\t\t\t\tplaceholder={selectedList.length === 0 ? placeholder : ''}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t/>\n\n\t\t\t\t{/* 右侧动作按钮 */}\n\t\t\t\t<div className=\"rpc_debounce_select_actions\">\n\t\t\t\t\t{fetching && <LoadingOutlined />}\n\t\t\t\t\t{!fetching && showClear && (\n\t\t\t\t\t\t<CloseCircleFilled className=\"rpc_debounce_select_clear_btn\" onClick={handleClear} />\n\t\t\t\t\t)}\n\t\t\t\t\t{!fetching && !showClear && (\n\t\t\t\t\t\t<DownOutlined\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\ttransform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)',\n\t\t\t\t\t\t\t\ttransition: 'transform 0.2s',\n\t\t\t\t\t\t\t\tfontSize: 10,\n\t\t\t\t\t\t\t}}\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{/* 下拉浮层 */}\n\t\t\t{isOpen && !disabled && (\n\t\t\t\t<div className=\"rpc_debounce_select_dropdown\">\n\t\t\t\t\t{fetching && options.length === 0 ? (\n\t\t\t\t\t\t<div className=\"rpc_debounce_select_empty\">\n\t\t\t\t\t\t\t<LoadingOutlined style={{ marginRight: 8 }} />\n\t\t\t\t\t\t\t正在搜索中...\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : options.length > 0 ? (\n\t\t\t\t\t\toptions.map((opt) => {\n\t\t\t\t\t\t\tconst isSelected = selectedList.some((item) => item.value === opt.value);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tkey={opt.value}\n\t\t\t\t\t\t\t\t\tclassName={`rpc_debounce_select_item ${\n\t\t\t\t\t\t\t\t\t\tisSelected ? 'rpc_debounce_select_item_selected' : ''\n\t\t\t\t\t\t\t\t\t} ${opt.disabled ? 'rpc_debounce_select_item_disabled' : ''}`}\n\t\t\t\t\t\t\t\t\tonClick={() => handleSelectOption(opt)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>{opt.label}</span>\n\t\t\t\t\t\t\t\t\t{isSelected && <CheckOutlined style={{ fontSize: 12 }} />}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"rpc_debounce_select_empty\">{notFoundContent}</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nexport default DebounceSelect;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../JsonTree/index.tsx"],"names":[],"mappings":"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","file":"chunk-QKSCFVN2.js","sourcesContent":["import React, { useState, CSSProperties } from 'react';\nimport './index.less';\n\nexport interface JsonTreeProps {\n\t/** JSON 数据源 */\n\tdata: any;\n\t/** 默认展开层级深度,默认为 2 */\n\tdefaultExpandedLevel?: number;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\ninterface TreeNodeProps {\n\tkeyName?: string;\n\tvalue: any;\n\tdepth: number;\n\tmaxDepth: number;\n}\n\nconst TreeNode: React.FC<TreeNodeProps> = ({ keyName, value, depth, maxDepth }) => {\n\tconst [collapsed, setCollapsed] = useState<boolean>(depth >= maxDepth);\n\n\tconst isObject = value !== null && typeof value === 'object';\n\tconst isArray = Array.isArray(value);\n\n\tif (!isObject) {\n\t\tlet valClass = 'rpc_json_tree_string';\n\t\tlet valStr = `\"${value}\"`;\n\n\t\tif (typeof value === 'number') {\n\t\t\tvalClass = 'rpc_json_tree_number';\n\t\t\tvalStr = String(value);\n\t\t} else if (typeof value === 'boolean') {\n\t\t\tvalClass = 'rpc_json_tree_boolean';\n\t\t\tvalStr = String(value);\n\t\t} else if (value === null) {\n\t\t\tvalClass = 'rpc_json_tree_null';\n\t\t\tvalStr = 'null';\n\t\t}\n\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{keyName !== undefined && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<span className=\"rpc_json_tree_key\">\"{keyName}\"</span>\n\t\t\t\t\t\t<span className=\"rpc_json_tree_colon\">:</span>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<span className={valClass}>{valStr}</span>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst keys = Object.keys(value);\n\tconst openBracket = isArray ? '[' : '{';\n\tconst closeBracket = isArray ? ']' : '}';\n\n\treturn (\n\t\t<div>\n\t\t\t<span\n\t\t\t\tclassName={`rpc_json_tree_toggle ${collapsed ? 'rpc_json_tree_toggle_collapsed' : ''}`}\n\t\t\t\tonClick={() => setCollapsed(!collapsed)}\n\t\t\t>\n\t\t\t\t▼\n\t\t\t</span>\n\n\t\t\t{keyName !== undefined && (\n\t\t\t\t<>\n\t\t\t\t\t<span className=\"rpc_json_tree_key\">\"{keyName}\"</span>\n\t\t\t\t\t<span className=\"rpc_json_tree_colon\">:</span>\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t<span className=\"rpc_json_tree_bracket\">{openBracket}</span>\n\n\t\t\t{collapsed ? (\n\t\t\t\t<>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName=\"rpc_json_tree_count\"\n\t\t\t\t\t\tstyle={{ cursor: 'pointer' }}\n\t\t\t\t\t\tonClick={() => setCollapsed(false)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{keys.length} items...\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"rpc_json_tree_bracket\">{closeBracket}</span>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"rpc_json_tree_node\">\n\t\t\t\t\t\t{keys.map((k) => (\n\t\t\t\t\t\t\t<TreeNode\n\t\t\t\t\t\t\t\tkey={k}\n\t\t\t\t\t\t\t\tkeyName={isArray ? undefined : k}\n\t\t\t\t\t\t\t\tvalue={value[k]}\n\t\t\t\t\t\t\t\tdepth={depth + 1}\n\t\t\t\t\t\t\t\tmaxDepth={maxDepth}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t\t<span className=\"rpc_json_tree_bracket\">{closeBracket}</span>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nconst JsonTree: React.FC<JsonTreeProps> = ({\n\tdata,\n\tdefaultExpandedLevel = 2,\n\tclassName = '',\n\tstyle,\n}) => {\n\treturn (\n\t\t<div className={`rpc_json_tree ${className}`} style={style}>\n\t\t\t<TreeNode value={data} depth={0} maxDepth={defaultExpandedLevel} />\n\t\t</div>\n\t);\n};\n\nexport default JsonTree;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../ImageCropper/index.tsx"],"names":["forwardRef","useRef","useState","useEffect","useCallback","cropBox","useImperativeHandle","jsxs","jsx","ZoomInOutlined","ZoomOutOutlined","RotateRightOutlined","ReactDOM","CloseOutlined","CheckOutlined"],"mappings":";;;;;;;;;;;AAiEA,IAAM,YAAA,GAAeA,gBAAA;AAAA,EACpB,CACC;AAAA,IACC,GAAA;AAAA,IACA,WAAA,GAAc,CAAA;AAAA,IACd,KAAA,GAAQ,MAAA;AAAA,IACR,KAAA,GAAQ,KAAA;AAAA,IACR,KAAA,GAAQ,0BAAA;AAAA,IACR,IAAA,GAAO,IAAA;AAAA,IACP,IAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA,GAAS,GAAA;AAAA,IACT,SAAA,GAAY,EAAA;AAAA,IACZ;AAAA,KAED,GAAA,KACI;AACJ,IAAA,MAAM,SAAA,GAAYC,aAA0B,IAAI,CAAA;AAChD,IAAA,MAAM,YAAA,GAAeA,aAAuB,IAAI,CAAA;AAChD,IAAA,MAAM,MAAA,GAASA,aAAgC,IAAI,CAAA;AAGnD,IAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAIC,eAAiB,CAAC,CAAA;AAC5C,IAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAIA,eAAiB,CAAC,CAAA;AACpD,IAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAIA,cAAA,CAAmC,EAAE,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,CAAA;AAC7E,IAAA,MAAM,aAAA,GAAgBD,aAAgB,KAAK,CAAA;AAC3C,IAAA,MAAM,eAAeA,YAAA,CAAiC,EAAE,GAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAA;AAGpE,IAAAE,eAAA,CAAU,MAAM;AACf,MAAA,IAAI,CAAC,GAAA,EAAK;AACV,MAAA,MAAM,GAAA,GAAM,IAAI,KAAA,EAAM;AACtB,MAAA,GAAA,CAAI,WAAA,GAAc,WAAA;AAClB,MAAA,GAAA,CAAI,GAAA,GAAM,GAAA;AACV,MAAA,GAAA,CAAI,SAAS,MAAM;AAClB,QAAA,MAAA,CAAO,OAAA,GAAU,GAAA;AAEjB,QAAA,QAAA,CAAS,CAAC,CAAA;AACV,QAAA,YAAA,CAAa,CAAC,CAAA;AACd,QAAA,SAAA,CAAU,EAAE,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAA;AACxB,QAAA,YAAA,CAAa,GAAG,CAAA,EAAG,EAAE,GAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAA;AAAA,MAClC,CAAA;AAAA,IACD,CAAA,EAAG,CAAC,GAAG,CAAC,CAAA;AAGR,IAAA,MAAM,YAAA,GAAeC,iBAAA;AAAA,MACpB,CAAC,QAAA,EAAkB,MAAA,EAAgB,SAAA,KAAwC;AAC1E,QAAA,MAAM,SAAS,SAAA,CAAU,OAAA;AACzB,QAAA,MAAM,MAAM,MAAA,CAAO,OAAA;AACnB,QAAA,IAAI,CAAC,MAAA,IAAU,CAAC,GAAA,EAAK;AAErB,QAAA,MAAM,GAAA,GAAM,MAAA,CAAO,UAAA,CAAW,IAAI,CAAA;AAClC,QAAA,IAAI,CAAC,GAAA,EAAK;AAEV,QAAA,MAAM,GAAA,GAAM,OAAO,gBAAA,IAAoB,CAAA;AACvC,QAAA,MAAM,KAAA,GAAQ,OAAO,WAAA,IAAe,GAAA;AACpC,QAAA,MAAM,YAAA,GAAe,OAAO,YAAA,IAAgB,MAAA;AAE5C,QAAA,MAAA,CAAO,QAAQ,KAAA,GAAQ,GAAA;AACvB,QAAA,MAAA,CAAO,SAAS,YAAA,GAAe,GAAA;AAC/B,QAAA,GAAA,CAAI,KAAA,CAAM,KAAK,GAAG,CAAA;AAElB,QAAA,GAAA,CAAI,SAAA,CAAU,CAAA,EAAG,CAAA,EAAG,KAAA,EAAO,YAAY,CAAA;AACvC,QAAA,GAAA,CAAI,IAAA,EAAK;AAGT,QAAA,MAAM,OAAA,GAAU,KAAA,GAAQ,CAAA,GAAI,SAAA,CAAU,CAAA;AACtC,QAAA,MAAM,OAAA,GAAU,YAAA,GAAe,CAAA,GAAI,SAAA,CAAU,CAAA;AAE7C,QAAA,GAAA,CAAI,SAAA,CAAU,SAAS,OAAO,CAAA;AAC9B,QAAA,GAAA,CAAI,MAAA,CAAQ,MAAA,GAAS,IAAA,CAAK,EAAA,GAAM,GAAG,CAAA;AACnC,QAAA,GAAA,CAAI,KAAA,CAAM,UAAU,QAAQ,CAAA;AAG5B,QAAA,MAAM,QAAA,GAAW,GAAA,CAAI,YAAA,IAAgB,GAAA,CAAI,KAAA;AACzC,QAAA,MAAM,SAAA,GAAY,GAAA,CAAI,aAAA,IAAiB,GAAA,CAAI,MAAA;AAG3C,QAAA,MAAM,SAAA,GAAY,KAAK,GAAA,CAAK,KAAA,GAAQ,MAAO,QAAA,EAAW,YAAA,GAAe,GAAA,GAAO,SAAA,EAAW,CAAC,CAAA;AACxF,QAAA,MAAM,UAAU,QAAA,GAAW,SAAA;AAC3B,QAAA,MAAM,UAAU,SAAA,GAAY,SAAA;AAE5B,QAAA,GAAA,CAAI,SAAA,CAAU,KAAK,CAAC,OAAA,GAAU,GAAG,CAAC,OAAA,GAAU,CAAA,EAAG,OAAA,EAAS,OAAO,CAAA;AAC/D,QAAA,GAAA,CAAI,OAAA,EAAQ;AAAA,MACb,CAAA;AAAA,MACA,CAAC,MAAM;AAAA,KACR;AAEA,IAAAD,eAAA,CAAU,MAAM;AACf,MAAA,YAAA,CAAa,KAAA,EAAO,WAAW,MAAM,CAAA;AAAA,IACtC,GAAG,CAAC,KAAA,EAAO,SAAA,EAAW,MAAA,EAAQ,YAAY,CAAC,CAAA;AAG3C,IAAA,MAAM,eAAA,GAAkB,CAAC,CAAA,KAAwB;AAChD,MAAA,aAAA,CAAc,OAAA,GAAU,IAAA;AACxB,MAAA,YAAA,CAAa,OAAA,GAAU,EAAE,CAAA,EAAG,CAAA,CAAE,OAAA,GAAU,MAAA,CAAO,CAAA,EAAG,CAAA,EAAG,CAAA,CAAE,OAAA,GAAU,MAAA,CAAO,CAAA,EAAE;AAAA,IAC3E,CAAA;AAEA,IAAA,MAAM,eAAA,GAAkB,CAAC,CAAA,KAAwB;AAChD,MAAA,IAAI,CAAC,cAAc,OAAA,EAAS;AAC5B,MAAA,MAAM,UAAA,GAAa;AAAA,QAClB,CAAA,EAAG,CAAA,CAAE,OAAA,GAAU,YAAA,CAAa,OAAA,CAAQ,CAAA;AAAA,QACpC,CAAA,EAAG,CAAA,CAAE,OAAA,GAAU,YAAA,CAAa,OAAA,CAAQ;AAAA,OACrC;AACA,MAAA,SAAA,CAAU,UAAU,CAAA;AAAA,IACrB,CAAA;AAEA,IAAA,MAAM,gBAAgB,MAAM;AAC3B,MAAA,aAAA,CAAc,OAAA,GAAU,KAAA;AAAA,IACzB,CAAA;AAGA,IAAA,MAAM,WAAA,GAAc,CAAC,CAAA,KAAwB;AAC5C,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,MAAM,QAAA,GAAW,CAAA,CAAE,MAAA,GAAS,CAAA,GAAI,GAAA,GAAM,IAAA;AACtC,MAAA,QAAA,CAAS,CAAC,IAAA,KAAS,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,GAAA,EAAK,IAAA,GAAO,QAAQ,CAAA,EAAG,CAAC,CAAC,CAAA;AAAA,IAC/D,CAAA;AAGA,IAAA,MAAM,YAAA,GAAe,CAAC,GAAA,GAAM,EAAA,KAAO;AAClC,MAAA,YAAA,CAAa,CAAC,IAAA,KAAA,CAAU,IAAA,GAAO,GAAA,IAAO,GAAG,CAAA;AAAA,IAC1C,CAAA;AAEA,IAAA,MAAM,UAAA,GAAa,CAAC,KAAA,KAAkB;AACrC,MAAA,QAAA,CAAS,CAAC,IAAA,KAAS,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,GAAA,EAAK,IAAA,GAAO,KAAK,CAAA,EAAG,CAAC,CAAC,CAAA;AAAA,IAC5D,CAAA;AAEA,IAAA,MAAM,cAAc,MAAM;AACzB,MAAA,QAAA,CAAS,CAAC,CAAA;AACV,MAAA,YAAA,CAAa,CAAC,CAAA;AACd,MAAA,SAAA,CAAU,EAAE,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAA;AAAA,IACzB,CAAA;AAGA,IAAA,MAAM,iBAAiB,MAAM;AAC5B,MAAA,MAAM,YAAY,YAAA,CAAa,OAAA;AAC/B,MAAA,MAAM,UAAA,GAAA,CAAa,uCAAW,WAAA,KAAe,GAAA;AAC7C,MAAA,MAAM,UAAA,GAAa,MAAA;AAEnB,MAAA,IAAI,IAAA,GAAO,IAAA,CAAK,GAAA,CAAI,UAAA,GAAa,KAAK,GAAG,CAAA;AACzC,MAAA,IAAI,IAAA,GAAO,WAAA,GAAc,IAAA,GAAO,WAAA,GAAc,IAAA;AAE9C,MAAA,IAAI,IAAA,GAAO,aAAa,GAAA,EAAK;AAC5B,QAAA,IAAA,GAAO,UAAA,GAAa,GAAA;AACpB,QAAA,IAAA,GAAO,WAAA,GAAc,OAAO,WAAA,GAAc,IAAA;AAAA,MAC3C;AAEA,MAAA,MAAM,OAAA,GAAA,CAAW,aAAa,IAAA,IAAQ,CAAA;AACtC,MAAA,MAAM,MAAA,GAAA,CAAU,aAAa,IAAA,IAAQ,CAAA;AAErC,MAAA,OAAO,EAAE,MAAM,OAAA,EAAS,GAAA,EAAK,QAAQ,KAAA,EAAO,IAAA,EAAM,QAAQ,IAAA,EAAK;AAAA,IAChE,CAAA;AAGA,IAAA,MAAM,gBAAA,GAAmBC,iBAAA;AAAA,MACxB,OAAO,IAAA,GAAO,WAAA,EAAa,OAAA,GAAU,IAAA,KAA8B;AAClE,QAAA,MAAM,SAAS,SAAA,CAAU,OAAA;AACzB,QAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,kBAAkB,CAAA;AAE/C,QAAA,MAAMC,WAAU,cAAA,EAAe;AAC/B,QAAA,MAAM,GAAA,GAAM,OAAO,gBAAA,IAAoB,CAAA;AAEvC,QAAA,MAAM,UAAA,GAAa,QAAA,CAAS,aAAA,CAAc,QAAQ,CAAA;AAClD,QAAA,UAAA,CAAW,KAAA,GAAQA,SAAQ,KAAA,GAAQ,GAAA;AACnC,QAAA,UAAA,CAAW,MAAA,GAASA,SAAQ,MAAA,GAAS,GAAA;AACrC,QAAA,MAAM,OAAA,GAAU,UAAA,CAAW,UAAA,CAAW,IAAI,CAAA;AAE1C,QAAA,IAAI,CAAC,OAAA,EAAS,MAAM,IAAI,MAAM,iCAAiC,CAAA;AAE/D,QAAA,IAAI,UAAU,OAAA,EAAS;AACtB,UAAA,OAAA,CAAQ,SAAA,EAAU;AAClB,UAAA,OAAA,CAAQ,GAAA;AAAA,YACNA,QAAAA,CAAQ,QAAQ,GAAA,GAAO,CAAA;AAAA,YACvBA,QAAAA,CAAQ,SAAS,GAAA,GAAO,CAAA;AAAA,YACxBA,QAAAA,CAAQ,QAAQ,GAAA,GAAO,CAAA;AAAA,YACxB,CAAA;AAAA,YACA,KAAK,EAAA,GAAK;AAAA,WACX;AACA,UAAA,OAAA,CAAQ,SAAA,EAAU;AAClB,UAAA,OAAA,CAAQ,IAAA,EAAK;AAAA,QACd;AAEA,QAAA,OAAA,CAAQ,SAAA;AAAA,UACP,MAAA;AAAA,UACAA,SAAQ,IAAA,GAAO,GAAA;AAAA,UACfA,SAAQ,GAAA,GAAM,GAAA;AAAA,UACdA,SAAQ,KAAA,GAAQ,GAAA;AAAA,UAChBA,SAAQ,MAAA,GAAS,GAAA;AAAA,UACjB,CAAA;AAAA,UACA,CAAA;AAAA,UACAA,SAAQ,KAAA,GAAQ,GAAA;AAAA,UAChBA,SAAQ,MAAA,GAAS;AAAA,SAClB;AAEA,QAAA,MAAM,OAAA,GAAU,UAAA,CAAW,SAAA,CAAU,IAAA,EAAM,OAAO,CAAA;AAClD,QAAA,MAAM,IAAA,GAAoB,MAAM,IAAI,OAAA,CAAQ,CAAC,OAAA,KAAY;AACxD,UAAA,UAAA,CAAW,OAAO,CAAC,CAAA,KAAM,QAAQ,CAAC,CAAA,EAAG,MAAM,OAAO,CAAA;AAAA,QACnD,CAAC,CAAA;AAED,QAAA,OAAO;AAAA,UACN,OAAA;AAAA,UACA,IAAA;AAAA,UACA,KAAA,EAAO,IAAA,CAAK,KAAA,CAAMA,QAAAA,CAAQ,KAAK,CAAA;AAAA,UAC/B,MAAA,EAAQ,IAAA,CAAK,KAAA,CAAMA,QAAAA,CAAQ,MAAM;AAAA,SAClC;AAAA,MACD,CAAA;AAAA,MACA,CAAC,KAAA,EAAO,WAAA,EAAa,MAAM;AAAA,KAC5B;AAEA,IAAAC,yBAAA;AAAA,MACC,GAAA;AAAA,MACA,OAAO;AAAA,QACN,gBAAA;AAAA,QACA,MAAA,EAAQ,YAAA;AAAA,QACR,IAAA,EAAM,UAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACR,CAAA;AAAA,MACA,CAAC,gBAAgB;AAAA,KAClB;AAEA,IAAA,MAAM,gBAAgB,YAAY;AACjC,MAAA,MAAM,GAAA,GAAM,MAAM,gBAAA,EAAiB;AACnC,MAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAO,GAAA,CAAA;AAAA,IACR,CAAA;AAEA,IAAA,MAAM,UAAU,cAAA,EAAe;AAE/B,IAAA,MAAM,WAAA,mBACLC,eAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACA,SAAA,EAAW,qBAAqB,SAAS,CAAA,CAAA;AAAA,QACzC,KAAA,EAAO,EAAE,GAAG,KAAA,EAAM;AAAA,QAElB,QAAA,EAAA;AAAA,0BAAAA,eAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACA,GAAA,EAAK,YAAA;AAAA,cACL,SAAA,EAAU,+BAAA;AAAA,cACV,KAAA,EAAO,EAAE,MAAA,EAAO;AAAA,cAChB,WAAA,EAAa,eAAA;AAAA,cACb,WAAA,EAAa,eAAA;AAAA,cACb,SAAA,EAAW,aAAA;AAAA,cACX,YAAA,EAAc,aAAA;AAAA,cACd,OAAA,EAAS,WAAA;AAAA,cAET,QAAA,EAAA;AAAA,gCAAAC,cAAA;AAAA,kBAAC,QAAA;AAAA,kBAAA;AAAA,oBACA,GAAA,EAAK,SAAA;AAAA,oBACL,SAAA,EAAU,0BAAA;AAAA,oBACV,KAAA,EAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,MAAA;AAAO;AAAA,iBAChC;AAAA,gCAGAA,cAAA;AAAA,kBAAC,KAAA;AAAA,kBAAA;AAAA,oBACA,SAAA,EAAW,CAAA,2BAAA,EACV,KAAA,KAAU,OAAA,GAAU,qCAAqC,EAC1D,CAAA,CAAA;AAAA,oBACA,KAAA,EAAO;AAAA,sBACN,IAAA,EAAM,CAAA,EAAG,OAAA,CAAQ,IAAI,CAAA,EAAA,CAAA;AAAA,sBACrB,GAAA,EAAK,CAAA,EAAG,OAAA,CAAQ,GAAG,CAAA,EAAA,CAAA;AAAA,sBACnB,KAAA,EAAO,CAAA,EAAG,OAAA,CAAQ,KAAK,CAAA,EAAA,CAAA;AAAA,sBACvB,MAAA,EAAQ,CAAA,EAAG,OAAA,CAAQ,MAAM,CAAA,EAAA;AAAA,qBAC1B;AAAA,oBAEC,QAAA,EAAA,KAAA,KAAU,MAAA,oBAAUA,cAAA,CAAC,KAAA,EAAA,EAAI,WAAU,iCAAA,EAAkC;AAAA;AAAA;AACvE;AAAA;AAAA,WACD;AAAA,0BAGAD,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,2BAAA,EACd,QAAA,EAAA;AAAA,4BAAAA,eAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,uBAAA;AAAA,gBACV,OAAA,EAAS,MAAM,UAAA,CAAW,GAAG,CAAA;AAAA,gBAC7B,KAAA,EAAM,cAAA;AAAA,gBAEN,QAAA,EAAA;AAAA,kCAAAC,cAAA,CAACC,gCAAA,EAAA,EAAe,CAAA;AAAA,kBAAE;AAAA;AAAA;AAAA,aACnB;AAAA,4BACAF,eAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,uBAAA;AAAA,gBACV,OAAA,EAAS,MAAM,UAAA,CAAW,IAAI,CAAA;AAAA,gBAC9B,KAAA,EAAM,cAAA;AAAA,gBAEN,QAAA,EAAA;AAAA,kCAAAC,cAAA,CAACE,iCAAA,EAAA,EAAgB,CAAA;AAAA,kBAAE;AAAA;AAAA;AAAA,aACpB;AAAA,4BACAH,eAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,uBAAA;AAAA,gBACV,OAAA,EAAS,MAAM,YAAA,CAAa,EAAE,CAAA;AAAA,gBAC9B,KAAA,EAAM,sCAAA;AAAA,gBAEN,QAAA,EAAA;AAAA,kCAAAC,cAAA,CAACG,qCAAA,EAAA,EAAoB,CAAA;AAAA,kBAAE;AAAA;AAAA;AAAA,aACxB;AAAA,4BACAH,cAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,uBAAA;AAAA,gBACV,OAAA,EAAS,WAAA;AAAA,gBACT,KAAA,EAAM,cAAA;AAAA,gBACN,QAAA,EAAA;AAAA;AAAA;AAED,WAAA,EACD;AAAA;AAAA;AAAA,KACD;AAGD,IAAA,IAAI,KAAA,EAAO;AACV,MAAA,IAAI,CAAC,MAAM,OAAO,IAAA;AAClB,MAAA,OAAOI,yBAAA,CAAS,YAAA;AAAA,wBACfJ,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mBAAA,EAAoB,SAAS,QAAA,EAC3C,QAAA,kBAAAD,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,0BAAyB,OAAA,EAAS,CAAC,CAAA,KAAM,CAAA,CAAE,iBAAgB,EACzE,QAAA,EAAA;AAAA,0BAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,0BAAA,EACd,QAAA,EAAA;AAAA,4BAAAC,cAAA,CAAC,UAAM,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,4BACbA,cAAA,CAACK,+BAAA,EAAA,EAAc,SAAA,EAAU,yBAAA,EAA0B,SAAS,QAAA,EAAU;AAAA,WAAA,EACvE,CAAA;AAAA,0BACAL,cAAA,CAAC,SAAI,KAAA,EAAO,EAAE,SAAS,EAAA,EAAI,UAAA,EAAY,SAAA,EAAU,EAAI,QAAA,EAAA,WAAA,EAAY,CAAA;AAAA,0BACjED,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,0BAAA,EACd,QAAA,EAAA;AAAA,4BAAAC,cAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,uBAAA;AAAA,gBACV,OAAO,EAAE,UAAA,EAAY,WAAW,KAAA,EAAO,SAAA,EAAW,aAAa,SAAA,EAAU;AAAA,gBACzE,OAAA,EAAS,QAAA;AAAA,gBACT,QAAA,EAAA;AAAA;AAAA,aAED;AAAA,4BACAD,eAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACA,IAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,qDAAA;AAAA,gBACV,OAAA,EAAS,aAAA;AAAA,gBAET,QAAA,EAAA;AAAA,kCAAAC,cAAA,CAACM,+BAAA,EAAA,EAAc,CAAA;AAAA,kBAAE;AAAA;AAAA;AAAA;AAClB,WAAA,EACD;AAAA,SAAA,EACD,CAAA,EACD,CAAA;AAAA,QACA,QAAA,CAAS;AAAA,OACV;AAAA,IACD;AAEA,IAAA,OAAO,WAAA;AAAA,EACR;AACD,CAAA;AAEA,YAAA,CAAa,WAAA,GAAc,cAAA;AAE3B,IAAO,oBAAA,GAAQ","file":"chunk-R77VVMV5.cjs","sourcesContent":["import React, {\n\tuseState,\n\tuseRef,\n\tuseEffect,\n\tuseCallback,\n\tuseImperativeHandle,\n\tforwardRef,\n\tReactNode,\n\tCSSProperties,\n} from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n\tRotateRightOutlined,\n\tZoomInOutlined,\n\tZoomOutOutlined,\n\tCloseOutlined,\n\tCheckOutlined,\n} from '../src/icons';\nimport './index.less';\n\nexport type CropShape = 'rect' | 'round';\n\nexport interface CropResult {\n\tdataURL: string;\n\tblob: Blob | null;\n\twidth: number;\n\theight: number;\n}\n\nexport interface ImageCropperRef {\n\t/** 获取当前裁剪结果(DataURL 与 Blob) */\n\tgetCroppedResult: (type?: string, quality?: number) => Promise<CropResult>;\n\t/** 顺时针旋转 90 度 */\n\trotate: (degree?: number) => void;\n\t/** 缩放图片 */\n\tzoom: (delta: number) => void;\n\t/** 重置所有变换参数 */\n\treset: () => void;\n}\n\nexport interface ImageCropperProps {\n\t/** 图片源地址或 Base64 字符串 */\n\tsrc: string;\n\t/** 裁剪框宽高比(如 1 代表 1:1 正方形,16/9 代表宽屏,0 代表自由矩形),默认为 1 */\n\taspectRatio?: number;\n\t/** 裁剪框形状:'rect' 矩形,'round' 圆形(适合头像),默认为 'rect' */\n\tshape?: CropShape;\n\t/** 是否以 Modal 模态弹窗形式展示,默认为 false */\n\tmodal?: boolean;\n\t/** Modal 模式下的标题,默认为 '图片裁剪' */\n\ttitle?: ReactNode;\n\t/** Modal 模式下的显隐受控状态 */\n\topen?: boolean;\n\t/** 确认裁剪回调 */\n\tonOk?: (result: CropResult) => void;\n\t/** 取消/关闭回调 */\n\tonCancel?: () => void;\n\t/** 容器高度(内联模式有效),默认为 360 */\n\theight?: number;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nconst ImageCropper = forwardRef<ImageCropperRef, ImageCropperProps>(\n\t(\n\t\t{\n\t\t\tsrc,\n\t\t\taspectRatio = 1,\n\t\t\tshape = 'rect',\n\t\t\tmodal = false,\n\t\t\ttitle = '图片裁剪',\n\t\t\topen = true,\n\t\t\tonOk,\n\t\t\tonCancel,\n\t\t\theight = 360,\n\t\t\tclassName = '',\n\t\t\tstyle,\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst canvasRef = useRef<HTMLCanvasElement>(null);\n\t\tconst containerRef = useRef<HTMLDivElement>(null);\n\t\tconst imgRef = useRef<HTMLImageElement | null>(null);\n\n\t\t// 图片变换参数\n\t\tconst [scale, setScale] = useState<number>(1);\n\t\tconst [rotateDeg, setRotateDeg] = useState<number>(0);\n\t\tconst [offset, setOffset] = useState<{ x: number; y: number }>({ x: 0, y: 0 });\n\t\tconst isDraggingRef = useRef<boolean>(false);\n\t\tconst dragStartRef = useRef<{ x: number; y: number }>({ x: 0, y: 0 });\n\n\t\t// 加载图片\n\t\tuseEffect(() => {\n\t\t\tif (!src) return;\n\t\t\tconst img = new Image();\n\t\t\timg.crossOrigin = 'anonymous';\n\t\t\timg.src = src;\n\t\t\timg.onload = () => {\n\t\t\t\timgRef.current = img;\n\t\t\t\t// 初始计算合适缩放比例\n\t\t\t\tsetScale(1);\n\t\t\t\tsetRotateDeg(0);\n\t\t\t\tsetOffset({ x: 0, y: 0 });\n\t\t\t\trenderCanvas(1, 0, { x: 0, y: 0 });\n\t\t\t};\n\t\t}, [src]);\n\n\t\t// 重新渲染 Canvas\n\t\tconst renderCanvas = useCallback(\n\t\t\t(curScale: number, curDeg: number, curOffset: { x: number; y: number }) => {\n\t\t\t\tconst canvas = canvasRef.current;\n\t\t\t\tconst img = imgRef.current;\n\t\t\t\tif (!canvas || !img) return;\n\n\t\t\t\tconst ctx = canvas.getContext('2d');\n\t\t\t\tif (!ctx) return;\n\n\t\t\t\tconst dpr = window.devicePixelRatio || 1;\n\t\t\t\tconst width = canvas.clientWidth || 400;\n\t\t\t\tconst canvasHeight = canvas.clientHeight || height;\n\n\t\t\t\tcanvas.width = width * dpr;\n\t\t\t\tcanvas.height = canvasHeight * dpr;\n\t\t\t\tctx.scale(dpr, dpr);\n\n\t\t\t\tctx.clearRect(0, 0, width, canvasHeight);\n\t\t\t\tctx.save();\n\n\t\t\t\t// 移动到中心点进行旋转、缩放与平移\n\t\t\t\tconst centerX = width / 2 + curOffset.x;\n\t\t\t\tconst centerY = canvasHeight / 2 + curOffset.y;\n\n\t\t\t\tctx.translate(centerX, centerY);\n\t\t\t\tctx.rotate((curDeg * Math.PI) / 180);\n\t\t\t\tctx.scale(curScale, curScale);\n\n\t\t\t\t// 居中绘制原始图像\n\t\t\t\tconst imgWidth = img.naturalWidth || img.width;\n\t\t\t\tconst imgHeight = img.naturalHeight || img.height;\n\n\t\t\t\t// 保持图像按比例自适应居中\n\t\t\t\tconst baseRatio = Math.min((width * 0.8) / imgWidth, (canvasHeight * 0.8) / imgHeight, 1);\n\t\t\t\tconst renderW = imgWidth * baseRatio;\n\t\t\t\tconst renderH = imgHeight * baseRatio;\n\n\t\t\t\tctx.drawImage(img, -renderW / 2, -renderH / 2, renderW, renderH);\n\t\t\t\tctx.restore();\n\t\t\t},\n\t\t\t[height],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\trenderCanvas(scale, rotateDeg, offset);\n\t\t}, [scale, rotateDeg, offset, renderCanvas]);\n\n\t\t// 鼠标拖拽平移\n\t\tconst handleMouseDown = (e: React.MouseEvent) => {\n\t\t\tisDraggingRef.current = true;\n\t\t\tdragStartRef.current = { x: e.clientX - offset.x, y: e.clientY - offset.y };\n\t\t};\n\n\t\tconst handleMouseMove = (e: React.MouseEvent) => {\n\t\t\tif (!isDraggingRef.current) return;\n\t\t\tconst nextOffset = {\n\t\t\t\tx: e.clientX - dragStartRef.current.x,\n\t\t\t\ty: e.clientY - dragStartRef.current.y,\n\t\t\t};\n\t\t\tsetOffset(nextOffset);\n\t\t};\n\n\t\tconst handleMouseUp = () => {\n\t\t\tisDraggingRef.current = false;\n\t\t};\n\n\t\t// 滚轮缩放\n\t\tconst handleWheel = (e: React.WheelEvent) => {\n\t\t\te.preventDefault();\n\t\t\tconst zoomStep = e.deltaY < 0 ? 0.1 : -0.1;\n\t\t\tsetScale((prev) => Math.min(Math.max(0.2, prev + zoomStep), 5));\n\t\t};\n\n\t\t// 顺时针旋转\n\t\tconst handleRotate = (deg = 90) => {\n\t\t\tsetRotateDeg((prev) => (prev + deg) % 360);\n\t\t};\n\n\t\tconst handleZoom = (delta: number) => {\n\t\t\tsetScale((prev) => Math.min(Math.max(0.2, prev + delta), 5));\n\t\t};\n\n\t\tconst handleReset = () => {\n\t\t\tsetScale(1);\n\t\t\tsetRotateDeg(0);\n\t\t\tsetOffset({ x: 0, y: 0 });\n\t\t};\n\n\t\t// 计算裁剪框尺寸与位置\n\t\tconst getCropBoxRect = () => {\n\t\t\tconst container = containerRef.current;\n\t\t\tconst containerW = container?.clientWidth || 400;\n\t\t\tconst containerH = height;\n\n\t\t\tlet boxW = Math.min(containerW * 0.7, 240);\n\t\t\tlet boxH = aspectRatio ? boxW / aspectRatio : boxW;\n\n\t\t\tif (boxH > containerH * 0.8) {\n\t\t\t\tboxH = containerH * 0.8;\n\t\t\t\tboxW = aspectRatio ? boxH * aspectRatio : boxH;\n\t\t\t}\n\n\t\t\tconst boxLeft = (containerW - boxW) / 2;\n\t\t\tconst boxTop = (containerH - boxH) / 2;\n\n\t\t\treturn { left: boxLeft, top: boxTop, width: boxW, height: boxH };\n\t\t};\n\n\t\t// 提取裁剪区域生成图片\n\t\tconst getCroppedResult = useCallback(\n\t\t\tasync (type = 'image/png', quality = 0.92): Promise<CropResult> => {\n\t\t\t\tconst canvas = canvasRef.current;\n\t\t\t\tif (!canvas) throw new Error('Canvas not found');\n\n\t\t\t\tconst cropBox = getCropBoxRect();\n\t\t\t\tconst dpr = window.devicePixelRatio || 1;\n\n\t\t\t\tconst cropCanvas = document.createElement('canvas');\n\t\t\t\tcropCanvas.width = cropBox.width * dpr;\n\t\t\t\tcropCanvas.height = cropBox.height * dpr;\n\t\t\t\tconst cropCtx = cropCanvas.getContext('2d');\n\n\t\t\t\tif (!cropCtx) throw new Error('Failed to create canvas context');\n\n\t\t\t\tif (shape === 'round') {\n\t\t\t\t\tcropCtx.beginPath();\n\t\t\t\t\tcropCtx.arc(\n\t\t\t\t\t\t(cropBox.width * dpr) / 2,\n\t\t\t\t\t\t(cropBox.height * dpr) / 2,\n\t\t\t\t\t\t(cropBox.width * dpr) / 2,\n\t\t\t\t\t\t0,\n\t\t\t\t\t\tMath.PI * 2,\n\t\t\t\t\t);\n\t\t\t\t\tcropCtx.closePath();\n\t\t\t\t\tcropCtx.clip();\n\t\t\t\t}\n\n\t\t\t\tcropCtx.drawImage(\n\t\t\t\t\tcanvas,\n\t\t\t\t\tcropBox.left * dpr,\n\t\t\t\t\tcropBox.top * dpr,\n\t\t\t\t\tcropBox.width * dpr,\n\t\t\t\t\tcropBox.height * dpr,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tcropBox.width * dpr,\n\t\t\t\t\tcropBox.height * dpr,\n\t\t\t\t);\n\n\t\t\t\tconst dataURL = cropCanvas.toDataURL(type, quality);\n\t\t\t\tconst blob: Blob | null = await new Promise((resolve) => {\n\t\t\t\t\tcropCanvas.toBlob((b) => resolve(b), type, quality);\n\t\t\t\t});\n\n\t\t\t\treturn {\n\t\t\t\t\tdataURL,\n\t\t\t\t\tblob,\n\t\t\t\t\twidth: Math.round(cropBox.width),\n\t\t\t\t\theight: Math.round(cropBox.height),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[shape, aspectRatio, height],\n\t\t);\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => ({\n\t\t\t\tgetCroppedResult,\n\t\t\t\trotate: handleRotate,\n\t\t\t\tzoom: handleZoom,\n\t\t\t\treset: handleReset,\n\t\t\t}),\n\t\t\t[getCroppedResult],\n\t\t);\n\n\t\tconst handleConfirm = async () => {\n\t\t\tconst res = await getCroppedResult();\n\t\t\tonOk?.(res);\n\t\t};\n\n\t\tconst cropBox = getCropBoxRect();\n\n\t\tconst coreContent = (\n\t\t\t<div\n\t\t\t\tclassName={`rpc_image_cropper ${className}`}\n\t\t\t\tstyle={{ ...style }}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tref={containerRef}\n\t\t\t\t\tclassName=\"rpc_image_cropper_canvas_wrap\"\n\t\t\t\t\tstyle={{ height }}\n\t\t\t\t\tonMouseDown={handleMouseDown}\n\t\t\t\t\tonMouseMove={handleMouseMove}\n\t\t\t\t\tonMouseUp={handleMouseUp}\n\t\t\t\t\tonMouseLeave={handleMouseUp}\n\t\t\t\t\tonWheel={handleWheel}\n\t\t\t\t>\n\t\t\t\t\t<canvas\n\t\t\t\t\t\tref={canvasRef}\n\t\t\t\t\t\tclassName=\"rpc_image_cropper_canvas\"\n\t\t\t\t\t\tstyle={{ width: '100%', height }}\n\t\t\t\t\t/>\n\n\t\t\t\t\t{/* 裁剪框与遮罩 */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={`rpc_image_cropper_crop_box ${\n\t\t\t\t\t\t\tshape === 'round' ? 'rpc_image_cropper_crop_box_round' : ''\n\t\t\t\t\t\t}`}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tleft: `${cropBox.left}px`,\n\t\t\t\t\t\t\ttop: `${cropBox.top}px`,\n\t\t\t\t\t\t\twidth: `${cropBox.width}px`,\n\t\t\t\t\t\t\theight: `${cropBox.height}px`,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{shape === 'rect' && <div className=\"rpc_image_cropper_crop_box_grid\" />}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t{/* 底部工具栏 */}\n\t\t\t\t<div className=\"rpc_image_cropper_toolbar\">\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn\"\n\t\t\t\t\t\tonClick={() => handleZoom(0.1)}\n\t\t\t\t\t\ttitle=\"放大\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ZoomInOutlined /> 放大\n\t\t\t\t\t</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn\"\n\t\t\t\t\t\tonClick={() => handleZoom(-0.1)}\n\t\t\t\t\t\ttitle=\"缩小\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ZoomOutOutlined /> 缩小\n\t\t\t\t\t</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn\"\n\t\t\t\t\t\tonClick={() => handleRotate(90)}\n\t\t\t\t\t\ttitle=\"顺时针旋转90°\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<RotateRightOutlined /> 旋转\n\t\t\t\t\t</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn\"\n\t\t\t\t\t\tonClick={handleReset}\n\t\t\t\t\t\ttitle=\"重置\"\n\t\t\t\t\t>\n\t\t\t\t\t\t重置\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\n\t\tif (modal) {\n\t\t\tif (!open) return null;\n\t\t\treturn ReactDOM.createPortal(\n\t\t\t\t<div className=\"rpc_cropper_modal\" onClick={onCancel}>\n\t\t\t\t\t<div className=\"rpc_cropper_modal_card\" onClick={(e) => e.stopPropagation()}>\n\t\t\t\t\t\t<div className=\"rpc_cropper_modal_header\">\n\t\t\t\t\t\t\t<span>{title}</span>\n\t\t\t\t\t\t\t<CloseOutlined className=\"rpc_cropper_modal_close\" onClick={onCancel} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div style={{ padding: 16, background: '#141414' }}>{coreContent}</div>\n\t\t\t\t\t\t<div className=\"rpc_cropper_modal_footer\">\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn\"\n\t\t\t\t\t\t\t\tstyle={{ background: '#ffffff', color: '#262626', borderColor: '#d9d9d9' }}\n\t\t\t\t\t\t\t\tonClick={onCancel}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t取消\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tclassName=\"rpc_image_cropper_btn rpc_image_cropper_btn_primary\"\n\t\t\t\t\t\t\t\tonClick={handleConfirm}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<CheckOutlined /> 确定裁剪\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>,\n\t\t\t\tdocument.body,\n\t\t\t);\n\t\t}\n\n\t\treturn coreContent;\n\t},\n);\n\nImageCropper.displayName = 'ImageCropper';\n\nexport default ImageCropper;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../TrendIndicator/index.tsx"],"names":["jsxs","jsx"],"mappings":";;;;;AAsBA,IAAM,iBAAgD,CAAC;AAAA,EACtD,KAAA;AAAA,EACA,MAAA,GAAS,GAAA;AAAA,EACT,MAAA,GAAS,EAAA;AAAA,EACT,SAAA,GAAY,CAAA;AAAA,EACZ,IAAA,GAAO,QAAA;AAAA,EACP,OAAA,GAAU,KAAA;AAAA,EACV,SAAA,GAAY,EAAA;AAAA,EACZ;AACD,CAAA,KAAM;AACL,EAAA,MAAM,MAAA,GAAS,IAAA,CAAK,GAAA,CAAI,KAAK,CAAA,GAAI,IAAA;AACjC,EAAA,MAAM,aAAa,KAAA,GAAQ,CAAA;AAG3B,EAAA,IAAI,WAAA,GAAc,MAAA;AAClB,EAAA,IAAI,CAAC,MAAA,EAAQ;AACZ,IAAA,MAAM,MAAA,GAAS,OAAA,GAAU,CAAC,UAAA,GAAa,UAAA;AACvC,IAAA,WAAA,GAAc,SAAS,IAAA,GAAO,MAAA;AAAA,EAC/B;AAEA,EAAA,MAAM,eAAe,IAAA,CAAK,GAAA,CAAI,KAAK,CAAA,CAAE,QAAQ,SAAS,CAAA;AACtD,EAAA,MAAM,IAAA,GAAO,UAAA,GAAa,GAAA,GAAM,KAAA,GAAQ,IAAI,GAAA,GAAM,EAAA;AAElD,EAAA,uBACCA,eAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACA,WAAW,CAAA,wCAAA,EAA2C,IAAI,CAAA,qBAAA,EAAwB,WAAW,IAAI,SAAS,CAAA,CAAA;AAAA,MAC1G,KAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAAC,cAAA,CAAC,UAAK,SAAA,EAAU,2BAAA,EACd,mBAAS,QAAA,GAAM,UAAA,GAAa,WAAM,QAAA,EACpC,CAAA;AAAA,wCACC,MAAA,EAAA,EACC,QAAA,EAAA;AAAA,UAAA,MAAA;AAAA,UACA,IAAA;AAAA,UACA,YAAA;AAAA,UACA;AAAA,SAAA,EACF;AAAA;AAAA;AAAA,GACD;AAEF,CAAA;AAEA,IAAO,sBAAA,GAAQ","file":"chunk-SMVAHIBN.cjs","sourcesContent":["import React, { CSSProperties } from 'react';\nimport './index.less';\n\nexport interface TrendIndicatorProps {\n\t/** 变动数值(如 14.2 代表 +14.2%,-5.8 代表 -5.8%) */\n\tvalue: number;\n\t/** 数值后缀,默认为 '%' */\n\tsuffix?: string;\n\t/** 数值前缀 */\n\tprefix?: string;\n\t/** 保留小数位数,默认为 1 */\n\tprecision?: number;\n\t/** 展示模式:'filled' 填充色块 | 'outlined' 线框 | 'text' 纯文字,默认为 'filled' */\n\ttype?: 'filled' | 'outlined' | 'text';\n\t/** 是否反转红绿色彩规则(如成本/延时降低为绿色),默认为 false */\n\treverse?: boolean;\n\t/** 自定义类名 */\n\tclassName?: string;\n\t/** 自定义样式 */\n\tstyle?: CSSProperties;\n}\n\nconst TrendIndicator: React.FC<TrendIndicatorProps> = ({\n\tvalue,\n\tsuffix = '%',\n\tprefix = '',\n\tprecision = 1,\n\ttype = 'filled',\n\treverse = false,\n\tclassName = '',\n\tstyle,\n}) => {\n\tconst isZero = Math.abs(value) < 0.0001;\n\tconst isPositive = value > 0;\n\n\t// 判断颜色状态\n\tlet statusClass = 'flat';\n\tif (!isZero) {\n\t\tconst isGood = reverse ? !isPositive : isPositive;\n\t\tstatusClass = isGood ? 'up' : 'down';\n\t}\n\n\tconst formattedVal = Math.abs(value).toFixed(precision);\n\tconst sign = isPositive ? '+' : value < 0 ? '-' : '';\n\n\treturn (\n\t\t<span\n\t\t\tclassName={`rpc_trend_indicator rpc_trend_indicator_${type} rpc_trend_indicator_${statusClass} ${className}`}\n\t\t\tstyle={style}\n\t\t>\n\t\t\t<span className=\"rpc_trend_indicator_arrow\">\n\t\t\t\t{isZero ? '—' : isPositive ? '▲' : '▼'}\n\t\t\t</span>\n\t\t\t<span>\n\t\t\t\t{prefix}\n\t\t\t\t{sign}\n\t\t\t\t{formattedVal}\n\t\t\t\t{suffix}\n\t\t\t</span>\n\t\t</span>\n\t);\n};\n\nexport default TrendIndicator;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/icons.tsx"],"names":[],"mappings":"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","file":"chunk-TGSKTHTV.js","sourcesContent":["import type { CSSProperties } from 'react';\n\ninterface IconProps {\n\tstyle?: CSSProperties;\n\tclassName?: string;\n}\n\nconst baseStyle: CSSProperties = {\n\tdisplay: 'inline-block',\n\twidth: '1em',\n\theight: '1em',\n\tverticalAlign: '-0.125em',\n};\n\nexport const LeftOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"left\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z\" />\n\t</svg>\n);\n\nexport const RightOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"right\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z\" />\n\t</svg>\n);\n\nexport const UpOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"up\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M890.5 755.3L537.4 268a31.96 31.96 0 00-50.8 0L133.5 755.3a7.95 7.95 0 006.3 12.7h75.5c4.9 0 9.6-2.3 12.6-6.1l281-360 281 360c3 3.8 7.7 6.1 12.6 6.1h75.5c6.7 0 10.4-7.6 6.1-12.7z\" />\n\t</svg>\n);\n\nexport const DownOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"down\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 37 17.6 49.8 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\" />\n\t</svg>\n);\n\nexport const LockOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"lock\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M928 224H704v-64c0-88.4-71.6-160-160-160s-160 71.6-160 160v64H160c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h768c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32zM456 160c0-44.2 35.8-80 80-80s80 35.8 80 80v64H456v-64zm408 696H224V296h640v560zM496 448c-30.9 0-56 25.1-56 56 0 24.7 16.1 45.6 38.4 52.7V680c0 9.7 7.8 17.5 17.6 17.5h32c9.7 0 17.6-7.8 17.6-17.5V556.7c22.3-7.1 38.4-28 38.4-52.7 0-30.9-25.1-56-56-56z\" />\n\t</svg>\n);\n\nexport const CloseCircleFilled = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"close-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-66L512 516.8l-99.4 99.4-66-66L446 450.8 346.6 351.4l66-66L512 384.8l99.4-99.4 66 66L578 450.8l99.4 99.4z\" />\n\t</svg>\n);\n\nexport const CopyOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"copy\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v496c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V128c0-35.3-28.7-64-64-64zM704 192H192c-35.3 0-64 28.7-64 64v640c0 35.3 28.7 64 64 64h512c35.3 0 64-28.7 64-64V256c0-35.3-28.7-64-64-64zm-8 648H200c-4.4 0-8-3.6-8-8V264c0-4.4 3.6-8 8-8h496c4.4 0 8 3.6 8 8v568c0 4.4-3.6 8-8 8z\" />\n\t</svg>\n);\n\nexport const CheckOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"check\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\" />\n\t</svg>\n);\n\nexport const LoadingOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"loading\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{\n\t\t\t...baseStyle,\n\t\t\tanimation: 'rpc-spin 0.85s infinite linear',\n\t\t\t...style,\n\t\t}}\n\t\tclassName={`rpc_loading_icon ${className || ''}`}\n\t>\n\t\t<style>\n\t\t\t{`@keyframes rpc-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }`}\n\t\t</style>\n\t\t<circle\n\t\t\tcx=\"512\"\n\t\t\tcy=\"512\"\n\t\t\tr=\"380\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeWidth=\"96\"\n\t\t\tstrokeOpacity=\"0.2\"\n\t\t/>\n\t\t<path\n\t\t\td=\"M512 132c209.9 0 380 170.1 380 380\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeWidth=\"96\"\n\t\t\tstrokeLinecap=\"round\"\n\t\t/>\n\t</svg>\n);\n\nexport const SearchOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"search\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M909.6 854.5L649.9 594.8C690.2 537.8 712 469 712 396c0-174.5-141.5-316-316-316S80 221.5 80 396s141.5 316 316 316c73 0 141.8-21.8 198.8-62.1l259.7 259.7c4.7 4.7 12.3 4.7 17 0l38.1-38.1c4.7-4.7 4.7-12.3 0-17zM396 644c-137 0-248-111-248-248S259 148 396 148s248 111 248 248-111 248-248 248z\" />\n\t</svg>\n);\n\nexport const CloseOutlined = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"close\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"84\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M260 260l504 504M764 260L260 764\" />\n\t</svg>\n);\n\nexport const EditOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"edit\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-148.6L687.8 240.7l48.1 48.1-362.7 362.7-65.6 11.5 17.5-69.6zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\" />\n\t</svg>\n);\n\nexport const DeleteOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"delete\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M864 256H704V144c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v112H160c-17.7 0-32 14.3-32 32v24c0 4.4 3.6 8 8 8h60.5l52.6 578.6C251.2 922.3 273 944 298.8 944h426.4c25.8 0 47.6-21.7 49.7-47.4L827.5 320H888c4.4 0 8-3.6 8-8v-24c0-17.7-14.3-32-32-32zM384 168h256v88H384v-88zm377.9 713.8a8.04 8.04 0 01-8 7.2H298.8c-4.2 0-7.7-3.2-8-7.2L240.2 320h543.5l-51.8 561.8z\" />\n\t</svg>\n);\n\nexport const ShareAltOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"share-alt\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M752 664c-28.5 0-54.8 10-75.6 26.8L414.5 522.6c1.5-7.3 2.5-14.9 2.5-22.6s-1-15.3-2.5-22.6L676.4 309.2C697.2 326 723.5 336 752 336c66.3 0 120-53.7 120-120s-53.7-120-120-120-120 53.7-120 120c0 7.7 1 15.3 2.5 22.6L372.6 406.8C351.8 390 325.5 380 296 380c-66.3 0-120 53.7-120 120s53.7 120 120 120c29.5 0 55.8-10 76.6-26.8l261.9 168.2c-1.5 7.3-2.5 14.9-2.5 22.6 0 66.3 53.7 120 120 120s120-53.7 120-120-53.7-120-120-120z\" />\n\t</svg>\n);\n\nexport const FullscreenOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"fullscreen\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"88\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 左上角 ↖ */}\n\t\t<path d=\"M380 180H180v200\" />\n\t\t<path d=\"M180 180l240 240\" />\n\t\t{/* 右上角 ↗ */}\n\t\t<path d=\"M644 180h200v200\" />\n\t\t<path d=\"M844 180L604 420\" />\n\t\t{/* 左下角 ↙ */}\n\t\t<path d=\"M180 644v200h200\" />\n\t\t<path d=\"M180 844l240-240\" />\n\t\t{/* 右下角 ↘ */}\n\t\t<path d=\"M844 644v200H644\" />\n\t\t<path d=\"M844 844L604 604\" />\n\t</svg>\n);\n\nexport const FullscreenExitOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"fullscreen-exit\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"88\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 左上角内聚 ↘ */}\n\t\t<path d=\"M180 420h240V180\" />\n\t\t<path d=\"M420 420L180 180\" />\n\t\t{/* 右上角内聚 ↙ */}\n\t\t<path d=\"M844 420H604V180\" />\n\t\t<path d=\"M604 420l240-240\" />\n\t\t{/* 左下角内聚 ↗ */}\n\t\t<path d=\"M180 604h240v240\" />\n\t\t<path d=\"M420 604L180 844\" />\n\t\t{/* 右下角内聚 ↖ */}\n\t\t<path d=\"M844 604H604v240\" />\n\t\t<path d=\"M604 604l240 240\" />\n\t</svg>\n);\n\nexport const RotateRightOutlined = ({\n\tstyle,\n\tclassName,\n\tonClick,\n}: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"rotate-right\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"80\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t{/* 顺时针旋转主体圆弧 */}\n\t\t<path d=\"M896 512a384 384 0 1 1-112.5-271.5L896 341\" />\n\t\t{/* 顺时针旋转折线箭头 */}\n\t\t<path d=\"M896 128v213h-213\" />\n\t</svg>\n);\n\nexport const ZoomInOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"zoom-in\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 放大镜圆镜框 */}\n\t\t<circle cx=\"440\" cy=\"440\" r=\"280\" />\n\t\t{/* 放大镜手柄 */}\n\t\t<path d=\"M640 640l220 220\" strokeWidth=\"88\" />\n\t\t{/* 放大镜内部清晰加号 */}\n\t\t<path d=\"M440 320v240M320 440h240\" strokeWidth=\"80\" />\n\t</svg>\n);\n\nexport const ZoomOutOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"zoom-out\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 放大镜圆镜框 */}\n\t\t<circle cx=\"440\" cy=\"440\" r=\"280\" />\n\t\t{/* 放大镜手柄 */}\n\t\t<path d=\"M640 640l220 220\" strokeWidth=\"88\" />\n\t\t{/* 放大镜内部清晰减号 */}\n\t\t<path d=\"M320 440h240\" strokeWidth=\"80\" />\n\t</svg>\n);\n\nexport const DownloadOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"0 0 1024 1024\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"download\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"76\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t{/* 下载向下箭头 */}\n\t\t<path d=\"M512 160v460M330 450l182 182 182-182\" />\n\t\t{/* 底部托盘 */}\n\t\t<path d=\"M200 680v160h624V680\" />\n\t</svg>\n);\n\nexport const FileOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224z\" />\n\t</svg>\n);\n\nexport const FilePdfOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-pdf\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M532 531.3c-7.9-25.1-17.9-57.9-29.2-94.8 17.4-44.5 28.5-84.5 32.8-118.6 6.8-54.6-1.5-87.1-23.7-92.3-15.6-3.7-33 11-40.4 46.1-5.1 24.3-3.6 56.4 4.3 93.3-8.8 33-21.9 76.5-38.3 125.7-18.7 56.2-41.2 108.6-66.2 153.8-37.1 20.3-69 41.5-92.9 63.8-38.2 35.6-46.7 67.2-24.1 89.8 12.8 12.8 31.6 15.3 54.1 7.2 28.8-10.4 62.9-38.9 98.7-83.3 43.1-13.8 91.5-26.3 143.1-37.2 32.8 23.3 64.9 39.8 94.6 48.7 32 9.6 57 8.3 69.8-3.9 15.6-14.8 11.6-42.3-11.4-78.7-17.7-27.9-43.9-51.5-76.3-69.6-1.4-.8-2.8-1.5-4.2-2.3zm-180.2 277c-7.8-7.8-7.8-21.1 0-38.2 11.3-24.8 29.5-48.4 52.8-68.5-25.3 47.9-43.2 86.8-52.8 106.7zm134.7-474c1.6-18.1 4.5-28.7 8.3-30.8 2.2-1.2 5-.8 8.1 1.2 5.1 3.3 7 14.5 5.5 32.5-1.9 22.8-8.2 49.3-18.4 78.4-3.2-30.1-4.7-57.2-3.5-81.3zm-27.1 257.6c17.5-47.5 31.8-90.8 42.1-127.3 9.4 29.6 17.5 56.4 24 79.2-21.6 4.9-43.9 10.3-66.1 16.1v32zm251.4 69.7c15.1 18.8 18.4 32.1 9.4 39.5-3.3 2.7-8.9 3.2-16.4.7-12.7-4.2-27.7-13.5-43.9-27.1 22.8 3.8 41.5-1.1 50.9-13.1zM854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224z\" />\n\t</svg>\n);\n\nexport const FileImageOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-image\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224zm136-280a48 48 0 1096 0 48 48 0 10-96 0zm336 96L552 544l-96 112-48-56-112 112h400z\" />\n\t</svg>\n);\n\nexport const FileTextOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"file-text\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zM224 896V128h314v230c0 17.7 14.3 32 32 32h230v506H224zm120-480h160c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8zm0 120h336c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8zm0 120h336c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8z\" />\n\t</svg>\n);\n\nexport const EyeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"eye\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.2a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.4 684.2 673.3 766 512 766zm-1-438c-101.6 0-184 82.4-184 184s82.4 184 184 184 184-82.4 184-184-82.4-184-184-184zm0 296c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z\" />\n\t</svg>\n);\n\nexport const EyeInvisibleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"eye-invisible\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M942.2 486.2Q889.47 375.11 804.85 296.83l57.75-57.75a8.03 8.03 0 000-11.32l-39.6-39.6a8.03 8.03 0 00-11.31 0L117.82 882.03a8.03 8.03 0 000 11.32l39.6 39.6a8.03 8.03 0 0011.31 0l79.47-79.47C333.62 882.35 421.36 900 512 900c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 828c-161.3 0-279.4-81.8-362.7-254 38.67-80.44 94.67-142.75 163.66-184.22l81.65 81.65a184.07 184.07 0 00231.42 231.42l77.72 77.72C637.38 812.59 576.84 828 512 828zm-399.7-331.4C108.6 489.1 106 480 106 470c0-10 2.6-19.1 6.3-26.6 94.8-199.7 238-300.2 430.2-300.2 73.1 0 141.7 14.5 204.6 41.5l-63.5 63.5A384.85 384.85 0 00512 210c-161.3 0-279.4 81.8-362.7 254 18.23 37.93 40.54 70.83 66.27 98.42l-51.3 51.3a549.9 549.9 0 01-51.97-117.12z\" />\n\t</svg>\n);\n\nexport const PlayCircleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"play-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372zm-88-532.7v325.4c0 10.7 11.9 17.1 20.9 11.3l244-162.7a13.6 13.6 0 000-22.6l-244-162.7c-9-5.8-20.9.6-20.9 11.3z\" />\n\t</svg>\n);\n\nexport const PauseCircleOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"pause-circle\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372zm-128-524c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V360zm160 0c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V360z\" />\n\t</svg>\n);\n\nexport const UndoOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"undo\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M758 416H428.8l93.7-93.7c3.1-3.1 3.1-8.2 0-11.3l-22.6-22.6a8.03 8.03 0 00-11.3 0L303.3 473.7a8.03 8.03 0 000 11.3l185.3 185.3c3.1 3.1 8.2 3.1 11.3 0l22.6-22.6c3.1-3.1 3.1-8.2 0-11.3L428.8 544H758c56.3 0 102 45.7 102 102s-45.7 102-102 102H260c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h498c120.4 0 218-97.6 218-218s-97.6-218-218-218z\" />\n\t</svg>\n);\n\nexport const RedoOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"redo\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M758.2 338.3L572.9 153c-3.1-3.1-8.2-3.1-11.3 0l-22.6 22.6a8.03 8.03 0 000 11.3l93.7 93.7H266c-120.4 0-218 97.6-218 218s97.6 218 218 218h498c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H266c-56.3 0-102-45.7-102-102s45.7-102 102-102h366.7l-93.7 93.7c-3.1 3.1-3.1 8.2 0 11.3l22.6 22.6c3.1 3.1 8.2 3.1 11.3 0l185.3-185.3a8.03 8.03 0 000-11.3z\" />\n\t</svg>\n);\n\nexport const ReloadOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"reload\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 96 512 96 282.2 96 96 282.2 96 512s186.2 416 416 416c196.4 0 361.3-136.2 404.7-319.4 1.2-5.1-1.9-10.2-7.1-11.4l-62.4-14.7c-5.1-1.2-10.2 1.9-11.4 7.1C800.7 724.8 667.6 832 512 832c-176.7 0-320-143.3-320-320s143.3-320 320-320c112.5 0 211.3 58 268.4 146.4l-75.1 58.7c-5.3 4.1-3.4 12.6 3.1 14.1l197.8 45.4c4.6 1.1 9.1-2.4 9.1-7.1l-1.9-202.9c0-6.6-8.2-9.7-12.7-4.9z\" />\n\t</svg>\n);\n\nexport const SoundOutlined = ({ style, className }: IconProps) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"sound\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t>\n\t\t<path d=\"M625.9 115c-5.9 0-11.9 1.6-17.2 4.9L354.8 280H192c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h162.8l253.9 160.1c5.3 3.3 11.3 4.9 17.2 4.9 18.2 0 33.1-14.9 33.1-33.1V148.1c0-18.2-14.9-33.1-33.1-33.1zm-32.9 663.2L367.6 634.6a8 8 0 00-4.3-1.2H232V390.6h131.3a8 8 0 004.3-1.2L593 245.8v532.4zM704 398.7a32 32 0 00-32 32v162.6a32 32 0 0064 0V430.7a32 32 0 00-32-32zm96-99.3a32 32 0 00-32 32v361.3a32 32 0 0064 0V331.4a32 32 0 00-32-32z\" />\n\t</svg>\n);\n\nexport const SendOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"send\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M931.4 498.9L94.9 79.5c-3.4-1.7-7.3-2.1-11-1.2a15.8 15.8 0 00-11.8 17.9L173 496H512v32H173L72.1 927.8c-1.8 7.3 1.9 14.9 8.8 17.7 2.3.9 4.7 1.2 7.1.7 3.7-.7 7.1-2.9 9.1-6L931.4 525.1c6.1-4.7 7.4-13.5 2.7-19.6-.8-1-1.7-1.8-2.7-2.6z\" />\n\t</svg>\n);\n\nexport const LikeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"like\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M885.9 533.7c16.8-22.2 26.1-49.4 26.1-77.7 0-44.9-25.1-85-65.6-104.2l-21.8-10.3 8.5-22.6c8.6-22.8 13-46.9 13-71.9 0-94.8-77-172-171.8-172-35.4 0-69.2 10.9-97.7 31.5L462.6 193c-2.4 1.7-4.6 3.6-6.6 5.6L348 306.6c-4.4 4.4-6.9 10.4-6.9 16.6V768c0 13.3 10.7 24 24 24h356c32.1 0 61.5-16.7 77.8-44.1l21.2-35.7 38.6-6.4c35.4-5.9 64.3-30.8 74.9-64.6l6.8-21.6 22 4.4c2.8.6 5.6.8 8.4.8 28.3 0 54.8-12.8 72.1-35.3 16.8-22.2 21.6-50.6 13.1-77.9l-6.8-21.6 22 4.4c2.8.6 5.6.8 8.4.8 28.3 0 54.8-12.8 72.1-35.3 16.8-22.2 21.6-50.6 13.1-77.9l-8.9-28.7zM792 720H406V336l96-96c21.2-21.2 46.3-37.4 73.9-47.5 12.8-4.7 26.3-7.1 40.1-7.1 55.1 0 100 44.9 100 100 0 18.2-4.1 36.1-11.9 52.3l-19.1 39.5H846c24.6 0 45.4 17.5 49.3 41.8 1.9 12-1 24.1-8.1 33.4L870.3 475l16.9 5.6c11.9 3.9 21.3 12.8 25.8 24.4s3 24.4-4.2 33.9L892 560l16.9 5.6c11.9 3.9 21.3 12.8 25.8 24.4s3 24.4-4.2 33.9L913.6 645l-12.1 38.6c-5.8 18.5-21.7 32.1-41.1 35.3L792 720zm-536 72h-80c-4.4 0-8-3.6-8-8V328c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v456c0 4.4-3.6 8-8 8z\" />\n\t</svg>\n);\n\nexport const DislikeOutlined = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"dislike\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M885.9 490.3l8.9-28.7c8.5-27.3 3.7-55.7-13.1-77.9-17.3-22.5-43.8-35.3-72.1-35.3-2.8 0-5.6.3-8.4.8l-22 4.4 6.8-21.6c8.5-27.3 3.7-55.7-13.1-77.9-17.3-22.5-43.8-35.3-72.1-35.3-2.8 0-5.6.3-8.4.8l-22 4.4-6.8-21.6c-10.6-33.8-39.5-58.7-74.9-64.6l-38.6-6.4-21.2-35.7C620.5 106.7 591.1 90 559 90H203c-13.3 0-24 10.7-24 24v444.8c0 6.2 2.5 12.2 6.9 16.6l108 108c2 2 4.2 3.9 6.6 5.6l113.8 81.3c28.5 20.6 62.3 31.5 97.7 31.5 94.8 0 171.8-77.2 171.8-172 0-25-4.4-49.1-13-71.9l-8.5-22.6 21.8-10.3c40.5-19.2 65.6-59.3 65.6-104.2.1-28.3-9.2-55.5-26-77.7zM792 304l68.4-1.1c19.4 3.2 35.3 16.8 41.1 35.3l12.1 38.6 16.9 21.2c7.2 9.5 8.7 22.3 4.2 33.9s-13.9 20.5-25.8 24.4L892 462l16.9 21.2c7.2 9.5 8.7 22.3 4.2 33.9s-13.9 20.5-25.8 24.4l-16.9 5.6 14.8 17.9c7.1 9.3 10 21.4 8.1 33.4-3.9 24.3-24.7 41.8-49.3 41.8H741l19.1 39.5c7.8 16.2 11.9 34.1 11.9 52.3 0 55.1-44.9 100-100 100-13.8 0-27.3-2.4-40.1-7.1-27.6-10.1-52.7-26.3-73.9-47.5l-96-96V232h386zM256 232h-80c-4.4 0-8 3.6-8 8v456c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V240c0-4.4-3.6-8-8-8z\" />\n\t</svg>\n);\n\nexport const StarFilled = ({ style, className, onClick }: IconProps & { onClick?: (e: React.MouseEvent) => void }) => (\n\t<svg\n\t\tviewBox=\"64 64 896 896\"\n\t\tfocusable=\"false\"\n\t\tdata-icon=\"star\"\n\t\twidth=\"1em\"\n\t\theight=\"1em\"\n\t\tfill=\"currentColor\"\n\t\taria-hidden=\"true\"\n\t\tstyle={{ ...baseStyle, ...style }}\n\t\tclassName={className}\n\t\tonClick={onClick}\n\t>\n\t\t<path d=\"M908.1 353.1l-253.9-36.9L540.7 86.6c-9.7-19.7-37.7-19.7-47.4 0L379.8 316.2l-253.9 36.9c-21.9 3.2-30.6 30-14.7 45.5l183.7 179-43.4 252.9c-3.7 21.8 19.1 38.4 38.8 28.1L512 740l221.7 116.6c19.7 10.4 42.5-6.3 38.8-28.1l-43.4-252.9 183.7-179c15.9-15.5 7.2-42.3-14.7-45.5z\" />\n\t</svg>\n);\n\n\n\n\n\n\n\n\n"]}